Add eip712DomainSchema to json-schemas.

Add required field `domain` to `order` and `zeroExTransaction` schemas.
This commit is contained in:
Lawrence Forman 2019-04-01 13:19:33 -04:00 committed by Amir Bandeali
parent 3688956ee5
commit 376f068719
7 changed files with 29 additions and 12 deletions

View File

@ -0,0 +1,14 @@
{
"id": "/eip712DomainSchema",
"properties": {
"name": { "type": "string" },
"version": { "type": "version" },
"chainId": { "type": "number" },
"verifyingContractAddress": { "$ref": "/addressSchema" }
},
"required": [
"chainId",
"verifyingContractAddress"
],
"type": "object"
}

View File

@ -21,7 +21,7 @@
"required": ["EIP712Domain"] "required": ["EIP712Domain"]
}, },
"primaryType": { "type": "string" }, "primaryType": { "type": "string" },
"domain": { "type": "object" }, "domain": { "$ref": "/eip712DomainSchema" },
"message": { "type": "object" } "message": { "type": "object" }
}, },
"required": ["types", "primaryType", "domain", "message"] "required": ["types", "primaryType", "domain", "message"]

View File

@ -11,10 +11,9 @@
"makerAssetData": { "$ref": "/hexSchema" }, "makerAssetData": { "$ref": "/hexSchema" },
"takerAssetData": { "$ref": "/hexSchema" }, "takerAssetData": { "$ref": "/hexSchema" },
"salt": { "$ref": "/wholeNumberSchema" }, "salt": { "$ref": "/wholeNumberSchema" },
"exchangeAddress": { "$ref": "/addressSchema" },
"chainId": { "type": "number" },
"feeRecipientAddress": { "$ref": "/addressSchema" }, "feeRecipientAddress": { "$ref": "/addressSchema" },
"expirationTimeSeconds": { "$ref": "/wholeNumberSchema" } "expirationTimeSeconds": { "$ref": "/wholeNumberSchema" },
"domain": { "$ref": "/eip712DomainSchema" }
}, },
"required": [ "required": [
"makerAddress", "makerAddress",
@ -27,10 +26,9 @@
"makerAssetData", "makerAssetData",
"takerAssetData", "takerAssetData",
"salt", "salt",
"exchangeAddress",
"chainId",
"feeRecipientAddress", "feeRecipientAddress",
"expirationTimeSeconds" "expirationTimeSeconds",
"domain"
], ],
"type": "object" "type": "object"
} }

View File

@ -1,11 +1,11 @@
{ {
"id": "/zeroExTransactionSchema", "id": "/zeroExTransactionSchema",
"properties": { "properties": {
"verifyingContractAddress": { "$ref": "/addressSchema" },
"data": { "$ref": "/hexSchema" }, "data": { "$ref": "/hexSchema" },
"signerAddress": { "$ref": "/addressSchema" }, "signerAddress": { "$ref": "/addressSchema" },
"salt": { "$ref": "/wholeNumberSchema" } "salt": { "$ref": "/wholeNumberSchema" },
"domain": { "$ref": "/eip712DomainSchema" }
}, },
"required": ["verifyingContractAddress", "data", "salt", "signerAddress"], "required": ["data", "salt", "signerAddress", "domain"],
"type": "object" "type": "object"
} }

View File

@ -5,6 +5,7 @@ import * as blockRangeSchema from '../schemas/block_range_schema.json';
import * as callDataSchema from '../schemas/call_data_schema.json'; import * as callDataSchema from '../schemas/call_data_schema.json';
import * as ecSignatureParameterSchema from '../schemas/ec_signature_parameter_schema.json'; import * as ecSignatureParameterSchema from '../schemas/ec_signature_parameter_schema.json';
import * as ecSignatureSchema from '../schemas/ec_signature_schema.json'; import * as ecSignatureSchema from '../schemas/ec_signature_schema.json';
import * as eip712DomainSchema from '../schemas/eip712_domain_schema.json';
import * as eip712TypedDataSchema from '../schemas/eip712_typed_data_schema.json'; import * as eip712TypedDataSchema from '../schemas/eip712_typed_data_schema.json';
import * as hexSchema from '../schemas/hex_schema.json'; import * as hexSchema from '../schemas/hex_schema.json';
import * as indexFilterValuesSchema from '../schemas/index_filter_values_schema.json'; import * as indexFilterValuesSchema from '../schemas/index_filter_values_schema.json';
@ -52,6 +53,7 @@ export const schemas = {
hexSchema, hexSchema,
ecSignatureParameterSchema, ecSignatureParameterSchema,
ecSignatureSchema, ecSignatureSchema,
eip712DomainSchema,
eip712TypedDataSchema, eip712TypedDataSchema,
indexFilterValuesSchema, indexFilterValuesSchema,
orderCancellationRequestsSchema, orderCancellationRequestsSchema,

View File

@ -216,9 +216,11 @@ describe('Schema', () => {
takerAssetData: NULL_ADDRESS, takerAssetData: NULL_ADDRESS,
salt: '67006738228878699843088602623665307406148487219438534730168799356281242528500', salt: '67006738228878699843088602623665307406148487219438534730168799356281242528500',
feeRecipientAddress: NULL_ADDRESS, feeRecipientAddress: NULL_ADDRESS,
exchangeAddress: NULL_ADDRESS,
chainId: CHAIN_ID,
expirationTimeSeconds: '42', expirationTimeSeconds: '42',
domain: {
verifyingContractAddress: NULL_ADDRESS,
chainId: CHAIN_ID,
},
}; };
const relayerApiOrder = { const relayerApiOrder = {
order, order,

View File

@ -15,6 +15,7 @@
"./schemas/call_data_schema.json", "./schemas/call_data_schema.json",
"./schemas/ec_signature_parameter_schema.json", "./schemas/ec_signature_parameter_schema.json",
"./schemas/ec_signature_schema.json", "./schemas/ec_signature_schema.json",
"./schemas/eip712_domain_schema.json",
"./schemas/eip712_typed_data_schema.json", "./schemas/eip712_typed_data_schema.json",
"./schemas/order_cancel_schema.json", "./schemas/order_cancel_schema.json",
"./schemas/order_fill_or_kill_requests_schema.json", "./schemas/order_fill_or_kill_requests_schema.json",