lscontests 2.6.1 → 2.6.2
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 +95 -144
- package/dist/lib/oj/nowcoder.js +2 -1
- package/dist/lib/oj/nowcoder.js.map +1 -1
- package/dist/server.js +2 -5
- package/dist/server.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -56,7 +56,7 @@ 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 Sun, 16 Oct 2022 05:22:37 GMT*)
|
|
60
60
|
|
|
61
61
|
<details>
|
|
62
62
|
<summary> <code>> lsct -L en</code> </summary>
|
|
@@ -64,84 +64,28 @@ It performs as follows:
|
|
|
64
64
|
```text
|
|
65
65
|
There are no running contests on AtCoder,Codeforces,LeetCode,Luogu,NowCoder
|
|
66
66
|
|
|
67
|
-
There are
|
|
68
|
-
|
|
69
|
-
OJ: NowCoder
|
|
70
|
-
Contest name: 牛客 2022 年七夕节比赛
|
|
71
|
-
Rule: ICPC
|
|
72
|
-
Start time: 8/4/2022, 11:00:00
|
|
73
|
-
End time: 8/4/2022, 14:00:00
|
|
74
|
-
https://ac.nowcoder.com/acm/contest/38105
|
|
75
|
-
|
|
76
|
-
OJ: Codeforces
|
|
77
|
-
Contest name: Educational Codeforces Round 133 (Rated for Div. 2)
|
|
78
|
-
Rule: ICPC
|
|
79
|
-
Start time: 8/4/2022, 14:35:00
|
|
80
|
-
End time: 8/4/2022, 16:35:00
|
|
81
|
-
https://codeforces.com/contests/1716
|
|
82
|
-
|
|
83
|
-
OJ: NowCoder
|
|
84
|
-
Contest name: 长沙学院 2022 暑假训练赛(一)
|
|
85
|
-
Rule: ICPC
|
|
86
|
-
Start time: 8/5/2022, 01:00:00
|
|
87
|
-
End time: 8/5/2022, 05:30:00
|
|
88
|
-
https://ac.nowcoder.com/acm/contest/38762
|
|
89
|
-
|
|
90
|
-
OJ: NowCoder
|
|
91
|
-
Contest name: "蔚来杯"2022 牛客暑期多校训练营 6
|
|
92
|
-
Rule: ICPC
|
|
93
|
-
Start time: 8/6/2022, 04:00:00
|
|
94
|
-
End time: 8/6/2022, 09:00:00
|
|
95
|
-
https://ac.nowcoder.com/acm/contest/33191
|
|
96
|
-
|
|
97
|
-
OJ: Luogu
|
|
98
|
-
Contest name: 【LGR-115】洛谷 8 月月赛 I & 终末祭 REOI Round 1
|
|
99
|
-
Rule: IOI
|
|
100
|
-
Start time: 8/6/2022, 06:00:00
|
|
101
|
-
End time: 8/6/2022, 10:00:00
|
|
102
|
-
https://www.luogu.com.cn/contest/76483
|
|
67
|
+
There are 3 contests on AtCoder,Codeforces in the next 3 days
|
|
103
68
|
|
|
104
69
|
OJ: AtCoder
|
|
105
|
-
Contest name: Ⓐ
|
|
70
|
+
Contest name: Ⓐ AtCoder Regular Contest 151
|
|
106
71
|
Rule: AtCoder
|
|
107
|
-
Start time:
|
|
108
|
-
End time:
|
|
109
|
-
https://atcoder.jp/contests/
|
|
110
|
-
|
|
111
|
-
OJ: LeetCode
|
|
112
|
-
Contest name: Biweekly Contest 84
|
|
113
|
-
Rule: AtCoder
|
|
114
|
-
Start time: 8/6/2022, 14:30:00
|
|
115
|
-
End time: 8/6/2022, 16:00:00
|
|
116
|
-
https://leetcode.com/contest/biweekly-contest-84
|
|
72
|
+
Start time: 10/16/2022, 12:00:00
|
|
73
|
+
End time: 10/16/2022, 14:00:00
|
|
74
|
+
https://atcoder.jp/contests/arc151
|
|
117
75
|
|
|
118
76
|
OJ: Codeforces
|
|
119
|
-
Contest name: Codeforces Round
|
|
120
|
-
Rule: Codeforces
|
|
121
|
-
Start time: 8/6/2022, 14:35:00
|
|
122
|
-
End time: 8/6/2022, 16:35:00
|
|
123
|
-
https://codeforces.com/contests/1713
|
|
124
|
-
|
|
125
|
-
OJ: LeetCode
|
|
126
|
-
Contest name: Weekly Contest 305
|
|
127
|
-
Rule: AtCoder
|
|
128
|
-
Start time: 8/7/2022, 02:30:00
|
|
129
|
-
End time: 8/7/2022, 04:00:00
|
|
130
|
-
https://leetcode.com/contest/weekly-contest-305
|
|
131
|
-
|
|
132
|
-
OJ: NowCoder
|
|
133
|
-
Contest name: “ 科林明伦杯 & rdquo; 哈尔滨理工大学暑假训练赛
|
|
77
|
+
Contest name: Codeforces Round #828 (Div. 3)
|
|
134
78
|
Rule: ICPC
|
|
135
|
-
Start time:
|
|
136
|
-
End time:
|
|
137
|
-
https://
|
|
79
|
+
Start time: 10/16/2022, 14:35:00
|
|
80
|
+
End time: 10/16/2022, 16:50:00
|
|
81
|
+
https://codeforces.com/contests/1744
|
|
138
82
|
|
|
139
|
-
OJ:
|
|
140
|
-
Contest name:
|
|
83
|
+
OJ: Codeforces
|
|
84
|
+
Contest name: Educational Codeforces Round 137 (Rated for Div. 2)
|
|
141
85
|
Rule: ICPC
|
|
142
|
-
Start time:
|
|
143
|
-
End time:
|
|
144
|
-
https://
|
|
86
|
+
Start time: 10/17/2022, 14:35:00
|
|
87
|
+
End time: 10/17/2022, 16:35:00
|
|
88
|
+
https://codeforces.com/contests/1743
|
|
145
89
|
```
|
|
146
90
|
|
|
147
91
|
</details>
|
|
@@ -152,35 +96,42 @@ https://www.luogu.com.cn/contest/76791
|
|
|
152
96
|
```text
|
|
153
97
|
There are no running contests on AtCoder,Codeforces
|
|
154
98
|
|
|
155
|
-
There are
|
|
99
|
+
There are 5 contests on AtCoder,Codeforces in the next 7 days
|
|
100
|
+
|
|
101
|
+
OJ: AtCoder
|
|
102
|
+
Contest name: Ⓐ AtCoder Regular Contest 151
|
|
103
|
+
Rule: AtCoder
|
|
104
|
+
Start time: 10/16/2022, 12:00:00
|
|
105
|
+
End time: 10/16/2022, 14:00:00
|
|
106
|
+
https://atcoder.jp/contests/arc151
|
|
156
107
|
|
|
157
108
|
OJ: Codeforces
|
|
158
|
-
Contest name:
|
|
109
|
+
Contest name: Codeforces Round #828 (Div. 3)
|
|
159
110
|
Rule: ICPC
|
|
160
|
-
Start time:
|
|
161
|
-
End time:
|
|
162
|
-
https://codeforces.com/contests/
|
|
111
|
+
Start time: 10/16/2022, 14:35:00
|
|
112
|
+
End time: 10/16/2022, 16:50:00
|
|
113
|
+
https://codeforces.com/contests/1744
|
|
163
114
|
|
|
164
|
-
OJ:
|
|
165
|
-
Contest name:
|
|
166
|
-
Rule:
|
|
167
|
-
Start time:
|
|
168
|
-
End time:
|
|
169
|
-
https://
|
|
115
|
+
OJ: Codeforces
|
|
116
|
+
Contest name: Educational Codeforces Round 137 (Rated for Div. 2)
|
|
117
|
+
Rule: ICPC
|
|
118
|
+
Start time: 10/17/2022, 14:35:00
|
|
119
|
+
End time: 10/17/2022, 16:35:00
|
|
120
|
+
https://codeforces.com/contests/1743
|
|
170
121
|
|
|
171
122
|
OJ: Codeforces
|
|
172
|
-
Contest name: Codeforces Round
|
|
173
|
-
Rule:
|
|
174
|
-
Start time:
|
|
175
|
-
End time:
|
|
176
|
-
https://codeforces.com/contests/
|
|
123
|
+
Contest name: Educational Codeforces Round 138 (Rated for Div. 2)
|
|
124
|
+
Rule: ICPC
|
|
125
|
+
Start time: 10/20/2022, 14:35:00
|
|
126
|
+
End time: 10/20/2022, 16:35:00
|
|
127
|
+
https://codeforces.com/contests/1749
|
|
177
128
|
|
|
178
129
|
OJ: AtCoder
|
|
179
|
-
Contest name:
|
|
130
|
+
Contest name: Ⓐ キーエンスプログラミングコンテスト 2022(AtCoder Beginner Contest 274)
|
|
180
131
|
Rule: AtCoder
|
|
181
|
-
Start time:
|
|
182
|
-
End time:
|
|
183
|
-
https://atcoder.jp/contests/
|
|
132
|
+
Start time: 10/22/2022, 12:00:00
|
|
133
|
+
End time: 10/22/2022, 13:40:00
|
|
134
|
+
https://atcoder.jp/contests/abc274
|
|
184
135
|
```
|
|
185
136
|
|
|
186
137
|
</details>
|
|
@@ -194,99 +145,99 @@ https://atcoder.jp/contests/ahc013
|
|
|
194
145
|
"upcoming": [
|
|
195
146
|
{
|
|
196
147
|
"ojName": "AtCoder",
|
|
197
|
-
"name": "Ⓐ
|
|
148
|
+
"name": "Ⓐ AtCoder Regular Contest 151",
|
|
198
149
|
"rule": "AtCoder",
|
|
199
|
-
"startTime": "2022-
|
|
200
|
-
"endTime": "2022-
|
|
201
|
-
"url": "https://atcoder.jp/contests/
|
|
150
|
+
"startTime": "2022-10-16T12:00:00.000Z",
|
|
151
|
+
"endTime": "2022-10-16T14:00:00.000Z",
|
|
152
|
+
"url": "https://atcoder.jp/contests/arc151"
|
|
202
153
|
},
|
|
203
154
|
{
|
|
204
155
|
"ojName": "AtCoder",
|
|
205
|
-
"name": "
|
|
156
|
+
"name": "Ⓐ キーエンスプログラミングコンテスト2022(AtCoder Beginner Contest 274)",
|
|
206
157
|
"rule": "AtCoder",
|
|
207
|
-
"startTime": "2022-
|
|
208
|
-
"endTime": "2022-
|
|
209
|
-
"url": "https://atcoder.jp/contests/
|
|
158
|
+
"startTime": "2022-10-22T12:00:00.000Z",
|
|
159
|
+
"endTime": "2022-10-22T13:40:00.000Z",
|
|
160
|
+
"url": "https://atcoder.jp/contests/abc274"
|
|
210
161
|
},
|
|
211
162
|
{
|
|
212
163
|
"ojName": "AtCoder",
|
|
213
|
-
"name": "Ⓐ
|
|
164
|
+
"name": "Ⓐ AtCoder Beginner Contest 275",
|
|
214
165
|
"rule": "AtCoder",
|
|
215
|
-
"startTime": "2022-
|
|
216
|
-
"endTime": "2022-
|
|
217
|
-
"url": "https://atcoder.jp/contests/
|
|
166
|
+
"startTime": "2022-10-29T12:00:00.000Z",
|
|
167
|
+
"endTime": "2022-10-29T13:40:00.000Z",
|
|
168
|
+
"url": "https://atcoder.jp/contests/abc275"
|
|
218
169
|
},
|
|
219
170
|
{
|
|
220
171
|
"ojName": "AtCoder",
|
|
221
|
-
"name": "
|
|
172
|
+
"name": "Ⓗ TOYOTA MOTOR CORPORATION Programming Contest 2022(AtCoder Heuristic Contest 015)",
|
|
222
173
|
"rule": "AtCoder",
|
|
223
|
-
"startTime": "2022-
|
|
224
|
-
"endTime": "2022-
|
|
225
|
-
"url": "https://atcoder.jp/contests/
|
|
174
|
+
"startTime": "2022-10-30T06:00:00.000Z",
|
|
175
|
+
"endTime": "2022-10-30T10:00:00.000Z",
|
|
176
|
+
"url": "https://atcoder.jp/contests/ahc015"
|
|
226
177
|
},
|
|
227
178
|
{
|
|
228
|
-
"ojName": "
|
|
229
|
-
"name": "
|
|
230
|
-
"rule": "
|
|
231
|
-
"startTime": "2022-
|
|
232
|
-
"endTime": "2022-
|
|
233
|
-
"url": "https://
|
|
179
|
+
"ojName": "Codeforces",
|
|
180
|
+
"name": "Codeforces Round #828 (Div. 3)",
|
|
181
|
+
"rule": "ICPC",
|
|
182
|
+
"startTime": "2022-10-16T14:35:00.000Z",
|
|
183
|
+
"endTime": "2022-10-16T16:50:00.000Z",
|
|
184
|
+
"url": "https://codeforces.com/contests/1744"
|
|
234
185
|
},
|
|
235
186
|
{
|
|
236
|
-
"ojName": "
|
|
237
|
-
"name": "
|
|
238
|
-
"rule": "
|
|
239
|
-
"startTime": "2022-
|
|
240
|
-
"endTime": "2022-
|
|
241
|
-
"url": "https://
|
|
187
|
+
"ojName": "Codeforces",
|
|
188
|
+
"name": "Educational Codeforces Round 137 (Rated for Div. 2)",
|
|
189
|
+
"rule": "ICPC",
|
|
190
|
+
"startTime": "2022-10-17T14:35:00.000Z",
|
|
191
|
+
"endTime": "2022-10-17T16:35:00.000Z",
|
|
192
|
+
"url": "https://codeforces.com/contests/1743"
|
|
242
193
|
},
|
|
243
194
|
{
|
|
244
|
-
"ojName": "
|
|
245
|
-
"name": "
|
|
246
|
-
"rule": "
|
|
247
|
-
"startTime": "2022-
|
|
248
|
-
"endTime": "2022-
|
|
249
|
-
"url": "https://
|
|
195
|
+
"ojName": "Codeforces",
|
|
196
|
+
"name": "Educational Codeforces Round 138 (Rated for Div. 2)",
|
|
197
|
+
"rule": "ICPC",
|
|
198
|
+
"startTime": "2022-10-20T14:35:00.000Z",
|
|
199
|
+
"endTime": "2022-10-20T16:35:00.000Z",
|
|
200
|
+
"url": "https://codeforces.com/contests/1749"
|
|
250
201
|
},
|
|
251
202
|
{
|
|
252
203
|
"ojName": "Codeforces",
|
|
253
|
-
"name": "
|
|
254
|
-
"rule": "
|
|
255
|
-
"startTime": "2022-
|
|
256
|
-
"endTime": "2022-
|
|
257
|
-
"url": "https://codeforces.com/contests/
|
|
204
|
+
"name": "Codeforces Round (Div. 2)",
|
|
205
|
+
"rule": "Codeforces",
|
|
206
|
+
"startTime": "2022-10-23T10:05:00.000Z",
|
|
207
|
+
"endTime": "2022-10-23T12:05:00.000Z",
|
|
208
|
+
"url": "https://codeforces.com/contests/1732"
|
|
258
209
|
},
|
|
259
210
|
{
|
|
260
211
|
"ojName": "Codeforces",
|
|
261
|
-
"name": "Codeforces Round
|
|
212
|
+
"name": "Codeforces Round (Div. 1 + Div. 2)",
|
|
262
213
|
"rule": "Codeforces",
|
|
263
|
-
"startTime": "2022-
|
|
264
|
-
"endTime": "2022-
|
|
265
|
-
"url": "https://codeforces.com/contests/
|
|
214
|
+
"startTime": "2022-10-29T09:05:00.000Z",
|
|
215
|
+
"endTime": "2022-10-29T11:05:00.000Z",
|
|
216
|
+
"url": "https://codeforces.com/contests/1740"
|
|
266
217
|
},
|
|
267
218
|
{
|
|
268
219
|
"ojName": "Codeforces",
|
|
269
220
|
"name": "Codeforces Round (Div. 2)",
|
|
270
221
|
"rule": "Codeforces",
|
|
271
|
-
"startTime": "2022-
|
|
272
|
-
"endTime": "2022-
|
|
273
|
-
"url": "https://codeforces.com/contests/
|
|
222
|
+
"startTime": "2022-11-04T14:35:00.000Z",
|
|
223
|
+
"endTime": "2022-11-04T16:35:00.000Z",
|
|
224
|
+
"url": "https://codeforces.com/contests/1747"
|
|
274
225
|
},
|
|
275
226
|
{
|
|
276
227
|
"ojName": "Codeforces",
|
|
277
|
-
"name": "Codeforces Round (Div. 2)",
|
|
228
|
+
"name": "Codeforces Round (Div. 1 + Div. 2)",
|
|
278
229
|
"rule": "Codeforces",
|
|
279
|
-
"startTime": "2022-
|
|
280
|
-
"endTime": "2022-
|
|
281
|
-
"url": "https://codeforces.com/contests/
|
|
230
|
+
"startTime": "2022-11-06T14:35:00.000Z",
|
|
231
|
+
"endTime": "2022-11-06T16:35:00.000Z",
|
|
232
|
+
"url": "https://codeforces.com/contests/1750"
|
|
282
233
|
},
|
|
283
234
|
{
|
|
284
235
|
"ojName": "Codeforces",
|
|
285
236
|
"name": "Codeforces Round (Div. 2)",
|
|
286
237
|
"rule": "Codeforces",
|
|
287
|
-
"startTime": "2022-
|
|
288
|
-
"endTime": "2022-
|
|
289
|
-
"url": "https://codeforces.com/contests/
|
|
238
|
+
"startTime": "2022-12-27T14:35:00.000Z",
|
|
239
|
+
"endTime": "2022-12-27T16:35:00.000Z",
|
|
240
|
+
"url": "https://codeforces.com/contests/1731"
|
|
290
241
|
}
|
|
291
242
|
]
|
|
292
243
|
}
|
package/dist/lib/oj/nowcoder.js
CHANGED
|
@@ -15,6 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.nc = void 0;
|
|
16
16
|
const axios_1 = __importDefault(require("axios"));
|
|
17
17
|
const cheerio_1 = require("cheerio");
|
|
18
|
+
const lodash_1 = require("lodash");
|
|
18
19
|
var topCategoryFilter;
|
|
19
20
|
(function (topCategoryFilter) {
|
|
20
21
|
topCategoryFilter[topCategoryFilter["NOWCODERSERIES"] = 13] = "NOWCODERSERIES";
|
|
@@ -48,7 +49,7 @@ exports.nc = {
|
|
|
48
49
|
return res.filter(res => res.signUpEndCountDownTime > 0).map((res) => {
|
|
49
50
|
return {
|
|
50
51
|
ojName: exports.nc.name,
|
|
51
|
-
name: res.contestName,
|
|
52
|
+
name: (0, lodash_1.unescape)(res.contestName),
|
|
52
53
|
rule: ruleRecord[res.type],
|
|
53
54
|
startTime: new Date(res.contestStartTime),
|
|
54
55
|
endTime: new Date(res.contestEndTime),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nowcoder.js","sourceRoot":"","sources":["../../../src/lib/oj/nowcoder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,qCAA+B;
|
|
1
|
+
{"version":3,"file":"nowcoder.js","sourceRoot":"","sources":["../../../src/lib/oj/nowcoder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,qCAA+B;AAG/B,mCAAkC;AA8ClC,IAAK,iBAIJ;AAJD,WAAK,iBAAiB;IAElB,8EAAmB,CAAA;IACnB,4EAAa,CAAA;AACjB,CAAC,EAJI,iBAAiB,KAAjB,iBAAiB,QAIrB;AAED,MAAM,GAAG,GAAG,+CAA+C,CAAC;AAE5D,SAAe,aAAa,CAAC,GAAsB;;QAE/C,MAAM,IAAI,GAAG,CAAC,MAAM,eAAK,CAAC,GAAG,CAAC,GAAG,GAAG,sBAAsB,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,MAAM,CAAC,GAAG,IAAA,cAAI,EAAC,IAAI,CAAC,CAAC;QACrB,MAAM,EAAE,GAAa,EAAE,CAAC;QACxB,CAAC,CAAC,qCAAqC,CAAC,CAAC,IAAI,CAAC;YAE1C,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAA,cAAI,EAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACd,CAAC;CAAA;AAED,MAAM,UAAU,GAAyB;IACrC,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,KAAK;CACX,CAAC;AAEW,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,UAAU;IACV,GAAG;;YAEL,MAAM,GAAG,GAAa;gBAClB,GAAG,MAAM,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC;gBACxD,GAAG,MAAM,aAAa,CAAC,iBAAiB,CAAC,aAAa,CAAC;aAC1D,CAAC;YACF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,sBAAsB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAW,EAAE;gBAE1E,OAAO;oBACH,MAAM,EAAE,UAAE,CAAC,IAAI;oBACf,IAAI,EAAE,IAAA,iBAAQ,EAAC,GAAG,CAAC,WAAW,CAAC;oBAC/B,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;oBAC1B,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;oBACzC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC;oBACrC,GAAG,EAAE,uCAAuC,GAAG,CAAC,SAAS,EAAE;iBAC9D,CAAC;YACN,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;CACJ,CAAC"}
|
package/dist/server.js
CHANGED
|
@@ -25,8 +25,6 @@ const package_json_1 = require("../package.json");
|
|
|
25
25
|
const fs_1 = require("fs");
|
|
26
26
|
const await_lock_1 = __importDefault(require("await-lock"));
|
|
27
27
|
const app = (0, express_1.default)();
|
|
28
|
-
function assertType(obj) {
|
|
29
|
-
}
|
|
30
28
|
const logger = () => {
|
|
31
29
|
return (req, res, next) => {
|
|
32
30
|
const start = process.hrtime();
|
|
@@ -67,8 +65,6 @@ app.get("/ics", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
67
65
|
}
|
|
68
66
|
else if (!oArg)
|
|
69
67
|
oArg = Object.keys(oj_1.alloj);
|
|
70
|
-
assertType(oArg);
|
|
71
|
-
assertType(lArg);
|
|
72
68
|
const data = yield getIcs(lArg, oArg);
|
|
73
69
|
res.setHeader("Content-Type", "text/calendar");
|
|
74
70
|
res.send(data);
|
|
@@ -140,7 +136,8 @@ function getIcs(lang, ojs) {
|
|
|
140
136
|
const { value, error } = (0, ics_1.createEvents)(events);
|
|
141
137
|
if (error)
|
|
142
138
|
throw error;
|
|
143
|
-
|
|
139
|
+
if (!value)
|
|
140
|
+
throw new Error("No valid ics string.");
|
|
144
141
|
return icsPostProcess(value);
|
|
145
142
|
});
|
|
146
143
|
}
|
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,2BAAkC;AAClC,4DAAmC;AAEnC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;AAEtB,
|
|
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,2BAAkC;AAClC,4DAAmC;AAEnC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;AAEtB,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;IAEzC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAyB,EAAE,IAA2B,CAAC,CAAC;IAClF,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,MAAM,IAAI,GAAG,IAAI,oBAAS,EAAE,CAAC;AAE7B,SAAS,cAAc,CAAC,KAAa;IAEjC,OAAO,KAAK;SACP,OAAO,CAAC,sBAAsB,EAAE,+CAA+C,CAAC;SAChF,OAAO,CAAC,mBAAmB,EACxB,uBAAuB;QACvB,iCAAiC;QACjC,qBAAqB;QACrB,wBAAwB;QACxB,kCAAkC;QAClC,oBAAoB;QACpB,wBAAwB;QACxB,sBAAsB;QACtB,gBAAgB;QAChB,6BAA6B;QAC7B,kBAAkB;QAClB,eAAe,CAClB,CAAC;AACV,CAAC;AAED,SAAe,UAAU;;QAErB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,IACA;YACI,IAAG,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,EACxD;gBACI,MAAM,CAAC,GAAG,MAAM,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC3D,aAAa,CAAC,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACzD,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;gBAC9B,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;aACzC;SACJ;gBAED;YACI,IAAI,CAAC,OAAO,EAAE,CAAC;SAClB;IACL,CAAC;CAAA;AAED,SAAe,MAAM,CAAC,IAAY,EAAE,GAAa;;QAE7C,MAAM,UAAU,EAAE,CAAC;QAEnB,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,eAAe,EAAE,OAAO;gBACxB,GAAG,EAAE,IAAA,6BAAuB,EAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC;gBAC1D,aAAa,EAAE,OAAO;gBACtB,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,yBAAyB;gBACpC,KAAK,EAAE,CAAC,CAAC,IAAI;gBACb,QAAQ,EAAE,CAAC,CAAC,MAAM;gBAClB,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBACpB,GAAG,EAAE,GAAG,IAAA,mBAAU,GAAE,OAAO;gBAC3B,WAAW;aACd,CAAC;YACF,OAAO,GAAG,CAAC;QACf,CAAC,CAAC,CAAC;QACH,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAA,kBAAY,EAAC,MAAM,CAAC,CAAC;QAC9C,IAAG,KAAK;YAAE,MAAM,KAAK,CAAC;QACtB,IAAG,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACnD,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;CAAA;AAED,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE;KACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KACzB,OAAO,CAAC,sBAAO,CAAC;KAChB,MAAM,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,SAAS,CAAC;KAC5D,MAAM,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;AAC/D,OAAO,CAAC,KAAK,EAAE,CAAC;AAEhB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,IAAc,CAAC;AAC3C,IAAI,IAAI,GAAoB,OAAO,CAAC,IAAI,EAAE,CAAC,IAAc,CAAC;AAC1D,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAC1B,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;IAExB,MAAM,MAAM,GAAG,UAAU,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,GAAG,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,gBAAgB,sBAAO,iBAAiB,MAAM,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lscontests",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.2",
|
|
4
4
|
"description": "A tool to get information about the contests on each OJ",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cli",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"await-lock": "^2.2.2",
|
|
39
|
-
"axios": "^
|
|
39
|
+
"axios": "^1.1.3",
|
|
40
40
|
"axios-retry": "^3.2.5",
|
|
41
41
|
"cheerio": "^1.0.0-rc.11",
|
|
42
42
|
"commander": "^9.3.0",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"markdownlint-cli": "^0.32.0",
|
|
60
60
|
"rimraf": "^3.0.2",
|
|
61
61
|
"tsx": "^3.4.2",
|
|
62
|
-
"typedoc": "^0.
|
|
62
|
+
"typedoc": "^0.23.16",
|
|
63
63
|
"typedoc-plugin-extras": "^2.2.3",
|
|
64
64
|
"typescript": "^4.7.3"
|
|
65
65
|
},
|