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,137 @@
|
|
1
|
+
var __create = Object.create;
|
2
|
+
var __defProp = Object.defineProperty;
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
7
|
+
var __export = (target, all) => {
|
8
|
+
for (var name in all)
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
10
|
+
};
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
13
|
+
for (let key of __getOwnPropNames(from))
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
16
|
+
}
|
17
|
+
return to;
|
18
|
+
};
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
25
|
+
mod
|
26
|
+
));
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
28
|
+
var __async = (__this, __arguments, generator) => {
|
29
|
+
return new Promise((resolve, reject) => {
|
30
|
+
var fulfilled = (value) => {
|
31
|
+
try {
|
32
|
+
step(generator.next(value));
|
33
|
+
} catch (e) {
|
34
|
+
reject(e);
|
35
|
+
}
|
36
|
+
};
|
37
|
+
var rejected = (value) => {
|
38
|
+
try {
|
39
|
+
step(generator.throw(value));
|
40
|
+
} catch (e) {
|
41
|
+
reject(e);
|
42
|
+
}
|
43
|
+
};
|
44
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
45
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
46
|
+
});
|
47
|
+
};
|
48
|
+
var i18n_exports = {};
|
49
|
+
__export(i18n_exports, {
|
50
|
+
loadI18nConfig: () => loadI18nConfig,
|
51
|
+
tran: () => tran
|
52
|
+
});
|
53
|
+
module.exports = __toCommonJS(i18n_exports);
|
54
|
+
var import_parser = require("./parser");
|
55
|
+
const i18nObj = {};
|
56
|
+
init().then((_) => console.log("i18n loaded")).catch((err) => console.error(err));
|
57
|
+
function init() {
|
58
|
+
return __async(this, null, function* () {
|
59
|
+
const zh = yield import("./zh-cn.json");
|
60
|
+
i18nObj["zh-cn"] = zh;
|
61
|
+
});
|
62
|
+
}
|
63
|
+
function isObject(item) {
|
64
|
+
return item && typeof item === "object" && !Array.isArray(item);
|
65
|
+
}
|
66
|
+
function merge(target, ...sources) {
|
67
|
+
if (!sources.length) return target;
|
68
|
+
const source = sources.shift();
|
69
|
+
if (isObject(target) && isObject(source)) {
|
70
|
+
for (const key in source) {
|
71
|
+
if (isObject(source[key])) {
|
72
|
+
if (!target[key]) Object.assign(target, { [key]: {} });
|
73
|
+
merge(target[key], source[key]);
|
74
|
+
} else {
|
75
|
+
Object.assign(target, { [key]: source[key] });
|
76
|
+
}
|
77
|
+
}
|
78
|
+
}
|
79
|
+
return merge(target, ...sources);
|
80
|
+
}
|
81
|
+
function loadI18nConfig(lang, obj) {
|
82
|
+
const raw = i18nObj[lang];
|
83
|
+
i18nObj[lang] = merge(raw, obj);
|
84
|
+
console.log(`overwrite i18n ${lang} `);
|
85
|
+
}
|
86
|
+
function tran(path, params = {}, lang = "zh-cn") {
|
87
|
+
const keys = path.split(".");
|
88
|
+
let result = i18nObj[lang];
|
89
|
+
for (const key of keys) {
|
90
|
+
if (result[key] !== void 0) {
|
91
|
+
result = result[key];
|
92
|
+
} else {
|
93
|
+
return null;
|
94
|
+
}
|
95
|
+
}
|
96
|
+
try {
|
97
|
+
if (typeof result === "string") {
|
98
|
+
return (0, import_parser.interpolate)(result, params);
|
99
|
+
}
|
100
|
+
} catch (e) {
|
101
|
+
return interpolateString(result, params);
|
102
|
+
}
|
103
|
+
return null;
|
104
|
+
}
|
105
|
+
function interpolateString(str, context) {
|
106
|
+
const regex = /\{\{(.*?)\?\s*'(.*?)'\s*:\s*'(.*?)'\s*\}\}/;
|
107
|
+
let match;
|
108
|
+
while ((match = regex.exec(str)) !== null) {
|
109
|
+
const [fullMatch, condition, trueValue, falseValue] = match;
|
110
|
+
const resolvedTrueValue = interpolateString(trueValue, context);
|
111
|
+
const resolvedFalseValue = interpolateString(falseValue, context);
|
112
|
+
let result = safeEval(condition, context);
|
113
|
+
if (typeof result === "string") {
|
114
|
+
result = false;
|
115
|
+
}
|
116
|
+
const replacement = result ? resolvedTrueValue : resolvedFalseValue;
|
117
|
+
str = str.replace(fullMatch, replacement);
|
118
|
+
}
|
119
|
+
const variableRegex = /\{\{(.*?)\}\}/g;
|
120
|
+
str = str.replace(variableRegex, (match2, expr) => safeEval(expr, context));
|
121
|
+
return str;
|
122
|
+
}
|
123
|
+
function safeEval(expr, context) {
|
124
|
+
try {
|
125
|
+
const fn = new Function(...Object.keys(context), `return ${expr}`);
|
126
|
+
return fn(...Object.values(context));
|
127
|
+
} catch (e) {
|
128
|
+
console.error(expr, context, e);
|
129
|
+
return expr;
|
130
|
+
}
|
131
|
+
}
|
132
|
+
// Annotate the CommonJS export names for ESM import in node:
|
133
|
+
0 && (module.exports = {
|
134
|
+
loadI18nConfig,
|
135
|
+
tran
|
136
|
+
});
|
137
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/infra/i18n/index.ts"],"sourcesContent":["import { interpolate } from './parser'\n\nconst i18nObj = {}\n\ninit().then((_) => console.log('i18n loaded'))\n .catch((err) => console.error(err))\n\nasync function init() {\n // @ts-ignore\n const zh = await import('./zh-cn.json', { with: { type: 'json' } })\n i18nObj['zh-cn'] = zh\n}\n\n// export async function loadI18N() {\n// const zh = await import('./zh-cn.json')\n// }\n\nfunction isObject(item) {\n return item && typeof item === 'object' && !Array.isArray(item)\n}\n\nfunction merge(target, ...sources) {\n if (!sources.length) return target\n const source = sources.shift()\n if (isObject(target) && isObject(source)) {\n for (const key in source) {\n if (isObject(source[key])) {\n if (!target[key]) Object.assign(target, { [key]: {} })\n merge(target[key], source[key])\n } else {\n Object.assign(target, { [key]: source[key] })\n }\n }\n }\n return merge(target, ...sources)\n}\n\nexport function loadI18nConfig(lang: string, obj: any) {\n const raw = i18nObj[lang]\n i18nObj[lang] = merge(raw, obj)\n console.log(`overwrite i18n ${lang} `)\n}\n\nexport function tran(path: string, params = {}, lang = 'zh-cn'): string {\n const keys = path.split('.')\n let result = i18nObj[lang]\n\n for (const key of keys) {\n if (result[key] !== undefined) {\n result = result[key]\n } else {\n return null\n }\n }\n try {\n if (typeof result === 'string') {\n return interpolate(result, params)\n }\n } catch (e) {\n return interpolateString(result, params)\n }\n\n return null\n}\n\nfunction interpolateString(str, context) {\n // 正则表达式匹配三元表达式\n const regex = /\\{\\{(.*?)\\?\\s*'(.*?)'\\s*:\\s*'(.*?)'\\s*\\}\\}/\n let match\n\n // 递归解析\n while ((match = regex.exec(str)) !== null) {\n const [fullMatch, condition, trueValue, falseValue] = match\n\n // 递归解析 trueValue 和 falseValue 以处理嵌套情况\n const resolvedTrueValue = interpolateString(trueValue, context)\n const resolvedFalseValue = interpolateString(falseValue, context)\n\n // 计算条件表达式\n let result = safeEval(condition, context)\n if (typeof result === 'string') {\n result = false\n }\n const replacement = result ? resolvedTrueValue : resolvedFalseValue\n\n // 替换匹配到的三元表达式\n str = str.replace(fullMatch, replacement)\n }\n\n // 替换变量插值\n const variableRegex = /\\{\\{(.*?)\\}\\}/g\n str = str.replace(variableRegex, (match, expr) => safeEval(expr, context))\n\n return str\n}\nfunction safeEval(expr, context) {\n try {\n const fn = new Function(...Object.keys(context), `return ${expr}`)\n return fn(...Object.values(context))\n } catch (e) {\n console.error(expr, context, e)\n return expr\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA4B;AAE5B,MAAM,UAAU,CAAC;AAEjB,KAAK,EAAE,KAAK,CAAC,MAAM,QAAQ,IAAI,aAAa,CAAC,EAC1C,MAAM,CAAC,QAAQ,QAAQ,MAAM,GAAG,CAAC;AAEpC,SAAe,OAAO;AAAA;AAEpB,UAAM,KAAK,MAAM,OAAO,cAA2C;AACnE,YAAQ,OAAO,IAAI;AAAA,EACrB;AAAA;AAMA,SAAS,SAAS,MAAM;AACtB,SAAO,QAAQ,OAAO,SAAS,YAAY,CAAC,MAAM,QAAQ,IAAI;AAChE;AAEA,SAAS,MAAM,WAAW,SAAS;AACjC,MAAI,CAAC,QAAQ,OAAQ,QAAO;AAC5B,QAAM,SAAS,QAAQ,MAAM;AAC7B,MAAI,SAAS,MAAM,KAAK,SAAS,MAAM,GAAG;AACxC,eAAW,OAAO,QAAQ;AACxB,UAAI,SAAS,OAAO,GAAG,CAAC,GAAG;AACzB,YAAI,CAAC,OAAO,GAAG,EAAG,QAAO,OAAO,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC;AACrD,cAAM,OAAO,GAAG,GAAG,OAAO,GAAG,CAAC;AAAA,MAChC,OAAO;AACL,eAAO,OAAO,QAAQ,EAAE,CAAC,GAAG,GAAG,OAAO,GAAG,EAAE,CAAC;AAAA,MAC9C;AAAA,IACF;AAAA,EACF;AACA,SAAO,MAAM,QAAQ,GAAG,OAAO;AACjC;AAEO,SAAS,eAAe,MAAc,KAAU;AACrD,QAAM,MAAM,QAAQ,IAAI;AACxB,UAAQ,IAAI,IAAI,MAAM,KAAK,GAAG;AAC9B,UAAQ,IAAI,kBAAkB,IAAI,GAAG;AACvC;AAEO,SAAS,KAAK,MAAc,SAAS,CAAC,GAAG,OAAO,SAAiB;AACtE,QAAM,OAAO,KAAK,MAAM,GAAG;AAC3B,MAAI,SAAS,QAAQ,IAAI;AAEzB,aAAW,OAAO,MAAM;AACtB,QAAI,OAAO,GAAG,MAAM,QAAW;AAC7B,eAAS,OAAO,GAAG;AAAA,IACrB,OAAO;AACL,aAAO;AAAA,IACT;AAAA,EACF;AACA,MAAI;AACF,QAAI,OAAO,WAAW,UAAU;AAC9B,iBAAO,2BAAY,QAAQ,MAAM;AAAA,IACnC;AAAA,EACF,SAAS,GAAG;AACV,WAAO,kBAAkB,QAAQ,MAAM;AAAA,EACzC;AAEA,SAAO;AACT;AAEA,SAAS,kBAAkB,KAAK,SAAS;AAEvC,QAAM,QAAQ;AACd,MAAI;AAGJ,UAAQ,QAAQ,MAAM,KAAK,GAAG,OAAO,MAAM;AACzC,UAAM,CAAC,WAAW,WAAW,WAAW,UAAU,IAAI;AAGtD,UAAM,oBAAoB,kBAAkB,WAAW,OAAO;AAC9D,UAAM,qBAAqB,kBAAkB,YAAY,OAAO;AAGhE,QAAI,SAAS,SAAS,WAAW,OAAO;AACxC,QAAI,OAAO,WAAW,UAAU;AAC9B,eAAS;AAAA,IACX;AACA,UAAM,cAAc,SAAS,oBAAoB;AAGjD,UAAM,IAAI,QAAQ,WAAW,WAAW;AAAA,EAC1C;AAGA,QAAM,gBAAgB;AACtB,QAAM,IAAI,QAAQ,eAAe,CAACA,QAAO,SAAS,SAAS,MAAM,OAAO,CAAC;AAEzE,SAAO;AACT;AACA,SAAS,SAAS,MAAM,SAAS;AAC/B,MAAI;AACF,UAAM,KAAK,IAAI,SAAS,GAAG,OAAO,KAAK,OAAO,GAAG,UAAU,IAAI,EAAE;AACjE,WAAO,GAAG,GAAG,OAAO,OAAO,OAAO,CAAC;AAAA,EACrC,SAAS,GAAG;AACV,YAAQ,MAAM,MAAM,SAAS,CAAC;AAC9B,WAAO;AAAA,EACT;AACF;","names":["match"]}
|
@@ -0,0 +1,171 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
6
|
+
var __export = (target, all) => {
|
7
|
+
for (var name in all)
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
9
|
+
};
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
12
|
+
for (let key of __getOwnPropNames(from))
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
15
|
+
}
|
16
|
+
return to;
|
17
|
+
};
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
19
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
20
|
+
var parser_exports = {};
|
21
|
+
__export(parser_exports, {
|
22
|
+
Parser: () => Parser,
|
23
|
+
interpolate: () => interpolate
|
24
|
+
});
|
25
|
+
module.exports = __toCommonJS(parser_exports);
|
26
|
+
var TokenType = /* @__PURE__ */ ((TokenType2) => {
|
27
|
+
TokenType2[TokenType2["TEXT"] = 0] = "TEXT";
|
28
|
+
TokenType2[TokenType2["OPEN_BRACE"] = 1] = "OPEN_BRACE";
|
29
|
+
TokenType2[TokenType2["CLOSE_BRACE"] = 2] = "CLOSE_BRACE";
|
30
|
+
TokenType2[TokenType2["IDENTIFIER"] = 3] = "IDENTIFIER";
|
31
|
+
TokenType2[TokenType2["QUESTION"] = 4] = "QUESTION";
|
32
|
+
TokenType2[TokenType2["COLON"] = 5] = "COLON";
|
33
|
+
TokenType2[TokenType2["STRING"] = 6] = "STRING";
|
34
|
+
return TokenType2;
|
35
|
+
})(TokenType || {});
|
36
|
+
class Parser {
|
37
|
+
constructor(template, data) {
|
38
|
+
this.template = template;
|
39
|
+
this.data = data;
|
40
|
+
__publicField(this, "tokens", []);
|
41
|
+
__publicField(this, "current", 0);
|
42
|
+
this.tokenize();
|
43
|
+
}
|
44
|
+
tokenize() {
|
45
|
+
let current = 0;
|
46
|
+
while (current < this.template.length) {
|
47
|
+
let char = this.template[current];
|
48
|
+
if (char === "\\" && current + 1 < this.template.length) {
|
49
|
+
const nextChar = this.template[current + 1];
|
50
|
+
if (nextChar === "{" || nextChar === "}" || nextChar === "?" || nextChar === ":" || nextChar === "'" || nextChar === "\\") {
|
51
|
+
this.tokens.push({ type: 0 /* TEXT */, value: nextChar });
|
52
|
+
current += 2;
|
53
|
+
continue;
|
54
|
+
}
|
55
|
+
}
|
56
|
+
if (char === "{" && this.template[current + 1] === "{") {
|
57
|
+
this.tokens.push({ type: 1 /* OPEN_BRACE */, value: "{{" });
|
58
|
+
current += 2;
|
59
|
+
continue;
|
60
|
+
}
|
61
|
+
if (char === "}" && this.template[current + 1] === "}") {
|
62
|
+
this.tokens.push({ type: 2 /* CLOSE_BRACE */, value: "}}" });
|
63
|
+
current += 2;
|
64
|
+
continue;
|
65
|
+
}
|
66
|
+
if (char === "?") {
|
67
|
+
this.tokens.push({ type: 4 /* QUESTION */, value: "?" });
|
68
|
+
current++;
|
69
|
+
continue;
|
70
|
+
}
|
71
|
+
if (char === ":") {
|
72
|
+
this.tokens.push({ type: 5 /* COLON */, value: ":" });
|
73
|
+
current++;
|
74
|
+
continue;
|
75
|
+
}
|
76
|
+
if (char === "'") {
|
77
|
+
let value2 = "";
|
78
|
+
char = this.template[++current];
|
79
|
+
while (char !== "'" && current < this.template.length) {
|
80
|
+
if (char === "\\" && current + 1 < this.template.length) {
|
81
|
+
char = this.template[++current];
|
82
|
+
}
|
83
|
+
value2 += char;
|
84
|
+
char = this.template[++current];
|
85
|
+
}
|
86
|
+
if (char === "'") current++;
|
87
|
+
this.tokens.push({ type: 6 /* STRING */, value: value2 });
|
88
|
+
continue;
|
89
|
+
}
|
90
|
+
if (/[a-zA-Z0-9_]/.test(char)) {
|
91
|
+
let value2 = "";
|
92
|
+
while (/[a-zA-Z0-9_]/.test(char)) {
|
93
|
+
value2 += char;
|
94
|
+
char = this.template[++current];
|
95
|
+
}
|
96
|
+
this.tokens.push({ type: 3 /* IDENTIFIER */, value: value2 });
|
97
|
+
continue;
|
98
|
+
}
|
99
|
+
if (/\s/.test(char)) {
|
100
|
+
current++;
|
101
|
+
continue;
|
102
|
+
}
|
103
|
+
let value = "";
|
104
|
+
while (current < this.template.length && char !== "{" && char !== "}" && char !== "?" && char !== ":" && char !== "'") {
|
105
|
+
if (char === "\\" && current + 1 < this.template.length) {
|
106
|
+
value += this.template[++current];
|
107
|
+
} else {
|
108
|
+
value += char;
|
109
|
+
}
|
110
|
+
char = this.template[++current];
|
111
|
+
}
|
112
|
+
if (value) {
|
113
|
+
this.tokens.push({ type: 0 /* TEXT */, value });
|
114
|
+
}
|
115
|
+
}
|
116
|
+
}
|
117
|
+
match(...types) {
|
118
|
+
if (this.current >= this.tokens.length) return false;
|
119
|
+
return types.includes(this.tokens[this.current].type);
|
120
|
+
}
|
121
|
+
consume(type) {
|
122
|
+
if (this.match(type)) {
|
123
|
+
return this.tokens[this.current++];
|
124
|
+
}
|
125
|
+
throw new Error(
|
126
|
+
`Expected token type ${type}, but got ${this.tokens[this.current].type}`
|
127
|
+
);
|
128
|
+
}
|
129
|
+
parseExpression() {
|
130
|
+
if (this.match(1 /* OPEN_BRACE */)) {
|
131
|
+
this.consume(1 /* OPEN_BRACE */);
|
132
|
+
const result = this.parseInterpolation();
|
133
|
+
this.consume(2 /* CLOSE_BRACE */);
|
134
|
+
return result;
|
135
|
+
}
|
136
|
+
if (this.match(6 /* STRING */)) {
|
137
|
+
const tmp = this.consume(6 /* STRING */).value;
|
138
|
+
return interpolate(tmp, this.data);
|
139
|
+
}
|
140
|
+
return this.consume(0 /* TEXT */).value;
|
141
|
+
}
|
142
|
+
parseInterpolation() {
|
143
|
+
var _a;
|
144
|
+
const identifier = this.consume(3 /* IDENTIFIER */).value;
|
145
|
+
if (this.match(4 /* QUESTION */)) {
|
146
|
+
this.consume(4 /* QUESTION */);
|
147
|
+
const truePart = this.parseExpression();
|
148
|
+
this.consume(5 /* COLON */);
|
149
|
+
const falsePart = this.parseExpression();
|
150
|
+
return this.data[identifier] ? truePart : falsePart;
|
151
|
+
}
|
152
|
+
return ((_a = this.data[identifier]) == null ? void 0 : _a.toString()) || "";
|
153
|
+
}
|
154
|
+
parse() {
|
155
|
+
let result = "";
|
156
|
+
while (this.current < this.tokens.length) {
|
157
|
+
result += this.parseExpression();
|
158
|
+
}
|
159
|
+
return result;
|
160
|
+
}
|
161
|
+
}
|
162
|
+
function interpolate(template, data) {
|
163
|
+
const parser = new Parser(template, data);
|
164
|
+
return parser.parse();
|
165
|
+
}
|
166
|
+
// Annotate the CommonJS export names for ESM import in node:
|
167
|
+
0 && (module.exports = {
|
168
|
+
Parser,
|
169
|
+
interpolate
|
170
|
+
});
|
171
|
+
//# sourceMappingURL=parser.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/infra/i18n/parser.ts"],"sourcesContent":["enum TokenType {\n TEXT,\n OPEN_BRACE,\n CLOSE_BRACE,\n IDENTIFIER,\n QUESTION,\n COLON,\n STRING,\n}\n\ninterface Token {\n type: TokenType\n value: string\n}\n\n// 插值解析Parser {{}},暂时没转义支持\n// \"😯,没有找到用户「{{user}}」的谱面「{{id}} ({{mode ? '{{mode}}' : '' }} {{diff ? '-{{diff}}' : '' }})」的打分数据\"\nexport class Parser {\n private tokens: Token[] = []\n private current = 0\n\n constructor(\n private template: string,\n private data: any\n ) {\n this.tokenize()\n }\n\n private tokenize(): void {\n let current = 0\n while (current < this.template.length) {\n let char = this.template[current]\n if (char === '\\\\' && current + 1 < this.template.length) {\n // 处理转义字符\n const nextChar = this.template[current + 1]\n if (\n nextChar === '{' ||\n nextChar === '}' ||\n nextChar === '?' ||\n nextChar === ':' ||\n nextChar === \"'\" ||\n nextChar === '\\\\'\n ) {\n this.tokens.push({ type: TokenType.TEXT, value: nextChar })\n current += 2\n continue\n }\n }\n if (char === '{' && this.template[current + 1] === '{') {\n this.tokens.push({ type: TokenType.OPEN_BRACE, value: '{{' })\n current += 2\n continue\n }\n\n if (char === '}' && this.template[current + 1] === '}') {\n this.tokens.push({ type: TokenType.CLOSE_BRACE, value: '}}' })\n current += 2\n continue\n }\n\n if (char === '?') {\n this.tokens.push({ type: TokenType.QUESTION, value: '?' })\n current++\n continue\n }\n\n if (char === ':') {\n this.tokens.push({ type: TokenType.COLON, value: ':' })\n current++\n continue\n }\n\n if (char === \"'\") {\n let value = ''\n char = this.template[++current]\n while (char !== \"'\" && current < this.template.length) {\n if (char === '\\\\' && current + 1 < this.template.length) {\n char = this.template[++current]\n }\n value += char\n char = this.template[++current]\n }\n if (char === \"'\") current++\n this.tokens.push({ type: TokenType.STRING, value })\n continue\n }\n\n if (/[a-zA-Z0-9_]/.test(char)) {\n let value = ''\n while (/[a-zA-Z0-9_]/.test(char)) {\n value += char\n char = this.template[++current]\n }\n this.tokens.push({ type: TokenType.IDENTIFIER, value })\n continue\n }\n\n if (/\\s/.test(char)) {\n current++\n continue\n }\n\n let value = ''\n while (\n current < this.template.length &&\n char !== '{' &&\n char !== '}' &&\n char !== '?' &&\n char !== ':' &&\n char !== \"'\"\n // &&\n // !/[a-zA-Z0-9_]/.test(char)\n ) {\n if (char === '\\\\' && current + 1 < this.template.length) {\n value += this.template[++current]\n } else {\n value += char\n }\n char = this.template[++current]\n }\n if (value) {\n this.tokens.push({ type: TokenType.TEXT, value })\n }\n }\n }\n\n private match(...types: TokenType[]): boolean {\n if (this.current >= this.tokens.length) return false\n return types.includes(this.tokens[this.current].type)\n }\n\n private consume(type: TokenType): Token {\n if (this.match(type)) {\n return this.tokens[this.current++]\n }\n throw new Error(\n `Expected token type ${type}, but got ${this.tokens[this.current].type}`\n )\n }\n\n private parseExpression(): string {\n if (this.match(TokenType.OPEN_BRACE)) {\n this.consume(TokenType.OPEN_BRACE)\n const result = this.parseInterpolation()\n this.consume(TokenType.CLOSE_BRACE)\n return result\n }\n if (this.match(TokenType.STRING)) {\n const tmp = this.consume(TokenType.STRING).value\n return interpolate(tmp, this.data)\n }\n return this.consume(TokenType.TEXT).value\n }\n\n private parseInterpolation(): string {\n const identifier = this.consume(TokenType.IDENTIFIER).value\n if (this.match(TokenType.QUESTION)) {\n this.consume(TokenType.QUESTION)\n const truePart = this.parseExpression()\n this.consume(TokenType.COLON)\n const falsePart = this.parseExpression()\n return this.data[identifier] ? truePart : falsePart\n }\n return this.data[identifier]?.toString() || ''\n }\n\n parse(): string {\n // console.log(this.current, this.tokens)\n let result = ''\n while (this.current < this.tokens.length) {\n result += this.parseExpression()\n }\n return result\n }\n}\n\nexport function interpolate(template: string, data): string {\n const parser = new Parser(template, data)\n return parser.parse()\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAK,YAAL,kBAAKA,eAAL;AACE,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AACA,EAAAA,sBAAA;AAPG,SAAAA;AAAA,GAAA;AAiBE,MAAM,OAAO;AAAA,EAIlB,YACU,UACA,MACR;AAFQ;AACA;AALV,wBAAQ,UAAkB,CAAC;AAC3B,wBAAQ,WAAU;AAMhB,SAAK,SAAS;AAAA,EAChB;AAAA,EAEQ,WAAiB;AACvB,QAAI,UAAU;AACd,WAAO,UAAU,KAAK,SAAS,QAAQ;AACrC,UAAI,OAAO,KAAK,SAAS,OAAO;AAChC,UAAI,SAAS,QAAQ,UAAU,IAAI,KAAK,SAAS,QAAQ;AAEvD,cAAM,WAAW,KAAK,SAAS,UAAU,CAAC;AAC1C,YACE,aAAa,OACb,aAAa,OACb,aAAa,OACb,aAAa,OACb,aAAa,OACb,aAAa,MACb;AACA,eAAK,OAAO,KAAK,EAAE,MAAM,cAAgB,OAAO,SAAS,CAAC;AAC1D,qBAAW;AACX;AAAA,QACF;AAAA,MACF;AACA,UAAI,SAAS,OAAO,KAAK,SAAS,UAAU,CAAC,MAAM,KAAK;AACtD,aAAK,OAAO,KAAK,EAAE,MAAM,oBAAsB,OAAO,KAAK,CAAC;AAC5D,mBAAW;AACX;AAAA,MACF;AAEA,UAAI,SAAS,OAAO,KAAK,SAAS,UAAU,CAAC,MAAM,KAAK;AACtD,aAAK,OAAO,KAAK,EAAE,MAAM,qBAAuB,OAAO,KAAK,CAAC;AAC7D,mBAAW;AACX;AAAA,MACF;AAEA,UAAI,SAAS,KAAK;AAChB,aAAK,OAAO,KAAK,EAAE,MAAM,kBAAoB,OAAO,IAAI,CAAC;AACzD;AACA;AAAA,MACF;AAEA,UAAI,SAAS,KAAK;AAChB,aAAK,OAAO,KAAK,EAAE,MAAM,eAAiB,OAAO,IAAI,CAAC;AACtD;AACA;AAAA,MACF;AAEA,UAAI,SAAS,KAAK;AAChB,YAAIC,SAAQ;AACZ,eAAO,KAAK,SAAS,EAAE,OAAO;AAC9B,eAAO,SAAS,OAAO,UAAU,KAAK,SAAS,QAAQ;AACrD,cAAI,SAAS,QAAQ,UAAU,IAAI,KAAK,SAAS,QAAQ;AACvD,mBAAO,KAAK,SAAS,EAAE,OAAO;AAAA,UAChC;AACA,UAAAA,UAAS;AACT,iBAAO,KAAK,SAAS,EAAE,OAAO;AAAA,QAChC;AACA,YAAI,SAAS,IAAK;AAClB,aAAK,OAAO,KAAK,EAAE,MAAM,gBAAkB,OAAAA,OAAM,CAAC;AAClD;AAAA,MACF;AAEA,UAAI,eAAe,KAAK,IAAI,GAAG;AAC7B,YAAIA,SAAQ;AACZ,eAAO,eAAe,KAAK,IAAI,GAAG;AAChC,UAAAA,UAAS;AACT,iBAAO,KAAK,SAAS,EAAE,OAAO;AAAA,QAChC;AACA,aAAK,OAAO,KAAK,EAAE,MAAM,oBAAsB,OAAAA,OAAM,CAAC;AACtD;AAAA,MACF;AAEA,UAAI,KAAK,KAAK,IAAI,GAAG;AACnB;AACA;AAAA,MACF;AAEA,UAAI,QAAQ;AACZ,aACE,UAAU,KAAK,SAAS,UACxB,SAAS,OACT,SAAS,OACT,SAAS,OACT,SAAS,OACT,SAAS,KAGT;AACA,YAAI,SAAS,QAAQ,UAAU,IAAI,KAAK,SAAS,QAAQ;AACvD,mBAAS,KAAK,SAAS,EAAE,OAAO;AAAA,QAClC,OAAO;AACL,mBAAS;AAAA,QACX;AACA,eAAO,KAAK,SAAS,EAAE,OAAO;AAAA,MAChC;AACA,UAAI,OAAO;AACT,aAAK,OAAO,KAAK,EAAE,MAAM,cAAgB,MAAM,CAAC;AAAA,MAClD;AAAA,IACF;AAAA,EACF;AAAA,EAEQ,SAAS,OAA6B;AAC5C,QAAI,KAAK,WAAW,KAAK,OAAO,OAAQ,QAAO;AAC/C,WAAO,MAAM,SAAS,KAAK,OAAO,KAAK,OAAO,EAAE,IAAI;AAAA,EACtD;AAAA,EAEQ,QAAQ,MAAwB;AACtC,QAAI,KAAK,MAAM,IAAI,GAAG;AACpB,aAAO,KAAK,OAAO,KAAK,SAAS;AAAA,IACnC;AACA,UAAM,IAAI;AAAA,MACR,uBAAuB,IAAI,aAAa,KAAK,OAAO,KAAK,OAAO,EAAE,IAAI;AAAA,IACxE;AAAA,EACF;AAAA,EAEQ,kBAA0B;AAChC,QAAI,KAAK,MAAM,kBAAoB,GAAG;AACpC,WAAK,QAAQ,kBAAoB;AACjC,YAAM,SAAS,KAAK,mBAAmB;AACvC,WAAK,QAAQ,mBAAqB;AAClC,aAAO;AAAA,IACT;AACA,QAAI,KAAK,MAAM,cAAgB,GAAG;AAChC,YAAM,MAAM,KAAK,QAAQ,cAAgB,EAAE;AAC3C,aAAO,YAAY,KAAK,KAAK,IAAI;AAAA,IACnC;AACA,WAAO,KAAK,QAAQ,YAAc,EAAE;AAAA,EACtC;AAAA,EAEQ,qBAA6B;AA1JvC;AA2JI,UAAM,aAAa,KAAK,QAAQ,kBAAoB,EAAE;AACtD,QAAI,KAAK,MAAM,gBAAkB,GAAG;AAClC,WAAK,QAAQ,gBAAkB;AAC/B,YAAM,WAAW,KAAK,gBAAgB;AACtC,WAAK,QAAQ,aAAe;AAC5B,YAAM,YAAY,KAAK,gBAAgB;AACvC,aAAO,KAAK,KAAK,UAAU,IAAI,WAAW;AAAA,IAC5C;AACA,aAAO,UAAK,KAAK,UAAU,MAApB,mBAAuB,eAAc;AAAA,EAC9C;AAAA,EAEA,QAAgB;AAEd,QAAI,SAAS;AACb,WAAO,KAAK,UAAU,KAAK,OAAO,QAAQ;AACxC,gBAAU,KAAK,gBAAgB;AAAA,IACjC;AACA,WAAO;AAAA,EACT;AACF;AAEO,SAAS,YAAY,UAAkB,MAAc;AAC1D,QAAM,SAAS,IAAI,OAAO,UAAU,IAAI;AACxC,SAAO,OAAO,MAAM;AACtB;","names":["TokenType","value"]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"common":{"hello":"你好,我是 bsbot","ping":"pong","render":{"wait":"开始渲染啦,请耐心等待 {{sec}} s"}},"ws":{"subscribe":{"update":"Hello {{username}},你关注的谱师「{{mapperName}}」更新啦!✨"}},"commands":{"bsbot":{"ss":{"account":{"not-found":"☹️没有找到SS用户「{{accountId}}」"}},"bs":{"account":{"not-found":"☹️没有找到BeatSaver用户「{{accountId}}」"}},"bl":{"account":{"not-found":"☹️没有找到BL用户「{{accountId}}」"}},"common":{"error":{"not-implemented":"😳被发现了,这个功能还没实现...","reach-request-retry-limit":"🤕网络重试到达上限、看来 bot 的网络出了点问题","empty-prompt":"看来你什么都没输入,已取消操作"}},"config":{"clear":"成功清除设置:{{key}}","set":{"success":"👍成功设置:{{key}}","fail":"😶🌫️用户偏好设置失败,{{reason}}"},"prompt":"请在30s内输入配置值,类型 {{type}}","unknown-key":"🤨{{input}}是一个未知配置项,不可以设置","all-available-key":"所有可能配置项如下:\n- BLProfile背景图片(bl::profile::render::img)\n- SSProfile背景图片(ss::profile::render::img)\n- BLScore背景图片(bl::score::render::img)\n","show":{"not-implemented":"还没实现展示用户偏好...不过你可以先设置着先"}},"render":{"error":"图片渲染超时/出错...也许稍等一会就好了","request":{"error":"数据获取失败了☹️"}},"help":{"description":"查看帮助 (WIP)","usage":"bbhelp 查看使用方法","examples":"示例\nbbhelp\nbsbot.help"},"message":{"network-error":"☹️似乎发生了网络错误,请稍后重试吧"},"cmp":{"description":"compare 指令 (WIP)"},"who":{"description":"用于查询所@用户对应的 BeatLeader/ScoreSaber 面板","usage":"输入 bbwho 并@某人,如果他/她/它绑定了ScoreSaber Id(也就是 steam 的用户 Id),会查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbbwho @someone\nbsbot.who @someone\nbsbot.who -p ss @someone","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"},"need-at":"谁?plz 重新执行指令并@ ta","not-bind":"你要查询的ta,还没有绑定哦"},"rank":{"description":"用于查询指定 scoreSaberID 对应用户的 BeatLeader/ScoreSaber 面板","usage":"输入 bbrank + scoreSaberId(也就是steamId)查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbbrank 2169974796454690\nbsbot.rank 2169974796454690\nbsbot.rank -p ss 2169974796454690","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"}},"me":{"description":"用于查询自己绑定用户对应的 BeatLeader/ScoreSaber 面板","usage":"输入 bbme,如果已经绑定了ScoreSaber Id(也就是 steam 的用户 Id),会查询该用户在对应平台的top 24 首 rank 谱面打分,并生成渲染图。","examples":"示例\nbsbot.me\nbbme\nbbme -p ss","options":{"p":"查询的平台,ss 代表 scoresaber,默认为 beatleader"},"not-found":"Ops,似乎还没有绑定到 ScoreSaber 或 BeatLeader","score-not-found":"😯,没有找到用户「{{user}}」谱面「{{id}} ({{mode ? '{{mode}}' : '' }} {{diff ? '-{{diff}}' : '' }})」的BL打分数据"},"bind":{"description":"绑定自己的 ScoreSaberId(也就是 steam 的用户 Id,仅公开信息,无需验证)","usage":"输入 bbbind,后接 userId,按照提示即可绑定","examples":"示例\nbsbot.bind 76561198339986544\nbbbind 76561198339986544","bs":{"not-found":"☹️什么没有找到,这个 code 真的有效吗?","network-error":"☹️似乎发生了网络错误,请稍后重试吧","unknown-error":"☹️不知道发生了什么,暂时无法绑定,请稍后重试吧","invalid-token":"无效 token,请确认给出的 code 有效。","success":"成功绑定 BeatSaver 用户 {{name}}({{id}})"},"bl":{"not-found":"☹️什么没有找到,这个 code 真的有效吗?","network-error":"☹️似乎发生了网络错误,请稍后重试吧","unknown-error":"☹️不知道发生了什么,暂时无法绑定,请稍后重试吧","invalid-token":"无效 token,请确认给出的 code 有效。","success":"成功绑定 BeatLeader 用户 {{name}}({{id}})"},"network-error":"☹️似乎发生了网络错误,请稍后重试吧","exist":"另外,你已经绑定了「{{id}}」,继续绑定丢失当前绑定哦","cancel":"已取消","timeout":"已超时取消","not-found":"Ops,没有找到 id 为「{{id}}」的 {{platform]} 用户","ack-prompt":"确定要绑定「{{user}}」吗,30 秒内回复「y」或「yes」以确认,超时或回复其他内容取消操作","success":"🎉,成功绑定「{{user}}」啦"},"score":{"description":"查询用户在Beatleader 上的某次打分成绩,并生成渲染图。","usage":"1. bbscore 加上 beatleader 的 scoreId,即可生成渲染图。\n2. bbscore 加上 Beatsaver 的 mapId,即可查询自己绑定的Bealeader账号关于该谱面的最高打分,并生成渲染图\n3. bbscore 加上 Beatsaver 的 mapId 并@某人,即可查询该用户绑定的Bealeader账号关于该谱面的最高打分,并生成渲染图","examples":"示例\nbsbot.score 13887221\nbbscore 33b62\nbbscore 33b62@someone","not-a-score-id":"似乎不是一个 score ID","not-bind":"你还没有绑定哦,使用 bind 指令进行绑定吧","who-not-bind":"你要查询的ta,还没有绑定哦"},"search":{"description":"按关键词进行谱面搜索","usage":"通过关键字进行谱面搜索,会发送将最相关的 3 个谱面。","examples":"示例\nbsbot.search megalovania\nbbsou megalovania\nbbsearch megalovania","success":"为你奉上关于「{{key}}」的{{length}}首谱面 🎉","not-found":"Ops,关于「{{key}}」什么都没找到","too-long-key":"关键词长度不应该超过 15 哦,因为这样容易什么都找不到,较长的部分已经帮你截掉啦,正在搜索中「{{key}}」"},"id":{"description":"按谱面id查找谱面。","usage":"根据谱面ID查找谱面。","examples":"示例\nbsbot.id 36677\nbbid 36677\n!bsr 36677\n36677","error-map-id":"「{{input}}」似乎不是一个 mapId,正确的 mapId 是这样的哦(3877a)","not-found":"Ops! 似乎没有找到 id 为「{{input}}」的谱面"},"latest":{"description":"查找最新的三首谱面。","usage":"获取最新的三首谱面。","examples":"示例\nbsbot.latest\nbsbot.new\nbbnew","info":"为你奉上最新的 3 首谱面 🎉"},"subscribe":{"description":"订阅 BeatSaber 相关的事件,并主动推送。(RC)","usage":"通过 bbsub 订阅 BeatSaber 相关的事件,当特定事件发生时会进行主动推送。","examples":"示例\nbsbot.subscribe\nbbsub","alert":{"no-bind-bs-id":"你还未绑定 beatsaver,快使用 bbbindbs 进行绑定吧","not-success":"订阅失败,可能是因为凭证已经过期","success":"成功订阅BeatSaver通知,当新通知出现时,会主动推送给你。","invalid-token":"似乎token 已经失效了,快使用 bbbindbs 重新进行绑定吧"},"beatleader":{"exist":"当前群聊/频道已订阅 BeatLeader 打分更新事件","success":"成功订阅 BeatLeader 打分更新事件,当参与群员出现满足条件的打分事件时,会主动推送"},"beatsaver-mapper":{"exist":"当前群聊/频道已订阅 BeatSaver 谱面更新事件","success":"成功订阅 BeatSaver 谱面更新事件,当「{{name}}」发布新谱面时,会主动推送"},"beatsaver":{"exist":"当前群聊/频道已订阅 BeatSaver 谱面更新事件","success":"成功订阅 BeatSaver 谱面更新事件,当参与群员发布新谱面时,会主动推送"},"info":{"none":"当前群聊/频道没有任何 BeatSaber 事件订阅。","header":"当前群聊/频道 BeatSaber 订阅如下:","group-body-item":"订阅类型「{{type}}」","body-item":"订阅类型「{{type}}」{{enable ? '' : '(已禁用)' }}, 共 {{cnt}} 名参与成员","body-item-include-you":"(包括你哦)"},"join":{"description":"加入本群聊订阅的 BeatSaber 相关的事件","usage":"","examples":"示例\nbsbot.subscribe\nbbsub","success":{"beatleader":"成功加入本群Beatleader订阅组,当你打出高分时,会在本群推送","beatsaver":"成功加入本群订阅组,当你发布新谱面时,会在本群推送"},"nosub":{"beatleader":"当前群组/频道未启用 beatleader 打分订阅","beatsaver":"当前群组/频道未启用 beatsaver 谱师订阅"}},"leave":{"description":"离开本群 BeatSaber 相关事件订阅组","usage":"","examples":"示例\nbsbot.subscribe 查看当前会话的订阅信息\nbbsub\nbbsub --type beatsaver 为当前会话订阅 beatsaver 新谱面事件,当特定新谱面出现,会主动推送\nbbsub --type beatleader 为当前会话订阅 beatleader 打分事件,当满足要求的打分事件出现,会主动推送\nbbsub --type alert 订阅个人 BeatSaver 通知,当 beatsaver 新通知出现,会主动推送","not-exist":{"beatleader":"你还未加入当前群组/频道的 beatleader 打分订阅,无需离开","beatsaver":null},"success":{"beatleader":"成功离开本群「beatleader」订阅组,当你打出高分时,不会再在本群推送了","beatsaver":"成功离开本群「beatsaver」订阅组,当你发布新谱面时,不会再在本群推送了"}}},"unsubscribe":{"description":"取消订阅 BeatSaber 相关的事件。(RC)","usage":"取消通过 bbsub 订阅的 BeatSaber 相关的事件,当特定事件发生时不会进行主动推送。","examples":"示例\nbsbot.unsubscribe\nbbunsub","nosub":{"beatleader":"当前群组/频道未启用 beatleader 打分订阅","beatsaver-mapper":"当前群组/频道未订阅 谱师「{{name}}」的更新,无需取消","beatsaver":"当前群组/频道未启用 beatsaver 谱师订阅"},"success":{"beatleader":"成功禁用 beatleader 打分订阅","beatsaver":"成功禁用 beatsaver 谱师订阅","beatsaver-mapper":"成功禁用谱师「{{name}}」的更新订阅"},"cancel-all":"已成功取消所有更新订阅","cancel":"已取消对谱师「{id}」的更新订阅"}}},"_config":{"beatSaverHost":"BeatSaverOrigin,例如:https://api.beatsaver.com","beatSaverWSHost":"BeatSaverWebSocketOrigin,用于实时监听谱面更新,例如wss://ws.beatsaver.com/maps","renderMode":"谱面图是由插件本地生成/远程获取"}}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __export = (target, all) => {
|
6
|
+
for (var name in all)
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
8
|
+
};
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
11
|
+
for (let key of __getOwnPropNames(from))
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
14
|
+
}
|
15
|
+
return to;
|
16
|
+
};
|
17
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
19
|
+
var infra_exports = {};
|
20
|
+
__export(infra_exports, {
|
21
|
+
tran: () => import_i18n.tran
|
22
|
+
});
|
23
|
+
module.exports = __toCommonJS(infra_exports);
|
24
|
+
__reExport(infra_exports, require("./support/render"), module.exports);
|
25
|
+
var import_i18n = require("./i18n/index");
|
26
|
+
// Annotate the CommonJS export names for ESM import in node:
|
27
|
+
0 && (module.exports = {
|
28
|
+
tran,
|
29
|
+
...require("./support/render")
|
30
|
+
});
|
31
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../src/infra/index.ts"],"sourcesContent":["export * from './support/render'\nexport { tran } from './i18n/index'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAAc,6BAAd;AACA,kBAAqB;","names":[]}
|
@@ -0,0 +1,114 @@
|
|
1
|
+
var __create = Object.create;
|
2
|
+
var __defProp = Object.defineProperty;
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
8
|
+
var __export = (target, all) => {
|
9
|
+
for (var name in all)
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
11
|
+
};
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
14
|
+
for (let key of __getOwnPropNames(from))
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
17
|
+
}
|
18
|
+
return to;
|
19
|
+
};
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
26
|
+
mod
|
27
|
+
));
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
29
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
30
|
+
var __async = (__this, __arguments, generator) => {
|
31
|
+
return new Promise((resolve, reject) => {
|
32
|
+
var fulfilled = (value) => {
|
33
|
+
try {
|
34
|
+
step(generator.next(value));
|
35
|
+
} catch (e) {
|
36
|
+
reject(e);
|
37
|
+
}
|
38
|
+
};
|
39
|
+
var rejected = (value) => {
|
40
|
+
try {
|
41
|
+
step(generator.throw(value));
|
42
|
+
} catch (e) {
|
43
|
+
reject(e);
|
44
|
+
}
|
45
|
+
};
|
46
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
47
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
48
|
+
});
|
49
|
+
};
|
50
|
+
var s3_exports = {};
|
51
|
+
__export(s3_exports, {
|
52
|
+
S3Service: () => S3Service
|
53
|
+
});
|
54
|
+
module.exports = __toCommonJS(s3_exports);
|
55
|
+
var import_client_s3 = require("@aws-sdk/client-s3");
|
56
|
+
var import_crypto = __toESM(require("crypto"));
|
57
|
+
class S3Service {
|
58
|
+
constructor(config) {
|
59
|
+
__publicField(this, "s3Client");
|
60
|
+
__publicField(this, "bucket");
|
61
|
+
__publicField(this, "keyPrefix", "");
|
62
|
+
__publicField(this, "baseURL", "");
|
63
|
+
var _a;
|
64
|
+
const s3 = new import_client_s3.S3Client({
|
65
|
+
region: (_a = config.region) != null ? _a : "auto",
|
66
|
+
endpoint: config.endpoint,
|
67
|
+
credentials: {
|
68
|
+
accessKeyId: config.s3AccessKey,
|
69
|
+
secretAccessKey: config.s3SecretKey
|
70
|
+
}
|
71
|
+
});
|
72
|
+
this.bucket = config.bucketName;
|
73
|
+
this.keyPrefix = config.keyPrefix;
|
74
|
+
this.baseURL = config.baseURL;
|
75
|
+
this.s3Client = s3;
|
76
|
+
}
|
77
|
+
uploadImgWithUrl(url, mimeType) {
|
78
|
+
return __async(this, null, function* () {
|
79
|
+
const res = yield fetch(url).then((it) => it.arrayBuffer());
|
80
|
+
const buf = Buffer.from(res);
|
81
|
+
const md5 = import_crypto.default.createHash("md5").update(buf).digest("hex");
|
82
|
+
const key = this.keyPrefix ? `${this.keyPrefix}-${md5}` : md5;
|
83
|
+
const params = {
|
84
|
+
Bucket: this.bucket,
|
85
|
+
Key: key,
|
86
|
+
Body: buf,
|
87
|
+
ContentType: mimeType != null ? mimeType : "image/png"
|
88
|
+
};
|
89
|
+
const command = new import_client_s3.PutObjectCommand(params);
|
90
|
+
const data = yield this.s3Client.send(command);
|
91
|
+
return `${this.baseURL}${key}`;
|
92
|
+
});
|
93
|
+
}
|
94
|
+
uploadImg(buffer, mimeType) {
|
95
|
+
return __async(this, null, function* () {
|
96
|
+
const md5 = import_crypto.default.createHash("md5").update(buffer).digest("hex");
|
97
|
+
const key = this.keyPrefix ? `${this.keyPrefix}-${md5}` : md5;
|
98
|
+
const params = {
|
99
|
+
Bucket: this.bucket,
|
100
|
+
Key: key,
|
101
|
+
Body: buffer,
|
102
|
+
ContentType: mimeType != null ? mimeType : "image/png"
|
103
|
+
};
|
104
|
+
const command = new import_client_s3.PutObjectCommand(params);
|
105
|
+
const data = yield this.s3Client.send(command);
|
106
|
+
return `${this.baseURL}${key}`;
|
107
|
+
});
|
108
|
+
}
|
109
|
+
}
|
110
|
+
// Annotate the CommonJS export names for ESM import in node:
|
111
|
+
0 && (module.exports = {
|
112
|
+
S3Service
|
113
|
+
});
|
114
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/infra/s3/index.ts"],"sourcesContent":["import { S3Client, PutObjectCommand } from '@aws-sdk/client-s3'\nimport crypto from 'crypto'\n\nexport interface S3Config {\n s3AccessKey: string\n s3SecretKey: string\n endpoint: string\n region: string | undefined\n bucketName: string\n keyPrefix: string\n baseURL: string\n}\n\nexport class S3Service {\n private s3Client: S3Client\n private readonly bucket: string\n private readonly keyPrefix: string = ''\n private readonly baseURL: string = ''\n constructor(config: S3Config) {\n const s3 = new S3Client({\n region: config.region ?? 'auto',\n endpoint: config.endpoint,\n credentials: {\n accessKeyId: config.s3AccessKey,\n secretAccessKey: config.s3SecretKey,\n },\n })\n this.bucket = config.bucketName\n this.keyPrefix = config.keyPrefix\n this.baseURL = config.baseURL\n this.s3Client = s3\n }\n async uploadImgWithUrl(url: string, mimeType?: string): Promise<string> {\n const res = await fetch(url).then((it) => it.arrayBuffer())\n const buf = Buffer.from(res)\n // @ts-ignore\n const md5 = crypto.createHash('md5').update(buf).digest('hex')\n const key = this.keyPrefix ? `${this.keyPrefix}-${md5}` : md5\n const params = {\n Bucket: this.bucket,\n Key: key,\n Body: buf,\n ContentType: mimeType ?? 'image/png',\n }\n const command = new PutObjectCommand(params)\n const data = await this.s3Client.send(command)\n return `${this.baseURL}${key}`\n }\n async uploadImg(buffer: Buffer, mimeType?: string): Promise<string> {\n // md5 digest\n // @ts-ignore\n const md5 = crypto.createHash('md5').update(buffer).digest('hex')\n const key = this.keyPrefix ? `${this.keyPrefix}-${md5}` : md5\n const params = {\n Bucket: this.bucket,\n Key: key,\n Body: buffer,\n ContentType: mimeType ?? 'image/png',\n }\n const command = new PutObjectCommand(params)\n const data = await this.s3Client.send(command)\n return `${this.baseURL}${key}`\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA2C;AAC3C,oBAAmB;AAYZ,MAAM,UAAU;AAAA,EAKrB,YAAY,QAAkB;AAJ9B,wBAAQ;AACR,wBAAiB;AACjB,wBAAiB,aAAoB;AACrC,wBAAiB,WAAkB;AAjBrC;AAmBI,UAAM,KAAK,IAAI,0BAAS;AAAA,MACtB,SAAQ,YAAO,WAAP,YAAiB;AAAA,MACzB,UAAU,OAAO;AAAA,MACjB,aAAa;AAAA,QACX,aAAa,OAAO;AAAA,QACpB,iBAAiB,OAAO;AAAA,MAC1B;AAAA,IACF,CAAC;AACD,SAAK,SAAS,OAAO;AACrB,SAAK,YAAY,OAAO;AACxB,SAAK,UAAU,OAAO;AACtB,SAAK,WAAW;AAAA,EAClB;AAAA,EACM,iBAAiB,KAAa,UAAoC;AAAA;AACtE,YAAM,MAAM,MAAM,MAAM,GAAG,EAAE,KAAK,CAAC,OAAO,GAAG,YAAY,CAAC;AAC1D,YAAM,MAAM,OAAO,KAAK,GAAG;AAE3B,YAAM,MAAM,cAAAA,QAAO,WAAW,KAAK,EAAE,OAAO,GAAG,EAAE,OAAO,KAAK;AAC7D,YAAM,MAAM,KAAK,YAAY,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK;AAC1D,YAAM,SAAS;AAAA,QACb,QAAQ,KAAK;AAAA,QACb,KAAK;AAAA,QACL,MAAM;AAAA,QACN,aAAa,8BAAY;AAAA,MAC3B;AACA,YAAM,UAAU,IAAI,kCAAiB,MAAM;AAC3C,YAAM,OAAO,MAAM,KAAK,SAAS,KAAK,OAAO;AAC7C,aAAO,GAAG,KAAK,OAAO,GAAG,GAAG;AAAA,IAC9B;AAAA;AAAA,EACM,UAAU,QAAgB,UAAoC;AAAA;AAGlE,YAAM,MAAM,cAAAA,QAAO,WAAW,KAAK,EAAE,OAAO,MAAM,EAAE,OAAO,KAAK;AAChE,YAAM,MAAM,KAAK,YAAY,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK;AAC1D,YAAM,SAAS;AAAA,QACb,QAAQ,KAAK;AAAA,QACb,KAAK;AAAA,QACL,MAAM;AAAA,QACN,aAAa,8BAAY;AAAA,MAC3B;AACA,YAAM,UAAU,IAAI,kCAAiB,MAAM;AAC3C,YAAM,OAAO,MAAM,KAAK,SAAS,KAAK,OAAO;AAC7C,aAAO,GAAG,KAAK,OAAO,GAAG,GAAG;AAAA,IAC9B;AAAA;AACF;","names":["crypto"]}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __export = (target, all) => {
|
6
|
+
for (var name in all)
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
8
|
+
};
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
11
|
+
for (let key of __getOwnPropNames(from))
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
14
|
+
}
|
15
|
+
return to;
|
16
|
+
};
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
18
|
+
var cache_exports = {};
|
19
|
+
__export(cache_exports, {
|
20
|
+
cache: () => cache,
|
21
|
+
createCache: () => createCache
|
22
|
+
});
|
23
|
+
module.exports = __toCommonJS(cache_exports);
|
24
|
+
var import_lru_cache = require("lru-cache");
|
25
|
+
const options = {
|
26
|
+
max: 500,
|
27
|
+
maxSize: 5e3,
|
28
|
+
ttl: 1e3 * 60 * 5,
|
29
|
+
allowStale: false,
|
30
|
+
updateAgeOnGet: true,
|
31
|
+
updateAgeOnHas: true
|
32
|
+
};
|
33
|
+
const cache = new import_lru_cache.LRUCache(options);
|
34
|
+
const createCache = (opt) => new import_lru_cache.LRUCache(opt);
|
35
|
+
// Annotate the CommonJS export names for ESM import in node:
|
36
|
+
0 && (module.exports = {
|
37
|
+
cache,
|
38
|
+
createCache
|
39
|
+
});
|
40
|
+
//# sourceMappingURL=cache.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/infra/support/cache.ts"],"sourcesContent":["import { LRUCache } from 'lru-cache'\n\nconst options = {\n max: 500,\n maxSize: 5000,\n ttl: 1000 * 60 * 5,\n allowStale: false,\n updateAgeOnGet: true,\n updateAgeOnHas: true,\n}\n\nexport const cache = new LRUCache(options)\n\nexport const createCache = <K extends {}, V extends {}, FC = unknown>(opt) =>\n new LRUCache<K, V, FC>(opt)\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAyB;AAEzB,MAAM,UAAU;AAAA,EACd,KAAK;AAAA,EACL,SAAS;AAAA,EACT,KAAK,MAAO,KAAK;AAAA,EACjB,YAAY;AAAA,EACZ,gBAAgB;AAAA,EAChB,gBAAgB;AAClB;AAEO,MAAM,QAAQ,IAAI,0BAAS,OAAO;AAElC,MAAM,cAAc,CAA2C,QACpE,IAAI,0BAAmB,GAAG;","names":[]}
|
@@ -0,0 +1,49 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __export = (target, all) => {
|
6
|
+
for (var name in all)
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
8
|
+
};
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
11
|
+
for (let key of __getOwnPropNames(from))
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
14
|
+
}
|
15
|
+
return to;
|
16
|
+
};
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
18
|
+
var error_exports = {};
|
19
|
+
__export(error_exports, {
|
20
|
+
NotFoundError: () => NotFoundError,
|
21
|
+
RateLimitError: () => RateLimitError,
|
22
|
+
RequestError: () => RequestError
|
23
|
+
});
|
24
|
+
module.exports = __toCommonJS(error_exports);
|
25
|
+
class RequestError extends Error {
|
26
|
+
constructor(message) {
|
27
|
+
super(message);
|
28
|
+
this.name = "RequestError";
|
29
|
+
}
|
30
|
+
}
|
31
|
+
class NotFoundError extends Error {
|
32
|
+
constructor(message) {
|
33
|
+
super(message);
|
34
|
+
this.name = "NotFoundError";
|
35
|
+
}
|
36
|
+
}
|
37
|
+
class RateLimitError extends Error {
|
38
|
+
constructor(message) {
|
39
|
+
super(message);
|
40
|
+
this.name = "RateLimitError";
|
41
|
+
}
|
42
|
+
}
|
43
|
+
// Annotate the CommonJS export names for ESM import in node:
|
44
|
+
0 && (module.exports = {
|
45
|
+
NotFoundError,
|
46
|
+
RateLimitError,
|
47
|
+
RequestError
|
48
|
+
});
|
49
|
+
//# sourceMappingURL=error.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/infra/support/fetch/error.ts"],"sourcesContent":["export class RequestError extends Error {\n constructor(message?: string) {\n super(message)\n this.name = 'RequestError'\n }\n}\n\nexport class NotFoundError extends Error {\n constructor(message?: string) {\n super(message)\n this.name = 'NotFoundError'\n }\n}\n\nexport class RateLimitError extends Error {\n constructor(message?: string) {\n super(message)\n this.name = 'RateLimitError'\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,qBAAqB,MAAM;AAAA,EACtC,YAAY,SAAkB;AAC5B,UAAM,OAAO;AACb,SAAK,OAAO;AAAA,EACd;AACF;AAEO,MAAM,sBAAsB,MAAM;AAAA,EACvC,YAAY,SAAkB;AAC5B,UAAM,OAAO;AACb,SAAK,OAAO;AAAA,EACd;AACF;AAEO,MAAM,uBAAuB,MAAM;AAAA,EACxC,YAAY,SAAkB;AAC5B,UAAM,OAAO;AACb,SAAK,OAAO;AAAA,EACd;AACF;","names":[]}
|