maidraw 0.9.5 → 0.10.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.
Files changed (167) hide show
  1. package/assets/themes/chunithm/best/luminousLandscape/new/manifest.json +58 -32
  2. package/assets/themes/chunithm/best/luminousLandscape/recents/manifest.json +57 -31
  3. package/assets/themes/chunithm/best/luminousPlusLandscape/new/manifest.json +57 -31
  4. package/assets/themes/chunithm/best/luminousPlusLandscape/recents/manifest.json +57 -31
  5. package/assets/themes/chunithm/best/verseLandscape/new/manifest.json +57 -31
  6. package/assets/themes/chunithm/best/verseLandscape/recents/manifest.json +57 -31
  7. package/assets/themes/chunithm/chart/jp/verse/manifest.json +73 -71
  8. package/assets/themes/maimai/best50/cn/2024Landscape/manifest.json +90 -54
  9. package/assets/themes/maimai/best50/cn/2024Portrait/manifest.json +89 -53
  10. package/assets/themes/maimai/best50/cn/2025Landscape/manifest.json +90 -54
  11. package/assets/themes/maimai/best50/cn/2025Portrait/manifest.json +89 -53
  12. package/assets/themes/maimai/best50/common/prism/plus/background.png +0 -0
  13. package/assets/themes/maimai/best50/jp/buddiesLandscape/manifest.json +89 -53
  14. package/assets/themes/maimai/best50/jp/buddiesPlusLandscape/manifest.json +89 -53
  15. package/assets/themes/maimai/best50/jp/buddiesPlusPortrait/manifest.json +89 -53
  16. package/assets/themes/maimai/best50/jp/buddiesPortrait/manifest.json +89 -53
  17. package/assets/themes/maimai/best50/jp/finaleLandscape/manifest.json +89 -53
  18. package/assets/themes/maimai/best50/jp/finalePortrait/manifest.json +89 -53
  19. package/assets/themes/maimai/best50/jp/prismLandscape/manifest.json +90 -54
  20. package/assets/themes/maimai/best50/jp/prismPlusLandscape/manifest.json +90 -54
  21. package/assets/themes/maimai/best50/jp/prismPlusPortrait/manifest.json +92 -55
  22. package/assets/themes/maimai/best50/jp/prismPortrait/manifest.json +89 -53
  23. package/assets/themes/maimai/best50/salt/2026landscape/manifest.json +89 -53
  24. package/assets/themes/maimai/chart/jp/prism/manifest.json +100 -96
  25. package/assets/themes/ongeki/jp/brightMemoryLandscape/classic/manifest.json +101 -30
  26. package/assets/themes/ongeki/jp/brightMemoryLandscape/refresh/manifest.json +78 -30
  27. package/assets/themes/ongeki/jp/refreshLandscape/classic/manifest.json +101 -2
  28. package/assets/themes/ongeki/jp/refreshLandscape/refresh/manifest.json +78 -30
  29. package/dist/chu/index.d.ts +14 -4
  30. package/dist/chu/index.js +16 -4
  31. package/dist/chu/index.js.map +1 -1
  32. package/dist/chu/lib/{index.d.ts → adapter/index.d.ts} +1 -1
  33. package/dist/chu/lib/{index.js → adapter/index.js} +1 -1
  34. package/dist/chu/lib/adapter/index.js.map +1 -0
  35. package/dist/chu/lib/{kamaiTachi → adapter/kamaiTachi}/index.d.ts +1 -1
  36. package/dist/chu/lib/{kamaiTachi → adapter/kamaiTachi}/index.js +5 -5
  37. package/dist/chu/lib/adapter/kamaiTachi/index.js.map +1 -0
  38. package/dist/chu/lib/{lxns → adapter/lxns}/index.d.ts +1 -1
  39. package/dist/chu/lib/{lxns → adapter/lxns}/index.js +4 -4
  40. package/dist/chu/lib/adapter/lxns/index.js.map +1 -0
  41. package/dist/chu/{chart → lib}/database.d.ts +3 -3
  42. package/dist/chu/{chart → lib}/database.js +2 -2
  43. package/dist/chu/lib/database.js.map +1 -0
  44. package/dist/chu/lib/util.d.ts +149 -0
  45. package/dist/chu/lib/util.js +270 -0
  46. package/dist/chu/lib/util.js.map +1 -0
  47. package/dist/chu/painter/best50/index.d.ts +120 -0
  48. package/dist/chu/painter/best50/index.js +158 -0
  49. package/dist/chu/painter/best50/index.js.map +1 -0
  50. package/dist/chu/painter/chart/index.d.ts +170 -0
  51. package/dist/chu/painter/chart/index.js +116 -0
  52. package/dist/chu/painter/chart/index.js.map +1 -0
  53. package/dist/chu/painter/index.d.ts +194 -0
  54. package/dist/chu/painter/index.js +1105 -0
  55. package/dist/chu/painter/index.js.map +1 -0
  56. package/dist/geki/index.d.ts +10 -4
  57. package/dist/geki/index.js +12 -4
  58. package/dist/geki/index.js.map +1 -1
  59. package/dist/geki/lib/adapter/index.js.map +1 -0
  60. package/dist/geki/lib/adapter/kamaiTachi/index.js.map +1 -0
  61. package/dist/geki/{chart → lib}/database.d.ts +1 -1
  62. package/dist/geki/{chart → lib}/database.js +2 -2
  63. package/dist/geki/lib/database.js.map +1 -0
  64. package/dist/geki/painter/best50/index.d.ts +122 -0
  65. package/dist/geki/painter/best50/index.js +197 -0
  66. package/dist/geki/painter/best50/index.js.map +1 -0
  67. package/dist/geki/painter/index.d.ts +88 -0
  68. package/dist/geki/painter/index.js +448 -0
  69. package/dist/geki/painter/index.js.map +1 -0
  70. package/dist/lib/cache.d.ts +1 -0
  71. package/dist/lib/cache.js +6 -1
  72. package/dist/lib/cache.js.map +1 -1
  73. package/dist/lib/painter.d.ts +100 -0
  74. package/dist/lib/painter.js +216 -0
  75. package/dist/lib/painter.js.map +1 -0
  76. package/dist/lib/util.d.ts +6 -282
  77. package/dist/lib/util.js +50 -540
  78. package/dist/lib/util.js.map +1 -1
  79. package/dist/mai/index.d.ts +22 -6
  80. package/dist/mai/index.js +24 -6
  81. package/dist/mai/index.js.map +1 -1
  82. package/dist/mai/lib/{divingFish → adapter/divingFish}/index.d.ts +6 -6
  83. package/dist/mai/lib/{divingFish → adapter/divingFish}/index.js +29 -30
  84. package/dist/mai/lib/adapter/divingFish/index.js.map +1 -0
  85. package/dist/mai/lib/{index.d.ts → adapter/index.d.ts} +11 -11
  86. package/dist/mai/lib/{index.js → adapter/index.js} +2 -2
  87. package/dist/{geki/bests/lib → mai/lib/adapter}/index.js.map +1 -1
  88. package/dist/mai/lib/{kamaiTachi → adapter/kamaiTachi}/index.d.ts +84 -42
  89. package/dist/mai/lib/{kamaiTachi → adapter/kamaiTachi}/index.js +36 -29
  90. package/dist/mai/lib/adapter/kamaiTachi/index.js.map +1 -0
  91. package/dist/mai/lib/{lxns → adapter/lxns}/index.d.ts +12 -12
  92. package/dist/mai/lib/{lxns → adapter/lxns}/index.js +29 -30
  93. package/dist/mai/lib/adapter/lxns/index.js.map +1 -0
  94. package/dist/mai/lib/{maishift → adapter/maishift}/index.d.ts +4 -4
  95. package/dist/mai/lib/{maishift → adapter/maishift}/index.js +20 -20
  96. package/dist/mai/lib/adapter/maishift/index.js.map +1 -0
  97. package/dist/mai/{chart → lib}/database.d.ts +3 -3
  98. package/dist/mai/{chart → lib}/database.js +2 -2
  99. package/dist/mai/lib/database.js.map +1 -0
  100. package/dist/mai/lib/util.d.ts +134 -0
  101. package/dist/mai/lib/util.js +264 -0
  102. package/dist/mai/lib/util.js.map +1 -0
  103. package/dist/mai/painter/best50/index.d.ts +140 -0
  104. package/dist/mai/painter/best50/index.js +176 -0
  105. package/dist/mai/painter/best50/index.js.map +1 -0
  106. package/dist/mai/painter/chart/index.d.ts +195 -0
  107. package/dist/mai/painter/chart/index.js +115 -0
  108. package/dist/mai/painter/chart/index.js.map +1 -0
  109. package/dist/mai/painter/index.d.ts +237 -0
  110. package/dist/mai/painter/index.js +1431 -0
  111. package/dist/mai/painter/index.js.map +1 -0
  112. package/dist/mai/painter/level50/index.d.ts +28 -0
  113. package/dist/mai/painter/level50/index.js +129 -0
  114. package/dist/mai/painter/level50/index.js.map +1 -0
  115. package/dist/mai/type.d.ts +110 -0
  116. package/dist/mai/type.js +73 -1
  117. package/dist/mai/type.js.map +1 -1
  118. package/package.json +56 -55
  119. package/dist/chu/bests/best50.d.ts +0 -37
  120. package/dist/chu/bests/best50.js +0 -742
  121. package/dist/chu/bests/best50.js.map +0 -1
  122. package/dist/chu/bests/index.d.ts +0 -1
  123. package/dist/chu/bests/index.js +0 -6
  124. package/dist/chu/bests/index.js.map +0 -1
  125. package/dist/chu/bests/type.d.ts +0 -122
  126. package/dist/chu/bests/type.js +0 -3
  127. package/dist/chu/bests/type.js.map +0 -1
  128. package/dist/chu/chart/database.js.map +0 -1
  129. package/dist/chu/chart/index.d.ts +0 -212
  130. package/dist/chu/chart/index.js +0 -1064
  131. package/dist/chu/chart/index.js.map +0 -1
  132. package/dist/chu/lib/index.js.map +0 -1
  133. package/dist/chu/lib/kamaiTachi/index.js.map +0 -1
  134. package/dist/chu/lib/lxns/index.js.map +0 -1
  135. package/dist/geki/bests/best50.d.ts +0 -35
  136. package/dist/geki/bests/best50.js +0 -821
  137. package/dist/geki/bests/best50.js.map +0 -1
  138. package/dist/geki/bests/index.d.ts +0 -1
  139. package/dist/geki/bests/index.js +0 -6
  140. package/dist/geki/bests/index.js.map +0 -1
  141. package/dist/geki/bests/lib/kamaiTachi/index.js.map +0 -1
  142. package/dist/geki/bests/type.d.ts +0 -122
  143. package/dist/geki/bests/type.js +0 -3
  144. package/dist/geki/bests/type.js.map +0 -1
  145. package/dist/geki/chart/database.js.map +0 -1
  146. package/dist/geki/chart/index.d.ts +0 -4
  147. package/dist/geki/chart/index.js +0 -32
  148. package/dist/geki/chart/index.js.map +0 -1
  149. package/dist/mai/best50/index.d.ts +0 -271
  150. package/dist/mai/best50/index.js +0 -915
  151. package/dist/mai/best50/index.js.map +0 -1
  152. package/dist/mai/chart/database.js.map +0 -1
  153. package/dist/mai/chart/index.d.ts +0 -238
  154. package/dist/mai/chart/index.js +0 -1281
  155. package/dist/mai/chart/index.js.map +0 -1
  156. package/dist/mai/level50/index.d.ts +0 -28
  157. package/dist/mai/level50/index.js +0 -774
  158. package/dist/mai/level50/index.js.map +0 -1
  159. package/dist/mai/lib/divingFish/index.js.map +0 -1
  160. package/dist/mai/lib/index.js.map +0 -1
  161. package/dist/mai/lib/kamaiTachi/index.js.map +0 -1
  162. package/dist/mai/lib/lxns/index.js.map +0 -1
  163. package/dist/mai/lib/maishift/index.js.map +0 -1
  164. /package/dist/geki/{bests/lib → lib/adapter}/index.d.ts +0 -0
  165. /package/dist/geki/{bests/lib → lib/adapter}/index.js +0 -0
  166. /package/dist/geki/{bests/lib → lib/adapter}/kamaiTachi/index.d.ts +0 -0
  167. /package/dist/geki/{bests/lib → lib/adapter}/kamaiTachi/index.js +0 -0
@@ -1,12 +1,28 @@
1
- import * as bests from "./best50";
2
- import * as chart from "./chart";
3
- import * as level50 from "./level50";
4
1
  import Bunyan from "bunyan";
2
+ import * as database from "./lib/database";
3
+ import * as chart from "./painter/chart";
4
+ import * as bests from "./painter/best50";
5
+ import * as level50 from "./painter/level50";
6
+ import * as lxns from "./lib/adapter/lxns";
7
+ import * as maishift from "./lib/adapter/maishift";
8
+ import * as divingFish from "./lib/adapter/divingFish";
9
+ import * as kamaiTachi from "./lib/adapter/kamaiTachi";
10
+ import * as types from "./type";
5
11
  export declare class Maimai {
6
12
  static logger: Bunyan;
7
13
  }
8
14
  export declare namespace Maimai {
9
- export import Best50 = bests.Best50;
10
- export import Chart = chart.Chart;
11
- export import Level50 = level50.Level50;
15
+ export import Types = types;
16
+ export import Database = database.Database;
17
+ namespace Adapters {
18
+ export import LXNS = lxns.LXNS;
19
+ export import KamaiTachi = kamaiTachi.KamaiTachi;
20
+ export import DivingFish = divingFish.DivingFish;
21
+ export import Maishift = maishift.Maishift;
22
+ }
23
+ namespace Painters {
24
+ export import Best50 = bests.Best50Painter;
25
+ export import Level50 = level50.Level50Painter;
26
+ export import Chart = chart.ChartPainter;
27
+ }
12
28
  }
package/dist/mai/index.js CHANGED
@@ -27,10 +27,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.Maimai = void 0;
30
- const bests = __importStar(require("./best50"));
31
- const chart = __importStar(require("./chart"));
32
- const level50 = __importStar(require("./level50"));
33
30
  const bunyan_1 = __importDefault(require("bunyan"));
31
+ const database = __importStar(require("./lib/database"));
32
+ const chart = __importStar(require("./painter/chart"));
33
+ const bests = __importStar(require("./painter/best50"));
34
+ const level50 = __importStar(require("./painter/level50"));
35
+ const lxns = __importStar(require("./lib/adapter/lxns"));
36
+ const maishift = __importStar(require("./lib/adapter/maishift"));
37
+ const divingFish = __importStar(require("./lib/adapter/divingFish"));
38
+ const kamaiTachi = __importStar(require("./lib/adapter/kamaiTachi"));
39
+ const types = __importStar(require("./type"));
34
40
  class Maimai {
35
41
  static logger = new bunyan_1.default({
36
42
  name: "maidraw.maimai",
@@ -65,8 +71,20 @@ class Maimai {
65
71
  }
66
72
  exports.Maimai = Maimai;
67
73
  (function (Maimai) {
68
- Maimai.Best50 = bests.Best50;
69
- Maimai.Chart = chart.Chart;
70
- Maimai.Level50 = level50.Level50;
74
+ Maimai.Types = types;
75
+ Maimai.Database = database.Database;
76
+ let Adapters;
77
+ (function (Adapters) {
78
+ Adapters.LXNS = lxns.LXNS;
79
+ Adapters.KamaiTachi = kamaiTachi.KamaiTachi;
80
+ Adapters.DivingFish = divingFish.DivingFish;
81
+ Adapters.Maishift = maishift.Maishift;
82
+ })(Adapters = Maimai.Adapters || (Maimai.Adapters = {}));
83
+ let Painters;
84
+ (function (Painters) {
85
+ Painters.Best50 = bests.Best50Painter;
86
+ Painters.Level50 = level50.Level50Painter;
87
+ Painters.Chart = chart.ChartPainter;
88
+ })(Painters = Maimai.Painters || (Maimai.Painters = {}));
71
89
  })(Maimai || (exports.Maimai = Maimai = {}));
72
90
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mai/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAClC,+CAAiC;AACjC,mDAAqC;AACrC,oDAA4B;AAE5B,MAAa,MAAM;IACR,MAAM,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC;QAC9B,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE;YACL;gBACI,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,CAAC,GAAG,EAAE;oBACT,QAAQ,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;wBAC5B,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,MAAM;4BACP,OAAO,gBAAM,CAAC,IAAI,CAAC;wBACvB,KAAK,MAAM;4BACP,OAAO,gBAAM,CAAC,IAAI,CAAC;wBACvB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB;4BACI,OAAO,gBAAM,CAAC,IAAI,CAAC;oBAC3B,CAAC;gBACL,CAAC,CAAC,EAAE;aACP;YACD;gBACI,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,gBAAM,CAAC,KAAK;aACtB;SACJ;KACJ,CAAC,CAAC;;AA9BP,wBA+BC;AACD,WAAiB,MAAM;IACL,aAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IACtB,YAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IACpB,cAAO,GAAG,OAAO,CAAC,OAAO,CAAC;AAC5C,CAAC,EAJgB,MAAM,sBAAN,MAAM,QAItB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mai/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA4B;AAE5B,yDAA2C;AAE3C,uDAAyC;AACzC,wDAA0C;AAC1C,2DAA6C;AAE7C,yDAA2C;AAC3C,iEAAmD;AACnD,qEAAuD;AACvD,qEAAuD;AAEvD,8CAAgC;AAEhC,MAAa,MAAM;IACR,MAAM,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC;QAC9B,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE;YACL;gBACI,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,CAAC,GAAG,EAAE;oBACT,QAAQ,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;wBAC5B,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,MAAM;4BACP,OAAO,gBAAM,CAAC,IAAI,CAAC;wBACvB,KAAK,MAAM;4BACP,OAAO,gBAAM,CAAC,IAAI,CAAC;wBACvB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB;4BACI,OAAO,gBAAM,CAAC,IAAI,CAAC;oBAC3B,CAAC;gBACL,CAAC,CAAC,EAAE;aACP;YACD;gBACI,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,gBAAM,CAAC,KAAK;aACtB;SACJ;KACJ,CAAC,CAAC;;AA9BP,wBA+BC;AACD,WAAiB,MAAM;IACL,YAAK,GAAG,KAAK,CAAC;IAEd,eAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAE3C,IAAiB,QAAQ,CAKxB;IALD,WAAiB,QAAQ;QACP,aAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACjB,mBAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACnC,mBAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACnC,iBAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAC/C,CAAC,EALgB,QAAQ,GAAR,eAAQ,KAAR,eAAQ,QAKxB;IAED,IAAiB,QAAQ,CAIxB;IAJD,WAAiB,QAAQ;QACP,eAAM,GAAG,KAAK,CAAC,aAAa,CAAC;QAC7B,gBAAO,GAAG,OAAO,CAAC,cAAc,CAAC;QACjC,cAAK,GAAG,KAAK,CAAC,YAAY,CAAC;IAC7C,CAAC,EAJgB,QAAQ,GAAR,eAAQ,KAAR,eAAQ,QAIxB;AACL,CAAC,EAjBgB,MAAM,sBAAN,MAAM,QAiBtB"}
@@ -1,5 +1,5 @@
1
+ import { IChart, IScore } from "../../../type";
1
2
  import ScoreTrackerAdapter from "..";
2
- import { Best50 } from "../../best50";
3
3
  export declare namespace DivingFish {
4
4
  interface IPlayResult {
5
5
  achievements: number;
@@ -64,16 +64,16 @@ export declare class DivingFish extends ScoreTrackerAdapter {
64
64
  baseURL?: string;
65
65
  });
66
66
  getPlayerBest50(username: string): Promise<{
67
- new: Best50.IScore[];
68
- old: Best50.IScore[];
67
+ new: IScore[];
68
+ old: IScore[];
69
69
  } | null>;
70
- getMaiDrawChartList(): Promise<Best50.IChart[]>;
70
+ getMaiDrawChartList(): Promise<IChart[]>;
71
71
  getPlayerInfo(username: string): Promise<{
72
72
  name: string;
73
73
  rating: number;
74
74
  } | null>;
75
- getPlayerRawBest50(username: string): Promise<Best50.DivingFish.IBest50Response | undefined>;
76
- getSong(id: string): Promise<Best50.DivingFish.ISongData | null>;
75
+ getPlayerRawBest50(username: string): Promise<DivingFish.IBest50Response | undefined>;
76
+ getSong(id: string): Promise<DivingFish.ISongData | null>;
77
77
  getSongList(): Promise<DivingFish.ISongListResponse>;
78
78
  private toMaiDrawScore;
79
79
  getPlayerProfilePicture(username: string): Promise<Buffer | null>;
@@ -4,10 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.DivingFish = void 0;
7
- const type_1 = require("../../type");
7
+ const type_1 = require("../../../type");
8
8
  const __1 = __importDefault(require(".."));
9
- const chart_1 = require("../../chart");
10
- const best50_1 = require("../../best50");
9
+ const database_1 = require("../../database");
11
10
  class DivingFish extends __1.default {
12
11
  constructor({ auth, baseURL = "https://www.diving-fish.com/api/maimaidxprober/", }) {
13
12
  super({ baseURL });
@@ -19,10 +18,10 @@ class DivingFish extends __1.default {
19
18
  return null;
20
19
  }
21
20
  let chartList = [];
22
- if (chart_1.Chart.Database.hasLocalDatabase()) {
21
+ if (database_1.Database.hasLocalDatabase()) {
23
22
  chartList = pbs.records
24
23
  .map((chart) => {
25
- return chart_1.Chart.Database.getLocalChart(chart.song_id, chart.level_index);
24
+ return database_1.Database.getLocalChart(chart.song_id, chart.level_index);
26
25
  })
27
26
  .filter((v) => v !== null)
28
27
  .map((v) => {
@@ -118,64 +117,64 @@ class DivingFish extends __1.default {
118
117
  combo: (() => {
119
118
  switch (score.fc) {
120
119
  case "fc":
121
- return best50_1.Best50.EComboTypes.FULL_COMBO;
120
+ return type_1.EComboTypes.FULL_COMBO;
122
121
  case "fcp":
123
- return best50_1.Best50.EComboTypes.FULL_COMBO_PLUS;
122
+ return type_1.EComboTypes.FULL_COMBO_PLUS;
124
123
  case "ap":
125
- return best50_1.Best50.EComboTypes.ALL_PERFECT;
124
+ return type_1.EComboTypes.ALL_PERFECT;
126
125
  case "app":
127
- return best50_1.Best50.EComboTypes.ALL_PERFECT_PLUS;
126
+ return type_1.EComboTypes.ALL_PERFECT_PLUS;
128
127
  default:
129
- return best50_1.Best50.EComboTypes.NONE;
128
+ return type_1.EComboTypes.NONE;
130
129
  }
131
130
  })(),
132
131
  sync: (() => {
133
132
  switch (score.fs) {
134
133
  case "sync":
135
- return best50_1.Best50.ESyncTypes.SYNC_PLAY;
134
+ return type_1.ESyncTypes.SYNC_PLAY;
136
135
  case "fs":
137
- return best50_1.Best50.ESyncTypes.FULL_SYNC;
136
+ return type_1.ESyncTypes.FULL_SYNC;
138
137
  case "fsp":
139
- return best50_1.Best50.ESyncTypes.FULL_SYNC_PLUS;
138
+ return type_1.ESyncTypes.FULL_SYNC_PLUS;
140
139
  case "fsd":
141
- return best50_1.Best50.ESyncTypes.FULL_SYNC_DX;
140
+ return type_1.ESyncTypes.FULL_SYNC_DX;
142
141
  case "fsdp":
143
- return best50_1.Best50.ESyncTypes.FULL_SYNC_DX_PLUS;
142
+ return type_1.ESyncTypes.FULL_SYNC_DX_PLUS;
144
143
  default:
145
- return best50_1.Best50.ESyncTypes.NONE;
144
+ return type_1.ESyncTypes.NONE;
146
145
  }
147
146
  })(),
148
147
  achievement: score.achievements,
149
148
  achievementRank: (() => {
150
149
  switch (score.rate) {
151
150
  case "c":
152
- return best50_1.Best50.EAchievementTypes.C;
151
+ return type_1.EAchievementTypes.C;
153
152
  case "b":
154
- return best50_1.Best50.EAchievementTypes.B;
153
+ return type_1.EAchievementTypes.B;
155
154
  case "bb":
156
- return best50_1.Best50.EAchievementTypes.BB;
155
+ return type_1.EAchievementTypes.BB;
157
156
  case "bbb":
158
- return best50_1.Best50.EAchievementTypes.BBB;
157
+ return type_1.EAchievementTypes.BBB;
159
158
  case "a":
160
- return best50_1.Best50.EAchievementTypes.A;
159
+ return type_1.EAchievementTypes.A;
161
160
  case "aa":
162
- return best50_1.Best50.EAchievementTypes.AA;
161
+ return type_1.EAchievementTypes.AA;
163
162
  case "aaa":
164
- return best50_1.Best50.EAchievementTypes.AAA;
163
+ return type_1.EAchievementTypes.AAA;
165
164
  case "s":
166
- return best50_1.Best50.EAchievementTypes.S;
165
+ return type_1.EAchievementTypes.S;
167
166
  case "sp":
168
- return best50_1.Best50.EAchievementTypes.SP;
167
+ return type_1.EAchievementTypes.SP;
169
168
  case "ss":
170
- return best50_1.Best50.EAchievementTypes.SS;
169
+ return type_1.EAchievementTypes.SS;
171
170
  case "ssp":
172
- return best50_1.Best50.EAchievementTypes.SSP;
171
+ return type_1.EAchievementTypes.SSP;
173
172
  case "sss":
174
- return best50_1.Best50.EAchievementTypes.SSS;
173
+ return type_1.EAchievementTypes.SSS;
175
174
  case "sssp":
176
- return best50_1.Best50.EAchievementTypes.SSSP;
175
+ return type_1.EAchievementTypes.SSSP;
177
176
  default:
178
- return best50_1.Best50.EAchievementTypes.D;
177
+ return type_1.EAchievementTypes.D;
179
178
  }
180
179
  })(),
181
180
  dxRating: score.ra,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/mai/lib/adapter/divingFish/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { Cache } from "../../lib/cache";
1
+ import { Cache } from "../../../lib/cache";
2
2
  import axios, { AxiosInstance } from "axios";
3
- import { Best50 } from "../best50";
3
+ import { IScore } from "../../type";
4
4
  export default abstract class ScoreTrackerAdapter {
5
5
  private static _cache;
6
6
  protected get cache(): Cache;
@@ -16,8 +16,8 @@ export default abstract class ScoreTrackerAdapter {
16
16
  cacheTTL?: number, options?: axios.AxiosRequestConfig): Promise<T | undefined>;
17
17
  protected post<T>(endpoint: string, data?: any): Promise<T | undefined>;
18
18
  abstract getPlayerBest50(username: string): Promise<{
19
- new: Best50.IScore[];
20
- old: Best50.IScore[];
19
+ new: IScore[];
20
+ old: IScore[];
21
21
  } | null>;
22
22
  abstract getPlayerInfo(username: string): Promise<{
23
23
  name: string;
@@ -25,14 +25,14 @@ export default abstract class ScoreTrackerAdapter {
25
25
  } | null>;
26
26
  abstract getPlayerProfilePicture(username: string): Promise<Buffer | null>;
27
27
  abstract getPlayerScore(username: string, chartId: number): Promise<{
28
- basic: Best50.IScore | null;
29
- advanced: Best50.IScore | null;
30
- expert: Best50.IScore | null;
31
- master: Best50.IScore | null;
32
- remaster: Best50.IScore | null;
33
- utage: Best50.IScore | null;
28
+ basic: IScore | null;
29
+ advanced: IScore | null;
30
+ expert: IScore | null;
31
+ master: IScore | null;
32
+ remaster: IScore | null;
33
+ utage: IScore | null;
34
34
  }>;
35
35
  abstract getPlayerLevel50(username: string, level: number, page: number, options?: {
36
36
  percise: boolean;
37
- }): Promise<Best50.IScore[] | null>;
37
+ }): Promise<IScore[] | null>;
38
38
  }
@@ -3,8 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const cache_1 = require("../../lib/cache");
7
- const mai_1 = require("..");
6
+ const cache_1 = require("../../../lib/cache");
7
+ const mai_1 = require("../..");
8
8
  const axios_1 = __importDefault(require("axios"));
9
9
  class ScoreTrackerAdapter {
10
10
  static _cache = new cache_1.Cache();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/geki/bests/lib/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mai/lib/adapter/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import ScoreTrackerAdapter from "..";
2
- import { Best50 } from "../../best50";
2
+ import { IScore } from "../../../type";
3
3
  export declare class KamaiTachi extends ScoreTrackerAdapter {
4
4
  private currentVersion;
5
5
  private currentRegion;
@@ -9,19 +9,20 @@ export declare class KamaiTachi extends ScoreTrackerAdapter {
9
9
  region?: "DX" | "EX" | "CN";
10
10
  });
11
11
  versions(): KamaiTachiBuilder;
12
- getPlayerPB(userId: string): Promise<Best50.KamaiTachi.IResponse<{
12
+ getPlayerPB(userId: string): Promise<KamaiTachi.IResponse<{
13
13
  charts: KamaiTachi.IChart[];
14
14
  pbs: KamaiTachi.IPb[];
15
15
  songs: KamaiTachi.ISong[];
16
16
  }> | undefined>;
17
+ getScoreHistory(userId: string, chartId: string): Promise<KamaiTachi.IResponse<KamaiTachi.IScore[]> | undefined>;
17
18
  private toMaiDrawScore;
18
19
  private getDatabaseDifficulty;
19
20
  getPlayerBest50(userId: string, { omnimix, use, }?: {
20
21
  omnimix?: boolean;
21
22
  use?: "AP" | "FC" | "ALL";
22
23
  }): Promise<{
23
- new: Best50.IScore[];
24
- old: Best50.IScore[];
24
+ new: IScore[];
25
+ old: IScore[];
25
26
  } | null>;
26
27
  getPlayerInfo(userId: string, options?: {
27
28
  omnimix?: boolean;
@@ -33,51 +34,51 @@ export declare class KamaiTachi extends ScoreTrackerAdapter {
33
34
  private getPlayerProfileRaw;
34
35
  getPlayerProfilePicture(userId: string): Promise<Buffer | null>;
35
36
  getPlayerScore(username: string, chartId: number): Promise<{
36
- basic: Best50.IScore | null;
37
- advanced: Best50.IScore | null;
38
- expert: Best50.IScore | null;
39
- master: Best50.IScore | null;
40
- remaster: Best50.IScore | null;
41
- utage: Best50.IScore | null;
37
+ basic: IScore | null;
38
+ advanced: IScore | null;
39
+ expert: IScore | null;
40
+ master: IScore | null;
41
+ remaster: IScore | null;
42
+ utage: IScore | null;
42
43
  }>;
43
44
  getPlayerLevel50(username: string, level: number, page: number, options?: {
44
45
  percise: boolean;
45
- }): Promise<Best50.IScore[] | null>;
46
+ }): Promise<IScore[] | null>;
46
47
  private levelBoundChecker;
47
48
  }
48
49
  export declare class KamaiTachiBuilder {
49
- maimai(region?: "DX" | "EX"): Best50.KamaiTachi;
50
- maimaiPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
51
- green(region?: "DX" | "EX"): Best50.KamaiTachi;
52
- greenPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
53
- orange(region?: "DX" | "EX"): Best50.KamaiTachi;
54
- orangePlus(region?: "DX" | "EX"): Best50.KamaiTachi;
55
- pink(region?: "DX" | "EX"): Best50.KamaiTachi;
56
- pinkPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
57
- murasaki(region?: "DX" | "EX"): Best50.KamaiTachi;
58
- murasakiPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
59
- milk(region?: "DX" | "EX"): Best50.KamaiTachi;
60
- milkPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
61
- finale(region?: "DX" | "EX"): Best50.KamaiTachi;
62
- dx(region?: "DX" | "EX"): Best50.KamaiTachi;
63
- dxPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
64
- splash(region?: "DX" | "EX"): Best50.KamaiTachi;
65
- splashPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
66
- universe(region?: "DX" | "EX"): Best50.KamaiTachi;
67
- universePlus(region?: "DX" | "EX"): Best50.KamaiTachi;
68
- festival(region?: "DX" | "EX"): Best50.KamaiTachi;
69
- festivalPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
70
- buddies(region?: "DX" | "EX"): Best50.KamaiTachi;
71
- buddiesPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
72
- prism(region?: "DX" | "EX"): Best50.KamaiTachi;
73
- prismPlus(region?: "DX" | "EX"): Best50.KamaiTachi;
50
+ maimai(region?: "DX" | "EX"): KamaiTachi;
51
+ maimaiPlus(region?: "DX" | "EX"): KamaiTachi;
52
+ green(region?: "DX" | "EX"): KamaiTachi;
53
+ greenPlus(region?: "DX" | "EX"): KamaiTachi;
54
+ orange(region?: "DX" | "EX"): KamaiTachi;
55
+ orangePlus(region?: "DX" | "EX"): KamaiTachi;
56
+ pink(region?: "DX" | "EX"): KamaiTachi;
57
+ pinkPlus(region?: "DX" | "EX"): KamaiTachi;
58
+ murasaki(region?: "DX" | "EX"): KamaiTachi;
59
+ murasakiPlus(region?: "DX" | "EX"): KamaiTachi;
60
+ milk(region?: "DX" | "EX"): KamaiTachi;
61
+ milkPlus(region?: "DX" | "EX"): KamaiTachi;
62
+ finale(region?: "DX" | "EX"): KamaiTachi;
63
+ dx(region?: "DX" | "EX"): KamaiTachi;
64
+ dxPlus(region?: "DX" | "EX"): KamaiTachi;
65
+ splash(region?: "DX" | "EX"): KamaiTachi;
66
+ splashPlus(region?: "DX" | "EX"): KamaiTachi;
67
+ universe(region?: "DX" | "EX"): KamaiTachi;
68
+ universePlus(region?: "DX" | "EX"): KamaiTachi;
69
+ festival(region?: "DX" | "EX"): KamaiTachi;
70
+ festivalPlus(region?: "DX" | "EX"): KamaiTachi;
71
+ buddies(region?: "DX" | "EX"): KamaiTachi;
72
+ buddiesPlus(region?: "DX" | "EX"): KamaiTachi;
73
+ prism(region?: "DX" | "EX"): KamaiTachi;
74
+ prismPlus(region?: "DX" | "EX"): KamaiTachi;
74
75
  CN(): {
75
- DX(): Best50.KamaiTachi;
76
- DX2021(): Best50.KamaiTachi;
77
- DX2022(): Best50.KamaiTachi;
78
- DX2023(): Best50.KamaiTachi;
79
- DX2024(): Best50.KamaiTachi;
80
- DX2025(): Best50.KamaiTachi;
76
+ DX(): KamaiTachi;
77
+ DX2021(): KamaiTachi;
78
+ DX2022(): KamaiTachi;
79
+ DX2023(): KamaiTachi;
80
+ DX2024(): KamaiTachi;
81
+ DX2025(): KamaiTachi;
81
82
  };
82
83
  }
83
84
  export declare namespace KamaiTachi {
@@ -111,6 +112,47 @@ export declare namespace KamaiTachi {
111
112
  searchTerms: string[];
112
113
  title: string;
113
114
  }
115
+ interface IScore {
116
+ calculatedData: {
117
+ rate: number;
118
+ };
119
+ chartID: string;
120
+ comment: string | null;
121
+ game: string;
122
+ highlight: boolean;
123
+ importType: string;
124
+ isPrimary: boolean;
125
+ playtype: string;
126
+ scoreData: {
127
+ percent: number;
128
+ lamp: string;
129
+ judgements: {
130
+ pcrit?: number;
131
+ perfect?: number;
132
+ great?: number;
133
+ good?: number;
134
+ miss?: number;
135
+ };
136
+ optional: {
137
+ fast: number;
138
+ slow: number;
139
+ maxCombo: number;
140
+ enumIndexes: any;
141
+ };
142
+ grade: string;
143
+ enumIndexes: {
144
+ lamp: number;
145
+ grade: number;
146
+ };
147
+ };
148
+ scoreID: string;
149
+ scoreMeta: any;
150
+ service: string;
151
+ songID: number;
152
+ timeAchieved: number;
153
+ timeAdded: number;
154
+ userID: number;
155
+ }
114
156
  interface IPb {
115
157
  chartID: string;
116
158
  userID: number;
@@ -4,11 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.KamaiTachiBuilder = exports.KamaiTachi = void 0;
7
- const type_1 = require("../../type");
8
7
  const __1 = __importDefault(require(".."));
9
- const best50_1 = require("../../best50");
10
- const chart_1 = require("../../chart");
11
- const util_1 = require("../../../lib/util");
8
+ const util_1 = require("../../util");
9
+ const type_1 = require("../../../type");
10
+ const database_1 = require("../../database");
12
11
  class KamaiTachi extends __1.default {
13
12
  currentVersion;
14
13
  currentRegion;
@@ -23,8 +22,11 @@ class KamaiTachi extends __1.default {
23
22
  async getPlayerPB(userId) {
24
23
  return this.get(`/api/v1/users/${userId}/games/maimaidx/Single/pbs/all`, undefined, 60 * 1000);
25
24
  }
25
+ async getScoreHistory(userId, chartId) {
26
+ return this.get(`/api/v1/users/${userId}/games/maimaidx/Single/scores/${chartId}`, undefined, 60 * 1000);
27
+ }
26
28
  toMaiDrawScore(score, chart, song) {
27
- const localChart = chart_1.Chart.Database.getLocalChart(chart.data.inGameID, this.getDatabaseDifficulty(chart));
29
+ const localChart = database_1.Database.getLocalChart(chart.data.inGameID, this.getDatabaseDifficulty(chart));
28
30
  const internalLevel = localChart
29
31
  ? localChart.events
30
32
  .filter((v) => v.type === "existence")
@@ -70,60 +72,65 @@ class KamaiTachi extends __1.default {
70
72
  combo: (() => {
71
73
  switch (score.scoreData.lamp) {
72
74
  case "FULL COMBO":
73
- return best50_1.Best50.EComboTypes.FULL_COMBO;
75
+ return type_1.EComboTypes.FULL_COMBO;
74
76
  case "FULL COMBO+":
75
- return best50_1.Best50.EComboTypes.FULL_COMBO_PLUS;
77
+ return type_1.EComboTypes.FULL_COMBO_PLUS;
76
78
  case "ALL PERFECT":
77
- return best50_1.Best50.EComboTypes.ALL_PERFECT;
79
+ return type_1.EComboTypes.ALL_PERFECT;
78
80
  case "ALL PERFECT+":
79
- return best50_1.Best50.EComboTypes.ALL_PERFECT_PLUS;
81
+ return type_1.EComboTypes.ALL_PERFECT_PLUS;
80
82
  default:
81
- return best50_1.Best50.EComboTypes.NONE;
83
+ return type_1.EComboTypes.NONE;
82
84
  }
83
85
  })(),
84
- sync: best50_1.Best50.ESyncTypes.NONE,
86
+ sync: type_1.ESyncTypes.NONE,
85
87
  achievement: score.scoreData.percent,
86
88
  achievementRank: (() => {
87
89
  switch (score.scoreData.grade) {
88
90
  case "C":
89
- return best50_1.Best50.EAchievementTypes.C;
91
+ return type_1.EAchievementTypes.C;
90
92
  case "B":
91
- return best50_1.Best50.EAchievementTypes.B;
93
+ return type_1.EAchievementTypes.B;
92
94
  case "BB":
93
- return best50_1.Best50.EAchievementTypes.BB;
95
+ return type_1.EAchievementTypes.BB;
94
96
  case "BBB":
95
- return best50_1.Best50.EAchievementTypes.BBB;
97
+ return type_1.EAchievementTypes.BBB;
96
98
  case "A":
97
- return best50_1.Best50.EAchievementTypes.A;
99
+ return type_1.EAchievementTypes.A;
98
100
  case "AA":
99
- return best50_1.Best50.EAchievementTypes.AA;
101
+ return type_1.EAchievementTypes.AA;
100
102
  case "AAA":
101
- return best50_1.Best50.EAchievementTypes.AAA;
103
+ return type_1.EAchievementTypes.AAA;
102
104
  case "S":
103
- return best50_1.Best50.EAchievementTypes.S;
105
+ return type_1.EAchievementTypes.S;
104
106
  case "S+":
105
- return best50_1.Best50.EAchievementTypes.SP;
107
+ return type_1.EAchievementTypes.SP;
106
108
  case "SS":
107
- return best50_1.Best50.EAchievementTypes.SS;
109
+ return type_1.EAchievementTypes.SS;
108
110
  case "SS+":
109
- return best50_1.Best50.EAchievementTypes.SSP;
111
+ return type_1.EAchievementTypes.SSP;
110
112
  case "SSS":
111
- return best50_1.Best50.EAchievementTypes.SSS;
113
+ return type_1.EAchievementTypes.SSS;
112
114
  case "SSS+":
113
- return best50_1.Best50.EAchievementTypes.SSSP;
115
+ return type_1.EAchievementTypes.SSSP;
114
116
  case "D":
115
117
  default:
116
- return best50_1.Best50.EAchievementTypes.D;
118
+ return type_1.EAchievementTypes.D;
117
119
  }
118
120
  })(),
119
121
  dxRating: internalLevel
120
- ? util_1.Util.Maimai.calculateRating(internalLevel, score.scoreData.percent)
122
+ ? util_1.MaimaiUtil.calculateRating(internalLevel, score.scoreData.percent)
121
123
  : score.calculatedData.rate,
122
124
  dxScore: (() => {
123
125
  return ((score.scoreData.judgements.pcrit || 0) * 3 +
124
126
  (score.scoreData.judgements.perfect || 0) * 2 +
125
127
  (score.scoreData.judgements.great || 0));
126
128
  })(),
129
+ optionalData: {
130
+ kt: {
131
+ chartId: chart.chartID,
132
+ },
133
+ },
127
134
  };
128
135
  }
129
136
  getDatabaseDifficulty(chart) {
@@ -162,11 +169,11 @@ class KamaiTachi extends __1.default {
162
169
  }
163
170
  }
164
171
  const filterIsLocalChartNewVersion = (score) => {
165
- return (chart_1.Chart.Database.getLocalChart(score.chart.data.inGameID, this.getDatabaseDifficulty(score.chart))?.addVersion[this.currentRegion]?.name ==
172
+ return (database_1.Database.getLocalChart(score.chart.data.inGameID, this.getDatabaseDifficulty(score.chart))?.addVersion[this.currentRegion]?.name ==
166
173
  this.currentVersion[this.currentRegion]);
167
174
  };
168
175
  const filterIsLocalChartOldVersion = (score) => {
169
- const addVersion = chart_1.Chart.Database.getLocalChart(score.chart.data.inGameID, this.getDatabaseDifficulty(score.chart))?.addVersion[this.currentRegion]?.name;
176
+ const addVersion = database_1.Database.getLocalChart(score.chart.data.inGameID, this.getDatabaseDifficulty(score.chart))?.addVersion[this.currentRegion]?.name;
170
177
  if (!addVersion)
171
178
  return false;
172
179
  return (KamaiTachi.compareGameVersions(this.currentVersion, KamaiTachi.getGameVersion(addVersion)) > 0);
@@ -183,7 +190,7 @@ class KamaiTachi extends __1.default {
183
190
  }
184
191
  }
185
192
  let newScores = [], oldScores = [];
186
- if (chart_1.Chart.Database.hasLocalDatabase()) {
193
+ if (database_1.Database.hasLocalDatabase()) {
187
194
  newScores = pbs.filter(filterIsLocalChartNewVersion);
188
195
  oldScores = pbs.filter(filterIsLocalChartOldVersion);
189
196
  }