@xcpcio/core 0.64.3 → 0.65.0
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/index.cjs +174 -119
- package/dist/index.d.cts +45 -31
- package/dist/index.d.mts +45 -31
- package/dist/index.d.ts +45 -31
- package/dist/index.mjs +174 -120
- package/package.json +2 -2
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CalculationOfPenalty, TimeUnit,
|
|
1
|
+
import { Lang, I18NStringSet, Text, CalculationOfPenalty, TimeUnit, StatusTimeDisplay, MedalPreset, Image, BannerMode, ContestState, Contest as Contest$1, SubmissionReaction, SubmissionStatus, Submission as Submission$1, Submissions as Submissions$1, BalloonColor, Problem as Problem$1, Problems as Problems$1, Person as Person$1, Persons as Persons$1, Team as Team$1, Teams as Teams$1, ContestIndex as ContestIndex$1, IRatingHistory, IRatingUser, IRating } from '@xcpcio/types';
|
|
2
2
|
import dayjs from 'dayjs';
|
|
3
3
|
export { default as dayjs } from 'dayjs';
|
|
4
4
|
import * as XLSX from 'xlsx-js-style';
|
|
@@ -19,6 +19,24 @@ declare class Award {
|
|
|
19
19
|
declare function isValidMedalType(medal: MedalType): boolean;
|
|
20
20
|
type Awards = Map<string, Award[]>;
|
|
21
21
|
|
|
22
|
+
interface SelectOptionItem {
|
|
23
|
+
value: string;
|
|
24
|
+
text: string;
|
|
25
|
+
}
|
|
26
|
+
declare class I18nText {
|
|
27
|
+
texts: Map<Lang, string>;
|
|
28
|
+
fallback?: string;
|
|
29
|
+
fallbackLang?: Lang;
|
|
30
|
+
constructor();
|
|
31
|
+
get(lang: Lang): string | undefined;
|
|
32
|
+
getOrDefault(lang?: Lang): string;
|
|
33
|
+
set(lang: Lang, text: string): void;
|
|
34
|
+
has(lang: Lang): boolean;
|
|
35
|
+
static fromI18NStringSet(stringSet: I18NStringSet): I18nText;
|
|
36
|
+
static fromIText(text: Text): I18nText;
|
|
37
|
+
toI18NStringSet(): I18NStringSet;
|
|
38
|
+
}
|
|
39
|
+
|
|
22
40
|
declare class ContestOptions {
|
|
23
41
|
calculationOfPenalty: CalculationOfPenalty;
|
|
24
42
|
submissionTimestampUnit: TimeUnit;
|
|
@@ -31,8 +49,7 @@ declare class ContestOptions {
|
|
|
31
49
|
}
|
|
32
50
|
|
|
33
51
|
declare class Group {
|
|
34
|
-
|
|
35
|
-
defaultLang: Lang;
|
|
52
|
+
name: I18nText;
|
|
36
53
|
isDefault: boolean;
|
|
37
54
|
constructor();
|
|
38
55
|
}
|
|
@@ -48,7 +65,7 @@ declare function getTimeDiff(seconds: number): string;
|
|
|
48
65
|
|
|
49
66
|
declare class Contest {
|
|
50
67
|
id: string;
|
|
51
|
-
name:
|
|
68
|
+
name: I18nText;
|
|
52
69
|
startTime: dayjs.Dayjs;
|
|
53
70
|
endTime: dayjs.Dayjs;
|
|
54
71
|
freezeTime: dayjs.Dayjs;
|
|
@@ -65,9 +82,9 @@ declare class Contest {
|
|
|
65
82
|
problemsMap: Map<string, Problem>;
|
|
66
83
|
statusTimeDisplay: StatusTimeDisplay;
|
|
67
84
|
badge?: string;
|
|
85
|
+
organization?: string;
|
|
68
86
|
medal?: Record<string, Record<string, number>> | MedalPreset;
|
|
69
87
|
awards?: Awards;
|
|
70
|
-
organization?: string;
|
|
71
88
|
group: Map<string, Group>;
|
|
72
89
|
tag: Map<string, string>;
|
|
73
90
|
logo?: Image;
|
|
@@ -137,7 +154,7 @@ declare class ProblemStatistics {
|
|
|
137
154
|
declare class Problem {
|
|
138
155
|
id: string;
|
|
139
156
|
label: string;
|
|
140
|
-
name
|
|
157
|
+
name?: I18nText;
|
|
141
158
|
timeLimit?: string;
|
|
142
159
|
memoryLimit?: string;
|
|
143
160
|
balloonColor: BalloonColor;
|
|
@@ -174,6 +191,17 @@ declare class TeamProblemStatistics {
|
|
|
174
191
|
get penaltyInSecond(): number;
|
|
175
192
|
}
|
|
176
193
|
|
|
194
|
+
declare class Person {
|
|
195
|
+
name: I18nText;
|
|
196
|
+
cfID?: string;
|
|
197
|
+
icpcID?: string;
|
|
198
|
+
constructor(name?: I18nText);
|
|
199
|
+
toIPerson(): Person$1;
|
|
200
|
+
static fromIPerson(iPerson: Person$1): Person;
|
|
201
|
+
}
|
|
202
|
+
type Persons = Array<Person>;
|
|
203
|
+
declare function createPersons(iPersons?: Text | Array<Text> | Persons$1): Persons;
|
|
204
|
+
|
|
177
205
|
declare class PlaceChartPointData {
|
|
178
206
|
timePoint: number;
|
|
179
207
|
rank: number;
|
|
@@ -182,13 +210,13 @@ declare class PlaceChartPointData {
|
|
|
182
210
|
}
|
|
183
211
|
declare class Team {
|
|
184
212
|
id: string;
|
|
185
|
-
name:
|
|
213
|
+
name: I18nText;
|
|
186
214
|
organization: string;
|
|
187
215
|
badge?: Image;
|
|
188
216
|
group: Array<string>;
|
|
189
217
|
tag: Array<string>;
|
|
190
|
-
|
|
191
|
-
members
|
|
218
|
+
coaches: Persons;
|
|
219
|
+
members: Persons;
|
|
192
220
|
rank: number;
|
|
193
221
|
originalRank: number;
|
|
194
222
|
organizationRank: number;
|
|
@@ -210,10 +238,10 @@ declare class Team {
|
|
|
210
238
|
get penaltyToMinute(): number;
|
|
211
239
|
get isUnofficial(): boolean;
|
|
212
240
|
get isGirl(): boolean;
|
|
213
|
-
get membersToArray(): string[];
|
|
214
|
-
get membersToString(): string | undefined;
|
|
215
241
|
get isEffectiveTeam(): boolean;
|
|
216
242
|
get dirt(): number;
|
|
243
|
+
membersToString(lang?: Lang): string;
|
|
244
|
+
coachesToString(lang?: Lang): string;
|
|
217
245
|
calcSE(totalTeams: number): number;
|
|
218
246
|
calcSolvedData(options: ContestOptions): void;
|
|
219
247
|
calcAwards(awards?: Award[]): void;
|
|
@@ -235,11 +263,6 @@ declare class Balloon {
|
|
|
235
263
|
}
|
|
236
264
|
type Balloons = Array<Balloon>;
|
|
237
265
|
|
|
238
|
-
interface SelectOptionItem {
|
|
239
|
-
value: string;
|
|
240
|
-
text: string;
|
|
241
|
-
}
|
|
242
|
-
|
|
243
266
|
declare enum GiantsType {
|
|
244
267
|
BLUE = 0,
|
|
245
268
|
RED = 1
|
|
@@ -279,7 +302,7 @@ declare class BattleOfGiants {
|
|
|
279
302
|
}
|
|
280
303
|
|
|
281
304
|
declare class ContestIndexConfig {
|
|
282
|
-
contestName:
|
|
305
|
+
contestName: I18nText;
|
|
283
306
|
startTime: dayjs.Dayjs;
|
|
284
307
|
endTime: dayjs.Dayjs;
|
|
285
308
|
freezeTime: dayjs.Dayjs;
|
|
@@ -380,24 +403,15 @@ declare class ICPCStandingsCsvConverter {
|
|
|
380
403
|
|
|
381
404
|
declare function getImageSource(image: Image, asset_host?: string): string;
|
|
382
405
|
|
|
383
|
-
declare class Person {
|
|
384
|
-
name: string;
|
|
385
|
-
constructor(name?: string);
|
|
386
|
-
toJSON(): IPerson;
|
|
387
|
-
static fromJSON(iPerson: IPerson | string): Person;
|
|
388
|
-
}
|
|
389
|
-
type Persons = Array<Person>;
|
|
390
|
-
declare function createPersons(iPersons: string | Array<string>): Persons;
|
|
391
|
-
|
|
392
406
|
declare class RatingHistory {
|
|
393
407
|
rank: number;
|
|
394
408
|
rating: number;
|
|
395
|
-
teamName:
|
|
409
|
+
teamName: I18nText;
|
|
396
410
|
organization: string;
|
|
397
411
|
members: Persons;
|
|
398
412
|
coaches: Persons;
|
|
399
413
|
contestID: string;
|
|
400
|
-
contestName:
|
|
414
|
+
contestName: I18nText;
|
|
401
415
|
contestLink: string;
|
|
402
416
|
contestTime: dayjs.Dayjs;
|
|
403
417
|
constructor();
|
|
@@ -408,7 +422,7 @@ type RatingHistories = Array<RatingHistory>;
|
|
|
408
422
|
|
|
409
423
|
declare class RatingUser {
|
|
410
424
|
id: string;
|
|
411
|
-
name:
|
|
425
|
+
name: I18nText;
|
|
412
426
|
organization: string;
|
|
413
427
|
members: Persons;
|
|
414
428
|
coaches: Persons;
|
|
@@ -430,7 +444,7 @@ type RatingUserMap = Map<string, RatingUser>;
|
|
|
430
444
|
|
|
431
445
|
declare class Rating {
|
|
432
446
|
id: string;
|
|
433
|
-
name:
|
|
447
|
+
name: I18nText;
|
|
434
448
|
baseRating: number;
|
|
435
449
|
contestIDs: string[];
|
|
436
450
|
users: RatingUsers;
|
|
@@ -518,5 +532,5 @@ declare function isRejected(status: SubmissionStatus): boolean;
|
|
|
518
532
|
declare function isPending(status: SubmissionStatus): boolean;
|
|
519
533
|
declare function isNotCalculatedPenaltyStatus(status: SubmissionStatus): boolean;
|
|
520
534
|
|
|
521
|
-
export { Award, Balloon, BattleOfGiants, CodeforcesGymGhostDATConverter, Contest, ContestIndex, ContestIndexConfig, ContestOptions, GeneralExcelConverter, Giants, GiantsType, ICPCStandingsCsvConverter, MedalType, Person, PlaceChartPointData, Problem, ProblemStatistics, Rank, RankOptions, RankStatistics, Rating, RatingCalculator, RatingHistory, RatingLevel, RatingLevelToString, RatingUser, RatingUtility, Resolver, ResolverVue, Submission, Team, TeamProblemStatistics, calcDirt, createContest, createContestIndex, createContestIndexList, createDayJS, createPersons, createProblem, createProblems, createProblemsByProblemIds, createSubmission, createSubmissions, createTeam, createTeams, getImageSource, getTimeDiff, getTimestamp, getWhiteOrBlackColor, getWhiteOrBlackColorV1, isAccepted, isNotCalculatedPenaltyStatus, isPending, isRejected, isValidMedalType, stringToSubmissionStatus };
|
|
535
|
+
export { Award, Balloon, BattleOfGiants, CodeforcesGymGhostDATConverter, Contest, ContestIndex, ContestIndexConfig, ContestOptions, GeneralExcelConverter, Giants, GiantsType, I18nText, ICPCStandingsCsvConverter, MedalType, Person, PlaceChartPointData, Problem, ProblemStatistics, Rank, RankOptions, RankStatistics, Rating, RatingCalculator, RatingHistory, RatingLevel, RatingLevelToString, RatingUser, RatingUtility, Resolver, ResolverVue, Submission, Team, TeamProblemStatistics, calcDirt, createContest, createContestIndex, createContestIndexList, createDayJS, createPersons, createProblem, createProblems, createProblemsByProblemIds, createSubmission, createSubmissions, createTeam, createTeams, getImageSource, getTimeDiff, getTimestamp, getWhiteOrBlackColor, getWhiteOrBlackColorV1, isAccepted, isNotCalculatedPenaltyStatus, isPending, isRejected, isValidMedalType, stringToSubmissionStatus };
|
|
522
536
|
export type { Awards, Balloons, ContestIndexList, Persons, Problems, Ranks, RatingHistories, RatingUserMap, RatingUsers, SelectOptionItem, Submissions, Teams };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CalculationOfPenalty, TimeUnit,
|
|
1
|
+
import { Lang, I18NStringSet, Text, CalculationOfPenalty, TimeUnit, StatusTimeDisplay, MedalPreset, Image, BannerMode, ContestState, Contest as Contest$1, SubmissionReaction, SubmissionStatus, Submission as Submission$1, Submissions as Submissions$1, BalloonColor, Problem as Problem$1, Problems as Problems$1, Person as Person$1, Persons as Persons$1, Team as Team$1, Teams as Teams$1, ContestIndex as ContestIndex$1, IRatingHistory, IRatingUser, IRating } from '@xcpcio/types';
|
|
2
2
|
import dayjs from 'dayjs';
|
|
3
3
|
export { default as dayjs } from 'dayjs';
|
|
4
4
|
import * as XLSX from 'xlsx-js-style';
|
|
@@ -19,6 +19,24 @@ declare class Award {
|
|
|
19
19
|
declare function isValidMedalType(medal: MedalType): boolean;
|
|
20
20
|
type Awards = Map<string, Award[]>;
|
|
21
21
|
|
|
22
|
+
interface SelectOptionItem {
|
|
23
|
+
value: string;
|
|
24
|
+
text: string;
|
|
25
|
+
}
|
|
26
|
+
declare class I18nText {
|
|
27
|
+
texts: Map<Lang, string>;
|
|
28
|
+
fallback?: string;
|
|
29
|
+
fallbackLang?: Lang;
|
|
30
|
+
constructor();
|
|
31
|
+
get(lang: Lang): string | undefined;
|
|
32
|
+
getOrDefault(lang?: Lang): string;
|
|
33
|
+
set(lang: Lang, text: string): void;
|
|
34
|
+
has(lang: Lang): boolean;
|
|
35
|
+
static fromI18NStringSet(stringSet: I18NStringSet): I18nText;
|
|
36
|
+
static fromIText(text: Text): I18nText;
|
|
37
|
+
toI18NStringSet(): I18NStringSet;
|
|
38
|
+
}
|
|
39
|
+
|
|
22
40
|
declare class ContestOptions {
|
|
23
41
|
calculationOfPenalty: CalculationOfPenalty;
|
|
24
42
|
submissionTimestampUnit: TimeUnit;
|
|
@@ -31,8 +49,7 @@ declare class ContestOptions {
|
|
|
31
49
|
}
|
|
32
50
|
|
|
33
51
|
declare class Group {
|
|
34
|
-
|
|
35
|
-
defaultLang: Lang;
|
|
52
|
+
name: I18nText;
|
|
36
53
|
isDefault: boolean;
|
|
37
54
|
constructor();
|
|
38
55
|
}
|
|
@@ -48,7 +65,7 @@ declare function getTimeDiff(seconds: number): string;
|
|
|
48
65
|
|
|
49
66
|
declare class Contest {
|
|
50
67
|
id: string;
|
|
51
|
-
name:
|
|
68
|
+
name: I18nText;
|
|
52
69
|
startTime: dayjs.Dayjs;
|
|
53
70
|
endTime: dayjs.Dayjs;
|
|
54
71
|
freezeTime: dayjs.Dayjs;
|
|
@@ -65,9 +82,9 @@ declare class Contest {
|
|
|
65
82
|
problemsMap: Map<string, Problem>;
|
|
66
83
|
statusTimeDisplay: StatusTimeDisplay;
|
|
67
84
|
badge?: string;
|
|
85
|
+
organization?: string;
|
|
68
86
|
medal?: Record<string, Record<string, number>> | MedalPreset;
|
|
69
87
|
awards?: Awards;
|
|
70
|
-
organization?: string;
|
|
71
88
|
group: Map<string, Group>;
|
|
72
89
|
tag: Map<string, string>;
|
|
73
90
|
logo?: Image;
|
|
@@ -137,7 +154,7 @@ declare class ProblemStatistics {
|
|
|
137
154
|
declare class Problem {
|
|
138
155
|
id: string;
|
|
139
156
|
label: string;
|
|
140
|
-
name
|
|
157
|
+
name?: I18nText;
|
|
141
158
|
timeLimit?: string;
|
|
142
159
|
memoryLimit?: string;
|
|
143
160
|
balloonColor: BalloonColor;
|
|
@@ -174,6 +191,17 @@ declare class TeamProblemStatistics {
|
|
|
174
191
|
get penaltyInSecond(): number;
|
|
175
192
|
}
|
|
176
193
|
|
|
194
|
+
declare class Person {
|
|
195
|
+
name: I18nText;
|
|
196
|
+
cfID?: string;
|
|
197
|
+
icpcID?: string;
|
|
198
|
+
constructor(name?: I18nText);
|
|
199
|
+
toIPerson(): Person$1;
|
|
200
|
+
static fromIPerson(iPerson: Person$1): Person;
|
|
201
|
+
}
|
|
202
|
+
type Persons = Array<Person>;
|
|
203
|
+
declare function createPersons(iPersons?: Text | Array<Text> | Persons$1): Persons;
|
|
204
|
+
|
|
177
205
|
declare class PlaceChartPointData {
|
|
178
206
|
timePoint: number;
|
|
179
207
|
rank: number;
|
|
@@ -182,13 +210,13 @@ declare class PlaceChartPointData {
|
|
|
182
210
|
}
|
|
183
211
|
declare class Team {
|
|
184
212
|
id: string;
|
|
185
|
-
name:
|
|
213
|
+
name: I18nText;
|
|
186
214
|
organization: string;
|
|
187
215
|
badge?: Image;
|
|
188
216
|
group: Array<string>;
|
|
189
217
|
tag: Array<string>;
|
|
190
|
-
|
|
191
|
-
members
|
|
218
|
+
coaches: Persons;
|
|
219
|
+
members: Persons;
|
|
192
220
|
rank: number;
|
|
193
221
|
originalRank: number;
|
|
194
222
|
organizationRank: number;
|
|
@@ -210,10 +238,10 @@ declare class Team {
|
|
|
210
238
|
get penaltyToMinute(): number;
|
|
211
239
|
get isUnofficial(): boolean;
|
|
212
240
|
get isGirl(): boolean;
|
|
213
|
-
get membersToArray(): string[];
|
|
214
|
-
get membersToString(): string | undefined;
|
|
215
241
|
get isEffectiveTeam(): boolean;
|
|
216
242
|
get dirt(): number;
|
|
243
|
+
membersToString(lang?: Lang): string;
|
|
244
|
+
coachesToString(lang?: Lang): string;
|
|
217
245
|
calcSE(totalTeams: number): number;
|
|
218
246
|
calcSolvedData(options: ContestOptions): void;
|
|
219
247
|
calcAwards(awards?: Award[]): void;
|
|
@@ -235,11 +263,6 @@ declare class Balloon {
|
|
|
235
263
|
}
|
|
236
264
|
type Balloons = Array<Balloon>;
|
|
237
265
|
|
|
238
|
-
interface SelectOptionItem {
|
|
239
|
-
value: string;
|
|
240
|
-
text: string;
|
|
241
|
-
}
|
|
242
|
-
|
|
243
266
|
declare enum GiantsType {
|
|
244
267
|
BLUE = 0,
|
|
245
268
|
RED = 1
|
|
@@ -279,7 +302,7 @@ declare class BattleOfGiants {
|
|
|
279
302
|
}
|
|
280
303
|
|
|
281
304
|
declare class ContestIndexConfig {
|
|
282
|
-
contestName:
|
|
305
|
+
contestName: I18nText;
|
|
283
306
|
startTime: dayjs.Dayjs;
|
|
284
307
|
endTime: dayjs.Dayjs;
|
|
285
308
|
freezeTime: dayjs.Dayjs;
|
|
@@ -380,24 +403,15 @@ declare class ICPCStandingsCsvConverter {
|
|
|
380
403
|
|
|
381
404
|
declare function getImageSource(image: Image, asset_host?: string): string;
|
|
382
405
|
|
|
383
|
-
declare class Person {
|
|
384
|
-
name: string;
|
|
385
|
-
constructor(name?: string);
|
|
386
|
-
toJSON(): IPerson;
|
|
387
|
-
static fromJSON(iPerson: IPerson | string): Person;
|
|
388
|
-
}
|
|
389
|
-
type Persons = Array<Person>;
|
|
390
|
-
declare function createPersons(iPersons: string | Array<string>): Persons;
|
|
391
|
-
|
|
392
406
|
declare class RatingHistory {
|
|
393
407
|
rank: number;
|
|
394
408
|
rating: number;
|
|
395
|
-
teamName:
|
|
409
|
+
teamName: I18nText;
|
|
396
410
|
organization: string;
|
|
397
411
|
members: Persons;
|
|
398
412
|
coaches: Persons;
|
|
399
413
|
contestID: string;
|
|
400
|
-
contestName:
|
|
414
|
+
contestName: I18nText;
|
|
401
415
|
contestLink: string;
|
|
402
416
|
contestTime: dayjs.Dayjs;
|
|
403
417
|
constructor();
|
|
@@ -408,7 +422,7 @@ type RatingHistories = Array<RatingHistory>;
|
|
|
408
422
|
|
|
409
423
|
declare class RatingUser {
|
|
410
424
|
id: string;
|
|
411
|
-
name:
|
|
425
|
+
name: I18nText;
|
|
412
426
|
organization: string;
|
|
413
427
|
members: Persons;
|
|
414
428
|
coaches: Persons;
|
|
@@ -430,7 +444,7 @@ type RatingUserMap = Map<string, RatingUser>;
|
|
|
430
444
|
|
|
431
445
|
declare class Rating {
|
|
432
446
|
id: string;
|
|
433
|
-
name:
|
|
447
|
+
name: I18nText;
|
|
434
448
|
baseRating: number;
|
|
435
449
|
contestIDs: string[];
|
|
436
450
|
users: RatingUsers;
|
|
@@ -518,5 +532,5 @@ declare function isRejected(status: SubmissionStatus): boolean;
|
|
|
518
532
|
declare function isPending(status: SubmissionStatus): boolean;
|
|
519
533
|
declare function isNotCalculatedPenaltyStatus(status: SubmissionStatus): boolean;
|
|
520
534
|
|
|
521
|
-
export { Award, Balloon, BattleOfGiants, CodeforcesGymGhostDATConverter, Contest, ContestIndex, ContestIndexConfig, ContestOptions, GeneralExcelConverter, Giants, GiantsType, ICPCStandingsCsvConverter, MedalType, Person, PlaceChartPointData, Problem, ProblemStatistics, Rank, RankOptions, RankStatistics, Rating, RatingCalculator, RatingHistory, RatingLevel, RatingLevelToString, RatingUser, RatingUtility, Resolver, ResolverVue, Submission, Team, TeamProblemStatistics, calcDirt, createContest, createContestIndex, createContestIndexList, createDayJS, createPersons, createProblem, createProblems, createProblemsByProblemIds, createSubmission, createSubmissions, createTeam, createTeams, getImageSource, getTimeDiff, getTimestamp, getWhiteOrBlackColor, getWhiteOrBlackColorV1, isAccepted, isNotCalculatedPenaltyStatus, isPending, isRejected, isValidMedalType, stringToSubmissionStatus };
|
|
535
|
+
export { Award, Balloon, BattleOfGiants, CodeforcesGymGhostDATConverter, Contest, ContestIndex, ContestIndexConfig, ContestOptions, GeneralExcelConverter, Giants, GiantsType, I18nText, ICPCStandingsCsvConverter, MedalType, Person, PlaceChartPointData, Problem, ProblemStatistics, Rank, RankOptions, RankStatistics, Rating, RatingCalculator, RatingHistory, RatingLevel, RatingLevelToString, RatingUser, RatingUtility, Resolver, ResolverVue, Submission, Team, TeamProblemStatistics, calcDirt, createContest, createContestIndex, createContestIndexList, createDayJS, createPersons, createProblem, createProblems, createProblemsByProblemIds, createSubmission, createSubmissions, createTeam, createTeams, getImageSource, getTimeDiff, getTimestamp, getWhiteOrBlackColor, getWhiteOrBlackColorV1, isAccepted, isNotCalculatedPenaltyStatus, isPending, isRejected, isValidMedalType, stringToSubmissionStatus };
|
|
522
536
|
export type { Awards, Balloons, ContestIndexList, Persons, Problems, Ranks, RatingHistories, RatingUserMap, RatingUsers, SelectOptionItem, Submissions, Teams };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CalculationOfPenalty, TimeUnit,
|
|
1
|
+
import { Lang, I18NStringSet, Text, CalculationOfPenalty, TimeUnit, StatusTimeDisplay, MedalPreset, Image, BannerMode, ContestState, Contest as Contest$1, SubmissionReaction, SubmissionStatus, Submission as Submission$1, Submissions as Submissions$1, BalloonColor, Problem as Problem$1, Problems as Problems$1, Person as Person$1, Persons as Persons$1, Team as Team$1, Teams as Teams$1, ContestIndex as ContestIndex$1, IRatingHistory, IRatingUser, IRating } from '@xcpcio/types';
|
|
2
2
|
import dayjs from 'dayjs';
|
|
3
3
|
export { default as dayjs } from 'dayjs';
|
|
4
4
|
import * as XLSX from 'xlsx-js-style';
|
|
@@ -19,6 +19,24 @@ declare class Award {
|
|
|
19
19
|
declare function isValidMedalType(medal: MedalType): boolean;
|
|
20
20
|
type Awards = Map<string, Award[]>;
|
|
21
21
|
|
|
22
|
+
interface SelectOptionItem {
|
|
23
|
+
value: string;
|
|
24
|
+
text: string;
|
|
25
|
+
}
|
|
26
|
+
declare class I18nText {
|
|
27
|
+
texts: Map<Lang, string>;
|
|
28
|
+
fallback?: string;
|
|
29
|
+
fallbackLang?: Lang;
|
|
30
|
+
constructor();
|
|
31
|
+
get(lang: Lang): string | undefined;
|
|
32
|
+
getOrDefault(lang?: Lang): string;
|
|
33
|
+
set(lang: Lang, text: string): void;
|
|
34
|
+
has(lang: Lang): boolean;
|
|
35
|
+
static fromI18NStringSet(stringSet: I18NStringSet): I18nText;
|
|
36
|
+
static fromIText(text: Text): I18nText;
|
|
37
|
+
toI18NStringSet(): I18NStringSet;
|
|
38
|
+
}
|
|
39
|
+
|
|
22
40
|
declare class ContestOptions {
|
|
23
41
|
calculationOfPenalty: CalculationOfPenalty;
|
|
24
42
|
submissionTimestampUnit: TimeUnit;
|
|
@@ -31,8 +49,7 @@ declare class ContestOptions {
|
|
|
31
49
|
}
|
|
32
50
|
|
|
33
51
|
declare class Group {
|
|
34
|
-
|
|
35
|
-
defaultLang: Lang;
|
|
52
|
+
name: I18nText;
|
|
36
53
|
isDefault: boolean;
|
|
37
54
|
constructor();
|
|
38
55
|
}
|
|
@@ -48,7 +65,7 @@ declare function getTimeDiff(seconds: number): string;
|
|
|
48
65
|
|
|
49
66
|
declare class Contest {
|
|
50
67
|
id: string;
|
|
51
|
-
name:
|
|
68
|
+
name: I18nText;
|
|
52
69
|
startTime: dayjs.Dayjs;
|
|
53
70
|
endTime: dayjs.Dayjs;
|
|
54
71
|
freezeTime: dayjs.Dayjs;
|
|
@@ -65,9 +82,9 @@ declare class Contest {
|
|
|
65
82
|
problemsMap: Map<string, Problem>;
|
|
66
83
|
statusTimeDisplay: StatusTimeDisplay;
|
|
67
84
|
badge?: string;
|
|
85
|
+
organization?: string;
|
|
68
86
|
medal?: Record<string, Record<string, number>> | MedalPreset;
|
|
69
87
|
awards?: Awards;
|
|
70
|
-
organization?: string;
|
|
71
88
|
group: Map<string, Group>;
|
|
72
89
|
tag: Map<string, string>;
|
|
73
90
|
logo?: Image;
|
|
@@ -137,7 +154,7 @@ declare class ProblemStatistics {
|
|
|
137
154
|
declare class Problem {
|
|
138
155
|
id: string;
|
|
139
156
|
label: string;
|
|
140
|
-
name
|
|
157
|
+
name?: I18nText;
|
|
141
158
|
timeLimit?: string;
|
|
142
159
|
memoryLimit?: string;
|
|
143
160
|
balloonColor: BalloonColor;
|
|
@@ -174,6 +191,17 @@ declare class TeamProblemStatistics {
|
|
|
174
191
|
get penaltyInSecond(): number;
|
|
175
192
|
}
|
|
176
193
|
|
|
194
|
+
declare class Person {
|
|
195
|
+
name: I18nText;
|
|
196
|
+
cfID?: string;
|
|
197
|
+
icpcID?: string;
|
|
198
|
+
constructor(name?: I18nText);
|
|
199
|
+
toIPerson(): Person$1;
|
|
200
|
+
static fromIPerson(iPerson: Person$1): Person;
|
|
201
|
+
}
|
|
202
|
+
type Persons = Array<Person>;
|
|
203
|
+
declare function createPersons(iPersons?: Text | Array<Text> | Persons$1): Persons;
|
|
204
|
+
|
|
177
205
|
declare class PlaceChartPointData {
|
|
178
206
|
timePoint: number;
|
|
179
207
|
rank: number;
|
|
@@ -182,13 +210,13 @@ declare class PlaceChartPointData {
|
|
|
182
210
|
}
|
|
183
211
|
declare class Team {
|
|
184
212
|
id: string;
|
|
185
|
-
name:
|
|
213
|
+
name: I18nText;
|
|
186
214
|
organization: string;
|
|
187
215
|
badge?: Image;
|
|
188
216
|
group: Array<string>;
|
|
189
217
|
tag: Array<string>;
|
|
190
|
-
|
|
191
|
-
members
|
|
218
|
+
coaches: Persons;
|
|
219
|
+
members: Persons;
|
|
192
220
|
rank: number;
|
|
193
221
|
originalRank: number;
|
|
194
222
|
organizationRank: number;
|
|
@@ -210,10 +238,10 @@ declare class Team {
|
|
|
210
238
|
get penaltyToMinute(): number;
|
|
211
239
|
get isUnofficial(): boolean;
|
|
212
240
|
get isGirl(): boolean;
|
|
213
|
-
get membersToArray(): string[];
|
|
214
|
-
get membersToString(): string | undefined;
|
|
215
241
|
get isEffectiveTeam(): boolean;
|
|
216
242
|
get dirt(): number;
|
|
243
|
+
membersToString(lang?: Lang): string;
|
|
244
|
+
coachesToString(lang?: Lang): string;
|
|
217
245
|
calcSE(totalTeams: number): number;
|
|
218
246
|
calcSolvedData(options: ContestOptions): void;
|
|
219
247
|
calcAwards(awards?: Award[]): void;
|
|
@@ -235,11 +263,6 @@ declare class Balloon {
|
|
|
235
263
|
}
|
|
236
264
|
type Balloons = Array<Balloon>;
|
|
237
265
|
|
|
238
|
-
interface SelectOptionItem {
|
|
239
|
-
value: string;
|
|
240
|
-
text: string;
|
|
241
|
-
}
|
|
242
|
-
|
|
243
266
|
declare enum GiantsType {
|
|
244
267
|
BLUE = 0,
|
|
245
268
|
RED = 1
|
|
@@ -279,7 +302,7 @@ declare class BattleOfGiants {
|
|
|
279
302
|
}
|
|
280
303
|
|
|
281
304
|
declare class ContestIndexConfig {
|
|
282
|
-
contestName:
|
|
305
|
+
contestName: I18nText;
|
|
283
306
|
startTime: dayjs.Dayjs;
|
|
284
307
|
endTime: dayjs.Dayjs;
|
|
285
308
|
freezeTime: dayjs.Dayjs;
|
|
@@ -380,24 +403,15 @@ declare class ICPCStandingsCsvConverter {
|
|
|
380
403
|
|
|
381
404
|
declare function getImageSource(image: Image, asset_host?: string): string;
|
|
382
405
|
|
|
383
|
-
declare class Person {
|
|
384
|
-
name: string;
|
|
385
|
-
constructor(name?: string);
|
|
386
|
-
toJSON(): IPerson;
|
|
387
|
-
static fromJSON(iPerson: IPerson | string): Person;
|
|
388
|
-
}
|
|
389
|
-
type Persons = Array<Person>;
|
|
390
|
-
declare function createPersons(iPersons: string | Array<string>): Persons;
|
|
391
|
-
|
|
392
406
|
declare class RatingHistory {
|
|
393
407
|
rank: number;
|
|
394
408
|
rating: number;
|
|
395
|
-
teamName:
|
|
409
|
+
teamName: I18nText;
|
|
396
410
|
organization: string;
|
|
397
411
|
members: Persons;
|
|
398
412
|
coaches: Persons;
|
|
399
413
|
contestID: string;
|
|
400
|
-
contestName:
|
|
414
|
+
contestName: I18nText;
|
|
401
415
|
contestLink: string;
|
|
402
416
|
contestTime: dayjs.Dayjs;
|
|
403
417
|
constructor();
|
|
@@ -408,7 +422,7 @@ type RatingHistories = Array<RatingHistory>;
|
|
|
408
422
|
|
|
409
423
|
declare class RatingUser {
|
|
410
424
|
id: string;
|
|
411
|
-
name:
|
|
425
|
+
name: I18nText;
|
|
412
426
|
organization: string;
|
|
413
427
|
members: Persons;
|
|
414
428
|
coaches: Persons;
|
|
@@ -430,7 +444,7 @@ type RatingUserMap = Map<string, RatingUser>;
|
|
|
430
444
|
|
|
431
445
|
declare class Rating {
|
|
432
446
|
id: string;
|
|
433
|
-
name:
|
|
447
|
+
name: I18nText;
|
|
434
448
|
baseRating: number;
|
|
435
449
|
contestIDs: string[];
|
|
436
450
|
users: RatingUsers;
|
|
@@ -518,5 +532,5 @@ declare function isRejected(status: SubmissionStatus): boolean;
|
|
|
518
532
|
declare function isPending(status: SubmissionStatus): boolean;
|
|
519
533
|
declare function isNotCalculatedPenaltyStatus(status: SubmissionStatus): boolean;
|
|
520
534
|
|
|
521
|
-
export { Award, Balloon, BattleOfGiants, CodeforcesGymGhostDATConverter, Contest, ContestIndex, ContestIndexConfig, ContestOptions, GeneralExcelConverter, Giants, GiantsType, ICPCStandingsCsvConverter, MedalType, Person, PlaceChartPointData, Problem, ProblemStatistics, Rank, RankOptions, RankStatistics, Rating, RatingCalculator, RatingHistory, RatingLevel, RatingLevelToString, RatingUser, RatingUtility, Resolver, ResolverVue, Submission, Team, TeamProblemStatistics, calcDirt, createContest, createContestIndex, createContestIndexList, createDayJS, createPersons, createProblem, createProblems, createProblemsByProblemIds, createSubmission, createSubmissions, createTeam, createTeams, getImageSource, getTimeDiff, getTimestamp, getWhiteOrBlackColor, getWhiteOrBlackColorV1, isAccepted, isNotCalculatedPenaltyStatus, isPending, isRejected, isValidMedalType, stringToSubmissionStatus };
|
|
535
|
+
export { Award, Balloon, BattleOfGiants, CodeforcesGymGhostDATConverter, Contest, ContestIndex, ContestIndexConfig, ContestOptions, GeneralExcelConverter, Giants, GiantsType, I18nText, ICPCStandingsCsvConverter, MedalType, Person, PlaceChartPointData, Problem, ProblemStatistics, Rank, RankOptions, RankStatistics, Rating, RatingCalculator, RatingHistory, RatingLevel, RatingLevelToString, RatingUser, RatingUtility, Resolver, ResolverVue, Submission, Team, TeamProblemStatistics, calcDirt, createContest, createContestIndex, createContestIndexList, createDayJS, createPersons, createProblem, createProblems, createProblemsByProblemIds, createSubmission, createSubmissions, createTeam, createTeams, getImageSource, getTimeDiff, getTimestamp, getWhiteOrBlackColor, getWhiteOrBlackColorV1, isAccepted, isNotCalculatedPenaltyStatus, isPending, isRejected, isValidMedalType, stringToSubmissionStatus };
|
|
522
536
|
export type { Awards, Balloons, ContestIndexList, Persons, Problems, Ranks, RatingHistories, RatingUserMap, RatingUsers, SelectOptionItem, Submissions, Teams };
|