ox 0.5.0 → 0.6.1
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/BlockOverrides/package.json +6 -0
- package/CHANGELOG.md +14 -0
- package/README.md +1 -0
- package/StateOverrides/package.json +6 -0
- package/_cjs/core/BlockOverrides.js +63 -0
- package/_cjs/core/BlockOverrides.js.map +1 -0
- package/_cjs/core/Provider.js +59 -6
- package/_cjs/core/Provider.js.map +1 -1
- package/_cjs/core/RpcResponse.js +32 -31
- package/_cjs/core/RpcResponse.js.map +1 -1
- package/_cjs/core/StateOverrides.js +48 -0
- package/_cjs/core/StateOverrides.js.map +1 -0
- package/_cjs/index.js +4 -2
- package/_cjs/index.js.map +1 -1
- package/_cjs/version.js +1 -1
- package/_esm/core/BlockOverrides.js +117 -0
- package/_esm/core/BlockOverrides.js.map +1 -0
- package/_esm/core/Provider.js +75 -6
- package/_esm/core/Provider.js.map +1 -1
- package/_esm/core/RpcResponse.js +48 -31
- package/_esm/core/RpcResponse.js.map +1 -1
- package/_esm/core/StateOverrides.js +78 -0
- package/_esm/core/StateOverrides.js.map +1 -0
- package/_esm/index.js +12 -0
- package/_esm/index.js.map +1 -1
- package/_esm/version.js +1 -1
- package/_types/core/BlockOverrides.d.ts +89 -0
- package/_types/core/BlockOverrides.d.ts.map +1 -0
- package/_types/core/Provider.d.ts +28 -1
- package/_types/core/Provider.d.ts.map +1 -1
- package/_types/core/RpcResponse.d.ts +22 -1
- package/_types/core/RpcResponse.d.ts.map +1 -1
- package/_types/core/StateOverrides.d.ts +79 -0
- package/_types/core/StateOverrides.d.ts.map +1 -0
- package/_types/core/internal/rpcSchemas/eth.d.ts +34 -2
- package/_types/core/internal/rpcSchemas/eth.d.ts.map +1 -1
- package/_types/erc4337/RpcSchema.d.ts +2 -2
- package/_types/erc4337/RpcSchema.d.ts.map +1 -1
- package/_types/index.d.ts +12 -0
- package/_types/index.d.ts.map +1 -1
- package/_types/version.d.ts +1 -1
- package/core/BlockOverrides.ts +146 -0
- package/core/Provider.ts +99 -9
- package/core/RpcResponse.ts +137 -22
- package/core/StateOverrides.ts +131 -0
- package/core/internal/rpcSchemas/eth.ts +43 -4
- package/erc4337/RpcSchema.ts +2 -2
- package/index.ts +14 -0
- package/package.json +11 -1
- package/version.ts +1 -1
package/core/RpcResponse.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { Errors, RpcRequest } from '../index.js'
|
|
|
2
2
|
import type {
|
|
3
3
|
Compute,
|
|
4
4
|
IsNarrowable,
|
|
5
|
+
IsNever,
|
|
5
6
|
OneOf,
|
|
6
7
|
UnionPartialBy,
|
|
7
8
|
} from './internal/types.js'
|
|
@@ -215,28 +216,7 @@ export function parse<
|
|
|
215
216
|
const { raw = false } = options
|
|
216
217
|
const response_ = response as RpcResponse
|
|
217
218
|
if (raw) return response as never
|
|
218
|
-
if (response_.error)
|
|
219
|
-
const { code } = response_.error
|
|
220
|
-
const JsonRpcError = (() => {
|
|
221
|
-
if (code === InternalError.code) return InternalError
|
|
222
|
-
if (code === InvalidInputError.code) return InvalidInputError
|
|
223
|
-
if (code === InvalidParamsError.code) return InvalidParamsError
|
|
224
|
-
if (code === InvalidRequestError.code) return InvalidRequestError
|
|
225
|
-
if (code === LimitExceededError.code) return LimitExceededError
|
|
226
|
-
if (code === MethodNotFoundError.code) return MethodNotFoundError
|
|
227
|
-
if (code === MethodNotSupportedError.code) return MethodNotSupportedError
|
|
228
|
-
if (code === ParseError.code) return ParseError
|
|
229
|
-
if (code === ResourceNotFoundError.code) return ResourceNotFoundError
|
|
230
|
-
if (code === ResourceUnavailableError.code)
|
|
231
|
-
return ResourceUnavailableError
|
|
232
|
-
if (code === TransactionRejectedError.code)
|
|
233
|
-
return TransactionRejectedError
|
|
234
|
-
if (code === VersionNotSupportedError.code)
|
|
235
|
-
return VersionNotSupportedError
|
|
236
|
-
return BaseError
|
|
237
|
-
})()
|
|
238
|
-
throw new JsonRpcError(response_.error)
|
|
239
|
-
}
|
|
219
|
+
if (response_.error) throw parseErrorObject(response_.error)
|
|
240
220
|
return response_.result as never
|
|
241
221
|
}
|
|
242
222
|
|
|
@@ -283,6 +263,141 @@ export declare namespace parse {
|
|
|
283
263
|
| Errors.GlobalErrorType
|
|
284
264
|
}
|
|
285
265
|
|
|
266
|
+
/**
|
|
267
|
+
* Parses a JSON-RPC error object into an error instance.
|
|
268
|
+
*
|
|
269
|
+
* @example
|
|
270
|
+
* ```ts twoslash
|
|
271
|
+
* import { RpcResponse } from 'ox'
|
|
272
|
+
*
|
|
273
|
+
* const error = RpcResponse.parseError({ code: -32000, message: 'unsupported method' })
|
|
274
|
+
*
|
|
275
|
+
* error
|
|
276
|
+
* // ^?
|
|
277
|
+
*
|
|
278
|
+
* ```
|
|
279
|
+
*
|
|
280
|
+
* @param errorObject - JSON-RPC error object.
|
|
281
|
+
* @returns Error instance.
|
|
282
|
+
*/
|
|
283
|
+
export function parseErrorObject<
|
|
284
|
+
const errorObject extends ErrorObject | unknown,
|
|
285
|
+
>(
|
|
286
|
+
errorObject: errorObject | ErrorObject,
|
|
287
|
+
): parseErrorObject.ReturnType<errorObject> {
|
|
288
|
+
const errorObject_ = errorObject as ErrorObject
|
|
289
|
+
const { code } = errorObject_
|
|
290
|
+
if (code === InternalError.code)
|
|
291
|
+
return new InternalError(errorObject_) as never
|
|
292
|
+
if (code === InvalidInputError.code)
|
|
293
|
+
return new InvalidInputError(errorObject_) as never
|
|
294
|
+
if (code === InvalidParamsError.code)
|
|
295
|
+
return new InvalidParamsError(errorObject_) as never
|
|
296
|
+
if (code === InvalidRequestError.code)
|
|
297
|
+
return new InvalidRequestError(errorObject_) as never
|
|
298
|
+
if (code === LimitExceededError.code)
|
|
299
|
+
return new LimitExceededError(errorObject_) as never
|
|
300
|
+
if (code === MethodNotFoundError.code)
|
|
301
|
+
return new MethodNotFoundError(errorObject_) as never
|
|
302
|
+
if (code === MethodNotSupportedError.code)
|
|
303
|
+
return new MethodNotSupportedError(errorObject_) as never
|
|
304
|
+
if (code === ParseError.code) return new ParseError(errorObject_) as never
|
|
305
|
+
if (code === ResourceNotFoundError.code)
|
|
306
|
+
return new ResourceNotFoundError(errorObject_) as never
|
|
307
|
+
if (code === ResourceUnavailableError.code)
|
|
308
|
+
return new ResourceUnavailableError(errorObject_) as never
|
|
309
|
+
if (code === TransactionRejectedError.code)
|
|
310
|
+
return new TransactionRejectedError(errorObject_) as never
|
|
311
|
+
if (code === VersionNotSupportedError.code)
|
|
312
|
+
return new VersionNotSupportedError(errorObject_) as never
|
|
313
|
+
return new BaseError(errorObject_) as never
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
export declare namespace parseErrorObject {
|
|
317
|
+
type ReturnType<
|
|
318
|
+
errorObject extends ErrorObject | unknown,
|
|
319
|
+
//
|
|
320
|
+
error = errorObject extends ErrorObject
|
|
321
|
+
?
|
|
322
|
+
| (errorObject['code'] extends InternalError['code']
|
|
323
|
+
? InternalError
|
|
324
|
+
: never)
|
|
325
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
326
|
+
? InternalError
|
|
327
|
+
: never)
|
|
328
|
+
| (errorObject['code'] extends InvalidInputError['code']
|
|
329
|
+
? InvalidInputError
|
|
330
|
+
: never)
|
|
331
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
332
|
+
? InvalidInputError
|
|
333
|
+
: never)
|
|
334
|
+
| (errorObject['code'] extends ResourceNotFoundError['code']
|
|
335
|
+
? ResourceNotFoundError
|
|
336
|
+
: never)
|
|
337
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
338
|
+
? ResourceNotFoundError
|
|
339
|
+
: never)
|
|
340
|
+
| (errorObject['code'] extends ResourceUnavailableError['code']
|
|
341
|
+
? ResourceUnavailableError
|
|
342
|
+
: never)
|
|
343
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
344
|
+
? ResourceUnavailableError
|
|
345
|
+
: never)
|
|
346
|
+
| (errorObject['code'] extends TransactionRejectedError['code']
|
|
347
|
+
? TransactionRejectedError
|
|
348
|
+
: never)
|
|
349
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
350
|
+
? TransactionRejectedError
|
|
351
|
+
: never)
|
|
352
|
+
| (errorObject['code'] extends ParseError['code']
|
|
353
|
+
? ParseError
|
|
354
|
+
: never)
|
|
355
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
356
|
+
? ParseError
|
|
357
|
+
: never)
|
|
358
|
+
| (errorObject['code'] extends MethodNotSupportedError['code']
|
|
359
|
+
? MethodNotSupportedError
|
|
360
|
+
: never)
|
|
361
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
362
|
+
? MethodNotSupportedError
|
|
363
|
+
: never)
|
|
364
|
+
| (errorObject['code'] extends LimitExceededError['code']
|
|
365
|
+
? LimitExceededError
|
|
366
|
+
: never)
|
|
367
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
368
|
+
? LimitExceededError
|
|
369
|
+
: never)
|
|
370
|
+
| (errorObject['code'] extends VersionNotSupportedError['code']
|
|
371
|
+
? VersionNotSupportedError
|
|
372
|
+
: never)
|
|
373
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
374
|
+
? VersionNotSupportedError
|
|
375
|
+
: never)
|
|
376
|
+
| (errorObject['code'] extends InvalidRequestError['code']
|
|
377
|
+
? InvalidRequestError
|
|
378
|
+
: never)
|
|
379
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
380
|
+
? InvalidRequestError
|
|
381
|
+
: never)
|
|
382
|
+
| (errorObject['code'] extends MethodNotFoundError['code']
|
|
383
|
+
? MethodNotFoundError
|
|
384
|
+
: never)
|
|
385
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
386
|
+
? MethodNotFoundError
|
|
387
|
+
: never)
|
|
388
|
+
| (errorObject['code'] extends InvalidParamsError['code']
|
|
389
|
+
? InvalidParamsError
|
|
390
|
+
: never)
|
|
391
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
392
|
+
? InvalidParamsError
|
|
393
|
+
: never)
|
|
394
|
+
| (IsNarrowable<errorObject['code'], number> extends false
|
|
395
|
+
? BaseError
|
|
396
|
+
: never)
|
|
397
|
+
: parseErrorObject.ReturnType<ErrorObject>,
|
|
398
|
+
> = IsNever<error> extends true ? BaseError : error
|
|
399
|
+
}
|
|
400
|
+
|
|
286
401
|
export type BaseErrorType = BaseError & { name: 'BaseError' }
|
|
287
402
|
|
|
288
403
|
/** Thrown when a JSON-RPC error has occurred. */
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import type * as Address from './Address.js'
|
|
2
|
+
import * as Hex from './Hex.js'
|
|
3
|
+
import type { Compute, OneOf } from './internal/types.js'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* State override set to specify state to be ephemerally overridden prior to executing a call.
|
|
7
|
+
*/
|
|
8
|
+
export type StateOverrides<bigintType = bigint> = Compute<{
|
|
9
|
+
[address: Address.Address]: AccountOverrides<bigintType>
|
|
10
|
+
}>
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* RPC state overrides.
|
|
14
|
+
*/
|
|
15
|
+
export type Rpc = StateOverrides<Hex.Hex>
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Details of an account to be overridden.
|
|
19
|
+
*/
|
|
20
|
+
export type AccountOverrides<bigintType = bigint> = Compute<
|
|
21
|
+
{
|
|
22
|
+
/** Balance to set for the account. */
|
|
23
|
+
balance?: bigintType | undefined
|
|
24
|
+
/** Code to set for the account. */
|
|
25
|
+
code?: Hex.Hex | undefined
|
|
26
|
+
/** Address to move the precompile to. */
|
|
27
|
+
movePrecompileToAddress?: Address.Address | undefined
|
|
28
|
+
/** Nonce to set for the account. */
|
|
29
|
+
nonce?: bigintType | undefined
|
|
30
|
+
} & OneOf<
|
|
31
|
+
| {
|
|
32
|
+
/** Key-value mapping to override all slots in the account storage. */
|
|
33
|
+
state?: AccountStorage | undefined
|
|
34
|
+
}
|
|
35
|
+
| {
|
|
36
|
+
/** Key-value mapping to override individual slots in the account storage. */
|
|
37
|
+
stateDiff?: AccountStorage | undefined
|
|
38
|
+
}
|
|
39
|
+
>
|
|
40
|
+
>
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* RPC account overrides.
|
|
44
|
+
*/
|
|
45
|
+
export type RpcAccountOverrides = AccountOverrides<Hex.Hex>
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Key-value mapping to override all slots in the account storage before executing the call.
|
|
49
|
+
*/
|
|
50
|
+
export type AccountStorage = Compute<{
|
|
51
|
+
[slot: Hex.Hex]: Hex.Hex
|
|
52
|
+
}>
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Converts an {@link ox#StateOverrides.Rpc} to an {@link ox#StateOverrides.StateOverrides}.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```ts twoslash
|
|
59
|
+
* import { StateOverrides } from 'ox'
|
|
60
|
+
*
|
|
61
|
+
* const stateOverrides = StateOverrides.fromRpc({
|
|
62
|
+
* '0x0000000000000000000000000000000000000000': {
|
|
63
|
+
* balance: '0x1',
|
|
64
|
+
* },
|
|
65
|
+
* })
|
|
66
|
+
* ```
|
|
67
|
+
*
|
|
68
|
+
* @param rpcStateOverrides - The RPC state overrides to convert.
|
|
69
|
+
* @returns An instantiated {@link ox#StateOverrides.StateOverrides}.
|
|
70
|
+
*/
|
|
71
|
+
export function fromRpc(rpcStateOverrides: Rpc): StateOverrides {
|
|
72
|
+
const stateOverrides: StateOverrides = {}
|
|
73
|
+
for (const [address, accountOverridesRpc] of Object.entries(
|
|
74
|
+
rpcStateOverrides,
|
|
75
|
+
)) {
|
|
76
|
+
const accountOverrides: AccountOverrides = {}
|
|
77
|
+
if (accountOverridesRpc.balance)
|
|
78
|
+
accountOverrides.balance = BigInt(accountOverridesRpc.balance)
|
|
79
|
+
if (accountOverridesRpc.code)
|
|
80
|
+
accountOverrides.code = accountOverridesRpc.code
|
|
81
|
+
if (accountOverridesRpc.movePrecompileToAddress)
|
|
82
|
+
accountOverrides.movePrecompileToAddress =
|
|
83
|
+
accountOverridesRpc.movePrecompileToAddress
|
|
84
|
+
if (accountOverridesRpc.nonce)
|
|
85
|
+
accountOverrides.nonce = BigInt(accountOverridesRpc.nonce)
|
|
86
|
+
if (accountOverridesRpc.state)
|
|
87
|
+
accountOverrides.state = accountOverridesRpc.state
|
|
88
|
+
if (accountOverridesRpc.stateDiff)
|
|
89
|
+
accountOverrides.stateDiff = accountOverridesRpc.stateDiff
|
|
90
|
+
;(stateOverrides as any)[address] = accountOverrides
|
|
91
|
+
}
|
|
92
|
+
return stateOverrides
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Converts an {@link ox#StateOverrides.StateOverrides} to an {@link ox#StateOverrides.Rpc}.
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```ts twoslash
|
|
100
|
+
* import { StateOverrides } from 'ox'
|
|
101
|
+
*
|
|
102
|
+
* const stateOverrides = StateOverrides.toRpc({
|
|
103
|
+
* '0x0000000000000000000000000000000000000000': {
|
|
104
|
+
* balance: 1n,
|
|
105
|
+
* },
|
|
106
|
+
* })
|
|
107
|
+
* ```
|
|
108
|
+
*
|
|
109
|
+
* @param stateOverrides - The state overrides to convert.
|
|
110
|
+
* @returns An instantiated {@link ox#StateOverrides.Rpc}.
|
|
111
|
+
*/
|
|
112
|
+
export function toRpc(stateOverrides: StateOverrides): Rpc {
|
|
113
|
+
const rpcStateOverrides: Rpc = {}
|
|
114
|
+
for (const [address, accountOverrides] of Object.entries(stateOverrides)) {
|
|
115
|
+
const accountOverridesRpc: RpcAccountOverrides = {}
|
|
116
|
+
if (typeof accountOverrides.balance === 'bigint')
|
|
117
|
+
accountOverridesRpc.balance = Hex.fromNumber(accountOverrides.balance)
|
|
118
|
+
if (accountOverrides.code) accountOverridesRpc.code = accountOverrides.code
|
|
119
|
+
if (accountOverrides.movePrecompileToAddress)
|
|
120
|
+
accountOverridesRpc.movePrecompileToAddress =
|
|
121
|
+
accountOverrides.movePrecompileToAddress
|
|
122
|
+
if (typeof accountOverrides.nonce === 'bigint')
|
|
123
|
+
accountOverridesRpc.nonce = Hex.fromNumber(accountOverrides.nonce)
|
|
124
|
+
if (accountOverrides.state)
|
|
125
|
+
accountOverridesRpc.state = accountOverrides.state
|
|
126
|
+
if (accountOverrides.stateDiff)
|
|
127
|
+
accountOverridesRpc.stateDiff = accountOverrides.stateDiff
|
|
128
|
+
;(rpcStateOverrides as any)[address] = accountOverridesRpc
|
|
129
|
+
}
|
|
130
|
+
return rpcStateOverrides
|
|
131
|
+
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import type * as AccountProof from '../../AccountProof.js'
|
|
2
2
|
import type * as Address from '../../Address.js'
|
|
3
3
|
import type * as Block from '../../Block.js'
|
|
4
|
+
import type * as BlockOverrides from '../../BlockOverrides.js'
|
|
4
5
|
import type * as Fee from '../../Fee.js'
|
|
5
6
|
import type * as Filter from '../../Filter.js'
|
|
6
7
|
import type * as Hex from '../../Hex.js'
|
|
7
8
|
import type * as Log from '../../Log.js'
|
|
8
9
|
import type * as RpcSchema from '../../RpcSchema.js'
|
|
10
|
+
import type * as StateOverrides from '../../StateOverrides.js'
|
|
9
11
|
import type * as Transaction from '../../Transaction.js'
|
|
10
12
|
import type * as TransactionReceipt from '../../TransactionReceipt.js'
|
|
11
13
|
import type * as TransactionRequest from '../../TransactionRequest.js'
|
|
@@ -111,8 +113,7 @@ export type Eth = RpcSchema.From<
|
|
|
111
113
|
| Block.Tag
|
|
112
114
|
| Block.Hash
|
|
113
115
|
| Block.Identifier,
|
|
114
|
-
|
|
115
|
-
stateOverride: unknown,
|
|
116
|
+
stateOverrides: StateOverrides.Rpc,
|
|
116
117
|
]
|
|
117
118
|
}
|
|
118
119
|
ReturnType: Hex.Hex
|
|
@@ -181,8 +182,7 @@ export type Eth = RpcSchema.From<
|
|
|
181
182
|
| Block.Tag
|
|
182
183
|
| Block.Hash
|
|
183
184
|
| Block.Identifier,
|
|
184
|
-
|
|
185
|
-
stateOverride: unknown,
|
|
185
|
+
stateOverrides: StateOverrides.Rpc,
|
|
186
186
|
]
|
|
187
187
|
}
|
|
188
188
|
ReturnType: Hex.Hex
|
|
@@ -707,6 +707,45 @@ export type Eth = RpcSchema.From<
|
|
|
707
707
|
}
|
|
708
708
|
ReturnType: Hex.Hex
|
|
709
709
|
}
|
|
710
|
+
| {
|
|
711
|
+
Request: {
|
|
712
|
+
method: 'eth_simulateV1'
|
|
713
|
+
params: [
|
|
714
|
+
{
|
|
715
|
+
blockStateCalls: readonly {
|
|
716
|
+
blockOverrides?: BlockOverrides.Rpc | undefined
|
|
717
|
+
calls?: readonly TransactionRequest.Rpc[] | undefined
|
|
718
|
+
stateOverrides?: StateOverrides.Rpc | undefined
|
|
719
|
+
}[]
|
|
720
|
+
returnFullTransactions?: boolean | undefined
|
|
721
|
+
traceTransfers?: boolean | undefined
|
|
722
|
+
validation?: boolean | undefined
|
|
723
|
+
},
|
|
724
|
+
block:
|
|
725
|
+
| Block.Number<Hex.Hex>
|
|
726
|
+
| Block.Tag
|
|
727
|
+
| Block.Hash
|
|
728
|
+
| Block.Identifier,
|
|
729
|
+
]
|
|
730
|
+
}
|
|
731
|
+
ReturnType: readonly (Block.Rpc & {
|
|
732
|
+
calls?:
|
|
733
|
+
| readonly {
|
|
734
|
+
error?:
|
|
735
|
+
| {
|
|
736
|
+
data?: Hex.Hex | undefined
|
|
737
|
+
code: number
|
|
738
|
+
message: string
|
|
739
|
+
}
|
|
740
|
+
| undefined
|
|
741
|
+
logs?: readonly Log.Rpc[] | undefined
|
|
742
|
+
gasUsed: Hex.Hex
|
|
743
|
+
returnData: Hex.Hex
|
|
744
|
+
status: Hex.Hex
|
|
745
|
+
}[]
|
|
746
|
+
| undefined
|
|
747
|
+
})[]
|
|
748
|
+
}
|
|
710
749
|
/**
|
|
711
750
|
* Signs a transaction that can be submitted to the network at a later time using with `eth_sendRawTransaction`
|
|
712
751
|
*
|
package/erc4337/RpcSchema.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type * as Address from '../core/Address.js'
|
|
2
2
|
import type * as Hex from '../core/Hex.js'
|
|
3
3
|
import type * as RpcSchema from '../core/RpcSchema.js'
|
|
4
|
+
import type * as StateOverrides from '../core/StateOverrides.js'
|
|
4
5
|
import type * as EntryPoint from './EntryPoint.js'
|
|
5
6
|
import type * as UserOperation from './UserOperation.js'
|
|
6
7
|
import type * as UserOperationGas from './UserOperationGas.js'
|
|
@@ -49,8 +50,7 @@ export type Bundler<
|
|
|
49
50
|
| [
|
|
50
51
|
userOperation: UserOperation.Rpc<entryPointVersion>,
|
|
51
52
|
entrypoint: Address.Address,
|
|
52
|
-
|
|
53
|
-
stateOverrides: unknown,
|
|
53
|
+
stateOverrides: StateOverrides.Rpc,
|
|
54
54
|
]
|
|
55
55
|
}
|
|
56
56
|
ReturnType: UserOperationGas.Rpc<entryPointVersion>
|
package/index.ts
CHANGED
|
@@ -986,6 +986,13 @@ export * as Blobs from './core/Blobs.js'
|
|
|
986
986
|
*/
|
|
987
987
|
export * as Block from './core/Block.js'
|
|
988
988
|
|
|
989
|
+
/**
|
|
990
|
+
* Utilities & types for working with **Block Overrides**.
|
|
991
|
+
*
|
|
992
|
+
* @category Execution Spec
|
|
993
|
+
*/
|
|
994
|
+
export * as BlockOverrides from './core/BlockOverrides.js'
|
|
995
|
+
|
|
989
996
|
/**
|
|
990
997
|
* Utility functions for working with Bloom Filters as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/block.yaml)
|
|
991
998
|
*
|
|
@@ -2275,6 +2282,13 @@ export * as Siwe from './core/Siwe.js'
|
|
|
2275
2282
|
|
|
2276
2283
|
export * as Solidity from './core/Solidity.js'
|
|
2277
2284
|
|
|
2285
|
+
/**
|
|
2286
|
+
* Utilities & types for working with **State Overrides**.
|
|
2287
|
+
*
|
|
2288
|
+
* @category Execution Spec
|
|
2289
|
+
*/
|
|
2290
|
+
export * as StateOverrides from './core/StateOverrides.js'
|
|
2291
|
+
|
|
2278
2292
|
/**
|
|
2279
2293
|
* Utilities & types for working with **Transactions** as defined in the [Execution API specification](https://github.com/ethereum/execution-apis/blob/main/src/schemas/transaction.yaml)
|
|
2280
2294
|
*
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ox",
|
|
3
3
|
"description": "Ethereum Standard Library",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.6.1",
|
|
5
5
|
"main": "./_cjs/index.js",
|
|
6
6
|
"module": "./_esm/index.js",
|
|
7
7
|
"types": "./_types/index.d.ts",
|
|
@@ -132,6 +132,11 @@
|
|
|
132
132
|
"import": "./_esm/core/Block.js",
|
|
133
133
|
"default": "./_cjs/core/Block.js"
|
|
134
134
|
},
|
|
135
|
+
"./BlockOverrides": {
|
|
136
|
+
"types": "./_types/core/BlockOverrides.d.ts",
|
|
137
|
+
"import": "./_esm/core/BlockOverrides.js",
|
|
138
|
+
"default": "./_cjs/core/BlockOverrides.js"
|
|
139
|
+
},
|
|
135
140
|
"./Bloom": {
|
|
136
141
|
"types": "./_types/core/Bloom.d.ts",
|
|
137
142
|
"import": "./_esm/core/Bloom.js",
|
|
@@ -282,6 +287,11 @@
|
|
|
282
287
|
"import": "./_esm/core/Solidity.js",
|
|
283
288
|
"default": "./_cjs/core/Solidity.js"
|
|
284
289
|
},
|
|
290
|
+
"./StateOverrides": {
|
|
291
|
+
"types": "./_types/core/StateOverrides.d.ts",
|
|
292
|
+
"import": "./_esm/core/StateOverrides.js",
|
|
293
|
+
"default": "./_cjs/core/StateOverrides.js"
|
|
294
|
+
},
|
|
285
295
|
"./Transaction": {
|
|
286
296
|
"types": "./_types/core/Transaction.d.ts",
|
|
287
297
|
"import": "./_esm/core/Transaction.js",
|
package/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/** @internal */
|
|
2
|
-
export const version = '0.
|
|
2
|
+
export const version = '0.6.1'
|