lscontests 1.11.1 → 1.11.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 +78 -28
- package/dist/lib/oj/atcoder.js +30 -28
- package/dist/lib/oj/atcoder.js.map +1 -1
- package/dist/lib/oj/codeforces.js +20 -18
- package/dist/lib/oj/codeforces.js.map +1 -1
- package/dist/lib/oj/index.d.ts +1 -1
- package/dist/lib/oj/leetcode.js +19 -17
- package/dist/lib/oj/leetcode.js.map +1 -1
- package/dist/lib/oj/luogu.js +15 -13
- package/dist/lib/oj/luogu.js.map +1 -1
- package/dist/lib/oj/nowcoder.js +17 -15
- package/dist/lib/oj/nowcoder.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -54,13 +54,13 @@ Options:
|
|
|
54
54
|
It performs as follows:
|
|
55
55
|
|
|
56
56
|
<!-- block_cli begin -->
|
|
57
|
-
(*The following content was automatically generated using [semantic-release](https://github.com/semantic-release/semantic-release) on
|
|
57
|
+
(*The following content was automatically generated using [semantic-release](https://github.com/semantic-release/semantic-release) on Thu, 19 May 2022 12:15:46 GMT*)
|
|
58
58
|
|
|
59
59
|
<details>
|
|
60
60
|
<summary> <code>> lsct -L en</code> </summary>
|
|
61
61
|
|
|
62
62
|
```text
|
|
63
|
-
There are
|
|
63
|
+
There are 3 contests is running on NowCoder
|
|
64
64
|
|
|
65
65
|
OJ: NowCoder
|
|
66
66
|
Contest name: 牛客竞赛博弈专题班 Sprague-Grundy 函数(SG 函数、图游戏、Nim 和)
|
|
@@ -76,21 +76,56 @@ Start time: 5/13/2022, 06:00:00
|
|
|
76
76
|
End time: 5/30/2022, 08:00:00
|
|
77
77
|
https://ac.nowcoder.com/acm/contest/34649
|
|
78
78
|
|
|
79
|
-
|
|
79
|
+
OJ: NowCoder
|
|
80
|
+
Contest name: 牛客竞赛字符串专题班 SA(后缀数组 nlogn 构造和应用)习题
|
|
81
|
+
Rule: ICPC
|
|
82
|
+
Start time: 5/17/2022, 09:00:00
|
|
83
|
+
End time: 5/24/2022, 14:00:00
|
|
84
|
+
https://ac.nowcoder.com/acm/contest/34974
|
|
80
85
|
|
|
81
|
-
|
|
82
|
-
Contest name: Codeforces Round #792 (Div. 1)
|
|
83
|
-
Rule: Codeforces
|
|
84
|
-
Start time: 5/19/2022, 14:35:00
|
|
85
|
-
End time: 5/19/2022, 16:35:00
|
|
86
|
-
https://codeforces.com/contests/1683
|
|
86
|
+
There are 6 contests on Codeforces,NowCoder,AtCoder,LeetCode in the next 3 days
|
|
87
87
|
|
|
88
88
|
OJ: Codeforces
|
|
89
|
-
Contest name: Codeforces Round #792 (Div. 2)
|
|
89
|
+
Contest name: Codeforces Round #792 (Div. 1 + Div. 2)
|
|
90
90
|
Rule: Codeforces
|
|
91
91
|
Start time: 5/19/2022, 14:35:00
|
|
92
92
|
End time: 5/19/2022, 16:35:00
|
|
93
93
|
https://codeforces.com/contests/1684
|
|
94
|
+
|
|
95
|
+
OJ: NowCoder
|
|
96
|
+
Contest name: 武汉理工大学第三届程序设计竞赛(同步赛)
|
|
97
|
+
Rule: ICPC
|
|
98
|
+
Start time: 5/21/2022, 03:00:00
|
|
99
|
+
End time: 5/21/2022, 08:00:00
|
|
100
|
+
https://ac.nowcoder.com/acm/contest/33634
|
|
101
|
+
|
|
102
|
+
OJ: NowCoder
|
|
103
|
+
Contest name: 第十九届同济大学程序设计竞赛暨高校网络友谊赛
|
|
104
|
+
Rule: ICPC
|
|
105
|
+
Start time: 5/21/2022, 05:00:00
|
|
106
|
+
End time: 5/21/2022, 10:00:00
|
|
107
|
+
https://ac.nowcoder.com/acm/contest/34442
|
|
108
|
+
|
|
109
|
+
OJ: NowCoder
|
|
110
|
+
Contest name: 牛客小白月赛 50
|
|
111
|
+
Rule: ICPC
|
|
112
|
+
Start time: 5/21/2022, 11:00:00
|
|
113
|
+
End time: 5/21/2022, 13:00:00
|
|
114
|
+
https://ac.nowcoder.com/acm/contest/11227
|
|
115
|
+
|
|
116
|
+
OJ: AtCoder
|
|
117
|
+
Contest name: Ⓐ AtCoder Beginner Contest 252
|
|
118
|
+
Rule: AtCoder
|
|
119
|
+
Start time: 5/21/2022, 12:00:00
|
|
120
|
+
End time: 5/21/2022, 13:40:00
|
|
121
|
+
https://atcoder.jp/contests/abc252
|
|
122
|
+
|
|
123
|
+
OJ: LeetCode
|
|
124
|
+
Contest name: Weekly Contest 294
|
|
125
|
+
Rule: AtCoder
|
|
126
|
+
Start time: 5/22/2022, 02:30:00
|
|
127
|
+
End time: 5/22/2022, 04:00:00
|
|
128
|
+
https://leetcode.com/contest/weekly-contest-294
|
|
94
129
|
```
|
|
95
130
|
|
|
96
131
|
</details>
|
|
@@ -101,17 +136,10 @@ https://codeforces.com/contests/1684
|
|
|
101
136
|
```text
|
|
102
137
|
No running contests
|
|
103
138
|
|
|
104
|
-
There are
|
|
139
|
+
There are 6 contests on Codeforces,AtCoder in the next 7 days
|
|
105
140
|
|
|
106
141
|
OJ: Codeforces
|
|
107
|
-
Contest name: Codeforces Round #792 (Div. 1)
|
|
108
|
-
Rule: Codeforces
|
|
109
|
-
Start time: 5/19/2022, 14:35:00
|
|
110
|
-
End time: 5/19/2022, 16:35:00
|
|
111
|
-
https://codeforces.com/contests/1683
|
|
112
|
-
|
|
113
|
-
OJ: Codeforces
|
|
114
|
-
Contest name: Codeforces Round #792 (Div. 2)
|
|
142
|
+
Contest name: Codeforces Round #792 (Div. 1 + Div. 2)
|
|
115
143
|
Rule: Codeforces
|
|
116
144
|
Start time: 5/19/2022, 14:35:00
|
|
117
145
|
End time: 5/19/2022, 16:35:00
|
|
@@ -137,6 +165,20 @@ Rule: ICPC
|
|
|
137
165
|
Start time: 5/23/2022, 14:35:00
|
|
138
166
|
End time: 5/23/2022, 16:35:00
|
|
139
167
|
https://codeforces.com/contests/1681
|
|
168
|
+
|
|
169
|
+
OJ: Codeforces
|
|
170
|
+
Contest name: Codeforces Round #794 (Div. 1)
|
|
171
|
+
Rule: Codeforces
|
|
172
|
+
Start time: 5/25/2022, 17:35:00
|
|
173
|
+
End time: 5/25/2022, 19:35:00
|
|
174
|
+
https://codeforces.com/contests/1685
|
|
175
|
+
|
|
176
|
+
OJ: Codeforces
|
|
177
|
+
Contest name: Codeforces Round #794 (Div. 2)
|
|
178
|
+
Rule: Codeforces
|
|
179
|
+
Start time: 5/25/2022, 17:35:00
|
|
180
|
+
End time: 5/25/2022, 19:35:00
|
|
181
|
+
https://codeforces.com/contests/1686
|
|
140
182
|
```
|
|
141
183
|
|
|
142
184
|
</details>
|
|
@@ -156,6 +198,22 @@ https://codeforces.com/contests/1681
|
|
|
156
198
|
"endTime": "2022-05-21T13:40:00.000Z",
|
|
157
199
|
"url": "https://atcoder.jp/contests/abc252"
|
|
158
200
|
},
|
|
201
|
+
{
|
|
202
|
+
"ojName": "Codeforces",
|
|
203
|
+
"name": "Codeforces Round #794 (Div. 1)",
|
|
204
|
+
"rule": "Codeforces",
|
|
205
|
+
"startTime": "2022-05-25T17:35:00.000Z",
|
|
206
|
+
"endTime": "2022-05-25T19:35:00.000Z",
|
|
207
|
+
"url": "https://codeforces.com/contests/1685"
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
"ojName": "Codeforces",
|
|
211
|
+
"name": "Codeforces Round #794 (Div. 2)",
|
|
212
|
+
"rule": "Codeforces",
|
|
213
|
+
"startTime": "2022-05-25T17:35:00.000Z",
|
|
214
|
+
"endTime": "2022-05-25T19:35:00.000Z",
|
|
215
|
+
"url": "https://codeforces.com/contests/1686"
|
|
216
|
+
},
|
|
159
217
|
{
|
|
160
218
|
"ojName": "Codeforces",
|
|
161
219
|
"name": "Educational Codeforces Round 129 (Rated for Div. 2)",
|
|
@@ -174,15 +232,7 @@ https://codeforces.com/contests/1681
|
|
|
174
232
|
},
|
|
175
233
|
{
|
|
176
234
|
"ojName": "Codeforces",
|
|
177
|
-
"name": "Codeforces Round #792 (Div. 1)",
|
|
178
|
-
"rule": "Codeforces",
|
|
179
|
-
"startTime": "2022-05-19T14:35:00.000Z",
|
|
180
|
-
"endTime": "2022-05-19T16:35:00.000Z",
|
|
181
|
-
"url": "https://codeforces.com/contests/1683"
|
|
182
|
-
},
|
|
183
|
-
{
|
|
184
|
-
"ojName": "Codeforces",
|
|
185
|
-
"name": "Codeforces Round #792 (Div. 2)",
|
|
235
|
+
"name": "Codeforces Round #792 (Div. 1 + Div. 2)",
|
|
186
236
|
"rule": "Codeforces",
|
|
187
237
|
"startTime": "2022-05-19T14:35:00.000Z",
|
|
188
238
|
"endTime": "2022-05-19T16:35:00.000Z",
|
package/dist/lib/oj/atcoder.js
CHANGED
|
@@ -40,35 +40,37 @@ const axios_1 = __importDefault(require("axios"));
|
|
|
40
40
|
const cheerio = __importStar(require("cheerio"));
|
|
41
41
|
exports.at = {
|
|
42
42
|
name: "AtCoder",
|
|
43
|
-
get
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
43
|
+
get() {
|
|
44
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
const response = yield axios_1.default.get("https://atcoder.jp/contests");
|
|
46
|
+
const $ = cheerio.load(response.data);
|
|
47
|
+
const contests = [];
|
|
48
|
+
$("#contest-table-upcoming,#contest-table-action table > tbody > tr").each(function () {
|
|
49
|
+
const ct = {
|
|
50
|
+
ojName: exports.at.name,
|
|
51
|
+
name: "",
|
|
52
|
+
rule: "AtCoder",
|
|
53
|
+
startTime: new Date(0),
|
|
54
|
+
endTime: new Date(0),
|
|
55
|
+
url: ""
|
|
56
|
+
};
|
|
57
|
+
$("td", this).each(function (idx) {
|
|
58
|
+
if (idx == 0)
|
|
59
|
+
ct.startTime = new Date($(this).text());
|
|
60
|
+
else if (idx == 1) {
|
|
61
|
+
const ele = $("a", this);
|
|
62
|
+
ct.name = `${$("span:first", this).text()} ${ele.text()}`;
|
|
63
|
+
ct.url = `https://atcoder.jp${ele.attr().href}`;
|
|
64
|
+
}
|
|
65
|
+
else if (idx == 2) {
|
|
66
|
+
const [h, m] = $(this).text().split(":");
|
|
67
|
+
ct.endTime = new Date(ct.startTime.getTime() + (parseInt(h) * 60 + parseInt(m)) * 60 * 1000);
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
contests.push(ct);
|
|
68
71
|
});
|
|
69
|
-
contests
|
|
72
|
+
return contests;
|
|
70
73
|
});
|
|
71
|
-
|
|
72
|
-
})
|
|
74
|
+
}
|
|
73
75
|
};
|
|
74
76
|
//# sourceMappingURL=atcoder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atcoder.js","sourceRoot":"","sources":["../../../src/lib/oj/atcoder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iDAAmC;AAItB,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"atcoder.js","sourceRoot":"","sources":["../../../src/lib/oj/atcoder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iDAAmC;AAItB,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,SAAS;IACT,GAAG;;YAEL,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;YAChE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAc,EAAE,CAAC;YAC/B,CAAC,CAAC,kEAAkE,CAAC,CAAC,IAAI,CAAC;gBAEvE,MAAM,EAAE,GAAY;oBAChB,MAAM,EAAE,UAAE,CAAC,IAAI;oBACf,IAAI,EAAE,EAAE;oBACR,IAAI,EAAE,SAAS;oBACf,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;oBACtB,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;oBACpB,GAAG,EAAE,EAAE;iBACV,CAAC;gBACF,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG;oBAE5B,IAAG,GAAG,IAAI,CAAC;wBAAE,EAAE,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;yBAChD,IAAG,GAAG,IAAI,CAAC,EAChB;wBACI,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;wBACzB,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC1D,EAAE,CAAC,GAAG,GAAG,qBAAqB,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;qBACnD;yBACI,IAAG,GAAG,IAAI,CAAC,EAChB;wBACI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACzC,EAAE,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;qBAChG;gBACL,CAAC,CAAC,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC;QACpB,CAAC;KAAA;CACJ,CAAC"}
|
|
@@ -44,23 +44,25 @@ const ruleRecord = {
|
|
|
44
44
|
};
|
|
45
45
|
exports.cf = {
|
|
46
46
|
name: "Codeforces",
|
|
47
|
-
get
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
return {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
47
|
+
get() {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
const response = yield axios_1.default.get("https://codeforces.com/api/contest.list");
|
|
50
|
+
if (!(response.data instanceof Object)) {
|
|
51
|
+
const $ = cheerio.load(response.data);
|
|
52
|
+
throw new Error($.text());
|
|
53
|
+
}
|
|
54
|
+
const resList = response.data.result;
|
|
55
|
+
return resList.map((res) => {
|
|
56
|
+
return {
|
|
57
|
+
ojName: exports.cf.name,
|
|
58
|
+
name: res.name,
|
|
59
|
+
rule: ruleRecord[res.type],
|
|
60
|
+
startTime: new Date(res.startTimeSeconds * 1000),
|
|
61
|
+
endTime: new Date((res.startTimeSeconds + res.durationSeconds) * 1000),
|
|
62
|
+
url: `https://codeforces.com/contests/${res.id}`
|
|
63
|
+
};
|
|
64
|
+
}).filter(contest => contest.endTime >= new Date());
|
|
65
|
+
});
|
|
66
|
+
}
|
|
65
67
|
};
|
|
66
68
|
//# sourceMappingURL=codeforces.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codeforces.js","sourceRoot":"","sources":["../../../src/lib/oj/codeforces.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iDAAmC;AAenC,MAAM,UAAU,GAAyB;IACrC,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,MAAM;CACf,CAAC;AAEW,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,YAAY;
|
|
1
|
+
{"version":3,"file":"codeforces.js","sourceRoot":"","sources":["../../../src/lib/oj/codeforces.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iDAAmC;AAenC,MAAM,UAAU,GAAyB;IACrC,EAAE,EAAE,YAAY;IAChB,IAAI,EAAE,MAAM;CACf,CAAC;AAEW,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,YAAY;IACZ,GAAG;;YAEL,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;YAC5E,IAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,YAAY,MAAM,CAAC,EACrC;gBACI,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;aAC7B;YACD,MAAM,OAAO,GAAa,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/C,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAW,EAAE;gBAEhC,OAAO;oBACH,MAAM,EAAE,UAAE,CAAC,IAAI;oBACf,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;oBAC1B,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC;oBAChD,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,gBAAgB,GAAG,GAAG,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC;oBACtE,GAAG,EAAE,mCAAmC,GAAG,CAAC,EAAE,EAAE;iBACnD,CAAC;YACN,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;KAAA;CACJ,CAAC"}
|
package/dist/lib/oj/index.d.ts
CHANGED
package/dist/lib/oj/leetcode.js
CHANGED
|
@@ -43,24 +43,26 @@ const headers = {
|
|
|
43
43
|
};
|
|
44
44
|
exports.lc = {
|
|
45
45
|
name: "LeetCode",
|
|
46
|
-
get
|
|
46
|
+
get() {
|
|
47
47
|
var _a;
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
.
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
return {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
const response = yield axios_1.default.get("https://leetcode.com/contest", { headers });
|
|
50
|
+
const $ = cheerio.load(response.data);
|
|
51
|
+
const resList = JSON.parse((_a = $("#__NEXT_DATA__").html()) !== null && _a !== void 0 ? _a : "")
|
|
52
|
+
.props.pageProps.dehydratedState.queries
|
|
53
|
+
.find((v) => v.queryKey[0] == "topTwoContests")
|
|
54
|
+
.state.data.topTwoContests;
|
|
55
|
+
return resList.map((res) => {
|
|
56
|
+
return {
|
|
57
|
+
ojName: exports.lc.name,
|
|
58
|
+
name: res.title,
|
|
59
|
+
rule: "AtCoder",
|
|
60
|
+
startTime: new Date(res.startTime * 1000),
|
|
61
|
+
endTime: new Date((res.startTime + res.duration) * 1000),
|
|
62
|
+
url: `https://leetcode.com/contest/${res.titleSlug}`
|
|
63
|
+
};
|
|
64
|
+
});
|
|
63
65
|
});
|
|
64
|
-
}
|
|
66
|
+
}
|
|
65
67
|
};
|
|
66
68
|
//# sourceMappingURL=leetcode.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leetcode.js","sourceRoot":"","sources":["../../../src/lib/oj/leetcode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iDAAmC;AAYnC,MAAM,OAAO,GAAG;IACZ,YAAY,EAAE,qHAAqH;CACtI,CAAC;AAEW,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,UAAU;
|
|
1
|
+
{"version":3,"file":"leetcode.js","sourceRoot":"","sources":["../../../src/lib/oj/leetcode.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iDAAmC;AAYnC,MAAM,OAAO,GAAG;IACZ,YAAY,EAAE,qHAAqH;CACtI,CAAC;AAEW,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,UAAU;IACV,GAAG;;;YAEL,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9E,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,OAAO,GAAa,IAAI,CAAC,KAAK,CAAC,MAAA,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,mCAAI,EAAE,CAAC;iBACjE,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO;iBACvC,IAAI,CAAC,CAAC,CAA2B,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC;iBACxE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC;YAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAW,EAAE;gBAEhC,OAAO;oBACH,MAAM,EAAE,UAAE,CAAC,IAAI;oBACf,IAAI,EAAE,GAAG,CAAC,KAAK;oBACf,IAAI,EAAE,SAAS;oBACf,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;oBACzC,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;oBACxD,GAAG,EAAE,gCAAgC,GAAG,CAAC,SAAS,EAAE;iBACvD,CAAC;YACN,CAAC,CAAC,CAAC;;KACN;CACJ,CAAC"}
|
package/dist/lib/oj/luogu.js
CHANGED
|
@@ -27,18 +27,20 @@ const headers = {
|
|
|
27
27
|
};
|
|
28
28
|
exports.lg = {
|
|
29
29
|
name: "Luogu",
|
|
30
|
-
get
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
30
|
+
get() {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
const resList = (yield axios_1.default.get("https://www.luogu.com.cn/contest/list", { headers })).data.currentData.contests.result;
|
|
33
|
+
return resList.map((res) => {
|
|
34
|
+
return {
|
|
35
|
+
ojName: exports.lg.name,
|
|
36
|
+
name: res.name,
|
|
37
|
+
rule: ruleRecord[res.ruleType],
|
|
38
|
+
startTime: new Date(res.startTime * 1000),
|
|
39
|
+
endTime: new Date(res.endTime * 1000),
|
|
40
|
+
url: `https://www.luogu.com.cn/contest/${res.id}`
|
|
41
|
+
};
|
|
42
|
+
}).filter(contest => contest.endTime >= new Date());
|
|
43
|
+
});
|
|
44
|
+
}
|
|
43
45
|
};
|
|
44
46
|
//# sourceMappingURL=luogu.js.map
|
package/dist/lib/oj/luogu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"luogu.js","sourceRoot":"","sources":["../../../src/lib/oj/luogu.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA0B;AAiB1B,MAAM,UAAU,GAAyB;IACrC,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,YAAY;CAClB,CAAC;AAEF,MAAM,OAAO,GAAG;IACZ,YAAY,EAAE,qHAAqH;IACnI,cAAc,EAAE,cAAc;CACjC,CAAC;AAEW,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,OAAO;
|
|
1
|
+
{"version":3,"file":"luogu.js","sourceRoot":"","sources":["../../../src/lib/oj/luogu.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,kDAA0B;AAiB1B,MAAM,UAAU,GAAyB;IACrC,CAAC,EAAE,IAAI;IACP,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,YAAY;CAClB,CAAC;AAEF,MAAM,OAAO,GAAG;IACZ,YAAY,EAAE,qHAAqH;IACnI,cAAc,EAAE,cAAc;CACjC,CAAC;AAEW,QAAA,EAAE,GAAO;IAClB,IAAI,EAAE,OAAO;IACP,GAAG;;YAEL,MAAM,OAAO,GAAa,CAAC,MAAM,eAAK,CAAC,GAAG,CAAC,uCAAuC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnI,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAW,EAAE;gBAEhC,OAAO;oBACH,MAAM,EAAE,UAAE,CAAC,IAAI;oBACf,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAC9B,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;oBACzC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;oBACrC,GAAG,EAAE,oCAAoC,GAAG,CAAC,EAAE,EAAE;iBACpD,CAAC;YACN,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;KAAA;CACJ,CAAC"}
|
package/dist/lib/oj/nowcoder.js
CHANGED
|
@@ -62,21 +62,23 @@ const ruleRecord = {
|
|
|
62
62
|
};
|
|
63
63
|
exports.nc = {
|
|
64
64
|
name: "NowCoder",
|
|
65
|
-
get
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
return {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
65
|
+
get() {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
const res = [
|
|
68
|
+
...yield getResultList(topCategoryFilter.NOWCODERSERIES),
|
|
69
|
+
...yield getResultList(topCategoryFilter.SCHOOLCONTEST)
|
|
70
|
+
];
|
|
71
|
+
return res.filter(res => res.signUpEndCountDownTime > 0).map((res) => {
|
|
72
|
+
return {
|
|
73
|
+
ojName: exports.nc.name,
|
|
74
|
+
name: res.contestName,
|
|
75
|
+
rule: ruleRecord[res.type],
|
|
76
|
+
startTime: new Date(res.contestStartTime),
|
|
77
|
+
endTime: new Date(res.contestEndTime),
|
|
78
|
+
url: `https://ac.nowcoder.com/acm/contest/${res.contestId}`
|
|
79
|
+
};
|
|
80
|
+
});
|
|
79
81
|
});
|
|
80
|
-
}
|
|
82
|
+
}
|
|
81
83
|
};
|
|
82
84
|
//# sourceMappingURL=nowcoder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nowcoder.js","sourceRoot":"","sources":["../../../src/lib/oj/nowcoder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iDAAmC;AAgDnC,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,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,EAAE,GAAa,EAAE,CAAC;QACxB,CAAC,CAAC,qCAAqC,CAAC,CAAC,IAAI,CAAC;YAE1C,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACxE,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;
|
|
1
|
+
{"version":3,"file":"nowcoder.js","sourceRoot":"","sources":["../../../src/lib/oj/nowcoder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,iDAAmC;AAgDnC,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,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,EAAE,GAAa,EAAE,CAAC;QACxB,CAAC,CAAC,qCAAqC,CAAC,CAAC,IAAI,CAAC;YAE1C,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACxE,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,GAAG,CAAC,WAAW;oBACrB,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"}
|