@euler-edu/schema 0.0.0-stage → 7.0.1-beta1

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.
Files changed (129) hide show
  1. package/lib/.tsbuildinfo +1 -0
  2. package/lib/auths/index.d.ts +49 -0
  3. package/lib/auths/index.js +49 -0
  4. package/lib/auths/index.js.map +1 -0
  5. package/lib/configs/index.d.ts +2 -0
  6. package/lib/configs/index.js +19 -0
  7. package/lib/configs/index.js.map +1 -0
  8. package/lib/configs/oj-envConfig/index.d.ts +143 -0
  9. package/lib/configs/oj-envConfig/index.js +35 -0
  10. package/lib/configs/oj-envConfig/index.js.map +1 -0
  11. package/lib/configs/style/index.d.ts +53 -0
  12. package/lib/configs/style/index.js +46 -0
  13. package/lib/configs/style/index.js.map +1 -0
  14. package/lib/endpoints/hq-api/index.d.ts +37 -0
  15. package/lib/endpoints/hq-api/index.js +14 -0
  16. package/lib/endpoints/hq-api/index.js.map +1 -0
  17. package/lib/endpoints/hq-api/serviceUptime.atom.d.ts +12 -0
  18. package/lib/endpoints/hq-api/serviceUptime.atom.js +18 -0
  19. package/lib/endpoints/hq-api/serviceUptime.atom.js.map +1 -0
  20. package/lib/endpoints/hq-api/serviceUptime.endpoint.d.ts +23 -0
  21. package/lib/endpoints/hq-api/serviceUptime.endpoint.js +23 -0
  22. package/lib/endpoints/hq-api/serviceUptime.endpoint.js.map +1 -0
  23. package/lib/endpoints/index.d.ts +2622 -0
  24. package/lib/endpoints/index.js +12 -0
  25. package/lib/endpoints/index.js.map +1 -0
  26. package/lib/endpoints/oj-api/auth.atom.d.ts +10 -0
  27. package/lib/endpoints/oj-api/auth.atom.js +26 -0
  28. package/lib/endpoints/oj-api/auth.atom.js.map +1 -0
  29. package/lib/endpoints/oj-api/auth.endpoint.d.ts +105 -0
  30. package/lib/endpoints/oj-api/auth.endpoint.js +118 -0
  31. package/lib/endpoints/oj-api/auth.endpoint.js.map +1 -0
  32. package/lib/endpoints/oj-api/contest.atom.d.ts +23 -0
  33. package/lib/endpoints/oj-api/contest.atom.js +20 -0
  34. package/lib/endpoints/oj-api/contest.atom.js.map +1 -0
  35. package/lib/endpoints/oj-api/contest.endpoint.d.ts +53 -0
  36. package/lib/endpoints/oj-api/contest.endpoint.js +49 -0
  37. package/lib/endpoints/oj-api/contest.endpoint.js.map +1 -0
  38. package/lib/endpoints/oj-api/index.d.ts +2523 -0
  39. package/lib/endpoints/oj-api/index.js +58 -0
  40. package/lib/endpoints/oj-api/index.js.map +1 -0
  41. package/lib/endpoints/oj-api/mail.atom.d.ts +12 -0
  42. package/lib/endpoints/oj-api/mail.atom.js +14 -0
  43. package/lib/endpoints/oj-api/mail.atom.js.map +1 -0
  44. package/lib/endpoints/oj-api/mail.endpoint.d.ts +48 -0
  45. package/lib/endpoints/oj-api/mail.endpoint.js +51 -0
  46. package/lib/endpoints/oj-api/mail.endpoint.js.map +1 -0
  47. package/lib/endpoints/oj-api/problem.atom.d.ts +120 -0
  48. package/lib/endpoints/oj-api/problem.atom.js +164 -0
  49. package/lib/endpoints/oj-api/problem.atom.js.map +1 -0
  50. package/lib/endpoints/oj-api/problem.endpoint.d.ts +291 -0
  51. package/lib/endpoints/oj-api/problem.endpoint.js +199 -0
  52. package/lib/endpoints/oj-api/problem.endpoint.js.map +1 -0
  53. package/lib/endpoints/oj-api/rank.atom.d.ts +5 -0
  54. package/lib/endpoints/oj-api/rank.atom.js +9 -0
  55. package/lib/endpoints/oj-api/rank.atom.js.map +1 -0
  56. package/lib/endpoints/oj-api/rank.endpoint.d.ts +54 -0
  57. package/lib/endpoints/oj-api/rank.endpoint.js +59 -0
  58. package/lib/endpoints/oj-api/rank.endpoint.js.map +1 -0
  59. package/lib/endpoints/oj-api/record.atom.d.ts +31 -0
  60. package/lib/endpoints/oj-api/record.atom.js +12 -0
  61. package/lib/endpoints/oj-api/record.atom.js.map +1 -0
  62. package/lib/endpoints/oj-api/record.endpoint.d.ts +107 -0
  63. package/lib/endpoints/oj-api/record.endpoint.js +87 -0
  64. package/lib/endpoints/oj-api/record.endpoint.js.map +1 -0
  65. package/lib/endpoints/oj-api/run.atom.d.ts +29 -0
  66. package/lib/endpoints/oj-api/run.atom.js +22 -0
  67. package/lib/endpoints/oj-api/run.atom.js.map +1 -0
  68. package/lib/endpoints/oj-api/run.endpoint.d.ts +59 -0
  69. package/lib/endpoints/oj-api/run.endpoint.js +50 -0
  70. package/lib/endpoints/oj-api/run.endpoint.js.map +1 -0
  71. package/lib/endpoints/oj-api/scoringRequest.atom.d.ts +24 -0
  72. package/lib/endpoints/oj-api/scoringRequest.atom.js +21 -0
  73. package/lib/endpoints/oj-api/scoringRequest.atom.js.map +1 -0
  74. package/lib/endpoints/oj-api/scoringRequest.endpoint.d.ts +47 -0
  75. package/lib/endpoints/oj-api/scoringRequest.endpoint.js +37 -0
  76. package/lib/endpoints/oj-api/scoringRequest.endpoint.js.map +1 -0
  77. package/lib/endpoints/oj-api/scoringServer.atom.d.ts +10 -0
  78. package/lib/endpoints/oj-api/scoringServer.atom.js +18 -0
  79. package/lib/endpoints/oj-api/scoringServer.atom.js.map +1 -0
  80. package/lib/endpoints/oj-api/scoringServer.endpoint.d.ts +21 -0
  81. package/lib/endpoints/oj-api/scoringServer.endpoint.js +25 -0
  82. package/lib/endpoints/oj-api/scoringServer.endpoint.js.map +1 -0
  83. package/lib/endpoints/oj-api/source.atom.d.ts +10 -0
  84. package/lib/endpoints/oj-api/source.atom.js +22 -0
  85. package/lib/endpoints/oj-api/source.atom.js.map +1 -0
  86. package/lib/endpoints/oj-api/source.endpoint.d.ts +98 -0
  87. package/lib/endpoints/oj-api/source.endpoint.js +72 -0
  88. package/lib/endpoints/oj-api/source.endpoint.js.map +1 -0
  89. package/lib/endpoints/oj-api/submit.atom.d.ts +62 -0
  90. package/lib/endpoints/oj-api/submit.atom.js +40 -0
  91. package/lib/endpoints/oj-api/submit.atom.js.map +1 -0
  92. package/lib/endpoints/oj-api/submit.endpoint.d.ts +236 -0
  93. package/lib/endpoints/oj-api/submit.endpoint.js +162 -0
  94. package/lib/endpoints/oj-api/submit.endpoint.js.map +1 -0
  95. package/lib/endpoints/oj-api/user.atom.d.ts +220 -0
  96. package/lib/endpoints/oj-api/user.atom.js +74 -0
  97. package/lib/endpoints/oj-api/user.atom.js.map +1 -0
  98. package/lib/endpoints/oj-api/user.endpoint.d.ts +879 -0
  99. package/lib/endpoints/oj-api/user.endpoint.js +502 -0
  100. package/lib/endpoints/oj-api/user.endpoint.js.map +1 -0
  101. package/lib/endpoints/oj-archives/index.d.ts +51 -0
  102. package/lib/endpoints/oj-archives/index.js +47 -0
  103. package/lib/endpoints/oj-archives/index.js.map +1 -0
  104. package/lib/endpoints/oj-problemContents/index.d.ts +15 -0
  105. package/lib/endpoints/oj-problemContents/index.js +17 -0
  106. package/lib/endpoints/oj-problemContents/index.js.map +1 -0
  107. package/lib/index.d.ts +2 -0
  108. package/lib/index.js +6 -0
  109. package/lib/index.js.map +1 -0
  110. package/lib/queues/index.d.ts +12 -0
  111. package/lib/queues/index.js +11 -0
  112. package/lib/queues/index.js.map +1 -0
  113. package/lib/queues/oj-clientSocketEventQueue.d.ts +12 -0
  114. package/lib/queues/oj-clientSocketEventQueue.js +16 -0
  115. package/lib/queues/oj-clientSocketEventQueue.js.map +1 -0
  116. package/lib/sockets/index.d.ts +34 -0
  117. package/lib/sockets/index.js +13 -0
  118. package/lib/sockets/index.js.map +1 -0
  119. package/lib/sockets/oj-socket/index.d.ts +18 -0
  120. package/lib/sockets/oj-socket/index.js +21 -0
  121. package/lib/sockets/oj-socket/index.js.map +1 -0
  122. package/lib/sockets/oj-web/index.d.ts +18 -0
  123. package/lib/sockets/oj-web/index.js +21 -0
  124. package/lib/sockets/oj-web/index.js.map +1 -0
  125. package/lib/types/index.d.ts +28 -0
  126. package/lib/types/index.js +3 -0
  127. package/lib/types/index.js.map +1 -0
  128. package/package.json +29 -3
  129. package/README.md +0 -3
@@ -0,0 +1,98 @@
1
+ import { z } from 'zod';
2
+ declare const _default: {
3
+ readonly getVersionByMeByProblemId: {
4
+ readonly prefix: string;
5
+ readonly operation: {
6
+ readonly summary: "소스코드 저장 내용 조회";
7
+ };
8
+ readonly auth: {
9
+ readonly requiredLevel: 1;
10
+ };
11
+ readonly base: "oj-api";
12
+ readonly method: "get";
13
+ readonly path: (problemId: string) => string;
14
+ readonly data: z.ZodArray<z.ZodObject<{
15
+ size: z.ZodNumber;
16
+ versionId: z.ZodString;
17
+ lastModified: z.ZodISODateTime;
18
+ isLatest: z.ZodBoolean;
19
+ }, z.core.$strip>>;
20
+ };
21
+ readonly getVersionByMeByProblemIdByVersionId: {
22
+ readonly prefix: string;
23
+ readonly operation: {
24
+ readonly summary: "소스코드 저장 내용 조회";
25
+ };
26
+ readonly auth: {
27
+ readonly requiredLevel: 1;
28
+ };
29
+ readonly base: "oj-api";
30
+ readonly method: "get";
31
+ readonly path: (problemId: string, versionId: string) => string;
32
+ readonly data: z.ZodObject<{
33
+ language: z.ZodEnum<{
34
+ c: "c";
35
+ ruby: "ruby";
36
+ r: "r";
37
+ c11: "c11";
38
+ "c++": "c++";
39
+ "c++11": "c++11";
40
+ "c++14": "c++14";
41
+ "c++17": "c++17";
42
+ python2: "python2";
43
+ python3: "python3";
44
+ pypy3: "pypy3";
45
+ openjdk: "openjdk";
46
+ golang: "golang";
47
+ }>;
48
+ source: z.ZodString;
49
+ problemId: z.ZodString;
50
+ userId: z.ZodString;
51
+ createdAt: z.ZodISODateTime;
52
+ }, z.core.$strip>;
53
+ };
54
+ readonly postByMe: {
55
+ readonly prefix: string;
56
+ readonly operation: {
57
+ readonly summary: "소스코드 저장";
58
+ };
59
+ readonly auth: {
60
+ readonly requiredLevel: 1;
61
+ };
62
+ readonly base: "oj-api";
63
+ readonly method: "post";
64
+ readonly path: () => string;
65
+ readonly body: z.ZodObject<{
66
+ language: z.ZodEnum<{
67
+ c: "c";
68
+ ruby: "ruby";
69
+ r: "r";
70
+ c11: "c11";
71
+ "c++": "c++";
72
+ "c++11": "c++11";
73
+ "c++14": "c++14";
74
+ "c++17": "c++17";
75
+ python2: "python2";
76
+ python3: "python3";
77
+ pypy3: "pypy3";
78
+ openjdk: "openjdk";
79
+ golang: "golang";
80
+ }>;
81
+ source: z.ZodString;
82
+ problemId: z.ZodString;
83
+ }, z.core.$strip>;
84
+ };
85
+ readonly deleteVersionByMeByProblemIdByVersionId: {
86
+ readonly prefix: string;
87
+ readonly operation: {
88
+ readonly summary: "소스코드 저장 내용 삭제";
89
+ };
90
+ readonly auth: {
91
+ readonly requiredLevel: 1;
92
+ };
93
+ readonly base: "oj-api";
94
+ readonly method: "delete";
95
+ readonly path: (problemId: string, versionId: string) => string;
96
+ };
97
+ };
98
+ export default _default;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const zod_1 = require("zod");
4
+ const auth_atom_1 = require("./auth.atom");
5
+ const problem_atom_1 = require("./problem.atom");
6
+ const source_atom_1 = require("./source.atom");
7
+ const submit_atom_1 = require("./submit.atom");
8
+ const { prefix } = source_atom_1.sourceAtom;
9
+ exports.default = {
10
+ getVersionByMeByProblemId: {
11
+ prefix,
12
+ operation: {
13
+ summary: '소스코드 저장 내용 조회',
14
+ },
15
+ auth: {
16
+ requiredLevel: 1,
17
+ },
18
+ base: 'oj-api',
19
+ method: 'get',
20
+ path: (problemId) => `/version/byMe/byProblemId/${problemId}`,
21
+ data: zod_1.z.array(source_atom_1.sourceAtom.version),
22
+ },
23
+ getVersionByMeByProblemIdByVersionId: {
24
+ prefix,
25
+ operation: {
26
+ summary: '소스코드 저장 내용 조회',
27
+ },
28
+ auth: {
29
+ requiredLevel: 1,
30
+ },
31
+ base: 'oj-api',
32
+ method: 'get',
33
+ path: (problemId, versionId) => `/version/byMe/byProblemId/${problemId}/byVersionId/${versionId}`,
34
+ data: zod_1.z.object({
35
+ language: submit_atom_1.submitAtom.language,
36
+ source: submit_atom_1.submitAtom.source,
37
+ problemId: problem_atom_1.problemAtom.id,
38
+ userId: auth_atom_1.authAtom.id,
39
+ createdAt: zod_1.z.iso.datetime({ offset: true }),
40
+ }),
41
+ },
42
+ postByMe: {
43
+ prefix,
44
+ operation: {
45
+ summary: '소스코드 저장',
46
+ },
47
+ auth: {
48
+ requiredLevel: 1,
49
+ },
50
+ base: 'oj-api',
51
+ method: 'post',
52
+ path: () => `/byMe`,
53
+ body: zod_1.z.object({
54
+ language: submit_atom_1.submitAtom.language,
55
+ source: submit_atom_1.submitAtom.source,
56
+ problemId: problem_atom_1.problemAtom.id,
57
+ }),
58
+ },
59
+ deleteVersionByMeByProblemIdByVersionId: {
60
+ prefix,
61
+ operation: {
62
+ summary: '소스코드 저장 내용 삭제',
63
+ },
64
+ auth: {
65
+ requiredLevel: 1,
66
+ },
67
+ base: 'oj-api',
68
+ method: 'delete',
69
+ path: (problemId, versionId) => `/version/byMe/byProblemId/${problemId}/byVersionId/${versionId}`,
70
+ },
71
+ };
72
+ //# sourceMappingURL=source.endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source.endpoint.js","sourceRoot":"","sources":["../../../src/endpoints/oj-api/source.endpoint.ts"],"names":[],"mappings":";;AACA,6BAAwB;AAExB,2CAAuC;AACvC,iDAA6C;AAC7C,+CAA2C;AAC3C,+CAA2C;AAE3C,MAAM,EAAE,MAAM,EAAE,GAAG,wBAAU,CAAC;AAE9B,kBAAe;IACb,yBAAyB,EAAE;QACzB,MAAM;QACN,SAAS,EAAE;YACT,OAAO,EAAE,eAAe;SACzB;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,CAAC;SACjB;QACD,IAAI,EAAE,QAAiB;QACvB,MAAM,EAAE,KAAc;QACtB,IAAI,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,6BAA6B,SAAS,EAAE;QACrE,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,wBAAU,CAAC,OAAO,CAAC;KAClC;IACD,oCAAoC,EAAE;QACpC,MAAM;QACN,SAAS,EAAE;YACT,OAAO,EAAE,eAAe;SACzB;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,CAAC;SACjB;QACD,IAAI,EAAE,QAAiB;QACvB,MAAM,EAAE,KAAc;QACtB,IAAI,EAAE,CAAC,SAAiB,EAAE,SAAiB,EAAE,EAAE,CAC7C,6BAA6B,SAAS,gBAAgB,SAAS,EAAE;QACnE,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC;YACb,QAAQ,EAAE,wBAAU,CAAC,QAAQ;YAC7B,MAAM,EAAE,wBAAU,CAAC,MAAM;YACzB,SAAS,EAAE,0BAAW,CAAC,EAAE;YACzB,MAAM,EAAE,oBAAQ,CAAC,EAAE;YACnB,SAAS,EAAE,OAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;SAC5C,CAAC;KACH;IACD,QAAQ,EAAE;QACR,MAAM;QACN,SAAS,EAAE;YACT,OAAO,EAAE,SAAS;SACnB;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,CAAC;SACjB;QACD,IAAI,EAAE,QAAiB;QACvB,MAAM,EAAE,MAAe;QACvB,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO;QACnB,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC;YACb,QAAQ,EAAE,wBAAU,CAAC,QAAQ;YAC7B,MAAM,EAAE,wBAAU,CAAC,MAAM;YACzB,SAAS,EAAE,0BAAW,CAAC,EAAE;SAC1B,CAAC;KACH;IACD,uCAAuC,EAAE;QACvC,MAAM;QACN,SAAS,EAAE;YACT,OAAO,EAAE,eAAe;SACzB;QACD,IAAI,EAAE;YACJ,aAAa,EAAE,CAAC;SACjB;QACD,IAAI,EAAE,QAAiB;QACvB,MAAM,EAAE,QAAiB;QACzB,IAAI,EAAE,CAAC,SAAiB,EAAE,SAAiB,EAAE,EAAE,CAC7C,6BAA6B,SAAS,gBAAgB,SAAS,EAAE;KACpE;CAC0C,CAAC"}
@@ -0,0 +1,62 @@
1
+ import { z } from 'zod';
2
+ export declare const submitAtom: {
3
+ prefix: string;
4
+ id: z.ZodString;
5
+ status: z.ZodEnum<{
6
+ output: "output";
7
+ accept: "accept";
8
+ wrong: "wrong";
9
+ time: "time";
10
+ memory: "memory";
11
+ compile: "compile";
12
+ runtime: "runtime";
13
+ server: "server";
14
+ pending: "pending";
15
+ }>;
16
+ statusPercentage: z.ZodNumber;
17
+ language: z.ZodEnum<{
18
+ c: "c";
19
+ ruby: "ruby";
20
+ r: "r";
21
+ c11: "c11";
22
+ "c++": "c++";
23
+ "c++11": "c++11";
24
+ "c++14": "c++14";
25
+ "c++17": "c++17";
26
+ python2: "python2";
27
+ python3: "python3";
28
+ pypy3: "pypy3";
29
+ openjdk: "openjdk";
30
+ golang: "golang";
31
+ }>;
32
+ createdAt: z.ZodISODateTime;
33
+ updatedAt: z.ZodISODateTime;
34
+ source: z.ZodString;
35
+ stderr: z.ZodString;
36
+ sourceLength: z.ZodNumber;
37
+ time: z.ZodNumber;
38
+ memory: z.ZodNumber;
39
+ testcase: {
40
+ id: z.ZodString;
41
+ inputPath: z.ZodString;
42
+ inputVersion: z.ZodString;
43
+ outputPath: z.ZodString;
44
+ outputVersion: z.ZodString;
45
+ time: z.ZodNumber;
46
+ memory: z.ZodNumber;
47
+ result: z.ZodEnum<{
48
+ output: "output";
49
+ accept: "accept";
50
+ wrong: "wrong";
51
+ time: "time";
52
+ memory: "memory";
53
+ compile: "compile";
54
+ runtime: "runtime";
55
+ server: "server";
56
+ pending: "pending";
57
+ ignored: "ignored";
58
+ }>;
59
+ };
60
+ testcasesCount: z.ZodNumber;
61
+ isIgnored: z.ZodBoolean;
62
+ };
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.submitAtom = void 0;
4
+ const zod_1 = require("zod");
5
+ const oj_submit_1 = require("@euler-edu/constant/oj-submit");
6
+ exports.submitAtom = {
7
+ prefix: '/submit',
8
+ id: zod_1.z.string().trim().min(1).describe('제출 아이디'),
9
+ status: zod_1.z.enum(oj_submit_1.ojSubmit.statuses).describe('채점 결과'),
10
+ statusPercentage: zod_1.z
11
+ .number()
12
+ .min(0)
13
+ .max(100)
14
+ .describe('채점 진행률 또는 점수'),
15
+ language: zod_1.z
16
+ .enum(Object.keys(oj_submit_1.ojSubmit.environments))
17
+ .describe('제출 언어'),
18
+ createdAt: zod_1.z.iso.datetime({ offset: true }).describe('제출 시간'),
19
+ updatedAt: zod_1.z.iso.datetime({ offset: true }).describe('마지막 수정 시간'),
20
+ source: zod_1.z.string().trim().min(1).max(100000).describe('제출 소스코드'),
21
+ stderr: zod_1.z.string().trim().describe('채점 에러 메시지'),
22
+ sourceLength: zod_1.z.number().min(0).describe('소스코드 길이 (byte)'),
23
+ time: zod_1.z.number().min(0).describe('최대 실행 시간 (sec)'),
24
+ memory: zod_1.z.number().min(0).describe('최대 메모리 사용량 (mb)'),
25
+ testcase: {
26
+ id: zod_1.z.string().trim().min(1).describe('테스트케이스 아이디'),
27
+ inputPath: zod_1.z.string().trim().min(1).describe('테스트케이스 입력 경로'),
28
+ inputVersion: zod_1.z.string().trim().min(1).describe('테스트케이스 입력 버전'),
29
+ outputPath: zod_1.z.string().trim().min(1).describe('테스트케이스 출력 경로'),
30
+ outputVersion: zod_1.z.string().trim().min(1).describe('테스트케이스 출력 버전'),
31
+ time: zod_1.z.number().min(0).describe('테스트케이스 실행 시간 (sec)'),
32
+ memory: zod_1.z.number().min(0).describe('테스트케이스 메모리 사용량 (mb)'),
33
+ result: zod_1.z
34
+ .enum(oj_submit_1.ojSubmit.testcaseResults)
35
+ .describe('테스트케이스 채점 결과'),
36
+ },
37
+ testcasesCount: zod_1.z.number().min(0).describe('테스트케이스 개수'),
38
+ isIgnored: zod_1.z.boolean().describe('채점 결과 순위 반영 무시 여부'),
39
+ };
40
+ //# sourceMappingURL=submit.atom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submit.atom.js","sourceRoot":"","sources":["../../../src/endpoints/oj-api/submit.atom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,236 @@
1
+ import { z } from 'zod';
2
+ declare const _default: {
3
+ readonly get: {
4
+ readonly prefix: string;
5
+ readonly operation: {
6
+ readonly summary: "제출 조회";
7
+ };
8
+ readonly base: "oj-api";
9
+ readonly method: "get";
10
+ readonly path: () => string;
11
+ readonly data: z.ZodObject<{
12
+ submits: z.ZodArray<z.ZodObject<{
13
+ id: z.ZodString;
14
+ problemId: z.ZodString;
15
+ userId: z.ZodString;
16
+ language: z.ZodEnum<{
17
+ c: "c";
18
+ ruby: "ruby";
19
+ r: "r";
20
+ c11: "c11";
21
+ "c++": "c++";
22
+ "c++11": "c++11";
23
+ "c++14": "c++14";
24
+ "c++17": "c++17";
25
+ python2: "python2";
26
+ python3: "python3";
27
+ pypy3: "pypy3";
28
+ openjdk: "openjdk";
29
+ golang: "golang";
30
+ }>;
31
+ status: z.ZodEnum<{
32
+ output: "output";
33
+ accept: "accept";
34
+ wrong: "wrong";
35
+ time: "time";
36
+ memory: "memory";
37
+ compile: "compile";
38
+ runtime: "runtime";
39
+ server: "server";
40
+ pending: "pending";
41
+ }>;
42
+ statusPercentage: z.ZodNumber;
43
+ sourceLength: z.ZodNumber;
44
+ time: z.ZodOptional<z.ZodNumber>;
45
+ memory: z.ZodOptional<z.ZodNumber>;
46
+ testcasesCount: z.ZodNumber;
47
+ createdAt: z.ZodISODateTime;
48
+ }, z.core.$strip>>;
49
+ page: z.ZodNumber;
50
+ maxPage: z.ZodNumber;
51
+ count: z.ZodNumber;
52
+ usersCount: z.ZodNumber;
53
+ }, z.core.$strip>;
54
+ readonly query: z.ZodObject<{
55
+ problemIds: z.ZodOptional<z.ZodString>;
56
+ userIds: z.ZodOptional<z.ZodString>;
57
+ userIdsNin: z.ZodOptional<z.ZodString>;
58
+ languages: z.ZodOptional<z.ZodString>;
59
+ statuses: z.ZodOptional<z.ZodString>;
60
+ createdAtMin: z.ZodOptional<z.ZodISODateTime>;
61
+ createdAtMax: z.ZodOptional<z.ZodISODateTime>;
62
+ sort: z.ZodOptional<z.ZodEnum<{
63
+ "createdAt-asc": "createdAt-asc";
64
+ "createdAt-desc": "createdAt-desc";
65
+ "id-asc": "id-asc";
66
+ "id-desc": "id-desc";
67
+ "userId-asc": "userId-asc";
68
+ "userId-desc": "userId-desc";
69
+ "problemId-asc": "problemId-asc";
70
+ "problemId-desc": "problemId-desc";
71
+ "time-asc": "time-asc";
72
+ "time-desc": "time-desc";
73
+ "memory-asc": "memory-asc";
74
+ "memory-desc": "memory-desc";
75
+ "sourceLength-asc": "sourceLength-asc";
76
+ "sourceLength-desc": "sourceLength-desc";
77
+ }>>;
78
+ page: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
79
+ onePageLength: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
80
+ }, z.core.$strip>;
81
+ };
82
+ readonly getById: {
83
+ readonly prefix: string;
84
+ readonly operation: {
85
+ readonly summary: "제출 정보 조회";
86
+ };
87
+ readonly auth: {
88
+ readonly requiredLevel: 0;
89
+ };
90
+ readonly base: "oj-api";
91
+ readonly method: "get";
92
+ readonly path: (id: string) => string;
93
+ readonly data: z.ZodObject<{
94
+ id: z.ZodString;
95
+ problemId: z.ZodString;
96
+ userId: z.ZodString;
97
+ language: z.ZodEnum<{
98
+ c: "c";
99
+ ruby: "ruby";
100
+ r: "r";
101
+ c11: "c11";
102
+ "c++": "c++";
103
+ "c++11": "c++11";
104
+ "c++14": "c++14";
105
+ "c++17": "c++17";
106
+ python2: "python2";
107
+ python3: "python3";
108
+ pypy3: "pypy3";
109
+ openjdk: "openjdk";
110
+ golang: "golang";
111
+ }>;
112
+ status: z.ZodEnum<{
113
+ output: "output";
114
+ accept: "accept";
115
+ wrong: "wrong";
116
+ time: "time";
117
+ memory: "memory";
118
+ compile: "compile";
119
+ runtime: "runtime";
120
+ server: "server";
121
+ pending: "pending";
122
+ }>;
123
+ statusPercentage: z.ZodNumber;
124
+ createdAt: z.ZodISODateTime;
125
+ updatedAt: z.ZodISODateTime;
126
+ source: z.ZodOptional<z.ZodString>;
127
+ stderr: z.ZodOptional<z.ZodString>;
128
+ sourceLength: z.ZodNumber;
129
+ time: z.ZodOptional<z.ZodNumber>;
130
+ memory: z.ZodOptional<z.ZodNumber>;
131
+ testcases: z.ZodArray<z.ZodObject<{
132
+ id: z.ZodString;
133
+ inputPath: z.ZodString;
134
+ inputVersion: z.ZodString;
135
+ outputPath: z.ZodString;
136
+ outputVersion: z.ZodString;
137
+ time: z.ZodOptional<z.ZodNumber>;
138
+ memory: z.ZodOptional<z.ZodNumber>;
139
+ result: z.ZodEnum<{
140
+ output: "output";
141
+ accept: "accept";
142
+ wrong: "wrong";
143
+ time: "time";
144
+ memory: "memory";
145
+ compile: "compile";
146
+ runtime: "runtime";
147
+ server: "server";
148
+ pending: "pending";
149
+ ignored: "ignored";
150
+ }>;
151
+ }, z.core.$strip>>;
152
+ }, z.core.$strip>;
153
+ };
154
+ readonly getByMe: {
155
+ readonly prefix: string;
156
+ readonly operation: {
157
+ readonly summary: "내 제출 조회";
158
+ };
159
+ readonly auth: {
160
+ readonly requiredLevel: 0;
161
+ };
162
+ readonly base: "oj-api";
163
+ readonly method: "get";
164
+ readonly path: () => string;
165
+ readonly data: z.ZodObject<{
166
+ submits: z.ZodArray<z.ZodObject<{
167
+ id: z.ZodString;
168
+ problemId: z.ZodString;
169
+ status: z.ZodEnum<{
170
+ output: "output";
171
+ accept: "accept";
172
+ wrong: "wrong";
173
+ time: "time";
174
+ memory: "memory";
175
+ compile: "compile";
176
+ runtime: "runtime";
177
+ server: "server";
178
+ pending: "pending";
179
+ }>;
180
+ }, z.core.$strip>>;
181
+ }, z.core.$strip>;
182
+ readonly query: z.ZodObject<{
183
+ problemIds: z.ZodOptional<z.ZodString>;
184
+ isUniqueProblemId: z.ZodOptional<z.ZodCoercedBoolean<unknown>>;
185
+ }, z.core.$strip>;
186
+ };
187
+ readonly post: {
188
+ readonly prefix: string;
189
+ readonly operation: {
190
+ readonly summary: "제출";
191
+ };
192
+ readonly auth: {
193
+ readonly requiredLevel: 1;
194
+ };
195
+ readonly base: "oj-api";
196
+ readonly method: "post";
197
+ readonly path: () => string;
198
+ readonly body: z.ZodObject<{
199
+ problemId: z.ZodString;
200
+ contestId: z.ZodOptional<z.ZodString>;
201
+ source: z.ZodString;
202
+ language: z.ZodEnum<{
203
+ c: "c";
204
+ ruby: "ruby";
205
+ r: "r";
206
+ c11: "c11";
207
+ "c++": "c++";
208
+ "c++11": "c++11";
209
+ "c++14": "c++14";
210
+ "c++17": "c++17";
211
+ python2: "python2";
212
+ python3: "python3";
213
+ pypy3: "pypy3";
214
+ openjdk: "openjdk";
215
+ golang: "golang";
216
+ }>;
217
+ isIgnored: z.ZodOptional<z.ZodBoolean>;
218
+ }, z.core.$strip>;
219
+ readonly data: z.ZodObject<{
220
+ id: z.ZodString;
221
+ }, z.core.$strip>;
222
+ };
223
+ readonly putMigrate: {
224
+ readonly prefix: string;
225
+ readonly operation: {
226
+ readonly summary: "제출 마이그레이션";
227
+ };
228
+ readonly auth: {
229
+ readonly requiredLevel: 5;
230
+ };
231
+ readonly base: "oj-api";
232
+ readonly method: "put";
233
+ readonly path: () => string;
234
+ };
235
+ };
236
+ export default _default;
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const zod_1 = require("zod");
4
+ const contest_atom_1 = require("./contest.atom");
5
+ const problem_atom_1 = require("./problem.atom");
6
+ const submit_atom_1 = require("./submit.atom");
7
+ const user_atom_1 = require("./user.atom");
8
+ const { prefix } = submit_atom_1.submitAtom;
9
+ exports.default = {
10
+ get: {
11
+ prefix,
12
+ operation: {
13
+ summary: '제출 조회',
14
+ },
15
+ base: 'oj-api',
16
+ method: 'get',
17
+ path: () => `/`,
18
+ data: zod_1.z.object({
19
+ submits: zod_1.z.array(zod_1.z.object({
20
+ id: submit_atom_1.submitAtom.id,
21
+ problemId: problem_atom_1.problemAtom.id,
22
+ userId: user_atom_1.userAtom.id,
23
+ language: submit_atom_1.submitAtom.language,
24
+ status: submit_atom_1.submitAtom.status,
25
+ statusPercentage: submit_atom_1.submitAtom.statusPercentage,
26
+ sourceLength: submit_atom_1.submitAtom.sourceLength,
27
+ time: submit_atom_1.submitAtom.time.optional(),
28
+ memory: submit_atom_1.submitAtom.memory.optional(),
29
+ testcasesCount: submit_atom_1.submitAtom.testcasesCount,
30
+ createdAt: submit_atom_1.submitAtom.createdAt,
31
+ })),
32
+ page: zod_1.z.number().int().positive(),
33
+ maxPage: zod_1.z.number().int().positive(),
34
+ count: zod_1.z.number().int().nonnegative(),
35
+ usersCount: zod_1.z.number().int().nonnegative(),
36
+ }),
37
+ query: zod_1.z.object({
38
+ problemIds: zod_1.z.string().trim().optional(),
39
+ userIds: zod_1.z.string().trim().optional(),
40
+ userIdsNin: zod_1.z.string().trim().optional(),
41
+ languages: zod_1.z.string().trim().optional(),
42
+ statuses: zod_1.z.string().trim().optional(),
43
+ createdAtMin: zod_1.z.iso.datetime().optional(),
44
+ createdAtMax: zod_1.z.iso.datetime().optional(),
45
+ sort: zod_1.z
46
+ .enum([
47
+ 'createdAt-asc',
48
+ 'createdAt-desc',
49
+ 'id-asc',
50
+ 'id-desc',
51
+ 'problemId-asc',
52
+ 'problemId-desc',
53
+ 'userId-asc',
54
+ 'userId-desc',
55
+ 'time-asc',
56
+ 'time-desc',
57
+ 'memory-asc',
58
+ 'memory-desc',
59
+ 'sourceLength-asc',
60
+ 'sourceLength-desc',
61
+ ])
62
+ .optional(),
63
+ page: zod_1.z.coerce.number().int().positive().default(1),
64
+ onePageLength: zod_1.z.coerce.number().int().positive().max(200).default(100),
65
+ }),
66
+ },
67
+ getById: {
68
+ prefix,
69
+ operation: {
70
+ summary: '제출 정보 조회',
71
+ },
72
+ auth: {
73
+ requiredLevel: 0,
74
+ },
75
+ base: 'oj-api',
76
+ method: 'get',
77
+ path: (id) => `/byId/${id}`,
78
+ data: zod_1.z.object({
79
+ id: submit_atom_1.submitAtom.id,
80
+ problemId: problem_atom_1.problemAtom.id,
81
+ userId: user_atom_1.userAtom.id,
82
+ language: submit_atom_1.submitAtom.language,
83
+ status: submit_atom_1.submitAtom.status,
84
+ statusPercentage: submit_atom_1.submitAtom.statusPercentage,
85
+ createdAt: submit_atom_1.submitAtom.createdAt,
86
+ updatedAt: submit_atom_1.submitAtom.updatedAt,
87
+ source: submit_atom_1.submitAtom.source.optional(),
88
+ stderr: submit_atom_1.submitAtom.stderr.optional(),
89
+ sourceLength: submit_atom_1.submitAtom.sourceLength,
90
+ time: submit_atom_1.submitAtom.time.optional(),
91
+ memory: submit_atom_1.submitAtom.memory.optional(),
92
+ testcases: zod_1.z.array(zod_1.z.object({
93
+ id: submit_atom_1.submitAtom.testcase.id,
94
+ inputPath: submit_atom_1.submitAtom.testcase.inputPath,
95
+ inputVersion: submit_atom_1.submitAtom.testcase.inputVersion,
96
+ outputPath: submit_atom_1.submitAtom.testcase.outputPath,
97
+ outputVersion: submit_atom_1.submitAtom.testcase.outputVersion,
98
+ time: submit_atom_1.submitAtom.testcase.time.optional(),
99
+ memory: submit_atom_1.submitAtom.testcase.memory.optional(),
100
+ result: submit_atom_1.submitAtom.testcase.result,
101
+ })),
102
+ }),
103
+ },
104
+ getByMe: {
105
+ prefix,
106
+ operation: {
107
+ summary: '내 제출 조회',
108
+ },
109
+ auth: {
110
+ requiredLevel: 0,
111
+ },
112
+ base: 'oj-api',
113
+ method: 'get',
114
+ path: () => `/byMe`,
115
+ data: zod_1.z.object({
116
+ submits: zod_1.z.array(zod_1.z.object({
117
+ id: submit_atom_1.submitAtom.id,
118
+ problemId: problem_atom_1.problemAtom.id,
119
+ status: submit_atom_1.submitAtom.status,
120
+ })),
121
+ }),
122
+ query: zod_1.z.object({
123
+ problemIds: zod_1.z.string().trim().optional(),
124
+ isUniqueProblemId: zod_1.z.coerce.boolean().optional(),
125
+ }),
126
+ },
127
+ post: {
128
+ prefix,
129
+ operation: {
130
+ summary: '제출',
131
+ },
132
+ auth: {
133
+ requiredLevel: 1,
134
+ },
135
+ base: 'oj-api',
136
+ method: 'post',
137
+ path: () => `/`,
138
+ body: zod_1.z.object({
139
+ problemId: problem_atom_1.problemAtom.id,
140
+ contestId: contest_atom_1.contestAtom.id.optional(),
141
+ source: submit_atom_1.submitAtom.source,
142
+ language: submit_atom_1.submitAtom.language,
143
+ isIgnored: submit_atom_1.submitAtom.isIgnored.optional(),
144
+ }),
145
+ data: zod_1.z.object({
146
+ id: submit_atom_1.submitAtom.id,
147
+ }),
148
+ },
149
+ putMigrate: {
150
+ prefix,
151
+ operation: {
152
+ summary: '제출 마이그레이션',
153
+ },
154
+ auth: {
155
+ requiredLevel: 5,
156
+ },
157
+ base: 'oj-api',
158
+ method: 'put',
159
+ path: () => `/migrate`,
160
+ },
161
+ };
162
+ //# sourceMappingURL=submit.endpoint.js.map