maidraw 0.11.15 → 0.12.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/dist/chu/index.d.ts +1 -5
- package/dist/chu/index.js +2 -38
- package/dist/chu/index.js.map +1 -1
- package/dist/chu/lib/adapter/index.d.ts +38 -24
- package/dist/chu/lib/adapter/index.js +4 -65
- package/dist/chu/lib/adapter/index.js.map +1 -1
- package/dist/chu/lib/adapter/kamaiTachi/index.d.ts +133 -26
- package/dist/chu/lib/adapter/kamaiTachi/index.js +265 -76
- package/dist/chu/lib/adapter/kamaiTachi/index.js.map +1 -1
- package/dist/chu/lib/adapter/lxns/index.d.ts +77 -17
- package/dist/chu/lib/adapter/lxns/index.js +71 -34
- package/dist/chu/lib/adapter/lxns/index.js.map +1 -1
- package/dist/chu/lib/database.d.ts +1 -0
- package/dist/chu/lib/database.js +10 -5
- package/dist/chu/lib/database.js.map +1 -1
- package/dist/chu/painter/best50/index.d.ts +36 -5
- package/dist/chu/painter/best50/index.js +41 -24
- package/dist/chu/painter/best50/index.js.map +1 -1
- package/dist/chu/painter/chart/index.d.ts +42 -5
- package/dist/chu/painter/chart/index.js +39 -20
- package/dist/chu/painter/chart/index.js.map +1 -1
- package/dist/chu/painter/index.d.ts +2 -2
- package/dist/chu/painter/index.js.map +1 -1
- package/dist/geki/index.d.ts +1 -5
- package/dist/geki/index.js +2 -38
- package/dist/geki/index.js.map +1 -1
- package/dist/geki/lib/adapter/index.d.ts +40 -26
- package/dist/geki/lib/adapter/index.js +4 -65
- package/dist/geki/lib/adapter/index.js.map +1 -1
- package/dist/geki/lib/adapter/kamaiTachi/index.d.ts +137 -30
- package/dist/geki/lib/adapter/kamaiTachi/index.js +281 -87
- package/dist/geki/lib/adapter/kamaiTachi/index.js.map +1 -1
- package/dist/geki/lib/database.d.ts +1 -0
- package/dist/geki/lib/database.js +12 -7
- package/dist/geki/lib/database.js.map +1 -1
- package/dist/geki/lib/util.d.ts +1 -1
- package/dist/geki/painter/best50/index.d.ts +36 -5
- package/dist/geki/painter/best50/index.js +43 -26
- package/dist/geki/painter/best50/index.js.map +1 -1
- package/dist/geki/painter/chart/index.d.ts +42 -5
- package/dist/geki/painter/chart/index.js +38 -19
- package/dist/geki/painter/chart/index.js.map +1 -1
- package/dist/geki/painter/index.d.ts +2 -2
- package/dist/geki/painter/index.js.map +1 -1
- package/dist/lib/adapter.d.ts +19 -0
- package/dist/lib/adapter.js +71 -0
- package/dist/lib/adapter.js.map +1 -0
- package/dist/lib/logger.d.ts +4 -0
- package/dist/lib/logger.js +49 -0
- package/dist/lib/logger.js.map +1 -0
- package/dist/lib/painter.d.ts +15 -3
- package/dist/lib/painter.js.map +1 -1
- package/dist/lib/util.d.ts +10 -0
- package/dist/lib/util.js.map +1 -1
- package/dist/mai/index.d.ts +1 -5
- package/dist/mai/index.js +2 -38
- package/dist/mai/index.js.map +1 -1
- package/dist/mai/lib/adapter/divingFish/index.d.ts +80 -32
- package/dist/mai/lib/adapter/divingFish/index.js +51 -19
- package/dist/mai/lib/adapter/divingFish/index.js.map +1 -1
- package/dist/mai/lib/adapter/index.d.ts +37 -24
- package/dist/mai/lib/adapter/index.js +4 -65
- package/dist/mai/lib/adapter/index.js.map +1 -1
- package/dist/mai/lib/adapter/kamaiTachi/index.d.ts +124 -27
- package/dist/mai/lib/adapter/kamaiTachi/index.js +211 -61
- package/dist/mai/lib/adapter/kamaiTachi/index.js.map +1 -1
- package/dist/mai/lib/adapter/lxns/index.d.ts +121 -25
- package/dist/mai/lib/adapter/lxns/index.js +140 -45
- package/dist/mai/lib/adapter/lxns/index.js.map +1 -1
- package/dist/mai/lib/adapter/maishift/index.d.ts +83 -16
- package/dist/mai/lib/adapter/maishift/index.js +75 -26
- package/dist/mai/lib/adapter/maishift/index.js.map +1 -1
- package/dist/mai/lib/database.d.ts +1 -0
- package/dist/mai/lib/database.js +11 -6
- package/dist/mai/lib/database.js.map +1 -1
- package/dist/mai/painter/best50/index.d.ts +28 -6
- package/dist/mai/painter/best50/index.js +27 -14
- package/dist/mai/painter/best50/index.js.map +1 -1
- package/dist/mai/painter/chart/index.d.ts +42 -5
- package/dist/mai/painter/chart/index.js +39 -20
- package/dist/mai/painter/chart/index.js.map +1 -1
- package/dist/mai/painter/index.d.ts +2 -2
- package/dist/mai/painter/index.js.map +1 -1
- package/dist/mai/painter/level50/index.d.ts +28 -6
- package/dist/mai/painter/level50/index.js +26 -13
- package/dist/mai/painter/level50/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,7 +4,7 @@ exports.LXNS = void 0;
|
|
|
4
4
|
const __1 = require("..");
|
|
5
5
|
const type_1 = require("../../../type");
|
|
6
6
|
const database_1 = require("../../database");
|
|
7
|
-
class LXNS extends __1.
|
|
7
|
+
class LXNS extends __1.ChunithmScoreAdapter {
|
|
8
8
|
constructor({ auth, baseURL = "https://maimai.lxns.net/api/v0/chunithm", }) {
|
|
9
9
|
super({ baseURL });
|
|
10
10
|
this.axios.defaults.headers.common["Authorization"] = auth;
|
|
@@ -74,16 +74,27 @@ class LXNS extends __1.ScoreTrackerAdapter {
|
|
|
74
74
|
}
|
|
75
75
|
async getPlayerBest50(friendCode) {
|
|
76
76
|
const b50 = await this.getPlayerRawBest50(friendCode);
|
|
77
|
-
if (
|
|
78
|
-
|
|
77
|
+
if (b50 === undefined) {
|
|
78
|
+
const res = {
|
|
79
|
+
status: "unknown",
|
|
80
|
+
message: "An unknown error occurred.",
|
|
81
|
+
data: null,
|
|
82
|
+
};
|
|
83
|
+
return res;
|
|
84
|
+
}
|
|
79
85
|
const chartList = await this.getChartList([
|
|
80
86
|
...b50.data.new_bests,
|
|
81
87
|
...b50.data.bests,
|
|
82
88
|
]);
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
89
|
+
const res = {
|
|
90
|
+
status: "success",
|
|
91
|
+
message: "",
|
|
92
|
+
data: {
|
|
93
|
+
new: this.toMaiDrawScore(b50.data.new_bests, chartList),
|
|
94
|
+
old: this.toMaiDrawScore(b50.data.bests, chartList),
|
|
95
|
+
},
|
|
86
96
|
};
|
|
97
|
+
return res;
|
|
87
98
|
}
|
|
88
99
|
async getSongList() {
|
|
89
100
|
const cached = (await this.cache.get("lxns-songList-chunithm"));
|
|
@@ -114,31 +125,50 @@ class LXNS extends __1.ScoreTrackerAdapter {
|
|
|
114
125
|
}
|
|
115
126
|
async getPlayerRecent40(friendCode) {
|
|
116
127
|
return {
|
|
117
|
-
|
|
118
|
-
|
|
128
|
+
status: "not-supported",
|
|
129
|
+
message: "getPlayerRecent40 is not supported on LXNS CHUNITHM.",
|
|
130
|
+
data: null,
|
|
119
131
|
};
|
|
120
132
|
}
|
|
121
133
|
async getPlayerInfo(friendCode, type) {
|
|
122
134
|
if (type == "new") {
|
|
123
135
|
const profile = await this.getPlayerRawProfile(friendCode);
|
|
124
|
-
if (
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
136
|
+
if (profile === undefined) {
|
|
137
|
+
const res = {
|
|
138
|
+
status: "unknown",
|
|
139
|
+
message: "An unknown error occurred.",
|
|
140
|
+
data: null,
|
|
141
|
+
};
|
|
142
|
+
return res;
|
|
143
|
+
}
|
|
144
|
+
const res = {
|
|
145
|
+
status: "success",
|
|
146
|
+
message: "",
|
|
147
|
+
data: {
|
|
148
|
+
name: profile.data.name,
|
|
149
|
+
rating: profile.data.rating,
|
|
150
|
+
},
|
|
129
151
|
};
|
|
152
|
+
return res;
|
|
130
153
|
}
|
|
131
|
-
else
|
|
132
|
-
|
|
154
|
+
else {
|
|
155
|
+
const res = {
|
|
156
|
+
status: "invalid-type",
|
|
157
|
+
message: `${type} is not a valid type.`,
|
|
158
|
+
data: { type: type },
|
|
159
|
+
};
|
|
160
|
+
return res;
|
|
133
161
|
}
|
|
134
|
-
else
|
|
135
|
-
return null;
|
|
136
162
|
}
|
|
137
163
|
async getPlayerRawProfile(friendCode) {
|
|
138
164
|
return await this.get(`/player/${friendCode}`);
|
|
139
165
|
}
|
|
140
166
|
async getPlayerProfilePicture(friendCode) {
|
|
141
|
-
return
|
|
167
|
+
return {
|
|
168
|
+
status: "not-supported",
|
|
169
|
+
message: "getPlayerProfilePicture is not supported on LXNS CHUNITHM.",
|
|
170
|
+
data: null,
|
|
171
|
+
};
|
|
142
172
|
}
|
|
143
173
|
async getChartList(targets) {
|
|
144
174
|
let chartList;
|
|
@@ -190,25 +220,32 @@ class LXNS extends __1.ScoreTrackerAdapter {
|
|
|
190
220
|
ultima: null,
|
|
191
221
|
worldsEnd: null,
|
|
192
222
|
};
|
|
193
|
-
const
|
|
223
|
+
const score = await this.get(`/player/${username}/bests`, {
|
|
194
224
|
song_id: chartId,
|
|
195
225
|
});
|
|
196
|
-
if (
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
226
|
+
if (score === undefined) {
|
|
227
|
+
const res = {
|
|
228
|
+
status: "unknown",
|
|
229
|
+
message: "An unknown error occurred.",
|
|
230
|
+
data: null,
|
|
231
|
+
};
|
|
232
|
+
return res;
|
|
233
|
+
}
|
|
234
|
+
const chartList = await this.getChartList(score.data);
|
|
235
|
+
const scores = this.toMaiDrawScore(score?.data, chartList);
|
|
236
|
+
const res = {
|
|
237
|
+
status: "success",
|
|
238
|
+
message: "",
|
|
239
|
+
data: {
|
|
240
|
+
...NUL,
|
|
241
|
+
basic: scores.find((v) => v.chart.difficulty == type_1.EDifficulty.BASIC) || null,
|
|
242
|
+
advanced: scores.find((v) => v.chart.difficulty == type_1.EDifficulty.ADVANCED) || null,
|
|
243
|
+
expert: scores.find((v) => v.chart.difficulty == type_1.EDifficulty.EXPERT) || null,
|
|
244
|
+
master: scores.find((v) => v.chart.difficulty == type_1.EDifficulty.MASTER) || null,
|
|
245
|
+
ultima: scores.find((v) => v.chart.difficulty == type_1.EDifficulty.ULTIMA) || null,
|
|
246
|
+
},
|
|
211
247
|
};
|
|
248
|
+
return res;
|
|
212
249
|
}
|
|
213
250
|
}
|
|
214
251
|
exports.LXNS = LXNS;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/chu/lib/adapter/lxns/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/chu/lib/adapter/lxns/index.ts"],"names":[],"mappings":"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"}
|
package/dist/chu/lib/database.js
CHANGED
|
@@ -8,9 +8,14 @@ const fs_1 = __importDefault(require("fs"));
|
|
|
8
8
|
const upath_1 = __importDefault(require("upath"));
|
|
9
9
|
const axios_1 = __importDefault(require("axios"));
|
|
10
10
|
const cache_1 = require("../../lib/cache");
|
|
11
|
-
const
|
|
11
|
+
const logger_1 = require("../../lib/logger");
|
|
12
12
|
// import { EDifficulty, IChart } from "@maidraw/type";
|
|
13
13
|
class Database {
|
|
14
|
+
static logger = new logger_1.Logger([
|
|
15
|
+
"maidraw",
|
|
16
|
+
"chuni",
|
|
17
|
+
"database",
|
|
18
|
+
]);
|
|
14
19
|
static localDatabasePath = "";
|
|
15
20
|
static setLocalDatabasePath(path) {
|
|
16
21
|
this.localDatabasePath = path;
|
|
@@ -30,11 +35,11 @@ class Database {
|
|
|
30
35
|
const cacheKey = `chuni-jacket-${id}`;
|
|
31
36
|
const cached = await this.cache.get(cacheKey);
|
|
32
37
|
if (cached instanceof Buffer) {
|
|
33
|
-
|
|
38
|
+
this.logger.trace(`GET Jacket-${id}, cache HIT`);
|
|
34
39
|
return cached;
|
|
35
40
|
}
|
|
36
41
|
else {
|
|
37
|
-
|
|
42
|
+
this.logger.trace(`GET Jacket-${id}, cache MISS`);
|
|
38
43
|
const jacket = await this.downloadJacket(id);
|
|
39
44
|
if (jacket)
|
|
40
45
|
this.cache.put(cacheKey, jacket, 1000 * 60 * 60);
|
|
@@ -45,7 +50,7 @@ class Database {
|
|
|
45
50
|
id = id % 10000;
|
|
46
51
|
const localFilePath = upath_1.default.join(this.localDatabasePath, "assets", "chunithm", "jackets", `${id.toString().padStart(4, "0")}.png`);
|
|
47
52
|
if (fs_1.default.existsSync(localFilePath)) {
|
|
48
|
-
|
|
53
|
+
this.logger.trace(`GET Jacket-${id}, database HIT`);
|
|
49
54
|
return fs_1.default.readFileSync(localFilePath);
|
|
50
55
|
}
|
|
51
56
|
const beginTimestamp = Date.now();
|
|
@@ -56,7 +61,7 @@ class Database {
|
|
|
56
61
|
.then((res) => res.data)
|
|
57
62
|
.catch((e) => null);
|
|
58
63
|
const timeDifference = Date.now() - beginTimestamp;
|
|
59
|
-
|
|
64
|
+
this.logger.trace(`GET Jacket-${id}, database MISS, took ${timeDifference}ms`);
|
|
60
65
|
return res;
|
|
61
66
|
}
|
|
62
67
|
static getLocalChart(id, difficulty) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../../src/chu/lib/database.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,kDAA0B;AAC1B,kDAA0B;AAC1B,8CAA2C;
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../../src/chu/lib/database.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { z } from "zod/v4";
|
|
2
|
-
import { ScoreTrackerAdapter } from "../../lib/adapter";
|
|
3
2
|
import { ChunithmPainter } from "..";
|
|
4
3
|
import { IScore } from "../../type";
|
|
5
|
-
|
|
4
|
+
import { ChunithmScoreAdapter } from "../../lib/adapter";
|
|
5
|
+
export declare class Best50Painter extends ChunithmPainter<typeof Best50Painter.Theme, {
|
|
6
|
+
"no-theme": null;
|
|
7
|
+
"invalid-type": {
|
|
8
|
+
type: string;
|
|
9
|
+
};
|
|
10
|
+
}> {
|
|
6
11
|
static readonly Theme: z.ZodObject<{
|
|
7
12
|
name: z.ZodString;
|
|
8
13
|
displayName: z.ZodString;
|
|
@@ -135,8 +140,16 @@ export declare class Best50Painter extends ChunithmPainter<typeof Best50Painter.
|
|
|
135
140
|
bestScores?: IScore[];
|
|
136
141
|
type?: "new" | "recents";
|
|
137
142
|
version?: "chunithm" | "crystal" | "new" | "verse";
|
|
138
|
-
}): Promise<
|
|
139
|
-
|
|
143
|
+
}): Promise<{
|
|
144
|
+
readonly status: "success";
|
|
145
|
+
readonly message: "Image drawn successfully.";
|
|
146
|
+
readonly data: Buffer;
|
|
147
|
+
} | {
|
|
148
|
+
readonly status: "no-theme";
|
|
149
|
+
readonly message: "Cannot find any valid theme to use for drawing.";
|
|
150
|
+
readonly data: null;
|
|
151
|
+
}>;
|
|
152
|
+
drawWithScoreSource<T extends ChunithmScoreAdapter>(source: T, variables: {
|
|
140
153
|
username: string;
|
|
141
154
|
}, options: {
|
|
142
155
|
scale?: number;
|
|
@@ -144,5 +157,23 @@ export declare class Best50Painter extends ChunithmPainter<typeof Best50Painter.
|
|
|
144
157
|
profilePicture?: Buffer | null;
|
|
145
158
|
type?: "new" | "recents";
|
|
146
159
|
version?: "chunithm" | "crystal" | "new" | "verse";
|
|
147
|
-
}): Promise<
|
|
160
|
+
}): Promise<{
|
|
161
|
+
status: "unknown";
|
|
162
|
+
message: string;
|
|
163
|
+
data: null;
|
|
164
|
+
} | {
|
|
165
|
+
readonly status: "success";
|
|
166
|
+
readonly message: "Image drawn successfully.";
|
|
167
|
+
readonly data: Buffer;
|
|
168
|
+
} | {
|
|
169
|
+
readonly status: "no-theme";
|
|
170
|
+
readonly message: "Cannot find any valid theme to use for drawing.";
|
|
171
|
+
readonly data: null;
|
|
172
|
+
} | {
|
|
173
|
+
readonly status: "invalid-type";
|
|
174
|
+
readonly message: string;
|
|
175
|
+
readonly data: {
|
|
176
|
+
readonly type: string;
|
|
177
|
+
};
|
|
178
|
+
}>;
|
|
148
179
|
}
|
|
@@ -123,48 +123,65 @@ class Best50Painter extends __1.ChunithmPainter {
|
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
|
-
|
|
126
|
+
const res = {
|
|
127
|
+
status: "success",
|
|
128
|
+
message: "Image drawn successfully.",
|
|
129
|
+
data: canvas.toBuffer(),
|
|
130
|
+
};
|
|
131
|
+
return res;
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
const res = {
|
|
135
|
+
status: "no-theme",
|
|
136
|
+
message: "Cannot find any valid theme to use for drawing.",
|
|
137
|
+
data: null,
|
|
138
|
+
};
|
|
139
|
+
return res;
|
|
127
140
|
}
|
|
128
|
-
else
|
|
129
|
-
return null;
|
|
130
141
|
}
|
|
131
142
|
async drawWithScoreSource(source, variables, options) {
|
|
132
143
|
if (!options.type)
|
|
133
144
|
options.type = "new";
|
|
134
145
|
const profile = await source.getPlayerInfo(variables.username, options.type);
|
|
135
|
-
if (!profile)
|
|
136
|
-
return
|
|
146
|
+
if (!(profile.status == "success"))
|
|
147
|
+
return profile;
|
|
137
148
|
let newScores, oldScores, bestScores;
|
|
138
149
|
if (options.type == "new") {
|
|
139
150
|
const score = await source.getPlayerBest50(variables.username);
|
|
140
|
-
if (!score)
|
|
141
|
-
return
|
|
142
|
-
newScores = score.new;
|
|
143
|
-
oldScores = score.old;
|
|
144
|
-
bestScores = score.best;
|
|
151
|
+
if (!(score.status == "success"))
|
|
152
|
+
return score;
|
|
153
|
+
newScores = score.data.new;
|
|
154
|
+
oldScores = score.data.old;
|
|
155
|
+
bestScores = score.data.best;
|
|
145
156
|
}
|
|
146
157
|
else if (options.type == "recents") {
|
|
147
158
|
const score = await source.getPlayerRecent40(variables.username);
|
|
148
|
-
if (!score)
|
|
149
|
-
return
|
|
150
|
-
newScores = score.recent;
|
|
151
|
-
oldScores = score.best;
|
|
152
|
-
bestScores = score.best;
|
|
159
|
+
if (!(score.status == "success"))
|
|
160
|
+
return score;
|
|
161
|
+
newScores = score.data.recent;
|
|
162
|
+
oldScores = score.data.best;
|
|
163
|
+
bestScores = score.data.best;
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
const res = {
|
|
167
|
+
status: "invalid-type",
|
|
168
|
+
message: `${options.type} is not a valid type.`,
|
|
169
|
+
data: { type: options.type },
|
|
170
|
+
};
|
|
171
|
+
return res;
|
|
172
|
+
}
|
|
173
|
+
const pfp = await source.getPlayerProfilePicture(variables.username);
|
|
174
|
+
if (pfp.status == "success") {
|
|
175
|
+
options.profilePicture = pfp.data;
|
|
153
176
|
}
|
|
154
|
-
else
|
|
155
|
-
return null;
|
|
156
177
|
return this.draw({
|
|
157
|
-
username: profile.name,
|
|
158
|
-
rating: profile.rating,
|
|
178
|
+
username: profile.data.name,
|
|
179
|
+
rating: profile.data.rating,
|
|
159
180
|
newScores,
|
|
160
181
|
oldScores,
|
|
161
182
|
}, {
|
|
162
183
|
...options,
|
|
163
|
-
profilePicture: options?.profilePicture
|
|
164
|
-
? undefined
|
|
165
|
-
: options?.profilePicture ||
|
|
166
|
-
(await source.getPlayerProfilePicture(variables.username)) ||
|
|
167
|
-
undefined,
|
|
184
|
+
profilePicture: options?.profilePicture ?? undefined,
|
|
168
185
|
bestScores,
|
|
169
186
|
});
|
|
170
187
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/chu/painter/best50/index.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,+BAA2B;AAC3B,mCAAgC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/chu/painter/best50/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
import { z } from "zod/v4";
|
|
2
2
|
import { IScore } from "../../type";
|
|
3
|
-
import {
|
|
3
|
+
import { ChunithmScoreAdapter } from "../../lib/adapter";
|
|
4
4
|
import { ChunithmPainter } from "..";
|
|
5
|
-
export declare class ChartPainter extends ChunithmPainter<typeof ChartPainter.Theme
|
|
5
|
+
export declare class ChartPainter extends ChunithmPainter<typeof ChartPainter.Theme, {
|
|
6
|
+
"no-theme": null;
|
|
7
|
+
"invalid-chart": {
|
|
8
|
+
chartId: number;
|
|
9
|
+
};
|
|
10
|
+
}> {
|
|
6
11
|
static readonly Theme: z.ZodObject<{
|
|
7
12
|
name: z.ZodString;
|
|
8
13
|
displayName: z.ZodString;
|
|
@@ -147,8 +152,22 @@ export declare class ChartPainter extends ChunithmPainter<typeof ChartPainter.Th
|
|
|
147
152
|
profilePicture?: Buffer;
|
|
148
153
|
region?: "JPN" | "INT" | "CHN";
|
|
149
154
|
version?: "chunithm" | "crystal" | "new" | "verse";
|
|
150
|
-
}): Promise<
|
|
151
|
-
|
|
155
|
+
}): Promise<{
|
|
156
|
+
readonly status: "invalid-chart";
|
|
157
|
+
readonly message: `${number} is not a valid chart.`;
|
|
158
|
+
readonly data: {
|
|
159
|
+
readonly chartId: number;
|
|
160
|
+
};
|
|
161
|
+
} | {
|
|
162
|
+
readonly status: "success";
|
|
163
|
+
readonly message: "Image drawn successfully.";
|
|
164
|
+
readonly data: Buffer;
|
|
165
|
+
} | {
|
|
166
|
+
readonly status: "no-theme";
|
|
167
|
+
readonly message: "Cannot find any valid theme to use for drawing.";
|
|
168
|
+
readonly data: null;
|
|
169
|
+
}>;
|
|
170
|
+
drawWithScoreSource(source: ChunithmScoreAdapter, variables: {
|
|
152
171
|
username: string;
|
|
153
172
|
chartId: number;
|
|
154
173
|
type: "new" | "recents";
|
|
@@ -158,5 +177,23 @@ export declare class ChartPainter extends ChunithmPainter<typeof ChartPainter.Th
|
|
|
158
177
|
profilePicture?: Buffer | null;
|
|
159
178
|
region?: "JPN" | "INT" | "CHN";
|
|
160
179
|
version?: "chunithm" | "crystal" | "new" | "verse";
|
|
161
|
-
}): Promise<
|
|
180
|
+
}): Promise<{
|
|
181
|
+
readonly status: "invalid-chart";
|
|
182
|
+
readonly message: `${number} is not a valid chart.`;
|
|
183
|
+
readonly data: {
|
|
184
|
+
readonly chartId: number;
|
|
185
|
+
};
|
|
186
|
+
} | {
|
|
187
|
+
readonly status: "success";
|
|
188
|
+
readonly message: "Image drawn successfully.";
|
|
189
|
+
readonly data: Buffer;
|
|
190
|
+
} | {
|
|
191
|
+
readonly status: "no-theme";
|
|
192
|
+
readonly message: "Cannot find any valid theme to use for drawing.";
|
|
193
|
+
readonly data: null;
|
|
194
|
+
} | {
|
|
195
|
+
status: "unknown";
|
|
196
|
+
message: string;
|
|
197
|
+
data: null;
|
|
198
|
+
}>;
|
|
162
199
|
}
|
|
@@ -47,8 +47,14 @@ class ChartPainter extends __1.ChunithmPainter {
|
|
|
47
47
|
for (let i = type_1.EDifficulty.BASIC; i <= type_1.EDifficulty.WORLDS_END; ++i) {
|
|
48
48
|
charts.push(database_1.Database.getLocalChart(variables.chartId, i));
|
|
49
49
|
}
|
|
50
|
-
if (!charts.length)
|
|
51
|
-
|
|
50
|
+
if (!charts.length) {
|
|
51
|
+
const res = {
|
|
52
|
+
status: "invalid-chart",
|
|
53
|
+
message: `${variables.chartId} is not a valid chart.`,
|
|
54
|
+
data: { chartId: variables.chartId },
|
|
55
|
+
};
|
|
56
|
+
return res;
|
|
57
|
+
}
|
|
52
58
|
if (currentTheme) {
|
|
53
59
|
await database_1.Database.cacheJackets([variables.chartId]);
|
|
54
60
|
const canvas = new canvas_1.Canvas(currentTheme.content.width * (options?.scale ?? 1), currentTheme.content.height * (options?.scale ?? 1));
|
|
@@ -96,36 +102,49 @@ class ChartPainter extends __1.ChunithmPainter {
|
|
|
96
102
|
}
|
|
97
103
|
}
|
|
98
104
|
}
|
|
99
|
-
|
|
105
|
+
const res = {
|
|
106
|
+
status: "success",
|
|
107
|
+
message: "Image drawn successfully.",
|
|
108
|
+
data: canvas.toBuffer(),
|
|
109
|
+
};
|
|
110
|
+
return res;
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
const res = {
|
|
114
|
+
status: "no-theme",
|
|
115
|
+
message: "Cannot find any valid theme to use for drawing.",
|
|
116
|
+
data: null,
|
|
117
|
+
};
|
|
118
|
+
return res;
|
|
100
119
|
}
|
|
101
|
-
else
|
|
102
|
-
return null;
|
|
103
120
|
}
|
|
104
121
|
async drawWithScoreSource(source, variables, options = {}) {
|
|
105
122
|
const profile = await source.getPlayerInfo(variables.username, variables.type);
|
|
123
|
+
if (!(profile.status == "success"))
|
|
124
|
+
return profile;
|
|
106
125
|
const score = await source.getPlayerScore(variables.username, variables.chartId);
|
|
107
|
-
if (!
|
|
108
|
-
return
|
|
126
|
+
if (!(score.status == "success"))
|
|
127
|
+
return score;
|
|
128
|
+
const pfp = await source.getPlayerProfilePicture(variables.username);
|
|
129
|
+
if (pfp.status == "success") {
|
|
130
|
+
options.profilePicture = pfp.data;
|
|
131
|
+
}
|
|
109
132
|
return this.draw({
|
|
110
|
-
username: profile.name,
|
|
111
|
-
rating: profile.rating,
|
|
133
|
+
username: profile.data.name,
|
|
134
|
+
rating: profile.data.rating,
|
|
112
135
|
chartId: variables.chartId,
|
|
113
136
|
scores: [
|
|
114
|
-
score.basic,
|
|
115
|
-
score.advanced,
|
|
116
|
-
score.expert,
|
|
117
|
-
score.master,
|
|
118
|
-
score.ultima,
|
|
119
|
-
score.worldsEnd,
|
|
137
|
+
score.data.basic,
|
|
138
|
+
score.data.advanced,
|
|
139
|
+
score.data.expert,
|
|
140
|
+
score.data.master,
|
|
141
|
+
score.data.ultima,
|
|
142
|
+
score.data.worldsEnd,
|
|
120
143
|
],
|
|
121
144
|
type: variables.type,
|
|
122
145
|
}, {
|
|
123
146
|
...options,
|
|
124
|
-
profilePicture: options?.profilePicture
|
|
125
|
-
? undefined
|
|
126
|
-
: options?.profilePicture ||
|
|
127
|
-
(await source.getPlayerProfilePicture(variables.username)) ||
|
|
128
|
-
undefined,
|
|
147
|
+
profilePicture: options?.profilePicture ?? undefined,
|
|
129
148
|
});
|
|
130
149
|
}
|
|
131
150
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/chu/painter/chart/index.ts"],"names":[],"mappings":";;;;;;AACA,kDAA0B;AAC1B,+BAA2B;AAC3B,mCAAgC;AAEhC,qCAAiD;AAGjD,4CAAyC;AACzC,0BAA4D;AAC5D,kDAAmE;AACnE,iDAA8C;AAE9C,MAAa,YAAa,SAAQ,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/chu/painter/chart/index.ts"],"names":[],"mappings":"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"}
|