beatsaber-bot-core 0.2.0-dev.3 → 0.2.0-dev.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/base/aioclient.d.ts +10 -0
- package/lib/api/base/aioclient.js +25 -0
- package/lib/api/base/aioclient.js.map +1 -0
- package/lib/api/base/blRequset.js +7 -7
- package/lib/api/base/blRequset.js.map +1 -1
- package/lib/api/base/blclient.d.ts +16 -0
- package/lib/api/base/blclient.js +60 -0
- package/lib/api/base/blclient.js.map +1 -0
- package/lib/api/base/bsclient.d.ts +16 -0
- package/lib/api/base/bsclient.js +69 -0
- package/lib/api/base/bsclient.js.map +1 -0
- package/lib/api/base/index.d.ts +4 -12
- package/lib/api/base/index.js +4 -4
- package/lib/api/base/index.js.map +1 -1
- package/lib/api/base/scRequest.d.ts +2 -0
- package/lib/api/base/scRequest.js +28 -13
- package/lib/api/base/scRequest.js.map +1 -1
- package/lib/api/base/ssclient.d.ts +12 -0
- package/lib/api/base/ssclient.js +43 -0
- package/lib/api/base/ssclient.js.map +1 -0
- package/lib/api/composed/beatleader.d.ts +7 -2
- package/lib/api/composed/beatleader.js +26 -5
- package/lib/api/composed/beatleader.js.map +1 -1
- package/lib/api/composed/beatsaver.d.ts +2 -3
- package/lib/api/composed/beatsaver.js +2 -1
- package/lib/api/composed/beatsaver.js.map +1 -1
- package/lib/api/composed/scoresaber.js.map +1 -1
- package/lib/api/helper.d.ts +19 -0
- package/lib/api/helper.js +102 -0
- package/lib/api/helper.js.map +1 -0
- package/lib/api/index.d.ts +1 -18
- package/lib/api/index.js +8 -98
- package/lib/api/index.js.map +1 -1
- package/lib/api/interfaces/beatsaver/bsmap.d.ts +2 -0
- package/lib/api/interfaces/beatsaver/ws.d.ts +8 -2
- package/lib/api/interfaces/index.d.ts +12 -0
- package/lib/{interface/db.js → api/interfaces/index.js} +1 -1
- package/lib/api/interfaces/index.js.map +1 -0
- package/lib/api/interfaces/scoresaber/item.d.ts +12 -3
- package/lib/api/interfaces/scoresaber/leaderboard.d.ts +10 -0
- package/lib/api/interfaces/scoresaber/leaderboard.js +3 -0
- package/lib/api/interfaces/scoresaber/leaderboard.js.map +1 -0
- package/lib/cmd/bind/bind-beatleader.js.map +1 -1
- package/lib/cmd/bind/bind-beatsaver.js.map +1 -1
- package/lib/cmd/bind/bind-id-beatleader.js.map +1 -1
- package/lib/cmd/bind/bind-scoresaber.js.map +1 -1
- package/lib/cmd/bind/index.d.ts +2 -2
- package/lib/cmd/bind/index.js +4 -0
- package/lib/cmd/bind/index.js.map +1 -1
- package/lib/cmd/bsmap/id-search.d.ts +1 -1
- package/lib/cmd/bsmap/id-search.js +3 -3
- package/lib/cmd/bsmap/id-search.js.map +1 -1
- package/lib/cmd/bsmap/key-search.d.ts +1 -1
- package/lib/cmd/bsmap/key-search.js +6 -6
- package/lib/cmd/bsmap/key-search.js.map +1 -1
- package/lib/cmd/bsmap/latest.d.ts +1 -1
- package/lib/cmd/bsmap/latest.js +11 -3
- package/lib/cmd/bsmap/latest.js.map +1 -1
- package/lib/cmd/builder.d.ts +2 -2
- package/lib/cmd/builder.js +20 -1
- package/lib/cmd/builder.js.map +1 -1
- package/lib/cmd/config/index.d.ts +12 -0
- package/lib/cmd/config/index.js +70 -0
- package/lib/cmd/config/index.js.map +1 -0
- package/lib/cmd/deprecated/cmp.d.ts +1 -1
- package/lib/cmd/deprecated/me.d.ts +3 -3
- package/lib/cmd/deprecated/me.js +6 -6
- package/lib/cmd/deprecated/me.js.map +1 -1
- package/lib/cmd/deprecated/tmp.d.ts +1 -1
- package/lib/cmd/deprecated/tmp.js +2 -0
- package/lib/cmd/deprecated/tmp.js.map +1 -1
- package/lib/cmd/deprecated/whois.d.ts +2 -2
- package/lib/cmd/deprecated/whois.js +2 -2
- package/lib/cmd/deprecated/whois.js.map +1 -1
- package/lib/cmd/help.d.ts +1 -1
- package/lib/cmd/index.js +3 -1
- package/lib/cmd/index.js.map +1 -1
- package/lib/cmd/rank.d.ts +2 -2
- package/lib/cmd/rank.js +16 -11
- package/lib/cmd/rank.js.map +1 -1
- package/lib/cmd/score.d.ts +3 -3
- package/lib/cmd/score.js +26 -10
- package/lib/cmd/score.js.map +1 -1
- package/lib/cmd/subscribe/index.d.ts +2 -2
- package/lib/cmd/subscribe/subjoin.d.ts +2 -2
- package/lib/cmd/subscribe/subleave.d.ts +2 -2
- package/lib/cmd/subscribe/unsubscribe.d.ts +2 -2
- package/lib/config.d.ts +21 -4
- package/lib/db/index.d.ts +0 -34
- package/lib/db/index.js +0 -2
- package/lib/errors/index.d.ts +43 -41
- package/lib/errors/index.js +108 -59
- package/lib/errors/index.js.map +1 -1
- package/lib/i18n/index.js +17 -11
- package/lib/i18n/index.js.map +1 -1
- package/lib/i18n/parser.d.ts +14 -0
- package/lib/i18n/parser.js +165 -0
- package/lib/i18n/parser.js.map +1 -0
- package/lib/i18n/zh-cn.json +1 -1
- package/lib/img-render/components/RankDifficulty.d.ts +6 -0
- package/lib/img-render/components/RankDifficulty.js +17 -0
- package/lib/img-render/components/RankDifficulty.js.map +1 -0
- package/lib/img-render/components/base/avatar.d.ts +7 -0
- package/lib/img-render/components/base/avatar.js +11 -0
- package/lib/img-render/components/base/avatar.js.map +1 -1
- package/lib/img-render/components/bl-rank-score-item.d.ts +18 -0
- package/lib/img-render/components/bl-rank-score-item.js +42 -0
- package/lib/img-render/components/bl-rank-score-item.js.map +1 -0
- package/lib/img-render/components/bl-score-item.d.ts +6 -0
- package/lib/img-render/components/bl-score-item.js +14 -0
- package/lib/img-render/components/bl-score-item.js.map +1 -0
- package/lib/img-render/components/blScoreItem.js +2 -2
- package/lib/img-render/components/blScoreItem.js.map +1 -1
- package/lib/img-render/components/rankScoreItem.d.ts +18 -0
- package/lib/img-render/components/rankScoreItem.js +42 -0
- package/lib/img-render/components/rankScoreItem.js.map +1 -0
- package/lib/img-render/components/scoregraph.d.ts +3 -1
- package/lib/img-render/components/scoregraph.js +5 -4
- package/lib/img-render/components/scoregraph.js.map +1 -1
- package/lib/img-render/components/ss-rank-score-item.d.ts +18 -0
- package/lib/img-render/components/ss-rank-score-item.js +42 -0
- package/lib/img-render/components/ss-rank-score-item.js.map +1 -0
- package/lib/img-render/components/ss-score-item.d.ts +4 -0
- package/lib/img-render/components/ss-score-item.js +14 -0
- package/lib/img-render/components/ss-score-item.js.map +1 -0
- package/lib/img-render/components/ssScoreItem.js +1 -1
- package/lib/img-render/components/ssScoreItem.js.map +1 -1
- package/lib/img-render/index.d.ts +13 -10
- package/lib/img-render/index.js +51 -23
- package/lib/img-render/index.js.map +1 -1
- package/lib/img-render/interfaces.d.ts +2 -0
- package/lib/img-render/render.js +26 -1
- package/lib/img-render/render.js.map +1 -1
- package/lib/img-render/result/bl-player.d.ts +2 -1
- package/lib/img-render/result/bl-player.js +3 -4
- package/lib/img-render/result/bl-player.js.map +1 -1
- package/lib/img-render/result/bl-score-with-rank.d.ts +14 -0
- package/lib/img-render/result/bl-score-with-rank.js +33 -0
- package/lib/img-render/result/bl-score-with-rank.js.map +1 -0
- package/lib/img-render/result/bl-score.js +1 -1
- package/lib/img-render/result/bl-score.js.map +1 -1
- package/lib/img-render/result/bs-score-with-rank.d.ts +13 -0
- package/lib/img-render/result/bs-score-with-rank.js +33 -0
- package/lib/img-render/result/bs-score-with-rank.js.map +1 -0
- package/lib/img-render/result/index.d.ts +3 -2
- package/lib/img-render/result/index.js +10 -5
- package/lib/img-render/result/index.js.map +1 -1
- package/lib/img-render/result/ss-player.d.ts +2 -1
- package/lib/img-render/result/ss-player.js +3 -4
- package/lib/img-render/result/ss-player.js.map +1 -1
- package/lib/img-render/result/ss-score-with-rank.js +277 -0
- package/lib/img-render/result/ss-score-with-rank.js.map +1 -0
- package/lib/img-render/utils/canvas.js +10 -4
- package/lib/img-render/utils/canvas.js.map +1 -1
- package/lib/img-render/utils/format.d.ts +3 -0
- package/lib/img-render/utils/format.js +25 -1
- package/lib/img-render/utils/format.js.map +1 -1
- package/lib/img-render/utils/index.d.ts +1 -1
- package/lib/img-render/utils/index.js +1 -1
- package/lib/img-render/utils/index.js.map +1 -1
- package/lib/img-render/utils/qrcode.js +8 -1
- package/lib/img-render/utils/qrcode.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/interface/bot.d.ts +1 -1
- package/lib/interface/cmd.d.ts +3 -0
- package/lib/interface/{db.d.ts → db/index.d.ts} +5 -2
- package/lib/interface/db/index.js +18 -0
- package/lib/interface/db/index.js.map +1 -0
- package/lib/interface/db/models.d.ts +39 -0
- package/lib/interface/db/models.js +3 -0
- package/lib/interface/db/models.js.map +1 -0
- package/lib/interface/index.d.ts +0 -1
- package/lib/interface/index.js +0 -1
- package/lib/interface/index.js.map +1 -1
- package/lib/interface/render.d.ts +7 -5
- package/lib/schedules/index.d.ts +7 -2
- package/lib/schedules/index.js +20 -16
- package/lib/schedules/index.js.map +1 -1
- package/lib/schedules/interface.d.ts +18 -0
- package/lib/schedules/interface.js +3 -0
- package/lib/schedules/interface.js.map +1 -0
- package/lib/schedules/oauthTokenRefreshTask.d.ts +2 -5
- package/lib/schedules/oauthTokenRefreshTask.js +9 -9
- package/lib/schedules/oauthTokenRefreshTask.js.map +1 -1
- package/lib/schedules/temp.d.ts +2 -5
- package/lib/schedules/temp.js +5 -5
- package/lib/schedules/temp.js.map +1 -1
- package/lib/utils/cache.d.ts +3 -0
- package/lib/utils/cache.js +30 -0
- package/lib/utils/cache.js.map +1 -0
- package/lib/utils/fetch/index.d.ts +3 -0
- package/lib/utils/fetch/index.js +21 -0
- package/lib/utils/fetch/index.js.map +1 -0
- package/lib/utils/fetch/ofetch.d.ts +22 -0
- package/lib/utils/fetch/ofetch.js +87 -0
- package/lib/utils/fetch/ofetch.js.map +1 -0
- package/lib/utils/index.d.ts +8 -0
- package/lib/utils/index.js +80 -0
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/preference.d.ts +35 -0
- package/lib/utils/preference.js +115 -0
- package/lib/utils/preference.js.map +1 -0
- package/lib/utils/puppeteer.d.ts +20 -0
- package/lib/utils/puppeteer.js +79 -0
- package/lib/utils/puppeteer.js.map +1 -0
- package/lib/utils/s3.d.ts +11 -0
- package/lib/utils/s3.js +60 -0
- package/lib/utils/s3.js.map +1 -0
- package/lib/ws/beatleader.js +1 -0
- package/lib/ws/beatleader.js.map +1 -1
- package/lib/ws/beatsaver.d.ts +6 -1
- package/lib/ws/beatsaver.js +28 -26
- package/lib/ws/beatsaver.js.map +1 -1
- package/package.json +9 -4
- package/lib/interface/db.js.map +0 -1
- package/lib/interface/tables.js +0 -1
- package/lib/interface/tables.js.map +0 -1
- package/lib/utils.d.ts +0 -2
- package/lib/utils.js +0 -25
- package/lib/utils.js.map +0 -1
- /package/lib/{interface/tables.d.ts → img-render/result/ss-score-with-rank.d.ts} +0 -0
@@ -1,22 +1,25 @@
|
|
1
|
+
/// <reference types="node" />
|
1
2
|
import { APIService } from '../api';
|
2
3
|
import { RenderOption } from './interfaces';
|
3
4
|
import { Config } from '../config';
|
4
5
|
import { BSMap } from '../api/interfaces/beatsaver';
|
5
6
|
import { ImgRender, Platform } from '../interface';
|
6
|
-
|
7
|
+
import { UserPreferenceStore } from '../utils';
|
8
|
+
type HtmlToImgBufferConverter = (html: string, onRenderStart?: () => void, onRenderError?: (e: any) => void) => Promise<Buffer>;
|
9
|
+
type UrlToImgBufferConverter = HtmlToImgBufferConverter;
|
7
10
|
export declare abstract class RenderService implements ImgRender {
|
8
11
|
config: Config;
|
9
12
|
api: APIService;
|
10
13
|
baseConfig: Partial<RenderOption>;
|
11
14
|
htmlToImgBufferConverter: HtmlToImgBufferConverter;
|
12
|
-
urlToImgBufferConverter:
|
13
|
-
renderRank(accountId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
14
|
-
_renderRank: (accountId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<
|
15
|
-
renderScore(scoreId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
16
|
-
_renderScore: (scoreId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<
|
17
|
-
renderMapById(mapId: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
18
|
-
renderMap(map: BSMap, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<
|
19
|
-
renderUrl(url: string): Promise<
|
20
|
-
_renderMap: (bsMap: BSMap, renderOpts: RenderOption) => Promise<
|
15
|
+
urlToImgBufferConverter: UrlToImgBufferConverter;
|
16
|
+
renderRank(accountId: string, platform: Platform, userPreference?: UserPreferenceStore, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
17
|
+
_renderRank: (accountId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<Buffer>;
|
18
|
+
renderScore(scoreId: string, platform: Platform, userPreference?: UserPreferenceStore, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
19
|
+
_renderScore: (scoreId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<Buffer>;
|
20
|
+
renderMapById(mapId: string, userPreference?: UserPreferenceStore, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
21
|
+
renderMap(map: BSMap, userPreference?: UserPreferenceStore, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
|
22
|
+
renderUrl(url: string, onRenderStart?: () => void): Promise<Buffer>;
|
23
|
+
_renderMap: (bsMap: BSMap, renderOpts: RenderOption) => Promise<Buffer>;
|
21
24
|
}
|
22
25
|
export {};
|
package/lib/img-render/index.js
CHANGED
@@ -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,19 @@ 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) {
|
32
|
+
throw new errors_1.ImageRenderError();
|
33
|
+
}
|
34
|
+
throw e;
|
26
35
|
});
|
27
36
|
}
|
28
37
|
_renderRank = async (accountId, platform, api, renderOpts) => {
|
38
|
+
const bg = (await renderOpts.userPreference.get(platform == interface_1.Platform.SS
|
39
|
+
? utils_1.preferenceKey.ssProfileRenderImg.key
|
40
|
+
: utils_1.preferenceKey.blProfileRenderImg.key)) ?? 'https://www.loliapi.com/acg/pc/';
|
41
|
+
// get user preference
|
29
42
|
// if (renderOpts.type == 'remote') {
|
30
43
|
// const remoteP = platform == Platform.SS ? 'score-saber' : 'beat-leader'
|
31
44
|
// return renderRemoteRank(
|
@@ -37,62 +50,77 @@ class RenderService {
|
|
37
50
|
if (platform == interface_1.Platform.BL) {
|
38
51
|
const { scores, userInfo } = await api.BeatLeader.getPlayerScoresWithUserInfo(accountId);
|
39
52
|
//
|
40
|
-
return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getBLPlayerComp)(scores, userInfo)), renderOpts.onRenderStart, renderOpts.onRenderError);
|
53
|
+
return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getBLPlayerComp)(scores, userInfo, bg)), renderOpts.onRenderStart, renderOpts.onRenderError);
|
41
54
|
}
|
42
55
|
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);
|
56
|
+
return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getSSPlayerComp)(scores, userInfo, bg)), renderOpts.onRenderStart, renderOpts.onRenderError);
|
44
57
|
};
|
45
|
-
async renderScore(scoreId, platform, onRenderStart, onRenderError
|
58
|
+
async renderScore(scoreId, platform, userPreference, onRenderStart, onRenderError
|
46
59
|
// type: 'remote' | 'local' = this.config.renderMode
|
47
60
|
) {
|
48
61
|
return this._renderScore(scoreId, platform, this.api, {
|
49
62
|
...this.baseConfig,
|
50
63
|
type: 'local',
|
64
|
+
userPreference,
|
51
65
|
onRenderError,
|
52
66
|
onRenderStart,
|
67
|
+
}).catch((e) => {
|
68
|
+
if (e instanceof puppeteer_core_1.TimeoutError) {
|
69
|
+
throw new errors_1.ImageRenderError();
|
70
|
+
}
|
71
|
+
throw e;
|
53
72
|
});
|
54
73
|
}
|
55
74
|
_renderScore = async (scoreId, platform, api, renderOpts) => {
|
56
|
-
const
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
75
|
+
const bg = (await renderOpts.userPreference.get(utils_1.preferenceKey.blScoreImg.key)) ?? 'https://www.loliapi.com/acg/pc/';
|
76
|
+
try {
|
77
|
+
const { score, statistic, bsor, bsMap } = await api.BeatLeader.withRetry(3)
|
78
|
+
.onRetry((times, e) => {
|
79
|
+
console.log(` fetch beatleader score ${scoreId} failed: retrying ${times} due to ${e}`);
|
80
|
+
})
|
81
|
+
.getScoreAndBSMapByScoreId(scoreId)
|
82
|
+
.catch((e) => {
|
83
|
+
console.error(e);
|
84
|
+
throw new errors_1.ImageRenderError();
|
85
|
+
});
|
86
|
+
const { aroundScores, regionTopScores, difficulties } = await api.BeatLeader.withRetry(3).getAroundScoreAndRegionScoreByRankAndPage(score.leaderboardId, score.rank, score.player.country);
|
87
|
+
return this.htmlToImgBufferConverter((0, render_1.getHtml)((0, result_1.getBLRankScoreComp)(score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, bg)), renderOpts.onRenderStart, renderOpts.onRenderError);
|
88
|
+
}
|
89
|
+
catch (e) {
|
90
|
+
throw new errors_1.ImageRenderError();
|
91
|
+
}
|
71
92
|
};
|
72
|
-
async renderMapById(mapId, onRenderStart, onRenderError
|
93
|
+
async renderMapById(mapId, userPreference, onRenderStart, onRenderError
|
73
94
|
// type: 'remote' | 'local' = this.config.renderMode
|
74
95
|
) {
|
75
96
|
const map = await this.api.BeatSaver.searchMapById(mapId);
|
76
97
|
return this._renderMap(map, {
|
77
98
|
...this.baseConfig,
|
78
99
|
type: 'local',
|
100
|
+
userPreference,
|
79
101
|
onRenderError,
|
80
102
|
onRenderStart,
|
81
103
|
});
|
82
104
|
}
|
83
|
-
async renderMap(map, onRenderStart = noop, onRenderError = noop
|
105
|
+
async renderMap(map, userPreference, onRenderStart = noop, onRenderError = noop
|
84
106
|
// type: 'remote' | 'local' = this.config.renderMode
|
85
107
|
) {
|
86
108
|
return this._renderMap(map, {
|
87
109
|
...this.baseConfig,
|
88
110
|
type: 'local',
|
111
|
+
userPreference,
|
89
112
|
onRenderError,
|
90
113
|
onRenderStart,
|
114
|
+
}).catch((e) => {
|
115
|
+
if (e instanceof puppeteer_core_1.TimeoutError) {
|
116
|
+
throw new errors_1.ImageRenderError();
|
117
|
+
}
|
118
|
+
throw e;
|
91
119
|
});
|
92
120
|
}
|
93
|
-
async renderUrl(url) {
|
121
|
+
async renderUrl(url, onRenderStart) {
|
94
122
|
if (this.urlToImgBufferConverter) {
|
95
|
-
return this.urlToImgBufferConverter(url);
|
123
|
+
return this.urlToImgBufferConverter(url, onRenderStart);
|
96
124
|
}
|
97
125
|
}
|
98
126
|
_renderMap = async (bsMap, renderOpts) => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/img-render/index.ts"],"names":[],"mappings":";;;;;;AACA,qCAKiB;AACjB,4DAAyC;AAGzC,gDAA6C;AAE7C,2CAAiD;
|
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';
|
package/lib/img-render/render.js
CHANGED
@@ -27,7 +27,32 @@ exports.getHtml = exports.renderComponent = void 0;
|
|
27
27
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
28
28
|
const ReactDOMServer = __importStar(require("react-dom/server"));
|
29
29
|
function App({ children }) {
|
30
|
-
|
30
|
+
const styles = `
|
31
|
+
.bs-bg-gradient {
|
32
|
+
background: linear-gradient(to bottom right, rgba(180, 104, 104, 0.4), rgba(83, 113, 157, 0.4));
|
33
|
+
}
|
34
|
+
.gradient-border {
|
35
|
+
--tw-border-width: 3px;
|
36
|
+
--tw-border-radius: 10px;
|
37
|
+
position: relative;
|
38
|
+
box-sizing: border-box;
|
39
|
+
}
|
40
|
+
.gradient-border::before {
|
41
|
+
content: '';
|
42
|
+
position: absolute;
|
43
|
+
inset: 0;
|
44
|
+
border-radius: var(--tw-border-radius);
|
45
|
+
padding: var(--tw-border-width);
|
46
|
+
background: linear-gradient(70deg, #FE9393, #F57979, #417ED8);
|
47
|
+
-webkit-mask:
|
48
|
+
linear-gradient(#fff 0 0) content-box,
|
49
|
+
linear-gradient(#fff 0 0);
|
50
|
+
-webkit-mask-composite: xor;
|
51
|
+
mask-composite: exclude;
|
52
|
+
}
|
53
|
+
|
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-black flex w-fit', children: children }), (0, jsx_runtime_1.jsx)("style", { dangerouslySetInnerHTML: { __html: styles } })] }));
|
31
56
|
}
|
32
57
|
exports.default = App;
|
33
58
|
const renderComponent = (child) => {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/img-render/render.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;
|
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, user, params, bg, }: BLPlayerInfoProps): import("react/jsx-runtime").JSX.Element;
|
7
8
|
export {};
|
@@ -31,14 +31,13 @@ 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
|
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, user, params, bg, }) {
|
39
39
|
const part = (0, getPart_1.default)(user);
|
40
|
-
|
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
|
+
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.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
41
|
}
|
43
42
|
exports.default = BLPlayerPage;
|
44
43
|
//# 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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,kEAAyC;AACzC,4EAAkD;AAClD,4EAAkD;AAClD,
|
1
|
+
{"version":3,"file":"bl-player.js","sourceRoot":"","sources":["../../../src/img-render/result/bl-player.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { BSOR, Score } from '../../api/interfaces/beatleader';
|
2
|
+
import { BSMap } from '../../api/interfaces/beatsaver';
|
3
|
+
interface BLScoreProps {
|
4
|
+
score: Score;
|
5
|
+
aroundScores: Score[];
|
6
|
+
regionTopScores: Score[];
|
7
|
+
bsMap: BSMap;
|
8
|
+
difficulties: any[];
|
9
|
+
statistic: any;
|
10
|
+
bsor: BSOR;
|
11
|
+
bg: string;
|
12
|
+
}
|
13
|
+
export default function BLRankScore({ score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, bg, }: BLScoreProps): import("react/jsx-runtime").JSX.Element;
|
14
|
+
export {};
|
@@ -0,0 +1,33 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
7
|
+
const lucide_react_1 = require("lucide-react");
|
8
|
+
const scoregraph_1 = __importDefault(require("../components/scoregraph"));
|
9
|
+
const bl_rank_score_item_1 = require("../../img-render/components/bl-rank-score-item");
|
10
|
+
const RankDifficulty_1 = require("../../img-render/components/RankDifficulty");
|
11
|
+
const avatar_1 = require("../../img-render/components/base/avatar");
|
12
|
+
const utils_1 = require("../../img-render/utils");
|
13
|
+
const progressbar_1 = __importDefault(require("../../img-render/components/progressbar"));
|
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' })] }) }));
|
31
|
+
}
|
32
|
+
exports.default = BLRankScore;
|
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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"}
|
@@ -12,7 +12,7 @@ const progressbar_1 = __importDefault(require("../components/progressbar"));
|
|
12
12
|
const scoregraph_1 = __importDefault(require("../components/scoregraph"));
|
13
13
|
function BLScore({ score, bsMap, statistic, bsor, qrcodeUrl, }) {
|
14
14
|
const bg = 'https://www.loliapi.com/acg/pc/';
|
15
|
-
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-[400px] my-auto rounded-none', 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 flex flex-col justify-between z-10', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 items-center justify-between text-xl font-bold", 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)("img", { loading: 'eager', className: 'h-16 w-16 rounded-full', src: score.player.avatar }), (0, jsx_runtime_1.jsx)("div", { children: score.player.name })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'w-[100px] flex items-center justify-center flex-col', children: [(0, jsx_runtime_1.jsx)("img", { src: qrcodeUrl, width: 80, height: 80, className: 'w-[80px] aspect-square' }), (0, jsx_runtime_1.jsx)("span", { className: 'text-xs', children: "replay" })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 h-40", children: [(0, jsx_runtime_1.jsx)("img", { className: 'h-40 w-40 rounded-md', src: score.song.cover }), (0, jsx_runtime_1.jsxs)("div", { className: "text-xs font-bold flex flex-col justify-between", children: [(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-2 items-center text-sm", children: [(0, jsx_runtime_1.jsx)("img", { className: 'h-4 w-4 rounded-full', src: bsMap.uploader.avatar }), (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 grid grid-cols-3 gap-1 *:space-x-1 *:flex *:items-center font-normal", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center text-ellipsis col-span-3 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", { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(lucide_react_1.BarChart, { className: 'w-3 h-3' }) }), (0, jsx_runtime_1.jsx)("span", { children: (0, utils_1.diffConv)(score.difficulty.difficultyName) })] }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Star, { className: 'w-3 h-3' }) }), (0, jsx_runtime_1.jsxs)("span", { children: [score.difficulty.stars?.toFixed(2) ?? 'none', " "] })] }), (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.ThumbsUp, { className: "h-3 w-3" }), (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" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.stats.downvotes })] }), (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 space-x-2 text-xs 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: "text-xl font-bold pt-2", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex justify-between", children: [(0, jsx_runtime_1.jsxs)("span", { children: [" # ", score.rank] }), (0, jsx_runtime_1.jsxs)("span", { children: [score.pp.toFixed(2), " PP"] })] }), (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.jsxs)("div", { className: "align-end mt-auto 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 })] })] }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 rounded-lg absolute h-full object-cover', loading: 'eager' })] }) }));
|
15
|
+
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-[400px] my-auto rounded-none', 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 flex flex-col justify-between z-10', children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 items-center justify-between text-xl font-bold", 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)("img", { loading: 'eager', className: 'h-16 w-16 rounded-full', src: score.player.avatar }), (0, jsx_runtime_1.jsx)("div", { children: score.player.name })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'w-[100px] flex items-center justify-center flex-col', children: [(0, jsx_runtime_1.jsx)("img", { src: qrcodeUrl, width: 80, height: 80, className: 'w-[80px] aspect-square' }), (0, jsx_runtime_1.jsx)("span", { className: 'text-xs', children: "replay" })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex space-x-4 h-40", children: [(0, jsx_runtime_1.jsx)("img", { className: 'h-40 w-40 rounded-md', src: score.song.cover }), (0, jsx_runtime_1.jsxs)("div", { className: "text-xs font-bold flex flex-col justify-between", children: [(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-2 items-center text-sm", children: [(0, jsx_runtime_1.jsx)("img", { className: 'h-4 w-4 rounded-full', src: bsMap.uploader.avatar }), (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 grid grid-cols-3 gap-1 *:space-x-1 *:flex *:items-center font-normal", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center text-ellipsis col-span-3 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", { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(lucide_react_1.BarChart, { className: 'w-3 h-3' }) }), (0, jsx_runtime_1.jsx)("span", { children: (0, utils_1.diffConv)(score.difficulty.difficultyName) })] }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(lucide_react_1.Star, { className: 'w-3 h-3' }) }), (0, jsx_runtime_1.jsxs)("span", { children: [score.difficulty.stars?.toFixed(2) ?? 'none', " "] })] }), (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.ThumbsUp, { className: "h-3 w-3" }), (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" }), (0, jsx_runtime_1.jsx)("span", { children: bsMap.stats.downvotes })] }), (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 space-x-2 text-xs 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: "text-xl font-bold pt-2", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex justify-between", children: [(0, jsx_runtime_1.jsxs)("span", { children: [" # ", score.rank] }), (0, jsx_runtime_1.jsxs)("span", { children: [score.pp.toFixed(2), " PP"] })] }), (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.jsxs)("div", { className: "align-end mt-auto 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: 192, width: 400 })] })] }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 rounded-lg absolute h-full object-cover', loading: 'eager' })] }) }));
|
16
16
|
}
|
17
17
|
exports.BLScore = BLScore;
|
18
18
|
//# sourceMappingURL=bl-score.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"bl-score.js","sourceRoot":"","sources":["../../../src/img-render/result/bl-score.tsx"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"bl-score.js","sourceRoot":"","sources":["../../../src/img-render/result/bl-score.tsx"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { BSOR, Score } from '../../api/interfaces/beatleader';
|
2
|
+
import { BSMap } from '../../api/interfaces/beatsaver';
|
3
|
+
interface BLScoreProps {
|
4
|
+
score: Score;
|
5
|
+
aroundScores: Score[];
|
6
|
+
regionTopScores: Score[];
|
7
|
+
bsMap: BSMap;
|
8
|
+
difficulties: any[];
|
9
|
+
statistic: any;
|
10
|
+
bsor: BSOR;
|
11
|
+
}
|
12
|
+
export default function BLRankScore({ score, aroundScores, regionTopScores, difficulties, bsMap, statistic, bsor, }: BLScoreProps): import("react/jsx-runtime").JSX.Element;
|
13
|
+
export {};
|
@@ -0,0 +1,33 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
7
|
+
const lucide_react_1 = require("lucide-react");
|
8
|
+
const scoregraph_1 = __importDefault(require("../components/scoregraph"));
|
9
|
+
const rankScoreItem_1 = require("../../img-render/components/rankScoreItem");
|
10
|
+
const RankDifficulty_1 = require("../../img-render/components/RankDifficulty");
|
11
|
+
const avatar_1 = require("../../img-render/components/base/avatar");
|
12
|
+
const utils_1 = require("../../img-render/utils");
|
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
|
+
let aroundScore = aroundScores
|
17
|
+
.slice(0, 7)
|
18
|
+
.map((it) => ({ ...it, template: false }));
|
19
|
+
let regionTopScore = regionTopScores
|
20
|
+
.slice(0, 7)
|
21
|
+
.map((it) => ({ ...it, template: false }));
|
22
|
+
if (aroundScore.length < 7) {
|
23
|
+
aroundScore = aroundScore.concat(new Array(7 - aroundScore.length).fill({ template: true }));
|
24
|
+
}
|
25
|
+
if (regionTopScore.length < 7) {
|
26
|
+
regionTopScore = regionTopScore.concat(new Array(7 - regionTopScore.length).fill({ template: true }));
|
27
|
+
}
|
28
|
+
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
|
29
|
+
.filter((it) => it.mode === 1)
|
30
|
+
.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-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)(rankScoreItem_1.RankScoreItem, { 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)(rankScoreItem_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)(rankScoreItem_1.RankScoreItem, { 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)(rankScoreItem_1.ScoreItemSkeleton, { isRegionRank: true }, idx)))] })] })] }) }), (0, jsx_runtime_1.jsx)("img", { src: bg, className: 'inset-0 rounded-lg absolute h-full object-cover w-full', loading: 'eager' })] }) }));
|
31
|
+
}
|
32
|
+
exports.default = BLRankScore;
|
33
|
+
//# sourceMappingURL=bs-score-with-rank.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"bs-score-with-rank.js","sourceRoot":"","sources":["../../../src/img-render/result/bs-score-with-rank.tsx"],"names":[],"mappings":"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"}
|
@@ -2,6 +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, bg: any) => import("react/jsx-runtime").JSX.Element;
|
@@ -3,26 +3,31 @@ 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.getBLScoreComp = exports.getBLPlayerComp = exports.getSSPlayerComp = exports.getBSMapComp = void 0;
|
6
|
+
exports.getBLRankScoreComp = exports.getBLScoreComp = exports.getBLPlayerComp = exports.getSSPlayerComp = exports.getBSMapComp = void 0;
|
7
7
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
8
8
|
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 bl_score_with_rank_1 = __importDefault(require("../../img-render/result/bl-score-with-rank"));
|
12
13
|
const getBSMapComp = (bsMap, bsMapQrUrl, previewQrUrl) => {
|
13
14
|
return ((0, jsx_runtime_1.jsx)(bs_map_1.default, { bsMap: bsMap, bsMapQrUrl: bsMapQrUrl, previewQrUrl: previewQrUrl }));
|
14
15
|
};
|
15
16
|
exports.getBSMapComp = getBSMapComp;
|
16
|
-
const getSSPlayerComp = (scores, userInfo) => {
|
17
|
-
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 });
|
18
19
|
};
|
19
20
|
exports.getSSPlayerComp = getSSPlayerComp;
|
20
|
-
const getBLPlayerComp = (scores, userInfo) => {
|
21
|
-
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 });
|
22
23
|
};
|
23
24
|
exports.getBLPlayerComp = getBLPlayerComp;
|
24
25
|
const getBLScoreComp = (score, bsMap, statistic, bsor, qrcodeUrl) => {
|
25
26
|
return ((0, jsx_runtime_1.jsx)(bl_score_1.BLScore, { score: score, bsMap: bsMap, statistic: statistic, bsor: bsor, qrcodeUrl: qrcodeUrl }));
|
26
27
|
};
|
27
28
|
exports.getBLScoreComp = getBLScoreComp;
|
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
|
+
};
|
32
|
+
exports.getBLRankScoreComp = getBLRankScoreComp;
|
28
33
|
//# sourceMappingURL=index.js.map
|