@allorc/a423-sdk 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/ESCROW.md +161 -0
- package/INTEGRATION.md +7 -1
- package/NOTICE +24 -0
- package/README.md +6 -0
- package/SECURITY.md +5 -0
- package/contracts/A423Escrow.sol +131 -0
- package/package.json +36 -4
- package/src/escrow/artifact.json +661 -0
- package/src/escrow/index.cjs +137 -0
- package/src/escrow/index.d.mts +36 -0
- package/src/escrow/index.d.ts +36 -0
- package/src/escrow/index.mjs +2 -0
|
@@ -0,0 +1,661 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compiler": "0.8.30+commit.73712a01.Emscripten.clang",
|
|
3
|
+
"abi": [
|
|
4
|
+
{
|
|
5
|
+
"inputs": [
|
|
6
|
+
{
|
|
7
|
+
"internalType": "address",
|
|
8
|
+
"name": "token_",
|
|
9
|
+
"type": "address"
|
|
10
|
+
}
|
|
11
|
+
],
|
|
12
|
+
"stateMutability": "nonpayable",
|
|
13
|
+
"type": "constructor"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"inputs": [],
|
|
17
|
+
"name": "Deadline",
|
|
18
|
+
"type": "error"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"inputs": [],
|
|
22
|
+
"name": "ECDSAInvalidSignature",
|
|
23
|
+
"type": "error"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"inputs": [
|
|
27
|
+
{
|
|
28
|
+
"internalType": "uint256",
|
|
29
|
+
"name": "length",
|
|
30
|
+
"type": "uint256"
|
|
31
|
+
}
|
|
32
|
+
],
|
|
33
|
+
"name": "ECDSAInvalidSignatureLength",
|
|
34
|
+
"type": "error"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"inputs": [
|
|
38
|
+
{
|
|
39
|
+
"internalType": "bytes32",
|
|
40
|
+
"name": "s",
|
|
41
|
+
"type": "bytes32"
|
|
42
|
+
}
|
|
43
|
+
],
|
|
44
|
+
"name": "ECDSAInvalidSignatureS",
|
|
45
|
+
"type": "error"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"inputs": [],
|
|
49
|
+
"name": "InvalidShortString",
|
|
50
|
+
"type": "error"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"inputs": [],
|
|
54
|
+
"name": "InvalidTerms",
|
|
55
|
+
"type": "error"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"inputs": [],
|
|
59
|
+
"name": "ReentrancyGuardReentrantCall",
|
|
60
|
+
"type": "error"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"inputs": [
|
|
64
|
+
{
|
|
65
|
+
"internalType": "address",
|
|
66
|
+
"name": "token",
|
|
67
|
+
"type": "address"
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"name": "SafeERC20FailedOperation",
|
|
71
|
+
"type": "error"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"inputs": [
|
|
75
|
+
{
|
|
76
|
+
"internalType": "string",
|
|
77
|
+
"name": "str",
|
|
78
|
+
"type": "string"
|
|
79
|
+
}
|
|
80
|
+
],
|
|
81
|
+
"name": "StringTooLong",
|
|
82
|
+
"type": "error"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"inputs": [],
|
|
86
|
+
"name": "TokenAmountMismatch",
|
|
87
|
+
"type": "error"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"inputs": [],
|
|
91
|
+
"name": "Unauthorized",
|
|
92
|
+
"type": "error"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"inputs": [],
|
|
96
|
+
"name": "WrongState",
|
|
97
|
+
"type": "error"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"anonymous": false,
|
|
101
|
+
"inputs": [
|
|
102
|
+
{
|
|
103
|
+
"indexed": true,
|
|
104
|
+
"internalType": "bytes32",
|
|
105
|
+
"name": "jobId",
|
|
106
|
+
"type": "bytes32"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"indexed": false,
|
|
110
|
+
"internalType": "bytes32",
|
|
111
|
+
"name": "reasonHash",
|
|
112
|
+
"type": "bytes32"
|
|
113
|
+
}
|
|
114
|
+
],
|
|
115
|
+
"name": "Disputed",
|
|
116
|
+
"type": "event"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"anonymous": false,
|
|
120
|
+
"inputs": [],
|
|
121
|
+
"name": "EIP712DomainChanged",
|
|
122
|
+
"type": "event"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"anonymous": false,
|
|
126
|
+
"inputs": [
|
|
127
|
+
{
|
|
128
|
+
"indexed": true,
|
|
129
|
+
"internalType": "bytes32",
|
|
130
|
+
"name": "jobId",
|
|
131
|
+
"type": "bytes32"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"indexed": true,
|
|
135
|
+
"internalType": "bytes32",
|
|
136
|
+
"name": "agreementHash",
|
|
137
|
+
"type": "bytes32"
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"indexed": true,
|
|
141
|
+
"internalType": "address",
|
|
142
|
+
"name": "payer",
|
|
143
|
+
"type": "address"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"indexed": false,
|
|
147
|
+
"internalType": "address",
|
|
148
|
+
"name": "worker",
|
|
149
|
+
"type": "address"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"indexed": false,
|
|
153
|
+
"internalType": "uint256",
|
|
154
|
+
"name": "amount",
|
|
155
|
+
"type": "uint256"
|
|
156
|
+
}
|
|
157
|
+
],
|
|
158
|
+
"name": "Funded",
|
|
159
|
+
"type": "event"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"anonymous": false,
|
|
163
|
+
"inputs": [
|
|
164
|
+
{
|
|
165
|
+
"indexed": true,
|
|
166
|
+
"internalType": "bytes32",
|
|
167
|
+
"name": "jobId",
|
|
168
|
+
"type": "bytes32"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"indexed": false,
|
|
172
|
+
"internalType": "uint256",
|
|
173
|
+
"name": "workerAmount",
|
|
174
|
+
"type": "uint256"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"indexed": false,
|
|
178
|
+
"internalType": "uint256",
|
|
179
|
+
"name": "payerAmount",
|
|
180
|
+
"type": "uint256"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"indexed": false,
|
|
184
|
+
"internalType": "uint8",
|
|
185
|
+
"name": "reason",
|
|
186
|
+
"type": "uint8"
|
|
187
|
+
}
|
|
188
|
+
],
|
|
189
|
+
"name": "Settled",
|
|
190
|
+
"type": "event"
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
"anonymous": false,
|
|
194
|
+
"inputs": [
|
|
195
|
+
{
|
|
196
|
+
"indexed": true,
|
|
197
|
+
"internalType": "bytes32",
|
|
198
|
+
"name": "jobId",
|
|
199
|
+
"type": "bytes32"
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
"indexed": false,
|
|
203
|
+
"internalType": "bytes32",
|
|
204
|
+
"name": "resultHash",
|
|
205
|
+
"type": "bytes32"
|
|
206
|
+
}
|
|
207
|
+
],
|
|
208
|
+
"name": "Submitted",
|
|
209
|
+
"type": "event"
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"anonymous": false,
|
|
213
|
+
"inputs": [
|
|
214
|
+
{
|
|
215
|
+
"indexed": true,
|
|
216
|
+
"internalType": "bytes32",
|
|
217
|
+
"name": "jobId",
|
|
218
|
+
"type": "bytes32"
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
"indexed": false,
|
|
222
|
+
"internalType": "bytes32",
|
|
223
|
+
"name": "resultHash",
|
|
224
|
+
"type": "bytes32"
|
|
225
|
+
}
|
|
226
|
+
],
|
|
227
|
+
"name": "Verified",
|
|
228
|
+
"type": "event"
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
"inputs": [],
|
|
232
|
+
"name": "TERMS_TYPEHASH",
|
|
233
|
+
"outputs": [
|
|
234
|
+
{
|
|
235
|
+
"internalType": "bytes32",
|
|
236
|
+
"name": "",
|
|
237
|
+
"type": "bytes32"
|
|
238
|
+
}
|
|
239
|
+
],
|
|
240
|
+
"stateMutability": "view",
|
|
241
|
+
"type": "function"
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"inputs": [
|
|
245
|
+
{
|
|
246
|
+
"internalType": "bytes32",
|
|
247
|
+
"name": "id",
|
|
248
|
+
"type": "bytes32"
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
"internalType": "bytes32",
|
|
252
|
+
"name": "reasonHash",
|
|
253
|
+
"type": "bytes32"
|
|
254
|
+
}
|
|
255
|
+
],
|
|
256
|
+
"name": "dispute",
|
|
257
|
+
"outputs": [],
|
|
258
|
+
"stateMutability": "nonpayable",
|
|
259
|
+
"type": "function"
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
"inputs": [],
|
|
263
|
+
"name": "eip712Domain",
|
|
264
|
+
"outputs": [
|
|
265
|
+
{
|
|
266
|
+
"internalType": "bytes1",
|
|
267
|
+
"name": "fields",
|
|
268
|
+
"type": "bytes1"
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"internalType": "string",
|
|
272
|
+
"name": "name",
|
|
273
|
+
"type": "string"
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
"internalType": "string",
|
|
277
|
+
"name": "version",
|
|
278
|
+
"type": "string"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"internalType": "uint256",
|
|
282
|
+
"name": "chainId",
|
|
283
|
+
"type": "uint256"
|
|
284
|
+
},
|
|
285
|
+
{
|
|
286
|
+
"internalType": "address",
|
|
287
|
+
"name": "verifyingContract",
|
|
288
|
+
"type": "address"
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
"internalType": "bytes32",
|
|
292
|
+
"name": "salt",
|
|
293
|
+
"type": "bytes32"
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
"internalType": "uint256[]",
|
|
297
|
+
"name": "extensions",
|
|
298
|
+
"type": "uint256[]"
|
|
299
|
+
}
|
|
300
|
+
],
|
|
301
|
+
"stateMutability": "view",
|
|
302
|
+
"type": "function"
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
"inputs": [
|
|
306
|
+
{
|
|
307
|
+
"components": [
|
|
308
|
+
{
|
|
309
|
+
"internalType": "bytes32",
|
|
310
|
+
"name": "jobId",
|
|
311
|
+
"type": "bytes32"
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
"internalType": "address",
|
|
315
|
+
"name": "payer",
|
|
316
|
+
"type": "address"
|
|
317
|
+
},
|
|
318
|
+
{
|
|
319
|
+
"internalType": "address",
|
|
320
|
+
"name": "worker",
|
|
321
|
+
"type": "address"
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
"internalType": "address",
|
|
325
|
+
"name": "verifier",
|
|
326
|
+
"type": "address"
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"internalType": "address",
|
|
330
|
+
"name": "arbitrator",
|
|
331
|
+
"type": "address"
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
"internalType": "uint256",
|
|
335
|
+
"name": "amount",
|
|
336
|
+
"type": "uint256"
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
"internalType": "uint64",
|
|
340
|
+
"name": "workDeadline",
|
|
341
|
+
"type": "uint64"
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
"internalType": "uint64",
|
|
345
|
+
"name": "reviewDeadline",
|
|
346
|
+
"type": "uint64"
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
"internalType": "uint64",
|
|
350
|
+
"name": "resolutionDeadline",
|
|
351
|
+
"type": "uint64"
|
|
352
|
+
},
|
|
353
|
+
{
|
|
354
|
+
"internalType": "uint16",
|
|
355
|
+
"name": "timeoutWorkerBps",
|
|
356
|
+
"type": "uint16"
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
"internalType": "bytes32",
|
|
360
|
+
"name": "agreementHash",
|
|
361
|
+
"type": "bytes32"
|
|
362
|
+
}
|
|
363
|
+
],
|
|
364
|
+
"internalType": "struct A423Escrow.Terms",
|
|
365
|
+
"name": "t",
|
|
366
|
+
"type": "tuple"
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
"internalType": "bytes",
|
|
370
|
+
"name": "workerSignature",
|
|
371
|
+
"type": "bytes"
|
|
372
|
+
}
|
|
373
|
+
],
|
|
374
|
+
"name": "fund",
|
|
375
|
+
"outputs": [],
|
|
376
|
+
"stateMutability": "nonpayable",
|
|
377
|
+
"type": "function"
|
|
378
|
+
},
|
|
379
|
+
{
|
|
380
|
+
"inputs": [
|
|
381
|
+
{
|
|
382
|
+
"internalType": "bytes32",
|
|
383
|
+
"name": "id",
|
|
384
|
+
"type": "bytes32"
|
|
385
|
+
}
|
|
386
|
+
],
|
|
387
|
+
"name": "getJob",
|
|
388
|
+
"outputs": [
|
|
389
|
+
{
|
|
390
|
+
"components": [
|
|
391
|
+
{
|
|
392
|
+
"components": [
|
|
393
|
+
{
|
|
394
|
+
"internalType": "bytes32",
|
|
395
|
+
"name": "jobId",
|
|
396
|
+
"type": "bytes32"
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
"internalType": "address",
|
|
400
|
+
"name": "payer",
|
|
401
|
+
"type": "address"
|
|
402
|
+
},
|
|
403
|
+
{
|
|
404
|
+
"internalType": "address",
|
|
405
|
+
"name": "worker",
|
|
406
|
+
"type": "address"
|
|
407
|
+
},
|
|
408
|
+
{
|
|
409
|
+
"internalType": "address",
|
|
410
|
+
"name": "verifier",
|
|
411
|
+
"type": "address"
|
|
412
|
+
},
|
|
413
|
+
{
|
|
414
|
+
"internalType": "address",
|
|
415
|
+
"name": "arbitrator",
|
|
416
|
+
"type": "address"
|
|
417
|
+
},
|
|
418
|
+
{
|
|
419
|
+
"internalType": "uint256",
|
|
420
|
+
"name": "amount",
|
|
421
|
+
"type": "uint256"
|
|
422
|
+
},
|
|
423
|
+
{
|
|
424
|
+
"internalType": "uint64",
|
|
425
|
+
"name": "workDeadline",
|
|
426
|
+
"type": "uint64"
|
|
427
|
+
},
|
|
428
|
+
{
|
|
429
|
+
"internalType": "uint64",
|
|
430
|
+
"name": "reviewDeadline",
|
|
431
|
+
"type": "uint64"
|
|
432
|
+
},
|
|
433
|
+
{
|
|
434
|
+
"internalType": "uint64",
|
|
435
|
+
"name": "resolutionDeadline",
|
|
436
|
+
"type": "uint64"
|
|
437
|
+
},
|
|
438
|
+
{
|
|
439
|
+
"internalType": "uint16",
|
|
440
|
+
"name": "timeoutWorkerBps",
|
|
441
|
+
"type": "uint16"
|
|
442
|
+
},
|
|
443
|
+
{
|
|
444
|
+
"internalType": "bytes32",
|
|
445
|
+
"name": "agreementHash",
|
|
446
|
+
"type": "bytes32"
|
|
447
|
+
}
|
|
448
|
+
],
|
|
449
|
+
"internalType": "struct A423Escrow.Terms",
|
|
450
|
+
"name": "terms",
|
|
451
|
+
"type": "tuple"
|
|
452
|
+
},
|
|
453
|
+
{
|
|
454
|
+
"internalType": "enum A423Escrow.State",
|
|
455
|
+
"name": "state",
|
|
456
|
+
"type": "uint8"
|
|
457
|
+
},
|
|
458
|
+
{
|
|
459
|
+
"internalType": "bytes32",
|
|
460
|
+
"name": "resultHash",
|
|
461
|
+
"type": "bytes32"
|
|
462
|
+
},
|
|
463
|
+
{
|
|
464
|
+
"internalType": "uint256",
|
|
465
|
+
"name": "workerPaid",
|
|
466
|
+
"type": "uint256"
|
|
467
|
+
}
|
|
468
|
+
],
|
|
469
|
+
"internalType": "struct A423Escrow.Job",
|
|
470
|
+
"name": "",
|
|
471
|
+
"type": "tuple"
|
|
472
|
+
}
|
|
473
|
+
],
|
|
474
|
+
"stateMutability": "view",
|
|
475
|
+
"type": "function"
|
|
476
|
+
},
|
|
477
|
+
{
|
|
478
|
+
"inputs": [
|
|
479
|
+
{
|
|
480
|
+
"internalType": "bytes32",
|
|
481
|
+
"name": "id",
|
|
482
|
+
"type": "bytes32"
|
|
483
|
+
}
|
|
484
|
+
],
|
|
485
|
+
"name": "refundExpired",
|
|
486
|
+
"outputs": [],
|
|
487
|
+
"stateMutability": "nonpayable",
|
|
488
|
+
"type": "function"
|
|
489
|
+
},
|
|
490
|
+
{
|
|
491
|
+
"inputs": [
|
|
492
|
+
{
|
|
493
|
+
"internalType": "bytes32",
|
|
494
|
+
"name": "id",
|
|
495
|
+
"type": "bytes32"
|
|
496
|
+
}
|
|
497
|
+
],
|
|
498
|
+
"name": "release",
|
|
499
|
+
"outputs": [],
|
|
500
|
+
"stateMutability": "nonpayable",
|
|
501
|
+
"type": "function"
|
|
502
|
+
},
|
|
503
|
+
{
|
|
504
|
+
"inputs": [
|
|
505
|
+
{
|
|
506
|
+
"internalType": "bytes32",
|
|
507
|
+
"name": "id",
|
|
508
|
+
"type": "bytes32"
|
|
509
|
+
},
|
|
510
|
+
{
|
|
511
|
+
"internalType": "uint256",
|
|
512
|
+
"name": "workerAmount",
|
|
513
|
+
"type": "uint256"
|
|
514
|
+
}
|
|
515
|
+
],
|
|
516
|
+
"name": "resolve",
|
|
517
|
+
"outputs": [],
|
|
518
|
+
"stateMutability": "nonpayable",
|
|
519
|
+
"type": "function"
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
"inputs": [
|
|
523
|
+
{
|
|
524
|
+
"internalType": "bytes32",
|
|
525
|
+
"name": "id",
|
|
526
|
+
"type": "bytes32"
|
|
527
|
+
},
|
|
528
|
+
{
|
|
529
|
+
"internalType": "bytes32",
|
|
530
|
+
"name": "resultHash",
|
|
531
|
+
"type": "bytes32"
|
|
532
|
+
}
|
|
533
|
+
],
|
|
534
|
+
"name": "submit",
|
|
535
|
+
"outputs": [],
|
|
536
|
+
"stateMutability": "nonpayable",
|
|
537
|
+
"type": "function"
|
|
538
|
+
},
|
|
539
|
+
{
|
|
540
|
+
"inputs": [
|
|
541
|
+
{
|
|
542
|
+
"components": [
|
|
543
|
+
{
|
|
544
|
+
"internalType": "bytes32",
|
|
545
|
+
"name": "jobId",
|
|
546
|
+
"type": "bytes32"
|
|
547
|
+
},
|
|
548
|
+
{
|
|
549
|
+
"internalType": "address",
|
|
550
|
+
"name": "payer",
|
|
551
|
+
"type": "address"
|
|
552
|
+
},
|
|
553
|
+
{
|
|
554
|
+
"internalType": "address",
|
|
555
|
+
"name": "worker",
|
|
556
|
+
"type": "address"
|
|
557
|
+
},
|
|
558
|
+
{
|
|
559
|
+
"internalType": "address",
|
|
560
|
+
"name": "verifier",
|
|
561
|
+
"type": "address"
|
|
562
|
+
},
|
|
563
|
+
{
|
|
564
|
+
"internalType": "address",
|
|
565
|
+
"name": "arbitrator",
|
|
566
|
+
"type": "address"
|
|
567
|
+
},
|
|
568
|
+
{
|
|
569
|
+
"internalType": "uint256",
|
|
570
|
+
"name": "amount",
|
|
571
|
+
"type": "uint256"
|
|
572
|
+
},
|
|
573
|
+
{
|
|
574
|
+
"internalType": "uint64",
|
|
575
|
+
"name": "workDeadline",
|
|
576
|
+
"type": "uint64"
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"internalType": "uint64",
|
|
580
|
+
"name": "reviewDeadline",
|
|
581
|
+
"type": "uint64"
|
|
582
|
+
},
|
|
583
|
+
{
|
|
584
|
+
"internalType": "uint64",
|
|
585
|
+
"name": "resolutionDeadline",
|
|
586
|
+
"type": "uint64"
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
"internalType": "uint16",
|
|
590
|
+
"name": "timeoutWorkerBps",
|
|
591
|
+
"type": "uint16"
|
|
592
|
+
},
|
|
593
|
+
{
|
|
594
|
+
"internalType": "bytes32",
|
|
595
|
+
"name": "agreementHash",
|
|
596
|
+
"type": "bytes32"
|
|
597
|
+
}
|
|
598
|
+
],
|
|
599
|
+
"internalType": "struct A423Escrow.Terms",
|
|
600
|
+
"name": "t",
|
|
601
|
+
"type": "tuple"
|
|
602
|
+
}
|
|
603
|
+
],
|
|
604
|
+
"name": "termsDigest",
|
|
605
|
+
"outputs": [
|
|
606
|
+
{
|
|
607
|
+
"internalType": "bytes32",
|
|
608
|
+
"name": "",
|
|
609
|
+
"type": "bytes32"
|
|
610
|
+
}
|
|
611
|
+
],
|
|
612
|
+
"stateMutability": "view",
|
|
613
|
+
"type": "function"
|
|
614
|
+
},
|
|
615
|
+
{
|
|
616
|
+
"inputs": [
|
|
617
|
+
{
|
|
618
|
+
"internalType": "bytes32",
|
|
619
|
+
"name": "id",
|
|
620
|
+
"type": "bytes32"
|
|
621
|
+
}
|
|
622
|
+
],
|
|
623
|
+
"name": "timeout",
|
|
624
|
+
"outputs": [],
|
|
625
|
+
"stateMutability": "nonpayable",
|
|
626
|
+
"type": "function"
|
|
627
|
+
},
|
|
628
|
+
{
|
|
629
|
+
"inputs": [],
|
|
630
|
+
"name": "token",
|
|
631
|
+
"outputs": [
|
|
632
|
+
{
|
|
633
|
+
"internalType": "contract IERC20",
|
|
634
|
+
"name": "",
|
|
635
|
+
"type": "address"
|
|
636
|
+
}
|
|
637
|
+
],
|
|
638
|
+
"stateMutability": "view",
|
|
639
|
+
"type": "function"
|
|
640
|
+
},
|
|
641
|
+
{
|
|
642
|
+
"inputs": [
|
|
643
|
+
{
|
|
644
|
+
"internalType": "bytes32",
|
|
645
|
+
"name": "id",
|
|
646
|
+
"type": "bytes32"
|
|
647
|
+
},
|
|
648
|
+
{
|
|
649
|
+
"internalType": "bytes32",
|
|
650
|
+
"name": "resultHash",
|
|
651
|
+
"type": "bytes32"
|
|
652
|
+
}
|
|
653
|
+
],
|
|
654
|
+
"name": "verify",
|
|
655
|
+
"outputs": [],
|
|
656
|
+
"stateMutability": "nonpayable",
|
|
657
|
+
"type": "function"
|
|
658
|
+
}
|
|
659
|
+
],
|
|
660
|
+
"bytecode": "0x610180604052348015610010575f5ffd5b5060405161269d38038061269d83398101604081905261002f916101df565b6040518060400160405280600a81526020016941343233457363726f7760b01b815250604051806040016040528060018152602001603160f81b81525060015f8190555061008760018361016760201b90919060201c565b61012052610096816002610167565b61014052815160208084019190912060e052815190820120610100524660a05261012260e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526001600160a01b0381163b5f0361015557604051630256965f60e01b815260040160405180910390fd5b6001600160a01b0316610160526103cc565b5f6020835110156101825761017b83610199565b9050610193565b8161018d84826102a4565b5060ff90505b92915050565b5f5f829050601f815111156101cc578260405163305a27a960e01b81526004016101c3919061035e565b60405180910390fd5b80516101d7826103a9565b179392505050565b5f602082840312156101ef575f5ffd5b81516001600160a01b0381168114610205575f5ffd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061023457607f821691505b60208210810361025257634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561029f57805f5260205f20601f840160051c8101602085101561027d5750805b601f840160051c820191505b8181101561029c575f8155600101610289565b50505b505050565b81516001600160401b038111156102bd576102bd61020c565b6102d1816102cb8454610220565b84610258565b6020601f821160018114610303575f83156102ec5750848201515b5f19600385901b1c1916600184901b17845561029c565b5f84815260208120601f198516915b828110156103325787850151825560209485019460019092019101610312565b508482101561034f57868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b602081525f82518060208401525f5b8181101561038a576020818601810151604086840101520161036d565b505f604082850101526040601f19601f83011684010191505092915050565b80516020808301519190811015610252575f1960209190910360031b1b16919050565b60805160a05160c05160e0516101005161012051610140516101605161223e61045f5f395f81816101f601528181610c3001528181610cc001528181610d0f015281816115760152818161160b01528181611683015281816116c9015261176b01525f61137b01525f61134901525f61150f01525f6114e701525f61144201525f61146c01525f611496015261223e5ff3fe608060405234801561000f575f5ffd5b50600436106100cb575f3560e01c806384b0196e11610088578063d26ff86e11610063578063d26ff86e146101ab578063edb70d9e146101be578063f729cf0d146101d1578063fc0c546a146101f1575f5ffd5b806384b0196e1461016a5780638a92631714610185578063cc3e049b14610198575f5ffd5b8063099d2518146100cf5780633aa36987146100f55780634e8fee001461011c57806367d42a8b14610131578063795ea18e1461014457806382cbf88b14610157575b5f5ffd5b6100e26100dd366004611b84565b610230565b6040519081526020015b60405180910390f35b6100e27f3a82e9543b510404d05948b3e6cbf4e32f66690f864ccb5ef67ee5927a49a4ba81565b61012f61012a366004611ba6565b610288565b005b61012f61013f366004611bc6565b61039f565b61012f610152366004611bc6565b61046f565b61012f610165366004611ba6565b6105cb565b61017261070e565b6040516100ec9796959493929190611c20565b61012f610193366004611cb6565b610750565b61012f6101a6366004611bc6565b610e23565b61012f6101b9366004611ba6565b610eab565b61012f6101cc366004611ba6565b610fb1565b6101e46101df366004611bc6565b611089565b6040516100ec9190611d69565b6102187f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100ec565b5f6102827f3a82e9543b510404d05948b3e6cbf4e32f66690f864ccb5ef67ee5927a49a4ba83604051602001610267929190611ed6565b6040516020818303038152906040528051906020012061120b565b92915050565b5f828152600360208190526040909120908101546001600160a01b031633146102c3576040516282b42960e81b815260040160405180910390fd5b6002600882015460ff1660078111156102de576102de611d35565b146102fc57604051636f20b45d60e11b815260040160405180910390fd5b6006810154600160401b90046001600160401b03164211156103315760405163637910d560e11b815260040160405180910390fd5b8060090154821461035557604051630256965f60e01b815260040160405180910390fd5b60088101805460ff1916600317905560405182815283907f5c83c73bb0b96f8bc4b95aabcb7980de29ee8ec40cf1aa83c5bd999b44077557906020015b60405180910390a2505050565b6103a7611237565b5f818152600360208190526040909120908101546001600160a01b031633146103e2576040516282b42960e81b815260040160405180910390fd5b6003600882015460ff1660078111156103fd576103fd611d35565b1461041b57604051636f20b45d60e11b815260040160405180910390fd5b6006810154600160801b90046001600160401b03164211156104505760405163637910d560e11b815260040160405180910390fd5b6104628282835f01600501545f61125f565b5061046c60015f55565b50565b610477611237565b5f8181526003602052604090206002600882015460ff16600781111561049f5761049f611d35565b141580156104c657506003600882015460ff1660078111156104c3576104c3611d35565b14155b80156104eb57506004600882015460ff1660078111156104e8576104e8611d35565b14155b1561050957604051636f20b45d60e11b815260040160405180910390fd5b6006810154600160801b90046001600160401b0316421161053d5760405163637910d560e11b815260040160405180910390fd5b600681015460058201545f9161271091600160c01b90910461ffff1690610565908390611fff565b61056f9190612026565b610579919061203d565b60068301546005840154600160c01b90910461ffff169061059d906127109061203d565b6105a79190612026565b6105b19190612050565b90506105c0838383600361125f565b505061046c60015f55565b5f82815260036020526040902060018101546001600160a01b03163314801590610602575060028101546001600160a01b03163314155b801561061b575060038101546001600160a01b03163314155b15610638576040516282b42960e81b815260040160405180910390fd5b6002600882015460ff16600781111561065357610653611d35565b1415801561067a57506003600882015460ff16600781111561067757610677611d35565b14155b1561069857604051636f20b45d60e11b815260040160405180910390fd5b6006810154600160801b90046001600160401b03164211156106cd5760405163637910d560e11b815260040160405180910390fd5b60088101805460ff1916600417905560405182815283907f8e39eab2c454d024fb5c89b50dabc51f5068c7a283891d06aa91f5ba96acded190602001610392565b5f6060805f5f5f606061071f611342565b610727611374565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b610758611237565b6107686040840160208501612063565b6001600160a01b0316336001600160a01b031614610798576040516282b42960e81b815260040160405180910390fd5b82355f9081526003602052604081206008015460ff1660078111156107bf576107bf611d35565b146107dd57604051636f20b45d60e11b815260040160405180910390fd5b823515806107ee5750610140830135155b806107fb575060a0830135155b8061081d57505f6108126060850160408601612063565b6001600160a01b0316145b8061085757506108336040840160208501612063565b6001600160a01b031661084c6060850160408601612063565b6001600160a01b0316145b8061087957505f61086e6080850160608601612063565b6001600160a01b0316145b8061089b57505f61089060a0850160808601612063565b6001600160a01b0316145b806108d557506108b16040840160208501612063565b6001600160a01b03166108ca60a0850160808601612063565b6001600160a01b0316145b8061090f57506108eb6060840160408501612063565b6001600160a01b031661090460a0850160808601612063565b6001600160a01b0316145b80610930575061271061092a6101408501610120860161207c565b61ffff16115b1561094e57604051630256965f60e01b815260040160405180910390fd5b4261095f60e0850160c08601612095565b6001600160401b03161115806109a6575061098060e0840160c08501612095565b6001600160401b031661099a610100850160e08601612095565b6001600160401b031611155b806109e457506109bd610100840160e08501612095565b6001600160401b03166109d861012085016101008601612095565b6001600160401b031611155b15610a0257604051630256965f60e01b815260040160405180910390fd5b610a126060840160408501612063565b6001600160a01b0316610a62610a2785610230565b84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506113a192505050565b6001600160a01b031614610a88576040516282b42960e81b815260040160405180910390fd5b604051806080016040528084803603810190610aa491906120e3565b8152602001600181525f602080830182905260409283018290528635825260038082529183902084518051825580830151600180840180546001600160a01b039384166001600160a01b03199182161790915596830151600285018054918416918916919091179055606083015195840180549683169688169690961790955560808201516004840180549190921696169590951790945560a0840151600582015560c084015160068201805460e087015161010088015161012089015161ffff16600160c01b0261ffff60c01b196001600160401b03928316600160801b021669ffffffffffffffffffff60801b19938316600160401b026fffffffffffffffffffffffffffffffff19909516929096169190911792909217169290921791909117905561014090930151600780850191909155908401516008840180549193909260ff19909216918490811115610bff57610bff611d35565b02179055506040828101516009830155606090920151600a90910155516370a0823160e01b81523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610c7d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ca191906121ac565b9050610cec610cb66040860160208701612063565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016903060a08801356113c9565b610cfa60a085013582612050565b6040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610d5c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8091906121ac565b14610d9e5760405163570883e560e01b815260040160405180910390fd5b610dae6040850160208601612063565b6001600160a01b031661014085013585357f32f3ba658fc1eefa6d5ca6ba35e8715bb439f7713edf2d61c03f4920fcb8cbab610df06060890160408a01612063565b604080516001600160a01b03909216825260a08a013560208301520160405180910390a450610e1e60015f55565b505050565b610e2b611237565b5f8181526003602052604090206001600882015460ff166007811115610e5357610e53611d35565b14610e7157604051636f20b45d60e11b815260040160405180910390fd5b60068101546001600160401b03164211610e9e5760405163637910d560e11b815260040160405180910390fd5b61046282825f600161125f565b5f82815260036020526040902060028101546001600160a01b03163314610ee4576040516282b42960e81b815260040160405180910390fd5b6001600882015460ff166007811115610eff57610eff611d35565b14610f1d57604051636f20b45d60e11b815260040160405180910390fd5b60068101546001600160401b0316421115610f4b5760405163637910d560e11b815260040160405180910390fd5b81610f6957604051630256965f60e01b815260040160405180910390fd5b6009810182905560088101805460ff1916600217905560405182815283907fa2f32e666157494cac7b795a43a2914dcb77efd9515b47db67dd15d332234f9790602001610392565b610fb9611237565b5f82815260036020526040902060048101546001600160a01b03163314610ff2576040516282b42960e81b815260040160405180910390fd5b6004600882015460ff16600781111561100d5761100d611d35565b1461102b57604051636f20b45d60e11b815260040160405180910390fd5b6006810154600160801b90046001600160401b03164211806110505750600581015482115b1561106e57604051630256965f60e01b815260040160405180910390fd5b61107b838284600261125f565b5061108560015f55565b5050565b604080516101e0810182525f6080820181815260a0830182905260c0830182905260e08301829052610100830182905261012083018290526101408301829052610160830182905261018083018290526101a083018290526101c0830182905282526020820181905291810182905260608101919091525f8281526003602081815260409283902083516101e0810190945280546080850190815260018201546001600160a01b0390811660a08701526002830154811660c087015293820154841660e08601526004820154909316610100850152600581015461012085015260068101546001600160401b03808216610140870152600160401b82048116610160870152600160801b820416610180860152600160c01b900461ffff166101a08501526007808201546101c0860152928452600881015490929184019160ff909116908111156111dc576111dc611d35565b60078111156111ed576111ed611d35565b815260098201546020820152600a9091015460409091015292915050565b5f610282611217611436565b8360405161190160f01b8152600281019290925260228201526042902090565b60025f540361125957604051633ee5aeb560e01b815260040160405180910390fd5b60025f55565b60058301545f906112719084906121c3565b9050821561128d578015611286576007611290565b6005611290565b60065b60088501805460ff191660018360078111156112ae576112ae611d35565b0217905550600a840183905582156112d85760028401546112d8906001600160a01b03168461155f565b80156112f65760018401546112f6906001600160a01b03168261155f565b604080518481526020810183905260ff841681830152905186917fb3a77f60f2042a66aa50b5810774aab5f1a2dd6799ee891ebb9fe98b95fec57f919081900360600190a25050505050565b606061136f7f000000000000000000000000000000000000000000000000000000000000000060016117f5565b905090565b606061136f7f000000000000000000000000000000000000000000000000000000000000000060026117f5565b5f5f5f5f6113af868661189e565b9250925092506113bf82826118e7565b5090949350505050565b6040516001600160a01b0384811660248301528381166044830152606482018390526114309186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b0383818316178352505050506119a4565b50505050565b5f306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561148e57507f000000000000000000000000000000000000000000000000000000000000000046145b156114b857507f000000000000000000000000000000000000000000000000000000000000000090565b61136f604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b6040516370a0823160e01b81523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa1580156115c3573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115e791906121ac565b6040516370a0823160e01b81526001600160a01b0385811660048301529192505f917f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015611650573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061167491906121ac565b90506116aa6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000168585611a10565b6116b483836121c3565b6040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015611716573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061173a91906121ac565b1415806117d7575061174c8382612050565b6040516370a0823160e01b81526001600160a01b0386811660048301527f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa1580156117b0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117d491906121ac565b14155b156114305760405163570883e560e01b815260040160405180910390fd5b606060ff831461180f5761180883611a41565b9050610282565b81805461181b906121d6565b80601f0160208091040260200160405190810160405280929190818152602001828054611847906121d6565b80156118925780601f1061186957610100808354040283529160200191611892565b820191905f5260205f20905b81548152906001019060200180831161187557829003601f168201915b50505050509050610282565b5f5f5f83516041036118d5576020840151604085015160608601515f1a6118c788828585611a7e565b9550955095505050506118e0565b505081515f91506002905b9250925092565b5f8260038111156118fa576118fa611d35565b03611903575050565b600182600381111561191757611917611d35565b036119355760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561194957611949611d35565b0361196f5760405163fce698f760e01b8152600481018290526024015b60405180910390fd5b600382600381111561198357611983611d35565b03611085576040516335e2f38360e21b815260048101829052602401611966565b5f5f60205f8451602086015f885af1806119c3576040513d5f823e3d81fd5b50505f513d915081156119da5780600114156119e7565b6001600160a01b0384163b155b1561143057604051635274afe760e01b81526001600160a01b0385166004820152602401611966565b6040516001600160a01b03838116602483015260448201839052610e1e91859182169063a9059cbb906064016113fe565b60605f611a4d83611b46565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115611ab757505f91506003905082611b3c565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611b08573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b038116611b3357505f925060019150829050611b3c565b92505f91508190505b9450945094915050565b5f60ff8216601f81111561028257604051632cd44ac360e21b815260040160405180910390fd5b5f6101608284031215611b7e575f5ffd5b50919050565b5f6101608284031215611b95575f5ffd5b611b9f8383611b6d565b9392505050565b5f5f60408385031215611bb7575f5ffd5b50508035926020909101359150565b5f60208284031215611bd6575f5ffd5b5035919050565b5f81518084525f5b81811015611c0157602081850181015186830182015201611be5565b505f602082860101526020601f19601f83011685010191505092915050565b60ff60f81b8816815260e060208201525f611c3e60e0830189611bdd565b8281036040840152611c508189611bdd565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015611ca5578351835260209384019390920191600101611c87565b50909b9a5050505050505050505050565b5f5f5f6101808486031215611cc9575f5ffd5b611cd38585611b6d565b92506101608401356001600160401b03811115611cee575f5ffd5b8401601f81018613611cfe575f5ffd5b80356001600160401b03811115611d13575f5ffd5b866020828401011115611d24575f5ffd5b939660209190910195509293505050565b634e487b7160e01b5f52602160045260245ffd5b60088110611d6557634e487b7160e01b5f52602160045260245ffd5b9052565b5f6101c0820190508251805183526020810151611d9160208501826001600160a01b03169052565b506040810151611dac60408501826001600160a01b03169052565b506060810151611dc760608501826001600160a01b03169052565b506080810151611de260808501826001600160a01b03169052565b5060a081015160a084015260c0810151611e0760c08501826001600160401b03169052565b5060e0810151611e2260e08501826001600160401b03169052565b50610100810151611e3f6101008501826001600160401b03169052565b50610120810151611e5761012085018261ffff169052565b50610140810151610140840152506020830151611e78610160840182611d49565b5060408301516101808301526060909201516101a09091015290565b80356001600160a01b0381168114611eaa575f5ffd5b919050565b80356001600160401b0381168114611eaa575f5ffd5b803561ffff81168114611eaa575f5ffd5b8281528135602080830191909152610180820190611ef5908401611e94565b6001600160a01b038116604084015250611f1160408401611e94565b6001600160a01b038116606084015250611f2d60608401611e94565b6001600160a01b038116608084015250611f4960808401611e94565b6001600160a01b03811660a08401525060a083013560c083810191909152611f72908401611eaf565b6001600160401b03811660e084015250611f8e60e08401611eaf565b6001600160401b03811661010084015250611fac6101008401611eaf565b6001600160401b03811661012084015250611fca6101208401611ec5565b61ffff81166101408401525061014092909201356101609190910152919050565b634e487b7160e01b5f52601260045260245ffd5b5f8261200d5761200d611feb565b500690565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761028257610282612012565b5f8261204b5761204b611feb565b500490565b8082018082111561028257610282612012565b5f60208284031215612073575f5ffd5b611b9f82611e94565b5f6020828403121561208c575f5ffd5b611b9f82611ec5565b5f602082840312156120a5575f5ffd5b611b9f82611eaf565b60405161016081016001600160401b03811182821017156120dd57634e487b7160e01b5f52604160045260245ffd5b60405290565b5f6101608284031280156120f5575f5ffd5b506120fe6120ae565b8235815261210e60208401611e94565b602082015261211f60408401611e94565b604082015261213060608401611e94565b606082015261214160808401611e94565b608082015260a0838101359082015261215c60c08401611eaf565b60c082015261216d60e08401611eaf565b60e082015261217f6101008401611eaf565b6101008201526121926101208401611ec5565b610120820152610140928301359281019290925250919050565b5f602082840312156121bc575f5ffd5b5051919050565b8181038181111561028257610282612012565b600181811c908216806121ea57607f821691505b602082108103611b7e57634e487b7160e01b5f52602260045260245ffdfea26469706673582212209a4cf890584b4e1fcda7ef5edc35397cda09ec7966b5a78649bc7c637ecb7d2264736f6c634300081e0033"
|
|
661
|
+
}
|