@juki-team/commons 0.1.43 → 0.1.45
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/dist/cjs/index.cjs +410 -543
- package/dist/esm/index.js +320 -489
- package/dist/types/constants/entity.d.ts +3 -3
- package/dist/types/constants/index.d.ts +1 -1
- package/dist/types/constants/organization.d.ts +9 -0
- package/dist/types/constants/websocket.d.ts +5 -18
- package/dist/types/dto/class.d.ts +34 -34
- package/dist/types/dto/code.d.ts +1 -1
- package/dist/types/dto/comments.d.ts +9 -9
- package/dist/types/dto/contest.d.ts +46 -42
- package/dist/types/dto/course.d.ts +13 -13
- package/dist/types/dto/entity.d.ts +30 -25
- package/dist/types/dto/excalidraw.d.ts +7 -7
- package/dist/types/dto/file.d.ts +10 -15
- package/dist/types/dto/image.d.ts +2 -2
- package/dist/types/dto/index.d.ts +1 -1
- package/dist/types/dto/judge.d.ts +5 -5
- package/dist/types/dto/markdown.d.ts +7 -7
- package/dist/types/dto/mermaid.d.ts +7 -7
- package/dist/types/dto/{company.d.ts → organization.d.ts} +16 -16
- package/dist/types/dto/problem.d.ts +22 -22
- package/dist/types/dto/scoreboard.d.ts +8 -18
- package/dist/types/dto/session.d.ts +9 -9
- package/dist/types/dto/socket.d.ts +43 -126
- package/dist/types/dto/statistics.d.ts +7 -7
- package/dist/types/dto/submission.d.ts +22 -22
- package/dist/types/dto/system.d.ts +7 -82
- package/dist/types/dto/url.d.ts +1 -1
- package/dist/types/dto/user.d.ts +22 -22
- package/dist/types/dto/virtual-user.d.ts +3 -25
- package/dist/types/dto/worksheet-submissions.d.ts +22 -22
- package/dist/types/dto/worksheet.d.ts +12 -12
- package/dist/types/helpers/class.d.ts +4 -4
- package/dist/types/helpers/comments.d.ts +1 -1
- package/dist/types/helpers/contest.d.ts +4 -4
- package/dist/types/helpers/date.d.ts +68 -0
- package/dist/types/helpers/document.d.ts +2 -2
- package/dist/types/helpers/index.d.ts +3 -0
- package/dist/types/helpers/number.d.ts +2 -0
- package/dist/types/helpers/responses.d.ts +1 -1
- package/dist/types/helpers/socket.d.ts +37 -50
- package/dist/types/helpers/time.d.ts +0 -11
- package/dist/types/helpers/user.d.ts +2 -2
- package/dist/types/index.d.ts +0 -1
- package/dist/types/types/class.d.ts +6 -6
- package/dist/types/types/comments.d.ts +2 -2
- package/dist/types/types/contest.d.ts +20 -23
- package/dist/types/types/entity.d.ts +13 -19
- package/dist/types/types/file.d.ts +6 -0
- package/dist/types/types/index.d.ts +3 -1
- package/dist/types/types/{company.d.ts → organization.d.ts} +2 -2
- package/dist/types/types/prisma.d.ts +2 -2
- package/dist/types/types/problems.d.ts +1 -1
- package/dist/types/types/scoreboard.d.ts +11 -0
- package/dist/types/types/sheet.d.ts +1 -1
- package/dist/types/types/socket.d.ts +12 -16
- package/dist/types/types/system.d.ts +76 -0
- package/dist/types/types/teams.d.ts +8 -8
- package/dist/types/types/virtual-user.d.ts +22 -0
- package/package.json +1 -1
- package/dist/types/constants/company.d.ts +0 -9
- package/dist/types/prototypes/Date.d.ts +0 -62
- package/dist/types/prototypes/Number.d.ts +0 -7
- package/dist/types/prototypes/index.d.ts +0 -3
- /package/dist/types/{prototypes/Error.d.ts → helpers/errors.d.ts} +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { JudgeBaseDocument } from '../types';
|
|
2
|
-
export interface
|
|
2
|
+
export interface JudgeDataResponseDto extends Omit<JudgeBaseDocument, 'getProblemUrl' | 'getUserSubmissionsUrl' | 'getLoginUrl' | 'getSubmitUrl'> {
|
|
3
3
|
}
|
|
4
|
-
export interface
|
|
4
|
+
export interface JudgeSummaryListResponseDto extends Omit<JudgeBaseDocument, 'getProblemUrl' | 'getUserSubmissionsUrl' | 'getSubmissionUrl' | 'getLoginUrl' | 'getProfileUrl' | 'getSubmitUrl'> {
|
|
5
5
|
}
|
|
6
|
-
export interface
|
|
6
|
+
export interface JudgeSystemSummaryListResponseDto extends JudgeSummaryListResponseDto {
|
|
7
7
|
id: string;
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
createdAt: number;
|
|
9
|
+
updatedAt: number;
|
|
10
10
|
getLoginUrl: string;
|
|
11
11
|
getProfileUrl: string;
|
|
12
12
|
getSubmitUrl: string;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { MarkdownBaseDocument } from '../types';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export interface
|
|
5
|
-
owner:
|
|
6
|
-
members:
|
|
2
|
+
import { EntityMembersDto, EntityMembersResponseDto } from './entity';
|
|
3
|
+
import { UserOrganizationBasicInfoResponseDto } from './user';
|
|
4
|
+
export interface MarkdownResponseDto extends Omit<MarkdownBaseDocument, 'members'> {
|
|
5
|
+
owner: UserOrganizationBasicInfoResponseDto;
|
|
6
|
+
members: EntityMembersResponseDto;
|
|
7
7
|
updatedAt: number;
|
|
8
8
|
createdAt: number;
|
|
9
9
|
}
|
|
10
|
-
export interface
|
|
11
|
-
members:
|
|
10
|
+
export interface UpsertMarkdownDto extends Omit<MarkdownBaseDocument, 'key' | 'members'> {
|
|
11
|
+
members: EntityMembersDto;
|
|
12
12
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { MermaidBaseDocument } from '../types';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export interface
|
|
5
|
-
owner:
|
|
6
|
-
members:
|
|
2
|
+
import { EntityMembersDto, EntityMembersResponseDto } from './entity';
|
|
3
|
+
import { UserOrganizationBasicInfoResponseDto } from './user';
|
|
4
|
+
export interface MermaidResponseDto extends Omit<MermaidBaseDocument, 'members'> {
|
|
5
|
+
owner: UserOrganizationBasicInfoResponseDto;
|
|
6
|
+
members: EntityMembersResponseDto;
|
|
7
7
|
updatedAt: number;
|
|
8
8
|
createdAt: number;
|
|
9
9
|
}
|
|
10
|
-
export interface
|
|
11
|
-
members:
|
|
10
|
+
export interface UpsertMermaidDto extends Omit<MermaidBaseDocument, 'key' | 'members'> {
|
|
11
|
+
members: EntityMembersDto;
|
|
12
12
|
}
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export interface
|
|
1
|
+
import { OrganizationPlan, ResourceInstance, ResourceLogger, Theme } from '../types';
|
|
2
|
+
import { EmailDataResponseDto } from './system';
|
|
3
|
+
import { UserOrganizationBasicInfoResponseDto, UserPermissions } from './user';
|
|
4
|
+
export interface OrganizationJudgeResponseDto {
|
|
5
5
|
key: string;
|
|
6
6
|
name: string;
|
|
7
7
|
keyPrefix: string;
|
|
8
8
|
}
|
|
9
|
-
export interface
|
|
9
|
+
export interface OrganizationTrustedOrganizationResponseDto {
|
|
10
10
|
key: string;
|
|
11
11
|
name: string;
|
|
12
12
|
}
|
|
13
|
-
export interface
|
|
13
|
+
export interface OrganizationResponseDto extends EmailDataResponseDto {
|
|
14
14
|
name: string;
|
|
15
15
|
key: string;
|
|
16
16
|
hosts: string[];
|
|
17
17
|
imageUrl: string;
|
|
18
|
-
managerUser:
|
|
19
|
-
systemAdminUser:
|
|
20
|
-
plan:
|
|
21
|
-
|
|
22
|
-
judges:
|
|
23
|
-
|
|
24
|
-
styles:
|
|
18
|
+
managerUser: UserOrganizationBasicInfoResponseDto;
|
|
19
|
+
systemAdminUser: UserOrganizationBasicInfoResponseDto;
|
|
20
|
+
plan: OrganizationPlan;
|
|
21
|
+
startsAt: number;
|
|
22
|
+
judges: OrganizationJudgeResponseDto[];
|
|
23
|
+
trustedOrganizations: OrganizationTrustedOrganizationResponseDto[];
|
|
24
|
+
styles: OrganizationStyles;
|
|
25
25
|
}
|
|
26
|
-
export interface
|
|
26
|
+
export interface OrganizationUserPermissionsResponseDto extends OrganizationResponseDto {
|
|
27
27
|
userPermissions: UserPermissions;
|
|
28
28
|
contactEmail: string;
|
|
29
29
|
contactCellPhoneNumber: string;
|
|
30
30
|
contactTelegram: string;
|
|
31
31
|
}
|
|
32
|
-
export interface
|
|
32
|
+
export interface OrganizationResourceSpecificationsResponseDto {
|
|
33
33
|
logger: ResourceLogger;
|
|
34
34
|
runnerInstance: ResourceInstance;
|
|
35
35
|
runnerListener: {
|
|
@@ -48,7 +48,7 @@ export interface CompanyResourceSpecificationsResponseDTO {
|
|
|
48
48
|
maximum: number;
|
|
49
49
|
};
|
|
50
50
|
}
|
|
51
|
-
export type
|
|
51
|
+
export type OrganizationStyles = Record<Theme, {
|
|
52
52
|
body: {
|
|
53
53
|
backgroundColor: string;
|
|
54
54
|
backgroundColorHighlight: string;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { EntityState, JudgeBaseDocument, ProblemBaseDocument, ProblemScoringMode, ProblemSettings, ProblemStatement, ProblemType, ProblemUser, TextLanguage } from '../types';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
export interface
|
|
2
|
+
import { EntityMembersDto, EntityMembersResponseDto } from './entity';
|
|
3
|
+
import { EntityOwnerSystemSummaryListResponseDto, UserOrganizationBasicInfoResponseDto } from './user';
|
|
4
|
+
export interface ProblemJudgeSummaryListResponseDto extends Pick<JudgeBaseDocument, 'isExternal' | 'isSubmitSupported' | 'name' | 'key'> {
|
|
5
5
|
isCustom: boolean;
|
|
6
6
|
isMain: boolean;
|
|
7
7
|
}
|
|
8
|
-
export interface
|
|
8
|
+
export interface EntityOrganizationSummaryListResponseDto {
|
|
9
9
|
key: string;
|
|
10
10
|
}
|
|
11
|
-
export interface
|
|
12
|
-
|
|
13
|
-
judge:
|
|
11
|
+
export interface ProblemBasicSummaryListResponseDto {
|
|
12
|
+
organization: EntityOrganizationSummaryListResponseDto;
|
|
13
|
+
judge: ProblemJudgeSummaryListResponseDto;
|
|
14
14
|
key: string;
|
|
15
15
|
name: string;
|
|
16
16
|
shortname: string;
|
|
@@ -19,14 +19,14 @@ export interface ProblemBasicSummaryListResponseDTO {
|
|
|
19
19
|
scoringMode: ProblemScoringMode;
|
|
20
20
|
type: ProblemType;
|
|
21
21
|
};
|
|
22
|
-
members:
|
|
22
|
+
members: EntityMembersResponseDto;
|
|
23
23
|
externalUrl: string;
|
|
24
24
|
}
|
|
25
|
-
export interface
|
|
25
|
+
export interface ProblemSummaryListResponseDto extends ProblemBasicSummaryListResponseDto {
|
|
26
26
|
user: ProblemUser;
|
|
27
|
-
owner:
|
|
27
|
+
owner: UserOrganizationBasicInfoResponseDto;
|
|
28
28
|
}
|
|
29
|
-
export interface
|
|
29
|
+
export interface ProblemDataResponseDto extends ProblemSummaryListResponseDto {
|
|
30
30
|
author: string;
|
|
31
31
|
statement: ProblemStatement;
|
|
32
32
|
editorial: TextLanguage;
|
|
@@ -34,22 +34,22 @@ export interface ProblemDataResponseDTO extends ProblemSummaryListResponseDTO {
|
|
|
34
34
|
ownerNickname: string;
|
|
35
35
|
state: EntityState;
|
|
36
36
|
}
|
|
37
|
-
export interface
|
|
37
|
+
export interface ProblemJudgeSystemSummaryListResponseDto extends ProblemJudgeSummaryListResponseDto {
|
|
38
38
|
name: string;
|
|
39
39
|
id: string;
|
|
40
40
|
}
|
|
41
|
-
export interface
|
|
41
|
+
export interface EntityOrganizationSystemSummaryListResponseDto extends EntityOrganizationSummaryListResponseDto {
|
|
42
42
|
name: string;
|
|
43
43
|
id: string;
|
|
44
44
|
}
|
|
45
|
-
export interface
|
|
45
|
+
export interface ProblemSystemSummaryListResponseDto extends ProblemSummaryListResponseDto {
|
|
46
46
|
state: EntityState;
|
|
47
47
|
id: string;
|
|
48
|
-
owner:
|
|
49
|
-
judge:
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
48
|
+
owner: EntityOwnerSystemSummaryListResponseDto;
|
|
49
|
+
judge: ProblemJudgeSystemSummaryListResponseDto;
|
|
50
|
+
organization: EntityOrganizationSystemSummaryListResponseDto;
|
|
51
|
+
createdAt: number;
|
|
52
|
+
updatedAt: number;
|
|
53
53
|
}
|
|
54
54
|
export interface ProblemTestCaseResponse {
|
|
55
55
|
testCaseKey: string;
|
|
@@ -59,8 +59,8 @@ export interface ProblemTestCaseResponse {
|
|
|
59
59
|
outputFileSize: number;
|
|
60
60
|
outputFileLastModified: Date;
|
|
61
61
|
}
|
|
62
|
-
export interface
|
|
62
|
+
export interface ProblemTestCasesResponseDto extends Array<ProblemTestCaseResponse> {
|
|
63
63
|
}
|
|
64
|
-
export interface
|
|
65
|
-
members:
|
|
64
|
+
export interface UpsertProblemDto extends Omit<ProblemBaseDocument, 'testCases' | 'testCasesUpdatedAt' | 'key' | 'members' | 'judgeId'> {
|
|
65
|
+
members: EntityMembersDto;
|
|
66
66
|
}
|
|
@@ -1,23 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
success: boolean;
|
|
6
|
-
penalty: number;
|
|
7
|
-
isFirstAccepted: boolean;
|
|
8
|
-
indexAccepted: number;
|
|
9
|
-
};
|
|
10
|
-
export type ScoreboardProblems = {
|
|
11
|
-
[key: string]: ScoreboardProblem;
|
|
12
|
-
};
|
|
13
|
-
export interface ScoreboardResponseDTO {
|
|
14
|
-
user: UserSummaryListResponseDTO;
|
|
1
|
+
import { ScoreboardProblems } from '../types';
|
|
2
|
+
import { UserSummaryListResponseDto } from './user';
|
|
3
|
+
export interface ScoreboardResponseDto {
|
|
4
|
+
user: UserSummaryListResponseDto;
|
|
15
5
|
totalPenalty: number;
|
|
16
6
|
totalPoints: number;
|
|
17
7
|
position: number;
|
|
18
8
|
problems: ScoreboardProblems;
|
|
19
9
|
}
|
|
20
|
-
export type
|
|
10
|
+
export type ScoreboardTimelineEventResponseDto = {
|
|
21
11
|
timestamp: number;
|
|
22
12
|
userKey: string;
|
|
23
13
|
problemKey: string;
|
|
@@ -27,9 +17,9 @@ export type ScoreboardTimelineEventResponseDTO = {
|
|
|
27
17
|
indexAccepted: number;
|
|
28
18
|
penalty: number;
|
|
29
19
|
};
|
|
30
|
-
export interface
|
|
20
|
+
export interface ScoreboardHistoryResponseDto {
|
|
31
21
|
contestKey: string;
|
|
32
22
|
userProblemTimelineRefs: Record<string, number[]>;
|
|
33
|
-
timelineEvents:
|
|
34
|
-
participants: Record<string,
|
|
23
|
+
timelineEvents: ScoreboardTimelineEventResponseDto[];
|
|
24
|
+
participants: Record<string, UserSummaryListResponseDto>;
|
|
35
25
|
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export interface
|
|
1
|
+
import { EntityOrganizationSystemSummaryListResponseDto } from './problem';
|
|
2
|
+
import { UserBasicResponseDto } from './user';
|
|
3
|
+
export interface SessionBasicResponseDto {
|
|
4
4
|
id: string;
|
|
5
5
|
deviceName: string;
|
|
6
6
|
osName: string;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
expiresAt: number;
|
|
8
|
+
createdAt: number;
|
|
9
|
+
updatedAt: number;
|
|
10
10
|
}
|
|
11
|
-
export interface
|
|
11
|
+
export interface UserSessionSystemSummaryListResponseDto extends SessionBasicResponseDto {
|
|
12
12
|
userId: string;
|
|
13
|
-
user:
|
|
14
|
-
|
|
13
|
+
user: UserBasicResponseDto;
|
|
14
|
+
organization: EntityOrganizationSystemSummaryListResponseDto;
|
|
15
15
|
}
|
|
@@ -1,138 +1,83 @@
|
|
|
1
|
-
import { ClientId,
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
interface WebsocketMessage {
|
|
5
|
-
event: WebSocketMessageEvent;
|
|
6
|
-
clientId: ClientId;
|
|
7
|
-
}
|
|
8
|
-
export interface PingWebSocketEventDTO extends WebsocketMessage {
|
|
9
|
-
event: WebSocketMessageEvent.PING;
|
|
10
|
-
}
|
|
11
|
-
/** @deprecated the location is the `href` of the company presence (`UserPresenceData`) */
|
|
12
|
-
export interface ClientTrackLocationWebSocketEventDTO extends WebsocketMessage {
|
|
13
|
-
event: WebSocketMessageEvent.CLIENT_TRACK_LOCATION;
|
|
14
|
-
href: string;
|
|
15
|
-
}
|
|
16
|
-
export interface ClientTrackScreenshotWebSocketEventDTO extends WebsocketMessage {
|
|
17
|
-
event: WebSocketMessageEvent.CLIENT_TRACK_SCREENSHOT;
|
|
18
|
-
screenshot: string;
|
|
19
|
-
}
|
|
20
|
-
export interface ClientTrackDeviceWebSocketEventDTO extends WebsocketMessage {
|
|
21
|
-
event: WebSocketMessageEvent.CLIENT_TRACK_DEVICE;
|
|
22
|
-
device: Device;
|
|
23
|
-
}
|
|
24
|
-
export interface ChatCompletionsWebSocketEventDTO extends WebsocketMessage {
|
|
25
|
-
event: WebSocketMessageEvent.CHAT_COMPLETIONS;
|
|
26
|
-
chatAiId: string;
|
|
27
|
-
content: string;
|
|
28
|
-
}
|
|
29
|
-
export type WebSocketMessageEventDTO = PingWebSocketEventDTO | ClientTrackLocationWebSocketEventDTO | ClientTrackScreenshotWebSocketEventDTO | ClientTrackDeviceWebSocketEventDTO | ChatCompletionsWebSocketEventDTO;
|
|
1
|
+
import { ClientId, Ec2Instance, InfoLogCaseStatus, ProblemVerdict, SsmSession, SubmissionRunStatus, TestInfo, WebSocketResponseEvent, WebSocketResponseEventKey, WebSocketSubscriptionEvent } from '../types';
|
|
2
|
+
import { EcsTaskDefinitionSystemSummaryListResponseDto, EcsTaskSystemSummaryListResponseDto } from './system';
|
|
3
|
+
import { UserOrganizationBasicInfoResponseDto } from './user';
|
|
30
4
|
export interface WebsocketSubscription {
|
|
31
5
|
event: WebSocketSubscriptionEvent;
|
|
32
6
|
clientId: ClientId;
|
|
33
7
|
}
|
|
34
|
-
export interface
|
|
8
|
+
export interface SubscribeCodeRunStatusWebSocketEventDto extends WebsocketSubscription {
|
|
35
9
|
event: WebSocketSubscriptionEvent.SUBSCRIBE_CODE_RUN_STATUS;
|
|
36
10
|
runId: string;
|
|
37
11
|
}
|
|
38
|
-
export interface
|
|
12
|
+
export interface UnsubscribeCodeRunStatusWebSocketEventDto extends WebsocketSubscription {
|
|
39
13
|
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_CODE_RUN_STATUS;
|
|
40
14
|
runId: string;
|
|
41
15
|
}
|
|
42
|
-
export interface
|
|
16
|
+
export interface SubscribeSubmissionRunStatusWebSocketEventDto extends WebsocketSubscription {
|
|
43
17
|
event: WebSocketSubscriptionEvent.SUBSCRIBE_SUBMISSION_RUN_STATUS;
|
|
44
18
|
submitId: string;
|
|
45
19
|
}
|
|
46
|
-
export interface
|
|
20
|
+
export interface UnsubscribeSubmissionRunStatusWebSocketEventDto extends WebsocketSubscription {
|
|
47
21
|
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_SUBMISSION_RUN_STATUS;
|
|
48
22
|
submitId: string;
|
|
49
23
|
}
|
|
50
|
-
export interface
|
|
24
|
+
export interface SubscribeGetDataWebSocketEventDto extends WebsocketSubscription {
|
|
51
25
|
dataId: string;
|
|
52
26
|
event: WebSocketSubscriptionEvent.SUBSCRIBE_GET_DATA;
|
|
53
27
|
}
|
|
54
|
-
export interface
|
|
28
|
+
export interface UnsubscribeGetDataWebSocketEventDto extends WebsocketSubscription {
|
|
55
29
|
dataId: string;
|
|
56
30
|
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_GET_DATA;
|
|
57
31
|
}
|
|
58
|
-
export interface
|
|
32
|
+
export interface SubscribeProblemCrawledWebSocketEventDto extends WebsocketSubscription {
|
|
59
33
|
event: WebSocketSubscriptionEvent.SUBSCRIBE_PROBLEM_CRAWLED;
|
|
60
34
|
problemKey: string;
|
|
61
35
|
}
|
|
62
|
-
export interface
|
|
36
|
+
export interface UnsubscribeProblemCrawledWebSocketEventDto extends WebsocketSubscription {
|
|
63
37
|
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_PROBLEM_CRAWLED;
|
|
64
38
|
problemKey: string;
|
|
65
39
|
}
|
|
66
|
-
export interface
|
|
40
|
+
export interface SubscribeSubmissionsCrawlWebSocketEventDto extends WebsocketSubscription {
|
|
67
41
|
event: WebSocketSubscriptionEvent.SUBSCRIBE_SUBMISSIONS_CRAWL;
|
|
68
42
|
contestKey: string;
|
|
69
43
|
problemKeys: string;
|
|
70
44
|
}
|
|
71
|
-
export interface
|
|
45
|
+
export interface UnsubscribeSubmissionsCrawlWebSocketEventDto extends WebsocketSubscription {
|
|
72
46
|
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_SUBMISSIONS_CRAWL;
|
|
73
47
|
contestKey: string;
|
|
74
48
|
problemKeys: string;
|
|
75
49
|
}
|
|
76
|
-
export interface
|
|
50
|
+
export interface SubscribeContestChangesWebSocketEventDto extends WebsocketSubscription {
|
|
77
51
|
event: WebSocketSubscriptionEvent.SUBSCRIBE_CONTEST_CHANGES;
|
|
78
52
|
contestKey: string;
|
|
79
53
|
}
|
|
80
|
-
export interface
|
|
54
|
+
export interface UnsubscribeContestChangesWebSocketEventDto extends WebsocketSubscription {
|
|
81
55
|
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_CONTEST_CHANGES;
|
|
82
56
|
contestKey: string;
|
|
83
57
|
}
|
|
84
|
-
export interface
|
|
85
|
-
event: WebSocketSubscriptionEvent.SUBSCRIBE_CLIENT_TRACK;
|
|
86
|
-
}
|
|
87
|
-
export interface UnsubscribeClientTrackWebSocketEventDTO extends WebsocketSubscription {
|
|
88
|
-
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_CLIENT_TRACK;
|
|
89
|
-
}
|
|
90
|
-
export interface SubscribeUserNotificationWebsocketEventDTO extends WebsocketSubscription {
|
|
58
|
+
export interface SubscribeUserNotificationWebsocketEventDto extends WebsocketSubscription {
|
|
91
59
|
event: WebSocketSubscriptionEvent.SUBSCRIBE_USER_NOTIFICATION;
|
|
92
60
|
userKey: string;
|
|
93
61
|
}
|
|
94
|
-
export interface
|
|
62
|
+
export interface UnsubscribeUserNotificationWebSocketEventDto extends WebsocketSubscription {
|
|
95
63
|
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_USER_NOTIFICATION;
|
|
96
64
|
userKey: string;
|
|
97
65
|
}
|
|
98
|
-
export
|
|
99
|
-
|
|
100
|
-
trackedClientId: ClientId;
|
|
101
|
-
}
|
|
102
|
-
export interface UnsubscribeClientTrackDataWebSocketEventDTO extends WebsocketSubscription {
|
|
103
|
-
event: WebSocketSubscriptionEvent.UNSUBSCRIBE_CLIENT_TRACK_DATA;
|
|
104
|
-
trackedClientId: ClientId;
|
|
105
|
-
}
|
|
106
|
-
export type WebSocketSubscribeEventDTO = SubscribeCodeRunStatusWebSocketEventDTO | SubscribeSubmissionRunStatusWebSocketEventDTO | SubscribeGetDataWebSocketEventDTO | SubscribeProblemCrawledWebSocketEventDTO | SubscribeSubmissionsCrawlWebSocketEventDTO | SubscribeContestChangesWebSocketEventDTO | SubscribeClientTrackWebSocketEventDTO | SubscribeUserNotificationWebsocketEventDTO | SubscribeClientTrackDataWebSocketEventDTO;
|
|
107
|
-
export type WebSocketUnsubscribeEventDTO = UnsubscribeCodeRunStatusWebSocketEventDTO | UnsubscribeSubmissionRunStatusWebSocketEventDTO | UnsubscribeGetDataWebSocketEventDTO | UnsubscribeProblemCrawledWebSocketEventDTO | UnsubscribeSubmissionsCrawlWebSocketEventDTO | UnsubscribeContestChangesWebSocketEventDTO | UnsubscribeClientTrackWebSocketEventDTO | UnsubscribeUserNotificationWebSocketEventDTO | UnsubscribeClientTrackDataWebSocketEventDTO;
|
|
66
|
+
export type WebSocketSubscribeEventDto = SubscribeCodeRunStatusWebSocketEventDto | SubscribeSubmissionRunStatusWebSocketEventDto | SubscribeGetDataWebSocketEventDto | SubscribeProblemCrawledWebSocketEventDto | SubscribeSubmissionsCrawlWebSocketEventDto | SubscribeContestChangesWebSocketEventDto | SubscribeUserNotificationWebsocketEventDto;
|
|
67
|
+
export type WebSocketUnsubscribeEventDto = UnsubscribeCodeRunStatusWebSocketEventDto | UnsubscribeSubmissionRunStatusWebSocketEventDto | UnsubscribeGetDataWebSocketEventDto | UnsubscribeProblemCrawledWebSocketEventDto | UnsubscribeSubmissionsCrawlWebSocketEventDto | UnsubscribeContestChangesWebSocketEventDto | UnsubscribeUserNotificationWebSocketEventDto;
|
|
108
68
|
export interface WebSocketResponse {
|
|
109
69
|
event: WebSocketResponseEvent;
|
|
110
70
|
key: WebSocketResponseEventKey;
|
|
111
71
|
connectionId: string;
|
|
112
|
-
|
|
113
|
-
}
|
|
114
|
-
export interface
|
|
115
|
-
event: WebSocketResponseEvent.PONG;
|
|
116
|
-
data: PingResponseDTO;
|
|
117
|
-
}
|
|
118
|
-
export type InfoLogCaseStatus = {
|
|
119
|
-
inputKey: string;
|
|
120
|
-
out: string;
|
|
121
|
-
err: string;
|
|
122
|
-
log: string;
|
|
123
|
-
};
|
|
124
|
-
export interface CodeRunStatusWebSocketResponseEventDTO extends WebSocketResponse {
|
|
72
|
+
createdAt: number;
|
|
73
|
+
}
|
|
74
|
+
export interface CodeRunStatusWebSocketResponseEventDto extends WebSocketResponse {
|
|
125
75
|
event: WebSocketResponseEvent.CODE_RUN_STATUS;
|
|
126
76
|
runId: string;
|
|
127
77
|
status: SubmissionRunStatus;
|
|
128
78
|
log: InfoLogCaseStatus;
|
|
129
79
|
}
|
|
130
|
-
export
|
|
131
|
-
sampleCase: boolean;
|
|
132
|
-
caseResultsExecuted: number;
|
|
133
|
-
caseResultsTotal: number;
|
|
134
|
-
};
|
|
135
|
-
export interface SubmissionRunStatusWebSocketResponseEventDTO extends WebSocketResponse {
|
|
80
|
+
export interface SubmissionRunStatusWebSocketResponseEventDto extends WebSocketResponse {
|
|
136
81
|
event: WebSocketResponseEvent.SUBMISSION_RUN_STATUS;
|
|
137
82
|
submitId: string;
|
|
138
83
|
status: SubmissionRunStatus;
|
|
@@ -141,9 +86,9 @@ export interface SubmissionRunStatusWebSocketResponseEventDTO extends WebSocketR
|
|
|
141
86
|
testInfo?: TestInfo;
|
|
142
87
|
shouldValidateContest: boolean;
|
|
143
88
|
}
|
|
144
|
-
export interface
|
|
89
|
+
export interface UserMessageWebSocketResponseEventDto extends WebSocketResponse {
|
|
145
90
|
event: WebSocketResponseEvent.USER_MESSAGE;
|
|
146
|
-
user:
|
|
91
|
+
user: UserOrganizationBasicInfoResponseDto;
|
|
147
92
|
content: {
|
|
148
93
|
type: 'SUBMISSION_VERDICT';
|
|
149
94
|
contestName: string;
|
|
@@ -152,27 +97,27 @@ export interface UserMessageWebSocketResponseEventDTO extends WebSocketResponse
|
|
|
152
97
|
points: number;
|
|
153
98
|
};
|
|
154
99
|
}
|
|
155
|
-
export interface
|
|
100
|
+
export interface SendDataWebSocketResponseEventDto extends WebSocketResponse {
|
|
156
101
|
dataId: string;
|
|
157
102
|
content: any;
|
|
158
103
|
}
|
|
159
|
-
export interface
|
|
104
|
+
export interface SendDataEcsTaskDefinitionListWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
|
|
160
105
|
event: WebSocketResponseEvent.SEND_DATA_ECS_TASK_DEFINITIONS_LIST;
|
|
161
|
-
content:
|
|
106
|
+
content: EcsTaskDefinitionSystemSummaryListResponseDto[];
|
|
162
107
|
}
|
|
163
|
-
export interface
|
|
108
|
+
export interface SendDataEcsTasksListWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
|
|
164
109
|
event: WebSocketResponseEvent.SEND_DATA_ECS_TASKS_LIST;
|
|
165
|
-
content:
|
|
110
|
+
content: EcsTaskSystemSummaryListResponseDto[];
|
|
166
111
|
}
|
|
167
|
-
export interface
|
|
112
|
+
export interface SendDataEc2InstancesListWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
|
|
168
113
|
event: WebSocketResponseEvent.SEND_DATA_EC2_INSTANCES_LIST;
|
|
169
114
|
content: Ec2Instance[];
|
|
170
115
|
}
|
|
171
|
-
export interface
|
|
116
|
+
export interface SendDataSsmSessionsListWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
|
|
172
117
|
event: WebSocketResponseEvent.SEND_DATA_SSM_SESSIONS_LIST;
|
|
173
118
|
content: SsmSession[];
|
|
174
119
|
}
|
|
175
|
-
export interface
|
|
120
|
+
export interface SendDataRunCommandWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
|
|
176
121
|
event: WebSocketResponseEvent.SEND_DATA_RUN_COMMAND;
|
|
177
122
|
content: {
|
|
178
123
|
testCaseOutContent: string;
|
|
@@ -180,34 +125,13 @@ export interface SendDataRunCommandWebSocketResponseEventDTO extends SendDataWeb
|
|
|
180
125
|
testCaseLogContent: string;
|
|
181
126
|
};
|
|
182
127
|
}
|
|
183
|
-
export interface
|
|
184
|
-
event: WebSocketResponseEvent.SEND_DATA_CLIENT_TRACK;
|
|
185
|
-
content: {
|
|
186
|
-
location?: string;
|
|
187
|
-
screenshot?: string;
|
|
188
|
-
device?: Device;
|
|
189
|
-
};
|
|
190
|
-
}
|
|
191
|
-
export interface SendDataChatCompletionsWebSocketResponseEventDTO extends SendDataWebSocketResponseEventDTO {
|
|
192
|
-
event: WebSocketResponseEvent.SEND_DATA_CHAT_COMPLETIONS;
|
|
193
|
-
content: {
|
|
194
|
-
choices: [{
|
|
195
|
-
index: number;
|
|
196
|
-
message: {
|
|
197
|
-
role: string;
|
|
198
|
-
content: string;
|
|
199
|
-
};
|
|
200
|
-
}];
|
|
201
|
-
rawData: any;
|
|
202
|
-
};
|
|
203
|
-
}
|
|
204
|
-
export interface ProblemCrawledWebSocketResponseEventDTO extends WebSocketResponse {
|
|
128
|
+
export interface ProblemCrawledWebSocketResponseEventDto extends WebSocketResponse {
|
|
205
129
|
event: WebSocketResponseEvent.PROBLEM_CRAWLED;
|
|
206
130
|
content: {
|
|
207
131
|
problemKey: string;
|
|
208
132
|
};
|
|
209
133
|
}
|
|
210
|
-
export interface
|
|
134
|
+
export interface SubmissionsCrawlWebSocketResponseEventDto extends WebSocketResponse {
|
|
211
135
|
event: WebSocketResponseEvent.SUBMISSIONS_CRAWL;
|
|
212
136
|
content: {
|
|
213
137
|
contestKey: string;
|
|
@@ -219,23 +143,17 @@ export interface SubmissionsCrawlWebSocketResponseEventDTO extends WebSocketResp
|
|
|
219
143
|
isNewSubmission: boolean;
|
|
220
144
|
};
|
|
221
145
|
}
|
|
222
|
-
export interface
|
|
146
|
+
export interface ContestChangesWebSocketResponseEventDto extends WebSocketResponse {
|
|
223
147
|
event: WebSocketResponseEvent.CONTEST_CHANGES;
|
|
224
148
|
content: {
|
|
225
149
|
contestKey: string;
|
|
226
150
|
};
|
|
227
151
|
}
|
|
228
|
-
export interface
|
|
229
|
-
event: WebSocketResponseEvent.CLIENT_TRACK;
|
|
230
|
-
location: boolean;
|
|
231
|
-
screenshot: boolean;
|
|
232
|
-
device: boolean;
|
|
233
|
-
}
|
|
234
|
-
export interface UserNotificationWebSocketResponseEventDTO extends WebSocketResponse {
|
|
152
|
+
export interface UserNotificationWebSocketResponseEventDto extends WebSocketResponse {
|
|
235
153
|
event: WebSocketResponseEvent.USER_NOTIFICATION_SUBMISSION | WebSocketResponseEvent.USER_NOTIFICATION_CONTEST_CLARIFICATION;
|
|
236
154
|
content: any;
|
|
237
155
|
}
|
|
238
|
-
export interface
|
|
156
|
+
export interface UserNotificationSubmissionWebSocketResponseEventDto extends UserNotificationWebSocketResponseEventDto {
|
|
239
157
|
event: WebSocketResponseEvent.USER_NOTIFICATION_SUBMISSION;
|
|
240
158
|
content: {
|
|
241
159
|
contest: {
|
|
@@ -255,27 +173,26 @@ export interface UserNotificationSubmissionWebSocketResponseEventDTO extends Use
|
|
|
255
173
|
submissionId: string;
|
|
256
174
|
};
|
|
257
175
|
}
|
|
258
|
-
export interface
|
|
176
|
+
export interface UserNotificationContestClarificationWebSocketResponseEventDto extends UserNotificationWebSocketResponseEventDto {
|
|
259
177
|
event: WebSocketResponseEvent.USER_NOTIFICATION_CONTEST_CLARIFICATION;
|
|
260
178
|
content: {
|
|
261
179
|
contestKey: string;
|
|
262
180
|
};
|
|
263
181
|
}
|
|
264
|
-
export type
|
|
182
|
+
export type WebSocketResponseEventDto = CodeRunStatusWebSocketResponseEventDto | SubmissionRunStatusWebSocketResponseEventDto | UserMessageWebSocketResponseEventDto | SendDataEcsTaskDefinitionListWebSocketResponseEventDto | SendDataEcsTasksListWebSocketResponseEventDto | SendDataEc2InstancesListWebSocketResponseEventDto | SendDataSsmSessionsListWebSocketResponseEventDto | ProblemCrawledWebSocketResponseEventDto | SubmissionsCrawlWebSocketResponseEventDto | ContestChangesWebSocketResponseEventDto | SendDataRunCommandWebSocketResponseEventDto | UserNotificationSubmissionWebSocketResponseEventDto | UserNotificationContestClarificationWebSocketResponseEventDto;
|
|
265
183
|
/**
|
|
266
184
|
* Message sent by the backend producers to the websocket SQS queue:
|
|
267
185
|
* the producer (trusted, with access to the DB) decides the Ably channels where the event is published.
|
|
268
186
|
*/
|
|
269
|
-
export interface
|
|
187
|
+
export interface WebSocketChannelsMessageDto {
|
|
270
188
|
channels: string[];
|
|
271
|
-
event:
|
|
189
|
+
event: WebSocketResponseEventDto;
|
|
272
190
|
}
|
|
273
191
|
/**
|
|
274
|
-
* Data of a client (tab) in its
|
|
192
|
+
* Data of a client (tab) in its organization presence channel (`CHANNEL_ORGANIZATION_PRESENCE`).
|
|
275
193
|
* Sent by the client: informative only, the identity is the presence member `clientId`.
|
|
276
194
|
*/
|
|
277
195
|
export interface UserPresenceData {
|
|
278
196
|
href: string;
|
|
279
197
|
uiId: string;
|
|
280
198
|
}
|
|
281
|
-
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UserOrganizationBasicInfoResponseDto } from './user';
|
|
2
2
|
export type GroupByTimestampKey = 'year' | 'month' | 'day' | 'hour' | 'minute' | 'second' | number;
|
|
3
3
|
export type StatisticsGrouped<T> = Partial<Record<GroupByTimestampKey, Record<number, T>>>;
|
|
4
|
-
export interface
|
|
4
|
+
export interface StatisticsOrganizationResponseDto {
|
|
5
5
|
codeEditorRuns: StatisticsGrouped<number>;
|
|
6
6
|
judgingRuns: StatisticsGrouped<number>;
|
|
7
7
|
reJudgingRuns: StatisticsGrouped<number>;
|
|
@@ -9,7 +9,7 @@ export interface StatisticsCompanyResponseDTO {
|
|
|
9
9
|
problems: number;
|
|
10
10
|
contests: number;
|
|
11
11
|
}
|
|
12
|
-
export interface
|
|
12
|
+
export interface StatisticsProblemResponseDto {
|
|
13
13
|
verdict: {
|
|
14
14
|
[key: string]: {
|
|
15
15
|
key: string;
|
|
@@ -26,7 +26,7 @@ export interface StatisticsProblemResponseDTO {
|
|
|
26
26
|
};
|
|
27
27
|
date: StatisticsGrouped<number>;
|
|
28
28
|
}
|
|
29
|
-
export type
|
|
29
|
+
export type StatisticsUserTrackDataResponseDto = {
|
|
30
30
|
timestamp: number;
|
|
31
31
|
history: {
|
|
32
32
|
href: string;
|
|
@@ -34,10 +34,10 @@ export type StatisticsUserTrackDataResponseDTO = {
|
|
|
34
34
|
timestamp: number;
|
|
35
35
|
}[];
|
|
36
36
|
};
|
|
37
|
-
export interface
|
|
37
|
+
export interface StatisticsUserTrackResponseDto {
|
|
38
38
|
[key: string]: {
|
|
39
|
-
user:
|
|
39
|
+
user: UserOrganizationBasicInfoResponseDto;
|
|
40
40
|
sessionId: string;
|
|
41
|
-
data: StatisticsGrouped<
|
|
41
|
+
data: StatisticsGrouped<StatisticsUserTrackDataResponseDto>;
|
|
42
42
|
};
|
|
43
43
|
}
|