lscontests 2.3.1 → 2.5.1
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 +85 -41
- package/dist/cli.js +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/lib/oj/codeforces.js +48 -1
- package/dist/lib/oj/codeforces.js.map +1 -1
- package/dist/server.js +19 -3
- package/dist/server.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -38,7 +38,7 @@ Usage: lsct [options]
|
|
|
38
38
|
|
|
39
39
|
Options:
|
|
40
40
|
-V, --version output the version number
|
|
41
|
-
-d, --days, <day> number of days to display, set to
|
|
41
|
+
-d, --days, <day> number of days to display, set to -1 to get all
|
|
42
42
|
contests infomation (default: "3")
|
|
43
43
|
-l, --list list all supported OJ and it's abbreviation
|
|
44
44
|
-s, --silent do not print log
|
|
@@ -56,22 +56,43 @@ Options:
|
|
|
56
56
|
It performs as follows:
|
|
57
57
|
|
|
58
58
|
<!-- block_cli begin -->
|
|
59
|
-
(*The following content was automatically generated using [semantic-release](https://github.com/semantic-release/semantic-release) on
|
|
59
|
+
(*The following content was automatically generated using [semantic-release](https://github.com/semantic-release/semantic-release) on Thu, 30 Jun 2022 08:32:50 GMT*)
|
|
60
60
|
|
|
61
61
|
<details>
|
|
62
62
|
<summary> <code>> lsct -L en</code> </summary>
|
|
63
63
|
|
|
64
64
|
```text
|
|
65
|
-
There are
|
|
65
|
+
There are no running contests on AtCoder,Codeforces,LeetCode,Luogu,NowCoder
|
|
66
|
+
|
|
67
|
+
There are 4 contests on NowCoder,AtCoder,LeetCode in the next 3 days
|
|
66
68
|
|
|
67
69
|
OJ: NowCoder
|
|
68
|
-
Contest name:
|
|
70
|
+
Contest name: 第 20 届上海大学程序设计联赛夏季赛(校外同步赛)
|
|
69
71
|
Rule: ICPC
|
|
70
|
-
Start time:
|
|
71
|
-
End time:
|
|
72
|
-
https://ac.nowcoder.com/acm/contest/
|
|
72
|
+
Start time: 7/2/2022, 05:00:00
|
|
73
|
+
End time: 7/2/2022, 08:30:00
|
|
74
|
+
https://ac.nowcoder.com/acm/contest/36652
|
|
73
75
|
|
|
74
|
-
|
|
76
|
+
OJ: AtCoder
|
|
77
|
+
Contest name: Ⓐ AtCoder Beginner Contest 258
|
|
78
|
+
Rule: AtCoder
|
|
79
|
+
Start time: 7/2/2022, 12:00:00
|
|
80
|
+
End time: 7/2/2022, 13:40:00
|
|
81
|
+
https://atcoder.jp/contests/abc258
|
|
82
|
+
|
|
83
|
+
OJ: LeetCode
|
|
84
|
+
Contest name: Weekly Contest 300
|
|
85
|
+
Rule: AtCoder
|
|
86
|
+
Start time: 7/3/2022, 02:30:00
|
|
87
|
+
End time: 7/3/2022, 04:00:00
|
|
88
|
+
https://leetcode.com/contest/weekly-contest-300
|
|
89
|
+
|
|
90
|
+
OJ: AtCoder
|
|
91
|
+
Contest name: Ⓗ AtCoder Heuristic Contest 012
|
|
92
|
+
Rule: AtCoder
|
|
93
|
+
Start time: 7/3/2022, 06:00:00
|
|
94
|
+
End time: 7/3/2022, 10:00:00
|
|
95
|
+
https://atcoder.jp/contests/ahc012
|
|
75
96
|
```
|
|
76
97
|
|
|
77
98
|
</details>
|
|
@@ -82,21 +103,28 @@ No contests on AtCoder,Codeforces,LeetCode,Luogu,NowCoder for the next 3 days
|
|
|
82
103
|
```text
|
|
83
104
|
There are no running contests on AtCoder,Codeforces
|
|
84
105
|
|
|
85
|
-
There are
|
|
106
|
+
There are 3 contests on AtCoder,Codeforces in the next 7 days
|
|
86
107
|
|
|
87
108
|
OJ: AtCoder
|
|
88
|
-
Contest name: Ⓐ
|
|
109
|
+
Contest name: Ⓐ AtCoder Beginner Contest 258
|
|
89
110
|
Rule: AtCoder
|
|
90
|
-
Start time:
|
|
91
|
-
End time:
|
|
92
|
-
https://atcoder.jp/contests/
|
|
111
|
+
Start time: 7/2/2022, 12:00:00
|
|
112
|
+
End time: 7/2/2022, 13:40:00
|
|
113
|
+
https://atcoder.jp/contests/abc258
|
|
93
114
|
|
|
94
115
|
OJ: AtCoder
|
|
95
|
-
Contest name:
|
|
116
|
+
Contest name: Ⓗ AtCoder Heuristic Contest 012
|
|
96
117
|
Rule: AtCoder
|
|
97
|
-
Start time:
|
|
98
|
-
End time:
|
|
99
|
-
https://atcoder.jp/contests/
|
|
118
|
+
Start time: 7/3/2022, 06:00:00
|
|
119
|
+
End time: 7/3/2022, 10:00:00
|
|
120
|
+
https://atcoder.jp/contests/ahc012
|
|
121
|
+
|
|
122
|
+
OJ: Codeforces
|
|
123
|
+
Contest name: Codeforces Round #804 (Div. 2)
|
|
124
|
+
Rule: Codeforces
|
|
125
|
+
Start time: 7/4/2022, 14:35:00
|
|
126
|
+
End time: 7/4/2022, 16:35:00
|
|
127
|
+
https://codeforces.com/contests/1699
|
|
100
128
|
```
|
|
101
129
|
|
|
102
130
|
</details>
|
|
@@ -110,51 +138,67 @@ https://atcoder.jp/contests/arc142
|
|
|
110
138
|
"upcoming": [
|
|
111
139
|
{
|
|
112
140
|
"ojName": "AtCoder",
|
|
113
|
-
"name": "Ⓐ
|
|
141
|
+
"name": "Ⓐ AtCoder Beginner Contest 258",
|
|
114
142
|
"rule": "AtCoder",
|
|
115
|
-
"startTime": "2022-
|
|
116
|
-
"endTime": "2022-
|
|
117
|
-
"url": "https://atcoder.jp/contests/
|
|
143
|
+
"startTime": "2022-07-02T12:00:00.000Z",
|
|
144
|
+
"endTime": "2022-07-02T13:40:00.000Z",
|
|
145
|
+
"url": "https://atcoder.jp/contests/abc258"
|
|
118
146
|
},
|
|
119
147
|
{
|
|
120
148
|
"ojName": "AtCoder",
|
|
121
|
-
"name": "
|
|
149
|
+
"name": "Ⓗ AtCoder Heuristic Contest 012",
|
|
122
150
|
"rule": "AtCoder",
|
|
123
|
-
"startTime": "2022-
|
|
124
|
-
"endTime": "2022-
|
|
125
|
-
"url": "https://atcoder.jp/contests/
|
|
151
|
+
"startTime": "2022-07-03T06:00:00.000Z",
|
|
152
|
+
"endTime": "2022-07-03T10:00:00.000Z",
|
|
153
|
+
"url": "https://atcoder.jp/contests/ahc012"
|
|
126
154
|
},
|
|
127
155
|
{
|
|
128
156
|
"ojName": "AtCoder",
|
|
129
|
-
"name": "Ⓐ
|
|
157
|
+
"name": "Ⓐ AtCoder Beginner Contest 259",
|
|
130
158
|
"rule": "AtCoder",
|
|
131
|
-
"startTime": "2022-
|
|
132
|
-
"endTime": "2022-
|
|
133
|
-
"url": "https://atcoder.jp/contests/
|
|
159
|
+
"startTime": "2022-07-09T12:00:00.000Z",
|
|
160
|
+
"endTime": "2022-07-09T13:40:00.000Z",
|
|
161
|
+
"url": "https://atcoder.jp/contests/abc259"
|
|
134
162
|
},
|
|
135
163
|
{
|
|
136
164
|
"ojName": "AtCoder",
|
|
137
|
-
"name": "Ⓐ AtCoder Regular Contest
|
|
165
|
+
"name": "Ⓐ AtCoder Regular Contest 144",
|
|
138
166
|
"rule": "AtCoder",
|
|
139
|
-
"startTime": "2022-
|
|
140
|
-
"endTime": "2022-
|
|
141
|
-
"url": "https://atcoder.jp/contests/
|
|
167
|
+
"startTime": "2022-07-16T12:00:00.000Z",
|
|
168
|
+
"endTime": "2022-07-16T14:00:00.000Z",
|
|
169
|
+
"url": "https://atcoder.jp/contests/arc144"
|
|
142
170
|
},
|
|
143
171
|
{
|
|
144
172
|
"ojName": "AtCoder",
|
|
145
|
-
"name": "Ⓐ AtCoder Beginner Contest
|
|
173
|
+
"name": "Ⓐ AtCoder Beginner Contest 260",
|
|
146
174
|
"rule": "AtCoder",
|
|
147
|
-
"startTime": "2022-07-
|
|
148
|
-
"endTime": "2022-07-
|
|
149
|
-
"url": "https://atcoder.jp/contests/
|
|
175
|
+
"startTime": "2022-07-17T12:00:00.000Z",
|
|
176
|
+
"endTime": "2022-07-17T13:40:00.000Z",
|
|
177
|
+
"url": "https://atcoder.jp/contests/abc260"
|
|
150
178
|
},
|
|
151
179
|
{
|
|
152
180
|
"ojName": "AtCoder",
|
|
153
|
-
"name": "
|
|
181
|
+
"name": "Ⓐ AtCoder Regular Contest 145",
|
|
154
182
|
"rule": "AtCoder",
|
|
155
|
-
"startTime": "2022-07-
|
|
156
|
-
"endTime": "2022-07-
|
|
157
|
-
"url": "https://atcoder.jp/contests/
|
|
183
|
+
"startTime": "2022-07-30T12:00:00.000Z",
|
|
184
|
+
"endTime": "2022-07-30T14:00:00.000Z",
|
|
185
|
+
"url": "https://atcoder.jp/contests/arc145"
|
|
186
|
+
},
|
|
187
|
+
{
|
|
188
|
+
"ojName": "AtCoder",
|
|
189
|
+
"name": "Ⓐ AtCoder Grand Contest 058",
|
|
190
|
+
"rule": "AtCoder",
|
|
191
|
+
"startTime": "2022-08-14T12:00:00.000Z",
|
|
192
|
+
"endTime": "2022-08-14T15:00:00.000Z",
|
|
193
|
+
"url": "https://atcoder.jp/contests/agc058"
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
"ojName": "Codeforces",
|
|
197
|
+
"name": "Codeforces Round #804 (Div. 2)",
|
|
198
|
+
"rule": "Codeforces",
|
|
199
|
+
"startTime": "2022-07-04T14:35:00.000Z",
|
|
200
|
+
"endTime": "2022-07-04T16:35:00.000Z",
|
|
201
|
+
"url": "https://codeforces.com/contests/1699"
|
|
158
202
|
}
|
|
159
203
|
]
|
|
160
204
|
}
|
package/dist/cli.js
CHANGED
|
@@ -24,7 +24,7 @@ const locale_1 = require("./locale");
|
|
|
24
24
|
function initCmd() {
|
|
25
25
|
return new commander_1.default.Command()
|
|
26
26
|
.version(package_json_1.version)
|
|
27
|
-
.option("-d, --days, <day>", "number of days to display, set to
|
|
27
|
+
.option("-d, --days, <day>", "number of days to display, set to -1 to get all contests infomation", "3")
|
|
28
28
|
.option("-l, --list", "list all supported OJ and it's abbreviation")
|
|
29
29
|
.option("-s, --silent", "do not print log")
|
|
30
30
|
.addOption(new commander_1.default.Option("-o, --oj <ojs...>", "OJs to display").choices(Object.keys(oj_1.alloj)))
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,0DAAkC;AAClC,oDAAuB;AACvB,sDAA8B;AAC9B,yCAA2B;AAC3B,kDAA+C;AAC/C,iCAAiC;AACjC,qCAAoC;AAEpC,SAAS,OAAO;IAEZ,OAAO,IAAI,mBAAS,CAAC,OAAO,EAAE;SACzB,OAAO,CAAC,sBAAO,CAAC;SAChB,MAAM,CAAC,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,0DAAkC;AAClC,oDAAuB;AACvB,sDAA8B;AAC9B,yCAA2B;AAC3B,kDAA+C;AAC/C,iCAAiC;AACjC,qCAAoC;AAEpC,SAAS,OAAO;IAEZ,OAAO,IAAI,mBAAS,CAAC,OAAO,EAAE;SACzB,OAAO,CAAC,sBAAO,CAAC;SAChB,MAAM,CAAC,mBAAmB,EAAE,qEAAqE,EAAE,GAAG,CAAC;SACvG,MAAM,CAAC,YAAY,EAAE,6CAA6C,CAAC;SACnE,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;SAC1C,SAAS,CAAC,IAAI,mBAAS,CAAC,MAAM,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAK,CAAC,CAAC,CAAC;SAClG,SAAS,CAAC,IAAI,mBAAS,CAAC,MAAM,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;SAC5F,SAAS,CAAC,IAAI,mBAAS,CAAC,MAAM,CAAC,uBAAuB,EAAE,qBAAqB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,iBAAQ,CAAC,CAAC;SAClH,MAAM,CAAC,WAAW,EAAE,qDAAqD,CAAC;SAC1E,MAAM,CAAC,cAAc,EAAE,kCAAkC,CAAC;SAC1D,MAAM,CAAC,eAAe,EAAE,mCAAmC,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;;GAOG;AACH,SAAsB,GAAG,CACrB,IAAa,EACb,IAAa,EACb,MAA6B,OAAO,CAAC,GAAG,EACxC,SAAS,GAAG,MAAM,EAClB,aAAa,GAAG,iBAAO,CAAC,UAAU,CAAC,OAAO;;QAG1C,MAAM,GAAG,GAAG,OAAO,EAAE;aAChB,IAAI,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,MAAM,CAAC,IAAI,CAAC,kBAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aACjC,eAAe,CAAC;YACb,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,GAAG;SAChB,CAAC;aACD,YAAY,EAAE,CAAC;QACpB,IAAI;YAAE,GAAG,CAAC,KAAK,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;SAAE;QACtD,OAAM,CAAC,EAAE;YAAE,OAAO;SAAE;QAEpB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACxB,IAAG,IAAI,CAAC,IAAI;YAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAC,CAAC,SAAS,CAAC,UAAK,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;aAEhF;YACI,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC;gBACxB,QAAQ,EAAE,gBAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBACzB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;aACtB,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;YAC7B,IAAG,IAAI,CAAC,GAAG;gBAAE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;;gBAC/D,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;SACvD;IACL,CAAC;CAAA;AAjCD,kBAiCC;AAED,IAAG,OAAO,CAAC,IAAI,KAAK,MAAM;IAAE,GAAG,EAAE,CAAC"}
|
|
@@ -19,6 +19,52 @@ const ruleRecord = {
|
|
|
19
19
|
CF: "Codeforces",
|
|
20
20
|
ICPC: "ICPC"
|
|
21
21
|
};
|
|
22
|
+
function mergeDuplicate(data) {
|
|
23
|
+
const testRe = /Codeforces Round #(\d{2,4}) \(Div. (\d)\)/;
|
|
24
|
+
const tmpMap = new Map();
|
|
25
|
+
const rets = [];
|
|
26
|
+
data.forEach((item) => {
|
|
27
|
+
if (testRe.test(item.name)) {
|
|
28
|
+
const reRet = item.name.match(testRe);
|
|
29
|
+
if (reRet !== null) {
|
|
30
|
+
const round = parseInt(reRet[1]);
|
|
31
|
+
const div = parseInt(reRet[2]);
|
|
32
|
+
const i = tmpMap.get(round);
|
|
33
|
+
if (i !== undefined) {
|
|
34
|
+
i.push([div, item]);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
tmpMap.set(round, [[div, item]]);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
throw new Error("MergeDuplicate: regex failed");
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
rets.push(item);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
tmpMap.forEach((v, k) => {
|
|
49
|
+
if (v.length === 1) {
|
|
50
|
+
rets.push(v[0][1]);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
const divs = v.map(([div]) => div).sort().join("/");
|
|
54
|
+
const urls = v.map(([, item]) => item.url).join("\n");
|
|
55
|
+
const item = {
|
|
56
|
+
name: `Codeforces Round #${k} (Div. ${divs})`,
|
|
57
|
+
ojName: exports.cf.name,
|
|
58
|
+
rule: ruleRecord.CF,
|
|
59
|
+
startTime: v[0][1].startTime,
|
|
60
|
+
endTime: v[0][1].endTime,
|
|
61
|
+
url: urls
|
|
62
|
+
};
|
|
63
|
+
rets.push(item);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
return rets;
|
|
67
|
+
}
|
|
22
68
|
exports.cf = {
|
|
23
69
|
name: "Codeforces",
|
|
24
70
|
get() {
|
|
@@ -29,7 +75,7 @@ exports.cf = {
|
|
|
29
75
|
throw new Error($.text());
|
|
30
76
|
}
|
|
31
77
|
const resList = response.data.result;
|
|
32
|
-
|
|
78
|
+
const ret = resList.map((res) => {
|
|
33
79
|
return {
|
|
34
80
|
ojName: exports.cf.name,
|
|
35
81
|
name: res.name,
|
|
@@ -39,6 +85,7 @@ exports.cf = {
|
|
|
39
85
|
url: `https://codeforces.com/contests/${res.id}`
|
|
40
86
|
};
|
|
41
87
|
}).filter(contest => contest.endTime >= new Date());
|
|
88
|
+
return mergeDuplicate(ret);
|
|
42
89
|
});
|
|
43
90
|
}
|
|
44
91
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codeforces.js","sourceRoot":"","sources":["../../../src/lib/oj/codeforces.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,qCAA+B;AAe/B,MAAM,UAAU,GAAyB;IACrC,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,MAAM;CACf,CAAC;
|
|
1
|
+
{"version":3,"file":"codeforces.js","sourceRoot":"","sources":["../../../src/lib/oj/codeforces.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -77,6 +77,22 @@ const contestsCache = {
|
|
|
77
77
|
contests: [],
|
|
78
78
|
lastUpdate: 0
|
|
79
79
|
};
|
|
80
|
+
function icsPostProcess(value) {
|
|
81
|
+
return value
|
|
82
|
+
.replace("X-PUBLISHED-TTL:PT1H", "X-PUBLISHED-TTL:PT1H\r\nREFRESH-INTERVAL:PT1H")
|
|
83
|
+
.replace("X-WR-CALNAME:算法竞赛", "X-WR-CALNAME:算法竞赛\r\n" +
|
|
84
|
+
"X-WR-TIMEZONE:Asia/Shanghai\r\n" +
|
|
85
|
+
"BEGIN:VTIMEZONE\r\n" +
|
|
86
|
+
"TZID:Asia/Shanghai\r\n" +
|
|
87
|
+
"X-LIC-LOCATION:Asia/Shanghai\r\n" +
|
|
88
|
+
"BEGIN:STANDARD\r\n" +
|
|
89
|
+
"TZOFFSETFROM:+0800\r\n" +
|
|
90
|
+
"TZOFFSETTO:+0800\r\n" +
|
|
91
|
+
"TZNAME:CST\r\n" +
|
|
92
|
+
"DTSTART:19700101T000000\r\n" +
|
|
93
|
+
"END:STANDARD\r\n" +
|
|
94
|
+
"END:VTIMEZONE");
|
|
95
|
+
}
|
|
80
96
|
function getIcs(lang, ojs) {
|
|
81
97
|
return __awaiter(this, void 0, void 0, function* () {
|
|
82
98
|
if (contestsCache.lastUpdate < Date.now() - 1000 * 60 * 5) {
|
|
@@ -96,11 +112,12 @@ function getIcs(lang, ojs) {
|
|
|
96
112
|
const description = pangu_1.default.spacing(ls.join("\n"));
|
|
97
113
|
const ret = {
|
|
98
114
|
start: (0, ics_1.convertTimestampToArray)(c.startTime.getTime(), "local"),
|
|
115
|
+
startOutputType: "local",
|
|
99
116
|
end: (0, ics_1.convertTimestampToArray)(c.endTime.getTime(), "local"),
|
|
117
|
+
endOutputType: "local",
|
|
100
118
|
calName: "算法竞赛",
|
|
101
119
|
productId: "-//StableAgOH//LSCT//CN",
|
|
102
120
|
title: c.name,
|
|
103
|
-
url: c.url,
|
|
104
121
|
location: c.ojName,
|
|
105
122
|
categories: [c.rule],
|
|
106
123
|
uid: `${(0, crypto_1.randomUUID)()}@LSCT`,
|
|
@@ -112,8 +129,7 @@ function getIcs(lang, ojs) {
|
|
|
112
129
|
if (error)
|
|
113
130
|
throw error;
|
|
114
131
|
assertType(value);
|
|
115
|
-
value
|
|
116
|
-
return value;
|
|
132
|
+
return icsPostProcess(value);
|
|
117
133
|
});
|
|
118
134
|
}
|
|
119
135
|
const command = new commander_1.Command()
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,sDAA8B;AAC9B,yCAAwC;AACxC,iCAAiC;AACjC,qCAAuC;AACvC,6BAA6E;AAC7E,kDAA0B;AAC1B,mCAAoC;AACpC,yCAAoC;AACpC,kDAA+C;AAC/C,oDAAuB;AACvB,2BAAkC;AAElC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;AAEtB,SAAS,UAAU,CAAI,GAAY;AAGnC,CAAC;AAED,MAAM,MAAM,GAAG,GAAG,EAAE;IAEhB,OAAO,CAAC,GAAoB,EAAE,GAAqB,EAAE,IAA0B,EAAE,EAAE;QAE/E,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAC/B,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YAElB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YAE1C,MAAM,OAAO,GAAG,KAAK,CAAC;YACtB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,GAAG,OAAO;gBACtC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO;gBAClD,GAAG,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO;gBAClC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBACzB,IAAI,GAAG,CAAC,WAAW,GAAG,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,IAAI,EAAE,CAAC;IACX,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,GAAG,GAAG,IAAA,iBAAY,EAAC,GAAG,SAAS,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEhE,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AAC7B,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;AAElB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAEtB,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IACrC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;IAE/B,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;IAC1C,MAAM,IAAI,GAAG,QAAQ,IAAI,CAAC,IAAI,OAAO,CAAC;IACtC,IAAI,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC;IAEpB,IAAG,IAAI,YAAY,KAAK,EACxB;QACI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QACzD,OAAO;KACV;IACD,IAAG,OAAO,IAAI,KAAK,QAAQ,EAC3B;QACI,IAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;YACzC,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;KACtB;SACI,IAAG,CAAC,IAAI;QAAE,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAK,CAAC,CAAC;IACzC,UAAU,CAAW,IAAI,CAAC,CAAC;IAC3B,UAAU,CAAS,IAAI,CAAC,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IAC/C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnB,CAAC,CAAA,CAAC,CAAC;AAEH,MAAM,aAAa,GAGf;IACA,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,CAAC;CAChB,CAAC;AAEF,SAAe,MAAM,CAAC,IAAY,EAAE,GAAa;;QAE7C,IAAG,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,EACxD;YACI,MAAM,CAAC,GAAG,MAAM,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;YAC3D,aAAa,CAAC,QAAQ,GAAG,gBAAC,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/G,aAAa,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAClD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAC7E,CAAC,CAAC,2BAA2B;YAC9B,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;SACzC;QAED,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACjG,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QAEzC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAE9B,MAAM,EAAE,GAAa,EAAE,CAAC;YACxB,EAAE,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAC3C,EAAE,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,EAAE,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACf,MAAM,WAAW,GAAG,eAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACjD,MAAM,GAAG,GAAoB;gBACzB,KAAK,EAAE,IAAA,6BAAuB,EAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC;gBAC9D,GAAG,EAAE,IAAA,6BAAuB,EAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC;gBAC1D,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,yBAAyB;gBACpC,KAAK,EAAE,CAAC,CAAC,IAAI;gBACb,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lscontests",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.1",
|
|
4
4
|
"description": "A tool to get information about the contests on each OJ",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cli",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@types/express": "^4.17.13",
|
|
50
50
|
"@types/lodash": "^4.14.182",
|
|
51
|
-
"@types/node": "^
|
|
51
|
+
"@types/node": "^18.0.0",
|
|
52
52
|
"@types/pangu": "^3.3.0",
|
|
53
53
|
"@typescript-eslint/eslint-plugin": "^5.27.1",
|
|
54
54
|
"@typescript-eslint/parser": "^5.27.1",
|