maidraw 0.11.13 → 0.11.15

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.
Files changed (61) hide show
  1. package/dist/chu/index.d.ts +4 -0
  2. package/dist/chu/index.js +4 -0
  3. package/dist/chu/index.js.map +1 -1
  4. package/dist/chu/lib/adapter/index.d.ts +1 -1
  5. package/dist/chu/lib/adapter/index.js +2 -1
  6. package/dist/chu/lib/adapter/index.js.map +1 -1
  7. package/dist/chu/lib/adapter/kamaiTachi/index.d.ts +1 -1
  8. package/dist/chu/lib/adapter/kamaiTachi/index.js +2 -5
  9. package/dist/chu/lib/adapter/kamaiTachi/index.js.map +1 -1
  10. package/dist/chu/lib/adapter/lxns/index.d.ts +1 -1
  11. package/dist/chu/lib/adapter/lxns/index.js +2 -5
  12. package/dist/chu/lib/adapter/lxns/index.js.map +1 -1
  13. package/dist/chu/lib/database.d.ts +2 -1
  14. package/dist/chu/lib/database.js +12 -1
  15. package/dist/chu/lib/database.js.map +1 -1
  16. package/dist/chu/painter/best50/index.d.ts +1 -1
  17. package/dist/chu/painter/chart/index.d.ts +1 -1
  18. package/dist/chu/painter/index.d.ts +1 -1
  19. package/dist/geki/index.d.ts +7 -3
  20. package/dist/geki/index.js +8 -4
  21. package/dist/geki/index.js.map +1 -1
  22. package/dist/geki/lib/adapter/index.d.ts +1 -1
  23. package/dist/geki/lib/adapter/index.js +2 -1
  24. package/dist/geki/lib/adapter/index.js.map +1 -1
  25. package/dist/geki/lib/adapter/kamaiTachi/index.d.ts +1 -1
  26. package/dist/geki/lib/adapter/kamaiTachi/index.js +2 -5
  27. package/dist/geki/lib/adapter/kamaiTachi/index.js.map +1 -1
  28. package/dist/geki/lib/database.d.ts +2 -1
  29. package/dist/geki/lib/database.js +12 -1
  30. package/dist/geki/lib/database.js.map +1 -1
  31. package/dist/geki/painter/best50/index.d.ts +1 -1
  32. package/dist/geki/painter/chart/index.d.ts +1 -1
  33. package/dist/geki/painter/index.d.ts +1 -1
  34. package/dist/mai/index.d.ts +2 -0
  35. package/dist/mai/index.js +2 -0
  36. package/dist/mai/index.js.map +1 -1
  37. package/dist/mai/lib/adapter/divingFish/index.d.ts +1 -1
  38. package/dist/mai/lib/adapter/divingFish/index.js +2 -5
  39. package/dist/mai/lib/adapter/divingFish/index.js.map +1 -1
  40. package/dist/mai/lib/adapter/index.d.ts +1 -1
  41. package/dist/mai/lib/adapter/index.js +2 -1
  42. package/dist/mai/lib/adapter/index.js.map +1 -1
  43. package/dist/mai/lib/adapter/kamaiTachi/index.d.ts +1 -1
  44. package/dist/mai/lib/adapter/kamaiTachi/index.js +2 -5
  45. package/dist/mai/lib/adapter/kamaiTachi/index.js.map +1 -1
  46. package/dist/mai/lib/adapter/lxns/index.d.ts +1 -1
  47. package/dist/mai/lib/adapter/lxns/index.js +2 -5
  48. package/dist/mai/lib/adapter/lxns/index.js.map +1 -1
  49. package/dist/mai/lib/adapter/maishift/index.d.ts +16 -8
  50. package/dist/mai/lib/adapter/maishift/index.js +182 -47
  51. package/dist/mai/lib/adapter/maishift/index.js.map +1 -1
  52. package/dist/mai/lib/database.d.ts +2 -1
  53. package/dist/mai/lib/database.js +12 -1
  54. package/dist/mai/lib/database.js.map +1 -1
  55. package/dist/mai/painter/best50/index.d.ts +1 -1
  56. package/dist/mai/painter/chart/index.d.ts +1 -1
  57. package/dist/mai/painter/index.d.ts +1 -1
  58. package/dist/mai/painter/index.js +1 -1
  59. package/dist/mai/painter/index.js.map +1 -1
  60. package/dist/mai/painter/level50/index.d.ts +1 -1
  61. package/package.json +1 -1
@@ -22,60 +22,130 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
25
  Object.defineProperty(exports, "__esModule", { value: true });
29
26
  exports.Maishift = void 0;
30
27
  const Cheerio = __importStar(require("cheerio"));
31
- const __1 = __importDefault(require(".."));
28
+ const __1 = require("..");
32
29
  const type_1 = require("../../../type");
33
30
  const database_1 = require("../../database");
34
- class Maishift extends __1.default {
31
+ class Maishift extends __1.ScoreTrackerAdapter {
35
32
  constructor() {
36
33
  super({
37
34
  baseURL: "https://maimai.shiftpsh.com",
38
35
  });
39
36
  }
40
- async pageScraper(username) {
41
- const html = await this.get(`/profile/${username}/home`);
42
- if (!html)
43
- return null;
44
- const $ = Cheerio.load(html.replace(/<style.*?>.*?<\/style>/g, ""));
45
- const name = $("body > div > div > div > div > span > span").text();
46
- const avatarUrl = $($("body > div > div > img")[0]).attr("src");
47
- const title = $($("body > div > div > div > div > div")[0]).text();
48
- const rating = parseInt($($("body > div > div > div > div > div")[1]).text());
49
- const newScoresDOM = $($("body > div > div")[14]).children();
50
- const newScores = [];
51
- for (const score of newScoresDOM) {
52
- const rank = $($("div", score)[2]).text();
53
- const level = parseFloat($($("div", score)[6]).text().replace("+", ""));
54
- const rating = parseInt($($("span", $("div", score)[5])[0]).text());
55
- const name = $($("div", score)[8]).text();
56
- const rate = parseFloat($($("span", $("div", score)[9])[0])
57
- .text()
58
- .replace("%", ""));
59
- const isDX = $($("img", score)[1]).attr("alt") == "DX";
60
- newScores.push({ rank, level, rating, name, rate, isDX });
37
+ CURRENT_MINOR = 55;
38
+ CURRENT_ACCUMULATE_VER = 24;
39
+ minorToAccumulateVer(minor, isDX) {
40
+ if (isDX) {
41
+ if (minor >= 55)
42
+ return 24;
43
+ if (minor >= 50)
44
+ return 23;
45
+ if (minor >= 45)
46
+ return 22;
47
+ if (minor >= 40)
48
+ return 21;
49
+ if (minor >= 35)
50
+ return 20;
51
+ if (minor >= 30)
52
+ return 19;
53
+ if (minor >= 25)
54
+ return 18;
55
+ if (minor >= 20)
56
+ return 17;
57
+ if (minor >= 15)
58
+ return 16;
59
+ if (minor >= 10)
60
+ return 15;
61
+ if (minor >= 5)
62
+ return 14;
63
+ return 13;
61
64
  }
62
- const oldScoresDOM = $($("body > div > div")[16]).children();
63
- const oldScores = [];
64
- for (const score of oldScoresDOM) {
65
- const rank = $($("div", score)[2]).text();
66
- const level = parseFloat($($("div", score)[6]).text().replace("+", ""));
67
- const rating = parseInt($($("span", $("div", score)[5])[0]).text());
68
- const name = $($("div", score)[8]).text();
69
- const rate = parseFloat($($("span", $("div", score)[9])[0])
65
+ else {
66
+ if (minor >= 97)
67
+ return 12;
68
+ if (minor >= 95)
69
+ return 11;
70
+ if (minor >= 90)
71
+ return 10;
72
+ if (minor >= 85)
73
+ return 9;
74
+ if (minor >= 80)
75
+ return 8;
76
+ if (minor >= 70)
77
+ return 7;
78
+ if (minor >= 60)
79
+ return 6;
80
+ if (minor >= 50)
81
+ return 5;
82
+ if (minor >= 40)
83
+ return 4;
84
+ if (minor >= 30)
85
+ return 3;
86
+ if (minor >= 20)
87
+ return 2;
88
+ if (minor >= 10)
89
+ return 1;
90
+ return 0;
91
+ }
92
+ }
93
+ async profileScraper(username) {
94
+ const HTML = await this.get(`/profile/${username}/home`, undefined, 1 * 60 * 1000);
95
+ if (!HTML)
96
+ return null;
97
+ const $ = Cheerio.load(HTML.replace(/<style.*?>.*?<\/style>/g, ""));
98
+ const profileElement = $("> div", $("body > div")[0])[2];
99
+ const name = $($("> div > span", $("> div", profileElement))[0]).text();
100
+ const avatarUrl = $("> img", profileElement).attr("src");
101
+ const title = $($("> div", $("> div", profileElement))[0]).text();
102
+ const rating = parseInt($($("> div > div", $("> div", profileElement))[1]).text());
103
+ if (!name || isNaN(rating))
104
+ return null;
105
+ return { name, avatarUrl, title, rating };
106
+ }
107
+ getScoresFromDOM($, length) {
108
+ const DOM = $("body > div > div").slice(15, 15 + length);
109
+ const scores = [];
110
+ for (const score of DOM) {
111
+ const level = parseFloat($($("> div", score)[0]).text().replace("+", ""));
112
+ const name = $($("> span", $("> div", score)[1])[0]).text();
113
+ const rank = $($("> div", score)[2]).text();
114
+ const combo = $($("> div", score)[3]).text();
115
+ const sync = $($("> div", score)[4]).text();
116
+ const rating = parseInt($($("> span", $("> div", score)[5])[1]).text());
117
+ const rate = parseInt($($("> span", $("> div", score)[5])[0])
70
118
  .text()
119
+ .replace(".", "")
71
120
  .replace("%", ""));
72
- const isDX = $($("img", score)[1]).attr("alt") == "DX";
73
- oldScores.push({ rank, level, rating, name, rate, isDX });
121
+ const isDX = $($("> img", $("> div", $("> div", score)[1])[0])[0]).attr("alt") == "DX";
122
+ if (name && level && !isNaN(rate) && !isNaN(rating) && rank)
123
+ scores.push({
124
+ rank,
125
+ level,
126
+ rating,
127
+ name,
128
+ rate,
129
+ combo,
130
+ sync,
131
+ isDX,
132
+ });
74
133
  }
75
- return { name, avatarUrl, title, rating, newScores, oldScores };
134
+ return scores;
135
+ }
136
+ async best50Scraper(username) {
137
+ const scoresHTML = await this.get(`/profile/${username}/records?&version=${this.CURRENT_ACCUMULATE_VER}&sort=rating&order=desc`, undefined, 1 * 60 * 1000);
138
+ const oldScoresHTML = await this.get(`/profile/${username}/records?&version=${encodeURI(Array.from(Array(this.CURRENT_ACCUMULATE_VER).keys()).join(","))}&sort=rating&order=desc`, undefined, 1 * 60 * 1000);
139
+ if (!scoresHTML || !oldScoresHTML)
140
+ return null;
141
+ const $new = Cheerio.load(scoresHTML.replace(/<style.*?>.*?<\/style>/g, ""));
142
+ const $old = Cheerio.load(oldScoresHTML.replace(/<style.*?>.*?<\/style>/g, ""));
143
+ const newScores = this.getScoresFromDOM($new, 15);
144
+ const oldScores = this.getScoresFromDOM($old, 35);
145
+ return { newScores, oldScores };
76
146
  }
77
147
  async getPlayerInfo(username) {
78
- const res = await this.pageScraper(username);
148
+ const res = await this.profileScraper(username);
79
149
  if (!res)
80
150
  return null;
81
151
  return {
@@ -84,7 +154,7 @@ class Maishift extends __1.default {
84
154
  };
85
155
  }
86
156
  async getPlayerProfilePicture(username) {
87
- const res = await this.pageScraper(username);
157
+ const res = await this.profileScraper(username);
88
158
  if (!res?.avatarUrl)
89
159
  return null;
90
160
  const buffer = await this.get(res.avatarUrl, undefined, 2 * 60 * 60 * 1000, {
@@ -95,25 +165,54 @@ class Maishift extends __1.default {
95
165
  return buffer;
96
166
  }
97
167
  async getPlayerBest50(username) {
98
- const res = await this.pageScraper(username);
168
+ const res = await this.best50Scraper(username);
99
169
  if (!res)
100
170
  return null;
101
- const newScores = [];
171
+ const scores = [];
102
172
  const oldScores = [];
103
173
  for (const score of res.newScores) {
104
174
  const converted = await this.toMaiDrawScore(score);
105
175
  if (converted)
106
- newScores.push(converted);
176
+ scores.push(converted);
107
177
  }
108
178
  for (const score of res.oldScores) {
109
179
  const converted = await this.toMaiDrawScore(score);
110
180
  if (converted)
111
181
  oldScores.push(converted);
112
182
  }
113
- return { new: newScores, old: oldScores };
183
+ return { new: scores, old: oldScores };
184
+ }
185
+ async scoreScraper(username, chartId, difficulty) {
186
+ const chart = database_1.Database.getLocalChart(chartId, difficulty);
187
+ if (!chart)
188
+ return null;
189
+ const addVersion = chart.addVersion.EX ?? chart.addVersion.DX;
190
+ if (!addVersion)
191
+ return null;
192
+ const accumulateVer = this.minorToAccumulateVer(addVersion?.gameVersion.minor, chartId > 10000);
193
+ const level = chart.events
194
+ .filter((e) => e.type == "existence" &&
195
+ (e.version.region == "EX" || e.version.region == "DX"))
196
+ .find((e) => e.version.gameVersion.minor >= this.CURRENT_MINOR)
197
+ ?.data.level ?? chart.level;
198
+ const params = new URLSearchParams();
199
+ params.append("version", accumulateVer.toString());
200
+ params.append("level", `${Math.trunc(level * 10 - 5)},${Math.trunc(level * 10 + 5)}`);
201
+ params.append("chartType", chartId > 10000 ? "DX" : "STANDARD");
202
+ params.append("difficulty", difficulty == type_1.EDifficulty.REMASTER
203
+ ? "RE_MASTER"
204
+ : type_1.EDifficulty[difficulty]);
205
+ params.append("sort", "rating");
206
+ params.append("order", "desc");
207
+ const HTML = await this.get(`/profile/${username}/records?${params.toString()}`, undefined, 1 * 60 * 1000);
208
+ if (!HTML)
209
+ return null;
210
+ const $ = Cheerio.load(HTML.replace(/<style.*?>.*?<\/style>/g, ""));
211
+ const scores = this.getScoresFromDOM($, 100);
212
+ return (scores.find((s) => s.name == chart.name && s.isDX == chartId > 10000) || null);
114
213
  }
115
214
  async getPlayerScore(username, chartId) {
116
- return {
215
+ const res = {
117
216
  basic: null,
118
217
  advanced: null,
119
218
  expert: null,
@@ -121,6 +220,14 @@ class Maishift extends __1.default {
121
220
  remaster: null,
122
221
  utage: null,
123
222
  };
223
+ for (let difficulty = type_1.EDifficulty.BASIC; difficulty <= type_1.EDifficulty.REMASTER; difficulty++) {
224
+ const score = await this.scoreScraper(username, chartId, difficulty);
225
+ if (score) {
226
+ res[type_1.EDifficulty[difficulty].toLowerCase()] =
227
+ await this.toMaiDrawScore(score);
228
+ }
229
+ }
230
+ return res;
124
231
  }
125
232
  async toMaiDrawScore(score) {
126
233
  const chart = await database_1.Database.findLocalChartWithNameAndLevel(score.name, score.level, score.isDX);
@@ -134,9 +241,37 @@ class Maishift extends __1.default {
134
241
  level: chart.level,
135
242
  maxDxScore: chart.meta.maxDXScore,
136
243
  },
137
- combo: type_1.EComboTypes.NONE,
138
- sync: type_1.ESyncTypes.NONE,
139
- achievement: score.rate,
244
+ combo: (() => {
245
+ switch (score.combo) {
246
+ case "FC":
247
+ return type_1.EComboTypes.FULL_COMBO;
248
+ case "FC+":
249
+ return type_1.EComboTypes.FULL_COMBO_PLUS;
250
+ case "AP":
251
+ return type_1.EComboTypes.ALL_PERFECT;
252
+ case "AP+":
253
+ return type_1.EComboTypes.ALL_PERFECT_PLUS;
254
+ default:
255
+ return type_1.EComboTypes.NONE;
256
+ }
257
+ })(),
258
+ sync: (() => {
259
+ switch (score.sync) {
260
+ case "SYNC":
261
+ return type_1.ESyncTypes.SYNC_PLAY;
262
+ case "FS":
263
+ return type_1.ESyncTypes.FULL_SYNC;
264
+ case "FS+":
265
+ return type_1.ESyncTypes.FULL_SYNC_PLUS;
266
+ case "FDX":
267
+ return type_1.ESyncTypes.FULL_SYNC_DX;
268
+ case "FDX+":
269
+ return type_1.ESyncTypes.FULL_SYNC_DX_PLUS;
270
+ default:
271
+ return type_1.ESyncTypes.NONE;
272
+ }
273
+ })(),
274
+ achievement: score.rate / 10000,
140
275
  achievementRank: (() => {
141
276
  switch (score.rank) {
142
277
  case "SSS+":
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/mai/lib/adapter/maishift/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/mai/lib/adapter/maishift/index.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,8 @@ export declare class Database {
18
18
  */
19
19
  variant?: "DX" | "EX" | "CN"): Promise<Buffer | null>;
20
20
  static getLocalChart(id: number, difficulty: EDifficulty): Database.IChart | null;
21
- static getAllSongs(): Promise<Maimai.Database.IChart[]>;
21
+ private static readonly allSongs;
22
+ static getAllSongs(): Promise<Database.IChart[]>;
22
23
  static findLocalChartWithNameAndLevel(name: string, level: number, isDX: boolean): Promise<Maimai.Database.IChart | null>;
23
24
  }
24
25
  export declare namespace Database {
@@ -84,10 +84,19 @@ class Database {
84
84
  }
85
85
  return null;
86
86
  }
87
+ static allSongs = {
88
+ songs: [],
89
+ expire: 0,
90
+ };
87
91
  static async getAllSongs() {
92
+ if (Date.now() < this.allSongs.expire)
93
+ return this.allSongs.songs;
88
94
  const cached = await this.cache.get("all-maimai-songs");
89
- if (cached)
95
+ if (Array.isArray(cached)) {
96
+ this.allSongs.songs = cached;
97
+ this.allSongs.expire = Date.now() + 24 * 60 * 60 * 1000;
90
98
  return cached;
99
+ }
91
100
  const localFolderPath = upath_1.default.join(this.localDatabasePath, "assets", "maimai", "charts");
92
101
  const chartFolders = fs_1.default.readdirSync(localFolderPath);
93
102
  const songs = [];
@@ -102,6 +111,8 @@ class Database {
102
111
  }
103
112
  }
104
113
  await this.cache.put("all-maimai-songs", songs, 1000 * 60 * 60 * 2);
114
+ this.allSongs.songs = songs;
115
+ this.allSongs.expire = Date.now() + 24 * 60 * 60 * 1000;
105
116
  return songs;
106
117
  }
107
118
  static async findLocalChartWithNameAndLevel(name, level, isDX) {
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../../src/mai/lib/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../../src/mai/lib/database.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod/v4";
2
- import ScoreTrackerAdapter from "../../lib/adapter";
2
+ import { ScoreTrackerAdapter } from "../../lib/adapter";
3
3
  import { MaimaiPainter } from "..";
4
4
  import { IScore } from "../../type";
5
5
  export declare class Best50Painter extends MaimaiPainter<typeof Best50Painter.Theme> {
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod/v4";
2
2
  import { IScore } from "../../type";
3
- import ScoreTrackerAdapter from "../../lib/adapter";
3
+ import { ScoreTrackerAdapter } from "../../lib/adapter";
4
4
  import { MaimaiPainter } from "..";
5
5
  export declare class ChartPainter extends MaimaiPainter<typeof ChartPainter.Theme> {
6
6
  static readonly Theme: z.ZodObject<{
@@ -1,7 +1,7 @@
1
1
  import { z } from "zod/v4";
2
2
  import { CanvasRenderingContext2D } from "canvas";
3
3
  import { IScore } from "../type";
4
- import ScoreTrackerAdapter from "../lib/adapter";
4
+ import { ScoreTrackerAdapter } from "../lib/adapter";
5
5
  import { Painter, Theme, ThemeManager } from "../../lib/painter";
6
6
  export declare abstract class MaimaiPainter<Schema extends typeof ThemeManager.BaseObject> extends Painter<ScoreTrackerAdapter, Schema> {
7
7
  constructor({ theme: { schema, searchPaths, defaultTheme }, }: {
@@ -1304,7 +1304,7 @@ var MaimaiPainterModule;
1304
1304
  borderColor: new color_1.default(curColor).darken(0.3).hexa(),
1305
1305
  });
1306
1306
  ctx.restore();
1307
- util_1.Util.drawText(ctx, `${score ? `${score.dxScore}/` : "MAX DX SCR: "}${chart.meta.maxDXScore}`, x + height * 2 - element.bubble.margin, y + height - element.bubble.margin * 3.1, height * 0.806 * 0.128, height * 0.806 * 0.04, {
1307
+ util_1.Util.drawText(ctx, `${score && score.dxScore >= 0 ? `${score.dxScore}/` : "MAX DX SCR: "}${chart.meta.maxDXScore}`, x + height * 2 - element.bubble.margin, y + height - element.bubble.margin * 3.1, height * 0.806 * 0.128, height * 0.806 * 0.04, {
1308
1308
  textAlign: "right",
1309
1309
  mainColor: "white",
1310
1310
  borderColor: new color_1.default(curColor).darken(0.3).hexa(),