@xcpcio/core 0.53.2 → 0.55.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/README.md +1 -1
- package/dist/index.cjs +215 -335
- package/dist/index.mjs +215 -335
- package/package.json +19 -19
- package/src/rank.ts +5 -4
- package/src/rating/rating-calculator.ts +1 -1
- package/src/rating/rating-user.ts +2 -1
package/dist/index.mjs
CHANGED
|
@@ -18,12 +18,6 @@ import * as XLSX from 'xlsx-js-style';
|
|
|
18
18
|
import ordinal from 'ordinal';
|
|
19
19
|
import Papa from 'papaparse';
|
|
20
20
|
|
|
21
|
-
var __defProp$j = Object.defineProperty;
|
|
22
|
-
var __defNormalProp$j = (obj, key, value) => key in obj ? __defProp$j(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
23
|
-
var __publicField$j = (obj, key, value) => {
|
|
24
|
-
__defNormalProp$j(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
25
|
-
return value;
|
|
26
|
-
};
|
|
27
21
|
var MedalType = /* @__PURE__ */ ((MedalType2) => {
|
|
28
22
|
MedalType2["UNKNOWN"] = "Unknown";
|
|
29
23
|
MedalType2["GOLD"] = "Gold";
|
|
@@ -33,10 +27,10 @@ var MedalType = /* @__PURE__ */ ((MedalType2) => {
|
|
|
33
27
|
return MedalType2;
|
|
34
28
|
})(MedalType || {});
|
|
35
29
|
class Award {
|
|
30
|
+
medalType;
|
|
31
|
+
minRank;
|
|
32
|
+
maxRank;
|
|
36
33
|
constructor() {
|
|
37
|
-
__publicField$j(this, "medalType");
|
|
38
|
-
__publicField$j(this, "minRank");
|
|
39
|
-
__publicField$j(this, "maxRank");
|
|
40
34
|
this.medalType = "Unknown" /* UNKNOWN */;
|
|
41
35
|
this.minRank = 0;
|
|
42
36
|
this.maxRank = 0;
|
|
@@ -116,23 +110,17 @@ function getTimeDiff(seconds) {
|
|
|
116
110
|
return [two(h), two(m), two(s)].join(":");
|
|
117
111
|
}
|
|
118
112
|
|
|
119
|
-
var __defProp$i = Object.defineProperty;
|
|
120
|
-
var __defNormalProp$i = (obj, key, value) => key in obj ? __defProp$i(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
121
|
-
var __publicField$i = (obj, key, value) => {
|
|
122
|
-
__defNormalProp$i(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
123
|
-
return value;
|
|
124
|
-
};
|
|
125
113
|
class ProblemStatistics {
|
|
114
|
+
acceptedNum;
|
|
115
|
+
rejectedNum;
|
|
116
|
+
pendingNum;
|
|
117
|
+
submittedNum;
|
|
118
|
+
attemptedNum;
|
|
119
|
+
ignoreNum;
|
|
120
|
+
firstSolveSubmissions;
|
|
121
|
+
lastSolveSubmissions;
|
|
122
|
+
se;
|
|
126
123
|
constructor() {
|
|
127
|
-
__publicField$i(this, "acceptedNum");
|
|
128
|
-
__publicField$i(this, "rejectedNum");
|
|
129
|
-
__publicField$i(this, "pendingNum");
|
|
130
|
-
__publicField$i(this, "submittedNum");
|
|
131
|
-
__publicField$i(this, "attemptedNum");
|
|
132
|
-
__publicField$i(this, "ignoreNum");
|
|
133
|
-
__publicField$i(this, "firstSolveSubmissions");
|
|
134
|
-
__publicField$i(this, "lastSolveSubmissions");
|
|
135
|
-
__publicField$i(this, "se");
|
|
136
124
|
this.acceptedNum = 0;
|
|
137
125
|
this.rejectedNum = 0;
|
|
138
126
|
this.pendingNum = 0;
|
|
@@ -167,14 +155,14 @@ class ProblemStatistics {
|
|
|
167
155
|
}
|
|
168
156
|
}
|
|
169
157
|
class Problem {
|
|
158
|
+
id;
|
|
159
|
+
label;
|
|
160
|
+
name;
|
|
161
|
+
timeLimit;
|
|
162
|
+
memoryLimit;
|
|
163
|
+
balloonColor;
|
|
164
|
+
statistics;
|
|
170
165
|
constructor() {
|
|
171
|
-
__publicField$i(this, "id");
|
|
172
|
-
__publicField$i(this, "label");
|
|
173
|
-
__publicField$i(this, "name");
|
|
174
|
-
__publicField$i(this, "timeLimit");
|
|
175
|
-
__publicField$i(this, "memoryLimit");
|
|
176
|
-
__publicField$i(this, "balloonColor");
|
|
177
|
-
__publicField$i(this, "statistics");
|
|
178
166
|
this.id = "";
|
|
179
167
|
this.label = "";
|
|
180
168
|
this.name = "";
|
|
@@ -219,19 +207,19 @@ function createProblemsByProblemIds(problemIds, balloonColors) {
|
|
|
219
207
|
return problems;
|
|
220
208
|
}
|
|
221
209
|
class TeamProblemStatistics {
|
|
210
|
+
isFirstSolved;
|
|
211
|
+
isSolved;
|
|
212
|
+
solvedTimestamp;
|
|
213
|
+
isSubmitted;
|
|
214
|
+
lastSubmitTimestamp;
|
|
215
|
+
failedCount;
|
|
216
|
+
pendingCount;
|
|
217
|
+
ignoreCount;
|
|
218
|
+
totalCount;
|
|
219
|
+
submissions;
|
|
220
|
+
problem;
|
|
221
|
+
contestPenalty;
|
|
222
222
|
constructor(options) {
|
|
223
|
-
__publicField$i(this, "isFirstSolved");
|
|
224
|
-
__publicField$i(this, "isSolved");
|
|
225
|
-
__publicField$i(this, "solvedTimestamp");
|
|
226
|
-
__publicField$i(this, "isSubmitted");
|
|
227
|
-
__publicField$i(this, "lastSubmitTimestamp");
|
|
228
|
-
__publicField$i(this, "failedCount");
|
|
229
|
-
__publicField$i(this, "pendingCount");
|
|
230
|
-
__publicField$i(this, "ignoreCount");
|
|
231
|
-
__publicField$i(this, "totalCount");
|
|
232
|
-
__publicField$i(this, "submissions");
|
|
233
|
-
__publicField$i(this, "problem");
|
|
234
|
-
__publicField$i(this, "contestPenalty");
|
|
235
223
|
this.isFirstSolved = options?.teamProblemStatistics?.isFirstSolved ?? false;
|
|
236
224
|
this.isSolved = options?.teamProblemStatistics?.isSolved ?? false;
|
|
237
225
|
this.solvedTimestamp = options?.teamProblemStatistics?.solvedTimestamp ?? 0;
|
|
@@ -399,26 +387,20 @@ function isNotCalculatedPenaltyStatus(status) {
|
|
|
399
387
|
return isNotCalculatedPenaltyArray.includes(status);
|
|
400
388
|
}
|
|
401
389
|
|
|
402
|
-
var __defProp$h = Object.defineProperty;
|
|
403
|
-
var __defNormalProp$h = (obj, key, value) => key in obj ? __defProp$h(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
404
|
-
var __publicField$h = (obj, key, value) => {
|
|
405
|
-
__defNormalProp$h(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
406
|
-
return value;
|
|
407
|
-
};
|
|
408
390
|
class Submission {
|
|
391
|
+
id;
|
|
392
|
+
teamId;
|
|
393
|
+
problemId;
|
|
394
|
+
timestamp;
|
|
395
|
+
timestampUnit;
|
|
396
|
+
time;
|
|
397
|
+
language;
|
|
398
|
+
reaction;
|
|
399
|
+
status = SubmissionStatus.UNKNOWN;
|
|
400
|
+
isIgnore = false;
|
|
401
|
+
isSolved = false;
|
|
402
|
+
isFirstSolved = false;
|
|
409
403
|
constructor() {
|
|
410
|
-
__publicField$h(this, "id");
|
|
411
|
-
__publicField$h(this, "teamId");
|
|
412
|
-
__publicField$h(this, "problemId");
|
|
413
|
-
__publicField$h(this, "timestamp");
|
|
414
|
-
__publicField$h(this, "timestampUnit");
|
|
415
|
-
__publicField$h(this, "time");
|
|
416
|
-
__publicField$h(this, "language");
|
|
417
|
-
__publicField$h(this, "reaction");
|
|
418
|
-
__publicField$h(this, "status", SubmissionStatus.UNKNOWN);
|
|
419
|
-
__publicField$h(this, "isIgnore", false);
|
|
420
|
-
__publicField$h(this, "isSolved", false);
|
|
421
|
-
__publicField$h(this, "isFirstSolved", false);
|
|
422
404
|
this.id = "";
|
|
423
405
|
this.teamId = "";
|
|
424
406
|
this.problemId = "";
|
|
@@ -529,48 +511,42 @@ function createSubmissions(submissionsJSON) {
|
|
|
529
511
|
}
|
|
530
512
|
}
|
|
531
513
|
|
|
532
|
-
var __defProp$g = Object.defineProperty;
|
|
533
|
-
var __defNormalProp$g = (obj, key, value) => key in obj ? __defProp$g(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
534
|
-
var __publicField$g = (obj, key, value) => {
|
|
535
|
-
__defNormalProp$g(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
536
|
-
return value;
|
|
537
|
-
};
|
|
538
514
|
class PlaceChartPointData {
|
|
515
|
+
timePoint;
|
|
516
|
+
rank;
|
|
517
|
+
lastSolvedProblem;
|
|
539
518
|
constructor() {
|
|
540
|
-
__publicField$g(this, "timePoint");
|
|
541
|
-
__publicField$g(this, "rank");
|
|
542
|
-
__publicField$g(this, "lastSolvedProblem");
|
|
543
519
|
this.timePoint = 0;
|
|
544
520
|
this.rank = 0;
|
|
545
521
|
this.lastSolvedProblem = null;
|
|
546
522
|
}
|
|
547
523
|
}
|
|
548
524
|
class Team {
|
|
525
|
+
id;
|
|
526
|
+
name;
|
|
527
|
+
organization;
|
|
528
|
+
badge;
|
|
529
|
+
group;
|
|
530
|
+
tag;
|
|
531
|
+
coach;
|
|
532
|
+
members;
|
|
533
|
+
rank;
|
|
534
|
+
originalRank;
|
|
535
|
+
organizationRank;
|
|
536
|
+
solvedProblemNum;
|
|
537
|
+
attemptedProblemNum;
|
|
538
|
+
lastSolvedProblem;
|
|
539
|
+
lastSolvedProblemStatistics;
|
|
540
|
+
penalty;
|
|
541
|
+
problemStatistics;
|
|
542
|
+
problemStatisticsMap;
|
|
543
|
+
submissions;
|
|
544
|
+
placeChartPoints;
|
|
545
|
+
awards;
|
|
546
|
+
location;
|
|
547
|
+
icpcID;
|
|
548
|
+
se;
|
|
549
549
|
constructor() {
|
|
550
|
-
__publicField$g(this, "id");
|
|
551
|
-
__publicField$g(this, "name");
|
|
552
|
-
__publicField$g(this, "organization");
|
|
553
|
-
__publicField$g(this, "badge");
|
|
554
|
-
__publicField$g(this, "group");
|
|
555
|
-
__publicField$g(this, "tag");
|
|
556
|
-
__publicField$g(this, "coach");
|
|
557
|
-
__publicField$g(this, "members");
|
|
558
|
-
__publicField$g(this, "rank");
|
|
559
|
-
__publicField$g(this, "originalRank");
|
|
560
|
-
__publicField$g(this, "organizationRank");
|
|
561
|
-
__publicField$g(this, "solvedProblemNum");
|
|
562
|
-
__publicField$g(this, "attemptedProblemNum");
|
|
563
|
-
__publicField$g(this, "lastSolvedProblem");
|
|
564
|
-
__publicField$g(this, "lastSolvedProblemStatistics");
|
|
565
|
-
__publicField$g(this, "penalty");
|
|
566
|
-
__publicField$g(this, "problemStatistics");
|
|
567
|
-
__publicField$g(this, "problemStatisticsMap");
|
|
568
|
-
__publicField$g(this, "submissions");
|
|
569
|
-
__publicField$g(this, "placeChartPoints");
|
|
570
|
-
__publicField$g(this, "awards");
|
|
571
|
-
__publicField$g(this, "location");
|
|
572
|
-
__publicField$g(this, "icpcID");
|
|
573
|
-
__publicField$g(this, "se");
|
|
574
550
|
this.id = "";
|
|
575
551
|
this.name = "";
|
|
576
552
|
this.organization = "";
|
|
@@ -776,17 +752,11 @@ function createTeams(teamsJSON) {
|
|
|
776
752
|
}
|
|
777
753
|
}
|
|
778
754
|
|
|
779
|
-
var __defProp$f = Object.defineProperty;
|
|
780
|
-
var __defNormalProp$f = (obj, key, value) => key in obj ? __defProp$f(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
781
|
-
var __publicField$f = (obj, key, value) => {
|
|
782
|
-
__defNormalProp$f(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
783
|
-
return value;
|
|
784
|
-
};
|
|
785
755
|
class Balloon {
|
|
756
|
+
problem;
|
|
757
|
+
team;
|
|
758
|
+
submission;
|
|
786
759
|
constructor() {
|
|
787
|
-
__publicField$f(this, "problem");
|
|
788
|
-
__publicField$f(this, "team");
|
|
789
|
-
__publicField$f(this, "submission");
|
|
790
760
|
this.problem = new Problem();
|
|
791
761
|
this.team = new Team();
|
|
792
762
|
this.submission = new Submission();
|
|
@@ -799,26 +769,20 @@ class Balloon {
|
|
|
799
769
|
}
|
|
800
770
|
}
|
|
801
771
|
|
|
802
|
-
var __defProp$e = Object.defineProperty;
|
|
803
|
-
var __defNormalProp$e = (obj, key, value) => key in obj ? __defProp$e(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
804
|
-
var __publicField$e = (obj, key, value) => {
|
|
805
|
-
__defNormalProp$e(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
806
|
-
return value;
|
|
807
|
-
};
|
|
808
772
|
var GiantsType = /* @__PURE__ */ ((GiantsType2) => {
|
|
809
773
|
GiantsType2[GiantsType2["BLUE"] = 0] = "BLUE";
|
|
810
774
|
GiantsType2[GiantsType2["RED"] = 1] = "RED";
|
|
811
775
|
return GiantsType2;
|
|
812
776
|
})(GiantsType || {});
|
|
813
777
|
class Giants {
|
|
778
|
+
type;
|
|
779
|
+
name;
|
|
780
|
+
filterOrganizations;
|
|
781
|
+
filterOrganizationMap;
|
|
782
|
+
filterTeams;
|
|
783
|
+
filterTeamMap;
|
|
784
|
+
teams;
|
|
814
785
|
constructor(type = 0 /* BLUE */) {
|
|
815
|
-
__publicField$e(this, "type");
|
|
816
|
-
__publicField$e(this, "name");
|
|
817
|
-
__publicField$e(this, "filterOrganizations");
|
|
818
|
-
__publicField$e(this, "filterOrganizationMap");
|
|
819
|
-
__publicField$e(this, "filterTeams");
|
|
820
|
-
__publicField$e(this, "filterTeamMap");
|
|
821
|
-
__publicField$e(this, "teams");
|
|
822
786
|
this.type = type;
|
|
823
787
|
this.name = `${type === 0 /* BLUE */ ? "Blue" : "Red"} Team`;
|
|
824
788
|
this.teams = [];
|
|
@@ -887,13 +851,13 @@ class Giants {
|
|
|
887
851
|
}
|
|
888
852
|
}
|
|
889
853
|
class BattleOfGiants {
|
|
854
|
+
enable;
|
|
855
|
+
topX;
|
|
856
|
+
equalTeams;
|
|
857
|
+
persist;
|
|
858
|
+
blueTeam;
|
|
859
|
+
redTeam;
|
|
890
860
|
constructor() {
|
|
891
|
-
__publicField$e(this, "enable");
|
|
892
|
-
__publicField$e(this, "topX");
|
|
893
|
-
__publicField$e(this, "equalTeams");
|
|
894
|
-
__publicField$e(this, "persist");
|
|
895
|
-
__publicField$e(this, "blueTeam");
|
|
896
|
-
__publicField$e(this, "redTeam");
|
|
897
861
|
this.enable = false;
|
|
898
862
|
this.topX = 5;
|
|
899
863
|
this.equalTeams = true;
|
|
@@ -927,19 +891,13 @@ class BattleOfGiants {
|
|
|
927
891
|
}
|
|
928
892
|
}
|
|
929
893
|
|
|
930
|
-
var __defProp$d = Object.defineProperty;
|
|
931
|
-
var __defNormalProp$d = (obj, key, value) => key in obj ? __defProp$d(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
932
|
-
var __publicField$d = (obj, key, value) => {
|
|
933
|
-
__defNormalProp$d(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
934
|
-
return value;
|
|
935
|
-
};
|
|
936
894
|
class ContestOptions {
|
|
895
|
+
calculationOfPenalty;
|
|
896
|
+
submissionTimestampUnit;
|
|
897
|
+
submissionHasTimeField;
|
|
898
|
+
submissionHasLanguageField;
|
|
899
|
+
submissionEnableActionField;
|
|
937
900
|
constructor() {
|
|
938
|
-
__publicField$d(this, "calculationOfPenalty");
|
|
939
|
-
__publicField$d(this, "submissionTimestampUnit");
|
|
940
|
-
__publicField$d(this, "submissionHasTimeField");
|
|
941
|
-
__publicField$d(this, "submissionHasLanguageField");
|
|
942
|
-
__publicField$d(this, "submissionEnableActionField");
|
|
943
901
|
this.calculationOfPenalty = "in_minutes";
|
|
944
902
|
this.submissionTimestampUnit = "second";
|
|
945
903
|
this.submissionHasTimeField = false;
|
|
@@ -962,59 +920,47 @@ function createContestOptions(contestOptionsJSON = {}) {
|
|
|
962
920
|
return o;
|
|
963
921
|
}
|
|
964
922
|
|
|
965
|
-
var __defProp$c = Object.defineProperty;
|
|
966
|
-
var __defNormalProp$c = (obj, key, value) => key in obj ? __defProp$c(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
967
|
-
var __publicField$c = (obj, key, value) => {
|
|
968
|
-
__defNormalProp$c(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
969
|
-
return value;
|
|
970
|
-
};
|
|
971
923
|
class Group {
|
|
924
|
+
names;
|
|
925
|
+
defaultLang;
|
|
926
|
+
isDefault;
|
|
972
927
|
constructor() {
|
|
973
|
-
__publicField$c(this, "names");
|
|
974
|
-
__publicField$c(this, "defaultLang");
|
|
975
|
-
__publicField$c(this, "isDefault");
|
|
976
928
|
this.names = /* @__PURE__ */ new Map();
|
|
977
929
|
this.defaultLang = "zh-CN";
|
|
978
930
|
this.isDefault = false;
|
|
979
931
|
}
|
|
980
932
|
}
|
|
981
933
|
|
|
982
|
-
var __defProp$b = Object.defineProperty;
|
|
983
|
-
var __defNormalProp$b = (obj, key, value) => key in obj ? __defProp$b(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
984
|
-
var __publicField$b = (obj, key, value) => {
|
|
985
|
-
__defNormalProp$b(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
986
|
-
return value;
|
|
987
|
-
};
|
|
988
934
|
class Contest {
|
|
935
|
+
id = "";
|
|
936
|
+
name = "";
|
|
937
|
+
startTime;
|
|
938
|
+
endTime;
|
|
939
|
+
freezeTime;
|
|
940
|
+
replayStartTime;
|
|
941
|
+
replayEndTime;
|
|
942
|
+
replayFreezeTime;
|
|
943
|
+
replayNowTime;
|
|
944
|
+
replayContestStartTimestamp;
|
|
945
|
+
totalDurationTimestamp;
|
|
946
|
+
freezeDurationTimestamp;
|
|
947
|
+
unFreezeDurationTimestamp;
|
|
948
|
+
penalty;
|
|
949
|
+
problems;
|
|
950
|
+
problemsMap;
|
|
951
|
+
statusTimeDisplay;
|
|
952
|
+
badge;
|
|
953
|
+
medal;
|
|
954
|
+
awards;
|
|
955
|
+
organization;
|
|
956
|
+
group;
|
|
957
|
+
tag;
|
|
958
|
+
logo;
|
|
959
|
+
banner;
|
|
960
|
+
bannerMode;
|
|
961
|
+
boardLink;
|
|
962
|
+
options;
|
|
989
963
|
constructor() {
|
|
990
|
-
__publicField$b(this, "id", "");
|
|
991
|
-
__publicField$b(this, "name", "");
|
|
992
|
-
__publicField$b(this, "startTime");
|
|
993
|
-
__publicField$b(this, "endTime");
|
|
994
|
-
__publicField$b(this, "freezeTime");
|
|
995
|
-
__publicField$b(this, "replayStartTime");
|
|
996
|
-
__publicField$b(this, "replayEndTime");
|
|
997
|
-
__publicField$b(this, "replayFreezeTime");
|
|
998
|
-
__publicField$b(this, "replayNowTime");
|
|
999
|
-
__publicField$b(this, "replayContestStartTimestamp");
|
|
1000
|
-
__publicField$b(this, "totalDurationTimestamp");
|
|
1001
|
-
__publicField$b(this, "freezeDurationTimestamp");
|
|
1002
|
-
__publicField$b(this, "unFreezeDurationTimestamp");
|
|
1003
|
-
__publicField$b(this, "penalty");
|
|
1004
|
-
__publicField$b(this, "problems");
|
|
1005
|
-
__publicField$b(this, "problemsMap");
|
|
1006
|
-
__publicField$b(this, "statusTimeDisplay");
|
|
1007
|
-
__publicField$b(this, "badge");
|
|
1008
|
-
__publicField$b(this, "medal");
|
|
1009
|
-
__publicField$b(this, "awards");
|
|
1010
|
-
__publicField$b(this, "organization");
|
|
1011
|
-
__publicField$b(this, "group");
|
|
1012
|
-
__publicField$b(this, "tag");
|
|
1013
|
-
__publicField$b(this, "logo");
|
|
1014
|
-
__publicField$b(this, "banner");
|
|
1015
|
-
__publicField$b(this, "bannerMode");
|
|
1016
|
-
__publicField$b(this, "boardLink");
|
|
1017
|
-
__publicField$b(this, "options");
|
|
1018
964
|
this.startTime = createDayJS();
|
|
1019
965
|
this.endTime = createDayJS();
|
|
1020
966
|
this.freezeTime = createDayJS();
|
|
@@ -1238,22 +1184,16 @@ function createContest(contestJSON) {
|
|
|
1238
1184
|
return c;
|
|
1239
1185
|
}
|
|
1240
1186
|
|
|
1241
|
-
var __defProp$a = Object.defineProperty;
|
|
1242
|
-
var __defNormalProp$a = (obj, key, value) => key in obj ? __defProp$a(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1243
|
-
var __publicField$a = (obj, key, value) => {
|
|
1244
|
-
__defNormalProp$a(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
1245
|
-
return value;
|
|
1246
|
-
};
|
|
1247
1187
|
class ContestIndexConfig {
|
|
1188
|
+
contestName;
|
|
1189
|
+
startTime;
|
|
1190
|
+
endTime;
|
|
1191
|
+
freezeTime;
|
|
1192
|
+
totalDurationTimestamp;
|
|
1193
|
+
freezeDurationTimestamp;
|
|
1194
|
+
unFreezeDurationTimestamp;
|
|
1195
|
+
logo;
|
|
1248
1196
|
constructor() {
|
|
1249
|
-
__publicField$a(this, "contestName");
|
|
1250
|
-
__publicField$a(this, "startTime");
|
|
1251
|
-
__publicField$a(this, "endTime");
|
|
1252
|
-
__publicField$a(this, "freezeTime");
|
|
1253
|
-
__publicField$a(this, "totalDurationTimestamp");
|
|
1254
|
-
__publicField$a(this, "freezeDurationTimestamp");
|
|
1255
|
-
__publicField$a(this, "unFreezeDurationTimestamp");
|
|
1256
|
-
__publicField$a(this, "logo");
|
|
1257
1197
|
this.contestName = "";
|
|
1258
1198
|
this.startTime = createDayJS();
|
|
1259
1199
|
this.endTime = createDayJS();
|
|
@@ -1264,9 +1204,9 @@ class ContestIndexConfig {
|
|
|
1264
1204
|
}
|
|
1265
1205
|
}
|
|
1266
1206
|
class ContestIndex {
|
|
1207
|
+
contest;
|
|
1208
|
+
boardLink;
|
|
1267
1209
|
constructor() {
|
|
1268
|
-
__publicField$a(this, "contest");
|
|
1269
|
-
__publicField$a(this, "boardLink");
|
|
1270
1210
|
this.contest = new Contest();
|
|
1271
1211
|
this.boardLink = "";
|
|
1272
1212
|
}
|
|
@@ -1644,15 +1584,9 @@ function getImageSource(image, asset_host) {
|
|
|
1644
1584
|
return "";
|
|
1645
1585
|
}
|
|
1646
1586
|
|
|
1647
|
-
var __defProp$9 = Object.defineProperty;
|
|
1648
|
-
var __defNormalProp$9 = (obj, key, value) => key in obj ? __defProp$9(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1649
|
-
var __publicField$9 = (obj, key, value) => {
|
|
1650
|
-
__defNormalProp$9(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
1651
|
-
return value;
|
|
1652
|
-
};
|
|
1653
1587
|
class Person {
|
|
1588
|
+
name;
|
|
1654
1589
|
constructor(name = "") {
|
|
1655
|
-
__publicField$9(this, "name");
|
|
1656
1590
|
this.name = name;
|
|
1657
1591
|
}
|
|
1658
1592
|
toJSON() {
|
|
@@ -1681,19 +1615,13 @@ function createPersons(iPersons) {
|
|
|
1681
1615
|
return iPersons.map((name) => new Person(name));
|
|
1682
1616
|
}
|
|
1683
1617
|
|
|
1684
|
-
var __defProp$8 = Object.defineProperty;
|
|
1685
|
-
var __defNormalProp$8 = (obj, key, value) => key in obj ? __defProp$8(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1686
|
-
var __publicField$8 = (obj, key, value) => {
|
|
1687
|
-
__defNormalProp$8(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
1688
|
-
return value;
|
|
1689
|
-
};
|
|
1690
1618
|
class RankStatistics {
|
|
1619
|
+
teamSolvedNum;
|
|
1620
|
+
teamSolvedNumIndex;
|
|
1621
|
+
maxSolvedProblems;
|
|
1622
|
+
effectiveTeamNum;
|
|
1623
|
+
totalTeamNum;
|
|
1691
1624
|
constructor() {
|
|
1692
|
-
__publicField$8(this, "teamSolvedNum");
|
|
1693
|
-
__publicField$8(this, "teamSolvedNumIndex");
|
|
1694
|
-
__publicField$8(this, "maxSolvedProblems");
|
|
1695
|
-
__publicField$8(this, "effectiveTeamNum");
|
|
1696
|
-
__publicField$8(this, "totalTeamNum");
|
|
1697
1625
|
this.teamSolvedNum = [];
|
|
1698
1626
|
this.teamSolvedNumIndex = [];
|
|
1699
1627
|
this.maxSolvedProblems = 0;
|
|
@@ -1712,25 +1640,19 @@ class RankStatistics {
|
|
|
1712
1640
|
}
|
|
1713
1641
|
}
|
|
1714
1642
|
|
|
1715
|
-
var __defProp$7 = Object.defineProperty;
|
|
1716
|
-
var __defNormalProp$7 = (obj, key, value) => key in obj ? __defProp$7(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
1717
|
-
var __publicField$7 = (obj, key, value) => {
|
|
1718
|
-
__defNormalProp$7(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
1719
|
-
return value;
|
|
1720
|
-
};
|
|
1721
1643
|
class RankOptions {
|
|
1644
|
+
enableFilterSubmissionsByTimestamp;
|
|
1645
|
+
width;
|
|
1646
|
+
timestamp;
|
|
1647
|
+
enableFilterTeamsByGroup;
|
|
1648
|
+
group;
|
|
1649
|
+
filterOrganizations;
|
|
1650
|
+
filterOrganizationMap;
|
|
1651
|
+
filterTeams;
|
|
1652
|
+
filterTeamMap;
|
|
1653
|
+
enableAnimatedSubmissions;
|
|
1654
|
+
battleOfGiants;
|
|
1722
1655
|
constructor() {
|
|
1723
|
-
__publicField$7(this, "enableFilterSubmissionsByTimestamp");
|
|
1724
|
-
__publicField$7(this, "width");
|
|
1725
|
-
__publicField$7(this, "timestamp");
|
|
1726
|
-
__publicField$7(this, "enableFilterTeamsByGroup");
|
|
1727
|
-
__publicField$7(this, "group");
|
|
1728
|
-
__publicField$7(this, "filterOrganizations");
|
|
1729
|
-
__publicField$7(this, "filterOrganizationMap");
|
|
1730
|
-
__publicField$7(this, "filterTeams");
|
|
1731
|
-
__publicField$7(this, "filterTeamMap");
|
|
1732
|
-
__publicField$7(this, "enableAnimatedSubmissions");
|
|
1733
|
-
__publicField$7(this, "battleOfGiants");
|
|
1734
1656
|
this.enableFilterSubmissionsByTimestamp = false;
|
|
1735
1657
|
this.width = 0;
|
|
1736
1658
|
this.timestamp = 0;
|
|
@@ -1811,19 +1733,19 @@ class RankOptions {
|
|
|
1811
1733
|
}
|
|
1812
1734
|
}
|
|
1813
1735
|
class Rank {
|
|
1736
|
+
contest;
|
|
1737
|
+
teams;
|
|
1738
|
+
teamsMap;
|
|
1739
|
+
submissions;
|
|
1740
|
+
submissionsMap;
|
|
1741
|
+
organizations;
|
|
1742
|
+
originTeams;
|
|
1743
|
+
rankStatistics;
|
|
1744
|
+
options;
|
|
1745
|
+
balloons;
|
|
1746
|
+
languages;
|
|
1747
|
+
statuses;
|
|
1814
1748
|
constructor(contest, teams, submissions) {
|
|
1815
|
-
__publicField$7(this, "contest");
|
|
1816
|
-
__publicField$7(this, "teams");
|
|
1817
|
-
__publicField$7(this, "teamsMap");
|
|
1818
|
-
__publicField$7(this, "submissions");
|
|
1819
|
-
__publicField$7(this, "submissionsMap");
|
|
1820
|
-
__publicField$7(this, "organizations");
|
|
1821
|
-
__publicField$7(this, "originTeams");
|
|
1822
|
-
__publicField$7(this, "rankStatistics");
|
|
1823
|
-
__publicField$7(this, "options");
|
|
1824
|
-
__publicField$7(this, "balloons");
|
|
1825
|
-
__publicField$7(this, "languages");
|
|
1826
|
-
__publicField$7(this, "statuses");
|
|
1827
1749
|
this.contest = contest;
|
|
1828
1750
|
this.teams = _.cloneDeep(teams);
|
|
1829
1751
|
this.teamsMap = new Map(this.teams.map((t) => [t.id, t]));
|
|
@@ -2172,24 +2094,18 @@ class Rank {
|
|
|
2172
2094
|
}
|
|
2173
2095
|
}
|
|
2174
2096
|
|
|
2175
|
-
var __defProp$6 = Object.defineProperty;
|
|
2176
|
-
var __defNormalProp$6 = (obj, key, value) => key in obj ? __defProp$6(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2177
|
-
var __publicField$6 = (obj, key, value) => {
|
|
2178
|
-
__defNormalProp$6(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2179
|
-
return value;
|
|
2180
|
-
};
|
|
2181
2097
|
class RatingHistory {
|
|
2098
|
+
rank;
|
|
2099
|
+
rating;
|
|
2100
|
+
teamName;
|
|
2101
|
+
organization;
|
|
2102
|
+
members;
|
|
2103
|
+
coaches;
|
|
2104
|
+
contestID;
|
|
2105
|
+
contestName;
|
|
2106
|
+
contestLink;
|
|
2107
|
+
contestTime;
|
|
2182
2108
|
constructor() {
|
|
2183
|
-
__publicField$6(this, "rank");
|
|
2184
|
-
__publicField$6(this, "rating");
|
|
2185
|
-
__publicField$6(this, "teamName");
|
|
2186
|
-
__publicField$6(this, "organization");
|
|
2187
|
-
__publicField$6(this, "members");
|
|
2188
|
-
__publicField$6(this, "coaches");
|
|
2189
|
-
__publicField$6(this, "contestID");
|
|
2190
|
-
__publicField$6(this, "contestName");
|
|
2191
|
-
__publicField$6(this, "contestLink");
|
|
2192
|
-
__publicField$6(this, "contestTime");
|
|
2193
2109
|
this.rank = 0;
|
|
2194
2110
|
this.rating = 0;
|
|
2195
2111
|
this.teamName = "";
|
|
@@ -2234,27 +2150,21 @@ class RatingHistory {
|
|
|
2234
2150
|
}
|
|
2235
2151
|
}
|
|
2236
2152
|
|
|
2237
|
-
var __defProp$5 = Object.defineProperty;
|
|
2238
|
-
var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2239
|
-
var __publicField$5 = (obj, key, value) => {
|
|
2240
|
-
__defNormalProp$5(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2241
|
-
return value;
|
|
2242
|
-
};
|
|
2243
2153
|
class RatingUser {
|
|
2154
|
+
id;
|
|
2155
|
+
name;
|
|
2156
|
+
organization;
|
|
2157
|
+
members;
|
|
2158
|
+
coaches;
|
|
2159
|
+
rating;
|
|
2160
|
+
minRating;
|
|
2161
|
+
maxRating;
|
|
2162
|
+
rank;
|
|
2163
|
+
oldRating;
|
|
2164
|
+
seed;
|
|
2165
|
+
delta;
|
|
2166
|
+
ratingHistories;
|
|
2244
2167
|
constructor() {
|
|
2245
|
-
__publicField$5(this, "id");
|
|
2246
|
-
__publicField$5(this, "name");
|
|
2247
|
-
__publicField$5(this, "organization");
|
|
2248
|
-
__publicField$5(this, "members");
|
|
2249
|
-
__publicField$5(this, "coaches");
|
|
2250
|
-
__publicField$5(this, "rating");
|
|
2251
|
-
__publicField$5(this, "minRating");
|
|
2252
|
-
__publicField$5(this, "maxRating");
|
|
2253
|
-
__publicField$5(this, "rank");
|
|
2254
|
-
__publicField$5(this, "oldRating");
|
|
2255
|
-
__publicField$5(this, "seed");
|
|
2256
|
-
__publicField$5(this, "delta");
|
|
2257
|
-
__publicField$5(this, "ratingHistories");
|
|
2258
2168
|
this.id = "";
|
|
2259
2169
|
this.name = "";
|
|
2260
2170
|
this.organization = "";
|
|
@@ -2307,15 +2217,9 @@ class RatingUser {
|
|
|
2307
2217
|
}
|
|
2308
2218
|
}
|
|
2309
2219
|
|
|
2310
|
-
var __defProp$4 = Object.defineProperty;
|
|
2311
|
-
var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2312
|
-
var __publicField$4 = (obj, key, value) => {
|
|
2313
|
-
__defNormalProp$4(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2314
|
-
return value;
|
|
2315
|
-
};
|
|
2316
2220
|
class RatingCalculator {
|
|
2221
|
+
users;
|
|
2317
2222
|
constructor() {
|
|
2318
|
-
__publicField$4(this, "users");
|
|
2319
2223
|
this.users = [];
|
|
2320
2224
|
}
|
|
2321
2225
|
calculate() {
|
|
@@ -2387,21 +2291,15 @@ class RatingCalculator {
|
|
|
2387
2291
|
}
|
|
2388
2292
|
}
|
|
2389
2293
|
|
|
2390
|
-
var __defProp$3 = Object.defineProperty;
|
|
2391
|
-
var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2392
|
-
var __publicField$3 = (obj, key, value) => {
|
|
2393
|
-
__defNormalProp$3(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2394
|
-
return value;
|
|
2395
|
-
};
|
|
2396
2294
|
class Rating {
|
|
2295
|
+
id;
|
|
2296
|
+
name;
|
|
2297
|
+
baseRating;
|
|
2298
|
+
contestIDs;
|
|
2299
|
+
users;
|
|
2300
|
+
ranks;
|
|
2301
|
+
userMap;
|
|
2397
2302
|
constructor() {
|
|
2398
|
-
__publicField$3(this, "id");
|
|
2399
|
-
__publicField$3(this, "name");
|
|
2400
|
-
__publicField$3(this, "baseRating");
|
|
2401
|
-
__publicField$3(this, "contestIDs");
|
|
2402
|
-
__publicField$3(this, "users");
|
|
2403
|
-
__publicField$3(this, "ranks");
|
|
2404
|
-
__publicField$3(this, "userMap");
|
|
2405
2303
|
this.id = "";
|
|
2406
2304
|
this.name = "";
|
|
2407
2305
|
this.baseRating = 1500;
|
|
@@ -2566,19 +2464,13 @@ class RatingUtility {
|
|
|
2566
2464
|
}
|
|
2567
2465
|
}
|
|
2568
2466
|
|
|
2569
|
-
var __defProp$2 = Object.defineProperty;
|
|
2570
|
-
var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2571
|
-
var __publicField$2 = (obj, key, value) => {
|
|
2572
|
-
__defNormalProp$2(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2573
|
-
return value;
|
|
2574
|
-
};
|
|
2575
2467
|
class ResolverOperation {
|
|
2468
|
+
id;
|
|
2469
|
+
team;
|
|
2470
|
+
problemIx;
|
|
2471
|
+
beforeTeamProblemStatistics;
|
|
2472
|
+
afterTeamProblemStatistics;
|
|
2576
2473
|
constructor() {
|
|
2577
|
-
__publicField$2(this, "id");
|
|
2578
|
-
__publicField$2(this, "team");
|
|
2579
|
-
__publicField$2(this, "problemIx");
|
|
2580
|
-
__publicField$2(this, "beforeTeamProblemStatistics");
|
|
2581
|
-
__publicField$2(this, "afterTeamProblemStatistics");
|
|
2582
2474
|
this.id = 0;
|
|
2583
2475
|
this.team = new Team();
|
|
2584
2476
|
this.problemIx = 0;
|
|
@@ -2587,13 +2479,11 @@ class ResolverOperation {
|
|
|
2587
2479
|
}
|
|
2588
2480
|
}
|
|
2589
2481
|
|
|
2590
|
-
var __defProp$1 = Object.defineProperty;
|
|
2591
|
-
var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2592
|
-
var __publicField$1 = (obj, key, value) => {
|
|
2593
|
-
__defNormalProp$1(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2594
|
-
return value;
|
|
2595
|
-
};
|
|
2596
2482
|
class Resolver extends Rank {
|
|
2483
|
+
finalRank;
|
|
2484
|
+
operations;
|
|
2485
|
+
beforeFreezeSubmissions;
|
|
2486
|
+
afterFreezeSubmissions;
|
|
2597
2487
|
constructor(contest, teams, submissions) {
|
|
2598
2488
|
submissions.sort(Submission.compare);
|
|
2599
2489
|
let beforeFreezeSubmissions = submissions;
|
|
@@ -2617,10 +2507,6 @@ class Resolver extends Rank {
|
|
|
2617
2507
|
afterFreezeSubmissions = submissions.slice(ix, -1);
|
|
2618
2508
|
}
|
|
2619
2509
|
super(contest, teams, beforeFreezeSubmissions);
|
|
2620
|
-
__publicField$1(this, "finalRank");
|
|
2621
|
-
__publicField$1(this, "operations");
|
|
2622
|
-
__publicField$1(this, "beforeFreezeSubmissions");
|
|
2623
|
-
__publicField$1(this, "afterFreezeSubmissions");
|
|
2624
2510
|
this.finalRank = new Rank(contest, teams, submissions);
|
|
2625
2511
|
this.operations = [];
|
|
2626
2512
|
this.beforeFreezeSubmissions = beforeFreezeSubmissions;
|
|
@@ -2687,29 +2573,23 @@ class Resolver extends Rank {
|
|
|
2687
2573
|
}
|
|
2688
2574
|
}
|
|
2689
2575
|
|
|
2690
|
-
var __defProp = Object.defineProperty;
|
|
2691
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
2692
|
-
var __publicField = (obj, key, value) => {
|
|
2693
|
-
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
2694
|
-
return value;
|
|
2695
|
-
};
|
|
2696
2576
|
class ResolverVue extends Resolver {
|
|
2577
|
+
FLASHING_TIME_MS = 100;
|
|
2578
|
+
ROLLING_TIME_MS = 600;
|
|
2579
|
+
maxIndex;
|
|
2580
|
+
currentIndex;
|
|
2581
|
+
maxOpIndex;
|
|
2582
|
+
currentOpIndex;
|
|
2583
|
+
oldRank;
|
|
2584
|
+
newRank;
|
|
2585
|
+
currentTeamId;
|
|
2586
|
+
currentProblemIndex;
|
|
2587
|
+
problemFlashingEnded;
|
|
2588
|
+
duringAnimation;
|
|
2589
|
+
startScrollUp;
|
|
2590
|
+
startScrollDown;
|
|
2697
2591
|
constructor(contest, teams, submissions) {
|
|
2698
2592
|
super(contest, teams, submissions);
|
|
2699
|
-
__publicField(this, "FLASHING_TIME_MS", 100);
|
|
2700
|
-
__publicField(this, "ROLLING_TIME_MS", 600);
|
|
2701
|
-
__publicField(this, "maxIndex");
|
|
2702
|
-
__publicField(this, "currentIndex");
|
|
2703
|
-
__publicField(this, "maxOpIndex");
|
|
2704
|
-
__publicField(this, "currentOpIndex");
|
|
2705
|
-
__publicField(this, "oldRank");
|
|
2706
|
-
__publicField(this, "newRank");
|
|
2707
|
-
__publicField(this, "currentTeamId");
|
|
2708
|
-
__publicField(this, "currentProblemIndex");
|
|
2709
|
-
__publicField(this, "problemFlashingEnded");
|
|
2710
|
-
__publicField(this, "duringAnimation");
|
|
2711
|
-
__publicField(this, "startScrollUp");
|
|
2712
|
-
__publicField(this, "startScrollDown");
|
|
2713
2593
|
this.maxIndex = 0;
|
|
2714
2594
|
this.currentIndex = 0;
|
|
2715
2595
|
this.maxOpIndex = 0;
|