@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.
Files changed (65) hide show
  1. package/dist/cjs/index.cjs +410 -543
  2. package/dist/esm/index.js +320 -489
  3. package/dist/types/constants/entity.d.ts +3 -3
  4. package/dist/types/constants/index.d.ts +1 -1
  5. package/dist/types/constants/organization.d.ts +9 -0
  6. package/dist/types/constants/websocket.d.ts +5 -18
  7. package/dist/types/dto/class.d.ts +34 -34
  8. package/dist/types/dto/code.d.ts +1 -1
  9. package/dist/types/dto/comments.d.ts +9 -9
  10. package/dist/types/dto/contest.d.ts +46 -42
  11. package/dist/types/dto/course.d.ts +13 -13
  12. package/dist/types/dto/entity.d.ts +30 -25
  13. package/dist/types/dto/excalidraw.d.ts +7 -7
  14. package/dist/types/dto/file.d.ts +10 -15
  15. package/dist/types/dto/image.d.ts +2 -2
  16. package/dist/types/dto/index.d.ts +1 -1
  17. package/dist/types/dto/judge.d.ts +5 -5
  18. package/dist/types/dto/markdown.d.ts +7 -7
  19. package/dist/types/dto/mermaid.d.ts +7 -7
  20. package/dist/types/dto/{company.d.ts → organization.d.ts} +16 -16
  21. package/dist/types/dto/problem.d.ts +22 -22
  22. package/dist/types/dto/scoreboard.d.ts +8 -18
  23. package/dist/types/dto/session.d.ts +9 -9
  24. package/dist/types/dto/socket.d.ts +43 -126
  25. package/dist/types/dto/statistics.d.ts +7 -7
  26. package/dist/types/dto/submission.d.ts +22 -22
  27. package/dist/types/dto/system.d.ts +7 -82
  28. package/dist/types/dto/url.d.ts +1 -1
  29. package/dist/types/dto/user.d.ts +22 -22
  30. package/dist/types/dto/virtual-user.d.ts +3 -25
  31. package/dist/types/dto/worksheet-submissions.d.ts +22 -22
  32. package/dist/types/dto/worksheet.d.ts +12 -12
  33. package/dist/types/helpers/class.d.ts +4 -4
  34. package/dist/types/helpers/comments.d.ts +1 -1
  35. package/dist/types/helpers/contest.d.ts +4 -4
  36. package/dist/types/helpers/date.d.ts +68 -0
  37. package/dist/types/helpers/document.d.ts +2 -2
  38. package/dist/types/helpers/index.d.ts +3 -0
  39. package/dist/types/helpers/number.d.ts +2 -0
  40. package/dist/types/helpers/responses.d.ts +1 -1
  41. package/dist/types/helpers/socket.d.ts +37 -50
  42. package/dist/types/helpers/time.d.ts +0 -11
  43. package/dist/types/helpers/user.d.ts +2 -2
  44. package/dist/types/index.d.ts +0 -1
  45. package/dist/types/types/class.d.ts +6 -6
  46. package/dist/types/types/comments.d.ts +2 -2
  47. package/dist/types/types/contest.d.ts +20 -23
  48. package/dist/types/types/entity.d.ts +13 -19
  49. package/dist/types/types/file.d.ts +6 -0
  50. package/dist/types/types/index.d.ts +3 -1
  51. package/dist/types/types/{company.d.ts → organization.d.ts} +2 -2
  52. package/dist/types/types/prisma.d.ts +2 -2
  53. package/dist/types/types/problems.d.ts +1 -1
  54. package/dist/types/types/scoreboard.d.ts +11 -0
  55. package/dist/types/types/sheet.d.ts +1 -1
  56. package/dist/types/types/socket.d.ts +12 -16
  57. package/dist/types/types/system.d.ts +76 -0
  58. package/dist/types/types/teams.d.ts +8 -8
  59. package/dist/types/types/virtual-user.d.ts +22 -0
  60. package/package.json +1 -1
  61. package/dist/types/constants/company.d.ts +0 -9
  62. package/dist/types/prototypes/Date.d.ts +0 -62
  63. package/dist/types/prototypes/Number.d.ts +0 -7
  64. package/dist/types/prototypes/index.d.ts +0 -3
  65. /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 JudgeDataResponseDTO extends Omit<JudgeBaseDocument, 'getProblemUrl' | 'getUserSubmissionsUrl' | 'getLoginUrl' | 'getSubmitUrl'> {
2
+ export interface JudgeDataResponseDto extends Omit<JudgeBaseDocument, 'getProblemUrl' | 'getUserSubmissionsUrl' | 'getLoginUrl' | 'getSubmitUrl'> {
3
3
  }
4
- export interface JudgeSummaryListResponseDTO extends Omit<JudgeBaseDocument, 'getProblemUrl' | 'getUserSubmissionsUrl' | 'getSubmissionUrl' | 'getLoginUrl' | 'getProfileUrl' | 'getSubmitUrl'> {
4
+ export interface JudgeSummaryListResponseDto extends Omit<JudgeBaseDocument, 'getProblemUrl' | 'getUserSubmissionsUrl' | 'getSubmissionUrl' | 'getLoginUrl' | 'getProfileUrl' | 'getSubmitUrl'> {
5
5
  }
6
- export interface JudgeSystemSummaryListResponseDTO extends JudgeSummaryListResponseDTO {
6
+ export interface JudgeSystemSummaryListResponseDto extends JudgeSummaryListResponseDto {
7
7
  id: string;
8
- creationTimestamp: number;
9
- updateTimestamp: number;
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 { EntityMembersDTO, EntityMembersResponseDTO } from './entity';
3
- import { UserCompanyBasicInfoResponseDTO } from './user';
4
- export interface MarkdownResponseDTO extends Omit<MarkdownBaseDocument, 'members'> {
5
- owner: UserCompanyBasicInfoResponseDTO;
6
- members: EntityMembersResponseDTO;
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 UpsertMarkdownDTO extends Omit<MarkdownBaseDocument, 'key' | 'members'> {
11
- members: EntityMembersDTO;
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 { EntityMembersDTO, EntityMembersResponseDTO } from './entity';
3
- import { UserCompanyBasicInfoResponseDTO } from './user';
4
- export interface MermaidResponseDTO extends Omit<MermaidBaseDocument, 'members'> {
5
- owner: UserCompanyBasicInfoResponseDTO;
6
- members: EntityMembersResponseDTO;
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 UpsertMermaidDTO extends Omit<MermaidBaseDocument, 'key' | 'members'> {
11
- members: EntityMembersDTO;
10
+ export interface UpsertMermaidDto extends Omit<MermaidBaseDocument, 'key' | 'members'> {
11
+ members: EntityMembersDto;
12
12
  }
@@ -1,35 +1,35 @@
1
- import { CompanyPlan, ResourceInstance, ResourceLogger, Theme } from '../types';
2
- import { EmailDataResponseDTO } from './system';
3
- import { UserCompanyBasicInfoResponseDTO, UserPermissions } from './user';
4
- export interface CompanyJudgeResponseDTO {
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 CompanyTrustedCompanyResponseDTO {
9
+ export interface OrganizationTrustedOrganizationResponseDto {
10
10
  key: string;
11
11
  name: string;
12
12
  }
13
- export interface CompanyResponseDTO extends EmailDataResponseDTO {
13
+ export interface OrganizationResponseDto extends EmailDataResponseDto {
14
14
  name: string;
15
15
  key: string;
16
16
  hosts: string[];
17
17
  imageUrl: string;
18
- managerUser: UserCompanyBasicInfoResponseDTO;
19
- systemAdminUser: UserCompanyBasicInfoResponseDTO;
20
- plan: CompanyPlan;
21
- startTimestamp: number;
22
- judges: CompanyJudgeResponseDTO[];
23
- trustedCompanies: CompanyTrustedCompanyResponseDTO[];
24
- styles: CompanyStyles;
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 CompanyUserPermissionsResponseDTO extends CompanyResponseDTO {
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 CompanyResourceSpecificationsResponseDTO {
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 CompanyStyles = Record<Theme, {
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 { EntityMembersDTO, EntityMembersResponseDTO } from './entity';
3
- import { EntityOwnerSystemSummaryListResponseDTO, UserCompanyBasicInfoResponseDTO } from './user';
4
- export interface ProblemJudgeSummaryListResponseDTO extends Pick<JudgeBaseDocument, 'isExternal' | 'isSubmitSupported' | 'name' | 'key'> {
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 EntityCompanySummaryListResponseDTO {
8
+ export interface EntityOrganizationSummaryListResponseDto {
9
9
  key: string;
10
10
  }
11
- export interface ProblemBasicSummaryListResponseDTO {
12
- company: EntityCompanySummaryListResponseDTO;
13
- judge: ProblemJudgeSummaryListResponseDTO;
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: EntityMembersResponseDTO;
22
+ members: EntityMembersResponseDto;
23
23
  externalUrl: string;
24
24
  }
25
- export interface ProblemSummaryListResponseDTO extends ProblemBasicSummaryListResponseDTO {
25
+ export interface ProblemSummaryListResponseDto extends ProblemBasicSummaryListResponseDto {
26
26
  user: ProblemUser;
27
- owner: UserCompanyBasicInfoResponseDTO;
27
+ owner: UserOrganizationBasicInfoResponseDto;
28
28
  }
29
- export interface ProblemDataResponseDTO extends ProblemSummaryListResponseDTO {
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 ProblemJudgeSystemSummaryListResponseDTO extends ProblemJudgeSummaryListResponseDTO {
37
+ export interface ProblemJudgeSystemSummaryListResponseDto extends ProblemJudgeSummaryListResponseDto {
38
38
  name: string;
39
39
  id: string;
40
40
  }
41
- export interface EntityCompanySystemSummaryListResponseDTO extends EntityCompanySummaryListResponseDTO {
41
+ export interface EntityOrganizationSystemSummaryListResponseDto extends EntityOrganizationSummaryListResponseDto {
42
42
  name: string;
43
43
  id: string;
44
44
  }
45
- export interface ProblemSystemSummaryListResponseDTO extends ProblemSummaryListResponseDTO {
45
+ export interface ProblemSystemSummaryListResponseDto extends ProblemSummaryListResponseDto {
46
46
  state: EntityState;
47
47
  id: string;
48
- owner: EntityOwnerSystemSummaryListResponseDTO;
49
- judge: ProblemJudgeSystemSummaryListResponseDTO;
50
- company: EntityCompanySystemSummaryListResponseDTO;
51
- creationTimestamp: number;
52
- updateTimestamp: number;
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 ProblemTestCasesResponseDTO extends Array<ProblemTestCaseResponse> {
62
+ export interface ProblemTestCasesResponseDto extends Array<ProblemTestCaseResponse> {
63
63
  }
64
- export interface UpsertProblemDTO extends Omit<ProblemBaseDocument, 'testCases' | 'testCasesUpdatedAtTimestamp' | 'key' | 'members' | 'judgeId'> {
65
- members: EntityMembersDTO;
64
+ export interface UpsertProblemDto extends Omit<ProblemBaseDocument, 'testCases' | 'testCasesUpdatedAt' | 'key' | 'members' | 'judgeId'> {
65
+ members: EntityMembersDto;
66
66
  }
@@ -1,23 +1,13 @@
1
- import { UserSummaryListResponseDTO } from './user';
2
- export type ScoreboardProblem = {
3
- attempts: number;
4
- points: number;
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 ScoreboardTimelineEventResponseDTO = {
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 ScoreboardHistoryResponseDTO {
20
+ export interface ScoreboardHistoryResponseDto {
31
21
  contestKey: string;
32
22
  userProblemTimelineRefs: Record<string, number[]>;
33
- timelineEvents: ScoreboardTimelineEventResponseDTO[];
34
- participants: Record<string, UserSummaryListResponseDTO>;
23
+ timelineEvents: ScoreboardTimelineEventResponseDto[];
24
+ participants: Record<string, UserSummaryListResponseDto>;
35
25
  }
@@ -1,15 +1,15 @@
1
- import { EntityCompanySystemSummaryListResponseDTO } from './problem';
2
- import { UserBasicResponseDTO } from './user';
3
- export interface SessionBasicResponseDTO {
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
- validUntilTimestamp: number;
8
- creationTimestamp: number;
9
- updateTimestamp: number;
7
+ expiresAt: number;
8
+ createdAt: number;
9
+ updatedAt: number;
10
10
  }
11
- export interface UserSessionSystemSummaryListResponseDTO extends SessionBasicResponseDTO {
11
+ export interface UserSessionSystemSummaryListResponseDto extends SessionBasicResponseDto {
12
12
  userId: string;
13
- user: UserBasicResponseDTO;
14
- company: EntityCompanySystemSummaryListResponseDTO;
13
+ user: UserBasicResponseDto;
14
+ organization: EntityOrganizationSystemSummaryListResponseDto;
15
15
  }
@@ -1,138 +1,83 @@
1
- import { ClientId, Device, ProblemVerdict, SubmissionRunStatus, WebSocketMessageEvent, WebSocketResponseEvent, WebSocketResponseEventKey, WebSocketSubscriptionEvent } from '../types';
2
- import { Ec2Instance, EcsTaskDefinitionSystemSummaryListResponseDTO, EcsTaskSystemSummaryListResponseDTO, SsmSession } from './system';
3
- import { PingResponseDTO, UserCompanyBasicInfoResponseDTO } from './user';
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 SubscribeCodeRunStatusWebSocketEventDTO extends WebsocketSubscription {
8
+ export interface SubscribeCodeRunStatusWebSocketEventDto extends WebsocketSubscription {
35
9
  event: WebSocketSubscriptionEvent.SUBSCRIBE_CODE_RUN_STATUS;
36
10
  runId: string;
37
11
  }
38
- export interface UnsubscribeCodeRunStatusWebSocketEventDTO extends WebsocketSubscription {
12
+ export interface UnsubscribeCodeRunStatusWebSocketEventDto extends WebsocketSubscription {
39
13
  event: WebSocketSubscriptionEvent.UNSUBSCRIBE_CODE_RUN_STATUS;
40
14
  runId: string;
41
15
  }
42
- export interface SubscribeSubmissionRunStatusWebSocketEventDTO extends WebsocketSubscription {
16
+ export interface SubscribeSubmissionRunStatusWebSocketEventDto extends WebsocketSubscription {
43
17
  event: WebSocketSubscriptionEvent.SUBSCRIBE_SUBMISSION_RUN_STATUS;
44
18
  submitId: string;
45
19
  }
46
- export interface UnsubscribeSubmissionRunStatusWebSocketEventDTO extends WebsocketSubscription {
20
+ export interface UnsubscribeSubmissionRunStatusWebSocketEventDto extends WebsocketSubscription {
47
21
  event: WebSocketSubscriptionEvent.UNSUBSCRIBE_SUBMISSION_RUN_STATUS;
48
22
  submitId: string;
49
23
  }
50
- export interface SubscribeGetDataWebSocketEventDTO extends WebsocketSubscription {
24
+ export interface SubscribeGetDataWebSocketEventDto extends WebsocketSubscription {
51
25
  dataId: string;
52
26
  event: WebSocketSubscriptionEvent.SUBSCRIBE_GET_DATA;
53
27
  }
54
- export interface UnsubscribeGetDataWebSocketEventDTO extends WebsocketSubscription {
28
+ export interface UnsubscribeGetDataWebSocketEventDto extends WebsocketSubscription {
55
29
  dataId: string;
56
30
  event: WebSocketSubscriptionEvent.UNSUBSCRIBE_GET_DATA;
57
31
  }
58
- export interface SubscribeProblemCrawledWebSocketEventDTO extends WebsocketSubscription {
32
+ export interface SubscribeProblemCrawledWebSocketEventDto extends WebsocketSubscription {
59
33
  event: WebSocketSubscriptionEvent.SUBSCRIBE_PROBLEM_CRAWLED;
60
34
  problemKey: string;
61
35
  }
62
- export interface UnsubscribeProblemCrawledWebSocketEventDTO extends WebsocketSubscription {
36
+ export interface UnsubscribeProblemCrawledWebSocketEventDto extends WebsocketSubscription {
63
37
  event: WebSocketSubscriptionEvent.UNSUBSCRIBE_PROBLEM_CRAWLED;
64
38
  problemKey: string;
65
39
  }
66
- export interface SubscribeSubmissionsCrawlWebSocketEventDTO extends WebsocketSubscription {
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 UnsubscribeSubmissionsCrawlWebSocketEventDTO extends WebsocketSubscription {
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 SubscribeContestChangesWebSocketEventDTO extends WebsocketSubscription {
50
+ export interface SubscribeContestChangesWebSocketEventDto extends WebsocketSubscription {
77
51
  event: WebSocketSubscriptionEvent.SUBSCRIBE_CONTEST_CHANGES;
78
52
  contestKey: string;
79
53
  }
80
- export interface UnsubscribeContestChangesWebSocketEventDTO extends WebsocketSubscription {
54
+ export interface UnsubscribeContestChangesWebSocketEventDto extends WebsocketSubscription {
81
55
  event: WebSocketSubscriptionEvent.UNSUBSCRIBE_CONTEST_CHANGES;
82
56
  contestKey: string;
83
57
  }
84
- export interface SubscribeClientTrackWebSocketEventDTO extends WebsocketSubscription {
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 UnsubscribeUserNotificationWebSocketEventDTO extends WebsocketSubscription {
62
+ export interface UnsubscribeUserNotificationWebSocketEventDto extends WebsocketSubscription {
95
63
  event: WebSocketSubscriptionEvent.UNSUBSCRIBE_USER_NOTIFICATION;
96
64
  userKey: string;
97
65
  }
98
- export interface SubscribeClientTrackDataWebSocketEventDTO extends WebsocketSubscription {
99
- event: WebSocketSubscriptionEvent.SUBSCRIBE_CLIENT_TRACK_DATA;
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
- messageTimestamp: number;
113
- }
114
- export interface PongWebSocketResponseEventDTO extends WebSocketResponse {
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 type TestInfo = {
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 UserMessageWebSocketResponseEventDTO extends WebSocketResponse {
89
+ export interface UserMessageWebSocketResponseEventDto extends WebSocketResponse {
145
90
  event: WebSocketResponseEvent.USER_MESSAGE;
146
- user: UserCompanyBasicInfoResponseDTO;
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 SendDataWebSocketResponseEventDTO extends WebSocketResponse {
100
+ export interface SendDataWebSocketResponseEventDto extends WebSocketResponse {
156
101
  dataId: string;
157
102
  content: any;
158
103
  }
159
- export interface SendDataEcsTaskDefinitionListWebSocketResponseEventDTO extends SendDataWebSocketResponseEventDTO {
104
+ export interface SendDataEcsTaskDefinitionListWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
160
105
  event: WebSocketResponseEvent.SEND_DATA_ECS_TASK_DEFINITIONS_LIST;
161
- content: EcsTaskDefinitionSystemSummaryListResponseDTO[];
106
+ content: EcsTaskDefinitionSystemSummaryListResponseDto[];
162
107
  }
163
- export interface SendDataEcsTasksListWebSocketResponseEventDTO extends SendDataWebSocketResponseEventDTO {
108
+ export interface SendDataEcsTasksListWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
164
109
  event: WebSocketResponseEvent.SEND_DATA_ECS_TASKS_LIST;
165
- content: EcsTaskSystemSummaryListResponseDTO[];
110
+ content: EcsTaskSystemSummaryListResponseDto[];
166
111
  }
167
- export interface SendDataEc2InstancesListWebSocketResponseEventDTO extends SendDataWebSocketResponseEventDTO {
112
+ export interface SendDataEc2InstancesListWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
168
113
  event: WebSocketResponseEvent.SEND_DATA_EC2_INSTANCES_LIST;
169
114
  content: Ec2Instance[];
170
115
  }
171
- export interface SendDataSsmSessionsListWebSocketResponseEventDTO extends SendDataWebSocketResponseEventDTO {
116
+ export interface SendDataSsmSessionsListWebSocketResponseEventDto extends SendDataWebSocketResponseEventDto {
172
117
  event: WebSocketResponseEvent.SEND_DATA_SSM_SESSIONS_LIST;
173
118
  content: SsmSession[];
174
119
  }
175
- export interface SendDataRunCommandWebSocketResponseEventDTO extends SendDataWebSocketResponseEventDTO {
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 SendDataClientTrackWebSocketResponseEventDTO extends SendDataWebSocketResponseEventDTO {
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 SubmissionsCrawlWebSocketResponseEventDTO extends WebSocketResponse {
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 ContestChangesWebSocketResponseEventDTO extends WebSocketResponse {
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 ClientTrackWebSocketResponseEventDTO extends WebSocketResponse {
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 UserNotificationSubmissionWebSocketResponseEventDTO extends UserNotificationWebSocketResponseEventDTO {
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 UserNotificationContestClarificationWebSocketResponseEventDTO extends UserNotificationWebSocketResponseEventDTO {
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 WebSocketResponseEventDTO = PongWebSocketResponseEventDTO | CodeRunStatusWebSocketResponseEventDTO | SubmissionRunStatusWebSocketResponseEventDTO | UserMessageWebSocketResponseEventDTO | SendDataEcsTaskDefinitionListWebSocketResponseEventDTO | SendDataEcsTasksListWebSocketResponseEventDTO | SendDataEc2InstancesListWebSocketResponseEventDTO | SendDataSsmSessionsListWebSocketResponseEventDTO | ProblemCrawledWebSocketResponseEventDTO | SendDataChatCompletionsWebSocketResponseEventDTO | SubmissionsCrawlWebSocketResponseEventDTO | ContestChangesWebSocketResponseEventDTO | SendDataRunCommandWebSocketResponseEventDTO | SendDataClientTrackWebSocketResponseEventDTO | ClientTrackWebSocketResponseEventDTO | UserNotificationSubmissionWebSocketResponseEventDTO | UserNotificationContestClarificationWebSocketResponseEventDTO;
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 WebSocketChannelsMessageDTO {
187
+ export interface WebSocketChannelsMessageDto {
270
188
  channels: string[];
271
- event: WebSocketResponseEventDTO;
189
+ event: WebSocketResponseEventDto;
272
190
  }
273
191
  /**
274
- * Data of a client (tab) in its company presence channel (`CHANNEL_COMPANY_PRESENCE`).
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 { UserCompanyBasicInfoResponseDTO } from './user';
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 StatisticsCompanyResponseDTO {
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 StatisticsProblemResponseDTO {
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 StatisticsUserTrackDataResponseDTO = {
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 StatisticsUserTrackResponseDTO {
37
+ export interface StatisticsUserTrackResponseDto {
38
38
  [key: string]: {
39
- user: UserCompanyBasicInfoResponseDTO;
39
+ user: UserOrganizationBasicInfoResponseDto;
40
40
  sessionId: string;
41
- data: StatisticsGrouped<StatisticsUserTrackDataResponseDTO>;
41
+ data: StatisticsGrouped<StatisticsUserTrackDataResponseDto>;
42
42
  };
43
43
  }