beatsaber-bot-core 0.2.0-rc.8 → 0.3.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/cmd/bind/bind-beatleader.js +2 -2
- package/dist/cjs/cmd/bind/bind-beatleader.js.map +1 -1
- package/dist/cjs/cmd/bind/bind-beatsaver.js +2 -2
- package/dist/cjs/cmd/bind/bind-beatsaver.js.map +1 -1
- package/dist/cjs/cmd/bind/bind-id-beatleader.js +3 -3
- package/dist/cjs/cmd/bind/bind-id-beatleader.js.map +1 -1
- package/dist/cjs/cmd/bind/bind-id-beatsaver.js +3 -3
- package/dist/cjs/cmd/bind/bind-id-beatsaver.js.map +1 -1
- package/dist/cjs/cmd/bind/bind-scoresaber.js +3 -3
- package/dist/cjs/cmd/bind/bind-scoresaber.js.map +1 -1
- package/dist/cjs/cmd/bind/index.js +12 -12
- package/dist/cjs/cmd/bind/index.js.map +1 -1
- package/dist/cjs/cmd/bsmap/id-search.js +3 -3
- package/dist/cjs/cmd/bsmap/id-search.js.map +1 -1
- package/dist/cjs/cmd/bsmap/key-search.js +2 -2
- package/dist/cjs/cmd/bsmap/key-search.js.map +1 -1
- package/dist/cjs/cmd/bsmap/latest.js +2 -2
- package/dist/cjs/cmd/bsmap/latest.js.map +1 -1
- package/dist/cjs/cmd/deprecated/tmp.js +4 -4
- package/dist/cjs/cmd/deprecated/tmp.js.map +1 -1
- package/dist/cjs/cmd/index.js +11 -11
- package/dist/cjs/cmd/index.js.map +1 -1
- package/dist/cjs/cmd/rank.js +8 -8
- package/dist/cjs/cmd/rank.js.map +1 -1
- package/dist/cjs/cmd/score.js +16 -20
- package/dist/cjs/cmd/score.js.map +1 -1
- package/dist/cjs/cmd/subscribe/beatleader.js +3 -3
- package/dist/cjs/cmd/subscribe/beatleader.js.map +1 -1
- package/dist/cjs/cmd/subscribe/beatsaver.js +3 -3
- package/dist/cjs/cmd/subscribe/beatsaver.js.map +1 -1
- package/dist/cjs/cmd/subscribe/id-beatleader-score.js +4 -4
- package/dist/cjs/cmd/subscribe/id-beatleader-score.js.map +1 -1
- package/dist/cjs/cmd/subscribe/id-beatsaver-mapper.js +4 -4
- package/dist/cjs/cmd/subscribe/id-beatsaver-mapper.js.map +1 -1
- package/dist/cjs/cmd/subscribe/index.js +8 -8
- package/dist/cjs/cmd/subscribe/index.js.map +1 -1
- package/dist/cjs/cmd/subscribe/subjoin.js +6 -6
- package/dist/cjs/cmd/subscribe/subjoin.js.map +1 -1
- package/dist/cjs/cmd/subscribe/subleave.js +6 -6
- package/dist/cjs/cmd/subscribe/subleave.js.map +1 -1
- package/dist/cjs/cmd/subscribe/unsubscribe.js +8 -8
- package/dist/cjs/cmd/subscribe/unsubscribe.js.map +1 -1
- package/dist/cjs/common/cache.js.map +1 -0
- package/dist/cjs/common/fetch/error.js.map +1 -0
- package/dist/cjs/{infra/support → common}/fetch/index.js +16 -14
- package/dist/cjs/common/fetch/index.js.map +1 -0
- package/dist/cjs/{infra/support → common}/fetch/ofetch.js +5 -12
- package/dist/cjs/common/fetch/ofetch.js.map +1 -0
- package/dist/cjs/common/i18n/index.js +55 -0
- package/dist/cjs/common/i18n/index.js.map +1 -0
- package/dist/cjs/common/i18n/parser.js.map +1 -0
- package/dist/cjs/{infra/i18n/index.js → common/i18n/util.js} +10 -71
- package/dist/cjs/common/i18n/util.js.map +1 -0
- package/dist/cjs/{infra/support → common}/render/index.js +55 -15
- package/dist/cjs/common/render/index.js.map +1 -0
- package/dist/cjs/common/render/puppeteer.js.map +1 -0
- package/dist/cjs/{infra → common}/s3/index.js +34 -13
- package/dist/cjs/common/s3/index.js.map +1 -0
- package/dist/cjs/components/components/RankDifficulty.js +60 -84
- package/dist/cjs/components/components/RankDifficulty.js.map +1 -1
- package/dist/cjs/components/components/base/avatar.js +1 -2
- package/dist/cjs/components/components/base/avatar.js.map +1 -1
- package/dist/cjs/components/components/bl-rank-score-item.js +25 -87
- package/dist/cjs/components/components/bl-rank-score-item.js.map +1 -1
- package/dist/cjs/components/components/bl-score-item.js +28 -69
- package/dist/cjs/components/components/bl-score-item.js.map +1 -1
- package/dist/cjs/components/components/characteristic.js +106 -118
- package/dist/cjs/components/components/characteristic.js.map +1 -1
- package/dist/cjs/components/components/flag.js +6 -14
- package/dist/cjs/components/components/flag.js.map +1 -1
- package/dist/cjs/components/components/icons/BeatLeader.js +55 -71
- package/dist/cjs/components/components/icons/BeatLeader.js.map +1 -1
- package/dist/cjs/components/components/icons/RankIcon.js +3 -7
- package/dist/cjs/components/components/icons/RankIcon.js.map +1 -1
- package/dist/cjs/components/components/icons/ScoreSaberIcon.js +276 -312
- package/dist/cjs/components/components/icons/ScoreSaberIcon.js.map +1 -1
- package/dist/cjs/components/components/progressbar.js +12 -2
- package/dist/cjs/components/components/progressbar.js.map +1 -1
- package/dist/cjs/components/components/scoreItem.js +26 -63
- package/dist/cjs/components/components/scoreItem.js.map +1 -1
- package/dist/cjs/components/components/scoregraph.js +4 -5
- package/dist/cjs/components/components/scoregraph.js.map +1 -1
- package/dist/cjs/components/components/skill-graph.js +147 -164
- package/dist/cjs/components/components/skill-graph.js.map +1 -1
- package/dist/cjs/components/components/socre-badge.js +7 -10
- package/dist/cjs/components/components/socre-badge.js.map +1 -1
- package/dist/cjs/components/components/ss-rank-score-item.js +25 -87
- package/dist/cjs/components/components/ss-rank-score-item.js.map +1 -1
- package/dist/cjs/components/components/ss-score-item.js +38 -65
- package/dist/cjs/components/components/ss-score-item.js.map +1 -1
- package/dist/cjs/components/index.js +3 -43
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/components/pages/bl-player.js +91 -136
- package/dist/cjs/components/pages/bl-player.js.map +1 -1
- package/dist/cjs/components/pages/bl-score-with-rank.js +114 -221
- package/dist/cjs/components/pages/bl-score-with-rank.js.map +1 -1
- package/dist/cjs/components/pages/bl-score.js +67 -169
- package/dist/cjs/components/pages/bl-score.js.map +1 -1
- package/dist/cjs/components/pages/bs-map.js +95 -166
- package/dist/cjs/components/pages/bs-map.js.map +1 -1
- package/dist/cjs/components/pages/index.js +26 -26
- package/dist/cjs/components/pages/index.js.map +1 -1
- package/dist/cjs/components/pages/ss-player.js +48 -77
- package/dist/cjs/components/pages/ss-player.js.map +1 -1
- package/dist/cjs/components/utils/bl/bsorReplayAcc.js +2 -2
- package/dist/cjs/components/utils/bl/bsorReplayAcc.js.map +1 -1
- package/dist/cjs/components/utils/bl/getPart.js.map +1 -1
- package/dist/cjs/components/utils/bl/stastic.js.map +1 -1
- package/dist/cjs/components/utils/format.js +3 -3
- package/dist/cjs/components/utils/format.js.map +1 -1
- package/dist/cjs/components/utils/getMods.js.map +1 -1
- package/dist/cjs/components/utils/index.js +4 -4
- package/dist/cjs/config.js +40 -0
- package/dist/cjs/config.js.map +1 -1
- package/dist/cjs/{interface → core}/cmd/builder.js +5 -5
- package/dist/cjs/core/cmd/builder.js.map +1 -0
- package/dist/cjs/core/cmd/type.js.map +1 -0
- package/dist/cjs/core/domain.js +16 -0
- package/dist/cjs/core/domain.js.map +1 -0
- package/dist/cjs/core/error.js +38 -0
- package/dist/cjs/core/error.js.map +1 -0
- package/dist/cjs/{interface/bot.js → core/event.js} +3 -3
- package/dist/cjs/core/event.js.map +1 -0
- package/dist/cjs/core/index.js +39 -0
- package/dist/cjs/core/index.js.map +1 -0
- package/dist/cjs/core/logger.js.map +1 -0
- package/dist/cjs/core/session.js +16 -0
- package/dist/cjs/core/session.js.map +1 -0
- package/dist/cjs/{schedules → events/schedules}/index.js +4 -3
- package/dist/cjs/events/schedules/index.js.map +1 -0
- package/dist/cjs/{schedules → events/schedules}/temp.js +7 -3
- package/dist/cjs/events/schedules/temp.js.map +1 -0
- package/dist/cjs/{ws → events/ws}/beatleader.js +6 -6
- package/dist/cjs/events/ws/beatleader.js.map +1 -0
- package/dist/cjs/{ws → events/ws}/beatsaver.js +11 -11
- package/dist/cjs/events/ws/beatsaver.js.map +1 -0
- package/dist/cjs/events/ws/handler.js.map +1 -0
- package/dist/cjs/{ws → events/ws}/index.js +6 -8
- package/dist/cjs/events/ws/index.js.map +1 -0
- package/dist/cjs/index.js +27 -18
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interface/db/index.js +0 -6
- package/dist/cjs/interface/db/index.js.map +1 -1
- package/dist/cjs/interface/db/models.js.map +1 -1
- package/dist/cjs/interface/index.js +12 -21
- package/dist/cjs/interface/index.js.map +1 -1
- package/dist/cjs/{service → services}/api/base/aioclient.js +1 -1
- package/dist/cjs/services/api/base/aioclient.js.map +1 -0
- package/dist/cjs/{service → services}/api/base/blclient.js +1 -1
- package/dist/cjs/services/api/base/blclient.js.map +1 -0
- package/dist/cjs/{service → services}/api/base/bsclient.js +2 -2
- package/dist/cjs/services/api/base/bsclient.js.map +1 -0
- package/dist/cjs/{service → services}/api/base/index.js +8 -8
- package/dist/cjs/services/api/base/index.js.map +1 -0
- package/dist/cjs/{service → services}/api/base/ssclient.js +2 -2
- package/dist/cjs/services/api/base/ssclient.js.map +1 -0
- package/dist/cjs/{service → services}/api/index.js +17 -9
- package/dist/cjs/services/api/index.js.map +1 -0
- package/dist/cjs/services/api/interfaces/aiosaber/index.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatleader/bsor.js.map +1 -0
- package/dist/cjs/{service → services}/api/interfaces/beatleader/index.js +10 -10
- package/dist/cjs/services/api/interfaces/beatleader/index.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatleader/req.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatleader/score.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatleader/user.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatleader/ws.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatsaver/alert.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatsaver/bsmap.js.map +1 -0
- package/dist/cjs/{service → services}/api/interfaces/beatsaver/index.js +10 -10
- package/dist/cjs/services/api/interfaces/beatsaver/index.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatsaver/resp.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatsaver/user.js.map +1 -0
- package/dist/cjs/services/api/interfaces/beatsaver/ws.js.map +1 -0
- package/dist/cjs/services/api/interfaces/index.js.map +1 -0
- package/dist/cjs/{service → services}/api/interfaces/scoresaber/index.js +6 -6
- package/dist/cjs/services/api/interfaces/scoresaber/index.js.map +1 -0
- package/dist/cjs/services/api/interfaces/scoresaber/item.js.map +1 -0
- package/dist/cjs/services/api/interfaces/scoresaber/leaderboard.js.map +1 -0
- package/dist/cjs/services/api/interfaces/scoresaber/resp.js.map +1 -0
- package/dist/cjs/services/api/interfaces/scoresaber/user.js.map +1 -0
- package/dist/cjs/services/api/interfaces/scoresaber/ws.js.map +1 -0
- package/dist/cjs/services/api/sortScore.js.map +1 -0
- package/dist/cjs/{infra → services}/errors/index.js +21 -38
- package/dist/cjs/services/errors/index.js.map +1 -0
- package/dist/cjs/services/i18n/index.js +43 -0
- package/dist/cjs/services/i18n/index.js.map +1 -0
- package/dist/cjs/{infra → services}/i18n/zh-cn.json +1 -1
- package/dist/cjs/{infra → services}/index.js +12 -9
- package/dist/cjs/services/index.js.map +1 -0
- package/dist/cjs/services/preference.js.map +1 -0
- package/dist/cjs/{service → services}/render/index.js +36 -13
- package/dist/cjs/services/render/index.js.map +1 -0
- package/dist/cjs/utils/bsorDecoder.js +329 -0
- package/dist/cjs/utils/bsorDecoder.js.map +1 -0
- package/dist/cjs/utils/index.js +6 -1
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/platform.js +38 -0
- package/dist/cjs/utils/platform.js.map +1 -0
- package/dist/esm/cmd/bind/bind-beatleader.js +2 -2
- package/dist/esm/cmd/bind/bind-beatleader.js.map +1 -1
- package/dist/esm/cmd/bind/bind-beatsaver.js +2 -2
- package/dist/esm/cmd/bind/bind-beatsaver.js.map +1 -1
- package/dist/esm/cmd/bind/bind-id-beatleader.js +3 -3
- package/dist/esm/cmd/bind/bind-id-beatleader.js.map +1 -1
- package/dist/esm/cmd/bind/bind-id-beatsaver.js +3 -3
- package/dist/esm/cmd/bind/bind-id-beatsaver.js.map +1 -1
- package/dist/esm/cmd/bind/bind-scoresaber.js +3 -3
- package/dist/esm/cmd/bind/bind-scoresaber.js.map +1 -1
- package/dist/esm/cmd/bind/index.js +5 -5
- package/dist/esm/cmd/bind/index.js.map +1 -1
- package/dist/esm/cmd/bsmap/id-search.js +2 -2
- package/dist/esm/cmd/bsmap/id-search.js.map +1 -1
- package/dist/esm/cmd/bsmap/key-search.js +1 -1
- package/dist/esm/cmd/bsmap/key-search.js.map +1 -1
- package/dist/esm/cmd/bsmap/latest.js +2 -2
- package/dist/esm/cmd/bsmap/latest.js.map +1 -1
- package/dist/esm/cmd/deprecated/tmp.js +3 -3
- package/dist/esm/cmd/deprecated/tmp.js.map +1 -1
- package/dist/esm/cmd/index.js +11 -11
- package/dist/esm/cmd/index.js.map +1 -1
- package/dist/esm/cmd/rank.js +5 -5
- package/dist/esm/cmd/rank.js.map +1 -1
- package/dist/esm/cmd/score.js +13 -17
- package/dist/esm/cmd/score.js.map +1 -1
- package/dist/esm/cmd/subscribe/beatleader.js +3 -3
- package/dist/esm/cmd/subscribe/beatleader.js.map +1 -1
- package/dist/esm/cmd/subscribe/beatsaver.js +3 -3
- package/dist/esm/cmd/subscribe/beatsaver.js.map +1 -1
- package/dist/esm/cmd/subscribe/id-beatleader-score.js +4 -4
- package/dist/esm/cmd/subscribe/id-beatleader-score.js.map +1 -1
- package/dist/esm/cmd/subscribe/id-beatsaver-mapper.js +4 -4
- package/dist/esm/cmd/subscribe/id-beatsaver-mapper.js.map +1 -1
- package/dist/esm/cmd/subscribe/index.js +7 -7
- package/dist/esm/cmd/subscribe/index.js.map +1 -1
- package/dist/esm/cmd/subscribe/subjoin.js +5 -5
- package/dist/esm/cmd/subscribe/subjoin.js.map +1 -1
- package/dist/esm/cmd/subscribe/subleave.js +5 -5
- package/dist/esm/cmd/subscribe/subleave.js.map +1 -1
- package/dist/esm/cmd/subscribe/unsubscribe.js +7 -7
- package/dist/esm/cmd/subscribe/unsubscribe.js.map +1 -1
- package/dist/esm/common/cache.js.map +1 -0
- package/dist/esm/common/fetch/error.js.map +1 -0
- package/dist/esm/common/fetch/index.js +35 -0
- package/dist/esm/common/fetch/index.js.map +1 -0
- package/dist/esm/{infra/support → common}/fetch/ofetch.js +4 -10
- package/dist/esm/common/fetch/ofetch.js.map +1 -0
- package/dist/esm/common/i18n/index.js +32 -0
- package/dist/esm/common/i18n/index.js.map +1 -0
- package/dist/esm/common/i18n/parser.js.map +1 -0
- package/dist/esm/{infra/i18n/index.js → common/i18n/util.js} +4 -56
- package/dist/esm/common/i18n/util.js.map +1 -0
- package/dist/esm/{infra/support → common}/render/index.js +53 -13
- package/dist/esm/common/render/index.js.map +1 -0
- package/dist/esm/common/render/puppeteer.js.map +1 -0
- package/dist/esm/{infra → common}/s3/index.js +32 -12
- package/dist/esm/common/s3/index.js.map +1 -0
- package/dist/esm/components/components/RankDifficulty.js +60 -84
- package/dist/esm/components/components/RankDifficulty.js.map +1 -1
- package/dist/esm/components/components/base/avatar.js +1 -2
- package/dist/esm/components/components/base/avatar.js.map +1 -1
- package/dist/esm/components/components/bl-rank-score-item.js +25 -87
- package/dist/esm/components/components/bl-rank-score-item.js.map +1 -1
- package/dist/esm/components/components/bl-score-item.js +28 -69
- package/dist/esm/components/components/bl-score-item.js.map +1 -1
- package/dist/esm/components/components/characteristic.js +106 -118
- package/dist/esm/components/components/characteristic.js.map +1 -1
- package/dist/esm/components/components/flag.js +6 -14
- package/dist/esm/components/components/flag.js.map +1 -1
- package/dist/esm/components/components/icons/BeatLeader.js +55 -71
- package/dist/esm/components/components/icons/BeatLeader.js.map +1 -1
- package/dist/esm/components/components/icons/RankIcon.js +3 -7
- package/dist/esm/components/components/icons/RankIcon.js.map +1 -1
- package/dist/esm/components/components/icons/ScoreSaberIcon.js +276 -312
- package/dist/esm/components/components/icons/ScoreSaberIcon.js.map +1 -1
- package/dist/esm/components/components/progressbar.js +2 -2
- package/dist/esm/components/components/progressbar.js.map +1 -1
- package/dist/esm/components/components/scoreItem.js +26 -63
- package/dist/esm/components/components/scoreItem.js.map +1 -1
- package/dist/esm/components/components/scoregraph.js +4 -5
- package/dist/esm/components/components/scoregraph.js.map +1 -1
- package/dist/esm/components/components/skill-graph.js +147 -164
- package/dist/esm/components/components/skill-graph.js.map +1 -1
- package/dist/esm/components/components/socre-badge.js +7 -10
- package/dist/esm/components/components/socre-badge.js.map +1 -1
- package/dist/esm/components/components/ss-rank-score-item.js +25 -87
- package/dist/esm/components/components/ss-rank-score-item.js.map +1 -1
- package/dist/esm/components/components/ss-score-item.js +28 -65
- package/dist/esm/components/components/ss-score-item.js.map +1 -1
- package/dist/esm/components/index.js +3 -43
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/components/pages/bl-player.js +91 -136
- package/dist/esm/components/pages/bl-player.js.map +1 -1
- package/dist/esm/components/pages/bl-score-with-rank.js +114 -221
- package/dist/esm/components/pages/bl-score-with-rank.js.map +1 -1
- package/dist/esm/components/pages/bl-score.js +67 -169
- package/dist/esm/components/pages/bl-score.js.map +1 -1
- package/dist/esm/components/pages/bs-map.js +95 -166
- package/dist/esm/components/pages/bs-map.js.map +1 -1
- package/dist/esm/components/pages/index.js +21 -21
- package/dist/esm/components/pages/index.js.map +1 -1
- package/dist/esm/components/pages/ss-player.js +48 -77
- package/dist/esm/components/pages/ss-player.js.map +1 -1
- package/dist/esm/components/utils/bl/bsorReplayAcc.js +2 -2
- package/dist/esm/components/utils/bl/bsorReplayAcc.js.map +1 -1
- package/dist/esm/components/utils/bl/getPart.js.map +1 -1
- package/dist/esm/components/utils/bl/stastic.js.map +1 -1
- package/dist/esm/components/utils/format.js +3 -3
- package/dist/esm/components/utils/format.js.map +1 -1
- package/dist/esm/components/utils/getMods.js.map +1 -1
- package/dist/esm/components/utils/index.js +2 -2
- package/dist/esm/config.js +32 -0
- package/dist/esm/config.js.map +1 -1
- package/dist/esm/{interface → core}/cmd/builder.js +4 -4
- package/dist/esm/core/cmd/builder.js.map +1 -0
- package/dist/esm/core/domain.js +1 -0
- package/dist/esm/core/error.js +16 -0
- package/dist/esm/core/error.js.map +1 -0
- package/dist/esm/core/event.js +1 -0
- package/dist/esm/core/index.js +10 -0
- package/dist/esm/core/index.js.map +1 -0
- package/dist/esm/core/session.js +1 -0
- package/dist/esm/events/schedules/index.js +16 -0
- package/dist/esm/events/schedules/index.js.map +1 -0
- package/dist/esm/{schedules → events/schedules}/temp.js +7 -3
- package/dist/esm/events/schedules/temp.js.map +1 -0
- package/dist/esm/{ws → events/ws}/beatleader.js +6 -6
- package/dist/esm/events/ws/beatleader.js.map +1 -0
- package/dist/esm/{ws → events/ws}/beatsaver.js +11 -11
- package/dist/esm/events/ws/beatsaver.js.map +1 -0
- package/dist/esm/events/ws/index.js +4 -0
- package/dist/esm/events/ws/index.js.map +1 -0
- package/dist/esm/index.js +15 -10
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interface/db/index.js +0 -1
- package/dist/esm/interface/db/index.js.map +1 -1
- package/dist/esm/interface/index.js +9 -15
- package/dist/esm/interface/index.js.map +1 -1
- package/dist/esm/{service → services}/api/base/aioclient.js +1 -1
- package/dist/esm/services/api/base/aioclient.js.map +1 -0
- package/dist/esm/{service → services}/api/base/blclient.js +1 -1
- package/dist/esm/services/api/base/blclient.js.map +1 -0
- package/dist/esm/{service → services}/api/base/bsclient.js +2 -2
- package/dist/esm/services/api/base/bsclient.js.map +1 -0
- package/dist/esm/services/api/base/index.js +5 -0
- package/dist/esm/services/api/base/index.js.map +1 -0
- package/dist/esm/{service → services}/api/base/ssclient.js +2 -2
- package/dist/esm/services/api/base/ssclient.js.map +1 -0
- package/dist/esm/{service → services}/api/index.js +16 -8
- package/dist/esm/services/api/index.js.map +1 -0
- package/dist/esm/services/api/interfaces/beatleader/index.js +6 -0
- package/dist/esm/services/api/interfaces/beatleader/index.js.map +1 -0
- package/dist/esm/services/api/interfaces/beatsaver/index.js +6 -0
- package/dist/esm/services/api/interfaces/beatsaver/index.js.map +1 -0
- package/dist/esm/services/api/interfaces/scoresaber/index.js +4 -0
- package/dist/esm/services/api/interfaces/scoresaber/index.js.map +1 -0
- package/dist/esm/services/api/sortScore.js.map +1 -0
- package/dist/esm/{infra → services}/errors/index.js +1 -17
- package/dist/esm/services/errors/index.js.map +1 -0
- package/dist/esm/services/i18n/index.js +21 -0
- package/dist/esm/services/i18n/index.js.map +1 -0
- package/dist/esm/services/index.js +9 -0
- package/dist/esm/services/index.js.map +1 -0
- package/dist/esm/services/preference.js.map +1 -0
- package/dist/esm/{service → services}/render/index.js +34 -11
- package/dist/esm/services/render/index.js.map +1 -0
- package/dist/esm/utils/bsorDecoder.js +301 -0
- package/dist/esm/utils/bsorDecoder.js.map +1 -0
- package/dist/esm/utils/index.js +2 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/platform.js +14 -0
- package/dist/esm/utils/platform.js.map +1 -0
- package/dist/types/index.d.ts +1376 -48
- package/package.json +19 -10
- package/dist/cjs/components/utils/canvas.js +0 -2
- package/dist/cjs/components/utils/canvas.js.map +0 -1
- package/dist/cjs/infra/errors/index.js.map +0 -1
- package/dist/cjs/infra/i18n/index.js.map +0 -1
- package/dist/cjs/infra/i18n/parser.js.map +0 -1
- package/dist/cjs/infra/index.js.map +0 -1
- package/dist/cjs/infra/s3/index.js.map +0 -1
- package/dist/cjs/infra/support/cache.js.map +0 -1
- package/dist/cjs/infra/support/fetch/error.js.map +0 -1
- package/dist/cjs/infra/support/fetch/index.js.map +0 -1
- package/dist/cjs/infra/support/fetch/ofetch.js.map +0 -1
- package/dist/cjs/infra/support/render/index.js.map +0 -1
- package/dist/cjs/infra/support/render/puppeteer.js.map +0 -1
- package/dist/cjs/interface/bot.js.map +0 -1
- package/dist/cjs/interface/cmd/builder.js.map +0 -1
- package/dist/cjs/interface/cmd/type.js.map +0 -1
- package/dist/cjs/interface/logger.js.map +0 -1
- package/dist/cjs/schedules/index.js.map +0 -1
- package/dist/cjs/schedules/interface.js +0 -16
- package/dist/cjs/schedules/interface.js.map +0 -1
- package/dist/cjs/schedules/temp.js.map +0 -1
- package/dist/cjs/service/api/base/aioclient.js.map +0 -1
- package/dist/cjs/service/api/base/blclient.js.map +0 -1
- package/dist/cjs/service/api/base/bsclient.js.map +0 -1
- package/dist/cjs/service/api/base/index.js.map +0 -1
- package/dist/cjs/service/api/base/ssclient.js.map +0 -1
- package/dist/cjs/service/api/index.js.map +0 -1
- package/dist/cjs/service/api/interfaces/aiosaber/index.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatleader/bsor.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatleader/index.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatleader/req.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatleader/score.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatleader/user.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatleader/ws.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatsaver/alert.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatsaver/bsmap.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatsaver/index.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatsaver/resp.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatsaver/user.js.map +0 -1
- package/dist/cjs/service/api/interfaces/beatsaver/ws.js.map +0 -1
- package/dist/cjs/service/api/interfaces/index.js.map +0 -1
- package/dist/cjs/service/api/interfaces/scoresaber/index.js.map +0 -1
- package/dist/cjs/service/api/interfaces/scoresaber/item.js.map +0 -1
- package/dist/cjs/service/api/interfaces/scoresaber/leaderboard.js.map +0 -1
- package/dist/cjs/service/api/interfaces/scoresaber/resp.js.map +0 -1
- package/dist/cjs/service/api/interfaces/scoresaber/user.js.map +0 -1
- package/dist/cjs/service/api/interfaces/scoresaber/ws.js.map +0 -1
- package/dist/cjs/service/api/sortScore.js.map +0 -1
- package/dist/cjs/service/index.js +0 -16
- package/dist/cjs/service/index.js.map +0 -1
- package/dist/cjs/service/preference.js.map +0 -1
- package/dist/cjs/service/render/index.js.map +0 -1
- package/dist/cjs/service/render/interfaces.js +0 -16
- package/dist/cjs/service/render/interfaces.js.map +0 -1
- package/dist/cjs/ws/beatleader.js.map +0 -1
- package/dist/cjs/ws/beatsaver.js.map +0 -1
- package/dist/cjs/ws/bl-filter.js +0 -1
- package/dist/cjs/ws/handler.js.map +0 -1
- package/dist/cjs/ws/index.js.map +0 -1
- package/dist/cjs/ws/scoresaber.js +0 -75
- package/dist/cjs/ws/scoresaber.js.map +0 -1
- package/dist/esm/components/utils/canvas.js +0 -2
- package/dist/esm/components/utils/canvas.js.map +0 -1
- package/dist/esm/infra/errors/index.js.map +0 -1
- package/dist/esm/infra/i18n/index.js.map +0 -1
- package/dist/esm/infra/i18n/parser.js.map +0 -1
- package/dist/esm/infra/index.js +0 -6
- package/dist/esm/infra/index.js.map +0 -1
- package/dist/esm/infra/s3/index.js.map +0 -1
- package/dist/esm/infra/support/cache.js.map +0 -1
- package/dist/esm/infra/support/fetch/error.js.map +0 -1
- package/dist/esm/infra/support/fetch/index.js +0 -33
- package/dist/esm/infra/support/fetch/index.js.map +0 -1
- package/dist/esm/infra/support/fetch/ofetch.js.map +0 -1
- package/dist/esm/infra/support/render/index.js.map +0 -1
- package/dist/esm/infra/support/render/puppeteer.js.map +0 -1
- package/dist/esm/interface/bot.js +0 -1
- package/dist/esm/interface/cmd/builder.js.map +0 -1
- package/dist/esm/schedules/index.js +0 -15
- package/dist/esm/schedules/index.js.map +0 -1
- package/dist/esm/schedules/interface.js +0 -1
- package/dist/esm/schedules/temp.js.map +0 -1
- package/dist/esm/service/api/base/aioclient.js.map +0 -1
- package/dist/esm/service/api/base/blclient.js.map +0 -1
- package/dist/esm/service/api/base/bsclient.js.map +0 -1
- package/dist/esm/service/api/base/index.js +0 -5
- package/dist/esm/service/api/base/index.js.map +0 -1
- package/dist/esm/service/api/base/ssclient.js.map +0 -1
- package/dist/esm/service/api/index.js.map +0 -1
- package/dist/esm/service/api/interfaces/beatleader/index.js +0 -6
- package/dist/esm/service/api/interfaces/beatleader/index.js.map +0 -1
- package/dist/esm/service/api/interfaces/beatsaver/index.js +0 -6
- package/dist/esm/service/api/interfaces/beatsaver/index.js.map +0 -1
- package/dist/esm/service/api/interfaces/scoresaber/index.js +0 -4
- package/dist/esm/service/api/interfaces/scoresaber/index.js.map +0 -1
- package/dist/esm/service/api/sortScore.js.map +0 -1
- package/dist/esm/service/index.js +0 -1
- package/dist/esm/service/index.js.map +0 -1
- package/dist/esm/service/preference.js.map +0 -1
- package/dist/esm/service/render/index.js.map +0 -1
- package/dist/esm/service/render/interfaces.js +0 -1
- package/dist/esm/service/render/interfaces.js.map +0 -1
- package/dist/esm/ws/beatleader.js.map +0 -1
- package/dist/esm/ws/beatsaver.js.map +0 -1
- package/dist/esm/ws/bl-filter.js +0 -1
- package/dist/esm/ws/bl-filter.js.map +0 -1
- package/dist/esm/ws/index.js +0 -5
- package/dist/esm/ws/index.js.map +0 -1
- package/dist/esm/ws/scoresaber.js +0 -53
- package/dist/esm/ws/scoresaber.js.map +0 -1
- package/dist/types/cmd/bind/bind-beatleader.d.ts +0 -34
- package/dist/types/cmd/bind/bind-beatsaver.d.ts +0 -34
- package/dist/types/cmd/bind/bind-id-beatleader.d.ts +0 -34
- package/dist/types/cmd/bind/bind-id-beatsaver.d.ts +0 -34
- package/dist/types/cmd/bind/bind-scoresaber.d.ts +0 -34
- package/dist/types/cmd/bind/index.d.ts +0 -41
- package/dist/types/cmd/bsmap/id-search.d.ts +0 -41
- package/dist/types/cmd/bsmap/key-search.d.ts +0 -41
- package/dist/types/cmd/bsmap/latest.d.ts +0 -41
- package/dist/types/cmd/config/index.d.ts +0 -2
- package/dist/types/cmd/deprecated/tmp.d.ts +0 -41
- package/dist/types/cmd/index.d.ts +0 -34
- package/dist/types/cmd/rank.d.ts +0 -41
- package/dist/types/cmd/score.d.ts +0 -41
- package/dist/types/cmd/subscribe/beatleader.d.ts +0 -34
- package/dist/types/cmd/subscribe/beatsaver.d.ts +0 -34
- package/dist/types/cmd/subscribe/id-beatleader-score.d.ts +0 -34
- package/dist/types/cmd/subscribe/id-beatsaver-mapper.d.ts +0 -34
- package/dist/types/cmd/subscribe/index.d.ts +0 -41
- package/dist/types/cmd/subscribe/subjoin.d.ts +0 -41
- package/dist/types/cmd/subscribe/subleave.d.ts +0 -41
- package/dist/types/cmd/subscribe/unsubscribe.d.ts +0 -41
- package/dist/types/components/components/RankDifficulty.d.ts +0 -10
- package/dist/types/components/components/base/avatar.d.ts +0 -10
- package/dist/types/components/components/bl-rank-score-item.d.ts +0 -21
- package/dist/types/components/components/bl-score-item.d.ts +0 -10
- package/dist/types/components/components/characteristic.d.ts +0 -9
- package/dist/types/components/components/flag.d.ts +0 -9
- package/dist/types/components/components/icons/BeatLeader.d.ts +0 -6
- package/dist/types/components/components/icons/RankIcon.d.ts +0 -8
- package/dist/types/components/components/icons/ScoreSaberIcon.d.ts +0 -6
- package/dist/types/components/components/progressbar.d.ts +0 -8
- package/dist/types/components/components/scoreItem.d.ts +0 -8
- package/dist/types/components/components/scoregraph.d.ts +0 -15
- package/dist/types/components/components/skill-graph.d.ts +0 -9
- package/dist/types/components/components/socre-badge.d.ts +0 -9
- package/dist/types/components/components/ss-rank-score-item.d.ts +0 -21
- package/dist/types/components/components/ss-score-item.d.ts +0 -8
- package/dist/types/components/index.d.ts +0 -5
- package/dist/types/components/pages/bl-player.d.ts +0 -11
- package/dist/types/components/pages/bl-score-with-rank.d.ts +0 -18
- package/dist/types/components/pages/bl-score.d.ts +0 -15
- package/dist/types/components/pages/bs-map.d.ts +0 -11
- package/dist/types/components/pages/index.d.ts +0 -14
- package/dist/types/components/pages/ss-player.d.ts +0 -13
- package/dist/types/components/utils/bl/beatleader.d.ts +0 -15
- package/dist/types/components/utils/bl/blheadset.d.ts +0 -275
- package/dist/types/components/utils/bl/bsorDecoder.d.ts +0 -189
- package/dist/types/components/utils/bl/bsorReplayAcc.d.ts +0 -38
- package/dist/types/components/utils/bl/getPart.d.ts +0 -9
- package/dist/types/components/utils/bl/stastic.d.ts +0 -3
- package/dist/types/components/utils/canvas.d.ts +0 -2
- package/dist/types/components/utils/format.d.ts +0 -8
- package/dist/types/components/utils/getMods.d.ts +0 -5
- package/dist/types/components/utils/index.d.ts +0 -6
- package/dist/types/components/utils/qrcode.d.ts +0 -3
- package/dist/types/components/utils/sleep.d.ts +0 -3
- package/dist/types/components/utils/tag-format.d.ts +0 -3
- package/dist/types/components/utils/tw-join.d.ts +0 -5
- package/dist/types/config.d.ts +0 -30
- package/dist/types/index-Dagy_c8G.d.ts +0 -74
- package/dist/types/infra/errors/index.d.ts +0 -69
- package/dist/types/infra/i18n/index.d.ts +0 -4
- package/dist/types/infra/i18n/parser.d.ts +0 -16
- package/dist/types/infra/index.d.ts +0 -6
- package/dist/types/infra/s3/index.d.ts +0 -20
- package/dist/types/infra/support/cache.d.ts +0 -6
- package/dist/types/infra/support/fetch/error.d.ts +0 -11
- package/dist/types/infra/support/fetch/index.d.ts +0 -7
- package/dist/types/infra/support/fetch/ofetch.d.ts +0 -24
- package/dist/types/infra/support/render/index.d.ts +0 -38
- package/dist/types/infra/support/render/puppeteer.d.ts +0 -43
- package/dist/types/interface/bot.d.ts +0 -22
- package/dist/types/interface/cmd/builder.d.ts +0 -53
- package/dist/types/interface/cmd/type.d.ts +0 -30
- package/dist/types/interface/db/index.d.ts +0 -45
- package/dist/types/interface/db/models.d.ts +0 -41
- package/dist/types/interface/index.d.ts +0 -30
- package/dist/types/interface/logger.d.ts +0 -8
- package/dist/types/schedules/index.d.ts +0 -40
- package/dist/types/schedules/interface.d.ts +0 -45
- package/dist/types/schedules/temp.d.ts +0 -35
- package/dist/types/service/api/base/aioclient.d.ts +0 -13
- package/dist/types/service/api/base/blclient.d.ts +0 -28
- package/dist/types/service/api/base/bsclient.d.ts +0 -29
- package/dist/types/service/api/base/index.d.ts +0 -19
- package/dist/types/service/api/base/ssclient.d.ts +0 -17
- package/dist/types/service/api/index.d.ts +0 -59
- package/dist/types/service/api/interfaces/aiosaber/index.d.ts +0 -9
- package/dist/types/service/api/interfaces/beatleader/bsor.d.ts +0 -113
- package/dist/types/service/api/interfaces/beatleader/index.d.ts +0 -5
- package/dist/types/service/api/interfaces/beatleader/req.d.ts +0 -22
- package/dist/types/service/api/interfaces/beatleader/score.d.ts +0 -164
- package/dist/types/service/api/interfaces/beatleader/user.d.ts +0 -173
- package/dist/types/service/api/interfaces/beatleader/ws.d.ts +0 -90
- package/dist/types/service/api/interfaces/beatsaver/alert.d.ts +0 -20
- package/dist/types/service/api/interfaces/beatsaver/bsmap.d.ts +0 -70
- package/dist/types/service/api/interfaces/beatsaver/index.d.ts +0 -13
- package/dist/types/service/api/interfaces/beatsaver/resp.d.ts +0 -11
- package/dist/types/service/api/interfaces/beatsaver/user.d.ts +0 -10
- package/dist/types/service/api/interfaces/beatsaver/ws.d.ts +0 -13
- package/dist/types/service/api/interfaces/index.d.ts +0 -14
- package/dist/types/service/api/interfaces/scoresaber/index.d.ts +0 -3
- package/dist/types/service/api/interfaces/scoresaber/item.d.ts +0 -67
- package/dist/types/service/api/interfaces/scoresaber/leaderboard.d.ts +0 -13
- package/dist/types/service/api/interfaces/scoresaber/resp.d.ts +0 -12
- package/dist/types/service/api/interfaces/scoresaber/user.d.ts +0 -35
- package/dist/types/service/api/interfaces/scoresaber/ws.d.ts +0 -80
- package/dist/types/service/api/sortScore.d.ts +0 -5
- package/dist/types/service/index.d.ts +0 -30
- package/dist/types/service/preference.d.ts +0 -38
- package/dist/types/service/render/index.d.ts +0 -43
- package/dist/types/service/render/interfaces.d.ts +0 -30
- package/dist/types/utils/index.d.ts +0 -5
- package/dist/types/ws/beatleader.d.ts +0 -47
- package/dist/types/ws/beatsaver.d.ts +0 -52
- package/dist/types/ws/bl-filter.d.ts +0 -2
- package/dist/types/ws/handler.d.ts +0 -8
- package/dist/types/ws/index.d.ts +0 -36
- package/dist/types/ws/scoresaber.d.ts +0 -47
- /package/dist/cjs/{infra/support → common}/cache.js +0 -0
- /package/dist/cjs/{infra/support → common}/fetch/error.js +0 -0
- /package/dist/cjs/{infra → common}/i18n/parser.js +0 -0
- /package/dist/cjs/{infra/support → common}/render/puppeteer.js +0 -0
- /package/dist/cjs/{interface → core}/cmd/type.js +0 -0
- /package/dist/cjs/{interface → core}/logger.js +0 -0
- /package/dist/cjs/{ws → events/ws}/handler.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/aiosaber/index.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatleader/bsor.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatleader/req.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatleader/score.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatleader/user.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatleader/ws.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatsaver/alert.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatsaver/bsmap.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatsaver/resp.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatsaver/user.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/beatsaver/ws.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/index.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/scoresaber/item.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/scoresaber/leaderboard.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/scoresaber/resp.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/scoresaber/user.js +0 -0
- /package/dist/cjs/{service → services}/api/interfaces/scoresaber/ws.js +0 -0
- /package/dist/cjs/{service → services}/api/sortScore.js +0 -0
- /package/dist/cjs/{service → services}/preference.js +0 -0
- /package/dist/esm/{infra/support → common}/cache.js +0 -0
- /package/dist/esm/{infra/support → common}/fetch/error.js +0 -0
- /package/dist/esm/{infra → common}/i18n/parser.js +0 -0
- /package/dist/esm/{infra/support → common}/render/puppeteer.js +0 -0
- /package/dist/esm/{interface → core}/cmd/type.js +0 -0
- /package/dist/esm/{interface → core}/cmd/type.js.map +0 -0
- /package/dist/{cjs/ws/bl-filter.js.map → esm/core/domain.js.map} +0 -0
- /package/dist/esm/{interface/bot.js.map → core/event.js.map} +0 -0
- /package/dist/esm/{interface → core}/logger.js +0 -0
- /package/dist/esm/{interface → core}/logger.js.map +0 -0
- /package/dist/esm/{schedules/interface.js.map → core/session.js.map} +0 -0
- /package/dist/esm/{ws → events/ws}/handler.js +0 -0
- /package/dist/esm/{ws → events/ws}/handler.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/aiosaber/index.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/aiosaber/index.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/bsor.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/bsor.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/req.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/req.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/score.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/score.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/user.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/user.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/ws.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatleader/ws.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/alert.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/alert.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/bsmap.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/bsmap.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/resp.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/resp.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/user.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/user.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/ws.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/beatsaver/ws.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/index.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/index.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/item.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/item.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/leaderboard.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/leaderboard.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/resp.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/resp.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/user.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/user.js.map +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/ws.js +0 -0
- /package/dist/esm/{service → services}/api/interfaces/scoresaber/ws.js.map +0 -0
- /package/dist/esm/{service → services}/api/sortScore.js +0 -0
- /package/dist/esm/{service → services}/preference.js +0 -0
@@ -17,7 +17,6 @@ var __spreadValues = (a, b) => {
|
|
17
17
|
return a;
|
18
18
|
};
|
19
19
|
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
20
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
21
20
|
import {
|
22
21
|
Check,
|
23
22
|
Key,
|
@@ -27,15 +26,16 @@ import {
|
|
27
26
|
Calendar,
|
28
27
|
HeartPulse
|
29
28
|
} from "lucide-react";
|
30
|
-
import ScoreGraph from "../components/scoregraph";
|
29
|
+
import ScoreGraph from "../components/scoregraph.js";
|
30
|
+
import React from "react";
|
31
31
|
import {
|
32
32
|
BlRankScoreItem,
|
33
33
|
ScoreItemSkeleton
|
34
|
-
} from "../../components/components/bl-rank-score-item";
|
35
|
-
import { RankDifficulty } from "../../components/components/RankDifficulty";
|
36
|
-
import { Avatar } from "../../components/components/base/avatar";
|
37
|
-
import { formatDuration, formatTime } from "../../components/utils";
|
38
|
-
import Progressbar from "../../components/components/progressbar";
|
34
|
+
} from "../../components/components/bl-rank-score-item.js";
|
35
|
+
import { RankDifficulty } from "../../components/components/RankDifficulty.js";
|
36
|
+
import { Avatar } from "../../components/components/base/avatar.js";
|
37
|
+
import { formatDuration, formatTime } from "../../components/utils/index.js";
|
38
|
+
import Progressbar from "../../components/components/progressbar.js";
|
39
39
|
function BLRankScore({
|
40
40
|
score,
|
41
41
|
aroundScores,
|
@@ -58,225 +58,118 @@ function BLRankScore({
|
|
58
58
|
new Array(7 - regionTopScore.length).fill({ template: true })
|
59
59
|
);
|
60
60
|
}
|
61
|
-
return /* @__PURE__ */
|
61
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
|
62
62
|
"div",
|
63
63
|
{
|
64
64
|
className: "flex flex-col justify-center items-center relative h-[720px] w-[1165px] my-auto rounded-none",
|
65
|
-
id: "render-result"
|
66
|
-
|
67
|
-
|
68
|
-
|
65
|
+
id: "render-result"
|
66
|
+
},
|
67
|
+
/* @__PURE__ */ React.createElement(
|
68
|
+
"div",
|
69
|
+
{
|
70
|
+
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"
|
71
|
+
},
|
72
|
+
/* @__PURE__ */ React.createElement("div", { className: "flex justify-between items-start gap-2 grow" }, /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-start justify-between text-xl font-bold grow h-full" }, /* @__PURE__ */ React.createElement("div", { className: "flex space-x-4 items-center justify-between text-2xl font-bold" }, /* @__PURE__ */ React.createElement(
|
73
|
+
Avatar,
|
74
|
+
{
|
75
|
+
className: "h-16 w-16 rounded-full",
|
76
|
+
src: score.player.avatar,
|
77
|
+
fallback: score.player.name.slice(0, 1)
|
78
|
+
}
|
79
|
+
), /* @__PURE__ */ React.createElement("div", null, score.player.name)), /* @__PURE__ */ React.createElement("div", { className: "text-xl text-ellipsis line-clamp-2" }, score.song.name), /* @__PURE__ */ React.createElement("div", { className: "flex space-x-4 h-52" }, /* @__PURE__ */ React.createElement(
|
80
|
+
Avatar,
|
81
|
+
{
|
82
|
+
className: "h-52 w-52 rounded-md",
|
83
|
+
src: score.song.cover,
|
84
|
+
fallback: score.song.name.slice(0, 1)
|
85
|
+
}
|
86
|
+
), /* @__PURE__ */ React.createElement("div", { className: "text-xs font-bold flex flex-col items-start justify-between grow w-full" }, /* @__PURE__ */ React.createElement("div", { className: "flex space-x-2 items-center text-sm" }, /* @__PURE__ */ React.createElement(
|
87
|
+
Avatar,
|
88
|
+
{
|
89
|
+
className: "h-4 w-4 rounded-full",
|
90
|
+
src: bsMap.uploader.avatar,
|
91
|
+
fallback: score.song.mapper.slice(0, 1)
|
92
|
+
}
|
93
|
+
), /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ React.createElement("div", { className: "text-ellipsis line-clamp-1" }, score.song.mapper))), /* @__PURE__ */ React.createElement("div", { className: "text-xs flex gap-2 items-center *:space-x-1 *:flex *:items-center font-normal" }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React.createElement(HeartPulse, { className: "h-3 w-3" }), /* @__PURE__ */ React.createElement("span", null, bsMap.metadata.bpm.toFixed(0))), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("span", null, /* @__PURE__ */ React.createElement(Key, { className: "w-3 h-3" })), /* @__PURE__ */ React.createElement("span", null, score.song.id.toLowerCase().replaceAll("x", ""))), /* @__PURE__ */ React.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React.createElement(Clock, { className: "h-3 w-3" }), /* @__PURE__ */ React.createElement("span", null, formatDuration(bsMap.metadata.duration))), /* @__PURE__ */ React.createElement("div", { className: "flex items-center text-ellipsis col-span-2 line-clamp-1" }, /* @__PURE__ */ React.createElement(Calendar, { className: "h-3 w-3" }), /* @__PURE__ */ React.createElement("span", null, formatTime(bsMap.lastPublishedAt)))), /* @__PURE__ */ React.createElement("div", { className: "flex items-center space-x-2 justify-between font-normal" }, /* @__PURE__ */ React.createElement(
|
94
|
+
Progressbar,
|
95
|
+
{
|
96
|
+
value: bsMap.stats.score * 100
|
97
|
+
}
|
98
|
+
), /* @__PURE__ */ React.createElement("span", null, (bsMap.stats.score * 100).toFixed(2), " %"), /* @__PURE__ */ React.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React.createElement(ThumbsUp, { className: "h-3 w-3 mr-0.5" }), /* @__PURE__ */ React.createElement("span", null, bsMap.stats.upvotes)), /* @__PURE__ */ React.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React.createElement(ThumbsDown, { className: "h-3 w-3 mr-0.5" }), /* @__PURE__ */ React.createElement("span", null, bsMap.stats.downvotes))), /* @__PURE__ */ React.createElement("div", { className: "text-lg min-w-60 flex flex-col leading-6" }, /* @__PURE__ */ React.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ React.createElement("span", null, " # ", score.pp.toFixed(2), " PP"), /* @__PURE__ */ React.createElement("span", null, " # ", score.rank)), /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ React.createElement("span", null, "Accuracy"), /* @__PURE__ */ React.createElement("span", null, (score.accuracy * 100).toFixed(2), " %")), score.fullCombo && /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ React.createElement("span", null, "Full Combo"), /* @__PURE__ */ React.createElement(Check, null)), score.maxCombo && /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ React.createElement("span", null, "Max Combo"), /* @__PURE__ */ React.createElement("span", null, score.maxCombo)), /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ React.createElement("span", null, "Missed Notes"), /* @__PURE__ */ React.createElement("span", null, score.missedNotes)), /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ React.createElement("span", null, "Total Mistakes"), /* @__PURE__ */ React.createElement("span", null, score.missedNotes)), score.modifiers && /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between" }, /* @__PURE__ */ React.createElement("span", null, "Modifiers"), /* @__PURE__ */ React.createElement("span", null, score.modifiers))))), /* @__PURE__ */ React.createElement("div", { className: "text-xl font-bold h-24 w-[500px] rounded-lg mt-auto flex items-center justify-evenly gap-2 " }, bsMap.versions[0].diffs.filter((it) => it.characteristic === "Standard").map((diff) => {
|
99
|
+
var _a, _b;
|
100
|
+
return /* @__PURE__ */ React.createElement(
|
101
|
+
RankDifficulty,
|
69
102
|
{
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
Avatar,
|
76
|
-
{
|
77
|
-
className: "h-16 w-16 rounded-full",
|
78
|
-
src: score.player.avatar,
|
79
|
-
fallback: score.player.name.slice(0, 1)
|
80
|
-
}
|
81
|
-
),
|
82
|
-
/* @__PURE__ */ jsx("div", { children: score.player.name })
|
83
|
-
] }),
|
84
|
-
/* @__PURE__ */ jsx("div", { className: "text-xl text-ellipsis line-clamp-2", children: score.song.name }),
|
85
|
-
/* @__PURE__ */ jsxs("div", { className: "flex space-x-4 h-52", children: [
|
86
|
-
/* @__PURE__ */ jsx(
|
87
|
-
Avatar,
|
88
|
-
{
|
89
|
-
className: "h-52 w-52 rounded-md",
|
90
|
-
src: score.song.cover,
|
91
|
-
fallback: score.song.name.slice(0, 1)
|
92
|
-
}
|
93
|
-
),
|
94
|
-
/* @__PURE__ */ jsxs("div", { className: "text-xs font-bold flex flex-col items-start justify-between grow w-full", children: [
|
95
|
-
/* @__PURE__ */ jsxs("div", { className: "flex space-x-2 items-center text-sm", children: [
|
96
|
-
/* @__PURE__ */ jsx(
|
97
|
-
Avatar,
|
98
|
-
{
|
99
|
-
className: "h-4 w-4 rounded-full",
|
100
|
-
src: bsMap.uploader.avatar,
|
101
|
-
fallback: score.song.mapper.slice(0, 1)
|
102
|
-
}
|
103
|
-
),
|
104
|
-
/* @__PURE__ */ jsx("div", { className: "flex items-center justify-between", children: /* @__PURE__ */ jsx("div", { className: "text-ellipsis line-clamp-1", children: score.song.mapper }) })
|
105
|
-
] }),
|
106
|
-
/* @__PURE__ */ jsxs("div", { className: "text-xs flex gap-2 items-center *:space-x-1 *:flex *:items-center font-normal", children: [
|
107
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
|
108
|
-
/* @__PURE__ */ jsx(HeartPulse, { className: "h-3 w-3" }),
|
109
|
-
/* @__PURE__ */ jsx("span", { children: bsMap.metadata.bpm.toFixed(0) })
|
110
|
-
] }),
|
111
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
112
|
-
/* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx(Key, { className: "w-3 h-3" }) }),
|
113
|
-
/* @__PURE__ */ jsx("span", { children: score.song.id.toLowerCase().replaceAll("x", "") })
|
114
|
-
] }),
|
115
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
|
116
|
-
/* @__PURE__ */ jsx(Clock, { className: "h-3 w-3" }),
|
117
|
-
/* @__PURE__ */ jsx("span", { children: formatDuration(bsMap.metadata.duration) })
|
118
|
-
] }),
|
119
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center text-ellipsis col-span-2 line-clamp-1", children: [
|
120
|
-
/* @__PURE__ */ jsx(Calendar, { className: "h-3 w-3" }),
|
121
|
-
/* @__PURE__ */ jsx("span", { children: formatTime(bsMap.lastPublishedAt) })
|
122
|
-
] })
|
123
|
-
] }),
|
124
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2 justify-between font-normal", children: [
|
125
|
-
/* @__PURE__ */ jsx(
|
126
|
-
Progressbar,
|
127
|
-
{
|
128
|
-
value: bsMap.stats.score * 100
|
129
|
-
}
|
130
|
-
),
|
131
|
-
/* @__PURE__ */ jsxs("span", { children: [
|
132
|
-
(bsMap.stats.score * 100).toFixed(2),
|
133
|
-
" %"
|
134
|
-
] }),
|
135
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
|
136
|
-
/* @__PURE__ */ jsx(ThumbsUp, { className: "h-3 w-3 mr-0.5" }),
|
137
|
-
/* @__PURE__ */ jsx("span", { children: bsMap.stats.upvotes })
|
138
|
-
] }),
|
139
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
|
140
|
-
/* @__PURE__ */ jsx(ThumbsDown, { className: "h-3 w-3 mr-0.5" }),
|
141
|
-
/* @__PURE__ */ jsx("span", { children: bsMap.stats.downvotes })
|
142
|
-
] })
|
143
|
-
] }),
|
144
|
-
/* @__PURE__ */ jsxs("div", { className: "text-lg min-w-60 flex flex-col leading-6", children: [
|
145
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-between items-center", children: [
|
146
|
-
/* @__PURE__ */ jsxs("span", { children: [
|
147
|
-
" # ",
|
148
|
-
score.pp.toFixed(2),
|
149
|
-
" PP"
|
150
|
-
] }),
|
151
|
-
/* @__PURE__ */ jsxs("span", { children: [
|
152
|
-
" # ",
|
153
|
-
score.rank
|
154
|
-
] })
|
155
|
-
] }),
|
156
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
157
|
-
/* @__PURE__ */ jsx("span", { children: "Accuracy" }),
|
158
|
-
/* @__PURE__ */ jsxs("span", { children: [
|
159
|
-
(score.accuracy * 100).toFixed(2),
|
160
|
-
" %"
|
161
|
-
] })
|
162
|
-
] }),
|
163
|
-
score.fullCombo && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
164
|
-
/* @__PURE__ */ jsx("span", { children: "Full Combo" }),
|
165
|
-
/* @__PURE__ */ jsx(Check, {})
|
166
|
-
] }),
|
167
|
-
score.maxCombo && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
168
|
-
/* @__PURE__ */ jsx("span", { children: "Max Combo" }),
|
169
|
-
/* @__PURE__ */ jsx("span", { children: score.maxCombo })
|
170
|
-
] }),
|
171
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
172
|
-
/* @__PURE__ */ jsx("span", { children: "Missed Notes" }),
|
173
|
-
/* @__PURE__ */ jsx("span", { children: score.missedNotes })
|
174
|
-
] }),
|
175
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
176
|
-
/* @__PURE__ */ jsx("span", { children: "Total Mistakes" }),
|
177
|
-
/* @__PURE__ */ jsx("span", { children: score.missedNotes })
|
178
|
-
] }),
|
179
|
-
score.modifiers && /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
180
|
-
/* @__PURE__ */ jsx("span", { children: "Modifiers" }),
|
181
|
-
/* @__PURE__ */ jsx("span", { children: score.modifiers })
|
182
|
-
] })
|
183
|
-
] })
|
184
|
-
] })
|
185
|
-
] }),
|
186
|
-
/* @__PURE__ */ 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.filter((it) => it.characteristic === "Standard").map((diff) => {
|
187
|
-
var _a, _b;
|
188
|
-
return /* @__PURE__ */ jsx(
|
189
|
-
RankDifficulty,
|
190
|
-
{
|
191
|
-
difficulty: diff.difficulty,
|
192
|
-
star: diff.stars,
|
193
|
-
blStar: diff.blStars,
|
194
|
-
current: ((_a = score == null ? void 0 : score.difficulty) == null ? void 0 : _a.modeName) === (diff == null ? void 0 : diff.characteristic) && ((_b = score == null ? void 0 : score.difficulty) == null ? void 0 : _b.difficultyName) === (diff == null ? void 0 : diff.difficulty)
|
195
|
-
},
|
196
|
-
diff.difficulty
|
197
|
-
);
|
198
|
-
}) }),
|
199
|
-
/* @__PURE__ */ jsxs("div", { className: "align-end mt-2 mb-2", children: [
|
200
|
-
/* @__PURE__ */ jsx("span", { className: "text-xl font-bold", children: "AccGraph" }),
|
201
|
-
/* @__PURE__ */ jsx(
|
202
|
-
ScoreGraph,
|
203
|
-
{
|
204
|
-
scoreId: score.id,
|
205
|
-
scoreInfo: score,
|
206
|
-
statistic,
|
207
|
-
bsor,
|
208
|
-
height: 240,
|
209
|
-
width: 480
|
210
|
-
}
|
211
|
-
)
|
212
|
-
] })
|
213
|
-
] }),
|
214
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-between gap-2 items-start mt-auto", children: [
|
215
|
-
/* @__PURE__ */ jsxs("div", { className: "flex flex-col items-start gap-2", children: [
|
216
|
-
/* @__PURE__ */ jsx("div", { className: "text-white font-bold text-3xl mr-auto", children: "Global Rank" }),
|
217
|
-
aroundScore.map(
|
218
|
-
(cur, idx) => {
|
219
|
-
var _a;
|
220
|
-
return !cur.template ? /* @__PURE__ */ jsx(
|
221
|
-
BlRankScoreItem,
|
222
|
-
{
|
223
|
-
name: cur.player.name,
|
224
|
-
date: cur.timepost,
|
225
|
-
countryCode: (_a = cur.player.country) != null ? _a : "CN",
|
226
|
-
avatar: cur.player.avatar,
|
227
|
-
globalRank: cur.rank,
|
228
|
-
score: cur.modifiedScore,
|
229
|
-
modifiers: cur.modifiers,
|
230
|
-
isRegionRank: false,
|
231
|
-
acc: cur.accuracy,
|
232
|
-
pp: cur.pp,
|
233
|
-
self: cur.player.id === score.playerId
|
234
|
-
},
|
235
|
-
cur.id
|
236
|
-
) : /* @__PURE__ */ jsx(ScoreItemSkeleton, { isRegionRank: false }, idx);
|
237
|
-
}
|
238
|
-
)
|
239
|
-
] }),
|
240
|
-
/* @__PURE__ */ jsxs("div", { className: "flex flex-col items-start gap-2", children: [
|
241
|
-
/* @__PURE__ */ jsx("div", { className: "text-white font-bold text-3xl mr-auto", children: "Region Top Rank" }),
|
242
|
-
regionTopScore.map(
|
243
|
-
(cur, idx) => {
|
244
|
-
var _a;
|
245
|
-
return !cur.template ? /* @__PURE__ */ jsx(
|
246
|
-
BlRankScoreItem,
|
247
|
-
{
|
248
|
-
name: cur.player.name,
|
249
|
-
date: cur.timepost,
|
250
|
-
countryCode: (_a = cur.player.country) != null ? _a : "CN",
|
251
|
-
avatar: cur.player.avatar,
|
252
|
-
globalRank: cur.rank,
|
253
|
-
score: cur.modifiedScore,
|
254
|
-
modifiers: cur.modifiers,
|
255
|
-
isRegionRank: true,
|
256
|
-
acc: cur.accuracy,
|
257
|
-
pp: cur.pp,
|
258
|
-
self: cur.player.id === score.playerId
|
259
|
-
},
|
260
|
-
cur.id
|
261
|
-
) : /* @__PURE__ */ jsx(ScoreItemSkeleton, { isRegionRank: true }, idx);
|
262
|
-
}
|
263
|
-
)
|
264
|
-
] })
|
265
|
-
] })
|
266
|
-
] })
|
103
|
+
difficulty: diff.difficulty,
|
104
|
+
star: diff.stars,
|
105
|
+
blStar: diff.blStars,
|
106
|
+
current: ((_a = score == null ? void 0 : score.difficulty) == null ? void 0 : _a.modeName) === (diff == null ? void 0 : diff.characteristic) && ((_b = score == null ? void 0 : score.difficulty) == null ? void 0 : _b.difficultyName) === (diff == null ? void 0 : diff.difficulty),
|
107
|
+
key: diff.difficulty
|
267
108
|
}
|
268
|
-
)
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
109
|
+
);
|
110
|
+
})), /* @__PURE__ */ React.createElement("div", { className: "align-end mt-2 mb-2" }, /* @__PURE__ */ React.createElement("span", { className: "text-xl font-bold" }, "AccGraph"), /* @__PURE__ */ React.createElement(
|
111
|
+
ScoreGraph,
|
112
|
+
{
|
113
|
+
scoreId: score.id,
|
114
|
+
scoreInfo: score,
|
115
|
+
statistic,
|
116
|
+
bsor,
|
117
|
+
height: 240,
|
118
|
+
width: 480
|
119
|
+
}
|
120
|
+
))), /* @__PURE__ */ React.createElement("div", { className: "flex justify-between gap-2 items-start mt-auto" }, /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-start gap-2" }, /* @__PURE__ */ React.createElement("div", { className: "text-white font-bold text-3xl mr-auto" }, "Global Rank"), aroundScore.map(
|
121
|
+
(cur, idx) => {
|
122
|
+
var _a;
|
123
|
+
return !cur.template ? /* @__PURE__ */ React.createElement(
|
124
|
+
BlRankScoreItem,
|
125
|
+
{
|
126
|
+
key: cur.id,
|
127
|
+
name: cur.player.name,
|
128
|
+
date: cur.timepost,
|
129
|
+
countryCode: (_a = cur.player.country) != null ? _a : "CN",
|
130
|
+
avatar: cur.player.avatar,
|
131
|
+
globalRank: cur.rank,
|
132
|
+
score: cur.modifiedScore,
|
133
|
+
modifiers: cur.modifiers,
|
134
|
+
isRegionRank: false,
|
135
|
+
acc: cur.accuracy,
|
136
|
+
pp: cur.pp,
|
137
|
+
self: cur.player.id === score.playerId
|
138
|
+
}
|
139
|
+
) : /* @__PURE__ */ React.createElement(ScoreItemSkeleton, { isRegionRank: false, key: idx });
|
140
|
+
}
|
141
|
+
)), /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-start gap-2" }, /* @__PURE__ */ React.createElement("div", { className: "text-white font-bold text-3xl mr-auto" }, "Region Top Rank"), regionTopScore.map(
|
142
|
+
(cur, idx) => {
|
143
|
+
var _a;
|
144
|
+
return !cur.template ? /* @__PURE__ */ React.createElement(
|
145
|
+
BlRankScoreItem,
|
146
|
+
{
|
147
|
+
key: cur.id,
|
148
|
+
name: cur.player.name,
|
149
|
+
date: cur.timepost,
|
150
|
+
countryCode: (_a = cur.player.country) != null ? _a : "CN",
|
151
|
+
avatar: cur.player.avatar,
|
152
|
+
globalRank: cur.rank,
|
153
|
+
score: cur.modifiedScore,
|
154
|
+
modifiers: cur.modifiers,
|
155
|
+
isRegionRank: true,
|
156
|
+
acc: cur.accuracy,
|
157
|
+
pp: cur.pp,
|
158
|
+
self: cur.player.id === score.playerId
|
159
|
+
}
|
160
|
+
) : /* @__PURE__ */ React.createElement(ScoreItemSkeleton, { isRegionRank: true, key: idx });
|
161
|
+
}
|
162
|
+
))))
|
163
|
+
),
|
164
|
+
/* @__PURE__ */ React.createElement(
|
165
|
+
"img",
|
166
|
+
{
|
167
|
+
src: bg,
|
168
|
+
className: "inset-0 mx-auto w-full rounded-lg absolute h-full object-center",
|
169
|
+
loading: "eager"
|
170
|
+
}
|
171
|
+
)
|
172
|
+
));
|
280
173
|
}
|
281
174
|
export {
|
282
175
|
BLRankScore as default
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/pages/bl-score-with-rank.tsx"],"sourcesContent":["import {\n Check,\n Key,\n Clock,\n ThumbsUp,\n ThumbsDown,\n Calendar,\n HeartPulse,\n} from 'lucide-react'\nimport ScoreGraph from '../components/scoregraph'\nimport React from 'react'\nimport { BSOR, Score } from '@/service/api/interfaces/beatleader'\nimport { BSMap } from '@/service/api/interfaces/beatsaver'\nimport {\n BlRankScoreItem,\n ScoreItemSkeleton,\n} from '@/components/components/bl-rank-score-item'\nimport { RankDifficulty } from '@/components/components/RankDifficulty'\nimport { Avatar } from '@/components/components/base/avatar'\nimport { formatDuration, formatTime } from '@/components/utils'\nimport Progressbar from '@/components/components/progressbar'\n\ninterface BLScoreProps {\n score: Score\n aroundScores: Score[]\n regionTopScores: Score[]\n bsMap: BSMap\n difficulties: any[]\n statistic: any\n bsor: BSOR\n bg: string\n}\n\nexport default function BLRankScore({\n score,\n aroundScores,\n regionTopScores,\n difficulties,\n bsMap,\n statistic,\n bsor,\n bg,\n}: BLScoreProps) {\n let aroundScore = aroundScores\n .slice(0, 7)\n .map((it) => ({ ...it, template: false }))\n let regionTopScore = regionTopScores\n .slice(0, 7)\n .map((it) => ({ ...it, template: false }))\n if (aroundScore.length < 7) {\n aroundScore = aroundScore.concat(\n new Array(7 - aroundScore.length).fill({ template: true })\n )\n }\n if (regionTopScore.length < 7) {\n regionTopScore = regionTopScore.concat(\n new Array(7 - regionTopScore.length).fill({ template: true })\n )\n }\n\n return (\n <>\n <div\n className={\n 'flex flex-col justify-center items-center relative h-[720px] w-[1165px] my-auto rounded-none'\n }\n id=\"render-result\"\n >\n <div\n className={\n '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'\n }\n >\n <div className={'flex justify-between items-start gap-2 grow'}>\n <div className=\"flex flex-col items-start justify-between text-xl font-bold grow h-full\">\n <div className=\"flex space-x-4 items-center justify-between text-2xl font-bold\">\n <Avatar\n className={'h-16 w-16 rounded-full'}\n src={score.player.avatar}\n fallback={score.player.name.slice(0, 1)}\n />\n <div>{score.player.name}</div>\n </div>\n <div className=\"text-xl text-ellipsis line-clamp-2\">\n {score.song.name}\n </div>\n <div className=\"flex space-x-4 h-52\">\n <Avatar\n className={'h-52 w-52 rounded-md'}\n src={score.song.cover}\n fallback={score.song.name.slice(0, 1)}\n />\n <div className=\"text-xs font-bold flex flex-col items-start justify-between grow w-full\">\n <div className=\"flex space-x-2 items-center text-sm\">\n <Avatar\n className={'h-4 w-4 rounded-full'}\n src={bsMap.uploader.avatar}\n fallback={score.song.mapper.slice(0, 1)}\n />\n <div className=\"flex items-center justify-between\">\n <div className=\"text-ellipsis line-clamp-1\">\n {score.song.mapper}\n </div>\n </div>\n </div>\n <div className=\"text-xs flex gap-2 items-center *:space-x-1 *:flex *:items-center font-normal\">\n <div className=\"flex items-center\">\n <HeartPulse className=\"h-3 w-3\" />\n <span>{bsMap.metadata.bpm.toFixed(0)}</span>\n </div>\n <div>\n <span>\n <Key className={'w-3 h-3'} />\n </span>\n <span>\n {score.song.id.toLowerCase().replaceAll('x', '')}\n </span>\n </div>\n\n <div className=\"flex items-center\">\n <Clock className=\"h-3 w-3\" />\n <span>{formatDuration(bsMap.metadata.duration)}</span>\n </div>\n <div className=\"flex items-center text-ellipsis col-span-2 line-clamp-1\">\n <Calendar className=\"h-3 w-3\" />\n <span>{formatTime(bsMap.lastPublishedAt)}</span>\n </div>\n </div>\n <div className=\"flex items-center space-x-2 justify-between font-normal\">\n <Progressbar\n value={bsMap.stats.score * 100}\n // className=\"h-1.5\"\n // containerClassName=\"h-1.5\"\n />\n <span>{(bsMap.stats.score * 100).toFixed(2)} %</span>\n <div className=\"flex items-center\">\n <ThumbsUp className=\"h-3 w-3 mr-0.5\" />\n <span>{bsMap.stats.upvotes}</span>\n </div>\n <div className=\"flex items-center\">\n <ThumbsDown className=\"h-3 w-3 mr-0.5\" />\n <span>{bsMap.stats.downvotes}</span>\n </div>\n </div>\n <div className={'text-lg min-w-60 flex flex-col leading-6'}>\n <div className=\"flex justify-between items-center\">\n <span> # {score.pp.toFixed(2)} PP</span>\n <span> # {score.rank}</span>\n </div>\n {\n <div className=\"flex items-center justify-between\">\n <span>Accuracy</span>\n <span>{(score.accuracy * 100).toFixed(2)} %</span>\n </div>\n }\n {score.fullCombo && (\n <div className=\"flex items-center justify-between\">\n <span>Full Combo</span>\n <Check />\n </div>\n )}\n {score.maxCombo && (\n <div className=\"flex items-center justify-between\">\n <span>Max Combo</span>\n <span>{score.maxCombo}</span>\n </div>\n )}\n\n {\n <div className=\"flex items-center justify-between\">\n <span>Missed Notes</span>\n <span>{score.missedNotes}</span>\n </div>\n }\n {\n <div className=\"flex items-center justify-between\">\n <span>Total Mistakes</span>\n <span>{score.missedNotes}</span>\n </div>\n }\n {score.modifiers && (\n <div className=\"flex items-center justify-between\">\n <span>Modifiers</span>\n <span>{score.modifiers}</span>\n </div>\n )}\n </div>\n </div>\n </div>\n {/*diff code */}\n <div className=\"text-xl font-bold h-24 w-[500px] rounded-lg mt-auto flex items-center justify-evenly gap-2 \">\n {bsMap.versions[0].diffs\n .filter((it) => it.characteristic === 'Standard')\n .map((diff) => (\n <RankDifficulty\n difficulty={diff.difficulty}\n star={diff.stars}\n blStar={diff.blStars}\n current={\n score?.difficulty?.modeName === diff?.characteristic &&\n score?.difficulty?.difficultyName === diff?.difficulty\n }\n key={diff.difficulty}\n />\n ))}\n </div>\n\n {/*acc graph*/}\n <div className=\"align-end mt-2 mb-2\">\n <span className=\"text-xl font-bold\">AccGraph</span>\n <ScoreGraph\n scoreId={score.id}\n scoreInfo={score}\n statistic={statistic}\n bsor={bsor}\n height={240}\n width={480}\n />\n {/*<ScoreGraph scoreId={score.id} scoreInfo={score} />*/}\n </div>\n </div>\n <div className={'flex justify-between gap-2 items-start mt-auto'}>\n <div className={'flex flex-col items-start gap-2'}>\n <div className={'text-white font-bold text-3xl mr-auto'}>\n Global Rank\n </div>\n {aroundScore.map((cur: any, idx) =>\n !cur.template ? (\n <BlRankScoreItem\n key={cur.id}\n name={cur.player.name}\n date={cur.timepost}\n countryCode={cur.player.country ?? 'CN'}\n avatar={cur.player.avatar}\n globalRank={cur.rank}\n score={cur.modifiedScore}\n modifiers={cur.modifiers}\n isRegionRank={false}\n acc={cur.accuracy}\n pp={cur.pp}\n self={cur.player.id === score.playerId}\n />\n ) : (\n <ScoreItemSkeleton isRegionRank={false} key={idx} />\n )\n )}\n </div>\n <div className={'flex flex-col items-start gap-2'}>\n <div className={'text-white font-bold text-3xl mr-auto'}>\n Region Top Rank\n </div>\n {regionTopScore.map((cur: any, idx) =>\n !cur.template ? (\n <BlRankScoreItem\n key={cur.id}\n name={cur.player.name}\n date={cur.timepost}\n countryCode={cur.player.country ?? 'CN'}\n avatar={cur.player.avatar}\n globalRank={cur.rank}\n score={cur.modifiedScore}\n modifiers={cur.modifiers}\n isRegionRank\n acc={cur.accuracy}\n pp={cur.pp}\n self={cur.player.id === score.playerId}\n />\n ) : (\n <ScoreItemSkeleton isRegionRank key={idx} />\n )\n )}\n </div>\n </div>\n </div>\n </div>\n <img\n src={bg}\n className={\n 'inset-0 mx-auto w-full rounded-lg absolute h-full object-center'\n }\n loading={'eager'}\n />\n </div>\n </>\n )\n}\n"],"mappings":"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","names":[]}
|
1
|
+
{"version":3,"sources":["../../../../src/components/pages/bl-score-with-rank.tsx"],"sourcesContent":["import {\n Check,\n Key,\n Clock,\n ThumbsUp,\n ThumbsDown,\n Calendar,\n HeartPulse,\n} from 'lucide-react'\nimport ScoreGraph from '../components/scoregraph'\nimport React from 'react'\nimport { BSOR, Score } from '@/services/api/interfaces/beatleader'\nimport { BSMap } from '@/services/api/interfaces/beatsaver'\nimport {\n BlRankScoreItem,\n ScoreItemSkeleton,\n} from '@/components/components/bl-rank-score-item'\nimport { RankDifficulty } from '@/components/components/RankDifficulty'\nimport { Avatar } from '@/components/components/base/avatar'\nimport { formatDuration, formatTime } from '@/components/utils'\nimport Progressbar from '@/components/components/progressbar'\n\ninterface BLScoreProps {\n score: Score\n aroundScores: Score[]\n regionTopScores: Score[]\n bsMap: BSMap\n difficulties: any[]\n statistic: any\n bsor: BSOR\n bg: string\n}\n\nexport default function BLRankScore({\n score,\n aroundScores,\n regionTopScores,\n difficulties,\n bsMap,\n statistic,\n bsor,\n bg,\n}: BLScoreProps) {\n let aroundScore = aroundScores\n .slice(0, 7)\n .map((it) => ({ ...it, template: false }))\n let regionTopScore = regionTopScores\n .slice(0, 7)\n .map((it) => ({ ...it, template: false }))\n if (aroundScore.length < 7) {\n aroundScore = aroundScore.concat(\n new Array(7 - aroundScore.length).fill({ template: true })\n )\n }\n if (regionTopScore.length < 7) {\n regionTopScore = regionTopScore.concat(\n new Array(7 - regionTopScore.length).fill({ template: true })\n )\n }\n\n return (\n <>\n <div\n className={\n 'flex flex-col justify-center items-center relative h-[720px] w-[1165px] my-auto rounded-none'\n }\n id=\"render-result\"\n >\n <div\n className={\n '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'\n }\n >\n <div className={'flex justify-between items-start gap-2 grow'}>\n <div className=\"flex flex-col items-start justify-between text-xl font-bold grow h-full\">\n <div className=\"flex space-x-4 items-center justify-between text-2xl font-bold\">\n <Avatar\n className={'h-16 w-16 rounded-full'}\n src={score.player.avatar}\n fallback={score.player.name.slice(0, 1)}\n />\n <div>{score.player.name}</div>\n </div>\n <div className=\"text-xl text-ellipsis line-clamp-2\">\n {score.song.name}\n </div>\n <div className=\"flex space-x-4 h-52\">\n <Avatar\n className={'h-52 w-52 rounded-md'}\n src={score.song.cover}\n fallback={score.song.name.slice(0, 1)}\n />\n <div className=\"text-xs font-bold flex flex-col items-start justify-between grow w-full\">\n <div className=\"flex space-x-2 items-center text-sm\">\n <Avatar\n className={'h-4 w-4 rounded-full'}\n src={bsMap.uploader.avatar}\n fallback={score.song.mapper.slice(0, 1)}\n />\n <div className=\"flex items-center justify-between\">\n <div className=\"text-ellipsis line-clamp-1\">\n {score.song.mapper}\n </div>\n </div>\n </div>\n <div className=\"text-xs flex gap-2 items-center *:space-x-1 *:flex *:items-center font-normal\">\n <div className=\"flex items-center\">\n <HeartPulse className=\"h-3 w-3\" />\n <span>{bsMap.metadata.bpm.toFixed(0)}</span>\n </div>\n <div>\n <span>\n <Key className={'w-3 h-3'} />\n </span>\n <span>\n {score.song.id.toLowerCase().replaceAll('x', '')}\n </span>\n </div>\n\n <div className=\"flex items-center\">\n <Clock className=\"h-3 w-3\" />\n <span>{formatDuration(bsMap.metadata.duration)}</span>\n </div>\n <div className=\"flex items-center text-ellipsis col-span-2 line-clamp-1\">\n <Calendar className=\"h-3 w-3\" />\n <span>{formatTime(bsMap.lastPublishedAt)}</span>\n </div>\n </div>\n <div className=\"flex items-center space-x-2 justify-between font-normal\">\n <Progressbar\n value={bsMap.stats.score * 100}\n // className=\"h-1.5\"\n // containerClassName=\"h-1.5\"\n />\n <span>{(bsMap.stats.score * 100).toFixed(2)} %</span>\n <div className=\"flex items-center\">\n <ThumbsUp className=\"h-3 w-3 mr-0.5\" />\n <span>{bsMap.stats.upvotes}</span>\n </div>\n <div className=\"flex items-center\">\n <ThumbsDown className=\"h-3 w-3 mr-0.5\" />\n <span>{bsMap.stats.downvotes}</span>\n </div>\n </div>\n <div className={'text-lg min-w-60 flex flex-col leading-6'}>\n <div className=\"flex justify-between items-center\">\n <span> # {score.pp.toFixed(2)} PP</span>\n <span> # {score.rank}</span>\n </div>\n {\n <div className=\"flex items-center justify-between\">\n <span>Accuracy</span>\n <span>{(score.accuracy * 100).toFixed(2)} %</span>\n </div>\n }\n {score.fullCombo && (\n <div className=\"flex items-center justify-between\">\n <span>Full Combo</span>\n <Check />\n </div>\n )}\n {score.maxCombo && (\n <div className=\"flex items-center justify-between\">\n <span>Max Combo</span>\n <span>{score.maxCombo}</span>\n </div>\n )}\n\n {\n <div className=\"flex items-center justify-between\">\n <span>Missed Notes</span>\n <span>{score.missedNotes}</span>\n </div>\n }\n {\n <div className=\"flex items-center justify-between\">\n <span>Total Mistakes</span>\n <span>{score.missedNotes}</span>\n </div>\n }\n {score.modifiers && (\n <div className=\"flex items-center justify-between\">\n <span>Modifiers</span>\n <span>{score.modifiers}</span>\n </div>\n )}\n </div>\n </div>\n </div>\n {/*diff code */}\n <div className=\"text-xl font-bold h-24 w-[500px] rounded-lg mt-auto flex items-center justify-evenly gap-2 \">\n {bsMap.versions[0].diffs\n .filter((it) => it.characteristic === 'Standard')\n .map((diff) => (\n <RankDifficulty\n difficulty={diff.difficulty}\n star={diff.stars}\n blStar={diff.blStars}\n current={\n score?.difficulty?.modeName === diff?.characteristic &&\n score?.difficulty?.difficultyName === diff?.difficulty\n }\n key={diff.difficulty}\n />\n ))}\n </div>\n\n {/*acc graph*/}\n <div className=\"align-end mt-2 mb-2\">\n <span className=\"text-xl font-bold\">AccGraph</span>\n <ScoreGraph\n scoreId={score.id}\n scoreInfo={score}\n statistic={statistic}\n bsor={bsor}\n height={240}\n width={480}\n />\n {/*<ScoreGraph scoreId={score.id} scoreInfo={score} />*/}\n </div>\n </div>\n <div className={'flex justify-between gap-2 items-start mt-auto'}>\n <div className={'flex flex-col items-start gap-2'}>\n <div className={'text-white font-bold text-3xl mr-auto'}>\n Global Rank\n </div>\n {aroundScore.map((cur: any, idx) =>\n !cur.template ? (\n <BlRankScoreItem\n key={cur.id}\n name={cur.player.name}\n date={cur.timepost}\n countryCode={cur.player.country ?? 'CN'}\n avatar={cur.player.avatar}\n globalRank={cur.rank}\n score={cur.modifiedScore}\n modifiers={cur.modifiers}\n isRegionRank={false}\n acc={cur.accuracy}\n pp={cur.pp}\n self={cur.player.id === score.playerId}\n />\n ) : (\n <ScoreItemSkeleton isRegionRank={false} key={idx} />\n )\n )}\n </div>\n <div className={'flex flex-col items-start gap-2'}>\n <div className={'text-white font-bold text-3xl mr-auto'}>\n Region Top Rank\n </div>\n {regionTopScore.map((cur: any, idx) =>\n !cur.template ? (\n <BlRankScoreItem\n key={cur.id}\n name={cur.player.name}\n date={cur.timepost}\n countryCode={cur.player.country ?? 'CN'}\n avatar={cur.player.avatar}\n globalRank={cur.rank}\n score={cur.modifiedScore}\n modifiers={cur.modifiers}\n isRegionRank\n acc={cur.accuracy}\n pp={cur.pp}\n self={cur.player.id === score.playerId}\n />\n ) : (\n <ScoreItemSkeleton isRegionRank key={idx} />\n )\n )}\n </div>\n </div>\n </div>\n </div>\n <img\n src={bg}\n className={\n 'inset-0 mx-auto w-full rounded-lg absolute h-full object-center'\n }\n loading={'eager'}\n />\n </div>\n </>\n )\n}\n"],"mappings":"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","names":[]}
|