aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKadinsky <kandinsky454@protonmail.ch>2018-10-18 02:01:29 +0800
committerGitHub <noreply@github.com>2018-10-18 02:01:29 +0800
commit5ec4b27200297708298deca97603849a37b2f66a (patch)
tree96c28898329c3bf786a08549384f2de79d0903f8
parentb2012bf1610eda65afe180b04df6c9ee8f5dc659 (diff)
parentbdae4ba2a2c9b7b3b41c352c628cb11cd4a1f295 (diff)
downloaddexon-sol-tools-5ec4b27200297708298deca97603849a37b2f66a.tar
dexon-sol-tools-5ec4b27200297708298deca97603849a37b2f66a.tar.gz
dexon-sol-tools-5ec4b27200297708298deca97603849a37b2f66a.tar.bz2
dexon-sol-tools-5ec4b27200297708298deca97603849a37b2f66a.tar.lz
dexon-sol-tools-5ec4b27200297708298deca97603849a37b2f66a.tar.xz
dexon-sol-tools-5ec4b27200297708298deca97603849a37b2f66a.tar.zst
dexon-sol-tools-5ec4b27200297708298deca97603849a37b2f66a.zip
Merge pull request #1145 from 0xProject/refactorSchemasToJSON
Move json-schema schemas to JSON files
-rw-r--r--.prettierignore1
-rw-r--r--packages/0x.js/package.json2
-rw-r--r--packages/asset-buyer/package.json2
-rw-r--r--packages/base-contract/src/index.ts3
-rw-r--r--packages/connect/package.json2
-rw-r--r--packages/connect/src/utils/assert.ts2
-rw-r--r--packages/contract-wrappers/package.json2
-rw-r--r--packages/ethereum-types/src/index.ts16
-rw-r--r--packages/instant/package.json2
-rw-r--r--packages/json-schemas/CHANGELOG.json10
-rw-r--r--packages/json-schemas/package.json4
-rw-r--r--packages/json-schemas/schemas/address_schema.json5
-rw-r--r--packages/json-schemas/schemas/basic_type_schemas.ts17
-rw-r--r--packages/json-schemas/schemas/block_param_schema.json11
-rw-r--r--packages/json-schemas/schemas/block_range_schema.json8
-rw-r--r--packages/json-schemas/schemas/block_range_schema.ts20
-rw-r--r--packages/json-schemas/schemas/call_data_schema.json27
-rw-r--r--packages/json-schemas/schemas/call_data_schema.ts27
-rw-r--r--packages/json-schemas/schemas/ec_signature_parameter_schema.json5
-rw-r--r--packages/json-schemas/schemas/ec_signature_schema.json14
-rw-r--r--packages/json-schemas/schemas/ec_signature_schema.ts20
-rw-r--r--packages/json-schemas/schemas/eip712_typed_data.ts28
-rw-r--r--packages/json-schemas/schemas/eip712_typed_data_schema.json28
-rw-r--r--packages/json-schemas/schemas/hex_schema.json5
-rw-r--r--packages/json-schemas/schemas/index_filter_values_schema.json7
-rw-r--r--packages/json-schemas/schemas/index_filter_values_schema.ts7
-rw-r--r--packages/json-schemas/schemas/js_number.json5
-rw-r--r--packages/json-schemas/schemas/number_schema.json5
-rw-r--r--packages/json-schemas/schemas/order_cancel_schema.json12
-rw-r--r--packages/json-schemas/schemas/order_cancel_schema.ts12
-rw-r--r--packages/json-schemas/schemas/order_fill_or_kill_requests_schema.json12
-rw-r--r--packages/json-schemas/schemas/order_fill_or_kill_requests_schema.ts12
-rw-r--r--packages/json-schemas/schemas/order_fill_requests_schema.json12
-rw-r--r--packages/json-schemas/schemas/order_fill_requests_schema.ts12
-rw-r--r--packages/json-schemas/schemas/order_hash_schema.json5
-rw-r--r--packages/json-schemas/schemas/order_hash_schema.ts5
-rw-r--r--packages/json-schemas/schemas/order_schema.json34
-rw-r--r--packages/json-schemas/schemas/order_schemas.ts47
-rw-r--r--packages/json-schemas/schemas/orders_schema.json5
-rw-r--r--packages/json-schemas/schemas/orders_schema.ts5
-rw-r--r--packages/json-schemas/schemas/paginated_collection_schema.json10
-rw-r--r--packages/json-schemas/schemas/paginated_collection_schema.ts10
-rw-r--r--packages/json-schemas/schemas/relayer_api_asset_data_pairs_response_schema.json13
-rw-r--r--packages/json-schemas/schemas/relayer_api_asset_data_pairs_schema.json12
-rw-r--r--packages/json-schemas/schemas/relayer_api_asset_data_trade_info_schema.json11
-rw-r--r--packages/json-schemas/schemas/relayer_api_asset_pairs_response_schema.ts38
-rw-r--r--packages/json-schemas/schemas/relayer_api_error_response_schema.json21
-rw-r--r--packages/json-schemas/schemas/relayer_api_error_response_schema.ts21
-rw-r--r--packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.json16
-rw-r--r--packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.ts16
-rw-r--r--packages/json-schemas/schemas/relayer_api_order_config_payload_schema.json24
-rw-r--r--packages/json-schemas/schemas/relayer_api_order_config_payload_schema.ts24
-rw-r--r--packages/json-schemas/schemas/relayer_api_order_config_response_schema.json11
-rw-r--r--packages/json-schemas/schemas/relayer_api_order_config_response_schema.ts11
-rw-r--r--packages/json-schemas/schemas/relayer_api_order_schema.json9
-rw-r--r--packages/json-schemas/schemas/relayer_api_order_schema.ts9
-rw-r--r--packages/json-schemas/schemas/relayer_api_orderbook_response_schema.json9
-rw-r--r--packages/json-schemas/schemas/relayer_api_orderbook_response_schema.ts9
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_payload_schema.json14
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.json11
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.ts26
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.json11
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.ts11
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_response_schema.json13
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_response_schema.ts13
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_schema.json5
-rw-r--r--packages/json-schemas/schemas/relayer_api_orders_schema.ts5
-rw-r--r--packages/json-schemas/schemas/signed_order_schema.json12
-rw-r--r--packages/json-schemas/schemas/signed_orders_schema.json5
-rw-r--r--packages/json-schemas/schemas/signed_orders_schema.ts5
-rw-r--r--packages/json-schemas/schemas/token_schema.json11
-rw-r--r--packages/json-schemas/schemas/token_schema.ts11
-rw-r--r--packages/json-schemas/schemas/tx_data_schema.json26
-rw-r--r--packages/json-schemas/schemas/tx_data_schema.ts32
-rw-r--r--packages/json-schemas/schemas/zero_ex_transaction_schema.json10
-rw-r--r--packages/json-schemas/schemas/zero_ex_transaction_schema.ts10
-rw-r--r--packages/json-schemas/src/globals.d.ts6
-rw-r--r--packages/json-schemas/src/schemas.ts74
-rw-r--r--packages/json-schemas/tsconfig.json44
-rw-r--r--packages/monorepo-scripts/package.json2
-rw-r--r--packages/order-utils/package.json2
-rw-r--r--packages/sol-compiler/package.json2
-rw-r--r--packages/sol-compiler/src/utils/encoder.ts6
-rw-r--r--packages/sol-cov/package.json2
-rw-r--r--packages/sol-doc/src/sol_doc.ts14
-rw-r--r--packages/sra-spec/src/json-schemas.ts4
-rw-r--r--packages/subproviders/package.json2
-rw-r--r--packages/utils/src/abi_decoder.ts8
-rw-r--r--packages/web3-wrapper/package.json2
-rw-r--r--packages/website/md/docs/json_schemas/2.0.0/schemas.md52
-rw-r--r--typedoc-tsconfig.json1
-rw-r--r--yarn.lock16
92 files changed, 637 insertions, 563 deletions
diff --git a/.prettierignore b/.prettierignore
index 8d302a275..79dec3d1f 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -4,6 +4,7 @@ lib
/packages/contracts/generated-artifacts
/packages/abi-gen-wrappers/src/generated-wrappers
/packages/contract-artifacts/artifacts
+/packages/json-schemas/schemas
/packages/metacoin/src/contract_wrappers
/packages/metacoin/artifacts
/packages/sra-spec/public/
diff --git a/packages/0x.js/package.json b/packages/0x.js/package.json
index a78457e22..c439c8af3 100644
--- a/packages/0x.js/package.json
+++ b/packages/0x.js/package.json
@@ -68,7 +68,7 @@
"sinon": "^4.0.0",
"source-map-support": "^0.5.0",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1",
"uglifyjs-webpack-plugin": "^2.0.1",
"webpack": "^4.20.2"
diff --git a/packages/asset-buyer/package.json b/packages/asset-buyer/package.json
index 13de96e6b..850fce873 100644
--- a/packages/asset-buyer/package.json
+++ b/packages/asset-buyer/package.json
@@ -64,7 +64,7 @@
"nyc": "^11.0.1",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1"
},
"publishConfig": {
diff --git a/packages/base-contract/src/index.ts b/packages/base-contract/src/index.ts
index a8e4ad2e2..73550ffd4 100644
--- a/packages/base-contract/src/index.ts
+++ b/packages/base-contract/src/index.ts
@@ -129,7 +129,8 @@ export class BaseContract {
if (abiDefinition.type !== AbiType.Function) {
return false;
}
- const abiFunctionSignature = abiUtils.getFunctionSignature(abiDefinition);
+ // tslint:disable-next-line:no-unnecessary-type-assertion
+ const abiFunctionSignature = abiUtils.getFunctionSignature(abiDefinition as MethodAbi);
if (abiFunctionSignature === functionSignature) {
return true;
}
diff --git a/packages/connect/package.json b/packages/connect/package.json
index e47ca3b79..591db0f83 100644
--- a/packages/connect/package.json
+++ b/packages/connect/package.json
@@ -77,7 +77,7 @@
"nyc": "^11.0.1",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1"
},
"publishConfig": {
diff --git a/packages/connect/src/utils/assert.ts b/packages/connect/src/utils/assert.ts
index 3d8f1c799..4e2202d2e 100644
--- a/packages/connect/src/utils/assert.ts
+++ b/packages/connect/src/utils/assert.ts
@@ -14,7 +14,7 @@ export const assert = {
sharedAssert.doesConformToSchema(
variableName,
subscriptionOpts,
- schemas.relayerApiOrdersChannelSubscribePayload,
+ schemas.relayerApiOrdersChannelSubscribePayloadSchema,
);
},
isOrdersChannelHandler(variableName: string, handler: any): void {
diff --git a/packages/contract-wrappers/package.json b/packages/contract-wrappers/package.json
index 3924378d3..ef19057cd 100644
--- a/packages/contract-wrappers/package.json
+++ b/packages/contract-wrappers/package.json
@@ -60,7 +60,7 @@
"sinon": "^4.0.0",
"source-map-support": "^0.5.0",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1",
"web3-provider-engine": "14.0.6"
},
diff --git a/packages/ethereum-types/src/index.ts b/packages/ethereum-types/src/index.ts
index ddd472010..eff38711a 100644
--- a/packages/ethereum-types/src/index.ts
+++ b/packages/ethereum-types/src/index.ts
@@ -20,7 +20,9 @@ export type ConstructorStateMutability = 'nonpayable' | 'payable';
export type StateMutability = 'pure' | 'view' | ConstructorStateMutability;
export interface MethodAbi {
- type: 'function'; // We hardcode this here b/c doc pages cannot render an enum value
+ // Ideally this would be set to: `'function'` but then TS complains when artifacts are loaded
+ // from JSON files, and this value has type `string` not type `'function'`
+ type: string;
name: string;
inputs: DataItem[];
outputs: DataItem[];
@@ -30,14 +32,18 @@ export interface MethodAbi {
}
export interface ConstructorAbi {
- type: 'constructor'; // We hardcode this here b/c doc pages cannot render an enum value
+ // Ideally this would be set to: `'constructor'` but then TS complains when artifacts are loaded
+ // from JSON files, and this value has type `string` not type `'constructor'`
+ type: string;
inputs: DataItem[];
payable: boolean;
stateMutability: ConstructorStateMutability;
}
export interface FallbackAbi {
- type: 'fallback'; // We hardcode this here b/c doc pages cannot render an enum value
+ // Ideally this would be set to: `'fallback'` but then TS complains when artifacts are loaded
+ // from JSON files, and this value has type `string` not type `'fallback'`
+ type: string;
payable: boolean;
}
@@ -46,7 +52,9 @@ export interface EventParameter extends DataItem {
}
export interface EventAbi {
- type: 'event'; // We hardcode this here b/c doc pages cannot render an enum value
+ // Ideally this would be set to: `'event'` but then TS complains when artifacts are loaded
+ // from JSON files, and this value has type `string` not type `'event'`
+ type: string;
name: string;
inputs: EventParameter[];
anonymous: boolean;
diff --git a/packages/instant/package.json b/packages/instant/package.json
index 203ac4894..0c4b470fa 100644
--- a/packages/instant/package.json
+++ b/packages/instant/package.json
@@ -79,7 +79,7 @@
"shx": "^0.2.2",
"ts-jest": "^23.10.3",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1",
"webpack": "^4.20.2",
"webpack-cli": "^3.1.1",
diff --git a/packages/json-schemas/CHANGELOG.json b/packages/json-schemas/CHANGELOG.json
index 53d929901..08e74b6db 100644
--- a/packages/json-schemas/CHANGELOG.json
+++ b/packages/json-schemas/CHANGELOG.json
@@ -1,5 +1,15 @@
[
{
+ "version": "2.0.0",
+ "changes": [
+ {
+ "note":
+ "Convert all schemas to JSON files so that they can be used with `json-schema` implemenations in other programming languages.",
+ "pr": 1145
+ }
+ ]
+ },
+ {
"timestamp": 1538693146,
"version": "1.0.7",
"changes": [
diff --git a/packages/json-schemas/package.json b/packages/json-schemas/package.json
index 38dee306d..20d2e48ce 100644
--- a/packages/json-schemas/package.json
+++ b/packages/json-schemas/package.json
@@ -10,7 +10,7 @@
"scripts": {
"build": "tsc -b",
"build:ci": "yarn build",
- "lint": "tslint --project .",
+ "lint": "tslint --project . --exclude **/schemas/**/*",
"test": "yarn run_mocha",
"rebuild_and_test": "run-s clean build test",
"test:coverage": "nyc npm run test --all && yarn coverage:report:lcov",
@@ -59,7 +59,7 @@
"nyc": "^11.0.1",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1"
},
"publishConfig": {
diff --git a/packages/json-schemas/schemas/address_schema.json b/packages/json-schemas/schemas/address_schema.json
new file mode 100644
index 000000000..0dc02d331
--- /dev/null
+++ b/packages/json-schemas/schemas/address_schema.json
@@ -0,0 +1,5 @@
+{
+ "id": "/addressSchema",
+ "type": "string",
+ "pattern": "^0x[0-9a-f]{40}$"
+}
diff --git a/packages/json-schemas/schemas/basic_type_schemas.ts b/packages/json-schemas/schemas/basic_type_schemas.ts
deleted file mode 100644
index a59afaef8..000000000
--- a/packages/json-schemas/schemas/basic_type_schemas.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-export const addressSchema = {
- id: '/addressSchema',
- type: 'string',
- pattern: '^0x[0-9a-f]{40}$',
-};
-
-export const hexSchema = {
- id: '/hexSchema',
- type: 'string',
- pattern: '^0x(([0-9a-f][0-9a-f])+)?$',
-};
-
-export const numberSchema = {
- id: '/numberSchema',
- type: 'string',
- pattern: '^\\d+(\\.\\d+)?$',
-};
diff --git a/packages/json-schemas/schemas/block_param_schema.json b/packages/json-schemas/schemas/block_param_schema.json
new file mode 100644
index 000000000..ed4dd1e87
--- /dev/null
+++ b/packages/json-schemas/schemas/block_param_schema.json
@@ -0,0 +1,11 @@
+{
+ "id": "/blockParamSchema",
+ "oneOf": [
+ {
+ "type": "number"
+ },
+ {
+ "enum": ["latest", "earliest", "pending"]
+ }
+ ]
+}
diff --git a/packages/json-schemas/schemas/block_range_schema.json b/packages/json-schemas/schemas/block_range_schema.json
new file mode 100644
index 000000000..b14294649
--- /dev/null
+++ b/packages/json-schemas/schemas/block_range_schema.json
@@ -0,0 +1,8 @@
+{
+ "id": "/blockRangeSchema",
+ "properties": {
+ "fromBlock": { "$ref": "/blockParamSchema" },
+ "toBlock": { "$ref": "/blockParamSchema" }
+ },
+ "type": "object"
+}
diff --git a/packages/json-schemas/schemas/block_range_schema.ts b/packages/json-schemas/schemas/block_range_schema.ts
deleted file mode 100644
index 9eb242fc6..000000000
--- a/packages/json-schemas/schemas/block_range_schema.ts
+++ /dev/null
@@ -1,20 +0,0 @@
-export const blockParamSchema = {
- id: '/blockParamSchema',
- oneOf: [
- {
- type: 'number',
- },
- {
- enum: ['latest', 'earliest', 'pending'],
- },
- ],
-};
-
-export const blockRangeSchema = {
- id: '/blockRangeSchema',
- properties: {
- fromBlock: { $ref: '/blockParamSchema' },
- toBlock: { $ref: '/blockParamSchema' },
- },
- type: 'object',
-};
diff --git a/packages/json-schemas/schemas/call_data_schema.json b/packages/json-schemas/schemas/call_data_schema.json
new file mode 100644
index 000000000..c5972e8c1
--- /dev/null
+++ b/packages/json-schemas/schemas/call_data_schema.json
@@ -0,0 +1,27 @@
+{
+ "id": "/callDataSchema",
+ "properties": {
+ "from": { "$ref": "/addressSchema" },
+ "to": { "$ref": "/addressSchema" },
+ "value": {
+ "oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/jsNumber" }]
+ },
+ "gas": {
+ "oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/jsNumber" }]
+ },
+ "gasPrice": {
+ "oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/jsNumber" }]
+ },
+ "data": {
+ "type": "string",
+ "pattern": "^0x[0-9a-f]*$"
+ },
+ "nonce": {
+ "type": "number",
+ "minimum": 0
+ }
+ },
+ "required": [],
+ "type": "object",
+ "additionalProperties": false
+}
diff --git a/packages/json-schemas/schemas/call_data_schema.ts b/packages/json-schemas/schemas/call_data_schema.ts
deleted file mode 100644
index 4c77d9f9d..000000000
--- a/packages/json-schemas/schemas/call_data_schema.ts
+++ /dev/null
@@ -1,27 +0,0 @@
-export const callDataSchema = {
- id: '/callDataSchema',
- properties: {
- from: { $ref: '/addressSchema' },
- to: { $ref: '/addressSchema' },
- value: {
- oneOf: [{ $ref: '/numberSchema' }, { $ref: '/jsNumber' }],
- },
- gas: {
- oneOf: [{ $ref: '/numberSchema' }, { $ref: '/jsNumber' }],
- },
- gasPrice: {
- oneOf: [{ $ref: '/numberSchema' }, { $ref: '/jsNumber' }],
- },
- data: {
- type: 'string',
- pattern: '^0x[0-9a-f]*$',
- },
- nonce: {
- type: 'number',
- minimum: 0,
- },
- },
- required: [],
- type: 'object',
- additionalProperties: false,
-};
diff --git a/packages/json-schemas/schemas/ec_signature_parameter_schema.json b/packages/json-schemas/schemas/ec_signature_parameter_schema.json
new file mode 100644
index 000000000..0c08ec240
--- /dev/null
+++ b/packages/json-schemas/schemas/ec_signature_parameter_schema.json
@@ -0,0 +1,5 @@
+{
+ "id": "/ecSignatureParameterSchema",
+ "type": "string",
+ "pattern": "^0[xX][0-9A-Fa-f]{64}$"
+}
diff --git a/packages/json-schemas/schemas/ec_signature_schema.json b/packages/json-schemas/schemas/ec_signature_schema.json
new file mode 100644
index 000000000..bc79ca5e9
--- /dev/null
+++ b/packages/json-schemas/schemas/ec_signature_schema.json
@@ -0,0 +1,14 @@
+{
+ "id": "/ECSignature",
+ "properties": {
+ "v": {
+ "type": "number",
+ "minimum": 27,
+ "maximum": 28
+ },
+ "r": { "$ref": "/ecSignatureParameterSchema" },
+ "s": { "$ref": "/ecSignatureParameterSchema" }
+ },
+ "required": ["v", "r", "s"],
+ "type": "object"
+}
diff --git a/packages/json-schemas/schemas/ec_signature_schema.ts b/packages/json-schemas/schemas/ec_signature_schema.ts
deleted file mode 100644
index c59532f09..000000000
--- a/packages/json-schemas/schemas/ec_signature_schema.ts
+++ /dev/null
@@ -1,20 +0,0 @@
-export const ecSignatureParameterSchema = {
- id: '/ecSignatureParameterSchema',
- type: 'string',
- pattern: '^0[xX][0-9A-Fa-f]{64}$',
-};
-
-export const ecSignatureSchema = {
- id: '/ECSignature',
- properties: {
- v: {
- type: 'number',
- minimum: 27,
- maximum: 28,
- },
- r: { $ref: '/ecSignatureParameterSchema' },
- s: { $ref: '/ecSignatureParameterSchema' },
- },
- required: ['v', 'r', 's'],
- type: 'object',
-};
diff --git a/packages/json-schemas/schemas/eip712_typed_data.ts b/packages/json-schemas/schemas/eip712_typed_data.ts
deleted file mode 100644
index 31ad74610..000000000
--- a/packages/json-schemas/schemas/eip712_typed_data.ts
+++ /dev/null
@@ -1,28 +0,0 @@
-export const eip712TypedDataSchema = {
- id: '/eip712TypedData',
- type: 'object',
- properties: {
- types: {
- type: 'object',
- properties: {
- EIP712Domain: { type: 'array' },
- },
- additionalProperties: {
- type: 'array',
- items: {
- type: 'object',
- properties: {
- name: { type: 'string' },
- type: { type: 'string' },
- },
- required: ['name', 'type'],
- },
- },
- required: ['EIP712Domain'],
- },
- primaryType: { type: 'string' },
- domain: { type: 'object' },
- message: { type: 'object' },
- },
- required: ['types', 'primaryType', 'domain', 'message'],
-};
diff --git a/packages/json-schemas/schemas/eip712_typed_data_schema.json b/packages/json-schemas/schemas/eip712_typed_data_schema.json
new file mode 100644
index 000000000..8efd6de44
--- /dev/null
+++ b/packages/json-schemas/schemas/eip712_typed_data_schema.json
@@ -0,0 +1,28 @@
+{
+ "id": "/eip712TypedDataSchema",
+ "type": "object",
+ "properties": {
+ "types": {
+ "type": "object",
+ "properties": {
+ "EIP712Domain": { "type": "array" }
+ },
+ "additionalProperties": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "name": { "type": "string" },
+ "type": { "type": "string" }
+ },
+ "required": ["name", "type"]
+ }
+ },
+ "required": ["EIP712Domain"]
+ },
+ "primaryType": { "type": "string" },
+ "domain": { "type": "object" },
+ "message": { "type": "object" }
+ },
+ "required": ["types", "primaryType", "domain", "message"]
+}
diff --git a/packages/json-schemas/schemas/hex_schema.json b/packages/json-schemas/schemas/hex_schema.json
new file mode 100644
index 000000000..f37815d5b
--- /dev/null
+++ b/packages/json-schemas/schemas/hex_schema.json
@@ -0,0 +1,5 @@
+{
+ "id": "/hexSchema",
+ "type": "string",
+ "pattern": "^0x(([0-9a-f][0-9a-f])+)?$"
+}
diff --git a/packages/json-schemas/schemas/index_filter_values_schema.json b/packages/json-schemas/schemas/index_filter_values_schema.json
new file mode 100644
index 000000000..bec00d79e
--- /dev/null
+++ b/packages/json-schemas/schemas/index_filter_values_schema.json
@@ -0,0 +1,7 @@
+{
+ "id": "/indexFilterValuesSchema",
+ "additionalProperties": {
+ "oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/addressSchema" }, { "$ref": "/orderHashSchema" }]
+ },
+ "type": "object"
+}
diff --git a/packages/json-schemas/schemas/index_filter_values_schema.ts b/packages/json-schemas/schemas/index_filter_values_schema.ts
deleted file mode 100644
index f3c8cef68..000000000
--- a/packages/json-schemas/schemas/index_filter_values_schema.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-export const indexFilterValuesSchema = {
- id: '/indexFilterValuesSchema',
- additionalProperties: {
- oneOf: [{ $ref: '/numberSchema' }, { $ref: '/addressSchema' }, { $ref: '/orderHashSchema' }],
- },
- type: 'object',
-};
diff --git a/packages/json-schemas/schemas/js_number.json b/packages/json-schemas/schemas/js_number.json
new file mode 100644
index 000000000..6a72d92c0
--- /dev/null
+++ b/packages/json-schemas/schemas/js_number.json
@@ -0,0 +1,5 @@
+{
+ "id": "/jsNumber",
+ "type": "number",
+ "minimum": 0
+}
diff --git a/packages/json-schemas/schemas/number_schema.json b/packages/json-schemas/schemas/number_schema.json
new file mode 100644
index 000000000..a48f3e8cf
--- /dev/null
+++ b/packages/json-schemas/schemas/number_schema.json
@@ -0,0 +1,5 @@
+{
+ "id": "/numberSchema",
+ "type": "string",
+ "pattern": "^\\d+(\\.\\d+)?$"
+}
diff --git a/packages/json-schemas/schemas/order_cancel_schema.json b/packages/json-schemas/schemas/order_cancel_schema.json
new file mode 100644
index 000000000..09d4068c6
--- /dev/null
+++ b/packages/json-schemas/schemas/order_cancel_schema.json
@@ -0,0 +1,12 @@
+{
+ "id": "/orderCancellationRequestsSchema",
+ "type": "array",
+ "items": {
+ "properties": {
+ "order": { "$ref": "/orderSchema" },
+ "takerTokenCancelAmount": { "$ref": "/numberSchema" }
+ },
+ "required": ["order", "takerTokenCancelAmount"],
+ "type": "object"
+ }
+}
diff --git a/packages/json-schemas/schemas/order_cancel_schema.ts b/packages/json-schemas/schemas/order_cancel_schema.ts
deleted file mode 100644
index e4edfbca9..000000000
--- a/packages/json-schemas/schemas/order_cancel_schema.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-export const orderCancellationRequestsSchema = {
- id: '/orderCancellationRequestsSchema',
- type: 'array',
- items: {
- properties: {
- order: { $ref: '/orderSchema' },
- takerTokenCancelAmount: { $ref: '/numberSchema' },
- },
- required: ['order', 'takerTokenCancelAmount'],
- type: 'object',
- },
-};
diff --git a/packages/json-schemas/schemas/order_fill_or_kill_requests_schema.json b/packages/json-schemas/schemas/order_fill_or_kill_requests_schema.json
new file mode 100644
index 000000000..c9549c72e
--- /dev/null
+++ b/packages/json-schemas/schemas/order_fill_or_kill_requests_schema.json
@@ -0,0 +1,12 @@
+{
+ "id": "/orderFillOrKillRequestsSchema",
+ "type": "array",
+ "items": {
+ "properties": {
+ "signedOrder": { "$ref": "/signedOrderSchema" },
+ "fillTakerAmount": { "$ref": "/numberSchema" }
+ },
+ "required": ["signedOrder", "fillTakerAmount"],
+ "type": "object"
+ }
+}
diff --git a/packages/json-schemas/schemas/order_fill_or_kill_requests_schema.ts b/packages/json-schemas/schemas/order_fill_or_kill_requests_schema.ts
deleted file mode 100644
index e2c18ef0a..000000000
--- a/packages/json-schemas/schemas/order_fill_or_kill_requests_schema.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-export const orderFillOrKillRequestsSchema = {
- id: '/orderFillOrKillRequestsSchema',
- type: 'array',
- items: {
- properties: {
- signedOrder: { $ref: '/signedOrderSchema' },
- fillTakerAmount: { $ref: '/numberSchema' },
- },
- required: ['signedOrder', 'fillTakerAmount'],
- type: 'object',
- },
-};
diff --git a/packages/json-schemas/schemas/order_fill_requests_schema.json b/packages/json-schemas/schemas/order_fill_requests_schema.json
new file mode 100644
index 000000000..98325653b
--- /dev/null
+++ b/packages/json-schemas/schemas/order_fill_requests_schema.json
@@ -0,0 +1,12 @@
+{
+ "id": "/orderFillRequestsSchema",
+ "type": "array",
+ "items": {
+ "properties": {
+ "signedOrder": { "$ref": "/signedOrderSchema" },
+ "takerTokenFillAmount": { "$ref": "/numberSchema" }
+ },
+ "required": ["signedOrder", "takerTokenFillAmount"],
+ "type": "object"
+ }
+}
diff --git a/packages/json-schemas/schemas/order_fill_requests_schema.ts b/packages/json-schemas/schemas/order_fill_requests_schema.ts
deleted file mode 100644
index ea8b35e54..000000000
--- a/packages/json-schemas/schemas/order_fill_requests_schema.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-export const orderFillRequestsSchema = {
- id: '/orderFillRequestsSchema',
- type: 'array',
- items: {
- properties: {
- signedOrder: { $ref: '/signedOrderSchema' },
- takerTokenFillAmount: { $ref: '/numberSchema' },
- },
- required: ['signedOrder', 'takerTokenFillAmount'],
- type: 'object',
- },
-};
diff --git a/packages/json-schemas/schemas/order_hash_schema.json b/packages/json-schemas/schemas/order_hash_schema.json
new file mode 100644
index 000000000..4a770579f
--- /dev/null
+++ b/packages/json-schemas/schemas/order_hash_schema.json
@@ -0,0 +1,5 @@
+{
+ "id": "/orderHashSchema",
+ "type": "string",
+ "pattern": "^0x[0-9a-fA-F]{64}$"
+}
diff --git a/packages/json-schemas/schemas/order_hash_schema.ts b/packages/json-schemas/schemas/order_hash_schema.ts
deleted file mode 100644
index 9773a88f9..000000000
--- a/packages/json-schemas/schemas/order_hash_schema.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export const orderHashSchema = {
- id: '/orderHashSchema',
- type: 'string',
- pattern: '^0x[0-9a-fA-F]{64}$',
-};
diff --git a/packages/json-schemas/schemas/order_schema.json b/packages/json-schemas/schemas/order_schema.json
new file mode 100644
index 000000000..de2c8c7c2
--- /dev/null
+++ b/packages/json-schemas/schemas/order_schema.json
@@ -0,0 +1,34 @@
+{
+ "id": "/orderSchema",
+ "properties": {
+ "makerAddress": { "$ref": "/addressSchema" },
+ "takerAddress": { "$ref": "/addressSchema" },
+ "makerFee": { "$ref": "/numberSchema" },
+ "takerFee": { "$ref": "/numberSchema" },
+ "senderAddress": { "$ref": "/addressSchema" },
+ "makerAssetAmount": { "$ref": "/numberSchema" },
+ "takerAssetAmount": { "$ref": "/numberSchema" },
+ "makerAssetData": { "$ref": "/hexSchema" },
+ "takerAssetData": { "$ref": "/hexSchema" },
+ "salt": { "$ref": "/numberSchema" },
+ "exchangeAddress": { "$ref": "/addressSchema" },
+ "feeRecipientAddress": { "$ref": "/addressSchema" },
+ "expirationTimeSeconds": { "$ref": "/numberSchema" }
+ },
+ "required": [
+ "makerAddress",
+ "takerAddress",
+ "makerFee",
+ "takerFee",
+ "senderAddress",
+ "makerAssetAmount",
+ "takerAssetAmount",
+ "makerAssetData",
+ "takerAssetData",
+ "salt",
+ "exchangeAddress",
+ "feeRecipientAddress",
+ "expirationTimeSeconds"
+ ],
+ "type": "object"
+}
diff --git a/packages/json-schemas/schemas/order_schemas.ts b/packages/json-schemas/schemas/order_schemas.ts
deleted file mode 100644
index eb7fdaf5a..000000000
--- a/packages/json-schemas/schemas/order_schemas.ts
+++ /dev/null
@@ -1,47 +0,0 @@
-export const orderSchema = {
- id: '/orderSchema',
- properties: {
- makerAddress: { $ref: '/addressSchema' },
- takerAddress: { $ref: '/addressSchema' },
- makerFee: { $ref: '/numberSchema' },
- takerFee: { $ref: '/numberSchema' },
- senderAddress: { $ref: '/addressSchema' },
- makerAssetAmount: { $ref: '/numberSchema' },
- takerAssetAmount: { $ref: '/numberSchema' },
- makerAssetData: { $ref: '/hexSchema' },
- takerAssetData: { $ref: '/hexSchema' },
- salt: { $ref: '/numberSchema' },
- exchangeAddress: { $ref: '/addressSchema' },
- feeRecipientAddress: { $ref: '/addressSchema' },
- expirationTimeSeconds: { $ref: '/numberSchema' },
- },
- required: [
- 'makerAddress',
- 'takerAddress',
- 'makerFee',
- 'takerFee',
- 'senderAddress',
- 'makerAssetAmount',
- 'takerAssetAmount',
- 'makerAssetData',
- 'takerAssetData',
- 'salt',
- 'exchangeAddress',
- 'feeRecipientAddress',
- 'expirationTimeSeconds',
- ],
- type: 'object',
-};
-
-export const signedOrderSchema = {
- id: '/signedOrderSchema',
- allOf: [
- { $ref: '/orderSchema' },
- {
- properties: {
- signature: { $ref: '/hexSchema' },
- },
- required: ['signature'],
- },
- ],
-};
diff --git a/packages/json-schemas/schemas/orders_schema.json b/packages/json-schemas/schemas/orders_schema.json
new file mode 100644
index 000000000..1e1c6a875
--- /dev/null
+++ b/packages/json-schemas/schemas/orders_schema.json
@@ -0,0 +1,5 @@
+{
+ "id": "/ordersSchema",
+ "type": "array",
+ "items": { "$ref": "/orderSchema" }
+}
diff --git a/packages/json-schemas/schemas/orders_schema.ts b/packages/json-schemas/schemas/orders_schema.ts
deleted file mode 100644
index de0abcf00..000000000
--- a/packages/json-schemas/schemas/orders_schema.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export const ordersSchema = {
- id: '/ordersSchema',
- type: 'array',
- items: { $ref: '/orderSchema' },
-};
diff --git a/packages/json-schemas/schemas/paginated_collection_schema.json b/packages/json-schemas/schemas/paginated_collection_schema.json
new file mode 100644
index 000000000..9dcedf5b4
--- /dev/null
+++ b/packages/json-schemas/schemas/paginated_collection_schema.json
@@ -0,0 +1,10 @@
+{
+ "id": "/paginatedCollectionSchema",
+ "type": "object",
+ "properties": {
+ "total": { "type": "number" },
+ "perPage": { "type": "number" },
+ "page": { "type": "number" }
+ },
+ "required": ["total", "perPage", "page"]
+}
diff --git a/packages/json-schemas/schemas/paginated_collection_schema.ts b/packages/json-schemas/schemas/paginated_collection_schema.ts
deleted file mode 100644
index 16044c70a..000000000
--- a/packages/json-schemas/schemas/paginated_collection_schema.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-export const paginatedCollectionSchema = {
- id: '/paginatedCollectionSchema',
- type: 'object',
- properties: {
- total: { type: 'number' },
- perPage: { type: 'number' },
- page: { type: 'number' },
- },
- required: ['total', 'perPage', 'page'],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_asset_data_pairs_response_schema.json b/packages/json-schemas/schemas/relayer_api_asset_data_pairs_response_schema.json
new file mode 100644
index 000000000..d1150d3db
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_asset_data_pairs_response_schema.json
@@ -0,0 +1,13 @@
+{
+ "id": "/relayerApiAssetDataPairsResponseSchema",
+ "type": "object",
+ "allOf": [
+ { "$ref": "/paginatedCollectionSchema" },
+ {
+ "properties": {
+ "records": { "$ref": "/relayerApiAssetDataPairsSchema" }
+ },
+ "required": ["records"]
+ }
+ ]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_asset_data_pairs_schema.json b/packages/json-schemas/schemas/relayer_api_asset_data_pairs_schema.json
new file mode 100644
index 000000000..62d4745b8
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_asset_data_pairs_schema.json
@@ -0,0 +1,12 @@
+{
+ "id": "/relayerApiAssetDataPairsSchema",
+ "type": "array",
+ "items": {
+ "properties": {
+ "assetDataA": { "$ref": "/relayerApiAssetDataTradeInfoSchema" },
+ "assetDataB": { "$ref": "/relayerApiAssetDataTradeInfoSchema" }
+ },
+ "required": ["assetDataA", "assetDataB"],
+ "type": "object"
+ }
+}
diff --git a/packages/json-schemas/schemas/relayer_api_asset_data_trade_info_schema.json b/packages/json-schemas/schemas/relayer_api_asset_data_trade_info_schema.json
new file mode 100644
index 000000000..0ab9b444f
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_asset_data_trade_info_schema.json
@@ -0,0 +1,11 @@
+{
+ "id": "/relayerApiAssetDataTradeInfoSchema",
+ "type": "object",
+ "properties": {
+ "assetData": { "$ref": "/hexSchema" },
+ "minAmount": { "$ref": "/numberSchema" },
+ "maxAmount": { "$ref": "/numberSchema" },
+ "precision": { "type": "number" }
+ },
+ "required": ["assetData"]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_asset_pairs_response_schema.ts b/packages/json-schemas/schemas/relayer_api_asset_pairs_response_schema.ts
deleted file mode 100644
index c13396d29..000000000
--- a/packages/json-schemas/schemas/relayer_api_asset_pairs_response_schema.ts
+++ /dev/null
@@ -1,38 +0,0 @@
-export const relayerApiAssetDataPairsResponseSchema = {
- id: '/relayerApiAssetDataPairsResponseSchema',
- type: 'object',
- allOf: [
- { $ref: '/paginatedCollectionSchema' },
- {
- properties: {
- records: { $ref: '/relayerApiAssetDataPairsSchema' },
- },
- required: ['records'],
- },
- ],
-};
-
-export const relayerApiAssetDataPairsSchema = {
- id: '/relayerApiAssetDataPairsSchema',
- type: 'array',
- items: {
- properties: {
- assetDataA: { $ref: '/relayerApiAssetDataTradeInfoSchema' },
- assetDataB: { $ref: '/relayerApiAssetDataTradeInfoSchema' },
- },
- required: ['assetDataA', 'assetDataB'],
- type: 'object',
- },
-};
-
-export const relayerApiAssetDataTradeInfoSchema = {
- id: '/relayerApiAssetDataTradeInfoSchema',
- type: 'object',
- properties: {
- assetData: { $ref: '/hexSchema' },
- minAmount: { $ref: '/numberSchema' },
- maxAmount: { $ref: '/numberSchema' },
- precision: { type: 'number' },
- },
- required: ['assetData'],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_error_response_schema.json b/packages/json-schemas/schemas/relayer_api_error_response_schema.json
new file mode 100644
index 000000000..be4659b0b
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_error_response_schema.json
@@ -0,0 +1,21 @@
+{
+ "id": "/relayerApiErrorResponseSchema",
+ "type": "object",
+ "properties": {
+ "code": { "type": "integer", "minimum": 100, "maximum": 103 },
+ "reason": { "type": "string" },
+ "validationErrors": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "field": { "type": "string" },
+ "code": { "type": "integer", "minimum": 1000, "maximum": 1006 },
+ "reason": { "type": "string" }
+ },
+ "required": ["field", "code", "reason"]
+ }
+ }
+ },
+ "required": ["code", "reason"]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_error_response_schema.ts b/packages/json-schemas/schemas/relayer_api_error_response_schema.ts
deleted file mode 100644
index 79e33fc85..000000000
--- a/packages/json-schemas/schemas/relayer_api_error_response_schema.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-export const relayerApiErrorResponseSchema = {
- id: '/relayerApiErrorResponseSchema',
- type: 'object',
- properties: {
- code: { type: 'integer', minimum: 100, maximum: 103 },
- reason: { type: 'string' },
- validationErrors: {
- type: 'array',
- items: {
- type: 'object',
- properties: {
- field: { type: 'string' },
- code: { type: 'integer', minimum: 1000, maximum: 1006 },
- reason: { type: 'string' },
- },
- required: ['field', 'code', 'reason'],
- },
- },
- },
- required: ['code', 'reason'],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.json b/packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.json
new file mode 100644
index 000000000..c73506dbb
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.json
@@ -0,0 +1,16 @@
+{
+ "id": "/relayerApiFeeRecipientsResponseSchema",
+ "type": "object",
+ "allOf": [
+ { "$ref": "/paginatedCollectionSchema" },
+ {
+ "properties": {
+ "records": {
+ "type": "array",
+ "items": { "$ref": "/addressSchema" }
+ }
+ },
+ "required": ["records"]
+ }
+ ]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.ts b/packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.ts
deleted file mode 100644
index 5f6bc0530..000000000
--- a/packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-export const relayerApiFeeRecipientsResponseSchema = {
- id: '/relayerApiFeeRecipientsResponseSchema',
- type: 'object',
- allOf: [
- { $ref: '/paginatedCollectionSchema' },
- {
- properties: {
- records: {
- type: 'array',
- items: { $ref: '/addressSchema' },
- },
- },
- required: ['records'],
- },
- ],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_order_config_payload_schema.json b/packages/json-schemas/schemas/relayer_api_order_config_payload_schema.json
new file mode 100644
index 000000000..bc95b61ef
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_order_config_payload_schema.json
@@ -0,0 +1,24 @@
+{
+ "id": "/relayerApiOrderConfigPayloadSchema",
+ "type": "object",
+ "properties": {
+ "makerAddress": { "$ref": "/addressSchema" },
+ "takerAddress": { "$ref": "/addressSchema" },
+ "makerAssetAmount": { "$ref": "/numberSchema" },
+ "takerAssetAmount": { "$ref": "/numberSchema" },
+ "makerAssetData": { "$ref": "/hexSchema" },
+ "takerAssetData": { "$ref": "/hexSchema" },
+ "exchangeAddress": { "$ref": "/addressSchema" },
+ "expirationTimeSeconds": { "$ref": "/numberSchema" }
+ },
+ "required": [
+ "makerAddress",
+ "takerAddress",
+ "makerAssetAmount",
+ "takerAssetAmount",
+ "makerAssetData",
+ "takerAssetData",
+ "exchangeAddress",
+ "expirationTimeSeconds"
+ ]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_order_config_payload_schema.ts b/packages/json-schemas/schemas/relayer_api_order_config_payload_schema.ts
deleted file mode 100644
index 8d1d408d6..000000000
--- a/packages/json-schemas/schemas/relayer_api_order_config_payload_schema.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-export const relayerApiOrderConfigPayloadSchema = {
- id: '/relayerApiOrderConfigPayloadSchema',
- type: 'object',
- properties: {
- makerAddress: { $ref: '/addressSchema' },
- takerAddress: { $ref: '/addressSchema' },
- makerAssetAmount: { $ref: '/numberSchema' },
- takerAssetAmount: { $ref: '/numberSchema' },
- makerAssetData: { $ref: '/hexSchema' },
- takerAssetData: { $ref: '/hexSchema' },
- exchangeAddress: { $ref: '/addressSchema' },
- expirationTimeSeconds: { $ref: '/numberSchema' },
- },
- required: [
- 'makerAddress',
- 'takerAddress',
- 'makerAssetAmount',
- 'takerAssetAmount',
- 'makerAssetData',
- 'takerAssetData',
- 'exchangeAddress',
- 'expirationTimeSeconds',
- ],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_order_config_response_schema.json b/packages/json-schemas/schemas/relayer_api_order_config_response_schema.json
new file mode 100644
index 000000000..0742febdf
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_order_config_response_schema.json
@@ -0,0 +1,11 @@
+{
+ "id": "/relayerApiOrderConfigResponseSchema",
+ "type": "object",
+ "properties": {
+ "makerFee": { "$ref": "/numberSchema" },
+ "takerFee": { "$ref": "/numberSchema" },
+ "feeRecipientAddress": { "$ref": "/addressSchema" },
+ "senderAddress": { "$ref": "/addressSchema" }
+ },
+ "required": ["makerFee", "takerFee", "feeRecipientAddress", "senderAddress"]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_order_config_response_schema.ts b/packages/json-schemas/schemas/relayer_api_order_config_response_schema.ts
deleted file mode 100644
index 390d0b262..000000000
--- a/packages/json-schemas/schemas/relayer_api_order_config_response_schema.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-export const relayerApiOrderConfigResponseSchema = {
- id: '/relayerApiOrderConfigResponseSchema',
- type: 'object',
- properties: {
- makerFee: { $ref: '/numberSchema' },
- takerFee: { $ref: '/numberSchema' },
- feeRecipientAddress: { $ref: '/addressSchema' },
- senderAddress: { $ref: '/addressSchema' },
- },
- required: ['makerFee', 'takerFee', 'feeRecipientAddress', 'senderAddress'],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_order_schema.json b/packages/json-schemas/schemas/relayer_api_order_schema.json
new file mode 100644
index 000000000..e0f6539b9
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_order_schema.json
@@ -0,0 +1,9 @@
+{
+ "id": "/relayerApiOrderSchema",
+ "type": "object",
+ "properties": {
+ "order": { "$ref": "/orderSchema" },
+ "metaData": { "type": "object" }
+ },
+ "required": ["order", "metaData"]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_order_schema.ts b/packages/json-schemas/schemas/relayer_api_order_schema.ts
deleted file mode 100644
index 3952e9683..000000000
--- a/packages/json-schemas/schemas/relayer_api_order_schema.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-export const relayerApiOrderSchema = {
- id: '/relayerApiOrderSchema',
- type: 'object',
- properties: {
- order: { $ref: '/orderSchema' },
- metaData: { type: 'object' },
- },
- required: ['order', 'metaData'],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_orderbook_response_schema.json b/packages/json-schemas/schemas/relayer_api_orderbook_response_schema.json
new file mode 100644
index 000000000..b44f2a740
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_orderbook_response_schema.json
@@ -0,0 +1,9 @@
+{
+ "id": "/relayerApiOrderbookResponseSchema",
+ "type": "object",
+ "properties": {
+ "bids": { "$ref": "/relayerApiOrdersResponseSchema" },
+ "asks": { "$ref": "/relayerApiOrdersResponseSchema" }
+ },
+ "required": ["bids", "asks"]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_orderbook_response_schema.ts b/packages/json-schemas/schemas/relayer_api_orderbook_response_schema.ts
deleted file mode 100644
index 7c0b8e0df..000000000
--- a/packages/json-schemas/schemas/relayer_api_orderbook_response_schema.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-export const relayerApiOrderbookResponseSchema = {
- id: '/relayerApiOrderbookResponseSchema',
- type: 'object',
- properties: {
- bids: { $ref: '/relayerApiOrdersResponseSchema' },
- asks: { $ref: '/relayerApiOrdersResponseSchema' },
- },
- required: ['bids', 'asks'],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_payload_schema.json b/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_payload_schema.json
new file mode 100644
index 000000000..274ef1625
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_payload_schema.json
@@ -0,0 +1,14 @@
+{
+ "id": "/relayerApiOrdersChannelSubscribePayloadSchema",
+ "type": "object",
+ "properties": {
+ "makerAssetProxyId": { "$ref": "/hexSchema" },
+ "takerAssetProxyId": { "$ref": "/hexSchema" },
+ "networkId": { "type": "number" },
+ "makerAssetAddress": { "$ref": "/addressSchema" },
+ "takerAssetAddress": { "$ref": "/addressSchema" },
+ "makerAssetData": { "$ref": "/hexSchema" },
+ "takerAssetData": { "$ref": "/hexSchema" },
+ "traderAssetData": { "$ref": "/hexSchema" }
+ }
+}
diff --git a/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.json b/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.json
new file mode 100644
index 000000000..29561d09f
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.json
@@ -0,0 +1,11 @@
+{
+ "id": "/relayerApiOrdersChannelSubscribeSchema",
+ "type": "object",
+ "properties": {
+ "type": { "enum": ["subscribe"] },
+ "channel": { "enum": ["orders"] },
+ "requestId": { "type": "string" },
+ "payload": { "$ref": "/relayerApiOrdersChannelSubscribePayloadSchema" }
+ },
+ "required": ["type", "channel", "requestId"]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.ts b/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.ts
deleted file mode 100644
index a3b9b6d95..000000000
--- a/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.ts
+++ /dev/null
@@ -1,26 +0,0 @@
-export const relayerApiOrdersChannelSubscribeSchema = {
- id: '/relayerApiOrdersChannelSubscribeSchema',
- type: 'object',
- properties: {
- type: { enum: ['subscribe'] },
- channel: { enum: ['orders'] },
- requestId: { type: 'string' },
- payload: { $ref: '/relayerApiOrdersChannelSubscribePayload' },
- },
- required: ['type', 'channel', 'requestId'],
-};
-
-export const relayerApiOrdersChannelSubscribePayload = {
- id: '/relayerApiOrdersChannelSubscribePayload',
- type: 'object',
- properties: {
- makerAssetProxyId: { $ref: '/hexSchema' },
- takerAssetProxyId: { $ref: '/hexSchema' },
- networkId: { type: 'number' },
- makerAssetAddress: { $ref: '/addressSchema' },
- takerAssetAddress: { $ref: '/addressSchema' },
- makerAssetData: { $ref: '/hexSchema' },
- takerAssetData: { $ref: '/hexSchema' },
- traderAssetData: { $ref: '/hexSchema' },
- },
-};
diff --git a/packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.json b/packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.json
new file mode 100644
index 000000000..239e7c586
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.json
@@ -0,0 +1,11 @@
+{
+ "id": "/relayerApiOrdersChannelUpdateSchema",
+ "type": "object",
+ "properties": {
+ "type": { "enum": ["update"] },
+ "channel": { "enum": ["orders"] },
+ "requestId": { "type": "string" },
+ "payload": { "$ref": "/relayerApiOrdersSchema" }
+ },
+ "required": ["type", "channel", "requestId"]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.ts b/packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.ts
deleted file mode 100644
index 800b818e2..000000000
--- a/packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-export const relayerApiOrdersChannelUpdateSchema = {
- id: '/relayerApiOrdersChannelUpdateSchema',
- type: 'object',
- properties: {
- type: { enum: ['update'] },
- channel: { enum: ['orders'] },
- requestId: { type: 'string' },
- payload: { $ref: '/relayerApiOrdersSchema' },
- },
- required: ['type', 'channel', 'requestId'],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_orders_response_schema.json b/packages/json-schemas/schemas/relayer_api_orders_response_schema.json
new file mode 100644
index 000000000..a5023a3fc
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_orders_response_schema.json
@@ -0,0 +1,13 @@
+{
+ "id": "/relayerApiOrdersResponseSchema",
+ "type": "object",
+ "allOf": [
+ { "$ref": "/paginatedCollectionSchema" },
+ {
+ "properties": {
+ "records": { "$ref": "/relayerApiOrdersSchema" }
+ },
+ "required": ["records"]
+ }
+ ]
+}
diff --git a/packages/json-schemas/schemas/relayer_api_orders_response_schema.ts b/packages/json-schemas/schemas/relayer_api_orders_response_schema.ts
deleted file mode 100644
index c10d64ca9..000000000
--- a/packages/json-schemas/schemas/relayer_api_orders_response_schema.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-export const relayerApiOrdersResponseSchema = {
- id: '/relayerApiOrdersResponseSchema',
- type: 'object',
- allOf: [
- { $ref: '/paginatedCollectionSchema' },
- {
- properties: {
- records: { $ref: '/relayerApiOrdersSchema' },
- },
- required: ['records'],
- },
- ],
-};
diff --git a/packages/json-schemas/schemas/relayer_api_orders_schema.json b/packages/json-schemas/schemas/relayer_api_orders_schema.json
new file mode 100644
index 000000000..84e75cd04
--- /dev/null
+++ b/packages/json-schemas/schemas/relayer_api_orders_schema.json
@@ -0,0 +1,5 @@
+{
+ "id": "/relayerApiOrdersSchema",
+ "type": "array",
+ "items": { "$ref": "/relayerApiOrderSchema" }
+}
diff --git a/packages/json-schemas/schemas/relayer_api_orders_schema.ts b/packages/json-schemas/schemas/relayer_api_orders_schema.ts
deleted file mode 100644
index ba8ce4722..000000000
--- a/packages/json-schemas/schemas/relayer_api_orders_schema.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export const relayerApiOrdersSchema = {
- id: '/relayerApiOrdersSchema',
- type: 'array',
- items: { $ref: '/relayerApiOrderSchema' },
-};
diff --git a/packages/json-schemas/schemas/signed_order_schema.json b/packages/json-schemas/schemas/signed_order_schema.json
new file mode 100644
index 000000000..137ae4a24
--- /dev/null
+++ b/packages/json-schemas/schemas/signed_order_schema.json
@@ -0,0 +1,12 @@
+{
+ "id": "/signedOrderSchema",
+ "allOf": [
+ { "$ref": "/orderSchema" },
+ {
+ "properties": {
+ "signature": { "$ref": "/hexSchema" }
+ },
+ "required": ["signature"]
+ }
+ ]
+}
diff --git a/packages/json-schemas/schemas/signed_orders_schema.json b/packages/json-schemas/schemas/signed_orders_schema.json
new file mode 100644
index 000000000..e7c3a0b6c
--- /dev/null
+++ b/packages/json-schemas/schemas/signed_orders_schema.json
@@ -0,0 +1,5 @@
+{
+ "id": "/signedOrdersSchema",
+ "type": "array",
+ "items": { "$ref": "/signedOrderSchema" }
+}
diff --git a/packages/json-schemas/schemas/signed_orders_schema.ts b/packages/json-schemas/schemas/signed_orders_schema.ts
deleted file mode 100644
index e2a5aeb56..000000000
--- a/packages/json-schemas/schemas/signed_orders_schema.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export const signedOrdersSchema = {
- id: '/signedOrdersSchema',
- type: 'array',
- items: { $ref: '/signedOrderSchema' },
-};
diff --git a/packages/json-schemas/schemas/token_schema.json b/packages/json-schemas/schemas/token_schema.json
new file mode 100644
index 000000000..31e41c4b8
--- /dev/null
+++ b/packages/json-schemas/schemas/token_schema.json
@@ -0,0 +1,11 @@
+{
+ "id": "/tokenSchema",
+ "properties": {
+ "name": { "type": "string" },
+ "symbol": { "type": "string" },
+ "decimals": { "type": "number" },
+ "address": { "$ref": "/addressSchema" }
+ },
+ "required": ["name", "symbol", "decimals", "address"],
+ "type": "object"
+}
diff --git a/packages/json-schemas/schemas/token_schema.ts b/packages/json-schemas/schemas/token_schema.ts
deleted file mode 100644
index a0b1ae27f..000000000
--- a/packages/json-schemas/schemas/token_schema.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-export const tokenSchema = {
- id: '/tokenSchema',
- properties: {
- name: { type: 'string' },
- symbol: { type: 'string' },
- decimals: { type: 'number' },
- address: { $ref: '/addressSchema' },
- },
- required: ['name', 'symbol', 'decimals', 'address'],
- type: 'object',
-};
diff --git a/packages/json-schemas/schemas/tx_data_schema.json b/packages/json-schemas/schemas/tx_data_schema.json
new file mode 100644
index 000000000..4643521ce
--- /dev/null
+++ b/packages/json-schemas/schemas/tx_data_schema.json
@@ -0,0 +1,26 @@
+{
+ "id": "/txDataSchema",
+ "properties": {
+ "from": { "$ref": "/addressSchema" },
+ "to": { "$ref": "/addressSchema" },
+ "value": {
+ "oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/jsNumber" }]
+ },
+ "gas": {
+ "oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/jsNumber" }]
+ },
+ "gasPrice": {
+ "oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/jsNumber" }]
+ },
+ "data": {
+ "type": "string",
+ "pattern": "^0x[0-9a-f]*$"
+ },
+ "nonce": {
+ "type": "number",
+ "minimum": 0
+ }
+ },
+ "required": ["from"],
+ "type": "object"
+}
diff --git a/packages/json-schemas/schemas/tx_data_schema.ts b/packages/json-schemas/schemas/tx_data_schema.ts
deleted file mode 100644
index c57e18461..000000000
--- a/packages/json-schemas/schemas/tx_data_schema.ts
+++ /dev/null
@@ -1,32 +0,0 @@
-export const jsNumber = {
- id: '/jsNumber',
- type: 'number',
- minimum: 0,
-};
-
-export const txDataSchema = {
- id: '/txDataSchema',
- properties: {
- from: { $ref: '/addressSchema' },
- to: { $ref: '/addressSchema' },
- value: {
- oneOf: [{ $ref: '/numberSchema' }, { $ref: '/jsNumber' }],
- },
- gas: {
- oneOf: [{ $ref: '/numberSchema' }, { $ref: '/jsNumber' }],
- },
- gasPrice: {
- oneOf: [{ $ref: '/numberSchema' }, { $ref: '/jsNumber' }],
- },
- data: {
- type: 'string',
- pattern: '^0x[0-9a-f]*$',
- },
- nonce: {
- type: 'number',
- minimum: 0,
- },
- },
- required: ['from'],
- type: 'object',
-};
diff --git a/packages/json-schemas/schemas/zero_ex_transaction_schema.json b/packages/json-schemas/schemas/zero_ex_transaction_schema.json
new file mode 100644
index 000000000..ad3b11583
--- /dev/null
+++ b/packages/json-schemas/schemas/zero_ex_transaction_schema.json
@@ -0,0 +1,10 @@
+{
+ "id": "/zeroExTransactionSchema",
+ "properties": {
+ "data": { "$ref": "/hexSchema" },
+ "signerAddress": { "$ref": "/addressSchema" },
+ "salt": { "$ref": "/numberSchema" }
+ },
+ "required": ["data", "salt", "signerAddress"],
+ "type": "object"
+}
diff --git a/packages/json-schemas/schemas/zero_ex_transaction_schema.ts b/packages/json-schemas/schemas/zero_ex_transaction_schema.ts
deleted file mode 100644
index 7f729b724..000000000
--- a/packages/json-schemas/schemas/zero_ex_transaction_schema.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-export const zeroExTransactionSchema = {
- id: '/zeroExTransactionSchema',
- properties: {
- data: { $ref: '/hexSchema' },
- signerAddress: { $ref: '/addressSchema' },
- salt: { $ref: '/numberSchema' },
- },
- required: ['data', 'salt', 'signerAddress'],
- type: 'object',
-};
diff --git a/packages/json-schemas/src/globals.d.ts b/packages/json-schemas/src/globals.d.ts
deleted file mode 100644
index 94e63a32d..000000000
--- a/packages/json-schemas/src/globals.d.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-declare module '*.json' {
- const json: any;
- /* tslint:disable */
- export default json;
- /* tslint:enable */
-}
diff --git a/packages/json-schemas/src/schemas.ts b/packages/json-schemas/src/schemas.ts
index 4eb96092d..8318df617 100644
--- a/packages/json-schemas/src/schemas.ts
+++ b/packages/json-schemas/src/schemas.ts
@@ -1,38 +1,40 @@
-import { addressSchema, hexSchema, numberSchema } from '../schemas/basic_type_schemas';
-import { blockParamSchema, blockRangeSchema } from '../schemas/block_range_schema';
-import { callDataSchema } from '../schemas/call_data_schema';
-import { ecSignatureParameterSchema, ecSignatureSchema } from '../schemas/ec_signature_schema';
-import { eip712TypedDataSchema } from '../schemas/eip712_typed_data';
-import { indexFilterValuesSchema } from '../schemas/index_filter_values_schema';
-import { orderCancellationRequestsSchema } from '../schemas/order_cancel_schema';
-import { orderFillOrKillRequestsSchema } from '../schemas/order_fill_or_kill_requests_schema';
-import { orderFillRequestsSchema } from '../schemas/order_fill_requests_schema';
-import { orderHashSchema } from '../schemas/order_hash_schema';
-import { orderSchema, signedOrderSchema } from '../schemas/order_schemas';
-import { ordersSchema } from '../schemas/orders_schema';
-import { paginatedCollectionSchema } from '../schemas/paginated_collection_schema';
-import {
- relayerApiAssetDataPairsResponseSchema,
- relayerApiAssetDataPairsSchema,
- relayerApiAssetDataTradeInfoSchema,
-} from '../schemas/relayer_api_asset_pairs_response_schema';
-import { relayerApiErrorResponseSchema } from '../schemas/relayer_api_error_response_schema';
-import { relayerApiFeeRecipientsResponseSchema } from '../schemas/relayer_api_fee_recipients_response_schema';
-import { relayerApiOrderConfigPayloadSchema } from '../schemas/relayer_api_order_config_payload_schema';
-import { relayerApiOrderConfigResponseSchema } from '../schemas/relayer_api_order_config_response_schema';
-import { relayerApiOrderSchema } from '../schemas/relayer_api_order_schema';
-import { relayerApiOrderbookResponseSchema } from '../schemas/relayer_api_orderbook_response_schema';
-import {
- relayerApiOrdersChannelSubscribePayload,
- relayerApiOrdersChannelSubscribeSchema,
-} from '../schemas/relayer_api_orders_channel_subscribe_schema';
-import { relayerApiOrdersChannelUpdateSchema } from '../schemas/relayer_api_orders_channel_update_response_schema';
-import { relayerApiOrdersResponseSchema } from '../schemas/relayer_api_orders_response_schema';
-import { relayerApiOrdersSchema } from '../schemas/relayer_api_orders_schema';
-import { signedOrdersSchema } from '../schemas/signed_orders_schema';
-import { tokenSchema } from '../schemas/token_schema';
-import { jsNumber, txDataSchema } from '../schemas/tx_data_schema';
-import { zeroExTransactionSchema } from '../schemas/zero_ex_transaction_schema';
+import * as addressSchema from '../schemas/address_schema.json';
+import * as blockParamSchema from '../schemas/block_param_schema.json';
+import * as blockRangeSchema from '../schemas/block_range_schema.json';
+import * as callDataSchema from '../schemas/call_data_schema.json';
+import * as ecSignatureParameterSchema from '../schemas/ec_signature_parameter_schema.json';
+import * as ecSignatureSchema from '../schemas/ec_signature_schema.json';
+import * as eip712TypedDataSchema from '../schemas/eip712_typed_data_schema.json';
+import * as hexSchema from '../schemas/hex_schema.json';
+import * as indexFilterValuesSchema from '../schemas/index_filter_values_schema.json';
+import * as jsNumber from '../schemas/js_number.json';
+import * as numberSchema from '../schemas/number_schema.json';
+import * as orderCancellationRequestsSchema from '../schemas/order_cancel_schema.json';
+import * as orderFillOrKillRequestsSchema from '../schemas/order_fill_or_kill_requests_schema.json';
+import * as orderFillRequestsSchema from '../schemas/order_fill_requests_schema.json';
+import * as orderHashSchema from '../schemas/order_hash_schema.json';
+import * as orderSchema from '../schemas/order_schema.json';
+import * as ordersSchema from '../schemas/orders_schema.json';
+import * as paginatedCollectionSchema from '../schemas/paginated_collection_schema.json';
+import * as relayerApiAssetDataPairsResponseSchema from '../schemas/relayer_api_asset_data_pairs_response_schema.json';
+import * as relayerApiAssetDataPairsSchema from '../schemas/relayer_api_asset_data_pairs_schema.json';
+import * as relayerApiAssetDataTradeInfoSchema from '../schemas/relayer_api_asset_data_trade_info_schema.json';
+import * as relayerApiErrorResponseSchema from '../schemas/relayer_api_error_response_schema.json';
+import * as relayerApiFeeRecipientsResponseSchema from '../schemas/relayer_api_fee_recipients_response_schema.json';
+import * as relayerApiOrderConfigPayloadSchema from '../schemas/relayer_api_order_config_payload_schema.json';
+import * as relayerApiOrderConfigResponseSchema from '../schemas/relayer_api_order_config_response_schema.json';
+import * as relayerApiOrderSchema from '../schemas/relayer_api_order_schema.json';
+import * as relayerApiOrderbookResponseSchema from '../schemas/relayer_api_orderbook_response_schema.json';
+import * as relayerApiOrdersChannelSubscribePayloadSchema from '../schemas/relayer_api_orders_channel_subscribe_payload_schema.json';
+import * as relayerApiOrdersChannelSubscribeSchema from '../schemas/relayer_api_orders_channel_subscribe_schema.json';
+import * as relayerApiOrdersChannelUpdateSchema from '../schemas/relayer_api_orders_channel_update_response_schema.json';
+import * as relayerApiOrdersResponseSchema from '../schemas/relayer_api_orders_response_schema.json';
+import * as relayerApiOrdersSchema from '../schemas/relayer_api_orders_schema.json';
+import * as signedOrderSchema from '../schemas/signed_order_schema.json';
+import * as signedOrdersSchema from '../schemas/signed_orders_schema.json';
+import * as tokenSchema from '../schemas/token_schema.json';
+import * as txDataSchema from '../schemas/tx_data_schema.json';
+import * as zeroExTransactionSchema from '../schemas/zero_ex_transaction_schema.json';
export const schemas = {
numberSchema,
@@ -67,7 +69,7 @@ export const schemas = {
relayerApiAssetDataPairsResponseSchema,
relayerApiAssetDataTradeInfoSchema,
relayerApiOrdersChannelSubscribeSchema,
- relayerApiOrdersChannelSubscribePayload,
+ relayerApiOrdersChannelSubscribePayloadSchema,
relayerApiOrdersChannelUpdateSchema,
relayerApiOrdersResponseSchema,
relayerApiAssetDataPairsSchema,
diff --git a/packages/json-schemas/tsconfig.json b/packages/json-schemas/tsconfig.json
index 96bf8789e..425dfcfe1 100644
--- a/packages/json-schemas/tsconfig.json
+++ b/packages/json-schemas/tsconfig.json
@@ -2,7 +2,47 @@
"extends": "../../tsconfig",
"compilerOptions": {
"outDir": "lib",
- "rootDir": "."
+ "rootDir": ".",
+ "resolveJsonModule": true
},
- "include": ["./src/**/*", "./test/**/*", "./schemas/**/*"]
+ "include": ["./src/**/*", "./test/**/*"],
+ "files": [
+ "./schemas/address_schema.json",
+ "./schemas/number_schema.json",
+ "./schemas/hex_schema.json",
+ "./schemas/block_param_schema.json",
+ "./schemas/block_range_schema.json",
+ "./schemas/call_data_schema.json",
+ "./schemas/ec_signature_parameter_schema.json",
+ "./schemas/ec_signature_schema.json",
+ "./schemas/eip712_typed_data_schema.json",
+ "./schemas/order_cancel_schema.json",
+ "./schemas/order_fill_or_kill_requests_schema.json",
+ "./schemas/order_fill_requests_schema.json",
+ "./schemas/order_hash_schema.json",
+ "./schemas/order_schema.json",
+ "./schemas/signed_order_schema.json",
+ "./schemas/orders_schema.json",
+ "./schemas/paginated_collection_schema.json",
+ "./schemas/relayer_api_asset_data_pairs_response_schema.json",
+ "./schemas/relayer_api_asset_data_pairs_schema.json",
+ "./schemas/relayer_api_asset_data_trade_info_schema.json",
+ "./schemas/relayer_api_error_response_schema.json",
+ "./schemas/relayer_api_fee_recipients_response_schema.json",
+ "./schemas/relayer_api_order_config_payload_schema.json",
+ "./schemas/relayer_api_order_config_response_schema.json",
+ "./schemas/relayer_api_order_schema.json",
+ "./schemas/relayer_api_orderbook_response_schema.json",
+ "./schemas/relayer_api_orders_channel_subscribe_payload_schema.json",
+ "./schemas/relayer_api_orders_channel_subscribe_schema.json",
+ "./schemas/relayer_api_orders_channel_update_response_schema.json",
+ "./schemas/relayer_api_orders_response_schema.json",
+ "./schemas/relayer_api_orders_schema.json",
+ "./schemas/signed_orders_schema.json",
+ "./schemas/token_schema.json",
+ "./schemas/js_number.json",
+ "./schemas/zero_ex_transaction_schema.json",
+ "./schemas/tx_data_schema.json",
+ "./schemas/index_filter_values_schema.json"
+ ]
}
diff --git a/packages/monorepo-scripts/package.json b/packages/monorepo-scripts/package.json
index 83091ae84..57e8bc147 100644
--- a/packages/monorepo-scripts/package.json
+++ b/packages/monorepo-scripts/package.json
@@ -65,7 +65,7 @@
"semver": "5.5.0",
"semver-diff": "^2.1.0",
"semver-sort": "0.0.4",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"yargs": "^10.0.3"
},
"publishConfig": {
diff --git a/packages/order-utils/package.json b/packages/order-utils/package.json
index 50bc0f0a0..09eef849f 100644
--- a/packages/order-utils/package.json
+++ b/packages/order-utils/package.json
@@ -49,7 +49,7 @@
"shx": "^0.2.2",
"sinon": "^4.0.0",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1"
},
"dependencies": {
diff --git a/packages/sol-compiler/package.json b/packages/sol-compiler/package.json
index 9ee88a5ef..828ce1dbc 100644
--- a/packages/sol-compiler/package.json
+++ b/packages/sol-compiler/package.json
@@ -58,7 +58,7 @@
"nyc": "^11.0.1",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"types-bn": "^0.0.1",
"typescript": "3.0.1",
"web3-typescript-typings": "^0.10.2",
diff --git a/packages/sol-compiler/src/utils/encoder.ts b/packages/sol-compiler/src/utils/encoder.ts
index 0f2d75691..40b103fd5 100644
--- a/packages/sol-compiler/src/utils/encoder.ts
+++ b/packages/sol-compiler/src/utils/encoder.ts
@@ -1,4 +1,4 @@
-import { AbiDefinition, AbiType, ContractAbi, DataItem } from 'ethereum-types';
+import { AbiDefinition, AbiType, ConstructorAbi, ContractAbi, DataItem } from 'ethereum-types';
import * as _ from 'lodash';
import * as web3Abi from 'web3-eth-abi';
@@ -7,7 +7,9 @@ export const encoder = {
const constructorTypes: string[] = [];
_.each(abi, (element: AbiDefinition) => {
if (element.type === AbiType.Constructor) {
- _.each(element.inputs, (input: DataItem) => {
+ // tslint:disable-next-line:no-unnecessary-type-assertion
+ const constuctorAbi = element as ConstructorAbi;
+ _.each(constuctorAbi.inputs, (input: DataItem) => {
constructorTypes.push(input.type);
});
}
diff --git a/packages/sol-cov/package.json b/packages/sol-cov/package.json
index e093aa2ad..49473f6c8 100644
--- a/packages/sol-cov/package.json
+++ b/packages/sol-cov/package.json
@@ -78,7 +78,7 @@
"shx": "^0.2.2",
"sinon": "^4.0.0",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1"
},
"publishConfig": {
diff --git a/packages/sol-doc/src/sol_doc.ts b/packages/sol-doc/src/sol_doc.ts
index 138882c92..686e9ca34 100644
--- a/packages/sol-doc/src/sol_doc.ts
+++ b/packages/sol-doc/src/sol_doc.ts
@@ -324,19 +324,25 @@ export class SolDoc {
switch (abiDefinition.type) {
case 'constructor':
docSection.constructors.push(
- this._genConstructorDoc(contractName, abiDefinition, compiledContract.devdoc),
+ // tslint:disable-next-line:no-unnecessary-type-assertion
+ this._genConstructorDoc(contractName, abiDefinition as ConstructorAbi, compiledContract.devdoc),
);
break;
case 'event':
- (docSection.events as Event[]).push(SolDoc._genEventDoc(abiDefinition));
+ // tslint:disable-next-line:no-unnecessary-type-assertion
+ (docSection.events as Event[]).push(SolDoc._genEventDoc(abiDefinition as EventAbi));
// note that we're not sending devdoc to this._genEventDoc().
// that's because the type of the events array doesn't have any fields for documentation!
break;
case 'function':
- docSection.methods.push(this._genMethodDoc(abiDefinition, compiledContract.devdoc));
+ // tslint:disable-next-line:no-unnecessary-type-assertion
+ docSection.methods.push(this._genMethodDoc(abiDefinition as MethodAbi, compiledContract.devdoc));
break;
case 'fallback':
- docSection.methods.push(SolDoc._genFallbackDoc(abiDefinition, compiledContract.devdoc));
+ // tslint:disable-next-line:no-unnecessary-type-assertion
+ docSection.methods.push(
+ SolDoc._genFallbackDoc(abiDefinition as FallbackAbi, compiledContract.devdoc),
+ );
break;
default:
throw new Error(
diff --git a/packages/sra-spec/src/json-schemas.ts b/packages/sra-spec/src/json-schemas.ts
index 173a04bfb..47cca9b04 100644
--- a/packages/sra-spec/src/json-schemas.ts
+++ b/packages/sra-spec/src/json-schemas.ts
@@ -21,7 +21,7 @@ const {
relayerApiAssetDataPairsResponseSchema,
relayerApiAssetDataTradeInfoSchema,
relayerApiOrdersChannelSubscribeSchema,
- relayerApiOrdersChannelSubscribePayload,
+ relayerApiOrdersChannelSubscribePayloadSchema,
relayerApiOrdersChannelUpdateSchema,
relayerApiOrdersResponseSchema,
relayerApiAssetDataPairsSchema,
@@ -47,7 +47,7 @@ const usedSchemas = {
relayerApiAssetDataPairsResponseSchema,
relayerApiAssetDataTradeInfoSchema,
relayerApiOrdersChannelSubscribeSchema,
- relayerApiOrdersChannelSubscribePayload,
+ relayerApiOrdersChannelSubscribePayloadSchema,
relayerApiOrdersChannelUpdateSchema,
relayerApiOrdersResponseSchema,
relayerApiAssetDataPairsSchema,
diff --git a/packages/subproviders/package.json b/packages/subproviders/package.json
index bef93a572..1fe1ee4ad 100644
--- a/packages/subproviders/package.json
+++ b/packages/subproviders/package.json
@@ -73,7 +73,7 @@
"shx": "^0.2.2",
"sinon": "^4.0.0",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1",
"webpack": "^4.20.2"
},
diff --git a/packages/utils/src/abi_decoder.ts b/packages/utils/src/abi_decoder.ts
index ac3e54efb..c0b2c7950 100644
--- a/packages/utils/src/abi_decoder.ts
+++ b/packages/utils/src/abi_decoder.ts
@@ -99,11 +99,13 @@ export class AbiDecoder {
const ethersInterface = new ethers.utils.Interface(abiArray);
_.map(abiArray, (abi: AbiDefinition) => {
if (abi.type === AbiType.Event) {
- const topic = ethersInterface.events[abi.name].topic;
- const numIndexedArgs = _.reduce(abi.inputs, (sum, input) => (input.indexed ? sum + 1 : sum), 0);
+ // tslint:disable-next-line:no-unnecessary-type-assertion
+ const eventAbi = abi as EventAbi;
+ const topic = ethersInterface.events[eventAbi.name].topic;
+ const numIndexedArgs = _.reduce(eventAbi.inputs, (sum, input) => (input.indexed ? sum + 1 : sum), 0);
this._methodIds[topic] = {
...this._methodIds[topic],
- [numIndexedArgs]: abi,
+ [numIndexedArgs]: eventAbi,
};
}
});
diff --git a/packages/web3-wrapper/package.json b/packages/web3-wrapper/package.json
index 972dfa7a2..4d033e130 100644
--- a/packages/web3-wrapper/package.json
+++ b/packages/web3-wrapper/package.json
@@ -49,7 +49,7 @@
"nyc": "^11.0.1",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typedoc": "0.12.0",
+ "typedoc": "0.13.0",
"typescript": "3.0.1"
},
"dependencies": {
diff --git a/packages/website/md/docs/json_schemas/2.0.0/schemas.md b/packages/website/md/docs/json_schemas/2.0.0/schemas.md
index 4f3200b1c..ec7cf6f15 100644
--- a/packages/website/md/docs/json_schemas/2.0.0/schemas.md
+++ b/packages/website/md/docs/json_schemas/2.0.0/schemas.md
@@ -1,28 +1,40 @@
+Basic Schemas
+
+* [Address type](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/address.json)
+* [Number type](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/number.json)
+* [Hex type](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/hex.json)
+* [JS number](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/js_number.json)
+
0x Protocol Schemas
-* [Basic types](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/basic_type_schemas.ts) (e.g Ethereum address, number, hex)
-* [Order/SignedOrder](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_schemas.ts)
-* [OrderHash](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_hash_schema.ts)
+* [Order](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_schema.json)
+* [SignedOrder](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/signed_order_schema.json)
+* [OrderHash](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_hash_schema.json)
+* [ECSignature](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/ec_signature_schema.json)
0x.js Schemas
-* [BlockRange](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/block_range_schema.ts)
-* [IndexFilter Values](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/index_filter_values_schema.ts)
-* [OrderFillRequests](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_fill_requests_schema.ts)
-* [OrderCancellationRequests](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_cancel_schema.ts)
-* [OrderFillOrKillRequests](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_fill_or_kill_requests_schema.ts)
-* [SignedOrders](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/signed_orders_schema.ts)
-* [Token](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/token_schema.ts)
-* [TxData](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/tx_data_schema.ts)
+* [BlockParam](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/block_param_schema.json)
+* [BlockRange](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/block_range_schema.json)
+* [IndexFilter Values](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/index_filter_values_schema.json)
+* [OrderFillRequests](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_fill_requests_schema.json)
+* [OrderCancellationRequests](https://github.com/0xProjet/0x-monorepo/blob/development/packages/json-schemas/schemas/order_cancel_schema.json)
+* [OrderFillOrKillRequests](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/order_fill_or_kill_requests_schema.json)
+* [SignedOrders](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/signed_orders_schema.json)
+* [Token](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/token_schema.json)
+* [TxData](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/tx_data_schema.json)
Standard Relayer API Schemas
-* [Paginated collection](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/paginated_collection_schema.ts)
-* [Error response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_error_response_schema.ts)
-* [Order config payload](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_order_config_payload_schema.ts)
-* [Order config response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_order_config_response_schema.ts)
-* [Orders channel subscribe](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.ts)
-* [Orders channel update](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.ts)
-* [Orderbook response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_orderbook_response_schema.ts)
-* [Asset pairs response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_asset_pairs_response_schema.ts)
-* [Fee recipients response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.ts)
+* [Paginated collection](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/paginated_collection_schema.json)
+* [Error response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_error_response_schema.json)
+* [Order config payload](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_order_config_payload_schema.json)
+* [Order config response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_order_config_response_schema.json)
+* [Orders channel subscribe payload](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_payload_schema.json)
+* [Orders channel subscribe](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.json)
+* [Orders channel update](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.json)
+* [Orderbook response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_orderbook_response_schema.json)
+* [Asset pairs](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_asset_pairs_schema.json)
+* [Trade info](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_asset_trade_info_schema.json)
+* [Asset pairs response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_asset_pairs_response_schema.json)
+* [Fee recipients response](https://github.com/0xProject/0x-monorepo/blob/development/packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.json)
diff --git a/typedoc-tsconfig.json b/typedoc-tsconfig.json
index 588285140..32efdb4cf 100644
--- a/typedoc-tsconfig.json
+++ b/typedoc-tsconfig.json
@@ -8,6 +8,7 @@
"experimentalDecorators": true,
"downlevelIteration": true,
"noImplicitReturns": true,
+ "resolveJsonModule": true,
"pretty": true,
"skipLibCheck": true,
"typeRoots": ["node_modules/@0xproject/typescript-typings/types", "node_modules/@types"],
diff --git a/yarn.lock b/yarn.lock
index 661d4b475..b4f48b8ac 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6410,7 +6410,7 @@ ganache-core@0xProject/ganache-core#monorepo-dep:
ethereumjs-tx "0xProject/ethereumjs-tx#fake-tx-include-signature-by-default"
ethereumjs-util "^5.2.0"
ethereumjs-vm "2.3.5"
- ethereumjs-wallet "~0.6.0"
+ ethereumjs-wallet "0.6.0"
fake-merkle-patricia-tree "~1.0.1"
heap "~0.2.6"
js-scrypt "^0.2.0"
@@ -14877,9 +14877,9 @@ typedoc-default-themes@^0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/typedoc-default-themes/-/typedoc-default-themes-0.5.0.tgz#6dc2433e78ed8bea8e887a3acde2f31785bd6227"
-typedoc@0.12.0:
- version "0.12.0"
- resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.12.0.tgz#c5d606f52af29d841658e18d9faa1a72acf0e270"
+typedoc@0.13.0:
+ version "0.13.0"
+ resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.13.0.tgz#9efdf352bd54873955cd161bd4b75f24a8c59dde"
dependencies:
"@types/fs-extra" "^5.0.3"
"@types/handlebars" "^4.0.38"
@@ -14897,7 +14897,7 @@ typedoc@0.12.0:
progress "^2.0.0"
shelljs "^0.8.2"
typedoc-default-themes "^0.5.0"
- typescript "3.0.x"
+ typescript "3.1.x"
types-bn@^0.0.1:
version "0.0.1"
@@ -14905,10 +14905,14 @@ types-bn@^0.0.1:
dependencies:
bn.js "4.11.7"
-typescript@3.0.1, typescript@3.0.x:
+typescript@3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.0.1.tgz#43738f29585d3a87575520a4b93ab6026ef11fdb"
+typescript@3.1.x:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.1.3.tgz#01b70247a6d3c2467f70c45795ef5ea18ce191d5"
+
typewise-core@^1.2, typewise-core@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/typewise-core/-/typewise-core-1.2.0.tgz#97eb91805c7f55d2f941748fa50d315d991ef195"