lscontests 2.1.6 → 2.2.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 +57 -3
- package/dist/server.html +175 -0
- package/dist/server.js +4 -1
- package/dist/server.js.map +1 -1
- package/package.json +6 -3
package/README.md
CHANGED
@@ -55,7 +55,7 @@ Options:
|
|
55
55
|
It performs as follows:
|
56
56
|
|
57
57
|
<!-- block_cli begin -->
|
58
|
-
(*The following content was automatically generated using [semantic-release](https://github.com/semantic-release/semantic-release) on
|
58
|
+
(*The following content was automatically generated using [semantic-release](https://github.com/semantic-release/semantic-release) on Thu, 26 May 2022 07:08:14 GMT*)
|
59
59
|
|
60
60
|
<details>
|
61
61
|
<summary> <code>> lsct -L en</code> </summary>
|
@@ -70,7 +70,7 @@ Start time: 5/13/2022, 06:00:00
|
|
70
70
|
End time: 5/30/2022, 08:00:00
|
71
71
|
https://ac.nowcoder.com/acm/contest/34649
|
72
72
|
|
73
|
-
There are
|
73
|
+
There are 7 contests on NowCoder,AtCoder,LeetCode in the next 3 days
|
74
74
|
|
75
75
|
OJ: NowCoder
|
76
76
|
Contest name: 牛客练习赛 99
|
@@ -113,6 +113,13 @@ Rule: AtCoder
|
|
113
113
|
Start time: 5/28/2022, 14:30:00
|
114
114
|
End time: 5/28/2022, 16:00:00
|
115
115
|
https://leetcode.com/contest/biweekly-contest-79
|
116
|
+
|
117
|
+
OJ: LeetCode
|
118
|
+
Contest name: Weekly Contest 295
|
119
|
+
Rule: AtCoder
|
120
|
+
Start time: 5/29/2022, 02:30:00
|
121
|
+
End time: 5/29/2022, 04:00:00
|
122
|
+
https://leetcode.com/contest/weekly-contest-295
|
116
123
|
```
|
117
124
|
|
118
125
|
</details>
|
@@ -123,7 +130,7 @@ https://leetcode.com/contest/biweekly-contest-79
|
|
123
130
|
```text
|
124
131
|
No running contests
|
125
132
|
|
126
|
-
There are
|
133
|
+
There are 4 contests on AtCoder,Codeforces in the next 7 days
|
127
134
|
|
128
135
|
OJ: AtCoder
|
129
136
|
Contest name: Ⓗ AtCoder Heuristic Contest 011
|
@@ -145,6 +152,13 @@ Rule: AtCoder
|
|
145
152
|
Start time: 5/29/2022, 12:00:00
|
146
153
|
End time: 5/29/2022, 14:00:00
|
147
154
|
https://atcoder.jp/contests/arc141
|
155
|
+
|
156
|
+
OJ: Codeforces
|
157
|
+
Contest name: CodeCraft-22 and Codeforces Round #795 (Div. 2)
|
158
|
+
Rule: Codeforces
|
159
|
+
Start time: 5/31/2022, 14:35:00
|
160
|
+
End time: 5/31/2022, 16:35:00
|
161
|
+
https://codeforces.com/contests/1691
|
148
162
|
```
|
149
163
|
|
150
164
|
</details>
|
@@ -211,6 +225,46 @@ https://atcoder.jp/contests/arc141
|
|
211
225
|
"startTime": "2022-06-26T12:00:00.000Z",
|
212
226
|
"endTime": "2022-06-26T14:00:00.000Z",
|
213
227
|
"url": "https://atcoder.jp/contests/arc143"
|
228
|
+
},
|
229
|
+
{
|
230
|
+
"ojName": "Codeforces",
|
231
|
+
"name": "CodeCraft-22 and Codeforces Round #795 (Div. 2)",
|
232
|
+
"rule": "Codeforces",
|
233
|
+
"startTime": "2022-05-31T14:35:00.000Z",
|
234
|
+
"endTime": "2022-05-31T16:35:00.000Z",
|
235
|
+
"url": "https://codeforces.com/contests/1691"
|
236
|
+
},
|
237
|
+
{
|
238
|
+
"ojName": "Codeforces",
|
239
|
+
"name": "Codeforces Round #796 (Div. 1)",
|
240
|
+
"rule": "Codeforces",
|
241
|
+
"startTime": "2022-06-03T14:35:00.000Z",
|
242
|
+
"endTime": "2022-06-03T16:35:00.000Z",
|
243
|
+
"url": "https://codeforces.com/contests/1687"
|
244
|
+
},
|
245
|
+
{
|
246
|
+
"ojName": "Codeforces",
|
247
|
+
"name": "Codeforces Round #796 (Div. 2)",
|
248
|
+
"rule": "Codeforces",
|
249
|
+
"startTime": "2022-06-03T14:35:00.000Z",
|
250
|
+
"endTime": "2022-06-03T16:35:00.000Z",
|
251
|
+
"url": "https://codeforces.com/contests/1688"
|
252
|
+
},
|
253
|
+
{
|
254
|
+
"ojName": "Codeforces",
|
255
|
+
"name": "Codeforces Round #797 (Div. 3)",
|
256
|
+
"rule": "ICPC",
|
257
|
+
"startTime": "2022-06-07T14:35:00.000Z",
|
258
|
+
"endTime": "2022-06-07T16:50:00.000Z",
|
259
|
+
"url": "https://codeforces.com/contests/1690"
|
260
|
+
},
|
261
|
+
{
|
262
|
+
"ojName": "Codeforces",
|
263
|
+
"name": "Codeforces Round #798 (Div. 2)",
|
264
|
+
"rule": "Codeforces",
|
265
|
+
"startTime": "2022-06-10T16:35:00.000Z",
|
266
|
+
"endTime": "2022-06-10T18:35:00.000Z",
|
267
|
+
"url": "https://codeforces.com/contests/1689"
|
214
268
|
}
|
215
269
|
]
|
216
270
|
}
|
package/dist/server.html
ADDED
@@ -0,0 +1,175 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="zh">
|
3
|
+
<head>
|
4
|
+
<meta charset="UTF-8">
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
6
|
+
<link
|
7
|
+
href="https://fonts.loli.net/css?family=Roboto:300,400,500,700&display=swap"
|
8
|
+
rel="stylesheet"
|
9
|
+
/>
|
10
|
+
<link
|
11
|
+
href="https://cdnjs.loli.net/ajax/libs/mdb-ui-kit/4.1.0/mdb.min.css"
|
12
|
+
rel="stylesheet"
|
13
|
+
/>
|
14
|
+
<title>LSCT</title>
|
15
|
+
<style>
|
16
|
+
html, body {
|
17
|
+
height: 100%;
|
18
|
+
}
|
19
|
+
|
20
|
+
#content {
|
21
|
+
height: 100%;
|
22
|
+
display: flex;
|
23
|
+
flex-direction: column;
|
24
|
+
justify-content: center;
|
25
|
+
align-items: center;
|
26
|
+
}
|
27
|
+
|
28
|
+
.container {
|
29
|
+
width: 100%;
|
30
|
+
height: 100%;
|
31
|
+
}
|
32
|
+
|
33
|
+
main {
|
34
|
+
height: 100%;
|
35
|
+
}
|
36
|
+
</style>
|
37
|
+
</head>
|
38
|
+
<body>
|
39
|
+
<main>
|
40
|
+
<div class="container">
|
41
|
+
<div id="content" class="row">
|
42
|
+
<div id="selects" class="col-md-8 gx-5 d-inline-flex">
|
43
|
+
<div class="flex-fill">
|
44
|
+
<h2>目标 OJ</h2>
|
45
|
+
<div class="form-check">
|
46
|
+
<input class="form-check-input" type="checkbox" value="" id="cf" checked/>
|
47
|
+
<label class="form-check-label" for="cf">Codeforces</label>
|
48
|
+
</div>
|
49
|
+
<div class="form-check">
|
50
|
+
<input class="form-check-input" type="checkbox" value="" id="at" checked/>
|
51
|
+
<label class="form-check-label" for="at">AtCoder</label>
|
52
|
+
</div>
|
53
|
+
<div class="form-check">
|
54
|
+
<input class="form-check-input" type="checkbox" value="" id="lc" checked/>
|
55
|
+
<label class="form-check-label" for="lc">Leetcode</label>
|
56
|
+
</div>
|
57
|
+
<div class="form-check">
|
58
|
+
<input class="form-check-input" type="checkbox" value="" id="lg" checked/>
|
59
|
+
<label class="form-check-label" for="lg">洛谷</label>
|
60
|
+
</div>
|
61
|
+
<div class="form-check">
|
62
|
+
<input class="form-check-input" type="checkbox" value="" id="nc" checked/>
|
63
|
+
<label class="form-check-label" for="nc">牛客</label>
|
64
|
+
</div>
|
65
|
+
</div>
|
66
|
+
<div class="flex-fill">
|
67
|
+
<h2>语言</h2>
|
68
|
+
<div class="form-check">
|
69
|
+
<input class="form-check-input" type="radio" name="lang" id="zhCN"
|
70
|
+
checked/>
|
71
|
+
<label class="form-check-label" for="zhCN">zh-CN</label>
|
72
|
+
</div>
|
73
|
+
<div class="form-check">
|
74
|
+
<input class="form-check-input" type="radio" name="lang"
|
75
|
+
id="zhNE"/>
|
76
|
+
<label class="form-check-label" for="zhNE">zh-NE</label>
|
77
|
+
</div>
|
78
|
+
<div class="form-check">
|
79
|
+
<input class="form-check-input" type="radio" name="lang"
|
80
|
+
id="zhTW"/>
|
81
|
+
<label class="form-check-label" for="zhTW">zh-TW</label>
|
82
|
+
</div>
|
83
|
+
<div class="form-check">
|
84
|
+
<input class="form-check-input" type="radio" name="lang"
|
85
|
+
id="en"/>
|
86
|
+
<label class="form-check-label" for="en">en</label>
|
87
|
+
</div>
|
88
|
+
</div>
|
89
|
+
</div>
|
90
|
+
<div class="col-md-8 gx-5 my-4 d-inline-flex">
|
91
|
+
<div class="form-outline me-2 flex-fill">
|
92
|
+
<!--suppress HtmlFormInputWithoutLabel -->
|
93
|
+
<input type="text" id="url" readonly class="form-control"/>
|
94
|
+
</div>
|
95
|
+
<button class="btn btn-primary" id="copy">Copy</button>
|
96
|
+
</div>
|
97
|
+
</div>
|
98
|
+
</div>
|
99
|
+
</main>
|
100
|
+
<script src="https://cdnjs.loli.net/ajax/libs/mdb-ui-kit/4.1.0/mdb.min.js" crossorigin="anonymous"
|
101
|
+
referrerpolicy="no-referrer"
|
102
|
+
></script>
|
103
|
+
<script src="https://cdnjs.loli.net/ajax/libs/jquery/3.6.0/jquery.min.js" crossorigin="anonymous"
|
104
|
+
referrerpolicy="no-referrer"></script>
|
105
|
+
<script src="https://cdnjs.loli.net/ajax/libs/clipboard.js/2.0.10/clipboard.min.js"
|
106
|
+
crossorigin="anonymous"
|
107
|
+
referrerpolicy="no-referrer"></script>
|
108
|
+
<script>
|
109
|
+
function updateURL()
|
110
|
+
{
|
111
|
+
const curr = window.location.href.split("?")[0].trimEnd() + "/ics";
|
112
|
+
const args = new URLSearchParams();
|
113
|
+
|
114
|
+
//process ojs
|
115
|
+
const cf = $("#cf").prop("checked");
|
116
|
+
const at = $("#at").prop("checked");
|
117
|
+
const lc = $("#lc").prop("checked");
|
118
|
+
const lg = $("#lg").prop("checked");
|
119
|
+
const nc = $("#nc").prop("checked");
|
120
|
+
if(!(cf && at && lc && lg && nc))
|
121
|
+
{
|
122
|
+
const ojs = [];
|
123
|
+
if(cf) ojs.push("cf");
|
124
|
+
if(at) ojs.push("at");
|
125
|
+
if(lc) ojs.push("lc");
|
126
|
+
if(lg) ojs.push("lg");
|
127
|
+
if(nc) ojs.push("nc");
|
128
|
+
args.append("o", ojs.join(","));
|
129
|
+
}
|
130
|
+
|
131
|
+
//process lang
|
132
|
+
const lang = $("input[name='lang']:checked").next().text();
|
133
|
+
if(lang !== "zh-CN") args.append("l", lang);
|
134
|
+
const query = args.toString();
|
135
|
+
let url = curr;
|
136
|
+
if(query.length > 0) url += "?" + query;
|
137
|
+
$("#url").val(url);
|
138
|
+
}
|
139
|
+
|
140
|
+
document.addEventListener("DOMContentLoaded", function ()
|
141
|
+
{
|
142
|
+
updateURL();
|
143
|
+
$("#cf,#at,#lc,#lg,#nc,input[name='lang']").change(updateURL);
|
144
|
+
|
145
|
+
const copy = $("#copy");
|
146
|
+
|
147
|
+
copy.tooltip({
|
148
|
+
trigger: "click",
|
149
|
+
placement: "bottom",
|
150
|
+
title: "Copied!"
|
151
|
+
});
|
152
|
+
|
153
|
+
copy.click(function ()
|
154
|
+
{
|
155
|
+
const url = $("#url").val();
|
156
|
+
if(url.length > 0)
|
157
|
+
{
|
158
|
+
new ClipboardJS("#copy", {
|
159
|
+
text: function ()
|
160
|
+
{
|
161
|
+
return url;
|
162
|
+
}
|
163
|
+
});
|
164
|
+
copy.tooltip("show");
|
165
|
+
setTimeout(function ()
|
166
|
+
{
|
167
|
+
copy.tooltip("hide");
|
168
|
+
}, 1000);
|
169
|
+
}
|
170
|
+
});
|
171
|
+
}
|
172
|
+
);
|
173
|
+
</script>
|
174
|
+
</body>
|
175
|
+
</html>
|
package/dist/server.js
CHANGED
@@ -23,6 +23,7 @@ const crypto_1 = require("crypto");
|
|
23
23
|
const commander_1 = require("commander");
|
24
24
|
const package_json_1 = require("../package.json");
|
25
25
|
const lodash_1 = __importDefault(require("lodash"));
|
26
|
+
const fs_1 = require("fs");
|
26
27
|
const app = (0, express_1.default)();
|
27
28
|
function assertType(obj) {
|
28
29
|
}
|
@@ -43,10 +44,12 @@ const logger = () => {
|
|
43
44
|
next();
|
44
45
|
};
|
45
46
|
};
|
47
|
+
const web = (0, fs_1.readFileSync)(`${__dirname}/server.html`).toString();
|
46
48
|
app.set("trust proxy", true);
|
47
49
|
app.use(logger());
|
48
50
|
app.get("/", (req, res) => {
|
49
|
-
res.
|
51
|
+
res.set("Content-Type", "text/html");
|
52
|
+
res.send(web);
|
50
53
|
});
|
51
54
|
app.get("/ics", (req, res) => __awaiter(void 0, void 0, void 0, function* () {
|
52
55
|
const { language, l, ojs, o } = req.query;
|
package/dist/server.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,sDAA8B;AAC9B,mCAA+C;AAC/C,iCAAiC;AACjC,qCAAuC;AACvC,6BAA6E;AAC7E,kDAA0B;AAC1B,mCAAoC;AACpC,yCAAoC;AACpC,kDAA+C;AAC/C,oDAAuB;
|
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.2.0",
|
4
4
|
"description": "A tool to get information about the contests on each OJ",
|
5
5
|
"keywords": [
|
6
6
|
"cli",
|
@@ -24,7 +24,9 @@
|
|
24
24
|
"dist"
|
25
25
|
],
|
26
26
|
"scripts": {
|
27
|
-
"
|
27
|
+
"prebuild": "rimraf ./dist/*",
|
28
|
+
"postbuild": "cpy --flat src/server.html dist",
|
29
|
+
"build": "tsc -p src",
|
28
30
|
"clean": "rimraf ./dist ./docs ./node_modules",
|
29
31
|
"docs": "typedoc",
|
30
32
|
"lint": "eslint . && markdownlint .",
|
@@ -63,7 +65,8 @@
|
|
63
65
|
"tsx": "^3.4.1",
|
64
66
|
"typedoc": "^0.22.15",
|
65
67
|
"typedoc-plugin-extras": "^2.2.3",
|
66
|
-
"typescript": "^4.7.2"
|
68
|
+
"typescript": "^4.7.2",
|
69
|
+
"cpy-cli": "^4.1.0"
|
67
70
|
},
|
68
71
|
"config": {
|
69
72
|
"commitizen": {
|