1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
export const addressSchema = {
id: '/addressSchema',
type: 'string',
pattern: '^0[xX][0-9A-Fa-f]{40}$',
};
export const bigNumberSchema = {
id: '/bigNumberSchema',
type: 'string',
pattern: '^\d*$',
};
export const orderSchema = {
id: '/orderSchema',
properties: {
maker: {$ref: '/addressSchema'},
taker: {$ref: '/addressSchema'},
makerFee: {$ref: '/bigNumberSchema'},
takerFee: {$ref: '/bigNumberSchema'},
makerTokenAmount: {$ref: '/bigNumberSchema'},
takerTokenAmount: {$ref: '/bigNumberSchema'},
makerTokenAddress: {$ref: '/addressSchema'},
takerTokenAddress: {$ref: '/addressSchema'},
salt: {$ref: '/bigNumberSchema'},
fillAmount: {$ref: '/bigNumberSchema'},
feeRecipient: {$ref: '/addressSchema'},
expirationUnixTimestampSec: {$ref: '/bigNumberSchema'},
},
required: [
'maker', /*'taker',*/ 'makerFee', 'takerFee', 'makerTokenAmount', 'takerTokenAmount',
'salt', 'fillAmount', 'feeRecipient', 'expirationUnixTimestampSec',
],
type: 'object',
};
export const signedOrderSchema = {
allOf: [
{ $ref: '/orderSchema' },
{
properties: {
ecSignature: {$ref: '/addressSchema'},
},
required: ['ecSignature'],
},
],
};
|