@juki-team/commons 0.1.31
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/README.md +3 -0
- package/biome.shared.json +102 -0
- package/dist/constants/commons.d.ts +62 -0
- package/dist/constants/commons.js +658 -0
- package/dist/constants/company.d.ts +9 -0
- package/dist/constants/company.js +24 -0
- package/dist/constants/contest.d.ts +15 -0
- package/dist/constants/contest.js +29 -0
- package/dist/constants/course.d.ts +8 -0
- package/dist/constants/course.js +12 -0
- package/dist/constants/date.d.ts +9 -0
- package/dist/constants/date.js +23 -0
- package/dist/constants/email.d.ts +2 -0
- package/dist/constants/email.js +34 -0
- package/dist/constants/entity.d.ts +3 -0
- package/dist/constants/entity.js +18 -0
- package/dist/constants/file.d.ts +28 -0
- package/dist/constants/file.js +46 -0
- package/dist/constants/index.d.ts +18 -0
- package/dist/constants/index.js +18 -0
- package/dist/constants/judge.d.ts +37 -0
- package/dist/constants/judge.js +221 -0
- package/dist/constants/problem.d.ts +37 -0
- package/dist/constants/problem.js +72 -0
- package/dist/constants/routing.d.ts +7 -0
- package/dist/constants/routing.js +7 -0
- package/dist/constants/services.d.ts +5 -0
- package/dist/constants/services.js +131 -0
- package/dist/constants/system.d.ts +8 -0
- package/dist/constants/system.js +9 -0
- package/dist/constants/teams.d.ts +15 -0
- package/dist/constants/teams.js +18 -0
- package/dist/constants/time.d.ts +9 -0
- package/dist/constants/time.js +9 -0
- package/dist/constants/user.d.ts +10 -0
- package/dist/constants/user.js +35 -0
- package/dist/constants/websocket.d.ts +6 -0
- package/dist/constants/websocket.js +5 -0
- package/dist/constants/worksheet.d.ts +11 -0
- package/dist/constants/worksheet.js +66 -0
- package/dist/dto/class.d.ts +115 -0
- package/dist/dto/class.js +1 -0
- package/dist/dto/code.d.ts +13 -0
- package/dist/dto/code.js +1 -0
- package/dist/dto/comments.d.ts +21 -0
- package/dist/dto/comments.js +1 -0
- package/dist/dto/contest.d.ts +95 -0
- package/dist/dto/contest.js +7 -0
- package/dist/dto/course.d.ts +34 -0
- package/dist/dto/course.js +1 -0
- package/dist/dto/entity.d.ts +92 -0
- package/dist/dto/entity.js +5 -0
- package/dist/dto/excalidraw.d.ts +12 -0
- package/dist/dto/excalidraw.js +1 -0
- package/dist/dto/file.d.ts +34 -0
- package/dist/dto/file.js +1 -0
- package/dist/dto/image.d.ts +6 -0
- package/dist/dto/image.js +1 -0
- package/dist/dto/index.d.ts +24 -0
- package/dist/dto/index.js +24 -0
- package/dist/dto/judge.d.ts +16 -0
- package/dist/dto/judge.js +1 -0
- package/dist/dto/markdown.d.ts +12 -0
- package/dist/dto/markdown.js +1 -0
- package/dist/dto/mermaid.d.ts +12 -0
- package/dist/dto/mermaid.js +1 -0
- package/dist/dto/organization.d.ts +102 -0
- package/dist/dto/organization.js +1 -0
- package/dist/dto/problem.d.ts +67 -0
- package/dist/dto/problem.js +1 -0
- package/dist/dto/scoreboard.d.ts +35 -0
- package/dist/dto/scoreboard.js +1 -0
- package/dist/dto/session.d.ts +15 -0
- package/dist/dto/session.js +1 -0
- package/dist/dto/socket.d.ts +257 -0
- package/dist/dto/socket.js +1 -0
- package/dist/dto/statistics.d.ts +43 -0
- package/dist/dto/statistics.js +1 -0
- package/dist/dto/submission.d.ts +95 -0
- package/dist/dto/submission.js +1 -0
- package/dist/dto/system.d.ts +91 -0
- package/dist/dto/system.js +1 -0
- package/dist/dto/url.d.ts +8 -0
- package/dist/dto/url.js +1 -0
- package/dist/dto/user.d.ts +109 -0
- package/dist/dto/user.js +1 -0
- package/dist/dto/virtual-user.d.ts +39 -0
- package/dist/dto/virtual-user.js +1 -0
- package/dist/dto/worksheet-submissions.d.ts +64 -0
- package/dist/dto/worksheet-submissions.js +1 -0
- package/dist/dto/worksheet.d.ts +39 -0
- package/dist/dto/worksheet.js +1 -0
- package/dist/helpers/class.d.ts +4 -0
- package/dist/helpers/class.js +10 -0
- package/dist/helpers/comments.d.ts +4 -0
- package/dist/helpers/comments.js +4 -0
- package/dist/helpers/commons.d.ts +33 -0
- package/dist/helpers/commons.js +191 -0
- package/dist/helpers/contest.d.ts +5 -0
- package/dist/helpers/contest.js +21 -0
- package/dist/helpers/document.d.ts +14 -0
- package/dist/helpers/document.js +38 -0
- package/dist/helpers/file.d.ts +1 -0
- package/dist/helpers/file.js +4 -0
- package/dist/helpers/index.d.ts +14 -0
- package/dist/helpers/index.js +14 -0
- package/dist/helpers/interval.d.ts +2 -0
- package/dist/helpers/interval.js +22 -0
- package/dist/helpers/judging.d.ts +25 -0
- package/dist/helpers/judging.js +107 -0
- package/dist/helpers/object.d.ts +1 -0
- package/dist/helpers/object.js +32 -0
- package/dist/helpers/responses.d.ts +8 -0
- package/dist/helpers/responses.js +78 -0
- package/dist/helpers/socket.d.ts +45 -0
- package/dist/helpers/socket.js +238 -0
- package/dist/helpers/time.d.ts +13 -0
- package/dist/helpers/time.js +101 -0
- package/dist/helpers/user.d.ts +11 -0
- package/dist/helpers/user.js +14 -0
- package/dist/helpers/worksheet.d.ts +10 -0
- package/dist/helpers/worksheet.js +131 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +6 -0
- package/dist/prisma/enums/AssignmentClassType.d.ts +7 -0
- package/dist/prisma/enums/AssignmentClassType.js +6 -0
- package/dist/prisma/enums/ContestEventAction.d.ts +10 -0
- package/dist/prisma/enums/ContestEventAction.js +9 -0
- package/dist/prisma/enums/ContestProblemPrerequisiteType.d.ts +5 -0
- package/dist/prisma/enums/ContestProblemPrerequisiteType.js +4 -0
- package/dist/prisma/enums/ContestRole.d.ts +11 -0
- package/dist/prisma/enums/ContestRole.js +10 -0
- package/dist/prisma/enums/ContestStatus.d.ts +6 -0
- package/dist/prisma/enums/ContestStatus.js +5 -0
- package/dist/prisma/enums/CourseRole.d.ts +12 -0
- package/dist/prisma/enums/CourseRole.js +11 -0
- package/dist/prisma/enums/EntityObjectType.d.ts +13 -0
- package/dist/prisma/enums/EntityObjectType.js +12 -0
- package/dist/prisma/enums/EntityRole.d.ts +8 -0
- package/dist/prisma/enums/EntityRole.js +7 -0
- package/dist/prisma/enums/EntitySubjectType.d.ts +7 -0
- package/dist/prisma/enums/EntitySubjectType.js +6 -0
- package/dist/prisma/enums/FileRole.d.ts +9 -0
- package/dist/prisma/enums/FileRole.js +8 -0
- package/dist/prisma/enums/FileType.d.ts +5 -0
- package/dist/prisma/enums/FileType.js +4 -0
- package/dist/prisma/enums/GroupType.d.ts +5 -0
- package/dist/prisma/enums/GroupType.js +4 -0
- package/dist/prisma/enums/JudgeType.d.ts +12 -0
- package/dist/prisma/enums/JudgeType.js +11 -0
- package/dist/prisma/enums/OrganizationPlan.d.ts +7 -0
- package/dist/prisma/enums/OrganizationPlan.js +6 -0
- package/dist/prisma/enums/ProblemRole.d.ts +11 -0
- package/dist/prisma/enums/ProblemRole.js +10 -0
- package/dist/prisma/enums/ProblemScoringMode.d.ts +6 -0
- package/dist/prisma/enums/ProblemScoringMode.js +5 -0
- package/dist/prisma/enums/ProblemType.d.ts +6 -0
- package/dist/prisma/enums/ProblemType.js +5 -0
- package/dist/prisma/enums/ProblemVerdict.d.ts +14 -0
- package/dist/prisma/enums/ProblemVerdict.js +13 -0
- package/dist/prisma/enums/ShareLinkVisibility.d.ts +5 -0
- package/dist/prisma/enums/ShareLinkVisibility.js +4 -0
- package/dist/prisma/enums/SubmissionRunStatus.d.ts +18 -0
- package/dist/prisma/enums/SubmissionRunStatus.js +17 -0
- package/dist/prisma/enums/SystemRole.d.ts +9 -0
- package/dist/prisma/enums/SystemRole.js +8 -0
- package/dist/prisma/enums/TeamRole.d.ts +9 -0
- package/dist/prisma/enums/TeamRole.js +8 -0
- package/dist/prisma/enums/TelemetryType.d.ts +9 -0
- package/dist/prisma/enums/TelemetryType.js +8 -0
- package/dist/prisma/enums/UserRole.d.ts +10 -0
- package/dist/prisma/enums/UserRole.js +9 -0
- package/dist/prisma/enums/WorkingIn.d.ts +8 -0
- package/dist/prisma/enums/WorkingIn.js +7 -0
- package/dist/prisma/enums/WorksheetContentType.d.ts +10 -0
- package/dist/prisma/enums/WorksheetContentType.js +9 -0
- package/dist/prisma/enums/index.d.ts +26 -0
- package/dist/prisma/enums/index.js +26 -0
- package/dist/prototypes/Date.d.ts +62 -0
- package/dist/prototypes/Date.js +218 -0
- package/dist/prototypes/Error.d.ts +10 -0
- package/dist/prototypes/Error.js +17 -0
- package/dist/prototypes/Number.d.ts +7 -0
- package/dist/prototypes/Number.js +8 -0
- package/dist/prototypes/index.d.ts +3 -0
- package/dist/prototypes/index.js +3 -0
- package/dist/types/account.d.ts +9 -0
- package/dist/types/account.js +10 -0
- package/dist/types/class.d.ts +67 -0
- package/dist/types/class.js +7 -0
- package/dist/types/comments.d.ts +17 -0
- package/dist/types/comments.js +1 -0
- package/dist/types/commons.d.ts +84 -0
- package/dist/types/commons.js +69 -0
- package/dist/types/company.d.ts +6 -0
- package/dist/types/company.js +7 -0
- package/dist/types/contest.d.ts +144 -0
- package/dist/types/contest.js +6 -0
- package/dist/types/course.d.ts +13 -0
- package/dist/types/course.js +1 -0
- package/dist/types/entity.d.ts +116 -0
- package/dist/types/entity.js +50 -0
- package/dist/types/excalidraw.d.ts +9 -0
- package/dist/types/excalidraw.js +1 -0
- package/dist/types/file.d.ts +22 -0
- package/dist/types/file.js +13 -0
- package/dist/types/group.d.ts +9 -0
- package/dist/types/group.js +1 -0
- package/dist/types/index.d.ts +23 -0
- package/dist/types/index.js +23 -0
- package/dist/types/judge.d.ts +46 -0
- package/dist/types/judge.js +17 -0
- package/dist/types/markdown.d.ts +8 -0
- package/dist/types/markdown.js +1 -0
- package/dist/types/mermaid.d.ts +8 -0
- package/dist/types/mermaid.js +1 -0
- package/dist/types/notification.d.ts +7 -0
- package/dist/types/notification.js +8 -0
- package/dist/types/problems.d.ts +93 -0
- package/dist/types/problems.js +16 -0
- package/dist/types/services.d.ts +214 -0
- package/dist/types/services.js +147 -0
- package/dist/types/sheet.d.ts +104 -0
- package/dist/types/sheet.js +16 -0
- package/dist/types/socket.d.ts +49 -0
- package/dist/types/socket.js +49 -0
- package/dist/types/submission.d.ts +5 -0
- package/dist/types/submission.js +1 -0
- package/dist/types/teams.d.ts +96 -0
- package/dist/types/teams.js +28 -0
- package/dist/types/users.d.ts +65 -0
- package/dist/types/users.js +33 -0
- package/dist/types/worksheet.d.ts +42 -0
- package/dist/types/worksheet.js +11 -0
- package/package.json +42 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import type { ProblemScoringMode, ProblemType } from '../prisma/enums/index.js';
|
|
2
|
+
import type { CodeLanguage, TextLanguage } from './commons.js';
|
|
3
|
+
import type { EntityMembers } from './entity.js';
|
|
4
|
+
import type { ProblemTestCase } from './services.js';
|
|
5
|
+
export interface TestCase {
|
|
6
|
+
id: string;
|
|
7
|
+
group: number;
|
|
8
|
+
input: boolean;
|
|
9
|
+
output: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare enum TypeTestCase {
|
|
12
|
+
INPUT = "INPUT",
|
|
13
|
+
OUTPUT = "OUTPUT"
|
|
14
|
+
}
|
|
15
|
+
export declare enum ProblemInput {
|
|
16
|
+
STANDARD = "STANDARD",
|
|
17
|
+
INTERACTIVE = "INTERACTIVE"
|
|
18
|
+
}
|
|
19
|
+
export declare enum ProblemOutput {
|
|
20
|
+
STANDARD = "STANDARD",
|
|
21
|
+
DYNAMIC = "DYNAMIC",
|
|
22
|
+
INTERACTIVE = "INTERACTIVE"
|
|
23
|
+
}
|
|
24
|
+
export type ProblemSettingsPointsByGroups = {
|
|
25
|
+
[key: number]: {
|
|
26
|
+
points: number;
|
|
27
|
+
partial: number;
|
|
28
|
+
group: number;
|
|
29
|
+
description: TextLanguage;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export type ProblemSettingsByProgrammingLanguage = {
|
|
33
|
+
[key: string]: {
|
|
34
|
+
language: CodeLanguage;
|
|
35
|
+
timeLimit: number;
|
|
36
|
+
memoryLimit: number;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
export type ProblemSampleCases = {
|
|
40
|
+
input: string;
|
|
41
|
+
output: string;
|
|
42
|
+
}[];
|
|
43
|
+
export type ProblemStatement = {
|
|
44
|
+
description: TextLanguage;
|
|
45
|
+
input: TextLanguage;
|
|
46
|
+
output: TextLanguage;
|
|
47
|
+
sampleCases: ProblemSampleCases;
|
|
48
|
+
note: TextLanguage;
|
|
49
|
+
html: TextLanguage;
|
|
50
|
+
pdfUrl: TextLanguage;
|
|
51
|
+
};
|
|
52
|
+
export type ProblemSettings = {
|
|
53
|
+
timeLimit: number;
|
|
54
|
+
memoryLimit: number;
|
|
55
|
+
withPE: boolean;
|
|
56
|
+
type: ProblemType;
|
|
57
|
+
scoringMode: ProblemScoringMode;
|
|
58
|
+
byProgrammingLanguage: ProblemSettingsByProgrammingLanguage;
|
|
59
|
+
evaluatorSource: string;
|
|
60
|
+
pointsByGroups: ProblemSettingsPointsByGroups;
|
|
61
|
+
};
|
|
62
|
+
export type ProblemUser = {
|
|
63
|
+
isOwner: boolean;
|
|
64
|
+
isAdministrator: boolean;
|
|
65
|
+
isManager: boolean;
|
|
66
|
+
isSpectator: boolean;
|
|
67
|
+
solved: boolean;
|
|
68
|
+
tried: boolean;
|
|
69
|
+
};
|
|
70
|
+
export interface ProblemBaseDocument {
|
|
71
|
+
name: string;
|
|
72
|
+
shortname: string;
|
|
73
|
+
author: string;
|
|
74
|
+
settings: ProblemSettings;
|
|
75
|
+
tags: string[];
|
|
76
|
+
statement: ProblemStatement;
|
|
77
|
+
editorial: TextLanguage;
|
|
78
|
+
judgeId: string;
|
|
79
|
+
key: string;
|
|
80
|
+
testCases: ProblemTestCase[];
|
|
81
|
+
testCasesUpdatedAtTimestamp: number;
|
|
82
|
+
members: EntityMembers;
|
|
83
|
+
costs: {
|
|
84
|
+
unlockEditorial: number;
|
|
85
|
+
unlockHint: number;
|
|
86
|
+
viewTestCases: number;
|
|
87
|
+
};
|
|
88
|
+
rewardJukiCoins: {
|
|
89
|
+
forSolving: number;
|
|
90
|
+
forSolvingFirstTry: number;
|
|
91
|
+
forSolvingInAnExtraLanguage: number;
|
|
92
|
+
};
|
|
93
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export var TypeTestCase;
|
|
2
|
+
(function (TypeTestCase) {
|
|
3
|
+
TypeTestCase["INPUT"] = "INPUT";
|
|
4
|
+
TypeTestCase["OUTPUT"] = "OUTPUT";
|
|
5
|
+
})(TypeTestCase || (TypeTestCase = {}));
|
|
6
|
+
export var ProblemInput;
|
|
7
|
+
(function (ProblemInput) {
|
|
8
|
+
ProblemInput["STANDARD"] = "STANDARD";
|
|
9
|
+
ProblemInput["INTERACTIVE"] = "INTERACTIVE";
|
|
10
|
+
})(ProblemInput || (ProblemInput = {}));
|
|
11
|
+
export var ProblemOutput;
|
|
12
|
+
(function (ProblemOutput) {
|
|
13
|
+
ProblemOutput["STANDARD"] = "STANDARD";
|
|
14
|
+
ProblemOutput["DYNAMIC"] = "DYNAMIC";
|
|
15
|
+
ProblemOutput["INTERACTIVE"] = "INTERACTIVE";
|
|
16
|
+
})(ProblemOutput || (ProblemOutput = {}));
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import type { CodeLanguage } from './commons.js';
|
|
2
|
+
export declare enum ErrorCode {
|
|
3
|
+
BAD_REQUEST = "BAD_REQUEST",
|
|
4
|
+
UNAUTHORIZED = "UNAUTHORIZED",
|
|
5
|
+
FORBIDDEN = "FORBIDDEN",
|
|
6
|
+
NOT_FOUND = "NOT_FOUND",
|
|
7
|
+
METHOD_NOT_ALLOWED = "METHOD_NOT_ALLOWED",
|
|
8
|
+
INTERNAL_SERVER_ERROR = "INTERNAL_SERVER_ERROR",
|
|
9
|
+
ABORTED_REQUEST = "ABORTED_REQUEST",
|
|
10
|
+
ERROR_ON_RESPONSE = "ERROR_ON_RESPONSE",
|
|
11
|
+
SERVICE_NOT_FOUND = "SERVICE_NOT_FOUND",
|
|
12
|
+
INTERNAL_SERVER_ERROR_ON_COMPANY_SERVICE = "INTERNAL_SERVER_ERROR_ON_COMPANY_SERVICE",
|
|
13
|
+
COMPANY_NOT_CREATED = "COMPANY_NOT_CREATED",
|
|
14
|
+
COMPANY_NOT_FOUND = "COMPANY_NOT_FOUND",
|
|
15
|
+
COMPANY_NOT_UPDATED = "COMPANY_NOT_UPDATED",
|
|
16
|
+
COMPANY_NOT_DELETED = "COMPANY_NOT_DELETED",
|
|
17
|
+
NOT_ALLOWED_TO_CREATE_THE_COMPANY = "NOT_ALLOWED_TO_CREATE_THE_COMPANY",
|
|
18
|
+
NOT_ALLOWED_TO_VIEW_THE_COMPANY = "NOT_ALLOWED_TO_VIEW_THE_COMPANY",
|
|
19
|
+
NOT_ALLOWED_TO_UPDATE_THE_COMPANY = "NOT_ALLOWED_TO_UPDATE_THE_COMPANY",
|
|
20
|
+
NOT_ALLOWED_TO_DELETE_THE_COMPANY = "NOT_ALLOWED_TO_DELETE_THE_COMPANY",
|
|
21
|
+
INTERNAL_SERVER_ERROR_ON_USERS_SERVICE = "INTERNAL_SERVER_ERROR_ON_USERS_SERVICE",
|
|
22
|
+
USER_NOT_CREATED = "USER_NOT_CREATED",
|
|
23
|
+
USER_NOT_FOUND = "USER_NOT_FOUND",
|
|
24
|
+
USER_NOT_UPDATED = "USER_NOT_UPDATED",
|
|
25
|
+
USER_NOT_DELETED = "USER_NOT_DELETED",
|
|
26
|
+
NOT_ALLOWED_TO_CREATE_THE_USER = "NOT_ALLOWED_TO_CREATE_THE_USER",
|
|
27
|
+
NOT_ALLOWED_TO_VIEW_THE_USER = "NOT_ALLOWED_TO_VIEW_THE_USER",
|
|
28
|
+
NOT_ALLOWED_TO_UPDATE_THE_USER = "NOT_ALLOWED_TO_UPDATE_THE_USER",
|
|
29
|
+
NOT_ALLOWED_TO_DELETE_THE_USER = "NOT_ALLOWED_TO_DELETE_THE_USER",
|
|
30
|
+
USER_IS_REPORTED = "USER_IS_REPORTED",
|
|
31
|
+
USER_IS_ARCHIVED = "USER_IS_ARCHIVED",
|
|
32
|
+
USER_WITH_EMAIL_REQUESTED_NOT_FOUND = "USER_WITH_EMAIL_REQUESTED_NOT_FOUND",
|
|
33
|
+
USER_WITH_NICKNAME_REQUESTED_NOT_FOUND = "USER_WITH_NICKNAME_REQUESTED_NOT_FOUND",
|
|
34
|
+
THE_EMAIL_IS_ALREADY_REGISTERED = "THE_EMAIL_IS_ALREADY_REGISTERED",
|
|
35
|
+
THE_NICKNAME_IS_ALREADY_TAKEN = "THE_NICKNAME_IS_ALREADY_TAKEN",
|
|
36
|
+
INCORRECT_PASSWORD = "INCORRECT_PASSWORD",
|
|
37
|
+
USER_SESSION_NOT_CREATED = "USER_SESSION_NOT_CREATED",
|
|
38
|
+
USER_SESSION_NOT_FOUND = "USER_SESSION_NOT_FOUND",
|
|
39
|
+
USER_SESSION_NOT_UPDATED = "USER_SESSION_NOT_UPDATED",
|
|
40
|
+
USER_SESSION_NOT_DELETED = "USER_SESSION_NOT_DELETED",
|
|
41
|
+
INTERNAL_SERVER_ERROR_ON_PROBLEMS_SERVICE = "INTERNAL_SERVER_ERROR_ON_PROBLEMS_SERVICE",
|
|
42
|
+
PROBLEM_NOT_CREATED = "PROBLEM_NOT_CREATED",
|
|
43
|
+
PROBLEM_NOT_FOUND = "PROBLEM_NOT_FOUND",
|
|
44
|
+
PROBLEM_NOT_UPDATED = "PROBLEM_NOT_UPDATED",
|
|
45
|
+
PROBLEM_NOT_DELETED = "PROBLEM_NOT_DELETED",
|
|
46
|
+
NOT_ALLOWED_TO_CREATE_THE_PROBLEM = "NOT_ALLOWED_TO_CREATE_THE_PROBLEM",
|
|
47
|
+
NOT_ALLOWED_TO_VIEW_THE_PROBLEM = "NOT_ALLOWED_TO_VIEW_THE_PROBLEM",
|
|
48
|
+
NOT_ALLOWED_TO_UPDATE_THE_PROBLEM = "NOT_ALLOWED_TO_UPDATE_THE_PROBLEM",
|
|
49
|
+
NOT_ALLOWED_TO_DELETE_THE_PROBLEM = "NOT_ALLOWED_TO_DELETE_THE_PROBLEM",
|
|
50
|
+
PROBLEM_MODE_NOT_SUPPORTED = "PROBLEM_MODE_NOT_SUPPORTED",
|
|
51
|
+
PROBLEM_TYPE_NOT_SUPPORTED = "PROBLEM_TYPE_NOT_SUPPORTED",
|
|
52
|
+
PROBLEM_TIME_LIMIT_MUST_BE_A_NUMBER = "PROBLEM_TIME_LIMIT_MUST_BE_A_NUMBER",
|
|
53
|
+
PROBLEM_MEMORY_LIMIT_MUST_BE_NUMBER = "PROBLEM_MEMORY_LIMIT_MUST_BE_NUMBER",
|
|
54
|
+
TEST_CASE_FILE_EMPTY = "TEST_CASE_FILE_EMPTY",
|
|
55
|
+
INTERNAL_SERVER_ERROR_ON_CONTESTS_SERVICE = "INTERNAL_SERVER_ERROR_ON_CONTESTS_SERVICE",
|
|
56
|
+
CONTEST_NOT_CREATED = "CONTEST_NOT_CREATED",
|
|
57
|
+
CONTEST_NOT_FOUND = "CONTEST_NOT_FOUND",
|
|
58
|
+
CONTEST_NOT_UPDATED = "CONTEST_NOT_UPDATED",
|
|
59
|
+
CONTEST_NOT_DELETED = "CONTEST_NOT_DELETED",
|
|
60
|
+
NOT_ALLOWED_TO_CREATE_THE_CONTEST = "NOT_ALLOWED_TO_CREATE_THE_CONTEST",
|
|
61
|
+
NOT_ALLOWED_TO_VIEW_THE_CONTEST = "NOT_ALLOWED_TO_VIEW_THE_CONTEST",
|
|
62
|
+
NOT_ALLOWED_TO_UPDATE_THE_CONTEST = "NOT_ALLOWED_TO_UPDATE_THE_CONTEST",
|
|
63
|
+
NOT_ALLOWED_TO_DELETE_THE_CONTEST = "NOT_ALLOWED_TO_DELETE_THE_CONTEST",
|
|
64
|
+
NOT_ALLOWED_TO_REGISTER_TO_THE_CONTEST = "NOT_ALLOWED_TO_REGISTER_TO_THE_CONTEST",
|
|
65
|
+
IS_ALREADY_REGISTERED = "IS_ALREADY_REGISTERED",
|
|
66
|
+
NOT_ALLOWED_TO_VIEW_CONTESTS = "NOT_ALLOWED_TO_VIEW_CONTESTS",
|
|
67
|
+
SCOREBOARD_NOT_CREATED = "SCOREBOARD_NOT_CREATED",
|
|
68
|
+
SCOREBOARD_NOT_FOUND = "SCOREBOARD_NOT_FOUND",
|
|
69
|
+
SCOREBOARD_NOT_UPDATED = "SCOREBOARD_NOT_UPDATED",
|
|
70
|
+
SCOREBOARD_NOT_DELETED = "SCOREBOARD_NOT_DELETED",
|
|
71
|
+
NOT_ALLOWED_TO_CREATE_THE_SCOREBOARD = "NOT_ALLOWED_TO_CREATE_THE_SCOREBOARD",
|
|
72
|
+
NOT_ALLOWED_TO_VIEW_THE_SCOREBOARD = "NOT_ALLOWED_TO_VIEW_THE_SCOREBOARD",
|
|
73
|
+
NOT_ALLOWED_TO_UPDATE_THE_SCOREBOARD = "NOT_ALLOWED_TO_UPDATE_THE_SCOREBOARD",
|
|
74
|
+
NOT_ALLOWED_TO_DELETE_THE_SCOREBOARD = "NOT_ALLOWED_TO_DELETE_THE_SCOREBOARD",
|
|
75
|
+
CLARIFICATION_NOT_CREATED = "CLARIFICATION_NOT_CREATED",
|
|
76
|
+
CLARIFICATION_NOT_FOUND = "CLARIFICATION_NOT_FOUND",
|
|
77
|
+
CLARIFICATION_NOT_UPDATED = "CLARIFICATION_NOT_UPDATED",
|
|
78
|
+
CLARIFICATION_NOT_DELETED = "CLARIFICATION_NOT_DELETED",
|
|
79
|
+
NOT_ALLOWED_TO_SUBMIT_CLARIFICATION = "NOT_ALLOWED_TO_SUBMIT_CLARIFICATION",
|
|
80
|
+
NOT_ALLOWED_TO_VIEW_CLARIFICATION = "NOT_ALLOWED_TO_VIEW_CLARIFICATION",
|
|
81
|
+
NOT_ALLOWED_TO_UPDATE_CLARIFICATION = "NOT_ALLOWED_TO_UPDATE_CLARIFICATION",
|
|
82
|
+
NOT_ALLOWED_TO_DELETE_CLARIFICATION = "NOT_ALLOWED_TO_DELETE_CLARIFICATION",
|
|
83
|
+
INTERNAL_SERVER_ERROR_ON_SUBMISSIONS_SERVICE = "INTERNAL_SERVER_ERROR_ON_SUBMISSIONS_SERVICE",
|
|
84
|
+
SUBMISSION_NOT_FOUND = "SUBMISSION_NOT_FOUND",
|
|
85
|
+
SUBMISSION_NOT_CREATED = "SUBMISSION_NOT_CREATED",
|
|
86
|
+
SUBMISSION_NOT_UPDATED = "SUBMISSION_NOT_UPDATED",
|
|
87
|
+
SOURCE_EMPTY = "SOURCE_EMPTY",
|
|
88
|
+
PROGRAMMING_LANGUAGE_NOT_SUPPORTED = "PROGRAMMING_LANGUAGE_NOT_SUPPORTED",
|
|
89
|
+
NOT_ALLOWED_SUBMIT_THE_PROBLEM_IN_THE_CONTEST = "NOT_ALLOWED_SUBMIT_THE_PROBLEM_IN_THE_CONTEST",
|
|
90
|
+
JUDGEMENT_UNAVAILABLE = "JUDGEMENT_UNAVAILABLE",
|
|
91
|
+
INTERNAL_SERVER_ERROR_ON_UTILS_SERVICES = "INTERNAL_SERVER_ERROR_ON_UTILS_SERVICES",
|
|
92
|
+
EMPTY_IMAGE = "EMPTY_IMAGE",
|
|
93
|
+
CODES_ERROR = "CODES_ERROR",
|
|
94
|
+
COMPILATION_FAILED = "COMPILATION_FAILED",
|
|
95
|
+
FILES_ERROR = "FILES_ERROR",
|
|
96
|
+
THE_EMAIL_COULD_NOT_BE_SENT = "THE_EMAIL_COULD_NOT_BE_SENT",
|
|
97
|
+
INTERNAL_SERVER_ERROR_ON_TEAMS_SERVICE = "INTERNAL_SERVER_ERROR_ON_TEAMS_SERVICE",
|
|
98
|
+
TEAM_NOT_CREATED = "TEAM_NOT_CREATED",
|
|
99
|
+
TEAM_NOT_FOUND = "TEAM_NOT_FOUND",
|
|
100
|
+
TEAM_NOT_UPDATED = "TEAM_NOT_UPDATED",
|
|
101
|
+
TEAM_NOT_DELETED = "TEAM_NOT_DELETED",
|
|
102
|
+
NOT_ALLOWED_TO_CREATE_THE_TEAM = "NOT_ALLOWED_TO_CREATE_THE_TEAM",
|
|
103
|
+
NOT_ALLOWED_TO_VIEW_THE_TEAM = "NOT_ALLOWED_TO_VIEW_THE_TEAM",
|
|
104
|
+
NOT_ALLOWED_TO_UPDATE_THE_TEAM = "NOT_ALLOWED_TO_UPDATE_THE_TEAM",
|
|
105
|
+
NOT_ALLOWED_TO_DELETE_THE_TEAM = "NOT_ALLOWED_TO_DELETE_THE_TEAM",
|
|
106
|
+
TEAM_IS_REPORTED = "TEAM_IS_REPORTED",
|
|
107
|
+
TEAM_IS_ARCHIVED = "TEAM_IS_ARCHIVED",
|
|
108
|
+
INTERNAL_SERVER_ERROR_ON_FILES_SERVICE = "INTERNAL_SERVER_ERROR_ON_FILES_SERVICE",
|
|
109
|
+
FILE_NOT_CREATED = "FILE_NOT_CREATED",
|
|
110
|
+
FILE_NOT_FOUND = "FILE_NOT_FOUND",
|
|
111
|
+
FILE_NOT_UPDATED = "FILE_NOT_UPDATED",
|
|
112
|
+
FILE_NOT_DELETED = "FILE_NOT_DELETED",
|
|
113
|
+
NOT_ALLOWED_TO_CREATE_THE_FILE = "NOT_ALLOWED_TO_CREATE_THE_FILE",
|
|
114
|
+
NOT_ALLOWED_TO_VIEW_THE_FILE = "NOT_ALLOWED_TO_VIEW_THE_FILE",
|
|
115
|
+
NOT_ALLOWED_TO_UPDATE_THE_FILE = "NOT_ALLOWED_TO_UPDATE_THE_FILE",
|
|
116
|
+
NOT_ALLOWED_TO_DELETE_THE_FILE = "NOT_ALLOWED_TO_DELETE_THE_FILE",
|
|
117
|
+
FILE_IS_RESERVED = "FILE_IS_RESERVED",
|
|
118
|
+
FILE_IS_PRIVATE = "FILE_IS_PRIVATE",
|
|
119
|
+
FILE_IS_ARCHIVED = "FILE_IS_ARCHIVED"
|
|
120
|
+
}
|
|
121
|
+
export type ApiError = {
|
|
122
|
+
code: ErrorCode;
|
|
123
|
+
detail: string;
|
|
124
|
+
message: string;
|
|
125
|
+
};
|
|
126
|
+
export type ErrorResponse = {
|
|
127
|
+
success: false;
|
|
128
|
+
message: string;
|
|
129
|
+
errors: ApiError[];
|
|
130
|
+
};
|
|
131
|
+
export type ContentResponse<T> = {
|
|
132
|
+
success: true;
|
|
133
|
+
message: string;
|
|
134
|
+
content: T;
|
|
135
|
+
};
|
|
136
|
+
export type ContentsMeta = {
|
|
137
|
+
page: number;
|
|
138
|
+
size: number;
|
|
139
|
+
total: number;
|
|
140
|
+
sort: {
|
|
141
|
+
field: string;
|
|
142
|
+
order: 'asc' | 'desc';
|
|
143
|
+
}[];
|
|
144
|
+
filter: Record<string, unknown>;
|
|
145
|
+
};
|
|
146
|
+
export type ContentsResponse<T> = {
|
|
147
|
+
success: true;
|
|
148
|
+
message: string;
|
|
149
|
+
contents: T[];
|
|
150
|
+
meta: ContentsMeta;
|
|
151
|
+
};
|
|
152
|
+
export declare enum LogLevel {
|
|
153
|
+
FATAL = "FATAL",
|
|
154
|
+
ERROR = "ERROR",
|
|
155
|
+
WARN = "WARN",
|
|
156
|
+
INFO = "INFO",
|
|
157
|
+
DEBUG = "DEBUG",
|
|
158
|
+
TRACE = "TRACE"
|
|
159
|
+
}
|
|
160
|
+
export declare enum HTTPMethod {
|
|
161
|
+
POST = "POST",
|
|
162
|
+
GET = "GET",
|
|
163
|
+
PUT = "PUT",
|
|
164
|
+
PATCH = "PATCH",
|
|
165
|
+
DELETE = "DELETE"
|
|
166
|
+
}
|
|
167
|
+
export type RunnerNextRequest = {
|
|
168
|
+
type: 'request';
|
|
169
|
+
body: string;
|
|
170
|
+
method: HTTPMethod;
|
|
171
|
+
url: string;
|
|
172
|
+
};
|
|
173
|
+
export type RunnerNextQueue = {
|
|
174
|
+
type: 'queue';
|
|
175
|
+
messageBody: string;
|
|
176
|
+
messageGroupId: string;
|
|
177
|
+
messageDeduplicationId: string;
|
|
178
|
+
};
|
|
179
|
+
export type RunnerNext = RunnerNextRequest | RunnerNextQueue;
|
|
180
|
+
export type RunCommand = {
|
|
181
|
+
commandLine: string;
|
|
182
|
+
inputFilePath: string;
|
|
183
|
+
outputFilePath: string;
|
|
184
|
+
errorFilePath: string;
|
|
185
|
+
logFilePath: string;
|
|
186
|
+
folderPath: string;
|
|
187
|
+
timeLimit: number;
|
|
188
|
+
memoryLimit: number;
|
|
189
|
+
lockFilePath?: string;
|
|
190
|
+
endFilePath?: string;
|
|
191
|
+
rawExecution: boolean;
|
|
192
|
+
isolated: boolean;
|
|
193
|
+
next?: RunnerNext;
|
|
194
|
+
};
|
|
195
|
+
export type RunnerSQSMessageBody = {
|
|
196
|
+
executions: RunCommand[];
|
|
197
|
+
next?: RunnerNext;
|
|
198
|
+
};
|
|
199
|
+
export type Case = {
|
|
200
|
+
caseKey: string;
|
|
201
|
+
groups: number[];
|
|
202
|
+
};
|
|
203
|
+
export type ProblemTestCase = {
|
|
204
|
+
testCaseKey: string;
|
|
205
|
+
groups: number[];
|
|
206
|
+
};
|
|
207
|
+
export type ProblemSampleCase = {
|
|
208
|
+
input: string;
|
|
209
|
+
output: string;
|
|
210
|
+
};
|
|
211
|
+
export type JudgingFile = {
|
|
212
|
+
language: CodeLanguage;
|
|
213
|
+
fullFileName: string;
|
|
214
|
+
};
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
export var ErrorCode;
|
|
2
|
+
(function (ErrorCode) {
|
|
3
|
+
// General errors
|
|
4
|
+
ErrorCode["BAD_REQUEST"] = "BAD_REQUEST";
|
|
5
|
+
ErrorCode["UNAUTHORIZED"] = "UNAUTHORIZED";
|
|
6
|
+
ErrorCode["FORBIDDEN"] = "FORBIDDEN";
|
|
7
|
+
ErrorCode["NOT_FOUND"] = "NOT_FOUND";
|
|
8
|
+
ErrorCode["METHOD_NOT_ALLOWED"] = "METHOD_NOT_ALLOWED";
|
|
9
|
+
ErrorCode["INTERNAL_SERVER_ERROR"] = "INTERNAL_SERVER_ERROR";
|
|
10
|
+
// UI general errors
|
|
11
|
+
ErrorCode["ABORTED_REQUEST"] = "ABORTED_REQUEST";
|
|
12
|
+
ErrorCode["ERROR_ON_RESPONSE"] = "ERROR_ON_RESPONSE";
|
|
13
|
+
ErrorCode["SERVICE_NOT_FOUND"] = "SERVICE_NOT_FOUND";
|
|
14
|
+
// Company errors
|
|
15
|
+
ErrorCode["INTERNAL_SERVER_ERROR_ON_COMPANY_SERVICE"] = "INTERNAL_SERVER_ERROR_ON_COMPANY_SERVICE";
|
|
16
|
+
ErrorCode["COMPANY_NOT_CREATED"] = "COMPANY_NOT_CREATED";
|
|
17
|
+
ErrorCode["COMPANY_NOT_FOUND"] = "COMPANY_NOT_FOUND";
|
|
18
|
+
ErrorCode["COMPANY_NOT_UPDATED"] = "COMPANY_NOT_UPDATED";
|
|
19
|
+
ErrorCode["COMPANY_NOT_DELETED"] = "COMPANY_NOT_DELETED";
|
|
20
|
+
ErrorCode["NOT_ALLOWED_TO_CREATE_THE_COMPANY"] = "NOT_ALLOWED_TO_CREATE_THE_COMPANY";
|
|
21
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_THE_COMPANY"] = "NOT_ALLOWED_TO_VIEW_THE_COMPANY";
|
|
22
|
+
ErrorCode["NOT_ALLOWED_TO_UPDATE_THE_COMPANY"] = "NOT_ALLOWED_TO_UPDATE_THE_COMPANY";
|
|
23
|
+
ErrorCode["NOT_ALLOWED_TO_DELETE_THE_COMPANY"] = "NOT_ALLOWED_TO_DELETE_THE_COMPANY";
|
|
24
|
+
// User errors
|
|
25
|
+
ErrorCode["INTERNAL_SERVER_ERROR_ON_USERS_SERVICE"] = "INTERNAL_SERVER_ERROR_ON_USERS_SERVICE";
|
|
26
|
+
ErrorCode["USER_NOT_CREATED"] = "USER_NOT_CREATED";
|
|
27
|
+
ErrorCode["USER_NOT_FOUND"] = "USER_NOT_FOUND";
|
|
28
|
+
ErrorCode["USER_NOT_UPDATED"] = "USER_NOT_UPDATED";
|
|
29
|
+
ErrorCode["USER_NOT_DELETED"] = "USER_NOT_DELETED";
|
|
30
|
+
ErrorCode["NOT_ALLOWED_TO_CREATE_THE_USER"] = "NOT_ALLOWED_TO_CREATE_THE_USER";
|
|
31
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_THE_USER"] = "NOT_ALLOWED_TO_VIEW_THE_USER";
|
|
32
|
+
ErrorCode["NOT_ALLOWED_TO_UPDATE_THE_USER"] = "NOT_ALLOWED_TO_UPDATE_THE_USER";
|
|
33
|
+
ErrorCode["NOT_ALLOWED_TO_DELETE_THE_USER"] = "NOT_ALLOWED_TO_DELETE_THE_USER";
|
|
34
|
+
ErrorCode["USER_IS_REPORTED"] = "USER_IS_REPORTED";
|
|
35
|
+
ErrorCode["USER_IS_ARCHIVED"] = "USER_IS_ARCHIVED";
|
|
36
|
+
ErrorCode["USER_WITH_EMAIL_REQUESTED_NOT_FOUND"] = "USER_WITH_EMAIL_REQUESTED_NOT_FOUND";
|
|
37
|
+
ErrorCode["USER_WITH_NICKNAME_REQUESTED_NOT_FOUND"] = "USER_WITH_NICKNAME_REQUESTED_NOT_FOUND";
|
|
38
|
+
ErrorCode["THE_EMAIL_IS_ALREADY_REGISTERED"] = "THE_EMAIL_IS_ALREADY_REGISTERED";
|
|
39
|
+
ErrorCode["THE_NICKNAME_IS_ALREADY_TAKEN"] = "THE_NICKNAME_IS_ALREADY_TAKEN";
|
|
40
|
+
ErrorCode["INCORRECT_PASSWORD"] = "INCORRECT_PASSWORD";
|
|
41
|
+
ErrorCode["USER_SESSION_NOT_CREATED"] = "USER_SESSION_NOT_CREATED";
|
|
42
|
+
ErrorCode["USER_SESSION_NOT_FOUND"] = "USER_SESSION_NOT_FOUND";
|
|
43
|
+
ErrorCode["USER_SESSION_NOT_UPDATED"] = "USER_SESSION_NOT_UPDATED";
|
|
44
|
+
ErrorCode["USER_SESSION_NOT_DELETED"] = "USER_SESSION_NOT_DELETED";
|
|
45
|
+
// Problem errors
|
|
46
|
+
ErrorCode["INTERNAL_SERVER_ERROR_ON_PROBLEMS_SERVICE"] = "INTERNAL_SERVER_ERROR_ON_PROBLEMS_SERVICE";
|
|
47
|
+
ErrorCode["PROBLEM_NOT_CREATED"] = "PROBLEM_NOT_CREATED";
|
|
48
|
+
ErrorCode["PROBLEM_NOT_FOUND"] = "PROBLEM_NOT_FOUND";
|
|
49
|
+
ErrorCode["PROBLEM_NOT_UPDATED"] = "PROBLEM_NOT_UPDATED";
|
|
50
|
+
ErrorCode["PROBLEM_NOT_DELETED"] = "PROBLEM_NOT_DELETED";
|
|
51
|
+
ErrorCode["NOT_ALLOWED_TO_CREATE_THE_PROBLEM"] = "NOT_ALLOWED_TO_CREATE_THE_PROBLEM";
|
|
52
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_THE_PROBLEM"] = "NOT_ALLOWED_TO_VIEW_THE_PROBLEM";
|
|
53
|
+
ErrorCode["NOT_ALLOWED_TO_UPDATE_THE_PROBLEM"] = "NOT_ALLOWED_TO_UPDATE_THE_PROBLEM";
|
|
54
|
+
ErrorCode["NOT_ALLOWED_TO_DELETE_THE_PROBLEM"] = "NOT_ALLOWED_TO_DELETE_THE_PROBLEM";
|
|
55
|
+
ErrorCode["PROBLEM_MODE_NOT_SUPPORTED"] = "PROBLEM_MODE_NOT_SUPPORTED";
|
|
56
|
+
ErrorCode["PROBLEM_TYPE_NOT_SUPPORTED"] = "PROBLEM_TYPE_NOT_SUPPORTED";
|
|
57
|
+
ErrorCode["PROBLEM_TIME_LIMIT_MUST_BE_A_NUMBER"] = "PROBLEM_TIME_LIMIT_MUST_BE_A_NUMBER";
|
|
58
|
+
ErrorCode["PROBLEM_MEMORY_LIMIT_MUST_BE_NUMBER"] = "PROBLEM_MEMORY_LIMIT_MUST_BE_NUMBER";
|
|
59
|
+
ErrorCode["TEST_CASE_FILE_EMPTY"] = "TEST_CASE_FILE_EMPTY";
|
|
60
|
+
// Contest errors
|
|
61
|
+
ErrorCode["INTERNAL_SERVER_ERROR_ON_CONTESTS_SERVICE"] = "INTERNAL_SERVER_ERROR_ON_CONTESTS_SERVICE";
|
|
62
|
+
ErrorCode["CONTEST_NOT_CREATED"] = "CONTEST_NOT_CREATED";
|
|
63
|
+
ErrorCode["CONTEST_NOT_FOUND"] = "CONTEST_NOT_FOUND";
|
|
64
|
+
ErrorCode["CONTEST_NOT_UPDATED"] = "CONTEST_NOT_UPDATED";
|
|
65
|
+
ErrorCode["CONTEST_NOT_DELETED"] = "CONTEST_NOT_DELETED";
|
|
66
|
+
ErrorCode["NOT_ALLOWED_TO_CREATE_THE_CONTEST"] = "NOT_ALLOWED_TO_CREATE_THE_CONTEST";
|
|
67
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_THE_CONTEST"] = "NOT_ALLOWED_TO_VIEW_THE_CONTEST";
|
|
68
|
+
ErrorCode["NOT_ALLOWED_TO_UPDATE_THE_CONTEST"] = "NOT_ALLOWED_TO_UPDATE_THE_CONTEST";
|
|
69
|
+
ErrorCode["NOT_ALLOWED_TO_DELETE_THE_CONTEST"] = "NOT_ALLOWED_TO_DELETE_THE_CONTEST";
|
|
70
|
+
ErrorCode["NOT_ALLOWED_TO_REGISTER_TO_THE_CONTEST"] = "NOT_ALLOWED_TO_REGISTER_TO_THE_CONTEST";
|
|
71
|
+
ErrorCode["IS_ALREADY_REGISTERED"] = "IS_ALREADY_REGISTERED";
|
|
72
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_CONTESTS"] = "NOT_ALLOWED_TO_VIEW_CONTESTS";
|
|
73
|
+
ErrorCode["SCOREBOARD_NOT_CREATED"] = "SCOREBOARD_NOT_CREATED";
|
|
74
|
+
ErrorCode["SCOREBOARD_NOT_FOUND"] = "SCOREBOARD_NOT_FOUND";
|
|
75
|
+
ErrorCode["SCOREBOARD_NOT_UPDATED"] = "SCOREBOARD_NOT_UPDATED";
|
|
76
|
+
ErrorCode["SCOREBOARD_NOT_DELETED"] = "SCOREBOARD_NOT_DELETED";
|
|
77
|
+
ErrorCode["NOT_ALLOWED_TO_CREATE_THE_SCOREBOARD"] = "NOT_ALLOWED_TO_CREATE_THE_SCOREBOARD";
|
|
78
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_THE_SCOREBOARD"] = "NOT_ALLOWED_TO_VIEW_THE_SCOREBOARD";
|
|
79
|
+
ErrorCode["NOT_ALLOWED_TO_UPDATE_THE_SCOREBOARD"] = "NOT_ALLOWED_TO_UPDATE_THE_SCOREBOARD";
|
|
80
|
+
ErrorCode["NOT_ALLOWED_TO_DELETE_THE_SCOREBOARD"] = "NOT_ALLOWED_TO_DELETE_THE_SCOREBOARD";
|
|
81
|
+
ErrorCode["CLARIFICATION_NOT_CREATED"] = "CLARIFICATION_NOT_CREATED";
|
|
82
|
+
ErrorCode["CLARIFICATION_NOT_FOUND"] = "CLARIFICATION_NOT_FOUND";
|
|
83
|
+
ErrorCode["CLARIFICATION_NOT_UPDATED"] = "CLARIFICATION_NOT_UPDATED";
|
|
84
|
+
ErrorCode["CLARIFICATION_NOT_DELETED"] = "CLARIFICATION_NOT_DELETED";
|
|
85
|
+
ErrorCode["NOT_ALLOWED_TO_SUBMIT_CLARIFICATION"] = "NOT_ALLOWED_TO_SUBMIT_CLARIFICATION";
|
|
86
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_CLARIFICATION"] = "NOT_ALLOWED_TO_VIEW_CLARIFICATION";
|
|
87
|
+
ErrorCode["NOT_ALLOWED_TO_UPDATE_CLARIFICATION"] = "NOT_ALLOWED_TO_UPDATE_CLARIFICATION";
|
|
88
|
+
ErrorCode["NOT_ALLOWED_TO_DELETE_CLARIFICATION"] = "NOT_ALLOWED_TO_DELETE_CLARIFICATION";
|
|
89
|
+
// Submission errors
|
|
90
|
+
ErrorCode["INTERNAL_SERVER_ERROR_ON_SUBMISSIONS_SERVICE"] = "INTERNAL_SERVER_ERROR_ON_SUBMISSIONS_SERVICE";
|
|
91
|
+
ErrorCode["SUBMISSION_NOT_FOUND"] = "SUBMISSION_NOT_FOUND";
|
|
92
|
+
ErrorCode["SUBMISSION_NOT_CREATED"] = "SUBMISSION_NOT_CREATED";
|
|
93
|
+
ErrorCode["SUBMISSION_NOT_UPDATED"] = "SUBMISSION_NOT_UPDATED";
|
|
94
|
+
ErrorCode["SOURCE_EMPTY"] = "SOURCE_EMPTY";
|
|
95
|
+
ErrorCode["PROGRAMMING_LANGUAGE_NOT_SUPPORTED"] = "PROGRAMMING_LANGUAGE_NOT_SUPPORTED";
|
|
96
|
+
ErrorCode["NOT_ALLOWED_SUBMIT_THE_PROBLEM_IN_THE_CONTEST"] = "NOT_ALLOWED_SUBMIT_THE_PROBLEM_IN_THE_CONTEST";
|
|
97
|
+
ErrorCode["JUDGEMENT_UNAVAILABLE"] = "JUDGEMENT_UNAVAILABLE";
|
|
98
|
+
// Utils errors
|
|
99
|
+
ErrorCode["INTERNAL_SERVER_ERROR_ON_UTILS_SERVICES"] = "INTERNAL_SERVER_ERROR_ON_UTILS_SERVICES";
|
|
100
|
+
ErrorCode["EMPTY_IMAGE"] = "EMPTY_IMAGE";
|
|
101
|
+
ErrorCode["CODES_ERROR"] = "CODES_ERROR";
|
|
102
|
+
ErrorCode["COMPILATION_FAILED"] = "COMPILATION_FAILED";
|
|
103
|
+
ErrorCode["FILES_ERROR"] = "FILES_ERROR";
|
|
104
|
+
ErrorCode["THE_EMAIL_COULD_NOT_BE_SENT"] = "THE_EMAIL_COULD_NOT_BE_SENT";
|
|
105
|
+
// Team errors
|
|
106
|
+
ErrorCode["INTERNAL_SERVER_ERROR_ON_TEAMS_SERVICE"] = "INTERNAL_SERVER_ERROR_ON_TEAMS_SERVICE";
|
|
107
|
+
ErrorCode["TEAM_NOT_CREATED"] = "TEAM_NOT_CREATED";
|
|
108
|
+
ErrorCode["TEAM_NOT_FOUND"] = "TEAM_NOT_FOUND";
|
|
109
|
+
ErrorCode["TEAM_NOT_UPDATED"] = "TEAM_NOT_UPDATED";
|
|
110
|
+
ErrorCode["TEAM_NOT_DELETED"] = "TEAM_NOT_DELETED";
|
|
111
|
+
ErrorCode["NOT_ALLOWED_TO_CREATE_THE_TEAM"] = "NOT_ALLOWED_TO_CREATE_THE_TEAM";
|
|
112
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_THE_TEAM"] = "NOT_ALLOWED_TO_VIEW_THE_TEAM";
|
|
113
|
+
ErrorCode["NOT_ALLOWED_TO_UPDATE_THE_TEAM"] = "NOT_ALLOWED_TO_UPDATE_THE_TEAM";
|
|
114
|
+
ErrorCode["NOT_ALLOWED_TO_DELETE_THE_TEAM"] = "NOT_ALLOWED_TO_DELETE_THE_TEAM";
|
|
115
|
+
ErrorCode["TEAM_IS_REPORTED"] = "TEAM_IS_REPORTED";
|
|
116
|
+
ErrorCode["TEAM_IS_ARCHIVED"] = "TEAM_IS_ARCHIVED";
|
|
117
|
+
// File errors
|
|
118
|
+
ErrorCode["INTERNAL_SERVER_ERROR_ON_FILES_SERVICE"] = "INTERNAL_SERVER_ERROR_ON_FILES_SERVICE";
|
|
119
|
+
ErrorCode["FILE_NOT_CREATED"] = "FILE_NOT_CREATED";
|
|
120
|
+
ErrorCode["FILE_NOT_FOUND"] = "FILE_NOT_FOUND";
|
|
121
|
+
ErrorCode["FILE_NOT_UPDATED"] = "FILE_NOT_UPDATED";
|
|
122
|
+
ErrorCode["FILE_NOT_DELETED"] = "FILE_NOT_DELETED";
|
|
123
|
+
ErrorCode["NOT_ALLOWED_TO_CREATE_THE_FILE"] = "NOT_ALLOWED_TO_CREATE_THE_FILE";
|
|
124
|
+
ErrorCode["NOT_ALLOWED_TO_VIEW_THE_FILE"] = "NOT_ALLOWED_TO_VIEW_THE_FILE";
|
|
125
|
+
ErrorCode["NOT_ALLOWED_TO_UPDATE_THE_FILE"] = "NOT_ALLOWED_TO_UPDATE_THE_FILE";
|
|
126
|
+
ErrorCode["NOT_ALLOWED_TO_DELETE_THE_FILE"] = "NOT_ALLOWED_TO_DELETE_THE_FILE";
|
|
127
|
+
ErrorCode["FILE_IS_RESERVED"] = "FILE_IS_RESERVED";
|
|
128
|
+
ErrorCode["FILE_IS_PRIVATE"] = "FILE_IS_PRIVATE";
|
|
129
|
+
ErrorCode["FILE_IS_ARCHIVED"] = "FILE_IS_ARCHIVED";
|
|
130
|
+
})(ErrorCode || (ErrorCode = {}));
|
|
131
|
+
export var LogLevel;
|
|
132
|
+
(function (LogLevel) {
|
|
133
|
+
LogLevel["FATAL"] = "FATAL";
|
|
134
|
+
LogLevel["ERROR"] = "ERROR";
|
|
135
|
+
LogLevel["WARN"] = "WARN";
|
|
136
|
+
LogLevel["INFO"] = "INFO";
|
|
137
|
+
LogLevel["DEBUG"] = "DEBUG";
|
|
138
|
+
LogLevel["TRACE"] = "TRACE";
|
|
139
|
+
})(LogLevel || (LogLevel = {}));
|
|
140
|
+
export var HTTPMethod;
|
|
141
|
+
(function (HTTPMethod) {
|
|
142
|
+
HTTPMethod["POST"] = "POST";
|
|
143
|
+
HTTPMethod["GET"] = "GET";
|
|
144
|
+
HTTPMethod["PUT"] = "PUT";
|
|
145
|
+
HTTPMethod["PATCH"] = "PATCH";
|
|
146
|
+
HTTPMethod["DELETE"] = "DELETE";
|
|
147
|
+
})(HTTPMethod || (HTTPMethod = {}));
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import type { SubmissionRunStatus } from '../prisma/enums/index.js';
|
|
2
|
+
import type { CodeLanguage } from './commons.js';
|
|
3
|
+
export declare enum WorksheetType {
|
|
4
|
+
JK_MD = "JK_MD",
|
|
5
|
+
CODE_EDITOR = "CODE_EDITOR",
|
|
6
|
+
LIST = "LIST",
|
|
7
|
+
GRAPH = "GRAPH",
|
|
8
|
+
QUIZ_PROBLEM = "QUIZ_PROBLEM",
|
|
9
|
+
QUIZ_TEXT = "QUIZ_TEXT",
|
|
10
|
+
QUIZ_OPTIONS = "QUIZ_OPTIONS",
|
|
11
|
+
NEW_PAGE = "NEW_PAGE"
|
|
12
|
+
}
|
|
13
|
+
export type BasicWorksheet = {
|
|
14
|
+
id: string;
|
|
15
|
+
type: WorksheetType;
|
|
16
|
+
title: string;
|
|
17
|
+
points: number;
|
|
18
|
+
};
|
|
19
|
+
export type JkmdSheet = BasicWorksheet & {
|
|
20
|
+
type: WorksheetType.JK_MD;
|
|
21
|
+
content: string;
|
|
22
|
+
};
|
|
23
|
+
export type SubmissionTestCase = {
|
|
24
|
+
out: string;
|
|
25
|
+
err: string;
|
|
26
|
+
log: string;
|
|
27
|
+
status: SubmissionRunStatus;
|
|
28
|
+
};
|
|
29
|
+
export interface CodeEditorTestCase extends SubmissionTestCase {
|
|
30
|
+
key: string;
|
|
31
|
+
in: string;
|
|
32
|
+
testOut: string;
|
|
33
|
+
withPE: boolean;
|
|
34
|
+
sample: boolean;
|
|
35
|
+
hidden: boolean;
|
|
36
|
+
index: number;
|
|
37
|
+
messageTimestamp: number;
|
|
38
|
+
}
|
|
39
|
+
export type CodeEditorFile<T> = {
|
|
40
|
+
description: string;
|
|
41
|
+
folderPath: string;
|
|
42
|
+
source: string;
|
|
43
|
+
language: T;
|
|
44
|
+
index: number;
|
|
45
|
+
name: string;
|
|
46
|
+
hidden: boolean;
|
|
47
|
+
readonly: boolean;
|
|
48
|
+
protected: boolean;
|
|
49
|
+
active: boolean;
|
|
50
|
+
};
|
|
51
|
+
export type CodeEditorFiles<T> = {
|
|
52
|
+
[key: string]: CodeEditorFile<T>;
|
|
53
|
+
};
|
|
54
|
+
export type CodeEditorTestCases = {
|
|
55
|
+
[key: string]: CodeEditorTestCase;
|
|
56
|
+
};
|
|
57
|
+
export type CodeEditorSheet = BasicWorksheet & {
|
|
58
|
+
type: WorksheetType.CODE_EDITOR;
|
|
59
|
+
files: CodeEditorFiles<CodeLanguage>;
|
|
60
|
+
testCases: CodeEditorTestCases;
|
|
61
|
+
languages: CodeLanguage[];
|
|
62
|
+
height: number;
|
|
63
|
+
};
|
|
64
|
+
export type GraphSheet = BasicWorksheet & {
|
|
65
|
+
type: WorksheetType.GRAPH;
|
|
66
|
+
dots: string[];
|
|
67
|
+
};
|
|
68
|
+
export type QuizProblemSheet = BasicWorksheet & {
|
|
69
|
+
type: WorksheetType.QUIZ_PROBLEM;
|
|
70
|
+
problemKey: string;
|
|
71
|
+
languages: CodeLanguage[];
|
|
72
|
+
height: number;
|
|
73
|
+
};
|
|
74
|
+
export type QuizTextSheet = BasicWorksheet & {
|
|
75
|
+
type: WorksheetType.QUIZ_TEXT;
|
|
76
|
+
description: string;
|
|
77
|
+
answer: string;
|
|
78
|
+
inputType: 'text' | 'number' | 'textarea';
|
|
79
|
+
};
|
|
80
|
+
export declare enum QuizScoringMode {
|
|
81
|
+
TOTAL = "TOTAL",
|
|
82
|
+
PARTIAL = "PARTIAL"
|
|
83
|
+
}
|
|
84
|
+
export type QuizOptionsSheet = BasicWorksheet & {
|
|
85
|
+
type: WorksheetType.QUIZ_OPTIONS;
|
|
86
|
+
description: string;
|
|
87
|
+
options: {
|
|
88
|
+
label: string;
|
|
89
|
+
correct: boolean;
|
|
90
|
+
id: string;
|
|
91
|
+
}[];
|
|
92
|
+
multiple: boolean;
|
|
93
|
+
scoringMode: QuizScoringMode;
|
|
94
|
+
};
|
|
95
|
+
export type ListSheet = BasicWorksheet & {
|
|
96
|
+
type: WorksheetType.LIST;
|
|
97
|
+
header: string;
|
|
98
|
+
content: (JkmdSheet | CodeEditorSheet | GraphSheet | QuizProblemSheet | QuizTextSheet | QuizOptionsSheet)[];
|
|
99
|
+
children: ListSheet[];
|
|
100
|
+
};
|
|
101
|
+
export type NewPageSheet = BasicWorksheet & {
|
|
102
|
+
type: WorksheetType.NEW_PAGE;
|
|
103
|
+
};
|
|
104
|
+
export type BodyWorksheet = JkmdSheet | CodeEditorSheet | ListSheet | GraphSheet | QuizProblemSheet | QuizTextSheet | QuizOptionsSheet | NewPageSheet;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export var WorksheetType;
|
|
2
|
+
(function (WorksheetType) {
|
|
3
|
+
WorksheetType["JK_MD"] = "JK_MD";
|
|
4
|
+
WorksheetType["CODE_EDITOR"] = "CODE_EDITOR";
|
|
5
|
+
WorksheetType["LIST"] = "LIST";
|
|
6
|
+
WorksheetType["GRAPH"] = "GRAPH";
|
|
7
|
+
WorksheetType["QUIZ_PROBLEM"] = "QUIZ_PROBLEM";
|
|
8
|
+
WorksheetType["QUIZ_TEXT"] = "QUIZ_TEXT";
|
|
9
|
+
WorksheetType["QUIZ_OPTIONS"] = "QUIZ_OPTIONS";
|
|
10
|
+
WorksheetType["NEW_PAGE"] = "NEW_PAGE";
|
|
11
|
+
})(WorksheetType || (WorksheetType = {}));
|
|
12
|
+
export var QuizScoringMode;
|
|
13
|
+
(function (QuizScoringMode) {
|
|
14
|
+
QuizScoringMode["TOTAL"] = "TOTAL";
|
|
15
|
+
QuizScoringMode["PARTIAL"] = "PARTIAL";
|
|
16
|
+
})(QuizScoringMode || (QuizScoringMode = {}));
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { RecordId } from './commons.js';
|
|
2
|
+
export declare enum WebSocketMessageEvent {
|
|
3
|
+
PING = "PING",
|
|
4
|
+
CLIENT_TRACK_LOCATION = "CLIENT_TRACK_LOCATION",
|
|
5
|
+
CLIENT_TRACK_SCREENSHOT = "CLIENT_TRACK_SCREENSHOT",
|
|
6
|
+
CLIENT_TRACK_DEVICE = "CLIENT_TRACK_DEVICE",
|
|
7
|
+
CHAT_COMPLETIONS = "CHAT_COMPLETIONS"
|
|
8
|
+
}
|
|
9
|
+
export declare enum WebSocketSubscriptionEvent {
|
|
10
|
+
SUBSCRIBE_CODE_RUN_STATUS = "SUBSCRIBE_CODE_RUN_STATUS",
|
|
11
|
+
UNSUBSCRIBE_CODE_RUN_STATUS = "UNSUBSCRIBE_CODE_RUN_STATUS",
|
|
12
|
+
SUBSCRIBE_SUBMISSION_RUN_STATUS = "SUBSCRIBE_SUBMISSION_RUN_STATUS",
|
|
13
|
+
UNSUBSCRIBE_SUBMISSION_RUN_STATUS = "UNSUBSCRIBE_SUBMISSION_RUN_STATUS",
|
|
14
|
+
SUBSCRIBE_GET_DATA = "SUBSCRIBE_GET_DATA",
|
|
15
|
+
UNSUBSCRIBE_GET_DATA = "SUBSCRIBE_GET_DATA",
|
|
16
|
+
SUBSCRIBE_PROBLEM_CRAWLED = "SUBSCRIBE_PROBLEM_CRAWLED",
|
|
17
|
+
UNSUBSCRIBE_PROBLEM_CRAWLED = "UNSUBSCRIBE_PROBLEM_CRAWLED",
|
|
18
|
+
SUBSCRIBE_SUBMISSIONS_CRAWL = "SUBSCRIBE_SUBMISSIONS_CRAWL",
|
|
19
|
+
UNSUBSCRIBE_SUBMISSIONS_CRAWL = "UNSUBSCRIBE_SUBMISSIONS_CRAWL",
|
|
20
|
+
SUBSCRIBE_CONTEST_CHANGES = "SUBSCRIBE_CONTEST_CHANGES",
|
|
21
|
+
UNSUBSCRIBE_CONTEST_CHANGES = "UNSUBSCRIBE_CONTEST_CHANGES",
|
|
22
|
+
SUBSCRIBE_CLIENT_TRACK = "SUBSCRIBE_CLIENT_TRACK",
|
|
23
|
+
UNSUBSCRIBE_CLIENT_TRACK = "UNSUBSCRIBE_CLIENT_TRACK",
|
|
24
|
+
SUBSCRIBE_USER_NOTIFICATION = "SUBSCRIBE_USER_NOTIFICATION",
|
|
25
|
+
UNSUBSCRIBE_USER_NOTIFICATION = "UNSUBSCRIBE_USER_NOTIFICATION"
|
|
26
|
+
}
|
|
27
|
+
export declare enum WebSocketResponseEvent {
|
|
28
|
+
PONG = "PONG",
|
|
29
|
+
CODE_RUN_STATUS = "CODE_RUN_STATUS",
|
|
30
|
+
SUBMISSION_RUN_STATUS = "SUBMISSION_RUN_STATUS",
|
|
31
|
+
USER_MESSAGE = "USER_MESSAGE",
|
|
32
|
+
SEND_DATA = "SEND_DATA",
|
|
33
|
+
SEND_DATA_ECS_TASK_DEFINITIONS_LIST = "SEND_DATA_ECS_TASK_DEFINITIONS_LIST",
|
|
34
|
+
SEND_DATA_ECS_TASKS_LIST = "SEND_DATA_ECS_TASKS_LIST",
|
|
35
|
+
SEND_DATA_EC2_INSTANCES_LIST = "SEND_DATA_EC2_INSTANCES_LIST",
|
|
36
|
+
SEND_DATA_SSM_SESSIONS_LIST = "SEND_DATA_SSM_SESSIONS_LIST",
|
|
37
|
+
SEND_DATA_RUN_COMMAND = "SEND_DATA_RUN_COMMAND",
|
|
38
|
+
SEND_DATA_CLIENT_TRACK = "SEND_DATA_CLIENT_TRACK",
|
|
39
|
+
SEND_DATA_CHAT_COMPLETIONS = "SEND_DATA_CHAT_COMPLETIONS",
|
|
40
|
+
PROBLEM_CRAWLED = "PROBLEM_CRAWLED",
|
|
41
|
+
SUBMISSIONS_CRAWL = "SUBMISSIONS_CRAWL",
|
|
42
|
+
CONTEST_CHANGES = "CONTEST_CHANGES",
|
|
43
|
+
CLIENT_TRACK = "CLIENT_TRACK",
|
|
44
|
+
USER_NOTIFICATION = "USER_NOTIFICATION",
|
|
45
|
+
USER_NOTIFICATION_SUBMISSION = "USER_NOTIFICATION_SUBMISSION",
|
|
46
|
+
USER_NOTIFICATION_CONTEST_CLARIFICATION = "USER_NOTIFICATION_CONTEST_CLARIFICATION"
|
|
47
|
+
}
|
|
48
|
+
export type ClientId = `${RecordId}|${string}`;
|
|
49
|
+
export type WebSocketResponseEventKey = `${WebSocketResponseEvent}-${ClientId}-${string}`;
|