beatsaber-bot-core 0.2.0-dev.9 → 0.2.0-rc.10
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 +101 -0
- package/dist/cjs/cmd/bind/bind-beatleader.js.map +1 -0
- package/dist/cjs/cmd/bind/bind-beatsaver.js +95 -0
- package/dist/cjs/cmd/bind/bind-beatsaver.js.map +1 -0
- package/dist/cjs/cmd/bind/bind-id-beatleader.js +87 -0
- package/dist/cjs/cmd/bind/bind-id-beatleader.js.map +1 -0
- package/dist/cjs/cmd/bind/bind-id-beatsaver.js +87 -0
- package/dist/cjs/cmd/bind/bind-id-beatsaver.js.map +1 -0
- package/dist/cjs/cmd/bind/bind-scoresaber.js +85 -0
- package/dist/cjs/cmd/bind/bind-scoresaber.js.map +1 -0
- package/dist/cjs/cmd/bind/index.js +80 -0
- package/dist/cjs/cmd/bind/index.js.map +1 -0
- package/dist/cjs/cmd/bsmap/id-search.js +70 -0
- package/dist/cjs/cmd/bsmap/id-search.js.map +1 -0
- package/dist/cjs/cmd/bsmap/key-search.js +76 -0
- package/dist/cjs/cmd/bsmap/key-search.js.map +1 -0
- package/dist/cjs/cmd/bsmap/latest.js +57 -0
- package/dist/cjs/cmd/bsmap/latest.js.map +1 -0
- package/dist/cjs/cmd/config/index.js.map +1 -0
- package/dist/cjs/cmd/deprecated/tmp.js +62 -0
- package/dist/cjs/cmd/deprecated/tmp.js.map +1 -0
- package/dist/cjs/cmd/index.js +65 -0
- package/dist/cjs/cmd/index.js.map +1 -0
- package/dist/cjs/cmd/rank.js +65 -0
- package/dist/cjs/cmd/rank.js.map +1 -0
- package/dist/cjs/cmd/score.js +86 -0
- package/dist/cjs/cmd/score.js.map +1 -0
- package/dist/cjs/cmd/subscribe/beatleader.js +90 -0
- package/dist/cjs/cmd/subscribe/beatleader.js.map +1 -0
- package/dist/cjs/cmd/subscribe/beatsaver.js +90 -0
- package/dist/cjs/cmd/subscribe/beatsaver.js.map +1 -0
- package/dist/cjs/cmd/subscribe/id-beatleader-score.js +110 -0
- package/dist/cjs/cmd/subscribe/id-beatleader-score.js.map +1 -0
- package/dist/cjs/cmd/subscribe/id-beatsaver-mapper.js +111 -0
- package/dist/cjs/cmd/subscribe/id-beatsaver-mapper.js.map +1 -0
- package/dist/cjs/cmd/subscribe/index.js +89 -0
- package/dist/cjs/cmd/subscribe/index.js.map +1 -0
- package/dist/cjs/cmd/subscribe/subjoin.js +77 -0
- package/dist/cjs/cmd/subscribe/subjoin.js.map +1 -0
- package/dist/cjs/cmd/subscribe/subleave.js +82 -0
- package/dist/cjs/cmd/subscribe/subleave.js.map +1 -0
- package/dist/cjs/cmd/subscribe/unsubscribe.js +149 -0
- package/dist/cjs/cmd/subscribe/unsubscribe.js.map +1 -0
- package/dist/cjs/components/components/RankDifficulty.js +158 -0
- package/dist/cjs/components/components/RankDifficulty.js.map +1 -0
- package/dist/cjs/components/components/base/avatar.js +31 -0
- package/dist/cjs/components/components/base/avatar.js.map +1 -0
- package/dist/cjs/components/components/bl-rank-score-item.js +137 -0
- package/dist/cjs/components/components/bl-rank-score-item.js.map +1 -0
- package/dist/cjs/components/components/bl-score-item.js +104 -0
- package/dist/cjs/components/components/bl-score-item.js.map +1 -0
- package/dist/cjs/components/components/characteristic.js +184 -0
- package/dist/cjs/components/components/characteristic.js.map +1 -0
- package/dist/cjs/components/components/flag.js +65 -0
- package/dist/cjs/components/components/flag.js.map +1 -0
- package/dist/cjs/components/components/icons/BeatLeader.js +115 -0
- package/dist/cjs/components/components/icons/BeatLeader.js.map +1 -0
- package/dist/cjs/components/components/icons/RankIcon.js +45 -0
- package/dist/cjs/components/components/icons/RankIcon.js.map +1 -0
- package/dist/cjs/components/components/icons/ScoreSaberIcon.js +356 -0
- package/dist/cjs/components/components/icons/ScoreSaberIcon.js.map +1 -0
- package/dist/cjs/components/components/progressbar.js +34 -0
- package/dist/cjs/components/components/progressbar.js.map +1 -0
- package/dist/cjs/components/components/scoreItem.js +110 -0
- package/dist/cjs/components/components/scoreItem.js.map +1 -0
- package/dist/cjs/components/components/scoregraph.js +329 -0
- package/dist/cjs/components/components/scoregraph.js.map +1 -0
- package/dist/cjs/components/components/skill-graph.js +230 -0
- package/dist/cjs/components/components/skill-graph.js.map +1 -0
- package/dist/cjs/components/components/socre-badge.js +45 -0
- package/dist/cjs/components/components/socre-badge.js.map +1 -0
- package/dist/cjs/components/components/ss-rank-score-item.js +137 -0
- package/dist/cjs/components/components/ss-rank-score-item.js.map +1 -0
- package/dist/cjs/components/components/ss-score-item.js +100 -0
- package/dist/cjs/components/components/ss-score-item.js.map +1 -0
- package/dist/cjs/components/index.js +87 -0
- package/dist/cjs/components/index.js.map +1 -0
- package/dist/cjs/components/pages/bl-player.js +204 -0
- package/dist/cjs/components/pages/bl-player.js.map +1 -0
- package/dist/cjs/components/pages/bl-score-with-rank.js +300 -0
- package/dist/cjs/components/pages/bl-score-with-rank.js.map +1 -0
- package/dist/cjs/components/pages/bl-score.js +223 -0
- package/dist/cjs/components/pages/bl-score.js.map +1 -0
- package/dist/cjs/components/pages/bs-map.js +214 -0
- package/dist/cjs/components/pages/bs-map.js.map +1 -0
- package/dist/cjs/components/pages/index.js +94 -0
- package/dist/cjs/components/pages/index.js.map +1 -0
- package/dist/cjs/components/pages/ss-player.js +120 -0
- package/dist/cjs/components/pages/ss-player.js.map +1 -0
- package/dist/cjs/components/utils/bl/beatleader.js +57 -0
- package/dist/cjs/components/utils/bl/beatleader.js.map +1 -0
- package/dist/cjs/components/utils/bl/blheadset.js +306 -0
- package/dist/cjs/components/utils/bl/blheadset.js.map +1 -0
- package/dist/cjs/components/utils/bl/bsorDecoder.js +329 -0
- package/dist/cjs/components/utils/bl/bsorDecoder.js.map +1 -0
- package/dist/cjs/components/utils/bl/bsorReplayAcc.js +616 -0
- package/dist/cjs/components/utils/bl/bsorReplayAcc.js.map +1 -0
- package/dist/cjs/components/utils/bl/getPart.js +51 -0
- package/dist/cjs/components/utils/bl/getPart.js.map +1 -0
- package/dist/cjs/components/utils/bl/stastic.js +57 -0
- package/dist/cjs/components/utils/bl/stastic.js.map +1 -0
- package/dist/cjs/components/utils/canvas.js +2 -0
- package/dist/cjs/components/utils/canvas.js.map +1 -0
- package/dist/cjs/components/utils/format.js +93 -0
- package/dist/cjs/components/utils/format.js.map +1 -0
- package/dist/cjs/components/utils/getMods.js +44 -0
- package/dist/cjs/components/utils/getMods.js.map +1 -0
- package/dist/cjs/components/utils/index.js +44 -0
- package/dist/cjs/components/utils/index.js.map +1 -0
- package/dist/cjs/components/utils/qrcode.js +84 -0
- package/dist/cjs/components/utils/qrcode.js.map +1 -0
- package/dist/cjs/components/utils/sleep.js +52 -0
- package/dist/cjs/components/utils/sleep.js.map +1 -0
- package/dist/cjs/components/utils/tag-format.js +248 -0
- package/dist/cjs/components/utils/tag-format.js.map +1 -0
- package/dist/cjs/components/utils/tw-join.js +58 -0
- package/dist/cjs/components/utils/tw-join.js.map +1 -0
- package/dist/cjs/config.js +16 -0
- package/dist/cjs/config.js.map +1 -0
- package/dist/cjs/index.js +50 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/infra/errors/index.js +249 -0
- package/dist/cjs/infra/errors/index.js.map +1 -0
- package/dist/cjs/infra/i18n/index.js +137 -0
- package/dist/cjs/infra/i18n/index.js.map +1 -0
- package/dist/cjs/infra/i18n/parser.js +171 -0
- package/dist/cjs/infra/i18n/parser.js.map +1 -0
- package/dist/cjs/infra/i18n/zh-cn.json +1 -0
- package/dist/cjs/infra/index.js +31 -0
- package/dist/cjs/infra/index.js.map +1 -0
- package/dist/cjs/infra/s3/index.js +114 -0
- package/dist/cjs/infra/s3/index.js.map +1 -0
- package/dist/cjs/infra/support/cache.js +40 -0
- package/dist/cjs/infra/support/cache.js.map +1 -0
- package/dist/cjs/infra/support/fetch/error.js +49 -0
- package/dist/cjs/infra/support/fetch/error.js.map +1 -0
- package/dist/cjs/infra/support/fetch/index.js +57 -0
- package/dist/cjs/infra/support/fetch/index.js.map +1 -0
- package/dist/cjs/infra/support/fetch/ofetch.js +137 -0
- package/dist/cjs/infra/support/fetch/ofetch.js.map +1 -0
- package/dist/cjs/infra/support/render/index.js +152 -0
- package/dist/cjs/infra/support/render/index.js.map +1 -0
- package/dist/cjs/infra/support/render/puppeteer.js +129 -0
- package/dist/cjs/infra/support/render/puppeteer.js.map +1 -0
- package/dist/cjs/interface/bot.js +16 -0
- package/dist/cjs/interface/bot.js.map +1 -0
- package/dist/cjs/interface/cmd/builder.js +111 -0
- package/dist/cjs/interface/cmd/builder.js.map +1 -0
- package/dist/cjs/interface/cmd/type.js +16 -0
- package/dist/cjs/interface/cmd/type.js.map +1 -0
- package/dist/cjs/interface/db/index.js +22 -0
- package/dist/cjs/interface/db/index.js.map +1 -0
- package/dist/cjs/interface/db/models.js +16 -0
- package/dist/cjs/interface/db/models.js.map +1 -0
- package/dist/cjs/interface/index.js +47 -0
- package/dist/cjs/interface/index.js.map +1 -0
- package/dist/cjs/interface/logger.js +16 -0
- package/dist/cjs/interface/logger.js.map +1 -0
- package/dist/cjs/schedules/index.js +38 -0
- package/dist/cjs/schedules/index.js.map +1 -0
- package/dist/cjs/schedules/interface.js +16 -0
- package/dist/cjs/schedules/interface.js.map +1 -0
- package/dist/cjs/schedules/temp.js +65 -0
- package/dist/cjs/schedules/temp.js.map +1 -0
- package/dist/cjs/service/api/base/aioclient.js +70 -0
- package/dist/cjs/service/api/base/aioclient.js.map +1 -0
- package/dist/cjs/service/api/base/blclient.js +118 -0
- package/dist/cjs/service/api/base/blclient.js.map +1 -0
- package/dist/cjs/service/api/base/bsclient.js +138 -0
- package/dist/cjs/service/api/base/bsclient.js.map +1 -0
- package/dist/cjs/service/api/base/index.js +28 -0
- package/dist/cjs/service/api/base/index.js.map +1 -0
- package/dist/cjs/service/api/base/ssclient.js +95 -0
- package/dist/cjs/service/api/base/ssclient.js.map +1 -0
- package/dist/cjs/service/api/index.js +218 -0
- package/dist/cjs/service/api/index.js.map +1 -0
- package/dist/cjs/service/api/interfaces/aiosaber/index.js +16 -0
- package/dist/cjs/service/api/interfaces/aiosaber/index.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatleader/bsor.js +16 -0
- package/dist/cjs/service/api/interfaces/beatleader/bsor.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatleader/index.js +30 -0
- package/dist/cjs/service/api/interfaces/beatleader/index.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatleader/req.js +16 -0
- package/dist/cjs/service/api/interfaces/beatleader/req.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatleader/score.js +16 -0
- package/dist/cjs/service/api/interfaces/beatleader/score.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatleader/user.js +16 -0
- package/dist/cjs/service/api/interfaces/beatleader/user.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatleader/ws.js +16 -0
- package/dist/cjs/service/api/interfaces/beatleader/ws.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatsaver/alert.js +16 -0
- package/dist/cjs/service/api/interfaces/beatsaver/alert.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatsaver/bsmap.js +16 -0
- package/dist/cjs/service/api/interfaces/beatsaver/bsmap.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatsaver/index.js +30 -0
- package/dist/cjs/service/api/interfaces/beatsaver/index.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatsaver/resp.js +16 -0
- package/dist/cjs/service/api/interfaces/beatsaver/resp.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatsaver/user.js +16 -0
- package/dist/cjs/service/api/interfaces/beatsaver/user.js.map +1 -0
- package/dist/cjs/service/api/interfaces/beatsaver/ws.js +16 -0
- package/dist/cjs/service/api/interfaces/beatsaver/ws.js.map +1 -0
- package/dist/cjs/service/api/interfaces/index.js +16 -0
- package/dist/cjs/service/api/interfaces/index.js.map +1 -0
- package/dist/cjs/service/api/interfaces/scoresaber/index.js +26 -0
- package/dist/cjs/service/api/interfaces/scoresaber/index.js.map +1 -0
- package/dist/cjs/service/api/interfaces/scoresaber/item.js +16 -0
- package/dist/cjs/service/api/interfaces/scoresaber/item.js.map +1 -0
- package/dist/cjs/service/api/interfaces/scoresaber/leaderboard.js +16 -0
- package/dist/cjs/service/api/interfaces/scoresaber/leaderboard.js.map +1 -0
- package/dist/cjs/service/api/interfaces/scoresaber/resp.js +16 -0
- package/dist/cjs/service/api/interfaces/scoresaber/resp.js.map +1 -0
- package/dist/cjs/service/api/interfaces/scoresaber/user.js +16 -0
- package/dist/cjs/service/api/interfaces/scoresaber/user.js.map +1 -0
- package/dist/cjs/service/api/interfaces/scoresaber/ws.js +16 -0
- package/dist/cjs/service/api/interfaces/scoresaber/ws.js.map +1 -0
- package/dist/cjs/service/api/sortScore.js +51 -0
- package/dist/cjs/service/api/sortScore.js.map +1 -0
- package/dist/cjs/service/index.js +16 -0
- package/dist/cjs/service/index.js.map +1 -0
- package/dist/cjs/service/preference.js +181 -0
- package/dist/cjs/service/preference.js.map +1 -0
- package/dist/cjs/service/render/index.js +154 -0
- package/dist/cjs/service/render/index.js.map +1 -0
- package/dist/cjs/service/render/interfaces.js +16 -0
- package/dist/cjs/service/render/interfaces.js.map +1 -0
- package/dist/cjs/utils/index.js +95 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/ws/beatleader.js +92 -0
- package/dist/cjs/ws/beatleader.js.map +1 -0
- package/dist/cjs/ws/beatsaver.js +131 -0
- package/dist/cjs/ws/beatsaver.js.map +1 -0
- package/dist/cjs/ws/bl-filter.js +1 -0
- package/dist/cjs/ws/bl-filter.js.map +1 -0
- package/dist/cjs/ws/handler.js +16 -0
- package/dist/cjs/ws/handler.js.map +1 -0
- package/dist/cjs/ws/index.js +28 -0
- package/dist/cjs/ws/index.js.map +1 -0
- package/dist/cjs/ws/scoresaber.js +75 -0
- package/dist/cjs/ws/scoresaber.js.map +1 -0
- package/dist/esm/cmd/bind/bind-beatleader.js +78 -0
- package/dist/esm/cmd/bind/bind-beatleader.js.map +1 -0
- package/dist/esm/cmd/bind/bind-beatsaver.js +72 -0
- package/dist/esm/cmd/bind/bind-beatsaver.js.map +1 -0
- package/dist/esm/cmd/bind/bind-id-beatleader.js +68 -0
- package/dist/esm/cmd/bind/bind-id-beatleader.js.map +1 -0
- package/dist/esm/cmd/bind/bind-id-beatsaver.js +68 -0
- package/dist/esm/cmd/bind/bind-id-beatsaver.js.map +1 -0
- package/dist/esm/cmd/bind/bind-scoresaber.js +66 -0
- package/dist/esm/cmd/bind/bind-scoresaber.js.map +1 -0
- package/dist/esm/cmd/bind/index.js +61 -0
- package/dist/esm/cmd/bind/index.js.map +1 -0
- package/dist/esm/cmd/bsmap/id-search.js +51 -0
- package/dist/esm/cmd/bsmap/id-search.js.map +1 -0
- package/dist/esm/cmd/bsmap/key-search.js +57 -0
- package/dist/esm/cmd/bsmap/key-search.js.map +1 -0
- package/dist/esm/cmd/bsmap/latest.js +38 -0
- package/dist/esm/cmd/bsmap/latest.js.map +1 -0
- package/dist/esm/cmd/config/index.js +1 -0
- package/dist/esm/cmd/config/index.js.map +1 -0
- package/dist/esm/cmd/deprecated/tmp.js +43 -0
- package/dist/esm/cmd/deprecated/tmp.js.map +1 -0
- package/dist/esm/cmd/index.js +32 -0
- package/dist/esm/cmd/index.js.map +1 -0
- package/dist/esm/cmd/rank.js +46 -0
- package/dist/esm/cmd/rank.js.map +1 -0
- package/dist/esm/cmd/score.js +70 -0
- package/dist/esm/cmd/score.js.map +1 -0
- package/dist/esm/cmd/subscribe/beatleader.js +69 -0
- package/dist/esm/cmd/subscribe/beatleader.js.map +1 -0
- package/dist/esm/cmd/subscribe/beatsaver.js +69 -0
- package/dist/esm/cmd/subscribe/beatsaver.js.map +1 -0
- package/dist/esm/cmd/subscribe/id-beatleader-score.js +89 -0
- package/dist/esm/cmd/subscribe/id-beatleader-score.js.map +1 -0
- package/dist/esm/cmd/subscribe/id-beatsaver-mapper.js +90 -0
- package/dist/esm/cmd/subscribe/id-beatsaver-mapper.js.map +1 -0
- package/dist/esm/cmd/subscribe/index.js +70 -0
- package/dist/esm/cmd/subscribe/index.js.map +1 -0
- package/dist/esm/cmd/subscribe/subjoin.js +58 -0
- package/dist/esm/cmd/subscribe/subjoin.js.map +1 -0
- package/dist/esm/cmd/subscribe/subleave.js +63 -0
- package/dist/esm/cmd/subscribe/subleave.js.map +1 -0
- package/dist/esm/cmd/subscribe/unsubscribe.js +135 -0
- package/dist/esm/cmd/subscribe/unsubscribe.js.map +1 -0
- package/dist/esm/components/components/RankDifficulty.js +137 -0
- package/dist/esm/components/components/RankDifficulty.js.map +1 -0
- package/dist/esm/components/components/base/avatar.js +8 -0
- package/dist/esm/components/components/base/avatar.js.map +1 -0
- package/dist/esm/components/components/bl-rank-score-item.js +103 -0
- package/dist/esm/components/components/bl-rank-score-item.js.map +1 -0
- package/dist/esm/components/components/bl-score-item.js +85 -0
- package/dist/esm/components/components/bl-score-item.js.map +1 -0
- package/dist/esm/components/components/characteristic.js +161 -0
- package/dist/esm/components/components/characteristic.js.map +1 -0
- package/dist/esm/components/components/flag.js +32 -0
- package/dist/esm/components/components/flag.js.map +1 -0
- package/dist/esm/components/components/icons/BeatLeader.js +98 -0
- package/dist/esm/components/components/icons/BeatLeader.js.map +1 -0
- package/dist/esm/components/components/icons/RankIcon.js +16 -0
- package/dist/esm/components/components/icons/RankIcon.js.map +1 -0
- package/dist/esm/components/components/icons/ScoreSaberIcon.js +339 -0
- package/dist/esm/components/components/icons/ScoreSaberIcon.js.map +1 -0
- package/dist/esm/components/components/progressbar.js +15 -0
- package/dist/esm/components/components/progressbar.js.map +1 -0
- package/dist/esm/components/components/scoreItem.js +91 -0
- package/dist/esm/components/components/scoreItem.js.map +1 -0
- package/dist/esm/components/components/scoregraph.js +299 -0
- package/dist/esm/components/components/scoregraph.js.map +1 -0
- package/dist/esm/components/components/skill-graph.js +211 -0
- package/dist/esm/components/components/skill-graph.js.map +1 -0
- package/dist/esm/components/components/socre-badge.js +26 -0
- package/dist/esm/components/components/socre-badge.js.map +1 -0
- package/dist/esm/components/components/ss-rank-score-item.js +103 -0
- package/dist/esm/components/components/ss-rank-score-item.js.map +1 -0
- package/dist/esm/components/components/ss-score-item.js +81 -0
- package/dist/esm/components/components/ss-score-item.js.map +1 -0
- package/dist/esm/components/index.js +54 -0
- package/dist/esm/components/index.js.map +1 -0
- package/dist/esm/components/pages/bl-player.js +177 -0
- package/dist/esm/components/pages/bl-player.js.map +1 -0
- package/dist/esm/components/pages/bl-score-with-rank.js +284 -0
- package/dist/esm/components/pages/bl-score-with-rank.js.map +1 -0
- package/dist/esm/components/pages/bl-score.js +199 -0
- package/dist/esm/components/pages/bl-score.js.map +1 -0
- package/dist/esm/components/pages/bs-map.js +194 -0
- package/dist/esm/components/pages/bs-map.js.map +1 -0
- package/dist/esm/components/pages/index.js +57 -0
- package/dist/esm/components/pages/index.js.map +1 -0
- package/dist/esm/components/pages/ss-player.js +91 -0
- package/dist/esm/components/pages/ss-player.js.map +1 -0
- package/dist/esm/components/utils/bl/beatleader.js +33 -0
- package/dist/esm/components/utils/bl/beatleader.js.map +1 -0
- package/dist/esm/components/utils/bl/blheadset.js +282 -0
- package/dist/esm/components/utils/bl/blheadset.js.map +1 -0
- package/dist/esm/components/utils/bl/bsorDecoder.js +301 -0
- package/dist/esm/components/utils/bl/bsorDecoder.js.map +1 -0
- package/dist/esm/components/utils/bl/bsorReplayAcc.js +588 -0
- package/dist/esm/components/utils/bl/bsorReplayAcc.js.map +1 -0
- package/dist/esm/components/utils/bl/getPart.js +32 -0
- package/dist/esm/components/utils/bl/getPart.js.map +1 -0
- package/dist/esm/components/utils/bl/stastic.js +38 -0
- package/dist/esm/components/utils/bl/stastic.js.map +1 -0
- package/dist/esm/components/utils/canvas.js +2 -0
- package/dist/esm/components/utils/canvas.js.map +1 -0
- package/dist/esm/components/utils/format.js +55 -0
- package/dist/esm/components/utils/format.js.map +1 -0
- package/dist/esm/components/utils/getMods.js +21 -0
- package/dist/esm/components/utils/getMods.js.map +1 -0
- package/dist/esm/components/utils/index.js +18 -0
- package/dist/esm/components/utils/index.js.map +1 -0
- package/dist/esm/components/utils/qrcode.js +65 -0
- package/dist/esm/components/utils/qrcode.js.map +1 -0
- package/dist/esm/components/utils/sleep.js +29 -0
- package/dist/esm/components/utils/sleep.js.map +1 -0
- package/dist/esm/components/utils/tag-format.js +225 -0
- package/dist/esm/components/utils/tag-format.js.map +1 -0
- package/dist/esm/components/utils/tw-join.js +35 -0
- package/dist/esm/components/utils/tw-join.js.map +1 -0
- package/dist/esm/config.js +1 -0
- package/dist/esm/config.js.map +1 -0
- package/dist/esm/index.js +18 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/infra/errors/index.js +206 -0
- package/dist/esm/infra/errors/index.js.map +1 -0
- package/dist/esm/infra/i18n/index.js +103 -0
- package/dist/esm/infra/i18n/index.js.map +1 -0
- package/dist/esm/infra/i18n/parser.js +148 -0
- package/dist/esm/infra/i18n/parser.js.map +1 -0
- package/dist/esm/infra/index.js +6 -0
- package/dist/esm/infra/index.js.map +1 -0
- package/dist/esm/infra/s3/index.js +82 -0
- package/dist/esm/infra/s3/index.js.map +1 -0
- package/dist/esm/infra/support/cache.js +16 -0
- package/dist/esm/infra/support/cache.js.map +1 -0
- package/dist/esm/infra/support/fetch/error.js +24 -0
- package/dist/esm/infra/support/fetch/error.js.map +1 -0
- package/dist/esm/infra/support/fetch/index.js +33 -0
- package/dist/esm/infra/support/fetch/index.js.map +1 -0
- package/dist/esm/infra/support/fetch/ofetch.js +114 -0
- package/dist/esm/infra/support/fetch/ofetch.js.map +1 -0
- package/dist/esm/infra/support/render/index.js +127 -0
- package/dist/esm/infra/support/render/index.js.map +1 -0
- package/dist/esm/infra/support/render/puppeteer.js +107 -0
- package/dist/esm/infra/support/render/puppeteer.js.map +1 -0
- package/dist/esm/interface/bot.js +1 -0
- package/dist/esm/interface/bot.js.map +1 -0
- package/dist/esm/interface/cmd/builder.js +89 -0
- package/dist/esm/interface/cmd/builder.js.map +1 -0
- package/dist/esm/interface/cmd/type.js +1 -0
- package/dist/esm/interface/cmd/type.js.map +1 -0
- package/dist/esm/interface/db/index.js +2 -0
- package/dist/esm/interface/db/index.js.map +1 -0
- package/dist/esm/interface/db/models.js +1 -0
- package/dist/esm/interface/db/models.js.map +1 -0
- package/dist/esm/interface/index.js +18 -0
- package/dist/esm/interface/index.js.map +1 -0
- package/dist/esm/interface/logger.js +1 -0
- package/dist/esm/interface/logger.js.map +1 -0
- package/dist/esm/schedules/index.js +15 -0
- package/dist/esm/schedules/index.js.map +1 -0
- package/dist/esm/schedules/interface.js +1 -0
- package/dist/esm/schedules/interface.js.map +1 -0
- package/dist/esm/schedules/temp.js +42 -0
- package/dist/esm/schedules/temp.js.map +1 -0
- package/dist/esm/service/api/base/aioclient.js +48 -0
- package/dist/esm/service/api/base/aioclient.js.map +1 -0
- package/dist/esm/service/api/base/blclient.js +96 -0
- package/dist/esm/service/api/base/blclient.js.map +1 -0
- package/dist/esm/service/api/base/bsclient.js +117 -0
- package/dist/esm/service/api/base/bsclient.js.map +1 -0
- package/dist/esm/service/api/base/index.js +5 -0
- package/dist/esm/service/api/base/index.js.map +1 -0
- package/dist/esm/service/api/base/ssclient.js +73 -0
- package/dist/esm/service/api/base/ssclient.js.map +1 -0
- package/dist/esm/service/api/index.js +197 -0
- package/dist/esm/service/api/index.js.map +1 -0
- package/dist/esm/service/api/interfaces/aiosaber/index.js +1 -0
- package/dist/esm/service/api/interfaces/aiosaber/index.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatleader/bsor.js +1 -0
- package/dist/esm/service/api/interfaces/beatleader/bsor.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatleader/index.js +6 -0
- package/dist/esm/service/api/interfaces/beatleader/index.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatleader/req.js +1 -0
- package/dist/esm/service/api/interfaces/beatleader/req.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatleader/score.js +1 -0
- package/dist/esm/service/api/interfaces/beatleader/score.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatleader/user.js +1 -0
- package/dist/esm/service/api/interfaces/beatleader/user.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatleader/ws.js +1 -0
- package/dist/esm/service/api/interfaces/beatleader/ws.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/alert.js +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/alert.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/bsmap.js +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/bsmap.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/index.js +6 -0
- package/dist/esm/service/api/interfaces/beatsaver/index.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/resp.js +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/resp.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/user.js +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/user.js.map +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/ws.js +1 -0
- package/dist/esm/service/api/interfaces/beatsaver/ws.js.map +1 -0
- package/dist/esm/service/api/interfaces/index.js +1 -0
- package/dist/esm/service/api/interfaces/index.js.map +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/index.js +4 -0
- package/dist/esm/service/api/interfaces/scoresaber/index.js.map +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/item.js +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/item.js.map +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/leaderboard.js +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/leaderboard.js.map +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/resp.js +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/resp.js.map +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/user.js +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/user.js.map +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/ws.js +1 -0
- package/dist/esm/service/api/interfaces/scoresaber/ws.js.map +1 -0
- package/dist/esm/service/api/sortScore.js +28 -0
- package/dist/esm/service/api/sortScore.js.map +1 -0
- package/dist/esm/service/index.js +1 -0
- package/dist/esm/service/index.js.map +1 -0
- package/dist/esm/service/preference.js +156 -0
- package/dist/esm/service/preference.js.map +1 -0
- package/dist/esm/service/render/index.js +123 -0
- package/dist/esm/service/render/index.js.map +1 -0
- package/dist/esm/service/render/interfaces.js +1 -0
- package/dist/esm/service/render/interfaces.js.map +1 -0
- package/dist/esm/utils/index.js +70 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/ws/beatleader.js +70 -0
- package/dist/esm/ws/beatleader.js.map +1 -0
- package/dist/esm/ws/beatsaver.js +109 -0
- package/dist/esm/ws/beatsaver.js.map +1 -0
- package/dist/esm/ws/bl-filter.js +1 -0
- package/dist/esm/ws/bl-filter.js.map +1 -0
- package/dist/esm/ws/handler.js +1 -0
- package/dist/esm/ws/handler.js.map +1 -0
- package/dist/esm/ws/index.js +5 -0
- package/dist/esm/ws/index.js.map +1 -0
- package/dist/esm/ws/scoresaber.js +53 -0
- package/dist/esm/ws/scoresaber.js.map +1 -0
- package/dist/types/cmd/bind/bind-beatleader.d.ts +34 -0
- package/dist/types/cmd/bind/bind-beatsaver.d.ts +34 -0
- package/dist/types/cmd/bind/bind-id-beatleader.d.ts +34 -0
- package/dist/types/cmd/bind/bind-id-beatsaver.d.ts +34 -0
- package/dist/types/cmd/bind/bind-scoresaber.d.ts +34 -0
- package/dist/types/cmd/bind/index.d.ts +41 -0
- package/dist/types/cmd/bsmap/id-search.d.ts +41 -0
- package/dist/types/cmd/bsmap/key-search.d.ts +41 -0
- package/dist/types/cmd/bsmap/latest.d.ts +41 -0
- package/dist/types/cmd/config/index.d.ts +2 -0
- package/dist/types/cmd/deprecated/tmp.d.ts +41 -0
- package/dist/types/cmd/index.d.ts +34 -0
- package/dist/types/cmd/rank.d.ts +41 -0
- package/dist/types/cmd/score.d.ts +41 -0
- package/dist/types/cmd/subscribe/beatleader.d.ts +34 -0
- package/dist/types/cmd/subscribe/beatsaver.d.ts +34 -0
- package/dist/types/cmd/subscribe/id-beatleader-score.d.ts +34 -0
- package/dist/types/cmd/subscribe/id-beatsaver-mapper.d.ts +34 -0
- package/dist/types/cmd/subscribe/index.d.ts +41 -0
- package/dist/types/cmd/subscribe/subjoin.d.ts +41 -0
- package/dist/types/cmd/subscribe/subleave.d.ts +41 -0
- package/dist/types/cmd/subscribe/unsubscribe.d.ts +41 -0
- package/dist/types/components/components/RankDifficulty.d.ts +10 -0
- package/dist/types/components/components/base/avatar.d.ts +10 -0
- package/dist/types/components/components/bl-rank-score-item.d.ts +21 -0
- package/dist/types/components/components/bl-score-item.d.ts +10 -0
- package/dist/types/components/components/characteristic.d.ts +9 -0
- package/dist/types/components/components/flag.d.ts +9 -0
- package/dist/types/components/components/icons/BeatLeader.d.ts +6 -0
- package/dist/types/components/components/icons/RankIcon.d.ts +8 -0
- package/dist/types/components/components/icons/ScoreSaberIcon.d.ts +6 -0
- package/dist/types/components/components/progressbar.d.ts +8 -0
- package/dist/types/components/components/scoreItem.d.ts +8 -0
- package/dist/types/components/components/scoregraph.d.ts +15 -0
- package/dist/types/components/components/skill-graph.d.ts +9 -0
- package/dist/types/components/components/socre-badge.d.ts +9 -0
- package/dist/types/components/components/ss-rank-score-item.d.ts +21 -0
- package/dist/types/components/components/ss-score-item.d.ts +8 -0
- package/dist/types/components/index.d.ts +5 -0
- package/dist/types/components/pages/bl-player.d.ts +11 -0
- package/dist/types/components/pages/bl-score-with-rank.d.ts +18 -0
- package/dist/types/components/pages/bl-score.d.ts +15 -0
- package/dist/types/components/pages/bs-map.d.ts +11 -0
- package/dist/types/components/pages/index.d.ts +14 -0
- package/dist/types/components/pages/ss-player.d.ts +13 -0
- package/dist/types/components/utils/bl/beatleader.d.ts +15 -0
- package/dist/types/components/utils/bl/blheadset.d.ts +275 -0
- package/dist/types/components/utils/bl/bsorDecoder.d.ts +189 -0
- package/dist/types/components/utils/bl/bsorReplayAcc.d.ts +38 -0
- package/dist/types/components/utils/bl/getPart.d.ts +9 -0
- package/dist/types/components/utils/bl/stastic.d.ts +3 -0
- package/dist/types/components/utils/canvas.d.ts +2 -0
- package/dist/types/components/utils/format.d.ts +8 -0
- package/dist/types/components/utils/getMods.d.ts +5 -0
- package/dist/types/components/utils/index.d.ts +6 -0
- package/dist/types/components/utils/qrcode.d.ts +3 -0
- package/dist/types/components/utils/sleep.d.ts +3 -0
- package/dist/types/components/utils/tag-format.d.ts +3 -0
- package/dist/types/components/utils/tw-join.d.ts +5 -0
- package/dist/types/config.d.ts +30 -0
- package/dist/types/index-Dagy_c8G.d.ts +74 -0
- package/dist/types/index.d.ts +54 -0
- package/dist/types/infra/errors/index.d.ts +69 -0
- package/dist/types/infra/i18n/index.d.ts +4 -0
- package/dist/types/infra/i18n/parser.d.ts +16 -0
- package/dist/types/infra/index.d.ts +6 -0
- package/dist/types/infra/s3/index.d.ts +20 -0
- package/dist/types/infra/support/cache.d.ts +6 -0
- package/dist/types/infra/support/fetch/error.d.ts +11 -0
- package/dist/types/infra/support/fetch/index.d.ts +7 -0
- package/dist/types/infra/support/fetch/ofetch.d.ts +24 -0
- package/dist/types/infra/support/render/index.d.ts +38 -0
- package/dist/types/infra/support/render/puppeteer.d.ts +43 -0
- package/dist/types/interface/bot.d.ts +22 -0
- package/dist/types/interface/cmd/builder.d.ts +53 -0
- package/dist/types/interface/cmd/type.d.ts +30 -0
- package/dist/types/interface/db/index.d.ts +45 -0
- package/dist/types/interface/db/models.d.ts +41 -0
- package/dist/types/interface/index.d.ts +30 -0
- package/dist/types/interface/logger.d.ts +8 -0
- package/dist/types/schedules/index.d.ts +40 -0
- package/dist/types/schedules/interface.d.ts +45 -0
- package/dist/types/schedules/temp.d.ts +35 -0
- package/dist/types/service/api/base/aioclient.d.ts +13 -0
- package/dist/types/service/api/base/blclient.d.ts +28 -0
- package/dist/types/service/api/base/bsclient.d.ts +29 -0
- package/dist/types/service/api/base/index.d.ts +19 -0
- package/dist/types/service/api/base/ssclient.d.ts +17 -0
- package/dist/types/service/api/index.d.ts +59 -0
- package/dist/types/service/api/interfaces/aiosaber/index.d.ts +9 -0
- package/dist/types/service/api/interfaces/beatleader/bsor.d.ts +113 -0
- package/dist/types/service/api/interfaces/beatleader/index.d.ts +5 -0
- package/dist/types/service/api/interfaces/beatleader/req.d.ts +22 -0
- package/dist/types/service/api/interfaces/beatleader/score.d.ts +164 -0
- package/dist/types/service/api/interfaces/beatleader/user.d.ts +173 -0
- package/dist/types/service/api/interfaces/beatleader/ws.d.ts +90 -0
- package/dist/types/service/api/interfaces/beatsaver/alert.d.ts +20 -0
- package/dist/types/service/api/interfaces/beatsaver/bsmap.d.ts +70 -0
- package/dist/types/service/api/interfaces/beatsaver/index.d.ts +13 -0
- package/dist/types/service/api/interfaces/beatsaver/resp.d.ts +11 -0
- package/dist/types/service/api/interfaces/beatsaver/user.d.ts +10 -0
- package/dist/types/service/api/interfaces/beatsaver/ws.d.ts +13 -0
- package/dist/types/service/api/interfaces/index.d.ts +14 -0
- package/dist/types/service/api/interfaces/scoresaber/index.d.ts +3 -0
- package/dist/types/service/api/interfaces/scoresaber/item.d.ts +67 -0
- package/dist/types/service/api/interfaces/scoresaber/leaderboard.d.ts +13 -0
- package/dist/types/service/api/interfaces/scoresaber/resp.d.ts +12 -0
- package/dist/types/service/api/interfaces/scoresaber/user.d.ts +35 -0
- package/dist/types/service/api/interfaces/scoresaber/ws.d.ts +80 -0
- package/dist/types/service/api/sortScore.d.ts +5 -0
- package/dist/types/service/index.d.ts +30 -0
- package/dist/types/service/preference.d.ts +38 -0
- package/dist/types/service/render/index.d.ts +43 -0
- package/dist/types/service/render/interfaces.d.ts +30 -0
- package/dist/types/utils/index.d.ts +5 -0
- package/dist/types/ws/beatleader.d.ts +47 -0
- package/dist/types/ws/beatsaver.d.ts +52 -0
- package/dist/types/ws/bl-filter.d.ts +2 -0
- package/dist/types/ws/handler.d.ts +8 -0
- package/dist/types/ws/index.d.ts +36 -0
- package/dist/types/ws/scoresaber.d.ts +47 -0
- package/package.json +38 -58
- package/lib/api/base/aioRequest.d.ts +0 -6
- package/lib/api/base/aioRequest.js +0 -24
- package/lib/api/base/aioRequest.js.map +0 -1
- package/lib/api/base/blRequset.d.ts +0 -12
- package/lib/api/base/blRequset.js +0 -68
- package/lib/api/base/blRequset.js.map +0 -1
- package/lib/api/base/bsRequest.d.ts +0 -24
- package/lib/api/base/bsRequest.js +0 -64
- package/lib/api/base/bsRequest.js.map +0 -1
- package/lib/api/base/index.d.ts +0 -12
- package/lib/api/base/index.js +0 -21
- package/lib/api/base/index.js.map +0 -1
- package/lib/api/base/scRequest.d.ts +0 -6
- package/lib/api/base/scRequest.js +0 -28
- package/lib/api/base/scRequest.js.map +0 -1
- package/lib/api/composed/aiosaber.d.ts +0 -7
- package/lib/api/composed/aiosaber.js +0 -16
- package/lib/api/composed/aiosaber.js.map +0 -1
- package/lib/api/composed/beatleader.d.ts +0 -32
- package/lib/api/composed/beatleader.js +0 -112
- package/lib/api/composed/beatleader.js.map +0 -1
- package/lib/api/composed/beatsaver.d.ts +0 -12
- package/lib/api/composed/beatsaver.js +0 -18
- package/lib/api/composed/beatsaver.js.map +0 -1
- package/lib/api/composed/scoresaber.d.ts +0 -14
- package/lib/api/composed/scoresaber.js +0 -67
- package/lib/api/composed/scoresaber.js.map +0 -1
- package/lib/api/index.d.ts +0 -31
- package/lib/api/index.js +0 -134
- package/lib/api/index.js.map +0 -1
- package/lib/api/interfaces/aiosaber/index.d.ts +0 -7
- package/lib/api/interfaces/aiosaber/index.js +0 -3
- package/lib/api/interfaces/aiosaber/index.js.map +0 -1
- package/lib/api/interfaces/beatleader/bsor.d.ts +0 -112
- package/lib/api/interfaces/beatleader/bsor.js +0 -3
- package/lib/api/interfaces/beatleader/bsor.js.map +0 -1
- package/lib/api/interfaces/beatleader/index.d.ts +0 -5
- package/lib/api/interfaces/beatleader/index.js +0 -22
- package/lib/api/interfaces/beatleader/index.js.map +0 -1
- package/lib/api/interfaces/beatleader/req.d.ts +0 -19
- package/lib/api/interfaces/beatleader/req.js +0 -3
- package/lib/api/interfaces/beatleader/req.js.map +0 -1
- package/lib/api/interfaces/beatleader/score.d.ts +0 -162
- package/lib/api/interfaces/beatleader/score.js +0 -3
- package/lib/api/interfaces/beatleader/score.js.map +0 -1
- package/lib/api/interfaces/beatleader/user.d.ts +0 -171
- package/lib/api/interfaces/beatleader/user.js +0 -3
- package/lib/api/interfaces/beatleader/user.js.map +0 -1
- package/lib/api/interfaces/beatleader/ws.d.ts +0 -87
- package/lib/api/interfaces/beatleader/ws.js +0 -3
- package/lib/api/interfaces/beatleader/ws.js.map +0 -1
- package/lib/api/interfaces/beatsaver/alert.d.ts +0 -18
- package/lib/api/interfaces/beatsaver/alert.js +0 -3
- package/lib/api/interfaces/beatsaver/alert.js.map +0 -1
- package/lib/api/interfaces/beatsaver/bsmap.d.ts +0 -66
- package/lib/api/interfaces/beatsaver/bsmap.js +0 -3
- package/lib/api/interfaces/beatsaver/bsmap.js.map +0 -1
- package/lib/api/interfaces/beatsaver/index.d.ts +0 -10
- package/lib/api/interfaces/beatsaver/index.js +0 -22
- package/lib/api/interfaces/beatsaver/index.js.map +0 -1
- package/lib/api/interfaces/beatsaver/resp.d.ts +0 -8
- package/lib/api/interfaces/beatsaver/resp.js +0 -3
- package/lib/api/interfaces/beatsaver/resp.js.map +0 -1
- package/lib/api/interfaces/beatsaver/user.d.ts +0 -8
- package/lib/api/interfaces/beatsaver/user.js +0 -3
- package/lib/api/interfaces/beatsaver/user.js.map +0 -1
- package/lib/api/interfaces/beatsaver/ws.d.ts +0 -11
- package/lib/api/interfaces/beatsaver/ws.js +0 -3
- package/lib/api/interfaces/beatsaver/ws.js.map +0 -1
- package/lib/api/interfaces/scoresaber/index.d.ts +0 -3
- package/lib/api/interfaces/scoresaber/index.js +0 -20
- package/lib/api/interfaces/scoresaber/index.js.map +0 -1
- package/lib/api/interfaces/scoresaber/item.d.ts +0 -57
- package/lib/api/interfaces/scoresaber/item.js +0 -3
- package/lib/api/interfaces/scoresaber/item.js.map +0 -1
- package/lib/api/interfaces/scoresaber/resp.d.ts +0 -9
- package/lib/api/interfaces/scoresaber/resp.js +0 -3
- package/lib/api/interfaces/scoresaber/resp.js.map +0 -1
- package/lib/api/interfaces/scoresaber/user.d.ts +0 -33
- package/lib/api/interfaces/scoresaber/user.js +0 -3
- package/lib/api/interfaces/scoresaber/user.js.map +0 -1
- package/lib/api/interfaces/scoresaber/ws.d.ts +0 -78
- package/lib/api/interfaces/scoresaber/ws.js +0 -3
- package/lib/api/interfaces/scoresaber/ws.js.map +0 -1
- package/lib/api/netResult.d.ts +0 -18
- package/lib/api/netResult.js +0 -42
- package/lib/api/netResult.js.map +0 -1
- package/lib/api/sortScore.d.ts +0 -2
- package/lib/api/sortScore.js +0 -31
- package/lib/api/sortScore.js.map +0 -1
- package/lib/cmd/bind/bind-beatleader.d.ts +0 -2
- package/lib/cmd/bind/bind-beatleader.js +0 -53
- package/lib/cmd/bind/bind-beatleader.js.map +0 -1
- package/lib/cmd/bind/bind-beatsaver.d.ts +0 -2
- package/lib/cmd/bind/bind-beatsaver.js +0 -55
- package/lib/cmd/bind/bind-beatsaver.js.map +0 -1
- package/lib/cmd/bind/bind-id-beatleader.d.ts +0 -2
- package/lib/cmd/bind/bind-id-beatleader.js +0 -55
- package/lib/cmd/bind/bind-id-beatleader.js.map +0 -1
- package/lib/cmd/bind/bind-id-beatsaver.d.ts +0 -2
- package/lib/cmd/bind/bind-id-beatsaver.js +0 -55
- package/lib/cmd/bind/bind-id-beatsaver.js.map +0 -1
- package/lib/cmd/bind/bind-scoresaber.d.ts +0 -2
- package/lib/cmd/bind/bind-scoresaber.js +0 -61
- package/lib/cmd/bind/bind-scoresaber.js.map +0 -1
- package/lib/cmd/bind/index.d.ts +0 -11
- package/lib/cmd/bind/index.js +0 -52
- package/lib/cmd/bind/index.js.map +0 -1
- package/lib/cmd/bsmap/id-search.d.ts +0 -9
- package/lib/cmd/bsmap/id-search.js +0 -35
- package/lib/cmd/bsmap/id-search.js.map +0 -1
- package/lib/cmd/bsmap/key-search.d.ts +0 -9
- package/lib/cmd/bsmap/key-search.js +0 -41
- package/lib/cmd/bsmap/key-search.js.map +0 -1
- package/lib/cmd/bsmap/latest.d.ts +0 -9
- package/lib/cmd/bsmap/latest.js +0 -36
- package/lib/cmd/bsmap/latest.js.map +0 -1
- package/lib/cmd/builder.d.ts +0 -27
- package/lib/cmd/builder.js +0 -60
- package/lib/cmd/builder.js.map +0 -1
- package/lib/cmd/deprecated/cmp.d.ts +0 -9
- package/lib/cmd/deprecated/cmp.js +0 -15
- package/lib/cmd/deprecated/cmp.js.map +0 -1
- package/lib/cmd/deprecated/me.d.ts +0 -13
- package/lib/cmd/deprecated/me.js +0 -66
- package/lib/cmd/deprecated/me.js.map +0 -1
- package/lib/cmd/deprecated/tmp.d.ts +0 -9
- package/lib/cmd/deprecated/tmp.js +0 -21
- package/lib/cmd/deprecated/tmp.js.map +0 -1
- package/lib/cmd/deprecated/whois.d.ts +0 -11
- package/lib/cmd/deprecated/whois.js +0 -40
- package/lib/cmd/deprecated/whois.js.map +0 -1
- package/lib/cmd/help.d.ts +0 -9
- package/lib/cmd/help.js +0 -14
- package/lib/cmd/help.js.map +0 -1
- package/lib/cmd/index.d.ts +0 -2
- package/lib/cmd/index.js +0 -23
- package/lib/cmd/index.js.map +0 -1
- package/lib/cmd/rank.d.ts +0 -11
- package/lib/cmd/rank.js +0 -55
- package/lib/cmd/rank.js.map +0 -1
- package/lib/cmd/score.d.ts +0 -13
- package/lib/cmd/score.js +0 -43
- package/lib/cmd/score.js.map +0 -1
- package/lib/cmd/subscribe/beatleader.d.ts +0 -2
- package/lib/cmd/subscribe/beatleader.js +0 -27
- package/lib/cmd/subscribe/beatleader.js.map +0 -1
- package/lib/cmd/subscribe/beatsaver.d.ts +0 -2
- package/lib/cmd/subscribe/beatsaver.js +0 -27
- package/lib/cmd/subscribe/beatsaver.js.map +0 -1
- package/lib/cmd/subscribe/deprecated/alert.d.ts +0 -0
- package/lib/cmd/subscribe/deprecated/alert.js +0 -86
- package/lib/cmd/subscribe/deprecated/alert.js.map +0 -1
- package/lib/cmd/subscribe/deprecated/blfilters.d.ts +0 -0
- package/lib/cmd/subscribe/deprecated/blfilters.js +0 -49
- package/lib/cmd/subscribe/deprecated/blfilters.js.map +0 -1
- package/lib/cmd/subscribe/deprecated/scoresaber.d.ts +0 -0
- package/lib/cmd/subscribe/deprecated/scoresaber.js +0 -43
- package/lib/cmd/subscribe/deprecated/scoresaber.js.map +0 -1
- package/lib/cmd/subscribe/index.d.ts +0 -11
- package/lib/cmd/subscribe/index.js +0 -45
- package/lib/cmd/subscribe/index.js.map +0 -1
- package/lib/cmd/subscribe/subjoin.d.ts +0 -11
- package/lib/cmd/subscribe/subjoin.js +0 -42
- package/lib/cmd/subscribe/subjoin.js.map +0 -1
- package/lib/cmd/subscribe/subleave.d.ts +0 -11
- package/lib/cmd/subscribe/subleave.js +0 -35
- package/lib/cmd/subscribe/subleave.js.map +0 -1
- package/lib/cmd/subscribe/unsubscribe.d.ts +0 -11
- package/lib/cmd/subscribe/unsubscribe.js +0 -41
- package/lib/cmd/subscribe/unsubscribe.js.map +0 -1
- package/lib/config.d.ts +0 -23
- package/lib/config.js +0 -3
- package/lib/config.js.map +0 -1
- package/lib/db/index.d.ts +0 -0
- package/lib/db/index.js.map +0 -1
- package/lib/errors/index.d.ts +0 -37
- package/lib/errors/index.js +0 -108
- package/lib/errors/index.js.map +0 -1
- package/lib/i18n/index.d.ts +0 -2
- package/lib/i18n/index.js +0 -112
- package/lib/i18n/index.js.map +0 -1
- package/lib/i18n/zh-cn.json +0 -1
- package/lib/img-render/components/RankDifficulty.d.ts +0 -5
- package/lib/img-render/components/RankDifficulty.js +0 -11
- package/lib/img-render/components/RankDifficulty.js.map +0 -1
- package/lib/img-render/components/base/avatar.d.ts +0 -7
- package/lib/img-render/components/base/avatar.js +0 -12
- package/lib/img-render/components/base/avatar.js.map +0 -1
- package/lib/img-render/components/blScoreItem.d.ts +0 -6
- package/lib/img-render/components/blScoreItem.js +0 -14
- package/lib/img-render/components/blScoreItem.js.map +0 -1
- package/lib/img-render/components/characteristic.d.ts +0 -5
- package/lib/img-render/components/characteristic.js +0 -27
- package/lib/img-render/components/characteristic.js.map +0 -1
- package/lib/img-render/components/flag.d.ts +0 -5
- package/lib/img-render/components/flag.js +0 -39
- package/lib/img-render/components/flag.js.map +0 -1
- package/lib/img-render/components/icons/BeatLeader.d.ts +0 -3
- package/lib/img-render/components/icons/BeatLeader.js +0 -10
- package/lib/img-render/components/icons/BeatLeader.js.map +0 -1
- package/lib/img-render/components/icons/RankIcon.d.ts +0 -4
- package/lib/img-render/components/icons/RankIcon.js +0 -14
- package/lib/img-render/components/icons/RankIcon.js.map +0 -1
- package/lib/img-render/components/icons/ScoreSaberIcon.d.ts +0 -3
- package/lib/img-render/components/icons/ScoreSaberIcon.js +0 -8
- package/lib/img-render/components/icons/ScoreSaberIcon.js.map +0 -1
- package/lib/img-render/components/progressbar.d.ts +0 -4
- package/lib/img-render/components/progressbar.js +0 -9
- package/lib/img-render/components/progressbar.js.map +0 -1
- package/lib/img-render/components/rankScoreItem.d.ts +0 -15
- package/lib/img-render/components/rankScoreItem.js +0 -38
- package/lib/img-render/components/rankScoreItem.js.map +0 -1
- package/lib/img-render/components/scoreItem.d.ts +0 -4
- package/lib/img-render/components/scoreItem.js +0 -29
- package/lib/img-render/components/scoreItem.js.map +0 -1
- package/lib/img-render/components/scoregraph.d.ts +0 -10
- package/lib/img-render/components/scoregraph.js +0 -301
- package/lib/img-render/components/scoregraph.js.map +0 -1
- package/lib/img-render/components/skill-graph.d.ts +0 -5
- package/lib/img-render/components/skill-graph.js +0 -50
- package/lib/img-render/components/skill-graph.js.map +0 -1
- package/lib/img-render/components/socre-badge.d.ts +0 -5
- package/lib/img-render/components/socre-badge.js +0 -10
- package/lib/img-render/components/socre-badge.js.map +0 -1
- package/lib/img-render/components/ssScoreItem.d.ts +0 -4
- package/lib/img-render/components/ssScoreItem.js +0 -14
- package/lib/img-render/components/ssScoreItem.js.map +0 -1
- package/lib/img-render/index.d.ts +0 -22
- package/lib/img-render/index.js +0 -134
- package/lib/img-render/index.js.map +0 -1
- package/lib/img-render/interfaces.d.ts +0 -17
- package/lib/img-render/interfaces.js +0 -3
- package/lib/img-render/interfaces.js.map +0 -1
- package/lib/img-render/remote/index.d.ts +0 -0
- package/lib/img-render/remote/index.js +0 -56
- package/lib/img-render/remote/index.js.map +0 -1
- package/lib/img-render/render.d.ts +0 -7
- package/lib/img-render/render.js +0 -65
- package/lib/img-render/render.js.map +0 -1
- package/lib/img-render/renderImg.d.ts +0 -0
- package/lib/img-render/renderImg.js +0 -1
- package/lib/img-render/renderImg.js.map +0 -1
- package/lib/img-render/result/bl-player.d.ts +0 -7
- package/lib/img-render/result/bl-player.js +0 -44
- package/lib/img-render/result/bl-player.js.map +0 -1
- package/lib/img-render/result/bl-score.d.ts +0 -11
- package/lib/img-render/result/bl-score.js +0 -18
- package/lib/img-render/result/bl-score.js.map +0 -1
- package/lib/img-render/result/bs-map.d.ts +0 -8
- package/lib/img-render/result/bs-map.js +0 -26
- package/lib/img-render/result/bs-map.js.map +0 -1
- package/lib/img-render/result/bs-score-with-rank.d.ts +0 -13
- package/lib/img-render/result/bs-score-with-rank.js +0 -21
- package/lib/img-render/result/bs-score-with-rank.js.map +0 -1
- package/lib/img-render/result/index.d.ts +0 -8
- package/lib/img-render/result/index.js +0 -33
- package/lib/img-render/result/index.js.map +0 -1
- package/lib/img-render/result/ss-player.d.ts +0 -8
- package/lib/img-render/result/ss-player.js +0 -39
- package/lib/img-render/result/ss-player.js.map +0 -1
- package/lib/img-render/utils/bl/beatleader.d.ts +0 -13
- package/lib/img-render/utils/bl/beatleader.js +0 -38
- package/lib/img-render/utils/bl/beatleader.js.map +0 -1
- package/lib/img-render/utils/bl/blheadset.d.ts +0 -273
- package/lib/img-render/utils/bl/blheadset.js +0 -281
- package/lib/img-render/utils/bl/blheadset.js.map +0 -1
- package/lib/img-render/utils/bl/bsorDecoder.d.ts +0 -68
- package/lib/img-render/utils/bl/bsorDecoder.js +0 -286
- package/lib/img-render/utils/bl/bsorDecoder.js.map +0 -1
- package/lib/img-render/utils/bl/bsorReplayAcc.d.ts +0 -35
- package/lib/img-render/utils/bl/bsorReplayAcc.js +0 -590
- package/lib/img-render/utils/bl/bsorReplayAcc.js.map +0 -1
- package/lib/img-render/utils/bl/getPart.d.ts +0 -7
- package/lib/img-render/utils/bl/getPart.js +0 -31
- package/lib/img-render/utils/bl/getPart.js.map +0 -1
- package/lib/img-render/utils/bl/stastic.d.ts +0 -2
- package/lib/img-render/utils/bl/stastic.js +0 -53
- package/lib/img-render/utils/bl/stastic.js.map +0 -1
- package/lib/img-render/utils/canvas.d.ts +0 -5
- package/lib/img-render/utils/canvas.js +0 -70
- package/lib/img-render/utils/canvas.js.map +0 -1
- package/lib/img-render/utils/format.d.ts +0 -5
- package/lib/img-render/utils/format.js +0 -52
- package/lib/img-render/utils/format.js.map +0 -1
- package/lib/img-render/utils/getMods.d.ts +0 -2
- package/lib/img-render/utils/getMods.js +0 -22
- package/lib/img-render/utils/getMods.js.map +0 -1
- package/lib/img-render/utils/index.d.ts +0 -3
- package/lib/img-render/utils/index.js +0 -36
- package/lib/img-render/utils/index.js.map +0 -1
- package/lib/img-render/utils/qrcode.d.ts +0 -1
- package/lib/img-render/utils/qrcode.js +0 -43
- package/lib/img-render/utils/qrcode.js.map +0 -1
- package/lib/img-render/utils/sleep.d.ts +0 -1
- package/lib/img-render/utils/sleep.js +0 -10
- package/lib/img-render/utils/sleep.js.map +0 -1
- package/lib/img-render/utils/tag-format.d.ts +0 -1
- package/lib/img-render/utils/tag-format.js +0 -225
- package/lib/img-render/utils/tag-format.js.map +0 -1
- package/lib/img-render/utils/tw-join.d.ts +0 -4
- package/lib/img-render/utils/tw-join.js +0 -36
- package/lib/img-render/utils/tw-join.js.map +0 -1
- package/lib/index.d.ts +0 -8
- package/lib/index.js +0 -25
- package/lib/index.js.map +0 -1
- package/lib/interface/bot.d.ts +0 -20
- package/lib/interface/bot.js +0 -3
- package/lib/interface/bot.js.map +0 -1
- package/lib/interface/cmd.d.ts +0 -36
- package/lib/interface/cmd.js +0 -3
- package/lib/interface/cmd.js.map +0 -1
- package/lib/interface/db/index.d.ts +0 -35
- package/lib/interface/db/index.js +0 -18
- package/lib/interface/db/index.js.map +0 -1
- package/lib/interface/db/models.d.ts +0 -34
- package/lib/interface/db/models.js +0 -3
- package/lib/interface/db/models.js.map +0 -1
- package/lib/interface/index.d.ts +0 -14
- package/lib/interface/index.js +0 -34
- package/lib/interface/index.js.map +0 -1
- package/lib/interface/logger.d.ts +0 -6
- package/lib/interface/logger.js +0 -3
- package/lib/interface/logger.js.map +0 -1
- package/lib/interface/render.d.ts +0 -21
- package/lib/interface/render.js +0 -3
- package/lib/interface/render.js.map +0 -1
- package/lib/schedules/BeatSaverAlertMonitor.d.ts +0 -0
- package/lib/schedules/BeatSaverAlertMonitor.js +0 -231
- package/lib/schedules/BeatSaverAlertMonitor.js.map +0 -1
- package/lib/schedules/index.d.ts +0 -3
- package/lib/schedules/index.js +0 -16
- package/lib/schedules/index.js.map +0 -1
- package/lib/schedules/interface.d.ts +0 -17
- package/lib/schedules/interface.js +0 -3
- package/lib/schedules/interface.js.map +0 -1
- package/lib/schedules/oauthTokenRefreshTask.d.ts +0 -2
- package/lib/schedules/oauthTokenRefreshTask.js +0 -53
- package/lib/schedules/oauthTokenRefreshTask.js.map +0 -1
- package/lib/schedules/temp.d.ts +0 -1
- package/lib/schedules/temp.js +0 -28
- package/lib/schedules/temp.js.map +0 -1
- package/lib/utils/cache.d.ts +0 -2
- package/lib/utils/cache.js +0 -28
- package/lib/utils/cache.js.map +0 -1
- package/lib/utils/index.d.ts +0 -5
- package/lib/utils/index.js +0 -77
- package/lib/utils/index.js.map +0 -1
- package/lib/ws/beatleader.d.ts +0 -18
- package/lib/ws/beatleader.js +0 -56
- package/lib/ws/beatleader.js.map +0 -1
- package/lib/ws/beatsaver.d.ts +0 -23
- package/lib/ws/beatsaver.js +0 -58
- package/lib/ws/beatsaver.js.map +0 -1
- package/lib/ws/bl-filter.d.ts +0 -0
- package/lib/ws/bl-filter.js +0 -64
- package/lib/ws/bl-filter.js.map +0 -1
- package/lib/ws/handler.d.ts +0 -6
- package/lib/ws/handler.js +0 -3
- package/lib/ws/handler.js.map +0 -1
- package/lib/ws/index.d.ts +0 -4
- package/lib/ws/index.js +0 -21
- package/lib/ws/index.js.map +0 -1
- package/lib/ws/scoresaber.d.ts +0 -18
- package/lib/ws/scoresaber.js +0 -37
- package/lib/ws/scoresaber.js.map +0 -1
- /package/{lib/db → dist/cjs/cmd/config}/index.js +0 -0
@@ -0,0 +1,299 @@
|
|
1
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
2
|
+
import { processAccGraphs, processUnderswings } from "../utils/bl/bsorReplayAcc";
|
3
|
+
import {
|
4
|
+
createDistanceWeightFunction,
|
5
|
+
createMinMaxCounter
|
6
|
+
} from "../utils/bl/beatleader";
|
7
|
+
import getStatistic from "../utils/bl/stastic";
|
8
|
+
import Chart from "chart.js/auto";
|
9
|
+
import { createCanvas } from "@napi-rs/canvas";
|
10
|
+
function formatNumber(num, digits = 2, addSign = false, notANumber = null) {
|
11
|
+
if (!Number.isFinite(num)) {
|
12
|
+
return notANumber;
|
13
|
+
}
|
14
|
+
return (addSign && num > 0 ? "+" : "") + num.toLocaleString("zh-CN", {
|
15
|
+
minimumFractionDigits: digits,
|
16
|
+
maximumFractionDigits: digits
|
17
|
+
});
|
18
|
+
}
|
19
|
+
function timeToLabel(time) {
|
20
|
+
const minutes = Math.floor(time / 60);
|
21
|
+
const seconds = Math.floor(time % 60);
|
22
|
+
return minutes + ":" + seconds.toString().padStart(2, "0");
|
23
|
+
}
|
24
|
+
function processChartData(chartData, resolution, smoothPeriodPercentage, weightFunctionSteepness) {
|
25
|
+
const data = [];
|
26
|
+
if (chartData.length === 0 || resolution === 0) return data;
|
27
|
+
const songDuration = chartData[chartData.length - 1][1];
|
28
|
+
const distanceWeightFunction = createDistanceWeightFunction(
|
29
|
+
songDuration * smoothPeriodPercentage,
|
30
|
+
weightFunctionSteepness
|
31
|
+
);
|
32
|
+
for (let i = 0; i < resolution; i += 1) {
|
33
|
+
const songTime = songDuration * i / (resolution - 1);
|
34
|
+
let sum = 0;
|
35
|
+
let divider = 0;
|
36
|
+
for (let j = 0; j < chartData.length; j += 1) {
|
37
|
+
const item = chartData[j];
|
38
|
+
const weight = distanceWeightFunction.getWeight(item[1] - songTime);
|
39
|
+
sum += item[0] * weight;
|
40
|
+
divider += weight;
|
41
|
+
}
|
42
|
+
if (divider === 0) continue;
|
43
|
+
const value = 100 + sum / divider * 15;
|
44
|
+
data.push(value);
|
45
|
+
}
|
46
|
+
return data;
|
47
|
+
}
|
48
|
+
function ScoreGraph({
|
49
|
+
scoreId,
|
50
|
+
scoreInfo,
|
51
|
+
statistic,
|
52
|
+
bsor,
|
53
|
+
height,
|
54
|
+
width
|
55
|
+
}) {
|
56
|
+
const canvas = createCanvas(width * 4, height * 4);
|
57
|
+
const setupChart = (canvas2, chartData, underswingsData2, beatSavior2) => {
|
58
|
+
var _a, _b, _c, _d;
|
59
|
+
if (!canvas2 || !chartData || !Object.keys(chartData).length) return;
|
60
|
+
const title = (underswingsData2 == null ? void 0 : underswingsData2.noUnderswingsScore) > (underswingsData2 == null ? void 0 : underswingsData2.score) ? `Lost by underswings: ${formatNumber(underswingsData2.noUnderswingsScore - underswingsData2.score, 0)}pts, ${formatNumber(
|
61
|
+
underswingsData2.noUnderswingsAcc - underswingsData2.acc,
|
62
|
+
2
|
63
|
+
)}% acc` + ((underswingsData2 == null ? void 0 : underswingsData2.noUnderswingsPp) && (underswingsData2 == null ? void 0 : underswingsData2.noUnderswingsPp) > (underswingsData2 == null ? void 0 : underswingsData2.pp) ? `, ${formatNumber(underswingsData2.noUnderswingsPp - underswingsData2.pp, 2)}pp` : "") : null;
|
64
|
+
const labels = chartData.times.map(timeToLabel);
|
65
|
+
const minMaxCounter = createMinMaxCounter(0, 115, 1);
|
66
|
+
const hands = [];
|
67
|
+
if ((_a = beatSavior2 == null ? void 0 : beatSavior2.stats) == null ? void 0 : _a.accLeft) {
|
68
|
+
hands.push("red");
|
69
|
+
}
|
70
|
+
if ((_b = beatSavior2 == null ? void 0 : beatSavior2.stats) == null ? void 0 : _b.accRight) {
|
71
|
+
hands.push("blue");
|
72
|
+
}
|
73
|
+
if (hands.length == 2) {
|
74
|
+
hands.push("total");
|
75
|
+
}
|
76
|
+
for (let i = 0; i < chartData.times.length; i++) {
|
77
|
+
hands.forEach((saberType) => {
|
78
|
+
minMaxCounter.update(chartData.realScoreBySaber[saberType][i]);
|
79
|
+
minMaxCounter.update(chartData.fullSwingBySaber[saberType][i]);
|
80
|
+
});
|
81
|
+
}
|
82
|
+
let datasets = [];
|
83
|
+
if ((_c = beatSavior2 == null ? void 0 : beatSavior2.stats) == null ? void 0 : _c.accLeft) {
|
84
|
+
datasets.push({
|
85
|
+
yAxisID: "score",
|
86
|
+
label: "Accuracy (left)",
|
87
|
+
data: chartData.fullSwingBySaber.red,
|
88
|
+
type: "line",
|
89
|
+
borderColor: "#ee5555",
|
90
|
+
backgroundColor: "#ee5555",
|
91
|
+
borderWidth: 8,
|
92
|
+
pointRadius: 0,
|
93
|
+
cubicInterpolationMode: "monotone",
|
94
|
+
tension: 0.4,
|
95
|
+
spanGaps: true,
|
96
|
+
order: 3
|
97
|
+
});
|
98
|
+
datasets.push({
|
99
|
+
yAxisID: "score",
|
100
|
+
label: "Underswing (left)",
|
101
|
+
data: chartData.realScoreBySaber.red,
|
102
|
+
type: "line",
|
103
|
+
fill: "-1",
|
104
|
+
borderColor: "#ee555555",
|
105
|
+
backgroundColor: "#ee555555",
|
106
|
+
borderWidth: 2,
|
107
|
+
pointRadius: 0,
|
108
|
+
cubicInterpolationMode: "monotone",
|
109
|
+
tension: 0.4,
|
110
|
+
spanGaps: true,
|
111
|
+
order: 4
|
112
|
+
});
|
113
|
+
}
|
114
|
+
if ((_d = beatSavior2 == null ? void 0 : beatSavior2.stats) == null ? void 0 : _d.accRight) {
|
115
|
+
datasets.push({
|
116
|
+
yAxisID: "score",
|
117
|
+
label: "Accuracy (right)",
|
118
|
+
data: chartData.fullSwingBySaber.blue,
|
119
|
+
type: "line",
|
120
|
+
borderColor: "#5555ee",
|
121
|
+
backgroundColor: "#5555ee",
|
122
|
+
borderWidth: 8,
|
123
|
+
pointRadius: 0,
|
124
|
+
cubicInterpolationMode: "monotone",
|
125
|
+
tension: 0.4,
|
126
|
+
spanGaps: true,
|
127
|
+
order: 5
|
128
|
+
});
|
129
|
+
datasets.push({
|
130
|
+
yAxisID: "score",
|
131
|
+
label: "Underswing (right)",
|
132
|
+
data: chartData.realScoreBySaber.blue,
|
133
|
+
type: "line",
|
134
|
+
fill: "-1",
|
135
|
+
borderColor: "#5555ee55",
|
136
|
+
backgroundColor: "#5555ee55",
|
137
|
+
borderWidth: 2,
|
138
|
+
pointRadius: 0,
|
139
|
+
cubicInterpolationMode: "monotone",
|
140
|
+
tension: 0.4,
|
141
|
+
spanGaps: true,
|
142
|
+
order: 6
|
143
|
+
});
|
144
|
+
}
|
145
|
+
datasets = datasets.concat([
|
146
|
+
{
|
147
|
+
yAxisID: "score",
|
148
|
+
label: "Accuracy",
|
149
|
+
data: chartData.fullSwingBySaber.total,
|
150
|
+
type: "line",
|
151
|
+
borderColor: "white",
|
152
|
+
backgroundColor: "white",
|
153
|
+
borderWidth: 8,
|
154
|
+
pointRadius: 0,
|
155
|
+
cubicInterpolationMode: "monotone",
|
156
|
+
tension: 0.4,
|
157
|
+
spanGaps: true,
|
158
|
+
order: 1
|
159
|
+
},
|
160
|
+
{
|
161
|
+
yAxisID: "score",
|
162
|
+
label: "Underswing",
|
163
|
+
data: chartData.realScoreBySaber.total,
|
164
|
+
type: "line",
|
165
|
+
fill: "-1",
|
166
|
+
borderColor: "#aaaaaa55",
|
167
|
+
backgroundColor: "#aaaaaa55",
|
168
|
+
borderWidth: 2,
|
169
|
+
pointRadius: 0,
|
170
|
+
cubicInterpolationMode: "monotone",
|
171
|
+
tension: 0.4,
|
172
|
+
spanGaps: true,
|
173
|
+
order: 2
|
174
|
+
},
|
175
|
+
{
|
176
|
+
yAxisID: "score",
|
177
|
+
label: "Score",
|
178
|
+
data: chartData.realScoreBySaber.total,
|
179
|
+
type: "line",
|
180
|
+
borderColor: "#aaaaaa",
|
181
|
+
backgroundColor: "#aaaaaa",
|
182
|
+
borderWidth: 8,
|
183
|
+
pointRadius: 0,
|
184
|
+
cubicInterpolationMode: "monotone",
|
185
|
+
tension: 0.4,
|
186
|
+
spanGaps: true,
|
187
|
+
order: 0
|
188
|
+
}
|
189
|
+
]);
|
190
|
+
new Chart(canvas2, {
|
191
|
+
data: { labels, datasets },
|
192
|
+
options: {
|
193
|
+
responsive: false,
|
194
|
+
devicePixelRatio: 1,
|
195
|
+
maintainAspectRatio: false,
|
196
|
+
plugins: {
|
197
|
+
legend: {
|
198
|
+
display: false
|
199
|
+
},
|
200
|
+
title: {
|
201
|
+
display: !!(title == null ? void 0 : title.length),
|
202
|
+
text: title,
|
203
|
+
color: "white",
|
204
|
+
font: {
|
205
|
+
weight: "normal",
|
206
|
+
size: 60
|
207
|
+
},
|
208
|
+
position: "bottom",
|
209
|
+
padding: { top: 5, bottom: 0 }
|
210
|
+
},
|
211
|
+
tooltip: {
|
212
|
+
callbacks: {
|
213
|
+
title(tooltipItems) {
|
214
|
+
const item = tooltipItems[0];
|
215
|
+
const labels2 = item.chart.data.labels;
|
216
|
+
return labels2[item.dataIndex] + " (10 seconds average)";
|
217
|
+
},
|
218
|
+
label(ctx) {
|
219
|
+
const datasetLabel = ctx.dataset.label;
|
220
|
+
let percentage;
|
221
|
+
let value;
|
222
|
+
switch (datasetLabel) {
|
223
|
+
case "Underswing (left)":
|
224
|
+
value = ctx.raw - chartData.fullSwingBySaber.red[ctx.dataIndex];
|
225
|
+
percentage = value / 115;
|
226
|
+
return `${datasetLabel}: ${formatNumber(value, 1)} (${formatNumber(percentage * 100, 2)}%)`;
|
227
|
+
case "Underswing (right)":
|
228
|
+
value = ctx.raw - chartData.fullSwingBySaber.blue[ctx.dataIndex];
|
229
|
+
percentage = value / 115;
|
230
|
+
return `${datasetLabel}: ${formatNumber(value, 1)} (${formatNumber(percentage * 100, 2)}%)`;
|
231
|
+
case "Underswing":
|
232
|
+
value = ctx.raw - chartData.fullSwingBySaber.total[ctx.dataIndex];
|
233
|
+
percentage = value / 115;
|
234
|
+
return `${datasetLabel}: ${formatNumber(value, 1)} (${formatNumber(percentage * 100, 2)}%)`;
|
235
|
+
case "Score":
|
236
|
+
value = ctx.raw;
|
237
|
+
percentage = value / 115;
|
238
|
+
return `${datasetLabel}: ${formatNumber(value, 1)} (${formatNumber(percentage * 100, 2)}%)`;
|
239
|
+
default:
|
240
|
+
value = ctx.raw;
|
241
|
+
percentage = value / 115;
|
242
|
+
return `${datasetLabel}: ${formatNumber(value - 100, 1)} (${formatNumber(percentage * 100, 2)}%)`;
|
243
|
+
}
|
244
|
+
}
|
245
|
+
}
|
246
|
+
}
|
247
|
+
},
|
248
|
+
scales: {
|
249
|
+
x: {
|
250
|
+
ticks: {
|
251
|
+
autoSkip: true,
|
252
|
+
autoSkipPadding: 4,
|
253
|
+
color: "white",
|
254
|
+
font: {
|
255
|
+
weight: "normal",
|
256
|
+
size: 60
|
257
|
+
}
|
258
|
+
}
|
259
|
+
},
|
260
|
+
y: {
|
261
|
+
display: true,
|
262
|
+
min: minMaxCounter.minValue,
|
263
|
+
max: minMaxCounter.maxValue,
|
264
|
+
ticks: {
|
265
|
+
autoSkip: true,
|
266
|
+
autoSkipPadding: 4,
|
267
|
+
color: "white",
|
268
|
+
font: {
|
269
|
+
weight: "normal",
|
270
|
+
size: 60
|
271
|
+
}
|
272
|
+
}
|
273
|
+
},
|
274
|
+
score: {
|
275
|
+
display: false,
|
276
|
+
min: minMaxCounter.minValue,
|
277
|
+
max: minMaxCounter.maxValue,
|
278
|
+
ticks: {
|
279
|
+
autoSkip: true,
|
280
|
+
autoSkipPadding: 4,
|
281
|
+
color: "white"
|
282
|
+
}
|
283
|
+
}
|
284
|
+
}
|
285
|
+
}
|
286
|
+
});
|
287
|
+
};
|
288
|
+
const beatSavior = getStatistic(scoreInfo, scoreId, statistic);
|
289
|
+
const replayAccGraphs = processAccGraphs(bsor);
|
290
|
+
const underswingsData = processUnderswings(bsor);
|
291
|
+
setupChart(canvas, replayAccGraphs, underswingsData, beatSavior);
|
292
|
+
const dataURL = canvas.toDataURL("image/png");
|
293
|
+
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("img", { src: dataURL, width, height }) }) });
|
294
|
+
}
|
295
|
+
export {
|
296
|
+
ScoreGraph as default,
|
297
|
+
formatNumber
|
298
|
+
};
|
299
|
+
//# sourceMappingURL=scoregraph.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/components/scoregraph.tsx"],"sourcesContent":["import { processAccGraphs, processUnderswings } from '../utils/bl/bsorReplayAcc'\nimport {\n createDistanceWeightFunction,\n createMinMaxCounter,\n} from '../utils/bl/beatleader'\nimport getStatistic from '../utils/bl/stastic'\nimport Chart from 'chart.js/auto'\nimport { BSOR, Score } from '@/service/api/interfaces/beatleader'\nimport { createCanvas } from '@napi-rs/canvas'\n\nexport function formatNumber(\n num: number,\n digits = 2,\n addSign = false,\n notANumber = null\n) {\n if (!Number.isFinite(num)) {\n return notANumber\n }\n\n return (\n (addSign && num > 0 ? '+' : '') +\n num.toLocaleString('zh-CN', {\n minimumFractionDigits: digits,\n maximumFractionDigits: digits,\n })\n )\n}\n\nfunction timeToLabel(time: any) {\n const minutes = Math.floor(time / 60)\n const seconds = Math.floor(time % 60)\n return minutes + ':' + seconds.toString().padStart(2, '0')\n}\n\nfunction processChartData(\n chartData: any,\n resolution: any,\n smoothPeriodPercentage: any,\n weightFunctionSteepness: any\n) {\n const data = [] as any[]\n if (chartData.length === 0 || resolution === 0) return data\n\n const songDuration = chartData[chartData.length - 1][1]\n const distanceWeightFunction = createDistanceWeightFunction(\n songDuration * smoothPeriodPercentage,\n weightFunctionSteepness\n )\n\n for (let i = 0.0; i < resolution; i += 1.0) {\n const songTime = (songDuration * i) / (resolution - 1)\n\n let sum = 0\n let divider = 0\n\n for (let j = 0.0; j < chartData.length; j += 1.0) {\n const item = chartData[j]\n const weight = distanceWeightFunction.getWeight(item[1] - songTime)\n\n sum += item[0] * weight\n divider += weight\n }\n\n if (divider === 0) continue\n const value = 100 + (sum / divider) * 15\n data.push(value)\n }\n\n return data\n}\n\n// get score Statics\nexport default function ScoreGraph({\n scoreId,\n scoreInfo,\n statistic,\n bsor,\n height,\n width,\n}: {\n scoreId: number\n scoreInfo: Score\n statistic: any\n bsor: BSOR\n height: number\n width: number\n}) {\n const canvas = createCanvas(width * 4, height * 4)\n\n const setupChart = (\n canvas: any,\n chartData: any,\n underswingsData: any,\n beatSavior: any\n ) => {\n if (!canvas || !chartData || !Object.keys(chartData).length) return\n\n const title =\n underswingsData?.noUnderswingsScore > underswingsData?.score\n ? `Lost by underswings: ${formatNumber(underswingsData.noUnderswingsScore - underswingsData.score, 0)}pts, ${formatNumber(\n underswingsData.noUnderswingsAcc - underswingsData.acc,\n 2\n )}% acc` +\n (underswingsData?.noUnderswingsPp &&\n underswingsData?.noUnderswingsPp > underswingsData?.pp\n ? `, ${formatNumber(underswingsData.noUnderswingsPp - underswingsData.pp, 2)}pp`\n : '')\n : null\n\n const labels = chartData.times.map(timeToLabel)\n\n const minMaxCounter = createMinMaxCounter(0, 115, 1.0)\n\n const hands = [] as any\n if (beatSavior?.stats?.accLeft) {\n hands.push('red')\n }\n if (beatSavior?.stats?.accRight) {\n hands.push('blue')\n }\n if (hands.length == 2) {\n hands.push('total')\n }\n\n for (let i = 0; i < chartData.times.length; i++) {\n hands.forEach((saberType: any) => {\n minMaxCounter.update(chartData.realScoreBySaber[saberType][i])\n minMaxCounter.update(chartData.fullSwingBySaber[saberType][i])\n })\n }\n let datasets = [] as any[]\n if (beatSavior?.stats?.accLeft) {\n datasets.push({\n yAxisID: 'score',\n label: 'Accuracy (left)',\n data: chartData.fullSwingBySaber.red,\n type: 'line',\n borderColor: '#ee5555',\n backgroundColor: '#ee5555',\n borderWidth: 8,\n pointRadius: 0,\n cubicInterpolationMode: 'monotone',\n tension: 0.4,\n spanGaps: true,\n order: 3,\n })\n datasets.push({\n yAxisID: 'score',\n label: 'Underswing (left)',\n data: chartData.realScoreBySaber.red,\n type: 'line',\n fill: '-1',\n borderColor: '#ee555555',\n backgroundColor: '#ee555555',\n borderWidth: 2,\n pointRadius: 0,\n cubicInterpolationMode: 'monotone',\n tension: 0.4,\n spanGaps: true,\n order: 4,\n })\n }\n\n if (beatSavior?.stats?.accRight) {\n datasets.push({\n yAxisID: 'score',\n label: 'Accuracy (right)',\n data: chartData.fullSwingBySaber.blue,\n type: 'line',\n borderColor: '#5555ee',\n backgroundColor: '#5555ee',\n borderWidth: 8,\n pointRadius: 0,\n cubicInterpolationMode: 'monotone',\n tension: 0.4,\n spanGaps: true,\n order: 5,\n })\n datasets.push({\n yAxisID: 'score',\n label: 'Underswing (right)',\n data: chartData.realScoreBySaber.blue,\n type: 'line',\n fill: '-1',\n borderColor: '#5555ee55',\n backgroundColor: '#5555ee55',\n borderWidth: 2,\n pointRadius: 0,\n cubicInterpolationMode: 'monotone',\n tension: 0.4,\n spanGaps: true,\n order: 6,\n })\n }\n\n datasets = datasets.concat([\n {\n yAxisID: 'score',\n label: 'Accuracy',\n data: chartData.fullSwingBySaber.total,\n type: 'line',\n borderColor: 'white',\n backgroundColor: 'white',\n borderWidth: 8,\n pointRadius: 0,\n cubicInterpolationMode: 'monotone',\n tension: 0.4,\n spanGaps: true,\n order: 1,\n },\n {\n yAxisID: 'score',\n label: 'Underswing',\n data: chartData.realScoreBySaber.total,\n type: 'line',\n fill: '-1',\n borderColor: '#aaaaaa55',\n backgroundColor: '#aaaaaa55',\n borderWidth: 2,\n pointRadius: 0,\n cubicInterpolationMode: 'monotone',\n tension: 0.4,\n spanGaps: true,\n order: 2,\n },\n {\n yAxisID: 'score',\n label: 'Score',\n data: chartData.realScoreBySaber.total,\n type: 'line',\n borderColor: '#aaaaaa',\n backgroundColor: '#aaaaaa',\n borderWidth: 8,\n pointRadius: 0,\n cubicInterpolationMode: 'monotone',\n tension: 0.4,\n spanGaps: true,\n order: 0,\n },\n ])\n\n new Chart(canvas, {\n data: { labels, datasets },\n options: {\n responsive: false,\n devicePixelRatio: 1,\n maintainAspectRatio: false,\n plugins: {\n legend: {\n display: false,\n },\n title: {\n display: !!title?.length,\n text: title as any,\n color: 'white',\n font: {\n weight: 'normal',\n size: 60,\n },\n position: 'bottom',\n padding: { top: 5, bottom: 0 },\n },\n tooltip: {\n callbacks: {\n title(tooltipItems) {\n const item = tooltipItems[0]\n const labels = item.chart.data.labels as any[]\n return labels[item.dataIndex] + ' (10 seconds average)'\n },\n label(ctx: any) {\n const datasetLabel = ctx.dataset.label\n\n let percentage\n let value\n\n switch (datasetLabel) {\n case 'Underswing (left)':\n value =\n ctx.raw - chartData.fullSwingBySaber.red[ctx.dataIndex]\n percentage = value / 115.0\n return `${datasetLabel}: ${formatNumber(value, 1)} (${formatNumber(percentage * 100, 2)}%)`\n case 'Underswing (right)':\n value =\n ctx.raw - chartData.fullSwingBySaber.blue[ctx.dataIndex]\n percentage = value / 115.0\n return `${datasetLabel}: ${formatNumber(value, 1)} (${formatNumber(percentage * 100, 2)}%)`\n case 'Underswing':\n value =\n ctx.raw - chartData.fullSwingBySaber.total[ctx.dataIndex]\n percentage = value / 115.0\n return `${datasetLabel}: ${formatNumber(value, 1)} (${formatNumber(percentage * 100, 2)}%)`\n case 'Score':\n value = ctx.raw\n percentage = value / 115.0\n return `${datasetLabel}: ${formatNumber(value, 1)} (${formatNumber(percentage * 100, 2)}%)`\n default:\n value = ctx.raw\n percentage = value / 115.0\n return `${datasetLabel}: ${formatNumber(value - 100.0, 1)} (${formatNumber(percentage * 100, 2)}%)`\n }\n },\n },\n },\n },\n scales: {\n x: {\n ticks: {\n autoSkip: true,\n autoSkipPadding: 4,\n color: 'white',\n font: {\n weight: 'normal',\n size: 60,\n },\n },\n },\n y: {\n display: true,\n min: minMaxCounter.minValue,\n max: minMaxCounter.maxValue,\n ticks: {\n autoSkip: true,\n autoSkipPadding: 4,\n color: 'white',\n font: {\n weight: 'normal',\n size: 60,\n },\n },\n },\n score: {\n display: false,\n min: minMaxCounter.minValue,\n max: minMaxCounter.maxValue,\n ticks: {\n autoSkip: true,\n autoSkipPadding: 4,\n color: 'white',\n },\n },\n },\n },\n })\n }\n const beatSavior = getStatistic(scoreInfo, scoreId, statistic)\n const replayAccGraphs = processAccGraphs(bsor)\n const underswingsData = processUnderswings(bsor)\n setupChart(canvas, replayAccGraphs, underswingsData, beatSavior)\n const dataURL = canvas.toDataURL('image/png')\n return (\n <>\n <div>\n <img src={dataURL} width={width} height={height} />\n </div>\n </>\n )\n}\n"],"mappings":"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","names":["canvas","underswingsData","beatSavior","labels"]}
|
@@ -0,0 +1,211 @@
|
|
1
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
2
|
+
const getPoint = (center, edgePoint, edgeFactor, pointFactor) => {
|
3
|
+
const factorY = (center.y - edgePoint.y) / edgeFactor;
|
4
|
+
const factorX = (center.x - edgePoint.x) / edgeFactor;
|
5
|
+
return {
|
6
|
+
x: center.x - pointFactor * factorX,
|
7
|
+
y: center.y - pointFactor * factorY
|
8
|
+
};
|
9
|
+
};
|
10
|
+
function SkillGraph({
|
11
|
+
factorA = 0.4,
|
12
|
+
factorB = 0.2,
|
13
|
+
factorC = 0.2
|
14
|
+
}) {
|
15
|
+
const base = 0.4;
|
16
|
+
const sqrt3 = Math.sqrt(3);
|
17
|
+
const centerPoint = {
|
18
|
+
x: 60,
|
19
|
+
y: 80 / sqrt3 + 10
|
20
|
+
};
|
21
|
+
const edgePointA = {
|
22
|
+
x: 20,
|
23
|
+
y: 40 / sqrt3 + 10
|
24
|
+
};
|
25
|
+
const edgePointB = {
|
26
|
+
x: 100,
|
27
|
+
y: 40 / sqrt3 + 10
|
28
|
+
};
|
29
|
+
const edgePointC = {
|
30
|
+
x: 60,
|
31
|
+
y: 160 / sqrt3 + 10
|
32
|
+
};
|
33
|
+
const PA = getPoint(centerPoint, edgePointA, base, factorA);
|
34
|
+
const PB = getPoint(centerPoint, edgePointB, base, factorB);
|
35
|
+
const PC = getPoint(centerPoint, edgePointC, base, factorC);
|
36
|
+
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
|
37
|
+
"svg",
|
38
|
+
{
|
39
|
+
height: "145",
|
40
|
+
viewBox: `0 0 125 125`,
|
41
|
+
xmlns: "http://www.w3.org/2000/svg",
|
42
|
+
children: [
|
43
|
+
/* @__PURE__ */ jsx(
|
44
|
+
"circle",
|
45
|
+
{
|
46
|
+
cx: centerPoint.x,
|
47
|
+
cy: centerPoint.y,
|
48
|
+
r: 80 / sqrt3,
|
49
|
+
className: "fill-gray-100/30",
|
50
|
+
filter: "url(#blur)"
|
51
|
+
}
|
52
|
+
),
|
53
|
+
/* @__PURE__ */ jsx("circle", { cx: PA.x, cy: PA.y }),
|
54
|
+
/* @__PURE__ */ jsx(
|
55
|
+
"text",
|
56
|
+
{
|
57
|
+
x: edgePointA.x - 10,
|
58
|
+
y: edgePointA.y,
|
59
|
+
fill: "url(#gradient1)",
|
60
|
+
className: "text-[8px] font-bold text-white",
|
61
|
+
children: "Acc"
|
62
|
+
}
|
63
|
+
),
|
64
|
+
/* @__PURE__ */ jsxs(
|
65
|
+
"text",
|
66
|
+
{
|
67
|
+
x: edgePointA.x - 20,
|
68
|
+
y: edgePointA.y + 10,
|
69
|
+
fill: "url(#gradient1)",
|
70
|
+
className: "text-[8px] font-bold text-white",
|
71
|
+
children: [
|
72
|
+
(factorA * 100).toFixed(2),
|
73
|
+
"%"
|
74
|
+
]
|
75
|
+
}
|
76
|
+
),
|
77
|
+
/* @__PURE__ */ jsx(
|
78
|
+
"text",
|
79
|
+
{
|
80
|
+
x: edgePointB.x - 6,
|
81
|
+
y: edgePointB.y,
|
82
|
+
fill: "url(#gradient1)",
|
83
|
+
className: "text-[8px] font-bold text-white",
|
84
|
+
children: "Tech"
|
85
|
+
}
|
86
|
+
),
|
87
|
+
/* @__PURE__ */ jsxs(
|
88
|
+
"text",
|
89
|
+
{
|
90
|
+
x: edgePointB.x - 6,
|
91
|
+
y: edgePointB.y + 8,
|
92
|
+
fill: "url(#gradient1)",
|
93
|
+
className: "text-[8px] font-bold text-white",
|
94
|
+
children: [
|
95
|
+
(factorB * 100).toFixed(2),
|
96
|
+
"%"
|
97
|
+
]
|
98
|
+
}
|
99
|
+
),
|
100
|
+
/* @__PURE__ */ jsx(
|
101
|
+
"text",
|
102
|
+
{
|
103
|
+
x: edgePointC.x - 6,
|
104
|
+
y: edgePointC.y + 2,
|
105
|
+
fill: "url(#gradient1)",
|
106
|
+
className: "text-[8px] font-bold text-white",
|
107
|
+
children: "Pass"
|
108
|
+
}
|
109
|
+
),
|
110
|
+
/* @__PURE__ */ jsxs(
|
111
|
+
"text",
|
112
|
+
{
|
113
|
+
x: edgePointC.x - 8,
|
114
|
+
y: edgePointC.y + 12,
|
115
|
+
fill: "url(#gradient1)",
|
116
|
+
className: "text-[8px] font-bold text-white",
|
117
|
+
children: [
|
118
|
+
(factorC * 100).toFixed(2),
|
119
|
+
"%"
|
120
|
+
]
|
121
|
+
}
|
122
|
+
),
|
123
|
+
/* @__PURE__ */ jsx("circle", { cx: PB.x, cy: PB.y }),
|
124
|
+
/* @__PURE__ */ jsx("circle", { cx: PC.x, cy: PC.y }),
|
125
|
+
/* @__PURE__ */ jsx("line", { x1: PA.x, y1: PA.y, x2: PC.x, y2: PC.y }),
|
126
|
+
/* @__PURE__ */ jsx("line", { x1: PA.x, y1: PA.y, x2: PB.x, y2: PB.y }),
|
127
|
+
/* @__PURE__ */ jsx("line", { x1: PC.x, y1: PC.y, x2: PB.x, y2: PB.y }),
|
128
|
+
/* @__PURE__ */ jsx(
|
129
|
+
"polygon",
|
130
|
+
{
|
131
|
+
points: `${PA.x},${PA.y} ${PB.x},${PB.y} ${PC.x},${PC.y}`,
|
132
|
+
fill: "url(#gradient)"
|
133
|
+
}
|
134
|
+
),
|
135
|
+
/* @__PURE__ */ jsxs("defs", { children: [
|
136
|
+
/* @__PURE__ */ jsxs(
|
137
|
+
"linearGradient",
|
138
|
+
{
|
139
|
+
id: "gradient1",
|
140
|
+
x1: "0%",
|
141
|
+
y1: "0%",
|
142
|
+
x2: "100%",
|
143
|
+
y2: "100%",
|
144
|
+
opacity: 0,
|
145
|
+
children: [
|
146
|
+
/* @__PURE__ */ jsx(
|
147
|
+
"stop",
|
148
|
+
{
|
149
|
+
offset: "0%",
|
150
|
+
style: {
|
151
|
+
stopColor: "rgb(252 165 165)",
|
152
|
+
stopOpacity: 1
|
153
|
+
}
|
154
|
+
}
|
155
|
+
),
|
156
|
+
/* @__PURE__ */ jsx(
|
157
|
+
"stop",
|
158
|
+
{
|
159
|
+
offset: "100%",
|
160
|
+
style: {
|
161
|
+
stopColor: "rgb(147 197 253)",
|
162
|
+
stopOpacity: 1
|
163
|
+
}
|
164
|
+
}
|
165
|
+
)
|
166
|
+
]
|
167
|
+
}
|
168
|
+
),
|
169
|
+
/* @__PURE__ */ jsxs(
|
170
|
+
"linearGradient",
|
171
|
+
{
|
172
|
+
id: "gradient",
|
173
|
+
x1: "0%",
|
174
|
+
y1: "0%",
|
175
|
+
x2: "100%",
|
176
|
+
y2: "100%",
|
177
|
+
opacity: 0,
|
178
|
+
children: [
|
179
|
+
/* @__PURE__ */ jsx(
|
180
|
+
"stop",
|
181
|
+
{
|
182
|
+
offset: "0%",
|
183
|
+
style: {
|
184
|
+
stopColor: "red",
|
185
|
+
stopOpacity: 0.3
|
186
|
+
}
|
187
|
+
}
|
188
|
+
),
|
189
|
+
/* @__PURE__ */ jsx(
|
190
|
+
"stop",
|
191
|
+
{
|
192
|
+
offset: "100%",
|
193
|
+
style: {
|
194
|
+
stopColor: "blue",
|
195
|
+
stopOpacity: 0.4
|
196
|
+
}
|
197
|
+
}
|
198
|
+
)
|
199
|
+
]
|
200
|
+
}
|
201
|
+
),
|
202
|
+
/* @__PURE__ */ jsx("filter", { id: "blur", children: /* @__PURE__ */ jsx("feGaussianBlur", { in: "SourceGraphic", stdDeviation: "1" }) })
|
203
|
+
] })
|
204
|
+
]
|
205
|
+
}
|
206
|
+
) });
|
207
|
+
}
|
208
|
+
export {
|
209
|
+
SkillGraph as default
|
210
|
+
};
|
211
|
+
//# sourceMappingURL=skill-graph.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/components/skill-graph.tsx"],"sourcesContent":["/** @jsxImportSource react */\ninterface Point {\n x: number\n y: number\n}\n\nconst getPoint = (\n center: Point,\n edgePoint: Point,\n edgeFactor: number,\n pointFactor: number\n) => {\n const factorY = (center.y - edgePoint.y) / edgeFactor\n const factorX = (center.x - edgePoint.x) / edgeFactor\n return {\n x: center.x - pointFactor * factorX,\n y: center.y - pointFactor * factorY,\n }\n}\n\nexport default function SkillGraph({\n factorA = 0.4,\n factorB = 0.2,\n factorC = 0.2,\n}: {\n factorA?: number\n factorB?: number\n factorC?: number\n}) {\n const base = 0.4\n const sqrt3 = Math.sqrt(3)\n const centerPoint = {\n x: 60,\n y: 80 / sqrt3 + 10,\n }\n const edgePointA = {\n x: 20,\n y: 40 / sqrt3 + 10,\n }\n\n const edgePointB = {\n x: 100,\n y: 40 / sqrt3 + 10,\n }\n\n const edgePointC = {\n x: 60,\n y: 160 / sqrt3 + 10,\n }\n\n const PA = getPoint(centerPoint, edgePointA, base, factorA)\n const PB = getPoint(centerPoint, edgePointB, base, factorB)\n const PC = getPoint(centerPoint, edgePointC, base, factorC)\n // 50,78 90,10 10,10\n return (\n <>\n <svg\n height=\"145\"\n viewBox={`0 0 125 125`}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle\n cx={centerPoint.x}\n cy={centerPoint.y}\n r={80 / sqrt3}\n className=\"fill-gray-100/30\"\n filter=\"url(#blur)\"\n />\n {/* <polygon points={`${edgePointA.x},${edgePointA.y} ${edgePointB.x},${edgePointB.y} ${edgePointC.x},${edgePointC.y}`}\n className=\"fill-gray-300\"\n /> */}\n <circle cx={PA.x} cy={PA.y} />\n <text\n x={edgePointA.x - 10}\n y={edgePointA.y}\n fill=\"url(#gradient1)\"\n className=\"text-[8px] font-bold text-white\"\n >\n Acc\n </text>\n <text\n x={edgePointA.x - 20}\n y={edgePointA.y + 10}\n fill=\"url(#gradient1)\"\n className=\"text-[8px] font-bold text-white\"\n >\n {(factorA * 100).toFixed(2)}%\n </text>\n <text\n x={edgePointB.x - 6}\n y={edgePointB.y}\n fill=\"url(#gradient1)\"\n className=\"text-[8px] font-bold text-white\"\n >\n Tech\n </text>\n <text\n x={edgePointB.x - 6}\n y={edgePointB.y + 8}\n fill=\"url(#gradient1)\"\n className=\"text-[8px] font-bold text-white\"\n >\n {(factorB * 100).toFixed(2)}%\n </text>\n <text\n x={edgePointC.x - 6}\n y={edgePointC.y + 2}\n fill=\"url(#gradient1)\"\n className=\"text-[8px] font-bold text-white\"\n >\n Pass\n </text>\n <text\n x={edgePointC.x - 8}\n y={edgePointC.y + 12}\n fill=\"url(#gradient1)\"\n className=\"text-[8px] font-bold text-white\"\n >\n {(factorC * 100).toFixed(2)}%\n </text>\n {/* 数据点b */}\n <circle cx={PB.x} cy={PB.y} />\n {/* 数据点c */}\n <circle cx={PC.x} cy={PC.y} />\n\n <line x1={PA.x} y1={PA.y} x2={PC.x} y2={PC.y} />\n <line x1={PA.x} y1={PA.y} x2={PB.x} y2={PB.y} />\n <line x1={PC.x} y1={PC.y} x2={PB.x} y2={PB.y} />\n <polygon\n points={`${PA.x},${PA.y} ${PB.x},${PB.y} ${PC.x},${PC.y}`}\n fill=\"url(#gradient)\"\n />\n <defs>\n <linearGradient\n id=\"gradient1\"\n x1=\"0%\"\n y1=\"0%\"\n x2=\"100%\"\n y2=\"100%\"\n opacity={0}\n >\n <stop\n offset=\"0%\"\n style={{\n stopColor: 'rgb(252 165 165)',\n stopOpacity: 1,\n }}\n />\n <stop\n offset=\"100%\"\n style={{\n stopColor: 'rgb(147 197 253)',\n stopOpacity: 1,\n }}\n />\n </linearGradient>\n <linearGradient\n id=\"gradient\"\n x1=\"0%\"\n y1=\"0%\"\n x2=\"100%\"\n y2=\"100%\"\n opacity={0}\n >\n <stop\n offset=\"0%\"\n style={{\n stopColor: 'red',\n stopOpacity: 0.3,\n }}\n />\n <stop\n offset=\"100%\"\n style={{\n stopColor: 'blue',\n stopOpacity: 0.4,\n }}\n />\n </linearGradient>\n <filter id=\"blur\">\n <feGaussianBlur in=\"SourceGraphic\" stdDeviation=\"1\" />\n </filter>\n </defs>\n </svg>\n </>\n )\n}\n"],"mappings":"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","names":[]}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
2
|
+
import { twJoin } from "../utils/tw-join";
|
3
|
+
function ScoreBadge({
|
4
|
+
name,
|
5
|
+
count,
|
6
|
+
className
|
7
|
+
}) {
|
8
|
+
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
|
9
|
+
"div",
|
10
|
+
{
|
11
|
+
className: twJoin(
|
12
|
+
"flex items-center self-center rounded-md w-18",
|
13
|
+
"bg-gradient-to-r bg-clip-text text-transparent from-blue-300 to-red-300",
|
14
|
+
className
|
15
|
+
),
|
16
|
+
children: [
|
17
|
+
/* @__PURE__ */ jsx("span", { className: "border-r-0.5 font-semibold m-auto text-center rounded-l-lg w-8", children: name }),
|
18
|
+
/* @__PURE__ */ jsx("span", { className: "bg-transparent m-auto text-ellipsis line-clamp-1", children: count })
|
19
|
+
]
|
20
|
+
}
|
21
|
+
) });
|
22
|
+
}
|
23
|
+
export {
|
24
|
+
ScoreBadge as default
|
25
|
+
};
|
26
|
+
//# sourceMappingURL=socre-badge.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/components/socre-badge.tsx"],"sourcesContent":["/** @jsxImportSource react */\nimport { twJoin } from '../utils/tw-join'\n\nexport default function ScoreBadge({\n name,\n count,\n className,\n}: {\n name: string\n count: string | number\n className?: string\n}) {\n return (\n <>\n <div\n className={twJoin(\n 'flex items-center self-center rounded-md w-18',\n 'bg-gradient-to-r bg-clip-text text-transparent from-blue-300 to-red-300',\n className\n )}\n >\n <span className=\"border-r-0.5 font-semibold m-auto text-center rounded-l-lg w-8\">\n {name}\n </span>\n <span className=\"bg-transparent m-auto text-ellipsis line-clamp-1\">\n {count}\n </span>\n </div>\n </>\n )\n}\n"],"mappings":"AAaI,mBAQI,KAPF,YADF;AAZJ,SAAS,cAAc;AAER,SAAR,WAA4B;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,SACE,gCACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MAEA;AAAA,4BAAC,UAAK,WAAU,kEACb,gBACH;AAAA,QACA,oBAAC,UAAK,WAAU,oDACb,iBACH;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;","names":[]}
|