aboutsummaryrefslogtreecommitdiffstats
path: root/src/schemas/order_schemas.ts
diff options
context:
space:
mode:
authorFabio Berger <me@fabioberger.com>2017-06-02 00:14:17 +0800
committerFabio Berger <me@fabioberger.com>2017-06-02 00:14:17 +0800
commitacb8a6c55ee2c97db5d738621929feea759465b3 (patch)
tree57cfa925d645cb11bb1731381be56d0f66f8f0f1 /src/schemas/order_schemas.ts
parentecf92a4ad786a324d4c8ce9dba926f377766a144 (diff)
parent389c18e98e2b5663b1732d7c34f9b21afef66e44 (diff)
downloaddexon-0x-contracts-acb8a6c55ee2c97db5d738621929feea759465b3.tar.gz
dexon-0x-contracts-acb8a6c55ee2c97db5d738621929feea759465b3.tar.zst
dexon-0x-contracts-acb8a6c55ee2c97db5d738621929feea759465b3.zip
Merge branch 'fillOrderAsync' into unavailableFilledCancelled
# Conflicts: # src/contract_wrappers/exchange_wrapper.ts # src/types.ts # src/utils/assert.ts
Diffstat (limited to 'src/schemas/order_schemas.ts')
-rw-r--r--src/schemas/order_schemas.ts50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/schemas/order_schemas.ts b/src/schemas/order_schemas.ts
new file mode 100644
index 000000000..72012dc26
--- /dev/null
+++ b/src/schemas/order_schemas.ts
@@ -0,0 +1,50 @@
+export const addressSchema = {
+ id: '/addressSchema',
+ type: 'string',
+ pattern: '^0[xX][0-9A-Fa-f]{40}$',
+};
+
+export const numberSchema = {
+ id: '/numberSchema',
+ type: 'string',
+ format: '\d+(\.\d+)?',
+};
+
+export const orderSchema = {
+ id: '/orderSchema',
+ properties: {
+ maker: {$ref: '/addressSchema'},
+ taker: {$ref: '/addressSchema'},
+
+ makerFee: {$ref: '/numberSchema'},
+ takerFee: {$ref: '/numberSchema'},
+
+ makerTokenAmount: {$ref: '/numberSchema'},
+ takerTokenAmount: {$ref: '/numberSchema'},
+
+ makerTokenAddress: {$ref: '/addressSchema'},
+ takerTokenAddress: {$ref: '/addressSchema'},
+
+ salt: {$ref: '/numberSchema'},
+ feeRecipient: {$ref: '/addressSchema'},
+ expirationUnixTimestampSec: {$ref: '/numberSchema'},
+ },
+ required: [
+ 'maker', 'taker', 'makerFee', 'takerFee', 'makerTokenAmount', 'takerTokenAmount',
+ 'salt', 'feeRecipient', 'expirationUnixTimestampSec',
+ ],
+ type: 'object',
+};
+
+export const signedOrderSchema = {
+ id: '/signedOrderSchema',
+ allOf: [
+ { $ref: '/orderSchema' },
+ {
+ properties: {
+ ecSignature: {$ref: '/ECSignature'},
+ },
+ required: ['ecSignature'],
+ },
+ ],
+};