@0x/json-schemas: Rename CallData.value -> CallData.balance and make it `wholeNumberSchema type.'
`@0x/web3-wrapper`: Only supply overrides to eth_call RPC if provided.
This commit is contained in:
@@ -27,13 +27,13 @@
|
||||
"properties": {
|
||||
"code": {
|
||||
"type": "string",
|
||||
"pattern": "^0x[0-9a-f]*$"
|
||||
"pattern": "^0x[0-9a-fA-F]*$"
|
||||
},
|
||||
"nonce": {
|
||||
"oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/jsNumberSchema" }]
|
||||
"oneOf": [{ "$ref": "/wholeNumberSchema" }]
|
||||
},
|
||||
"value": {
|
||||
"oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/jsNumberSchema" }]
|
||||
"balance": {
|
||||
"oneOf": [{ "$ref": "/wholeNumberSchema" }]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -180,8 +180,9 @@ export const marshaller = {
|
||||
for (const address in overrides) {
|
||||
if (address) {
|
||||
const override = overrides[address];
|
||||
const marshalledAddress = marshaller.marshalAddress(address);
|
||||
const marshalledOverride: GethCallOverridesRPC[keyof GethCallOverridesRPC] = (marshalled[
|
||||
marshaller.marshalAddress(address)
|
||||
marshalledAddress
|
||||
] = {});
|
||||
if (override.code !== undefined) {
|
||||
marshalledOverride.code = override.code;
|
||||
@@ -192,6 +193,9 @@ export const marshaller = {
|
||||
if (override.balance !== undefined) {
|
||||
marshalledOverride.balance = utils.encodeAmountAsHexString(override.balance);
|
||||
}
|
||||
if (Object.keys(marshalledOverride).length === 0) {
|
||||
delete marshalled[marshalledAddress];
|
||||
}
|
||||
}
|
||||
}
|
||||
return marshalled;
|
||||
|
||||
@@ -565,7 +565,7 @@ export class Web3Wrapper {
|
||||
const overrides = marshaller.marshalCallOverrides(callData.overrides || {});
|
||||
const rawCallResult = await this.sendRawPayloadAsync<string>({
|
||||
method: 'eth_call',
|
||||
params: [callDataHex, marshalledDefaultBlock, overrides],
|
||||
params: [callDataHex, marshalledDefaultBlock, ...(Object.keys(overrides).length === 0 ? [] : [overrides])],
|
||||
});
|
||||
return rawCallResult;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user