We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 72944d1 commit 3a8bae3Copy full SHA for 3a8bae3
src/routes/api/project/validators.ts
@@ -0,0 +1,34 @@
1
+import { Handler } from 'express'
2
+import BaseValidator from 'validators/baseValidator'
3
+import * as Joi from '@hapi/joi'
4
+
5
+export default class ProjectValidator extends BaseValidator {
6
+ POST: Handler
7
8
+ constructor() {
9
+ super()
10
+ this.POST = this.requestValidator(this.POSTSchema)
11
+ }
12
13
+ POSTSchema = Joi.object({
14
+ problem: Joi
15
+ .string()
16
+ .uri()
17
+ .required(),
18
+ submission: Joi
19
20
21
22
+ submissionDirs: Joi
23
+ .array(),
24
+ mode: Joi
25
26
+ .valid('sync', 'callback', 'poll'),
27
+ callback: Joi
28
29
30
+ .when('mode', { is: 'callback', then: Joi.required() }),
31
+ timelimit: Joi
32
+ .number(),
33
+ })
34
+}
0 commit comments