beatsaber-bot-core 0.2.0-dev.9 → 0.2.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (196) hide show
  1. package/lib/api/base/aioclient.d.ts +11 -0
  2. package/lib/api/base/aioclient.js +20 -0
  3. package/lib/api/base/aioclient.js.map +1 -0
  4. package/lib/api/base/blclient.d.ts +18 -0
  5. package/lib/api/base/blclient.js +60 -0
  6. package/lib/api/base/blclient.js.map +1 -0
  7. package/lib/api/base/bsclient.d.ts +17 -0
  8. package/lib/api/base/bsclient.js +75 -0
  9. package/lib/api/base/bsclient.js.map +1 -0
  10. package/lib/api/base/index.d.ts +4 -12
  11. package/lib/api/base/index.js +4 -4
  12. package/lib/api/base/index.js.map +1 -1
  13. package/lib/api/base/ssclient.d.ts +13 -0
  14. package/lib/api/base/ssclient.js +48 -0
  15. package/lib/api/base/ssclient.js.map +1 -0
  16. package/lib/api/composed/beatleader.d.ts +3 -3
  17. package/lib/api/composed/beatleader.js +22 -9
  18. package/lib/api/composed/beatleader.js.map +1 -1
  19. package/lib/api/composed/beatsaver.d.ts +2 -3
  20. package/lib/api/composed/beatsaver.js +2 -1
  21. package/lib/api/composed/beatsaver.js.map +1 -1
  22. package/lib/api/composed/scoresaber.js +5 -1
  23. package/lib/api/composed/scoresaber.js.map +1 -1
  24. package/lib/api/helper.d.ts +19 -0
  25. package/lib/api/helper.js +102 -0
  26. package/lib/api/helper.js.map +1 -0
  27. package/lib/api/index.d.ts +6 -23
  28. package/lib/api/index.js +22 -113
  29. package/lib/api/index.js.map +1 -1
  30. package/lib/api/interfaces/beatsaver/bsmap.d.ts +2 -0
  31. package/lib/api/interfaces/beatsaver/index.d.ts +2 -1
  32. package/lib/api/interfaces/index.d.ts +12 -0
  33. package/lib/api/interfaces/index.js +3 -0
  34. package/lib/{db → api/interfaces}/index.js.map +1 -1
  35. package/lib/api/interfaces/scoresaber/item.d.ts +12 -3
  36. package/lib/api/interfaces/scoresaber/leaderboard.d.ts +10 -0
  37. package/lib/api/interfaces/scoresaber/leaderboard.js +3 -0
  38. package/lib/api/interfaces/scoresaber/leaderboard.js.map +1 -0
  39. package/lib/cmd/bind/bind-beatleader.js +15 -17
  40. package/lib/cmd/bind/bind-beatleader.js.map +1 -1
  41. package/lib/cmd/bind/bind-beatsaver.js +27 -21
  42. package/lib/cmd/bind/bind-beatsaver.js.map +1 -1
  43. package/lib/cmd/bind/bind-id-beatleader.js +8 -10
  44. package/lib/cmd/bind/bind-id-beatleader.js.map +1 -1
  45. package/lib/cmd/bind/bind-id-beatsaver.js +8 -10
  46. package/lib/cmd/bind/bind-id-beatsaver.js.map +1 -1
  47. package/lib/cmd/bind/bind-scoresaber.js +7 -9
  48. package/lib/cmd/bind/bind-scoresaber.js.map +1 -1
  49. package/lib/cmd/bind/index.js +6 -3
  50. package/lib/cmd/bind/index.js.map +1 -1
  51. package/lib/cmd/bsmap/id-search.js +5 -6
  52. package/lib/cmd/bsmap/id-search.js.map +1 -1
  53. package/lib/cmd/bsmap/key-search.js +10 -10
  54. package/lib/cmd/bsmap/key-search.js.map +1 -1
  55. package/lib/cmd/bsmap/latest.js +13 -19
  56. package/lib/cmd/bsmap/latest.js.map +1 -1
  57. package/lib/cmd/config/index.d.ts +12 -0
  58. package/lib/cmd/config/index.js +70 -0
  59. package/lib/cmd/config/index.js.map +1 -0
  60. package/lib/cmd/deprecated/me.d.ts +1 -1
  61. package/lib/cmd/deprecated/me.js +6 -6
  62. package/lib/cmd/deprecated/me.js.map +1 -1
  63. package/lib/cmd/deprecated/tmp.js +2 -0
  64. package/lib/cmd/deprecated/tmp.js.map +1 -1
  65. package/lib/cmd/deprecated/whois.js +2 -2
  66. package/lib/cmd/deprecated/whois.js.map +1 -1
  67. package/lib/cmd/help.js +2 -2
  68. package/lib/cmd/index.js +3 -1
  69. package/lib/cmd/index.js.map +1 -1
  70. package/lib/cmd/rank.js +13 -18
  71. package/lib/cmd/rank.js.map +1 -1
  72. package/lib/cmd/score.d.ts +1 -1
  73. package/lib/cmd/score.js +20 -12
  74. package/lib/cmd/score.js.map +1 -1
  75. package/lib/cmd/subscribe/id-beatleader-score.d.ts +2 -0
  76. package/lib/cmd/subscribe/id-beatleader-score.js +41 -0
  77. package/lib/cmd/subscribe/id-beatleader-score.js.map +1 -0
  78. package/lib/cmd/subscribe/id-beatsaver-mapper.d.ts +2 -0
  79. package/lib/cmd/subscribe/id-beatsaver-mapper.js +42 -0
  80. package/lib/cmd/subscribe/id-beatsaver-mapper.js.map +1 -0
  81. package/lib/cmd/subscribe/index.js +22 -6
  82. package/lib/cmd/subscribe/index.js.map +1 -1
  83. package/lib/cmd/subscribe/unsubscribe.d.ts +4 -3
  84. package/lib/cmd/subscribe/unsubscribe.js +38 -0
  85. package/lib/cmd/subscribe/unsubscribe.js.map +1 -1
  86. package/lib/config.d.ts +21 -4
  87. package/lib/errors/index.d.ts +30 -0
  88. package/lib/errors/index.js +94 -1
  89. package/lib/errors/index.js.map +1 -1
  90. package/lib/i18n/index.js +17 -11
  91. package/lib/i18n/index.js.map +1 -1
  92. package/lib/i18n/parser.d.ts +14 -0
  93. package/lib/i18n/parser.js +165 -0
  94. package/lib/i18n/parser.js.map +1 -0
  95. package/lib/i18n/zh-cn.json +1 -1
  96. package/lib/img-render/components/RankDifficulty.d.ts +3 -2
  97. package/lib/img-render/components/RankDifficulty.js +8 -2
  98. package/lib/img-render/components/RankDifficulty.js.map +1 -1
  99. package/lib/img-render/components/{rankScoreItem.d.ts → bl-rank-score-item.d.ts} +4 -1
  100. package/lib/img-render/components/bl-rank-score-item.js +42 -0
  101. package/lib/img-render/components/bl-rank-score-item.js.map +1 -0
  102. package/lib/img-render/components/{blScoreItem.js → bl-score-item.js} +3 -3
  103. package/lib/img-render/components/bl-score-item.js.map +1 -0
  104. package/lib/img-render/components/scoregraph.js +1 -1
  105. package/lib/img-render/components/scoregraph.js.map +1 -1
  106. package/lib/img-render/components/ss-rank-score-item.d.ts +18 -0
  107. package/lib/img-render/components/ss-rank-score-item.js +42 -0
  108. package/lib/img-render/components/ss-rank-score-item.js.map +1 -0
  109. package/lib/img-render/components/{ssScoreItem.js → ss-score-item.js} +2 -2
  110. package/lib/img-render/components/ss-score-item.js.map +1 -0
  111. package/lib/img-render/index.d.ts +13 -10
  112. package/lib/img-render/index.js +61 -38
  113. package/lib/img-render/index.js.map +1 -1
  114. package/lib/img-render/interfaces.d.ts +2 -0
  115. package/lib/img-render/render.js +1 -1
  116. package/lib/img-render/render.js.map +1 -1
  117. package/lib/img-render/result/bl-player.d.ts +2 -1
  118. package/lib/img-render/result/bl-player.js +7 -4
  119. package/lib/img-render/result/bl-player.js.map +1 -1
  120. package/lib/img-render/result/{bs-score-with-rank.d.ts → bl-score-with-rank.d.ts} +2 -1
  121. package/lib/img-render/result/{bs-score-with-rank.js → bl-score-with-rank.js} +19 -7
  122. package/lib/img-render/result/bl-score-with-rank.js.map +1 -0
  123. package/lib/img-render/result/index.d.ts +3 -3
  124. package/lib/img-render/result/index.js +7 -7
  125. package/lib/img-render/result/index.js.map +1 -1
  126. package/lib/img-render/result/ss-player.d.ts +2 -1
  127. package/lib/img-render/result/ss-player.js +3 -4
  128. package/lib/img-render/result/ss-player.js.map +1 -1
  129. package/lib/img-render/utils/canvas.js +9 -3
  130. package/lib/img-render/utils/canvas.js.map +1 -1
  131. package/lib/img-render/utils/format.d.ts +1 -0
  132. package/lib/img-render/utils/format.js +16 -2
  133. package/lib/img-render/utils/format.js.map +1 -1
  134. package/lib/img-render/utils/qrcode.js +8 -1
  135. package/lib/img-render/utils/qrcode.js.map +1 -1
  136. package/lib/interface/cmd.d.ts +3 -0
  137. package/lib/interface/db/index.d.ts +7 -0
  138. package/lib/interface/db/models.d.ts +5 -0
  139. package/lib/interface/render.d.ts +7 -5
  140. package/lib/schedules/index.d.ts +6 -2
  141. package/lib/schedules/index.js +9 -2
  142. package/lib/schedules/index.js.map +1 -1
  143. package/lib/schedules/interface.d.ts +2 -1
  144. package/lib/schedules/oauthTokenRefreshTask.js +8 -8
  145. package/lib/schedules/oauthTokenRefreshTask.js.map +1 -1
  146. package/lib/schedules/temp.d.ts +2 -1
  147. package/lib/schedules/temp.js +20 -25
  148. package/lib/schedules/temp.js.map +1 -1
  149. package/lib/utils/cache.d.ts +1 -0
  150. package/lib/utils/cache.js +3 -1
  151. package/lib/utils/cache.js.map +1 -1
  152. package/lib/utils/fetch/error.d.ts +9 -0
  153. package/lib/utils/fetch/error.js +27 -0
  154. package/lib/utils/fetch/error.js.map +1 -0
  155. package/lib/utils/fetch/index.d.ts +4 -0
  156. package/lib/utils/fetch/index.js +34 -0
  157. package/lib/utils/fetch/index.js.map +1 -0
  158. package/lib/utils/fetch/ofetch.d.ts +23 -0
  159. package/lib/utils/fetch/ofetch.js +85 -0
  160. package/lib/utils/fetch/ofetch.js.map +1 -0
  161. package/lib/utils/index.d.ts +3 -0
  162. package/lib/utils/index.js +4 -1
  163. package/lib/utils/index.js.map +1 -1
  164. package/lib/utils/preference.d.ts +35 -0
  165. package/lib/utils/preference.js +115 -0
  166. package/lib/utils/preference.js.map +1 -0
  167. package/lib/utils/puppeteer.d.ts +23 -0
  168. package/lib/utils/puppeteer.js +92 -0
  169. package/lib/utils/puppeteer.js.map +1 -0
  170. package/lib/utils/s3.d.ts +11 -0
  171. package/lib/utils/s3.js +60 -0
  172. package/lib/utils/s3.js.map +1 -0
  173. package/lib/ws/beatsaver.js +16 -2
  174. package/lib/ws/beatsaver.js.map +1 -1
  175. package/package.json +12 -4
  176. package/lib/api/base/aioRequest.d.ts +0 -6
  177. package/lib/api/base/aioRequest.js +0 -24
  178. package/lib/api/base/aioRequest.js.map +0 -1
  179. package/lib/api/base/blRequset.d.ts +0 -12
  180. package/lib/api/base/blRequset.js +0 -68
  181. package/lib/api/base/blRequset.js.map +0 -1
  182. package/lib/api/base/bsRequest.d.ts +0 -24
  183. package/lib/api/base/bsRequest.js +0 -64
  184. package/lib/api/base/bsRequest.js.map +0 -1
  185. package/lib/api/base/scRequest.d.ts +0 -6
  186. package/lib/api/base/scRequest.js +0 -28
  187. package/lib/api/base/scRequest.js.map +0 -1
  188. package/lib/db/index.d.ts +0 -0
  189. package/lib/db/index.js +0 -1
  190. package/lib/img-render/components/blScoreItem.js.map +0 -1
  191. package/lib/img-render/components/rankScoreItem.js +0 -38
  192. package/lib/img-render/components/rankScoreItem.js.map +0 -1
  193. package/lib/img-render/components/ssScoreItem.js.map +0 -1
  194. package/lib/img-render/result/bs-score-with-rank.js.map +0 -1
  195. /package/lib/img-render/components/{blScoreItem.d.ts → bl-score-item.d.ts} +0 -0
  196. /package/lib/img-render/components/{ssScoreItem.d.ts → ss-score-item.d.ts} +0 -0
@@ -8,6 +8,9 @@ const result_1 = require("./result");
8
8
  const qrcode_1 = __importDefault(require("./utils/qrcode"));
9
9
  const render_1 = require("../img-render/render");
10
10
  const interface_1 = require("../interface");
11
+ const utils_1 = require("../utils");
12
+ const errors_1 = require("../errors");
13
+ const puppeteer_core_1 = require("puppeteer-core");
11
14
  const noop = () => { };
12
15
  class RenderService {
13
16
  config;
@@ -15,7 +18,7 @@ class RenderService {
15
18
  baseConfig;
16
19
  htmlToImgBufferConverter;
17
20
  urlToImgBufferConverter;
18
- async renderRank(accountId, platform, onRenderStart, onRenderError
21
+ async renderRank(accountId, platform, userPreference, onRenderStart, onRenderError
19
22
  // type: 'remote' | 'local' = this.config.renderMode
20
23
  ) {
21
24
  return this._renderRank(accountId, platform, this.api, {
@@ -23,9 +26,20 @@ class RenderService {
23
26
  type: 'local',
24
27
  onRenderError,
25
28
  onRenderStart,
29
+ userPreference,
30
+ }).catch((e) => {
31
+ if (e instanceof puppeteer_core_1.TimeoutError || e instanceof puppeteer_core_1.PuppeteerError) {
32
+ console.error(e);
33
+ throw new errors_1.ImageRenderError();
34
+ }
35
+ throw e;
26
36
  });
27
37
  }
28
38
  _renderRank = async (accountId, platform, api, renderOpts) => {
39
+ const bg = (await renderOpts.userPreference?.get(platform == interface_1.Platform.SS
40
+ ? utils_1.preferenceKey.ssProfileRenderImg.key
41
+ : utils_1.preferenceKey.blProfileRenderImg.key)) ?? 'https://www.loliapi.com/acg/pc/';
42
+ // get user preference
29
43
  // if (renderOpts.type == 'remote') {
30
44
  // const remoteP = platform == Platform.SS ? 'score-saber' : 'beat-leader'
31
45
  // return renderRemoteRank(
@@ -37,80 +51,89 @@ class RenderService {
37
51
  if (platform == interface_1.Platform.BL) {
38
52
  const { scores, userInfo } = await api.BeatLeader.getPlayerScoresWithUserInfo(accountId);
39
53
  //
40
- return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getBLPlayerComp)(scores, userInfo)), renderOpts.onRenderStart, renderOpts.onRenderError);
54
+ return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getBLPlayerComp)(scores, userInfo, bg)), renderOpts.onRenderStart, renderOpts.onRenderError);
41
55
  }
42
56
  const { scores, userInfo } = await api.ScoreSaber.getPlayerRecentScoreWithUserInfo(accountId);
43
- return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getSSPlayerComp)(scores, userInfo)), renderOpts.onRenderStart, renderOpts.onRenderError);
57
+ return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getSSPlayerComp)(scores, userInfo, bg)), renderOpts.onRenderStart, renderOpts.onRenderError);
44
58
  };
45
- async renderScore(scoreId, platform, onRenderStart, onRenderError
59
+ async renderScore(scoreId, platform, userPreference, onRenderStart, onRenderError
46
60
  // type: 'remote' | 'local' = this.config.renderMode
47
61
  ) {
48
62
  return this._renderScore(scoreId, platform, this.api, {
49
63
  ...this.baseConfig,
50
64
  type: 'local',
65
+ userPreference,
51
66
  onRenderError,
52
67
  onRenderStart,
68
+ }).catch((e) => {
69
+ if (e instanceof puppeteer_core_1.TimeoutError || e instanceof puppeteer_core_1.PuppeteerError) {
70
+ console.error(e);
71
+ throw new errors_1.ImageRenderError();
72
+ }
73
+ throw e;
53
74
  });
54
75
  }
55
76
  _renderScore = async (scoreId, platform, api, renderOpts) => {
56
- const remoteP = 'beat-leader';
57
- // if (renderOpts.type == 'remote') {
58
- // const remoteP = platform == Platform.SS ? 'score-saber' : 'beat-leader'
59
- // return renderRemoteScore(scoreId, remoteP, renderOpts as RemoteRenderOpts)
60
- // }
61
- const { score, statistic, bsor, bsMap } = await api.BeatLeader.withRetry(3)
62
- .onRetry((times, e) => {
63
- console.log(`retrying ${times} due to ${e}`);
64
- })
65
- .getScoreAndBSMapByScoreId(scoreId)
66
- .catch((e) => {
67
- throw Error('渲染错误');
68
- });
69
- const { aroundScores, regionTopScores, difficulties } = await api.BeatLeader.withRetry(3).getAroundScoreAndRegionScoreByRankAndPage(score.leaderboardId, score.rank, score.player.country);
70
- // api.BeatLeader
71
- // const qrcodeUrl = await createQrcode(
72
- // `https://replay.beatleader.xyz/?scoreId=${score.id}`
73
- // )
74
- return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getBLRankScoreComp)(score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor)), renderOpts.onRenderStart, renderOpts.onRenderError);
77
+ const bg = (await renderOpts?.userPreference?.get(utils_1.preferenceKey.blScoreImg.key)) ?? 'https://www.loliapi.com/acg/pc/';
78
+ try {
79
+ const { score, statistic, bsor, bsMap } = await api.BeatLeader.getScoreAndBSMapByScoreId(scoreId);
80
+ const { aroundScores, regionTopScores, difficulties } = await api.BeatLeader.getAroundScoreAndRegionScoreByRankAndPage(score.leaderboardId, score.rank, score.player.country);
81
+ return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getBLRankScoreComp)(score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, bg)), renderOpts.onRenderStart, renderOpts.onRenderError);
82
+ }
83
+ catch (e) {
84
+ if (e instanceof errors_1.RequestError) {
85
+ throw e;
86
+ }
87
+ throw new errors_1.ImageRenderError();
88
+ }
75
89
  };
76
- async renderMapById(mapId, onRenderStart, onRenderError
90
+ async renderMapById(mapId, userPreference, onRenderStart, onRenderError
77
91
  // type: 'remote' | 'local' = this.config.renderMode
78
92
  ) {
79
93
  const map = await this.api.BeatSaver.searchMapById(mapId);
80
94
  return this._renderMap(map, {
81
95
  ...this.baseConfig,
82
96
  type: 'local',
97
+ userPreference,
83
98
  onRenderError,
84
99
  onRenderStart,
100
+ }).catch((e) => {
101
+ if (e instanceof puppeteer_core_1.TimeoutError || e instanceof puppeteer_core_1.PuppeteerError) {
102
+ console.error(e);
103
+ throw new errors_1.ImageRenderError();
104
+ }
105
+ throw e;
85
106
  });
86
107
  }
87
- async renderMap(map, onRenderStart = noop, onRenderError = noop
108
+ async renderMap(map, userPreference, onRenderStart = noop, onRenderError = noop
88
109
  // type: 'remote' | 'local' = this.config.renderMode
89
110
  ) {
90
111
  return this._renderMap(map, {
91
112
  ...this.baseConfig,
92
113
  type: 'local',
114
+ userPreference,
93
115
  onRenderError,
94
116
  onRenderStart,
117
+ }).catch((e) => {
118
+ if (e instanceof puppeteer_core_1.TimeoutError || e instanceof puppeteer_core_1.PuppeteerError) {
119
+ console.error(e);
120
+ throw new errors_1.ImageRenderError();
121
+ }
122
+ throw e;
95
123
  });
96
124
  }
97
- async renderUrl(url) {
125
+ async renderUrl(url, onRenderStart) {
98
126
  if (this.urlToImgBufferConverter) {
99
- return this.urlToImgBufferConverter(url);
127
+ return this.urlToImgBufferConverter(url, onRenderStart).catch((e) => {
128
+ if (e instanceof puppeteer_core_1.TimeoutError || e instanceof puppeteer_core_1.PuppeteerError) {
129
+ console.error(e);
130
+ throw new errors_1.ImageRenderError();
131
+ }
132
+ throw e;
133
+ });
100
134
  }
101
135
  }
102
136
  _renderMap = async (bsMap, renderOpts) => {
103
- // if (renderOpts.type == 'remote') {
104
- // for (let i = 0; i < 3; i++) {
105
- // const image = await renderRemoteMap(
106
- // bsMap.id,
107
- // renderOpts as RemoteRenderOpts
108
- // )
109
- // if (image) {
110
- // return image
111
- // }
112
- // }
113
- // }
114
137
  const previewQrUrl = await (0, qrcode_1.default)(`https://allpoland.github.io/ArcViewer/?id=${bsMap.id}`);
115
138
  const bsMapQrUrl = await (0, qrcode_1.default)(`https://beatsaver.com/maps/${bsMap.id}`);
116
139
  return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getBSMapComp)(bsMap, bsMapQrUrl, previewQrUrl)), renderOpts.onRenderStart, renderOpts.onRenderError);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/img-render/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/img-render/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { UserPreferenceStore } from '../utils';
1
2
  interface BaseRenderOpts {
2
3
  type: 'local' | 'remote';
3
4
  puppeteer: any;
@@ -5,6 +6,7 @@ interface BaseRenderOpts {
5
6
  onRenderError?: (e: any) => void;
6
7
  customBackground?: string;
7
8
  waitTimeout?: number;
9
+ userPreference?: UserPreferenceStore;
8
10
  }
9
11
  export interface RemoteRenderOpts extends BaseRenderOpts {
10
12
  type: 'remote';
@@ -52,7 +52,7 @@ function App({ children }) {
52
52
  }
53
53
 
54
54
  `;
55
- return ((0, jsx_runtime_1.jsxs)("html", { children: [(0, jsx_runtime_1.jsxs)("head", { children: [(0, jsx_runtime_1.jsx)("link", { href: "https://cdn.jsdelivr.net/npm/daisyui@4.7.2/dist/full.min.css", rel: "stylesheet", type: "text/css" }), (0, jsx_runtime_1.jsx)("script", { src: "https://cdn.tailwindcss.com" }), (0, jsx_runtime_1.jsx)("title", { children: "IMG Render" })] }), (0, jsx_runtime_1.jsx)("body", { className: 'bg-red-400 flex w-fit', children: children }), (0, jsx_runtime_1.jsx)("style", { dangerouslySetInnerHTML: { __html: styles } })] }));
55
+ return ((0, jsx_runtime_1.jsxs)("html", { children: [(0, jsx_runtime_1.jsxs)("head", { children: [(0, jsx_runtime_1.jsx)("link", { href: "https://cdn.jsdelivr.net/npm/daisyui@4.7.2/dist/full.min.css", rel: "stylesheet", type: "text/css" }), (0, jsx_runtime_1.jsx)("script", { src: "https://cdn.tailwindcss.com" }), (0, jsx_runtime_1.jsx)("title", { children: "IMG Render" })] }), (0, jsx_runtime_1.jsx)("body", { className: 'bg-black flex w-fit', children: children }), (0, jsx_runtime_1.jsx)("style", { dangerouslySetInnerHTML: { __html: styles } })] }));
56
56
  }
57
57
  exports.default = App;
58
58
  const renderComponent = (child) => {
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/img-render/render.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,iEAAkD;AAElD,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAkC;IACvD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBhB,CAAA;IACC,OAAO,CACL,6CACE,6CACE,iCACE,IAAI,EAAC,8DAA8D,EACnE,GAAG,EAAC,YAAY,EAChB,IAAI,EAAC,UAAU,GACf,EACF,mCAAQ,GAAG,EAAC,6BAA6B,GAAU,EACnD,2DAAyB,IACpB,EACP,iCAAM,SAAS,EAAE,uBAAuB,YAAG,QAAQ,GAAQ,EAE3D,kCAAO,uBAAuB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAI,IACjD,CACR,CAAA;AACH,CAAC;AAED,kBAAe,GAAG,CAAA;AAEX,MAAM,eAAe,GAAG,CAAC,KAAsB,EAAE,EAAE;IACxD,IAAI,GAAG,GAAG,cAAc,CAAC,cAAc,CAAC,uBAAC,GAAG,cAAE,KAAK,GAAO,CAAC,CAAA;IAC3D,GAAG,GAAG,kBAAkB,GAAG,GAAG,CAAA;IAC9B,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAJY,QAAA,eAAe,mBAI3B;AAEY,QAAA,OAAO,GAAG,uBAAe,CAAA"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/img-render/render.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,iEAAkD;AAElD,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAkC;IACvD,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBhB,CAAA;IACC,OAAO,CACL,6CACE,6CACE,iCACE,IAAI,EAAC,8DAA8D,EACnE,GAAG,EAAC,YAAY,EAChB,IAAI,EAAC,UAAU,GACf,EACF,mCAAQ,GAAG,EAAC,6BAA6B,GAAU,EACnD,2DAAyB,IACpB,EACP,iCAAM,SAAS,EAAE,qBAAqB,YAAG,QAAQ,GAAQ,EAEzD,kCAAO,uBAAuB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAI,IACjD,CACR,CAAA;AACH,CAAC;AAED,kBAAe,GAAG,CAAA;AAEX,MAAM,eAAe,GAAG,CAAC,KAAsB,EAAE,EAAE;IACxD,IAAI,GAAG,GAAG,cAAc,CAAC,cAAc,CAAC,uBAAC,GAAG,cAAE,KAAK,GAAO,CAAC,CAAA;IAC3D,GAAG,GAAG,kBAAkB,GAAG,GAAG,CAAA;IAC9B,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAJY,QAAA,eAAe,mBAI3B;AAEY,QAAA,OAAO,GAAG,uBAAe,CAAA"}
@@ -2,6 +2,7 @@ interface BLPlayerInfoProps {
2
2
  beatleaderItems: any;
3
3
  user: any;
4
4
  params?: Record<string, string>;
5
+ bg: string;
5
6
  }
6
- export default function BLPlayerPage({ beatleaderItems, user, params, }: BLPlayerInfoProps): import("react/jsx-runtime").JSX.Element;
7
+ export default function BLPlayerPage({ beatleaderItems: items, user, params, bg, }: BLPlayerInfoProps): import("react/jsx-runtime").JSX.Element;
7
8
  export {};
@@ -31,14 +31,17 @@ const jsx_runtime_1 = require("react/jsx-runtime");
31
31
  const getPart_1 = __importDefault(require("../utils/bl/getPart"));
32
32
  const socre_badge_1 = __importDefault(require("../components/socre-badge"));
33
33
  const skill_graph_1 = __importDefault(require("../components/skill-graph"));
34
- const blScoreItem_1 = __importDefault(require("../components/blScoreItem"));
34
+ const bl_score_item_1 = __importDefault(require("../components/bl-score-item"));
35
35
  const flag_1 = __importStar(require("../components/flag"));
36
36
  const tw_join_1 = require("../utils/tw-join");
37
37
  const blheadset_1 = require("../utils/bl/blheadset");
38
- function BLPlayerPage({ beatleaderItems, user, params, }) {
38
+ function BLPlayerPage({ beatleaderItems: items, user, params, bg, }) {
39
39
  const part = (0, getPart_1.default)(user);
40
- const bg = 'https://www.loliapi.com/acg/pc/';
41
- return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", { id: 'render-result', className: 'flex flex-col justify-center items-center relative h-[720px] w-[1024px] my-auto', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'bg-blend-darken h-full w-full left-auto absolute right-auto bg-black/[.6] p-4 text-white rounded-lg flex flex-col space-y-2 z-10', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 pb-2", children: [(0, jsx_runtime_1.jsx)("img", { src: user.avater, className: 'h-36 w-36 rounded-md z-10', loading: 'eager' }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-between', children: [(0, jsx_runtime_1.jsx)("span", { className: 'text-3xl font-bold', children: user.name }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex space-x-2 text-md font-bold items-center', children: [(0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [(0, jsx_runtime_1.jsx)(flag_1.EarchIcon, {}), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", user.rank] })] }), (0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [(0, jsx_runtime_1.jsx)(flag_1.default, { flagNationCode: user.country }), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", user.countryRank] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex gap-2 align-items-center ", children: [(0, jsx_runtime_1.jsx)(socre_badge_1.default, { className: "w-auto text-white", name: 'P', count: user.scoreStats.topPlatform }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { className: "w-auto text-white", name: 'H', count: (0, blheadset_1.getHeadsetForHMD)(user.scoreStats.topHMD) }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { className: "w-auto text-white", name: 'R', count: user.scoreStats.rankedPlayCount })] }), (0, jsx_runtime_1.jsxs)("div", { className: (0, tw_join_1.twJoin)('text-4xl font-bold ', ' bg-gradient-to-r bg-clip-text text-transparent from-blue-300 to-red-300', 'text-orange-100'), children: [user.pp, " PP"] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "px-3 flex flex-col justify-end items-center grow", children: [user.badges.length > 0 && ((0, jsx_runtime_1.jsx)("div", { className: "grid grid-cols-3 gap-2 justify-self-center align-items-cener justify-items-center mb-auto mt-2", children: user.badges.map((badge) => ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)("img", { alt: badge.description, src: badge.image, width: '70px', height: '20px', className: "self-center w-[70px] h-5" }, badge.id) }))) })), (0, jsx_runtime_1.jsxs)("div", { className: "grid grid-cols-3 gap-2 align-items-center py-2", children: [(0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'SS+', count: user.scoreStats.sspPlays }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'SS', count: user.scoreStats.ssPlays }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'S+', count: user.scoreStats.spPlays }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'S', count: user.scoreStats.sPlays }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'A', count: user.scoreStats.aPlays })] })] }), (0, jsx_runtime_1.jsx)("div", { className: "ml-auto mr-4 flex justify-center items-center", children: (0, jsx_runtime_1.jsx)(skill_graph_1.default, { factorA: part.accPpPart, factorB: part.techPpPart, factorC: part.passPpPart }) })] }), (0, jsx_runtime_1.jsx)("div", { className: 'grid grid-cols-4 gap-2', children: beatleaderItems.map((item, idx) => ((0, jsx_runtime_1.jsx)(blScoreItem_1.default, { item: item }, idx))) })] }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 rounded-lg absolute h-full object-cover', loading: 'eager' })] }) }));
40
+ const beatleaderItems = items.map((it) => ({
41
+ ...it,
42
+ pinned: it.metadata?.pinnedContexts !== undefined,
43
+ }));
44
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", { id: 'render-result', className: 'flex flex-col justify-center items-center relative h-[720px] w-[1200px] my-auto', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'bg-blend-darken h-full w-full left-auto absolute right-auto bg-black/[.6] p-4 text-white rounded-lg flex flex-col space-y-2 z-10', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 pb-2", children: [(0, jsx_runtime_1.jsx)("img", { src: user.avatar, className: 'h-36 w-36 rounded-md z-10', loading: 'eager' }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-between', children: [(0, jsx_runtime_1.jsx)("span", { className: 'text-3xl font-bold', children: user.name }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex space-x-2 text-md font-bold items-center', children: [(0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [(0, jsx_runtime_1.jsx)(flag_1.EarchIcon, {}), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", user.rank] })] }), (0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [(0, jsx_runtime_1.jsx)(flag_1.default, { flagNationCode: user.country }), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", user.countryRank] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex gap-2 align-items-center ", children: [(0, jsx_runtime_1.jsx)(socre_badge_1.default, { className: "w-auto text-white", name: 'P', count: user.scoreStats.topPlatform }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { className: "w-auto text-white", name: 'H', count: (0, blheadset_1.getHeadsetForHMD)(user.scoreStats.topHMD) }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { className: "w-auto text-white", name: 'R', count: user.scoreStats.rankedPlayCount })] }), (0, jsx_runtime_1.jsxs)("div", { className: (0, tw_join_1.twJoin)('text-4xl font-bold ', ' bg-gradient-to-r bg-clip-text text-transparent from-blue-300 to-red-300', 'text-orange-100'), children: [user.pp, " PP"] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "px-3 flex flex-col justify-end items-center grow", children: [user.badges.length > 0 && ((0, jsx_runtime_1.jsx)("div", { className: "grid grid-cols-3 gap-2 justify-self-center align-items-cener justify-items-center mb-auto mt-2", children: user.badges.map((badge) => ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)("img", { alt: badge.description, src: badge.image, width: '70px', height: '20px', className: "self-center w-[70px] h-5" }, badge.id) }))) })), (0, jsx_runtime_1.jsxs)("div", { className: "grid grid-cols-3 gap-2 align-items-center py-2", children: [(0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'SS+', count: user.scoreStats.sspPlays }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'SS', count: user.scoreStats.ssPlays }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'S+', count: user.scoreStats.spPlays }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'S', count: user.scoreStats.sPlays }), (0, jsx_runtime_1.jsx)(socre_badge_1.default, { name: 'A', count: user.scoreStats.aPlays })] })] }), (0, jsx_runtime_1.jsx)("div", { className: "ml-auto mr-4 flex justify-center items-center", children: (0, jsx_runtime_1.jsx)(skill_graph_1.default, { factorA: part.accPpPart, factorB: part.techPpPart, factorC: part.passPpPart }) })] }), (0, jsx_runtime_1.jsx)("div", { className: 'grid grid-cols-4 gap-2', children: beatleaderItems.map((item, idx) => ((0, jsx_runtime_1.jsx)(bl_score_item_1.default, { item: item }, idx))) })] }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 mx-auto w-full rounded-lg absolute h-full object-center', loading: 'eager' })] }, 'render-result') }));
42
45
  }
43
46
  exports.default = BLPlayerPage;
44
47
  //# sourceMappingURL=bl-player.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bl-player.js","sourceRoot":"","sources":["../../../src/img-render/result/bl-player.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bl-player.js","sourceRoot":"","sources":["../../../src/img-render/result/bl-player.tsx"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ interface BLScoreProps {
8
8
  difficulties: any[];
9
9
  statistic: any;
10
10
  bsor: BSOR;
11
+ bg: string;
11
12
  }
12
- export default function BLRankScore({ score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, }: BLScoreProps): import("react/jsx-runtime").JSX.Element;
13
+ export default function BLRankScore({ score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, bg, }: BLScoreProps): import("react/jsx-runtime").JSX.Element;
13
14
  export {};
@@ -6,16 +6,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const jsx_runtime_1 = require("react/jsx-runtime");
7
7
  const lucide_react_1 = require("lucide-react");
8
8
  const scoregraph_1 = __importDefault(require("../components/scoregraph"));
9
- const rankScoreItem_1 = require("../../img-render/components/rankScoreItem");
9
+ const bl_rank_score_item_1 = require("../../img-render/components/bl-rank-score-item");
10
10
  const RankDifficulty_1 = require("../../img-render/components/RankDifficulty");
11
11
  const avatar_1 = require("../../img-render/components/base/avatar");
12
12
  const utils_1 = require("../../img-render/utils");
13
13
  const progressbar_1 = __importDefault(require("../../img-render/components/progressbar"));
14
- function BLRankScore({ score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, }) {
15
- const bg = 'https://www.loliapi.com/acg/pc/';
16
- return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-center items-center relative h-[720px] w-[1165px] my-auto rounded-none', id: "render-result", children: [(0, jsx_runtime_1.jsx)("div", { className: 'bg-blend-darken h-full w-full left-auto absolute right-auto bg-black/[.6] p-4 text-white flex flex-col justify-between z-10', children: (0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between items-start gap-2 grow', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col items-start justify-between text-xl font-bold grow h-full", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 items-center justify-between text-2xl font-bold", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-16 w-16 rounded-full', src: score.player.avatar, fallback: score.player.name.slice(0, 1) }), (0, jsx_runtime_1.jsx)("div", { children: score.player.name })] }), (0, jsx_runtime_1.jsx)("div", { className: "text-xl text-ellipsis line-clamp-2", children: score.song.name }), (0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 h-52", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-52 w-52 rounded-md', src: score.song.cover, fallback: score.song.name.slice(0, 1) }), (0, jsx_runtime_1.jsxs)("div", { className: "text-xs font-bold flex flex-col items-start justify-between grow w-full", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-2 items-center text-sm", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-4 w-4 rounded-full', src: bsMap.uploader.avatar, fallback: score.song.mapper.slice(0, 1) }), (0, jsx_runtime_1.jsx)("div", { className: "flex items-center justify-between", children: (0, jsx_runtime_1.jsx)("div", { className: "text-ellipsis line-clamp-1", children: score.song.mapper }) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "text-xs flex gap-2 items-center *:space-x-1 *:flex *:items-center font-normal", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.HeartPulse, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.metadata.bpm.toFixed(0) })] }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Key, { className: 'w-3 h-3' }) }), (0, jsx_runtime_1.jsx)("span", { children: score.song.id.toLowerCase().replaceAll('x', '') })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Clock, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: (0, utils_1.formatDuration)(bsMap.metadata.duration) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center text-ellipsis col-span-2 line-clamp-1", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Calendar, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: (0, utils_1.formatTime)(bsMap.lastPublishedAt) })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center space-x-2 justify-between font-normal", children: [(0, jsx_runtime_1.jsx)(progressbar_1.default, { value: bsMap.stats.score * 100 }), (0, jsx_runtime_1.jsxs)("span", { children: [(bsMap.stats.score * 100).toFixed(2), " %"] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.ThumbsUp, { className: "h-3 w-3 mr-0.5" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.stats.upvotes })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.ThumbsDown, { className: "h-3 w-3 mr-0.5" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.stats.downvotes })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'text-lg min-w-60 flex flex-col leading-6', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex justify-between items-center", children: [(0, jsx_runtime_1.jsxs)("span", { children: [" # ", score.pp.toFixed(2), " PP"] }), (0, jsx_runtime_1.jsxs)("span", { children: [" # ", score.rank] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Accuracy" }), (0, jsx_runtime_1.jsxs)("span", { children: [(score.accuracy * 100).toFixed(2), " %"] })] }), score.fullCombo && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Full Combo" }), (0, jsx_runtime_1.jsx)(lucide_react_1.Check, {})] })), score.maxCombo && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Max Combo" }), (0, jsx_runtime_1.jsx)("span", { children: score.maxCombo })] })), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Missed Notes" }), (0, jsx_runtime_1.jsx)("span", { children: score.missedNotes })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Total Mistakes" }), (0, jsx_runtime_1.jsx)("span", { children: score.missedNotes })] }), score.modifiers && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Modifiers" }), (0, jsx_runtime_1.jsx)("span", { children: score.modifiers })] }))] })] })] }), (0, jsx_runtime_1.jsx)("div", { className: "text-xl font-bold h-24 w-[500px] rounded-lg mt-auto flex items-center justify-evenly gap-2 ", children: difficulties
17
- .filter((it) => it.mode === 1)
18
- .map((diff) => ((0, jsx_runtime_1.jsx)(RankDifficulty_1.RankDifficulty, { difficulty: diff.difficultyName, stars: diff.stars, current: score.difficulty.id === diff.id }, diff.difficultyName))) }), (0, jsx_runtime_1.jsxs)("div", { className: "align-end mt-2 mb-2", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-xl font-bold", children: "AccGraph" }), (0, jsx_runtime_1.jsx)(scoregraph_1.default, { scoreId: score.id, scoreInfo: score, statistic: statistic, bsor: bsor, height: 240, width: 480 })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between gap-2 items-center mt-auto', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col items-center gap-2', children: [(0, jsx_runtime_1.jsx)("div", { className: 'text-white font-bold text-3xl mr-auto', children: "Global Rank" }), aroundScores.slice(0, 7).map((aroundScore) => ((0, jsx_runtime_1.jsx)(rankScoreItem_1.RankScoreItem, { name: aroundScore.player.name, date: aroundScore.timepost, countryCode: aroundScore.player.country ?? 'CN', avatar: aroundScore.player.avatar, globalRank: aroundScore.rank, score: aroundScore.modifiedScore, modifiers: aroundScore.modifiers, isRegionRank: false, acc: aroundScore.accuracy, pp: aroundScore.pp, self: aroundScore.player.id === score.playerId }, aroundScore.id)))] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col items-center gap-2', children: [(0, jsx_runtime_1.jsx)("div", { className: 'text-white font-bold text-3xl mr-auto', children: "Region Top Rank" }), regionTopScores.slice(0, 7).map((aroundScore) => ((0, jsx_runtime_1.jsx)(rankScoreItem_1.RankScoreItem, { name: aroundScore.player.name, date: aroundScore.timepost, countryCode: aroundScore.player.country ?? 'CN', avatar: aroundScore.player.avatar, globalRank: aroundScore.rank, score: aroundScore.modifiedScore, modifiers: aroundScore.modifiers, isRegionRank: true, acc: aroundScore.accuracy, pp: aroundScore.pp, self: aroundScore.player.id === score.playerId }, aroundScore.id)))] })] })] }) }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 rounded-lg absolute h-full object-cover w-full', loading: 'eager' })] }) }));
14
+ function BLRankScore({ score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, bg, }) {
15
+ let aroundScore = aroundScores
16
+ .slice(0, 7)
17
+ .map((it) => ({ ...it, template: false }));
18
+ let regionTopScore = regionTopScores
19
+ .slice(0, 7)
20
+ .map((it) => ({ ...it, template: false }));
21
+ if (aroundScore.length < 7) {
22
+ aroundScore = aroundScore.concat(new Array(7 - aroundScore.length).fill({ template: true }));
23
+ }
24
+ if (regionTopScore.length < 7) {
25
+ regionTopScore = regionTopScore.concat(new Array(7 - regionTopScore.length).fill({ template: true }));
26
+ }
27
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-center items-center relative h-[720px] w-[1165px] my-auto rounded-none', id: "render-result", children: [(0, jsx_runtime_1.jsx)("div", { className: 'bg-blend-darken h-full w-full left-auto absolute right-auto bg-black/[.6] p-4 text-white flex flex-col justify-between z-10', children: (0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between items-start gap-2 grow', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col items-start justify-between text-xl font-bold grow h-full", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 items-center justify-between text-2xl font-bold", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-16 w-16 rounded-full', src: score.player.avatar, fallback: score.player.name.slice(0, 1) }), (0, jsx_runtime_1.jsx)("div", { children: score.player.name })] }), (0, jsx_runtime_1.jsx)("div", { className: "text-xl text-ellipsis line-clamp-2", children: score.song.name }), (0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 h-52", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-52 w-52 rounded-md', src: score.song.cover, fallback: score.song.name.slice(0, 1) }), (0, jsx_runtime_1.jsxs)("div", { className: "text-xs font-bold flex flex-col items-start justify-between grow w-full", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-2 items-center text-sm", children: [(0, jsx_runtime_1.jsx)(avatar_1.Avatar, { className: 'h-4 w-4 rounded-full', src: bsMap.uploader.avatar, fallback: score.song.mapper.slice(0, 1) }), (0, jsx_runtime_1.jsx)("div", { className: "flex items-center justify-between", children: (0, jsx_runtime_1.jsx)("div", { className: "text-ellipsis line-clamp-1", children: score.song.mapper }) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "text-xs flex gap-2 items-center *:space-x-1 *:flex *:items-center font-normal", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.HeartPulse, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.metadata.bpm.toFixed(0) })] }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Key, { className: 'w-3 h-3' }) }), (0, jsx_runtime_1.jsx)("span", { children: score.song.id.toLowerCase().replaceAll('x', '') })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Clock, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: (0, utils_1.formatDuration)(bsMap.metadata.duration) })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center text-ellipsis col-span-2 line-clamp-1", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Calendar, { className: "h-3 w-3" }), (0, jsx_runtime_1.jsx)("span", { children: (0, utils_1.formatTime)(bsMap.lastPublishedAt) })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center space-x-2 justify-between font-normal", children: [(0, jsx_runtime_1.jsx)(progressbar_1.default, { value: bsMap.stats.score * 100 }), (0, jsx_runtime_1.jsxs)("span", { children: [(bsMap.stats.score * 100).toFixed(2), " %"] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.ThumbsUp, { className: "h-3 w-3 mr-0.5" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.stats.upvotes })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.ThumbsDown, { className: "h-3 w-3 mr-0.5" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.stats.downvotes })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'text-lg min-w-60 flex flex-col leading-6', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex justify-between items-center", children: [(0, jsx_runtime_1.jsxs)("span", { children: [" # ", score.pp.toFixed(2), " PP"] }), (0, jsx_runtime_1.jsxs)("span", { children: [" # ", score.rank] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Accuracy" }), (0, jsx_runtime_1.jsxs)("span", { children: [(score.accuracy * 100).toFixed(2), " %"] })] }), score.fullCombo && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Full Combo" }), (0, jsx_runtime_1.jsx)(lucide_react_1.Check, {})] })), score.maxCombo && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Max Combo" }), (0, jsx_runtime_1.jsx)("span", { children: score.maxCombo })] })), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Missed Notes" }), (0, jsx_runtime_1.jsx)("span", { children: score.missedNotes })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Total Mistakes" }), (0, jsx_runtime_1.jsx)("span", { children: score.missedNotes })] }), score.modifiers && ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("span", { children: "Modifiers" }), (0, jsx_runtime_1.jsx)("span", { children: score.modifiers })] }))] })] })] }), (0, jsx_runtime_1.jsx)("div", { className: "text-xl font-bold h-24 w-[500px] rounded-lg mt-auto flex items-center justify-evenly gap-2 ", children: bsMap.versions[0].diffs
28
+ .filter((it) => it.characteristic === 'Standard')
29
+ .map((diff) => ((0, jsx_runtime_1.jsx)(RankDifficulty_1.RankDifficulty, { difficulty: diff.difficulty, star: diff.stars, blStar: diff.blStars, current: score?.difficulty?.modeName === diff?.characteristic &&
30
+ score?.difficulty?.difficultyName === diff?.difficulty }, diff.difficulty))) }), (0, jsx_runtime_1.jsxs)("div", { className: "align-end mt-2 mb-2", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-xl font-bold", children: "AccGraph" }), (0, jsx_runtime_1.jsx)(scoregraph_1.default, { scoreId: score.id, scoreInfo: score, statistic: statistic, bsor: bsor, height: 240, width: 480 })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex justify-between gap-2 items-start mt-auto', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col items-start gap-2', children: [(0, jsx_runtime_1.jsx)("div", { className: 'text-white font-bold text-3xl mr-auto', children: "Global Rank" }), aroundScore.map((cur, idx) => !cur.template ? ((0, jsx_runtime_1.jsx)(bl_rank_score_item_1.BlRankScoreItem, { name: cur.player.name, date: cur.timepost, countryCode: cur.player.country ?? 'CN', avatar: cur.player.avatar, globalRank: cur.rank, score: cur.modifiedScore, modifiers: cur.modifiers, isRegionRank: false, acc: cur.accuracy, pp: cur.pp, self: cur.player.id === score.playerId }, cur.id)) : ((0, jsx_runtime_1.jsx)(bl_rank_score_item_1.ScoreItemSkeleton, { isRegionRank: false }, idx)))] }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col items-start gap-2', children: [(0, jsx_runtime_1.jsx)("div", { className: 'text-white font-bold text-3xl mr-auto', children: "Region Top Rank" }), regionTopScore.map((cur, idx) => !cur.template ? ((0, jsx_runtime_1.jsx)(bl_rank_score_item_1.BlRankScoreItem, { name: cur.player.name, date: cur.timepost, countryCode: cur.player.country ?? 'CN', avatar: cur.player.avatar, globalRank: cur.rank, score: cur.modifiedScore, modifiers: cur.modifiers, isRegionRank: true, acc: cur.accuracy, pp: cur.pp, self: cur.player.id === score.playerId }, cur.id)) : ((0, jsx_runtime_1.jsx)(bl_rank_score_item_1.ScoreItemSkeleton, { isRegionRank: true }, idx)))] })] })] }) }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 mx-auto w-full rounded-lg absolute h-full object-center', loading: 'eager' })] }) }));
19
31
  }
20
32
  exports.default = BLRankScore;
21
- //# sourceMappingURL=bs-score-with-rank.js.map
33
+ //# sourceMappingURL=bl-score-with-rank.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bl-score-with-rank.js","sourceRoot":"","sources":["../../../src/img-render/result/bl-score-with-rank.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { BSMap } from '../../api/interfaces/beatsaver';
2
2
  import { BeatLeaderUser, Score } from '../../api/interfaces/beatleader';
3
3
  import { ScoreSaberItem, ScoreSaberUser } from '../../api/interfaces/scoresaber';
4
4
  export declare const getBSMapComp: (bsMap: BSMap, bsMapQrUrl: string, previewQrUrl: string) => import("react/jsx-runtime").JSX.Element;
5
- export declare const getSSPlayerComp: (scores: ScoreSaberItem[], userInfo: ScoreSaberUser) => import("react/jsx-runtime").JSX.Element;
6
- export declare const getBLPlayerComp: (scores: Score[], userInfo: BeatLeaderUser) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const getSSPlayerComp: (scores: ScoreSaberItem[], userInfo: ScoreSaberUser, bg: string) => import("react/jsx-runtime").JSX.Element;
6
+ export declare const getBLPlayerComp: (scores: Score[], userInfo: BeatLeaderUser, bg: string) => import("react/jsx-runtime").JSX.Element;
7
7
  export declare const getBLScoreComp: (score: Score, bsMap: BSMap, statistic: any, bsor: any, qrcodeUrl: string) => import("react/jsx-runtime").JSX.Element;
8
- export declare const getBLRankScoreComp: (score: any, aroundScores: any, regionTopScores: any, difficulties: any, bsMap: any, statistic: any, bsor: any) => import("react/jsx-runtime").JSX.Element;
8
+ export declare const getBLRankScoreComp: (score: any, aroundScores: any, regionTopScores: any, difficulties: any, bsMap: any, statistic: any, bsor: any, bg: any) => import("react/jsx-runtime").JSX.Element;
@@ -9,25 +9,25 @@ const bs_map_1 = __importDefault(require("./bs-map"));
9
9
  const ss_player_1 = __importDefault(require("./ss-player"));
10
10
  const bl_player_1 = __importDefault(require("./bl-player"));
11
11
  const bl_score_1 = require("./bl-score");
12
- const bs_score_with_rank_1 = __importDefault(require("../../img-render/result/bs-score-with-rank"));
12
+ const bl_score_with_rank_1 = __importDefault(require("../../img-render/result/bl-score-with-rank"));
13
13
  const getBSMapComp = (bsMap, bsMapQrUrl, previewQrUrl) => {
14
14
  return ((0, jsx_runtime_1.jsx)(bs_map_1.default, { bsMap: bsMap, bsMapQrUrl: bsMapQrUrl, previewQrUrl: previewQrUrl }));
15
15
  };
16
16
  exports.getBSMapComp = getBSMapComp;
17
- const getSSPlayerComp = (scores, userInfo) => {
18
- return (0, jsx_runtime_1.jsx)(ss_player_1.default, { scoreUser: userInfo, leaderItems: scores });
17
+ const getSSPlayerComp = (scores, userInfo, bg) => {
18
+ return (0, jsx_runtime_1.jsx)(ss_player_1.default, { scoreUser: userInfo, leaderItems: scores, bg: bg });
19
19
  };
20
20
  exports.getSSPlayerComp = getSSPlayerComp;
21
- const getBLPlayerComp = (scores, userInfo) => {
22
- return (0, jsx_runtime_1.jsx)(bl_player_1.default, { user: userInfo, beatleaderItems: scores });
21
+ const getBLPlayerComp = (scores, userInfo, bg) => {
22
+ return (0, jsx_runtime_1.jsx)(bl_player_1.default, { user: userInfo, beatleaderItems: scores, bg: bg });
23
23
  };
24
24
  exports.getBLPlayerComp = getBLPlayerComp;
25
25
  const getBLScoreComp = (score, bsMap, statistic, bsor, qrcodeUrl) => {
26
26
  return ((0, jsx_runtime_1.jsx)(bl_score_1.BLScore, { score: score, bsMap: bsMap, statistic: statistic, bsor: bsor, qrcodeUrl: qrcodeUrl }));
27
27
  };
28
28
  exports.getBLScoreComp = getBLScoreComp;
29
- const getBLRankScoreComp = (score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor) => {
30
- return ((0, jsx_runtime_1.jsx)(bs_score_with_rank_1.default, { score: score, bsMap: bsMap, aroundScores: aroundScores, regionTopScores: regionTopScores, difficulties: difficulties, statistic: statistic, bsor: bsor }));
29
+ const getBLRankScoreComp = (score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, bg) => {
30
+ return ((0, jsx_runtime_1.jsx)(bl_score_with_rank_1.default, { score: score, bsMap: bsMap, aroundScores: aroundScores, regionTopScores: regionTopScores, difficulties: difficulties, statistic: statistic, bsor: bsor, bg: bg }));
31
31
  };
32
32
  exports.getBLRankScoreComp = getBLRankScoreComp;
33
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/img-render/result/index.tsx"],"names":[],"mappings":";;;;;;;AACA,sDAAiC;AACjC,4DAAsC;AACtC,4DAAsC;AACtC,yCAAoC;AAIpC,gGAAgE;AAEzD,MAAM,YAAY,GAAG,CAC1B,KAAY,EACZ,UAAkB,EAClB,YAAoB,EACpB,EAAE;IACF,OAAO,CACL,uBAAC,gBAAU,IACT,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,GAC1B,CACH,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,YAAY,gBAYxB;AACM,MAAM,eAAe,GAAG,CAC7B,MAAwB,EACxB,QAAwB,EACxB,EAAE;IACF,OAAO,uBAAC,mBAAY,IAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAI,CAAA;AACnE,CAAC,CAAA;AALY,QAAA,eAAe,mBAK3B;AAEM,MAAM,eAAe,GAAG,CAAC,MAAe,EAAE,QAAwB,EAAE,EAAE;IAC3E,OAAO,uBAAC,mBAAY,IAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,GAAI,CAAA;AAClE,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B;AAEM,MAAM,cAAc,GAAG,CAC5B,KAAY,EACZ,KAAY,EACZ,SAAc,EACd,IAAS,EACT,SAAiB,EACjB,EAAE;IACF,OAAO,CACL,uBAAC,kBAAO,IACN,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,GACpB,CACH,CAAA;AACH,CAAC,CAAA;AAhBY,QAAA,cAAc,kBAgB1B;AAEM,MAAM,kBAAkB,GAAG,CAChC,KAAK,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,KAAK,EACL,SAAS,EACT,IAAI,EACJ,EAAE;IACF,OAAO,CACL,uBAAC,4BAAW,IACV,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,GACV,CACH,CAAA;AACH,CAAC,CAAA;AApBY,QAAA,kBAAkB,sBAoB9B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/img-render/result/index.tsx"],"names":[],"mappings":";;;;;;;AACA,sDAAiC;AACjC,4DAAsC;AACtC,4DAAsC;AACtC,yCAAoC;AAIpC,gGAAgE;AAEzD,MAAM,YAAY,GAAG,CAC1B,KAAY,EACZ,UAAkB,EAClB,YAAoB,EACpB,EAAE;IACF,OAAO,CACL,uBAAC,gBAAU,IACT,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,GAC1B,CACH,CAAA;AACH,CAAC,CAAA;AAZY,QAAA,YAAY,gBAYxB;AACM,MAAM,eAAe,GAAG,CAC7B,MAAwB,EACxB,QAAwB,EACxB,EAAU,EACV,EAAE;IACF,OAAO,uBAAC,mBAAY,IAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,GAAI,CAAA;AAC3E,CAAC,CAAA;AANY,QAAA,eAAe,mBAM3B;AAEM,MAAM,eAAe,GAAG,CAC7B,MAAe,EACf,QAAwB,EACxB,EAAU,EACV,EAAE;IACF,OAAO,uBAAC,mBAAY,IAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,GAAI,CAAA;AAC1E,CAAC,CAAA;AANY,QAAA,eAAe,mBAM3B;AAEM,MAAM,cAAc,GAAG,CAC5B,KAAY,EACZ,KAAY,EACZ,SAAc,EACd,IAAS,EACT,SAAiB,EACjB,EAAE;IACF,OAAO,CACL,uBAAC,kBAAO,IACN,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,GACpB,CACH,CAAA;AACH,CAAC,CAAA;AAhBY,QAAA,cAAc,kBAgB1B;AAEM,MAAM,kBAAkB,GAAG,CAChC,KAAK,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,KAAK,EACL,SAAS,EACT,IAAI,EACJ,EAAE,EACF,EAAE;IACF,OAAO,CACL,uBAAC,4BAAW,IACV,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,EAAE,GACN,CACH,CAAA;AACH,CAAC,CAAA;AAtBY,QAAA,kBAAkB,sBAsB9B"}
@@ -3,6 +3,7 @@ interface SSPlayerProps {
3
3
  leaderItems: ScoreSaberItem[];
4
4
  scoreUser: ScoreSaberUser;
5
5
  params?: Record<string, string>;
6
+ bg: string;
6
7
  }
7
- export default function SSPlayerPage({ leaderItems, scoreUser, params, }: SSPlayerProps): import("react/jsx-runtime").JSX.Element;
8
+ export default function SSPlayerPage({ leaderItems, scoreUser, bg, params, }: SSPlayerProps): import("react/jsx-runtime").JSX.Element;
8
9
  export {};
@@ -30,10 +30,9 @@ const jsx_runtime_1 = require("react/jsx-runtime");
30
30
  /** @jsxImportSource react */
31
31
  const flag_1 = __importStar(require("../components/flag"));
32
32
  const tw_join_1 = require("../utils/tw-join");
33
- const ssScoreItem_1 = __importDefault(require("../components/ssScoreItem"));
34
- function SSPlayerPage({ leaderItems, scoreUser, params, }) {
35
- const bg = 'https://www.loliapi.com/acg/pc/';
36
- return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-center items-center relative h-[720px] w-[1024px] my-auto', id: "render-result", children: [(0, jsx_runtime_1.jsxs)("div", { className: 'bg-blend-darken h-full w-full left-auto absolute right-auto bg-black/[.6] p-4 text-white rounded-lg flex flex-col space-y-2 z-10', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex space-x-4 pb-2', children: [(0, jsx_runtime_1.jsx)("img", { className: 'h-32 w-32 rounded-md', src: scoreUser.profilePicture, loading: 'eager' }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-between', children: [(0, jsx_runtime_1.jsx)("span", { className: 'text-3xl font-bold', children: scoreUser.name }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex space-x-2 text-md font-bold items-center', children: [(0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [(0, jsx_runtime_1.jsx)(flag_1.EarchIcon, {}), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", scoreUser.rank] })] }), (0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [(0, jsx_runtime_1.jsx)(flag_1.default, { flagNationCode: scoreUser.country }), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", scoreUser.countryRank] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: (0, tw_join_1.twJoin)('text-4xl font-bold ', ' bg-gradient-to-r bg-clip-text text-transparent from-blue-300 to-red-300', 'text-orange-100'), children: [scoreUser.pp.toFixed(3), " PP"] })] }), (0, jsx_runtime_1.jsx)("div", { className: 'text-4xl pl-40 items-center flex text-gray-100 opacity-70', children: (0, jsx_runtime_1.jsx)("span", { children: "coming soon \uD83D\uDC77" }) })] }), (0, jsx_runtime_1.jsx)("div", { className: 'grid grid-cols-4 gap-2', children: leaderItems.map((item, idx) => ((0, jsx_runtime_1.jsx)(ssScoreItem_1.default, { scoreItem: item }, idx))) })] }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 rounded-lg absolute h-full object-cover', loading: 'eager' })] }) }));
33
+ const ss_score_item_1 = __importDefault(require("../components/ss-score-item"));
34
+ function SSPlayerPage({ leaderItems, scoreUser, bg, params, }) {
35
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-center items-center relative h-[720px] w-[1200px] my-auto', id: "render-result", children: [(0, jsx_runtime_1.jsxs)("div", { className: 'bg-blend-darken h-full w-full left-auto absolute right-auto bg-black/[.6] p-4 text-white rounded-lg flex flex-col space-y-2 z-10', children: [(0, jsx_runtime_1.jsxs)("div", { className: 'flex space-x-4 pb-2', children: [(0, jsx_runtime_1.jsx)("img", { className: 'h-32 w-32 rounded-md', src: scoreUser.profilePicture, loading: 'eager' }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex flex-col justify-between', children: [(0, jsx_runtime_1.jsx)("span", { className: 'text-3xl font-bold', children: scoreUser.name }), (0, jsx_runtime_1.jsxs)("div", { className: 'flex space-x-2 text-md font-bold items-center', children: [(0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [(0, jsx_runtime_1.jsx)(flag_1.EarchIcon, {}), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", scoreUser.rank] })] }), (0, jsx_runtime_1.jsxs)("span", { className: "flex items-center space-x-1", children: [(0, jsx_runtime_1.jsx)(flag_1.default, { flagNationCode: scoreUser.country }), (0, jsx_runtime_1.jsxs)("span", { children: ["# ", scoreUser.countryRank] })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: (0, tw_join_1.twJoin)('text-4xl font-bold ', ' bg-gradient-to-r bg-clip-text text-transparent from-blue-300 to-red-300', 'text-orange-100'), children: [scoreUser.pp.toFixed(3), " PP"] })] }), (0, jsx_runtime_1.jsx)("div", { className: 'text-4xl pl-40 items-center flex text-gray-100 opacity-70', children: (0, jsx_runtime_1.jsx)("span", { children: "coming soon, ... maybe?" }) })] }), (0, jsx_runtime_1.jsx)("div", { className: 'grid grid-cols-4 gap-2', children: leaderItems.map((item, idx) => ((0, jsx_runtime_1.jsx)(ss_score_item_1.default, { scoreItem: item }, idx))) })] }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 mx-auto w-full rounded-lg absolute h-full object-center', loading: 'eager' })] }) }));
37
36
  }
38
37
  exports.default = SSPlayerPage;
39
38
  //# sourceMappingURL=ss-player.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ss-player.js","sourceRoot":"","sources":["../../../src/img-render/result/ss-player.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,2DAAqD;AACrD,8CAAyC;AACzC,4EAAiD;AASjD,SAAwB,YAAY,CAAC,EACnC,WAAW,EACX,SAAS,EACT,MAAM,GACQ;IACd,MAAM,EAAE,GAAG,iCAAiC,CAAA;IAC5C,OAAO,CACL,2DACE,iCACE,SAAS,EACP,iFAAiF,EAEnF,EAAE,EAAC,eAAe,aAElB,iCACE,SAAS,EACP,kIAAkI,aAGpI,iCAAK,SAAS,EAAE,qBAAqB,aACnC,gCACE,SAAS,EAAE,sBAAsB,EACjC,GAAG,EAAE,SAAS,CAAC,cAAc,EAC7B,OAAO,EAAE,OAAO,GAEhB,EACF,iCAAK,SAAS,EAAE,+BAA+B,aAC7C,iCAAM,SAAS,EAAE,oBAAoB,YAAG,SAAS,CAAC,IAAI,GAAQ,EAC9D,iCAAK,SAAS,EAAE,+CAA+C,aAC7D,kCAAM,SAAS,EAAC,6BAA6B,aAC3C,uBAAC,gBAAS,KAAG,EACb,mDAAS,SAAS,CAAC,IAAI,IAAQ,IAC1B,EACP,kCAAM,SAAS,EAAC,6BAA6B,aAC3C,uBAAC,cAAK,IAAC,cAAc,EAAE,SAAS,CAAC,OAAO,GAAI,EAC5C,mDAAS,SAAS,CAAC,WAAW,IAAQ,IACjC,IACH,EACN,iCACE,SAAS,EAAE,IAAA,gBAAM,EACf,qBAAqB,EACrB,0EAA0E,EAC1E,iBAAiB,CAClB,aAEA,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,WACpB,IACF,EACN,gCACE,SAAS,EACP,2DAA2D,YAG7D,wEAA2B,GACvB,IACF,EACN,gCAAK,SAAS,EAAE,wBAAwB,YACrC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAC9B,uBAAC,qBAAS,IAAC,SAAS,EAAE,IAAI,IAAO,GAAG,CAAI,CACzC,CAAC,GACE,IACF,EACN,gCACE,GAAG,EAAE,EAAE,EACP,SAAS,EAAE,iDAAiD,EAC5D,OAAO,EAAE,OAAO,GAChB,IACE,GACL,CACJ,CAAA;AACH,CAAC;AAtED,+BAsEC"}
1
+ {"version":3,"file":"ss-player.js","sourceRoot":"","sources":["../../../src/img-render/result/ss-player.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,2DAAqD;AACrD,8CAAyC;AACzC,gFAAmD;AAUnD,SAAwB,YAAY,CAAC,EACnC,WAAW,EACX,SAAS,EACT,EAAE,EACF,MAAM,GACQ;IACd,OAAO,CACL,2DACE,iCACE,SAAS,EACP,iFAAiF,EAEnF,EAAE,EAAC,eAAe,aAElB,iCACE,SAAS,EACP,kIAAkI,aAGpI,iCAAK,SAAS,EAAE,qBAAqB,aACnC,gCACE,SAAS,EAAE,sBAAsB,EACjC,GAAG,EAAE,SAAS,CAAC,cAAc,EAC7B,OAAO,EAAE,OAAO,GAEhB,EACF,iCAAK,SAAS,EAAE,+BAA+B,aAC7C,iCAAM,SAAS,EAAE,oBAAoB,YAAG,SAAS,CAAC,IAAI,GAAQ,EAC9D,iCAAK,SAAS,EAAE,+CAA+C,aAC7D,kCAAM,SAAS,EAAC,6BAA6B,aAC3C,uBAAC,gBAAS,KAAG,EACb,mDAAS,SAAS,CAAC,IAAI,IAAQ,IAC1B,EACP,kCAAM,SAAS,EAAC,6BAA6B,aAC3C,uBAAC,cAAK,IAAC,cAAc,EAAE,SAAS,CAAC,OAAO,GAAI,EAC5C,mDAAS,SAAS,CAAC,WAAW,IAAQ,IACjC,IACH,EACN,iCACE,SAAS,EAAE,IAAA,gBAAM,EACf,qBAAqB,EACrB,0EAA0E,EAC1E,iBAAiB,CAClB,aAEA,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,WACpB,IACF,EACN,gCACE,SAAS,EACP,2DAA2D,YAG7D,uEAAoC,GAChC,IACF,EACN,gCAAK,SAAS,EAAE,wBAAwB,YACrC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAC9B,uBAAC,uBAAS,IAAC,SAAS,EAAE,IAAI,IAAO,GAAG,CAAI,CACzC,CAAC,GACE,IACF,EAEN,gCACE,GAAG,EAAE,EAAE,EACP,SAAS,EACP,iEAAiE,EAEnE,OAAO,EAAE,OAAO,GAChB,IACE,GACL,CACJ,CAAA;AACH,CAAC;AAzED,+BAyEC"}
@@ -44,7 +44,7 @@ exports.canvasHelper = {
44
44
  };
45
45
  const canvasBuilder = async () => {
46
46
  try {
47
- const { createCanvas: _createCanvas } = await Promise.resolve().then(() => __importStar(require('canvas')));
47
+ const { createCanvas: _createCanvas } = await Promise.resolve().then(() => __importStar(require('@napi-rs/canvas')));
48
48
  exports.canvasHelper.createCanvas = _createCanvas;
49
49
  exports.canvasHelper.canvasToDataURL = (canvas) => {
50
50
  return canvas.toDataURL('image/png');
@@ -53,6 +53,14 @@ const canvasBuilder = async () => {
53
53
  }
54
54
  catch (err) {
55
55
  try {
56
+ const { createCanvas: _createCanvas } = await Promise.resolve().then(() => __importStar(require('canvas')));
57
+ exports.canvasHelper.createCanvas = _createCanvas;
58
+ exports.canvasHelper.canvasToDataURL = (canvas) => {
59
+ return canvas.toDataURL('image/png');
60
+ };
61
+ exports.canvasHelper.enable = true;
62
+ }
63
+ catch (err) {
56
64
  const { Canvas } = await Promise.resolve().then(() => __importStar(require('skia-canvas')));
57
65
  exports.canvasHelper.createCanvas = (h, w) => {
58
66
  return new Canvas(h, w);
@@ -62,8 +70,6 @@ const canvasBuilder = async () => {
62
70
  };
63
71
  exports.canvasHelper.enable = true;
64
72
  }
65
- catch (err) {
66
- }
67
73
  }
68
74
  };
69
75
  canvasBuilder().then(() => console.log(`canvas init over: enable: ${exports.canvasHelper.enable}`));
@@ -1 +1 @@
1
- {"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/img-render/utils/canvas.js"],"names":[],"mappings":";AAAA,yDAAyD;AACzD,sCAAsC;AACtC,mEAAmE;AACnE,oBAAoB;AACpB,yCAAyC;AACzC,wCAAwC;AACxC,IAAI;AACJ,EAAE;AACF,oDAAoD;AACpD,yDAAyD;AACzD,2CAA2C;AAC3C,yCAAyC;AACzC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;AAGS,QAAA,YAAY,GAAG;IAC1B,YAAY,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE,GAAC,OAAO,EAAE,CAAA,CAAA,CAAC;IAChC,MAAM,EAAE,KAAK;IACb,eAAe,EAAE,CAAC,MAAM,EAAC,EAAE,CAAC,EAAE;CAC/B,CAAA;AAED,MAAM,aAAa,GAAG,KAAK,IAAG,EAAE;IAC9B,IAAI,CAAC;QACH,MAAM,EAAC,YAAY,EAAE,aAAa,EAAC,GAAG,wDAAa,QAAQ,GAAC,CAAA;QAC5D,oBAAY,CAAC,YAAY,GAAG,aAAa,CAAA;QACzC,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;YACvC,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QACtC,CAAC,CAAA;QACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;IAC5B,CAAC;IAAA,OAAM,GAAG,EAAE,CAAC;QACX,IAAI,CAAC;YACH,MAAM,EAAC,MAAM,EAAC,GAAG,wDAAa,aAAa,GAAC,CAAA;YAC5C,oBAAY,CAAC,YAAY,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE;gBACjC,OAAO,IAAI,MAAM,CAAC,CAAC,EAAC,CAAC,CAAC,CAAA;YACxB,CAAC,CAAA;YACD,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;gBACvC,OAAO,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YAC1C,CAAC,CAAA;YACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;QAC5B,CAAC;QAAA,OAAM,GAAG,EAAE,CAAC;QAEb,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,aAAa,EAAE,CAAC,IAAI,CAAC,GAAE,EAAE,CAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,oBAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/img-render/utils/canvas.js"],"names":[],"mappings":";AAAA,yDAAyD;AACzD,sCAAsC;AACtC,mEAAmE;AACnE,oBAAoB;AACpB,yCAAyC;AACzC,wCAAwC;AACxC,IAAI;AACJ,EAAE;AACF,oDAAoD;AACpD,yDAAyD;AACzD,2CAA2C;AAC3C,yCAAyC;AACzC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;AAGS,QAAA,YAAY,GAAG;IAC1B,YAAY,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE,GAAC,OAAO,EAAE,CAAA,CAAA,CAAC;IAChC,MAAM,EAAE,KAAK;IACb,eAAe,EAAE,CAAC,MAAM,EAAC,EAAE,CAAC,EAAE;CAC/B,CAAA;AAED,MAAM,aAAa,GAAG,KAAK,IAAG,EAAE;IAC9B,IAAI,CAAC;QAEH,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,wDAAa,iBAAiB,GAAC,CAAA;QACvE,oBAAY,CAAC,YAAY,GAAG,aAAa,CAAA;QACzC,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;YACvC,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QACtC,CAAC,CAAA;QACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;IAE5B,CAAC;IAAA,OAAM,GAAG,EAAE,CAAC;QACX,IAAI,CAAC;YACH,MAAM,EAAC,YAAY,EAAE,aAAa,EAAC,GAAG,wDAAa,QAAQ,GAAC,CAAA;YAC5D,oBAAY,CAAC,YAAY,GAAG,aAAa,CAAA;YACzC,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;gBACvC,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;YACtC,CAAC,CAAA;YACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;QAE5B,CAAC;QAAA,OAAM,GAAG,EAAE,CAAC;YACX,MAAM,EAAC,MAAM,EAAC,GAAG,wDAAa,aAAa,GAAC,CAAA;YAC5C,oBAAY,CAAC,YAAY,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE;gBACjC,OAAO,IAAI,MAAM,CAAC,CAAC,EAAC,CAAC,CAAC,CAAA;YACxB,CAAC,CAAA;YACD,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;gBACvC,OAAO,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YAC1C,CAAC,CAAA;YACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;QAC5B,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,aAAa,EAAE,CAAC,IAAI,CAAC,GAAE,EAAE,CAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,oBAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA"}
@@ -1,5 +1,6 @@
1
1
  export declare const formatDuration: (duration: number) => string;
2
2
  export declare const formatTime: (time: string) => string;
3
+ export declare function formatRelativeTimeByDay(time: string | number | Date): string;
3
4
  export declare const formatNumber: (number: number) => string;
4
5
  export declare function numberWithCommas(x: number): string;
5
6
  export declare const formatDate: (time: Date | undefined, template?: string) => string;
@@ -3,7 +3,7 @@ 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
- exports.formatDate = exports.numberWithCommas = exports.formatNumber = exports.formatTime = exports.formatDuration = void 0;
6
+ exports.formatDate = exports.numberWithCommas = exports.formatNumber = exports.formatRelativeTimeByDay = exports.formatTime = exports.formatDuration = void 0;
7
7
  const dayjs_1 = __importDefault(require("dayjs"));
8
8
  const duration_1 = __importDefault(require("dayjs/plugin/duration"));
9
9
  const relativeTime_1 = __importDefault(require("dayjs/plugin/relativeTime"));
@@ -22,6 +22,20 @@ const formatTime = (time) => {
22
22
  return (0, dayjs_1.default)(time).locale(zh_cn_1.default).fromNow();
23
23
  };
24
24
  exports.formatTime = formatTime;
25
+ function formatRelativeTimeByDay(time) {
26
+ let res = (0, dayjs_1.default)().diff((0, dayjs_1.default)(time), 'd');
27
+ let unit = 'd';
28
+ if (res <= 0) {
29
+ res = (0, dayjs_1.default)().diff((0, dayjs_1.default)(time), 'h');
30
+ unit = 'h';
31
+ }
32
+ if (res <= 0) {
33
+ res = (0, dayjs_1.default)().diff((0, dayjs_1.default)(time), 'm');
34
+ unit = 'm';
35
+ }
36
+ return `${res}${unit}`;
37
+ }
38
+ exports.formatRelativeTimeByDay = formatRelativeTimeByDay;
25
39
  const formatNumber = (number) => {
26
40
  // 1.11w
27
41
  try {
@@ -40,7 +54,7 @@ const formatNumber = (number) => {
40
54
  };
41
55
  exports.formatNumber = formatNumber;
42
56
  function numberWithCommas(x) {
43
- return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
57
+ return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
44
58
  }
45
59
  exports.numberWithCommas = numberWithCommas;
46
60
  const formatDate = (time, template) => {
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/img-render/utils/format.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AACzB,qEAA4C;AAC5C,6EAAoD;AACpD,+DAAmC;AACnC,eAAK,CAAC,MAAM,CAAC,kBAAQ,CAAC,CAAA;AACtB,eAAK,CAAC,MAAM,CAAC,sBAAY,CAAC,CAAA;AACnB,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE;IACjD,MAAM,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC5C,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;AAC7B,CAAC,CAAA;AAHY,QAAA,cAAc,kBAG1B;AAED,wDAAwD;AACxD,8DAA8D;AAC9D,IAAI;AAEG,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;IACzC,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,eAAE,CAAC,CAAC,OAAO,EAAE,CAAA;AACzC,CAAC,CAAA;AAFY,QAAA,UAAU,cAEtB;AAEM,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,QAAQ;IACR,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,KAAK,EAAE,CAAC;YACnB,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;QAC5C,CAAC;QACD,QAAQ;QACR,IAAI,MAAM,GAAG,IAAI,EAAE,CAAC;YAClB,OAAO,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC1B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAA;IACZ,CAAC;AACH,CAAC,CAAA;AAdY,QAAA,YAAY,gBAcxB;AAED,SAAgB,gBAAgB,CAAC,CAAS;IACxC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;AAC5D,CAAC;AAFD,4CAEC;AACM,MAAM,UAAU,GAAG,CAAC,IAAsB,EAAE,QAAiB,EAAE,EAAE;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAA;IAC3B,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,YAAY,CAAC,CAAA;AACrD,CAAC,CAAA;AAHY,QAAA,UAAU,cAGtB"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/img-render/utils/format.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AACzB,qEAA4C;AAC5C,6EAAoD;AACpD,+DAAmC;AACnC,eAAK,CAAC,MAAM,CAAC,kBAAQ,CAAC,CAAA;AACtB,eAAK,CAAC,MAAM,CAAC,sBAAY,CAAC,CAAA;AACnB,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE;IACjD,MAAM,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC5C,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;AAC7B,CAAC,CAAA;AAHY,QAAA,cAAc,kBAG1B;AAED,wDAAwD;AACxD,8DAA8D;AAC9D,IAAI;AAEG,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;IACzC,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,eAAE,CAAC,CAAC,OAAO,EAAE,CAAA;AACzC,CAAC,CAAA;AAFY,QAAA,UAAU,cAEtB;AAED,SAAgB,uBAAuB,CAAC,IAA4B;IAClE,IAAI,GAAG,GAAG,IAAA,eAAK,GAAE,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;IACxC,IAAI,IAAI,GAAG,GAAG,CAAA;IACd,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACb,GAAG,GAAG,IAAA,eAAK,GAAE,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QACpC,IAAI,GAAG,GAAG,CAAA;IACZ,CAAC;IACD,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACb,GAAG,GAAG,IAAA,eAAK,GAAE,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QACpC,IAAI,GAAG,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,GAAG,GAAG,GAAG,IAAI,EAAE,CAAA;AACxB,CAAC;AAZD,0DAYC;AAEM,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,QAAQ;IACR,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,KAAK,EAAE,CAAC;YACnB,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;QAC5C,CAAC;QACD,QAAQ;QACR,IAAI,MAAM,GAAG,IAAI,EAAE,CAAC;YAClB,OAAO,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC1B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAA;IACZ,CAAC;AACH,CAAC,CAAA;AAdY,QAAA,YAAY,gBAcxB;AAED,SAAgB,gBAAgB,CAAC,CAAS;IACxC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAA;AAC3D,CAAC;AAFD,4CAEC;AACM,MAAM,UAAU,GAAG,CAAC,IAAsB,EAAE,QAAiB,EAAE,EAAE;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAA;IAC3B,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,YAAY,CAAC,CAAA;AACrD,CAAC,CAAA;AAHY,QAAA,UAAU,cAGtB"}