beatsaber-bot-core 0.2.0-rc.8 → 0.3.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (678) hide show
  1. package/dist/cjs/cmd/bind/bind-beatleader.js +2 -2
  2. package/dist/cjs/cmd/bind/bind-beatleader.js.map +1 -1
  3. package/dist/cjs/cmd/bind/bind-beatsaver.js +2 -2
  4. package/dist/cjs/cmd/bind/bind-beatsaver.js.map +1 -1
  5. package/dist/cjs/cmd/bind/bind-id-beatleader.js +3 -3
  6. package/dist/cjs/cmd/bind/bind-id-beatleader.js.map +1 -1
  7. package/dist/cjs/cmd/bind/bind-id-beatsaver.js +3 -3
  8. package/dist/cjs/cmd/bind/bind-id-beatsaver.js.map +1 -1
  9. package/dist/cjs/cmd/bind/bind-scoresaber.js +3 -3
  10. package/dist/cjs/cmd/bind/bind-scoresaber.js.map +1 -1
  11. package/dist/cjs/cmd/bind/index.js +12 -12
  12. package/dist/cjs/cmd/bind/index.js.map +1 -1
  13. package/dist/cjs/cmd/bsmap/id-search.js +3 -3
  14. package/dist/cjs/cmd/bsmap/id-search.js.map +1 -1
  15. package/dist/cjs/cmd/bsmap/key-search.js +2 -2
  16. package/dist/cjs/cmd/bsmap/key-search.js.map +1 -1
  17. package/dist/cjs/cmd/bsmap/latest.js +2 -2
  18. package/dist/cjs/cmd/bsmap/latest.js.map +1 -1
  19. package/dist/cjs/cmd/deprecated/tmp.js +4 -4
  20. package/dist/cjs/cmd/deprecated/tmp.js.map +1 -1
  21. package/dist/cjs/cmd/index.js +11 -11
  22. package/dist/cjs/cmd/index.js.map +1 -1
  23. package/dist/cjs/cmd/rank.js +8 -8
  24. package/dist/cjs/cmd/rank.js.map +1 -1
  25. package/dist/cjs/cmd/score.js +16 -20
  26. package/dist/cjs/cmd/score.js.map +1 -1
  27. package/dist/cjs/cmd/subscribe/beatleader.js +3 -3
  28. package/dist/cjs/cmd/subscribe/beatleader.js.map +1 -1
  29. package/dist/cjs/cmd/subscribe/beatsaver.js +3 -3
  30. package/dist/cjs/cmd/subscribe/beatsaver.js.map +1 -1
  31. package/dist/cjs/cmd/subscribe/id-beatleader-score.js +4 -4
  32. package/dist/cjs/cmd/subscribe/id-beatleader-score.js.map +1 -1
  33. package/dist/cjs/cmd/subscribe/id-beatsaver-mapper.js +4 -4
  34. package/dist/cjs/cmd/subscribe/id-beatsaver-mapper.js.map +1 -1
  35. package/dist/cjs/cmd/subscribe/index.js +8 -8
  36. package/dist/cjs/cmd/subscribe/index.js.map +1 -1
  37. package/dist/cjs/cmd/subscribe/subjoin.js +6 -6
  38. package/dist/cjs/cmd/subscribe/subjoin.js.map +1 -1
  39. package/dist/cjs/cmd/subscribe/subleave.js +6 -6
  40. package/dist/cjs/cmd/subscribe/subleave.js.map +1 -1
  41. package/dist/cjs/cmd/subscribe/unsubscribe.js +8 -8
  42. package/dist/cjs/cmd/subscribe/unsubscribe.js.map +1 -1
  43. package/dist/cjs/common/cache.js.map +1 -0
  44. package/dist/cjs/common/fetch/error.js.map +1 -0
  45. package/dist/cjs/{infra/support → common}/fetch/index.js +16 -14
  46. package/dist/cjs/common/fetch/index.js.map +1 -0
  47. package/dist/cjs/{infra/support → common}/fetch/ofetch.js +5 -12
  48. package/dist/cjs/common/fetch/ofetch.js.map +1 -0
  49. package/dist/cjs/common/i18n/index.js +55 -0
  50. package/dist/cjs/common/i18n/index.js.map +1 -0
  51. package/dist/cjs/common/i18n/parser.js.map +1 -0
  52. package/dist/cjs/{infra/i18n/index.js → common/i18n/util.js} +10 -71
  53. package/dist/cjs/common/i18n/util.js.map +1 -0
  54. package/dist/cjs/{infra/support → common}/render/index.js +55 -15
  55. package/dist/cjs/common/render/index.js.map +1 -0
  56. package/dist/cjs/common/render/puppeteer.js.map +1 -0
  57. package/dist/cjs/{infra → common}/s3/index.js +34 -13
  58. package/dist/cjs/common/s3/index.js.map +1 -0
  59. package/dist/cjs/components/components/RankDifficulty.js +60 -84
  60. package/dist/cjs/components/components/RankDifficulty.js.map +1 -1
  61. package/dist/cjs/components/components/base/avatar.js +1 -2
  62. package/dist/cjs/components/components/base/avatar.js.map +1 -1
  63. package/dist/cjs/components/components/bl-rank-score-item.js +25 -87
  64. package/dist/cjs/components/components/bl-rank-score-item.js.map +1 -1
  65. package/dist/cjs/components/components/bl-score-item.js +28 -69
  66. package/dist/cjs/components/components/bl-score-item.js.map +1 -1
  67. package/dist/cjs/components/components/characteristic.js +106 -118
  68. package/dist/cjs/components/components/characteristic.js.map +1 -1
  69. package/dist/cjs/components/components/flag.js +6 -14
  70. package/dist/cjs/components/components/flag.js.map +1 -1
  71. package/dist/cjs/components/components/icons/BeatLeader.js +55 -71
  72. package/dist/cjs/components/components/icons/BeatLeader.js.map +1 -1
  73. package/dist/cjs/components/components/icons/RankIcon.js +3 -7
  74. package/dist/cjs/components/components/icons/RankIcon.js.map +1 -1
  75. package/dist/cjs/components/components/icons/ScoreSaberIcon.js +276 -312
  76. package/dist/cjs/components/components/icons/ScoreSaberIcon.js.map +1 -1
  77. package/dist/cjs/components/components/progressbar.js +12 -2
  78. package/dist/cjs/components/components/progressbar.js.map +1 -1
  79. package/dist/cjs/components/components/scoreItem.js +26 -63
  80. package/dist/cjs/components/components/scoreItem.js.map +1 -1
  81. package/dist/cjs/components/components/scoregraph.js +4 -5
  82. package/dist/cjs/components/components/scoregraph.js.map +1 -1
  83. package/dist/cjs/components/components/skill-graph.js +147 -164
  84. package/dist/cjs/components/components/skill-graph.js.map +1 -1
  85. package/dist/cjs/components/components/socre-badge.js +7 -10
  86. package/dist/cjs/components/components/socre-badge.js.map +1 -1
  87. package/dist/cjs/components/components/ss-rank-score-item.js +25 -87
  88. package/dist/cjs/components/components/ss-rank-score-item.js.map +1 -1
  89. package/dist/cjs/components/components/ss-score-item.js +38 -65
  90. package/dist/cjs/components/components/ss-score-item.js.map +1 -1
  91. package/dist/cjs/components/index.js +3 -43
  92. package/dist/cjs/components/index.js.map +1 -1
  93. package/dist/cjs/components/pages/bl-player.js +91 -136
  94. package/dist/cjs/components/pages/bl-player.js.map +1 -1
  95. package/dist/cjs/components/pages/bl-score-with-rank.js +114 -221
  96. package/dist/cjs/components/pages/bl-score-with-rank.js.map +1 -1
  97. package/dist/cjs/components/pages/bl-score.js +67 -169
  98. package/dist/cjs/components/pages/bl-score.js.map +1 -1
  99. package/dist/cjs/components/pages/bs-map.js +95 -166
  100. package/dist/cjs/components/pages/bs-map.js.map +1 -1
  101. package/dist/cjs/components/pages/index.js +26 -26
  102. package/dist/cjs/components/pages/index.js.map +1 -1
  103. package/dist/cjs/components/pages/ss-player.js +48 -77
  104. package/dist/cjs/components/pages/ss-player.js.map +1 -1
  105. package/dist/cjs/components/utils/bl/bsorReplayAcc.js +2 -2
  106. package/dist/cjs/components/utils/bl/bsorReplayAcc.js.map +1 -1
  107. package/dist/cjs/components/utils/bl/getPart.js.map +1 -1
  108. package/dist/cjs/components/utils/bl/stastic.js.map +1 -1
  109. package/dist/cjs/components/utils/format.js +3 -3
  110. package/dist/cjs/components/utils/format.js.map +1 -1
  111. package/dist/cjs/components/utils/getMods.js.map +1 -1
  112. package/dist/cjs/components/utils/index.js +4 -4
  113. package/dist/cjs/config.js +40 -0
  114. package/dist/cjs/config.js.map +1 -1
  115. package/dist/cjs/{interface → core}/cmd/builder.js +5 -5
  116. package/dist/cjs/core/cmd/builder.js.map +1 -0
  117. package/dist/cjs/core/cmd/type.js.map +1 -0
  118. package/dist/cjs/core/domain.js +16 -0
  119. package/dist/cjs/core/domain.js.map +1 -0
  120. package/dist/cjs/core/error.js +38 -0
  121. package/dist/cjs/core/error.js.map +1 -0
  122. package/dist/cjs/{interface/bot.js → core/event.js} +3 -3
  123. package/dist/cjs/core/event.js.map +1 -0
  124. package/dist/cjs/core/index.js +39 -0
  125. package/dist/cjs/core/index.js.map +1 -0
  126. package/dist/cjs/core/logger.js.map +1 -0
  127. package/dist/cjs/core/session.js +16 -0
  128. package/dist/cjs/core/session.js.map +1 -0
  129. package/dist/cjs/{schedules → events/schedules}/index.js +4 -3
  130. package/dist/cjs/events/schedules/index.js.map +1 -0
  131. package/dist/cjs/{schedules → events/schedules}/temp.js +7 -3
  132. package/dist/cjs/events/schedules/temp.js.map +1 -0
  133. package/dist/cjs/{ws → events/ws}/beatleader.js +6 -6
  134. package/dist/cjs/events/ws/beatleader.js.map +1 -0
  135. package/dist/cjs/{ws → events/ws}/beatsaver.js +11 -11
  136. package/dist/cjs/events/ws/beatsaver.js.map +1 -0
  137. package/dist/cjs/events/ws/handler.js.map +1 -0
  138. package/dist/cjs/{ws → events/ws}/index.js +6 -8
  139. package/dist/cjs/events/ws/index.js.map +1 -0
  140. package/dist/cjs/index.js +27 -18
  141. package/dist/cjs/index.js.map +1 -1
  142. package/dist/cjs/interface/db/index.js +0 -6
  143. package/dist/cjs/interface/db/index.js.map +1 -1
  144. package/dist/cjs/interface/db/models.js.map +1 -1
  145. package/dist/cjs/interface/index.js +12 -21
  146. package/dist/cjs/interface/index.js.map +1 -1
  147. package/dist/cjs/{service → services}/api/base/aioclient.js +1 -1
  148. package/dist/cjs/services/api/base/aioclient.js.map +1 -0
  149. package/dist/cjs/{service → services}/api/base/blclient.js +1 -1
  150. package/dist/cjs/services/api/base/blclient.js.map +1 -0
  151. package/dist/cjs/{service → services}/api/base/bsclient.js +2 -2
  152. package/dist/cjs/services/api/base/bsclient.js.map +1 -0
  153. package/dist/cjs/{service → services}/api/base/index.js +8 -8
  154. package/dist/cjs/services/api/base/index.js.map +1 -0
  155. package/dist/cjs/{service → services}/api/base/ssclient.js +2 -2
  156. package/dist/cjs/services/api/base/ssclient.js.map +1 -0
  157. package/dist/cjs/{service → services}/api/index.js +17 -9
  158. package/dist/cjs/services/api/index.js.map +1 -0
  159. package/dist/cjs/services/api/interfaces/aiosaber/index.js.map +1 -0
  160. package/dist/cjs/services/api/interfaces/beatleader/bsor.js.map +1 -0
  161. package/dist/cjs/{service → services}/api/interfaces/beatleader/index.js +10 -10
  162. package/dist/cjs/services/api/interfaces/beatleader/index.js.map +1 -0
  163. package/dist/cjs/services/api/interfaces/beatleader/req.js.map +1 -0
  164. package/dist/cjs/services/api/interfaces/beatleader/score.js.map +1 -0
  165. package/dist/cjs/services/api/interfaces/beatleader/user.js.map +1 -0
  166. package/dist/cjs/services/api/interfaces/beatleader/ws.js.map +1 -0
  167. package/dist/cjs/services/api/interfaces/beatsaver/alert.js.map +1 -0
  168. package/dist/cjs/services/api/interfaces/beatsaver/bsmap.js.map +1 -0
  169. package/dist/cjs/{service → services}/api/interfaces/beatsaver/index.js +10 -10
  170. package/dist/cjs/services/api/interfaces/beatsaver/index.js.map +1 -0
  171. package/dist/cjs/services/api/interfaces/beatsaver/resp.js.map +1 -0
  172. package/dist/cjs/services/api/interfaces/beatsaver/user.js.map +1 -0
  173. package/dist/cjs/services/api/interfaces/beatsaver/ws.js.map +1 -0
  174. package/dist/cjs/services/api/interfaces/index.js.map +1 -0
  175. package/dist/cjs/{service → services}/api/interfaces/scoresaber/index.js +6 -6
  176. package/dist/cjs/services/api/interfaces/scoresaber/index.js.map +1 -0
  177. package/dist/cjs/services/api/interfaces/scoresaber/item.js.map +1 -0
  178. package/dist/cjs/services/api/interfaces/scoresaber/leaderboard.js.map +1 -0
  179. package/dist/cjs/services/api/interfaces/scoresaber/resp.js.map +1 -0
  180. package/dist/cjs/services/api/interfaces/scoresaber/user.js.map +1 -0
  181. package/dist/cjs/services/api/interfaces/scoresaber/ws.js.map +1 -0
  182. package/dist/cjs/services/api/sortScore.js.map +1 -0
  183. package/dist/cjs/{infra → services}/errors/index.js +21 -38
  184. package/dist/cjs/services/errors/index.js.map +1 -0
  185. package/dist/cjs/services/i18n/index.js +43 -0
  186. package/dist/cjs/services/i18n/index.js.map +1 -0
  187. package/dist/cjs/{infra → services}/i18n/zh-cn.json +1 -1
  188. package/dist/cjs/{infra → services}/index.js +12 -9
  189. package/dist/cjs/services/index.js.map +1 -0
  190. package/dist/cjs/services/preference.js.map +1 -0
  191. package/dist/cjs/{service → services}/render/index.js +36 -13
  192. package/dist/cjs/services/render/index.js.map +1 -0
  193. package/dist/cjs/utils/bsorDecoder.js +329 -0
  194. package/dist/cjs/utils/bsorDecoder.js.map +1 -0
  195. package/dist/cjs/utils/index.js +6 -1
  196. package/dist/cjs/utils/index.js.map +1 -1
  197. package/dist/cjs/utils/platform.js +38 -0
  198. package/dist/cjs/utils/platform.js.map +1 -0
  199. package/dist/esm/cmd/bind/bind-beatleader.js +2 -2
  200. package/dist/esm/cmd/bind/bind-beatleader.js.map +1 -1
  201. package/dist/esm/cmd/bind/bind-beatsaver.js +2 -2
  202. package/dist/esm/cmd/bind/bind-beatsaver.js.map +1 -1
  203. package/dist/esm/cmd/bind/bind-id-beatleader.js +3 -3
  204. package/dist/esm/cmd/bind/bind-id-beatleader.js.map +1 -1
  205. package/dist/esm/cmd/bind/bind-id-beatsaver.js +3 -3
  206. package/dist/esm/cmd/bind/bind-id-beatsaver.js.map +1 -1
  207. package/dist/esm/cmd/bind/bind-scoresaber.js +3 -3
  208. package/dist/esm/cmd/bind/bind-scoresaber.js.map +1 -1
  209. package/dist/esm/cmd/bind/index.js +5 -5
  210. package/dist/esm/cmd/bind/index.js.map +1 -1
  211. package/dist/esm/cmd/bsmap/id-search.js +2 -2
  212. package/dist/esm/cmd/bsmap/id-search.js.map +1 -1
  213. package/dist/esm/cmd/bsmap/key-search.js +1 -1
  214. package/dist/esm/cmd/bsmap/key-search.js.map +1 -1
  215. package/dist/esm/cmd/bsmap/latest.js +2 -2
  216. package/dist/esm/cmd/bsmap/latest.js.map +1 -1
  217. package/dist/esm/cmd/deprecated/tmp.js +3 -3
  218. package/dist/esm/cmd/deprecated/tmp.js.map +1 -1
  219. package/dist/esm/cmd/index.js +11 -11
  220. package/dist/esm/cmd/index.js.map +1 -1
  221. package/dist/esm/cmd/rank.js +5 -5
  222. package/dist/esm/cmd/rank.js.map +1 -1
  223. package/dist/esm/cmd/score.js +13 -17
  224. package/dist/esm/cmd/score.js.map +1 -1
  225. package/dist/esm/cmd/subscribe/beatleader.js +3 -3
  226. package/dist/esm/cmd/subscribe/beatleader.js.map +1 -1
  227. package/dist/esm/cmd/subscribe/beatsaver.js +3 -3
  228. package/dist/esm/cmd/subscribe/beatsaver.js.map +1 -1
  229. package/dist/esm/cmd/subscribe/id-beatleader-score.js +4 -4
  230. package/dist/esm/cmd/subscribe/id-beatleader-score.js.map +1 -1
  231. package/dist/esm/cmd/subscribe/id-beatsaver-mapper.js +4 -4
  232. package/dist/esm/cmd/subscribe/id-beatsaver-mapper.js.map +1 -1
  233. package/dist/esm/cmd/subscribe/index.js +7 -7
  234. package/dist/esm/cmd/subscribe/index.js.map +1 -1
  235. package/dist/esm/cmd/subscribe/subjoin.js +5 -5
  236. package/dist/esm/cmd/subscribe/subjoin.js.map +1 -1
  237. package/dist/esm/cmd/subscribe/subleave.js +5 -5
  238. package/dist/esm/cmd/subscribe/subleave.js.map +1 -1
  239. package/dist/esm/cmd/subscribe/unsubscribe.js +7 -7
  240. package/dist/esm/cmd/subscribe/unsubscribe.js.map +1 -1
  241. package/dist/esm/common/cache.js.map +1 -0
  242. package/dist/esm/common/fetch/error.js.map +1 -0
  243. package/dist/esm/common/fetch/index.js +35 -0
  244. package/dist/esm/common/fetch/index.js.map +1 -0
  245. package/dist/esm/{infra/support → common}/fetch/ofetch.js +4 -10
  246. package/dist/esm/common/fetch/ofetch.js.map +1 -0
  247. package/dist/esm/common/i18n/index.js +32 -0
  248. package/dist/esm/common/i18n/index.js.map +1 -0
  249. package/dist/esm/common/i18n/parser.js.map +1 -0
  250. package/dist/esm/{infra/i18n/index.js → common/i18n/util.js} +4 -56
  251. package/dist/esm/common/i18n/util.js.map +1 -0
  252. package/dist/esm/{infra/support → common}/render/index.js +53 -13
  253. package/dist/esm/common/render/index.js.map +1 -0
  254. package/dist/esm/common/render/puppeteer.js.map +1 -0
  255. package/dist/esm/{infra → common}/s3/index.js +32 -12
  256. package/dist/esm/common/s3/index.js.map +1 -0
  257. package/dist/esm/components/components/RankDifficulty.js +60 -84
  258. package/dist/esm/components/components/RankDifficulty.js.map +1 -1
  259. package/dist/esm/components/components/base/avatar.js +1 -2
  260. package/dist/esm/components/components/base/avatar.js.map +1 -1
  261. package/dist/esm/components/components/bl-rank-score-item.js +25 -87
  262. package/dist/esm/components/components/bl-rank-score-item.js.map +1 -1
  263. package/dist/esm/components/components/bl-score-item.js +28 -69
  264. package/dist/esm/components/components/bl-score-item.js.map +1 -1
  265. package/dist/esm/components/components/characteristic.js +106 -118
  266. package/dist/esm/components/components/characteristic.js.map +1 -1
  267. package/dist/esm/components/components/flag.js +6 -14
  268. package/dist/esm/components/components/flag.js.map +1 -1
  269. package/dist/esm/components/components/icons/BeatLeader.js +55 -71
  270. package/dist/esm/components/components/icons/BeatLeader.js.map +1 -1
  271. package/dist/esm/components/components/icons/RankIcon.js +3 -7
  272. package/dist/esm/components/components/icons/RankIcon.js.map +1 -1
  273. package/dist/esm/components/components/icons/ScoreSaberIcon.js +276 -312
  274. package/dist/esm/components/components/icons/ScoreSaberIcon.js.map +1 -1
  275. package/dist/esm/components/components/progressbar.js +2 -2
  276. package/dist/esm/components/components/progressbar.js.map +1 -1
  277. package/dist/esm/components/components/scoreItem.js +26 -63
  278. package/dist/esm/components/components/scoreItem.js.map +1 -1
  279. package/dist/esm/components/components/scoregraph.js +4 -5
  280. package/dist/esm/components/components/scoregraph.js.map +1 -1
  281. package/dist/esm/components/components/skill-graph.js +147 -164
  282. package/dist/esm/components/components/skill-graph.js.map +1 -1
  283. package/dist/esm/components/components/socre-badge.js +7 -10
  284. package/dist/esm/components/components/socre-badge.js.map +1 -1
  285. package/dist/esm/components/components/ss-rank-score-item.js +25 -87
  286. package/dist/esm/components/components/ss-rank-score-item.js.map +1 -1
  287. package/dist/esm/components/components/ss-score-item.js +28 -65
  288. package/dist/esm/components/components/ss-score-item.js.map +1 -1
  289. package/dist/esm/components/index.js +3 -43
  290. package/dist/esm/components/index.js.map +1 -1
  291. package/dist/esm/components/pages/bl-player.js +91 -136
  292. package/dist/esm/components/pages/bl-player.js.map +1 -1
  293. package/dist/esm/components/pages/bl-score-with-rank.js +114 -221
  294. package/dist/esm/components/pages/bl-score-with-rank.js.map +1 -1
  295. package/dist/esm/components/pages/bl-score.js +67 -169
  296. package/dist/esm/components/pages/bl-score.js.map +1 -1
  297. package/dist/esm/components/pages/bs-map.js +95 -166
  298. package/dist/esm/components/pages/bs-map.js.map +1 -1
  299. package/dist/esm/components/pages/index.js +21 -21
  300. package/dist/esm/components/pages/index.js.map +1 -1
  301. package/dist/esm/components/pages/ss-player.js +48 -77
  302. package/dist/esm/components/pages/ss-player.js.map +1 -1
  303. package/dist/esm/components/utils/bl/bsorReplayAcc.js +2 -2
  304. package/dist/esm/components/utils/bl/bsorReplayAcc.js.map +1 -1
  305. package/dist/esm/components/utils/bl/getPart.js.map +1 -1
  306. package/dist/esm/components/utils/bl/stastic.js.map +1 -1
  307. package/dist/esm/components/utils/format.js +3 -3
  308. package/dist/esm/components/utils/format.js.map +1 -1
  309. package/dist/esm/components/utils/getMods.js.map +1 -1
  310. package/dist/esm/components/utils/index.js +2 -2
  311. package/dist/esm/config.js +32 -0
  312. package/dist/esm/config.js.map +1 -1
  313. package/dist/esm/{interface → core}/cmd/builder.js +4 -4
  314. package/dist/esm/core/cmd/builder.js.map +1 -0
  315. package/dist/esm/core/domain.js +1 -0
  316. package/dist/esm/core/error.js +16 -0
  317. package/dist/esm/core/error.js.map +1 -0
  318. package/dist/esm/core/event.js +1 -0
  319. package/dist/esm/core/index.js +10 -0
  320. package/dist/esm/core/index.js.map +1 -0
  321. package/dist/esm/core/session.js +1 -0
  322. package/dist/esm/events/schedules/index.js +16 -0
  323. package/dist/esm/events/schedules/index.js.map +1 -0
  324. package/dist/esm/{schedules → events/schedules}/temp.js +7 -3
  325. package/dist/esm/events/schedules/temp.js.map +1 -0
  326. package/dist/esm/{ws → events/ws}/beatleader.js +6 -6
  327. package/dist/esm/events/ws/beatleader.js.map +1 -0
  328. package/dist/esm/{ws → events/ws}/beatsaver.js +11 -11
  329. package/dist/esm/events/ws/beatsaver.js.map +1 -0
  330. package/dist/esm/events/ws/index.js +4 -0
  331. package/dist/esm/events/ws/index.js.map +1 -0
  332. package/dist/esm/index.js +15 -10
  333. package/dist/esm/index.js.map +1 -1
  334. package/dist/esm/interface/db/index.js +0 -1
  335. package/dist/esm/interface/db/index.js.map +1 -1
  336. package/dist/esm/interface/index.js +9 -15
  337. package/dist/esm/interface/index.js.map +1 -1
  338. package/dist/esm/{service → services}/api/base/aioclient.js +1 -1
  339. package/dist/esm/services/api/base/aioclient.js.map +1 -0
  340. package/dist/esm/{service → services}/api/base/blclient.js +1 -1
  341. package/dist/esm/services/api/base/blclient.js.map +1 -0
  342. package/dist/esm/{service → services}/api/base/bsclient.js +2 -2
  343. package/dist/esm/services/api/base/bsclient.js.map +1 -0
  344. package/dist/esm/services/api/base/index.js +5 -0
  345. package/dist/esm/services/api/base/index.js.map +1 -0
  346. package/dist/esm/{service → services}/api/base/ssclient.js +2 -2
  347. package/dist/esm/services/api/base/ssclient.js.map +1 -0
  348. package/dist/esm/{service → services}/api/index.js +16 -8
  349. package/dist/esm/services/api/index.js.map +1 -0
  350. package/dist/esm/services/api/interfaces/beatleader/index.js +6 -0
  351. package/dist/esm/services/api/interfaces/beatleader/index.js.map +1 -0
  352. package/dist/esm/services/api/interfaces/beatsaver/index.js +6 -0
  353. package/dist/esm/services/api/interfaces/beatsaver/index.js.map +1 -0
  354. package/dist/esm/services/api/interfaces/scoresaber/index.js +4 -0
  355. package/dist/esm/services/api/interfaces/scoresaber/index.js.map +1 -0
  356. package/dist/esm/services/api/sortScore.js.map +1 -0
  357. package/dist/esm/{infra → services}/errors/index.js +1 -17
  358. package/dist/esm/services/errors/index.js.map +1 -0
  359. package/dist/esm/services/i18n/index.js +21 -0
  360. package/dist/esm/services/i18n/index.js.map +1 -0
  361. package/dist/esm/services/index.js +9 -0
  362. package/dist/esm/services/index.js.map +1 -0
  363. package/dist/esm/services/preference.js.map +1 -0
  364. package/dist/esm/{service → services}/render/index.js +34 -11
  365. package/dist/esm/services/render/index.js.map +1 -0
  366. package/dist/esm/utils/bsorDecoder.js +301 -0
  367. package/dist/esm/utils/bsorDecoder.js.map +1 -0
  368. package/dist/esm/utils/index.js +2 -0
  369. package/dist/esm/utils/index.js.map +1 -1
  370. package/dist/esm/utils/platform.js +14 -0
  371. package/dist/esm/utils/platform.js.map +1 -0
  372. package/dist/types/index.d.ts +1376 -48
  373. package/package.json +19 -10
  374. package/dist/cjs/components/utils/canvas.js +0 -2
  375. package/dist/cjs/components/utils/canvas.js.map +0 -1
  376. package/dist/cjs/infra/errors/index.js.map +0 -1
  377. package/dist/cjs/infra/i18n/index.js.map +0 -1
  378. package/dist/cjs/infra/i18n/parser.js.map +0 -1
  379. package/dist/cjs/infra/index.js.map +0 -1
  380. package/dist/cjs/infra/s3/index.js.map +0 -1
  381. package/dist/cjs/infra/support/cache.js.map +0 -1
  382. package/dist/cjs/infra/support/fetch/error.js.map +0 -1
  383. package/dist/cjs/infra/support/fetch/index.js.map +0 -1
  384. package/dist/cjs/infra/support/fetch/ofetch.js.map +0 -1
  385. package/dist/cjs/infra/support/render/index.js.map +0 -1
  386. package/dist/cjs/infra/support/render/puppeteer.js.map +0 -1
  387. package/dist/cjs/interface/bot.js.map +0 -1
  388. package/dist/cjs/interface/cmd/builder.js.map +0 -1
  389. package/dist/cjs/interface/cmd/type.js.map +0 -1
  390. package/dist/cjs/interface/logger.js.map +0 -1
  391. package/dist/cjs/schedules/index.js.map +0 -1
  392. package/dist/cjs/schedules/interface.js +0 -16
  393. package/dist/cjs/schedules/interface.js.map +0 -1
  394. package/dist/cjs/schedules/temp.js.map +0 -1
  395. package/dist/cjs/service/api/base/aioclient.js.map +0 -1
  396. package/dist/cjs/service/api/base/blclient.js.map +0 -1
  397. package/dist/cjs/service/api/base/bsclient.js.map +0 -1
  398. package/dist/cjs/service/api/base/index.js.map +0 -1
  399. package/dist/cjs/service/api/base/ssclient.js.map +0 -1
  400. package/dist/cjs/service/api/index.js.map +0 -1
  401. package/dist/cjs/service/api/interfaces/aiosaber/index.js.map +0 -1
  402. package/dist/cjs/service/api/interfaces/beatleader/bsor.js.map +0 -1
  403. package/dist/cjs/service/api/interfaces/beatleader/index.js.map +0 -1
  404. package/dist/cjs/service/api/interfaces/beatleader/req.js.map +0 -1
  405. package/dist/cjs/service/api/interfaces/beatleader/score.js.map +0 -1
  406. package/dist/cjs/service/api/interfaces/beatleader/user.js.map +0 -1
  407. package/dist/cjs/service/api/interfaces/beatleader/ws.js.map +0 -1
  408. package/dist/cjs/service/api/interfaces/beatsaver/alert.js.map +0 -1
  409. package/dist/cjs/service/api/interfaces/beatsaver/bsmap.js.map +0 -1
  410. package/dist/cjs/service/api/interfaces/beatsaver/index.js.map +0 -1
  411. package/dist/cjs/service/api/interfaces/beatsaver/resp.js.map +0 -1
  412. package/dist/cjs/service/api/interfaces/beatsaver/user.js.map +0 -1
  413. package/dist/cjs/service/api/interfaces/beatsaver/ws.js.map +0 -1
  414. package/dist/cjs/service/api/interfaces/index.js.map +0 -1
  415. package/dist/cjs/service/api/interfaces/scoresaber/index.js.map +0 -1
  416. package/dist/cjs/service/api/interfaces/scoresaber/item.js.map +0 -1
  417. package/dist/cjs/service/api/interfaces/scoresaber/leaderboard.js.map +0 -1
  418. package/dist/cjs/service/api/interfaces/scoresaber/resp.js.map +0 -1
  419. package/dist/cjs/service/api/interfaces/scoresaber/user.js.map +0 -1
  420. package/dist/cjs/service/api/interfaces/scoresaber/ws.js.map +0 -1
  421. package/dist/cjs/service/api/sortScore.js.map +0 -1
  422. package/dist/cjs/service/index.js +0 -16
  423. package/dist/cjs/service/index.js.map +0 -1
  424. package/dist/cjs/service/preference.js.map +0 -1
  425. package/dist/cjs/service/render/index.js.map +0 -1
  426. package/dist/cjs/service/render/interfaces.js +0 -16
  427. package/dist/cjs/service/render/interfaces.js.map +0 -1
  428. package/dist/cjs/ws/beatleader.js.map +0 -1
  429. package/dist/cjs/ws/beatsaver.js.map +0 -1
  430. package/dist/cjs/ws/bl-filter.js +0 -1
  431. package/dist/cjs/ws/handler.js.map +0 -1
  432. package/dist/cjs/ws/index.js.map +0 -1
  433. package/dist/cjs/ws/scoresaber.js +0 -75
  434. package/dist/cjs/ws/scoresaber.js.map +0 -1
  435. package/dist/esm/components/utils/canvas.js +0 -2
  436. package/dist/esm/components/utils/canvas.js.map +0 -1
  437. package/dist/esm/infra/errors/index.js.map +0 -1
  438. package/dist/esm/infra/i18n/index.js.map +0 -1
  439. package/dist/esm/infra/i18n/parser.js.map +0 -1
  440. package/dist/esm/infra/index.js +0 -6
  441. package/dist/esm/infra/index.js.map +0 -1
  442. package/dist/esm/infra/s3/index.js.map +0 -1
  443. package/dist/esm/infra/support/cache.js.map +0 -1
  444. package/dist/esm/infra/support/fetch/error.js.map +0 -1
  445. package/dist/esm/infra/support/fetch/index.js +0 -33
  446. package/dist/esm/infra/support/fetch/index.js.map +0 -1
  447. package/dist/esm/infra/support/fetch/ofetch.js.map +0 -1
  448. package/dist/esm/infra/support/render/index.js.map +0 -1
  449. package/dist/esm/infra/support/render/puppeteer.js.map +0 -1
  450. package/dist/esm/interface/bot.js +0 -1
  451. package/dist/esm/interface/cmd/builder.js.map +0 -1
  452. package/dist/esm/schedules/index.js +0 -15
  453. package/dist/esm/schedules/index.js.map +0 -1
  454. package/dist/esm/schedules/interface.js +0 -1
  455. package/dist/esm/schedules/temp.js.map +0 -1
  456. package/dist/esm/service/api/base/aioclient.js.map +0 -1
  457. package/dist/esm/service/api/base/blclient.js.map +0 -1
  458. package/dist/esm/service/api/base/bsclient.js.map +0 -1
  459. package/dist/esm/service/api/base/index.js +0 -5
  460. package/dist/esm/service/api/base/index.js.map +0 -1
  461. package/dist/esm/service/api/base/ssclient.js.map +0 -1
  462. package/dist/esm/service/api/index.js.map +0 -1
  463. package/dist/esm/service/api/interfaces/beatleader/index.js +0 -6
  464. package/dist/esm/service/api/interfaces/beatleader/index.js.map +0 -1
  465. package/dist/esm/service/api/interfaces/beatsaver/index.js +0 -6
  466. package/dist/esm/service/api/interfaces/beatsaver/index.js.map +0 -1
  467. package/dist/esm/service/api/interfaces/scoresaber/index.js +0 -4
  468. package/dist/esm/service/api/interfaces/scoresaber/index.js.map +0 -1
  469. package/dist/esm/service/api/sortScore.js.map +0 -1
  470. package/dist/esm/service/index.js +0 -1
  471. package/dist/esm/service/index.js.map +0 -1
  472. package/dist/esm/service/preference.js.map +0 -1
  473. package/dist/esm/service/render/index.js.map +0 -1
  474. package/dist/esm/service/render/interfaces.js +0 -1
  475. package/dist/esm/service/render/interfaces.js.map +0 -1
  476. package/dist/esm/ws/beatleader.js.map +0 -1
  477. package/dist/esm/ws/beatsaver.js.map +0 -1
  478. package/dist/esm/ws/bl-filter.js +0 -1
  479. package/dist/esm/ws/bl-filter.js.map +0 -1
  480. package/dist/esm/ws/index.js +0 -5
  481. package/dist/esm/ws/index.js.map +0 -1
  482. package/dist/esm/ws/scoresaber.js +0 -53
  483. package/dist/esm/ws/scoresaber.js.map +0 -1
  484. package/dist/types/cmd/bind/bind-beatleader.d.ts +0 -34
  485. package/dist/types/cmd/bind/bind-beatsaver.d.ts +0 -34
  486. package/dist/types/cmd/bind/bind-id-beatleader.d.ts +0 -34
  487. package/dist/types/cmd/bind/bind-id-beatsaver.d.ts +0 -34
  488. package/dist/types/cmd/bind/bind-scoresaber.d.ts +0 -34
  489. package/dist/types/cmd/bind/index.d.ts +0 -41
  490. package/dist/types/cmd/bsmap/id-search.d.ts +0 -41
  491. package/dist/types/cmd/bsmap/key-search.d.ts +0 -41
  492. package/dist/types/cmd/bsmap/latest.d.ts +0 -41
  493. package/dist/types/cmd/config/index.d.ts +0 -2
  494. package/dist/types/cmd/deprecated/tmp.d.ts +0 -41
  495. package/dist/types/cmd/index.d.ts +0 -34
  496. package/dist/types/cmd/rank.d.ts +0 -41
  497. package/dist/types/cmd/score.d.ts +0 -41
  498. package/dist/types/cmd/subscribe/beatleader.d.ts +0 -34
  499. package/dist/types/cmd/subscribe/beatsaver.d.ts +0 -34
  500. package/dist/types/cmd/subscribe/id-beatleader-score.d.ts +0 -34
  501. package/dist/types/cmd/subscribe/id-beatsaver-mapper.d.ts +0 -34
  502. package/dist/types/cmd/subscribe/index.d.ts +0 -41
  503. package/dist/types/cmd/subscribe/subjoin.d.ts +0 -41
  504. package/dist/types/cmd/subscribe/subleave.d.ts +0 -41
  505. package/dist/types/cmd/subscribe/unsubscribe.d.ts +0 -41
  506. package/dist/types/components/components/RankDifficulty.d.ts +0 -10
  507. package/dist/types/components/components/base/avatar.d.ts +0 -10
  508. package/dist/types/components/components/bl-rank-score-item.d.ts +0 -21
  509. package/dist/types/components/components/bl-score-item.d.ts +0 -10
  510. package/dist/types/components/components/characteristic.d.ts +0 -9
  511. package/dist/types/components/components/flag.d.ts +0 -9
  512. package/dist/types/components/components/icons/BeatLeader.d.ts +0 -6
  513. package/dist/types/components/components/icons/RankIcon.d.ts +0 -8
  514. package/dist/types/components/components/icons/ScoreSaberIcon.d.ts +0 -6
  515. package/dist/types/components/components/progressbar.d.ts +0 -8
  516. package/dist/types/components/components/scoreItem.d.ts +0 -8
  517. package/dist/types/components/components/scoregraph.d.ts +0 -15
  518. package/dist/types/components/components/skill-graph.d.ts +0 -9
  519. package/dist/types/components/components/socre-badge.d.ts +0 -9
  520. package/dist/types/components/components/ss-rank-score-item.d.ts +0 -21
  521. package/dist/types/components/components/ss-score-item.d.ts +0 -8
  522. package/dist/types/components/index.d.ts +0 -5
  523. package/dist/types/components/pages/bl-player.d.ts +0 -11
  524. package/dist/types/components/pages/bl-score-with-rank.d.ts +0 -18
  525. package/dist/types/components/pages/bl-score.d.ts +0 -15
  526. package/dist/types/components/pages/bs-map.d.ts +0 -11
  527. package/dist/types/components/pages/index.d.ts +0 -14
  528. package/dist/types/components/pages/ss-player.d.ts +0 -13
  529. package/dist/types/components/utils/bl/beatleader.d.ts +0 -15
  530. package/dist/types/components/utils/bl/blheadset.d.ts +0 -275
  531. package/dist/types/components/utils/bl/bsorDecoder.d.ts +0 -189
  532. package/dist/types/components/utils/bl/bsorReplayAcc.d.ts +0 -38
  533. package/dist/types/components/utils/bl/getPart.d.ts +0 -9
  534. package/dist/types/components/utils/bl/stastic.d.ts +0 -3
  535. package/dist/types/components/utils/canvas.d.ts +0 -2
  536. package/dist/types/components/utils/format.d.ts +0 -8
  537. package/dist/types/components/utils/getMods.d.ts +0 -5
  538. package/dist/types/components/utils/index.d.ts +0 -6
  539. package/dist/types/components/utils/qrcode.d.ts +0 -3
  540. package/dist/types/components/utils/sleep.d.ts +0 -3
  541. package/dist/types/components/utils/tag-format.d.ts +0 -3
  542. package/dist/types/components/utils/tw-join.d.ts +0 -5
  543. package/dist/types/config.d.ts +0 -30
  544. package/dist/types/index-Dagy_c8G.d.ts +0 -74
  545. package/dist/types/infra/errors/index.d.ts +0 -69
  546. package/dist/types/infra/i18n/index.d.ts +0 -4
  547. package/dist/types/infra/i18n/parser.d.ts +0 -16
  548. package/dist/types/infra/index.d.ts +0 -6
  549. package/dist/types/infra/s3/index.d.ts +0 -20
  550. package/dist/types/infra/support/cache.d.ts +0 -6
  551. package/dist/types/infra/support/fetch/error.d.ts +0 -11
  552. package/dist/types/infra/support/fetch/index.d.ts +0 -7
  553. package/dist/types/infra/support/fetch/ofetch.d.ts +0 -24
  554. package/dist/types/infra/support/render/index.d.ts +0 -38
  555. package/dist/types/infra/support/render/puppeteer.d.ts +0 -43
  556. package/dist/types/interface/bot.d.ts +0 -22
  557. package/dist/types/interface/cmd/builder.d.ts +0 -53
  558. package/dist/types/interface/cmd/type.d.ts +0 -30
  559. package/dist/types/interface/db/index.d.ts +0 -45
  560. package/dist/types/interface/db/models.d.ts +0 -41
  561. package/dist/types/interface/index.d.ts +0 -30
  562. package/dist/types/interface/logger.d.ts +0 -8
  563. package/dist/types/schedules/index.d.ts +0 -40
  564. package/dist/types/schedules/interface.d.ts +0 -45
  565. package/dist/types/schedules/temp.d.ts +0 -35
  566. package/dist/types/service/api/base/aioclient.d.ts +0 -13
  567. package/dist/types/service/api/base/blclient.d.ts +0 -28
  568. package/dist/types/service/api/base/bsclient.d.ts +0 -29
  569. package/dist/types/service/api/base/index.d.ts +0 -19
  570. package/dist/types/service/api/base/ssclient.d.ts +0 -17
  571. package/dist/types/service/api/index.d.ts +0 -59
  572. package/dist/types/service/api/interfaces/aiosaber/index.d.ts +0 -9
  573. package/dist/types/service/api/interfaces/beatleader/bsor.d.ts +0 -113
  574. package/dist/types/service/api/interfaces/beatleader/index.d.ts +0 -5
  575. package/dist/types/service/api/interfaces/beatleader/req.d.ts +0 -22
  576. package/dist/types/service/api/interfaces/beatleader/score.d.ts +0 -164
  577. package/dist/types/service/api/interfaces/beatleader/user.d.ts +0 -173
  578. package/dist/types/service/api/interfaces/beatleader/ws.d.ts +0 -90
  579. package/dist/types/service/api/interfaces/beatsaver/alert.d.ts +0 -20
  580. package/dist/types/service/api/interfaces/beatsaver/bsmap.d.ts +0 -70
  581. package/dist/types/service/api/interfaces/beatsaver/index.d.ts +0 -13
  582. package/dist/types/service/api/interfaces/beatsaver/resp.d.ts +0 -11
  583. package/dist/types/service/api/interfaces/beatsaver/user.d.ts +0 -10
  584. package/dist/types/service/api/interfaces/beatsaver/ws.d.ts +0 -13
  585. package/dist/types/service/api/interfaces/index.d.ts +0 -14
  586. package/dist/types/service/api/interfaces/scoresaber/index.d.ts +0 -3
  587. package/dist/types/service/api/interfaces/scoresaber/item.d.ts +0 -67
  588. package/dist/types/service/api/interfaces/scoresaber/leaderboard.d.ts +0 -13
  589. package/dist/types/service/api/interfaces/scoresaber/resp.d.ts +0 -12
  590. package/dist/types/service/api/interfaces/scoresaber/user.d.ts +0 -35
  591. package/dist/types/service/api/interfaces/scoresaber/ws.d.ts +0 -80
  592. package/dist/types/service/api/sortScore.d.ts +0 -5
  593. package/dist/types/service/index.d.ts +0 -30
  594. package/dist/types/service/preference.d.ts +0 -38
  595. package/dist/types/service/render/index.d.ts +0 -43
  596. package/dist/types/service/render/interfaces.d.ts +0 -30
  597. package/dist/types/utils/index.d.ts +0 -5
  598. package/dist/types/ws/beatleader.d.ts +0 -47
  599. package/dist/types/ws/beatsaver.d.ts +0 -52
  600. package/dist/types/ws/bl-filter.d.ts +0 -2
  601. package/dist/types/ws/handler.d.ts +0 -8
  602. package/dist/types/ws/index.d.ts +0 -36
  603. package/dist/types/ws/scoresaber.d.ts +0 -47
  604. /package/dist/cjs/{infra/support → common}/cache.js +0 -0
  605. /package/dist/cjs/{infra/support → common}/fetch/error.js +0 -0
  606. /package/dist/cjs/{infra → common}/i18n/parser.js +0 -0
  607. /package/dist/cjs/{infra/support → common}/render/puppeteer.js +0 -0
  608. /package/dist/cjs/{interface → core}/cmd/type.js +0 -0
  609. /package/dist/cjs/{interface → core}/logger.js +0 -0
  610. /package/dist/cjs/{ws → events/ws}/handler.js +0 -0
  611. /package/dist/cjs/{service → services}/api/interfaces/aiosaber/index.js +0 -0
  612. /package/dist/cjs/{service → services}/api/interfaces/beatleader/bsor.js +0 -0
  613. /package/dist/cjs/{service → services}/api/interfaces/beatleader/req.js +0 -0
  614. /package/dist/cjs/{service → services}/api/interfaces/beatleader/score.js +0 -0
  615. /package/dist/cjs/{service → services}/api/interfaces/beatleader/user.js +0 -0
  616. /package/dist/cjs/{service → services}/api/interfaces/beatleader/ws.js +0 -0
  617. /package/dist/cjs/{service → services}/api/interfaces/beatsaver/alert.js +0 -0
  618. /package/dist/cjs/{service → services}/api/interfaces/beatsaver/bsmap.js +0 -0
  619. /package/dist/cjs/{service → services}/api/interfaces/beatsaver/resp.js +0 -0
  620. /package/dist/cjs/{service → services}/api/interfaces/beatsaver/user.js +0 -0
  621. /package/dist/cjs/{service → services}/api/interfaces/beatsaver/ws.js +0 -0
  622. /package/dist/cjs/{service → services}/api/interfaces/index.js +0 -0
  623. /package/dist/cjs/{service → services}/api/interfaces/scoresaber/item.js +0 -0
  624. /package/dist/cjs/{service → services}/api/interfaces/scoresaber/leaderboard.js +0 -0
  625. /package/dist/cjs/{service → services}/api/interfaces/scoresaber/resp.js +0 -0
  626. /package/dist/cjs/{service → services}/api/interfaces/scoresaber/user.js +0 -0
  627. /package/dist/cjs/{service → services}/api/interfaces/scoresaber/ws.js +0 -0
  628. /package/dist/cjs/{service → services}/api/sortScore.js +0 -0
  629. /package/dist/cjs/{service → services}/preference.js +0 -0
  630. /package/dist/esm/{infra/support → common}/cache.js +0 -0
  631. /package/dist/esm/{infra/support → common}/fetch/error.js +0 -0
  632. /package/dist/esm/{infra → common}/i18n/parser.js +0 -0
  633. /package/dist/esm/{infra/support → common}/render/puppeteer.js +0 -0
  634. /package/dist/esm/{interface → core}/cmd/type.js +0 -0
  635. /package/dist/esm/{interface → core}/cmd/type.js.map +0 -0
  636. /package/dist/{cjs/ws/bl-filter.js.map → esm/core/domain.js.map} +0 -0
  637. /package/dist/esm/{interface/bot.js.map → core/event.js.map} +0 -0
  638. /package/dist/esm/{interface → core}/logger.js +0 -0
  639. /package/dist/esm/{interface → core}/logger.js.map +0 -0
  640. /package/dist/esm/{schedules/interface.js.map → core/session.js.map} +0 -0
  641. /package/dist/esm/{ws → events/ws}/handler.js +0 -0
  642. /package/dist/esm/{ws → events/ws}/handler.js.map +0 -0
  643. /package/dist/esm/{service → services}/api/interfaces/aiosaber/index.js +0 -0
  644. /package/dist/esm/{service → services}/api/interfaces/aiosaber/index.js.map +0 -0
  645. /package/dist/esm/{service → services}/api/interfaces/beatleader/bsor.js +0 -0
  646. /package/dist/esm/{service → services}/api/interfaces/beatleader/bsor.js.map +0 -0
  647. /package/dist/esm/{service → services}/api/interfaces/beatleader/req.js +0 -0
  648. /package/dist/esm/{service → services}/api/interfaces/beatleader/req.js.map +0 -0
  649. /package/dist/esm/{service → services}/api/interfaces/beatleader/score.js +0 -0
  650. /package/dist/esm/{service → services}/api/interfaces/beatleader/score.js.map +0 -0
  651. /package/dist/esm/{service → services}/api/interfaces/beatleader/user.js +0 -0
  652. /package/dist/esm/{service → services}/api/interfaces/beatleader/user.js.map +0 -0
  653. /package/dist/esm/{service → services}/api/interfaces/beatleader/ws.js +0 -0
  654. /package/dist/esm/{service → services}/api/interfaces/beatleader/ws.js.map +0 -0
  655. /package/dist/esm/{service → services}/api/interfaces/beatsaver/alert.js +0 -0
  656. /package/dist/esm/{service → services}/api/interfaces/beatsaver/alert.js.map +0 -0
  657. /package/dist/esm/{service → services}/api/interfaces/beatsaver/bsmap.js +0 -0
  658. /package/dist/esm/{service → services}/api/interfaces/beatsaver/bsmap.js.map +0 -0
  659. /package/dist/esm/{service → services}/api/interfaces/beatsaver/resp.js +0 -0
  660. /package/dist/esm/{service → services}/api/interfaces/beatsaver/resp.js.map +0 -0
  661. /package/dist/esm/{service → services}/api/interfaces/beatsaver/user.js +0 -0
  662. /package/dist/esm/{service → services}/api/interfaces/beatsaver/user.js.map +0 -0
  663. /package/dist/esm/{service → services}/api/interfaces/beatsaver/ws.js +0 -0
  664. /package/dist/esm/{service → services}/api/interfaces/beatsaver/ws.js.map +0 -0
  665. /package/dist/esm/{service → services}/api/interfaces/index.js +0 -0
  666. /package/dist/esm/{service → services}/api/interfaces/index.js.map +0 -0
  667. /package/dist/esm/{service → services}/api/interfaces/scoresaber/item.js +0 -0
  668. /package/dist/esm/{service → services}/api/interfaces/scoresaber/item.js.map +0 -0
  669. /package/dist/esm/{service → services}/api/interfaces/scoresaber/leaderboard.js +0 -0
  670. /package/dist/esm/{service → services}/api/interfaces/scoresaber/leaderboard.js.map +0 -0
  671. /package/dist/esm/{service → services}/api/interfaces/scoresaber/resp.js +0 -0
  672. /package/dist/esm/{service → services}/api/interfaces/scoresaber/resp.js.map +0 -0
  673. /package/dist/esm/{service → services}/api/interfaces/scoresaber/user.js +0 -0
  674. /package/dist/esm/{service → services}/api/interfaces/scoresaber/user.js.map +0 -0
  675. /package/dist/esm/{service → services}/api/interfaces/scoresaber/ws.js +0 -0
  676. /package/dist/esm/{service → services}/api/interfaces/scoresaber/ws.js.map +0 -0
  677. /package/dist/esm/{service → services}/api/sortScore.js +0 -0
  678. /package/dist/esm/{service → services}/preference.js +0 -0
@@ -31,102 +31,40 @@ __export(bl_rank_score_item_exports, {
31
31
  ScoreItemSkeleton: () => ScoreItemSkeleton
32
32
  });
33
33
  module.exports = __toCommonJS(bl_rank_score_item_exports);
34
- var import_jsx_runtime = require("react/jsx-runtime");
35
34
  var import_dayjs = __toESM(require("dayjs"));
36
- var import_flag = __toESM(require("../../components/components/flag"));
37
- var import_utils = require("../../components/utils");
35
+ var import_flag = __toESM(require("../../components/components/flag.js"));
36
+ var import_utils = require("../../components/utils/index.js");
38
37
  function BlRankScoreItem(props) {
39
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
38
+ return /* @__PURE__ */ React.createElement(
40
39
  "div",
41
40
  {
42
- className: `${props.self ? "gradient-border" : ""} bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`,
43
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "skew-x-12 relative", children: [
44
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center translate-x-2 justify-between", children: [
45
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex gap-2", children: [
46
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "w-12 h-12 relative", children: [
47
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
48
- "img",
49
- {
50
- src: props.avatar,
51
- className: "shadow-lg w-12 h-12 rounded-full object-cover"
52
- }
53
- ),
54
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "w-3 h-3 absolute bottom-0 right-3", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_flag.default, { flagNationCode: props.countryCode }) })
55
- ] }),
56
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
57
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "line-clamp-1 text-ellipsis max-w-[100px]", children: props.name }),
58
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: "flex items-center space-x-1", children: [
59
- !props.isRegionRank && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_flag.EarchIcon, {}),
60
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
61
- "# ",
62
- props.globalRank
63
- ] })
64
- ] })
65
- ] })
66
- ] }),
67
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col items-end -translate-x-2 -skew-x-3", children: [
68
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
69
- (props.acc * 100).toFixed(2),
70
- " %"
71
- ] }),
72
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex gap-2", children: [
73
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "space-x-1", children: props.modifiers.split(",").map((it) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: it }, it)) }),
74
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: (0, import_utils.numberWithCommas)(props.score) })
75
- ] })
76
- ] })
77
- ] }),
78
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between mt-0 px-4 -translate-x-4", children: [
79
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex gap-2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: (0, import_utils.formatDate)(
80
- (0, import_dayjs.default)(props.date * 1e3).toDate(),
81
- "YY \u5E74 MM \u6708 DD \u65E5"
82
- ) }) }) }),
83
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
84
- " ",
85
- props.pp.toFixed(2),
86
- " PP"
87
- ] }) }) })
88
- ] })
89
- ] })
90
- }
41
+ className: `${props.self ? "gradient-border" : ""} bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`
42
+ },
43
+ /* @__PURE__ */ React.createElement("div", { className: "skew-x-12 relative" }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center translate-x-2 justify-between" }, /* @__PURE__ */ React.createElement("div", { className: "flex gap-2" }, /* @__PURE__ */ React.createElement("div", { className: "w-12 h-12 relative" }, /* @__PURE__ */ React.createElement(
44
+ "img",
45
+ {
46
+ src: props.avatar,
47
+ className: "shadow-lg w-12 h-12 rounded-full object-cover"
48
+ }
49
+ ), /* @__PURE__ */ React.createElement("div", { className: "w-3 h-3 absolute bottom-0 right-3" }, /* @__PURE__ */ React.createElement(import_flag.default, { flagNationCode: props.countryCode }))), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("div", { className: "line-clamp-1 text-ellipsis max-w-[100px]" }, props.name), /* @__PURE__ */ React.createElement("span", { className: "flex items-center space-x-1" }, !props.isRegionRank && /* @__PURE__ */ React.createElement(import_flag.EarchIcon, null), /* @__PURE__ */ React.createElement("span", null, "# ", props.globalRank)))), /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-end -translate-x-2 -skew-x-3" }, /* @__PURE__ */ React.createElement("div", null, (props.acc * 100).toFixed(2), " %"), /* @__PURE__ */ React.createElement("div", { className: "flex gap-2" }, /* @__PURE__ */ React.createElement("div", { className: "space-x-1" }, props.modifiers.split(",").map((it) => /* @__PURE__ */ React.createElement("span", { key: it }, it))), /* @__PURE__ */ React.createElement("div", null, (0, import_utils.numberWithCommas)(props.score))))), /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between mt-0 px-4 -translate-x-4" }, /* @__PURE__ */ React.createElement("div", { className: "flex gap-2" }, /* @__PURE__ */ React.createElement("div", { className: "flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60" }, /* @__PURE__ */ React.createElement("div", null, (0, import_utils.formatDate)(
50
+ (0, import_dayjs.default)(props.date * 1e3).toDate(),
51
+ "YY \u5E74 MM \u6708 DD \u65E5"
52
+ )))), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("div", { className: "flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300" }, /* @__PURE__ */ React.createElement("div", null, " ", props.pp.toFixed(2), " PP")))))
91
53
  );
92
54
  }
93
55
  function ScoreItemSkeleton({ isRegionRank }) {
94
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
56
+ return /* @__PURE__ */ React.createElement(
95
57
  "div",
96
58
  {
97
- className: `bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`,
98
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "skew-x-12 relative", children: [
99
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center translate-x-2 justify-between", children: [
100
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex gap-2", children: [
101
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "w-12 h-12 relative", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
102
- "img",
103
- {
104
- src: `https://avatar.iran.liara.run/public`,
105
- className: "shadow-lg w-12 h-12 rounded-full object-cover"
106
- }
107
- ) }),
108
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
109
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "line-clamp-1 text-ellipsis max-w-[100px]", children: "\u865A\u4F4D\u4EE5\u5F85" }),
110
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: "flex items-center space-x-1", children: [
111
- !isRegionRank && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_flag.EarchIcon, {}),
112
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "# 0 " })
113
- ] })
114
- ] })
115
- ] }),
116
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col items-end -translate-x-2 -skew-x-3", children: [
117
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: "0.00 %" }),
118
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex gap-2", children: [
119
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "space-x-1", children: " " }),
120
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: "000,000" })
121
- ] })
122
- ] })
123
- ] }),
124
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between mt-0 px-4 -translate-x-4", children: [
125
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: "00 \u5E74 00 \u6708 00 \u65E5" }) }),
126
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: " 0.00 PP" }) })
127
- ] })
128
- ] })
129
- }
59
+ className: `bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`
60
+ },
61
+ /* @__PURE__ */ React.createElement("div", { className: "skew-x-12 relative" }, /* @__PURE__ */ React.createElement("div", { className: "flex items-center translate-x-2 justify-between" }, /* @__PURE__ */ React.createElement("div", { className: "flex gap-2" }, /* @__PURE__ */ React.createElement("div", { className: "w-12 h-12 relative" }, /* @__PURE__ */ React.createElement(
62
+ "img",
63
+ {
64
+ src: `https://avatar.iran.liara.run/public`,
65
+ className: "shadow-lg w-12 h-12 rounded-full object-cover"
66
+ }
67
+ )), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("div", { className: "line-clamp-1 text-ellipsis max-w-[100px]" }, "\u865A\u4F4D\u4EE5\u5F85"), /* @__PURE__ */ React.createElement("span", { className: "flex items-center space-x-1" }, !isRegionRank && /* @__PURE__ */ React.createElement(import_flag.EarchIcon, null), /* @__PURE__ */ React.createElement("span", null, "# 0 ")))), /* @__PURE__ */ React.createElement("div", { className: "flex flex-col items-end -translate-x-2 -skew-x-3" }, /* @__PURE__ */ React.createElement("div", null, "0.00 %"), /* @__PURE__ */ React.createElement("div", { className: "flex gap-2" }, /* @__PURE__ */ React.createElement("div", { className: "space-x-1" }, " "), /* @__PURE__ */ React.createElement("div", null, "000,000")))), /* @__PURE__ */ React.createElement("div", { className: "flex items-center justify-between mt-0 px-4 -translate-x-4" }, /* @__PURE__ */ React.createElement("div", { className: "flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60" }, /* @__PURE__ */ React.createElement("div", null, "00 \u5E74 00 \u6708 00 \u65E5")), /* @__PURE__ */ React.createElement("div", { className: "flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300" }, /* @__PURE__ */ React.createElement("div", null, " 0.00 PP"))))
130
68
  );
131
69
  }
132
70
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/components/bl-rank-score-item.tsx"],"sourcesContent":["import dayjs from 'dayjs'\nimport Flags, { EarchIcon } from '@/components/components/flag'\nimport { formatDate, numberWithCommas } from '@/components/utils'\n\ninterface ScoreItemProps {\n name: string\n avatar: string\n globalRank: number\n countryCode: string\n isRegionRank: boolean\n score: number\n modifiers: string\n acc: number\n pp: number\n date: number\n self: boolean\n}\nexport function BlRankScoreItem(props: ScoreItemProps) {\n return (\n <div\n className={`${props.self ? 'gradient-border' : ''} bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`}\n >\n <div className=\"skew-x-12 relative\">\n <div className=\"flex items-center translate-x-2 justify-between\">\n <div className=\"flex gap-2\">\n <div className={'w-12 h-12 relative'}>\n <img\n src={props.avatar}\n className=\"shadow-lg w-12 h-12 rounded-full object-cover\"\n />\n <div className={'w-3 h-3 absolute bottom-0 right-3'}>\n <Flags flagNationCode={props.countryCode} />\n </div>\n </div>\n <div>\n <div className={'line-clamp-1 text-ellipsis max-w-[100px]'}>\n {props.name}\n </div>\n <span className=\"flex items-center space-x-1\">\n {!props.isRegionRank && <EarchIcon />}\n <span># {props.globalRank}</span>\n </span>\n </div>\n </div>\n\n <div className=\"flex flex-col items-end -translate-x-2 -skew-x-3\">\n <div>{(props.acc * 100).toFixed(2)} %</div>\n <div className={'flex gap-2'}>\n <div className={'space-x-1'}>\n {props.modifiers.split(',').map((it) => (\n <span key={it}>{it}</span>\n ))}\n </div>\n <div>{numberWithCommas(props.score)}</div>\n </div>\n </div>\n </div>\n <div className=\"flex items-center justify-between mt-0 px-4 -translate-x-4\">\n <div className=\"flex gap-2\">\n <div className=\"flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60\">\n <div>\n {formatDate(\n dayjs(props.date * 1000).toDate(),\n 'YY 年 MM 月 DD 日'\n )}\n </div>\n </div>\n </div>\n <div>\n <div className=\"flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300\">\n <div> {props.pp.toFixed(2)} PP</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nexport function ScoreItemSkeleton({ isRegionRank }: { isRegionRank: boolean }) {\n return (\n <div\n className={`bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`}\n >\n <div className=\"skew-x-12 relative\">\n <div className=\"flex items-center translate-x-2 justify-between\">\n <div className=\"flex gap-2\">\n <div className={'w-12 h-12 relative'}>\n <img\n src={`https://avatar.iran.liara.run/public`}\n className=\"shadow-lg w-12 h-12 rounded-full object-cover\"\n />\n </div>\n <div>\n <div className={'line-clamp-1 text-ellipsis max-w-[100px]'}>\n 虚位以待\n </div>\n <span className=\"flex items-center space-x-1\">\n {!isRegionRank && <EarchIcon />}\n <span># 0 </span>\n </span>\n </div>\n </div>\n\n <div className=\"flex flex-col items-end -translate-x-2 -skew-x-3\">\n <div>0.00 %</div>\n <div className={'flex gap-2'}>\n <div className={'space-x-1'}> </div>\n <div>000,000</div>\n </div>\n </div>\n </div>\n <div className=\"flex items-center justify-between mt-0 px-4 -translate-x-4\">\n <div className=\"flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60\">\n <div>00 年 00 月 00 日</div>\n </div>\n <div className=\"flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300\">\n <div> 0.00 PP</div>\n </div>\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBY;AAzBZ,mBAAkB;AAClB,kBAAiC;AACjC,mBAA6C;AAetC,SAAS,gBAAgB,OAAuB;AACrD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,MAAM,OAAO,oBAAoB,EAAE;AAAA,MAEjD,uDAAC,SAAI,WAAU,sBACb;AAAA,qDAAC,SAAI,WAAU,mDACb;AAAA,uDAAC,SAAI,WAAU,cACb;AAAA,yDAAC,SAAI,WAAW,sBACd;AAAA;AAAA,gBAAC;AAAA;AAAA,kBACC,KAAK,MAAM;AAAA,kBACX,WAAU;AAAA;AAAA,cACZ;AAAA,cACA,4CAAC,SAAI,WAAW,qCACd,sDAAC,YAAAA,SAAA,EAAM,gBAAgB,MAAM,aAAa,GAC5C;AAAA,eACF;AAAA,YACA,6CAAC,SACC;AAAA,0DAAC,SAAI,WAAW,4CACb,gBAAM,MACT;AAAA,cACA,6CAAC,UAAK,WAAU,+BACb;AAAA,iBAAC,MAAM,gBAAgB,4CAAC,yBAAU;AAAA,gBACnC,6CAAC,UAAK;AAAA;AAAA,kBAAG,MAAM;AAAA,mBAAW;AAAA,iBAC5B;AAAA,eACF;AAAA,aACF;AAAA,UAEA,6CAAC,SAAI,WAAU,oDACb;AAAA,yDAAC,SAAM;AAAA,qBAAM,MAAM,KAAK,QAAQ,CAAC;AAAA,cAAE;AAAA,eAAE;AAAA,YACrC,6CAAC,SAAI,WAAW,cACd;AAAA,0DAAC,SAAI,WAAW,aACb,gBAAM,UAAU,MAAM,GAAG,EAAE,IAAI,CAAC,OAC/B,4CAAC,UAAe,gBAAL,EAAQ,CACpB,GACH;AAAA,cACA,4CAAC,SAAK,6CAAiB,MAAM,KAAK,GAAE;AAAA,eACtC;AAAA,aACF;AAAA,WACF;AAAA,QACA,6CAAC,SAAI,WAAU,8DACb;AAAA,sDAAC,SAAI,WAAU,cACb,sDAAC,SAAI,WAAU,sEACb,sDAAC,SACE;AAAA,gBACC,aAAAC,SAAM,MAAM,OAAO,GAAI,EAAE,OAAO;AAAA,YAChC;AAAA,UACF,GACF,GACF,GACF;AAAA,UACA,4CAAC,SACC,sDAAC,SAAI,WAAU,wFACb,uDAAC,SAAI;AAAA;AAAA,YAAE,MAAM,GAAG,QAAQ,CAAC;AAAA,YAAE;AAAA,aAAG,GAChC,GACF;AAAA,WACF;AAAA,SACF;AAAA;AAAA,EACF;AAEJ;AAEO,SAAS,kBAAkB,EAAE,aAAa,GAA8B;AAC7E,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,MAEX,uDAAC,SAAI,WAAU,sBACb;AAAA,qDAAC,SAAI,WAAU,mDACb;AAAA,uDAAC,SAAI,WAAU,cACb;AAAA,wDAAC,SAAI,WAAW,sBACd;AAAA,cAAC;AAAA;AAAA,gBACC,KAAK;AAAA,gBACL,WAAU;AAAA;AAAA,YACZ,GACF;AAAA,YACA,6CAAC,SACC;AAAA,0DAAC,SAAI,WAAW,4CAA4C,sCAE5D;AAAA,cACA,6CAAC,UAAK,WAAU,+BACb;AAAA,iBAAC,gBAAgB,4CAAC,yBAAU;AAAA,gBAC7B,4CAAC,UAAK,kBAAI;AAAA,iBACZ;AAAA,eACF;AAAA,aACF;AAAA,UAEA,6CAAC,SAAI,WAAU,oDACb;AAAA,wDAAC,SAAI,oBAAM;AAAA,YACX,6CAAC,SAAI,WAAW,cACd;AAAA,0DAAC,SAAI,WAAW,aAAa,eAAC;AAAA,cAC9B,4CAAC,SAAI,qBAAO;AAAA,eACd;AAAA,aACF;AAAA,WACF;AAAA,QACA,6CAAC,SAAI,WAAU,8DACb;AAAA,sDAAC,SAAI,WAAU,sEACb,sDAAC,SAAI,2CAAc,GACrB;AAAA,UACA,4CAAC,SAAI,WAAU,wFACb,sDAAC,SAAI,sBAAQ,GACf;AAAA,WACF;AAAA,SACF;AAAA;AAAA,EACF;AAEJ;","names":["Flags","dayjs"]}
1
+ {"version":3,"sources":["../../../../src/components/components/bl-rank-score-item.tsx"],"sourcesContent":["import dayjs from 'dayjs'\nimport Flags, { EarchIcon } from '@/components/components/flag'\nimport { formatDate, numberWithCommas } from '@/components/utils'\n\ninterface ScoreItemProps {\n name: string\n avatar: string\n globalRank: number\n countryCode: string\n isRegionRank: boolean\n score: number\n modifiers: string\n acc: number\n pp: number\n date: number\n self: boolean\n}\nexport function BlRankScoreItem(props: ScoreItemProps) {\n return (\n <div\n className={`${props.self ? 'gradient-border' : ''} bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`}\n >\n <div className=\"skew-x-12 relative\">\n <div className=\"flex items-center translate-x-2 justify-between\">\n <div className=\"flex gap-2\">\n <div className={'w-12 h-12 relative'}>\n <img\n src={props.avatar}\n className=\"shadow-lg w-12 h-12 rounded-full object-cover\"\n />\n <div className={'w-3 h-3 absolute bottom-0 right-3'}>\n <Flags flagNationCode={props.countryCode} />\n </div>\n </div>\n <div>\n <div className={'line-clamp-1 text-ellipsis max-w-[100px]'}>\n {props.name}\n </div>\n <span className=\"flex items-center space-x-1\">\n {!props.isRegionRank && <EarchIcon />}\n <span># {props.globalRank}</span>\n </span>\n </div>\n </div>\n\n <div className=\"flex flex-col items-end -translate-x-2 -skew-x-3\">\n <div>{(props.acc * 100).toFixed(2)} %</div>\n <div className={'flex gap-2'}>\n <div className={'space-x-1'}>\n {props.modifiers.split(',').map((it) => (\n <span key={it}>{it}</span>\n ))}\n </div>\n <div>{numberWithCommas(props.score)}</div>\n </div>\n </div>\n </div>\n <div className=\"flex items-center justify-between mt-0 px-4 -translate-x-4\">\n <div className=\"flex gap-2\">\n <div className=\"flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60\">\n <div>\n {formatDate(\n dayjs(props.date * 1000).toDate(),\n 'YY 年 MM 月 DD 日'\n )}\n </div>\n </div>\n </div>\n <div>\n <div className=\"flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300\">\n <div> {props.pp.toFixed(2)} PP</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nexport function ScoreItemSkeleton({ isRegionRank }: { isRegionRank: boolean }) {\n return (\n <div\n className={`bs-bg-gradient shadow-xl rounded-lg -skew-x-12 w-80 h-20 text-white font-bold flex flex-col p-1 z-10 relative max-w-[300px]`}\n >\n <div className=\"skew-x-12 relative\">\n <div className=\"flex items-center translate-x-2 justify-between\">\n <div className=\"flex gap-2\">\n <div className={'w-12 h-12 relative'}>\n <img\n src={`https://avatar.iran.liara.run/public`}\n className=\"shadow-lg w-12 h-12 rounded-full object-cover\"\n />\n </div>\n <div>\n <div className={'line-clamp-1 text-ellipsis max-w-[100px]'}>\n 虚位以待\n </div>\n <span className=\"flex items-center space-x-1\">\n {!isRegionRank && <EarchIcon />}\n <span># 0 </span>\n </span>\n </div>\n </div>\n\n <div className=\"flex flex-col items-end -translate-x-2 -skew-x-3\">\n <div>0.00 %</div>\n <div className={'flex gap-2'}>\n <div className={'space-x-1'}> </div>\n <div>000,000</div>\n </div>\n </div>\n </div>\n <div className=\"flex items-center justify-between mt-0 px-4 -translate-x-4\">\n <div className=\"flex gap-1 items-center justify-start -skew-x-2 text-xs opacity-60\">\n <div>00 年 00 月 00 日</div>\n </div>\n <div className=\"flex gap-1 items-center justify-start translate-x-6 text-xl font-bold text-green-300\">\n <div> 0.00 PP</div>\n </div>\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAClB,kBAAiC;AACjC,mBAA6C;AAetC,SAAS,gBAAgB,OAAuB;AACrD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,MAAM,OAAO,oBAAoB,EAAE;AAAA;AAAA,IAEjD,oCAAC,SAAI,WAAU,wBACb,oCAAC,SAAI,WAAU,qDACb,oCAAC,SAAI,WAAU,gBACb,oCAAC,SAAI,WAAW,wBACd;AAAA,MAAC;AAAA;AAAA,QACC,KAAK,MAAM;AAAA,QACX,WAAU;AAAA;AAAA,IACZ,GACA,oCAAC,SAAI,WAAW,uCACd,oCAAC,YAAAA,SAAA,EAAM,gBAAgB,MAAM,aAAa,CAC5C,CACF,GACA,oCAAC,aACC,oCAAC,SAAI,WAAW,8CACb,MAAM,IACT,GACA,oCAAC,UAAK,WAAU,iCACb,CAAC,MAAM,gBAAgB,oCAAC,2BAAU,GACnC,oCAAC,cAAK,MAAG,MAAM,UAAW,CAC5B,CACF,CACF,GAEA,oCAAC,SAAI,WAAU,sDACb,oCAAC,cAAM,MAAM,MAAM,KAAK,QAAQ,CAAC,GAAE,IAAE,GACrC,oCAAC,SAAI,WAAW,gBACd,oCAAC,SAAI,WAAW,eACb,MAAM,UAAU,MAAM,GAAG,EAAE,IAAI,CAAC,OAC/B,oCAAC,UAAK,KAAK,MAAK,EAAG,CACpB,CACH,GACA,oCAAC,iBAAK,+BAAiB,MAAM,KAAK,CAAE,CACtC,CACF,CACF,GACA,oCAAC,SAAI,WAAU,gEACb,oCAAC,SAAI,WAAU,gBACb,oCAAC,SAAI,WAAU,wEACb,oCAAC,iBACE;AAAA,UACC,aAAAC,SAAM,MAAM,OAAO,GAAI,EAAE,OAAO;AAAA,MAChC;AAAA,IACF,CACF,CACF,CACF,GACA,oCAAC,aACC,oCAAC,SAAI,WAAU,0FACb,oCAAC,aAAI,KAAE,MAAM,GAAG,QAAQ,CAAC,GAAE,KAAG,CAChC,CACF,CACF,CACF;AAAA,EACF;AAEJ;AAEO,SAAS,kBAAkB,EAAE,aAAa,GAA8B;AAC7E,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA;AAAA,IAEX,oCAAC,SAAI,WAAU,wBACb,oCAAC,SAAI,WAAU,qDACb,oCAAC,SAAI,WAAU,gBACb,oCAAC,SAAI,WAAW,wBACd;AAAA,MAAC;AAAA;AAAA,QACC,KAAK;AAAA,QACL,WAAU;AAAA;AAAA,IACZ,CACF,GACA,oCAAC,aACC,oCAAC,SAAI,WAAW,8CAA4C,0BAE5D,GACA,oCAAC,UAAK,WAAU,iCACb,CAAC,gBAAgB,oCAAC,2BAAU,GAC7B,oCAAC,cAAK,MAAI,CACZ,CACF,CACF,GAEA,oCAAC,SAAI,WAAU,sDACb,oCAAC,aAAI,QAAM,GACX,oCAAC,SAAI,WAAW,gBACd,oCAAC,SAAI,WAAW,eAAa,GAAC,GAC9B,oCAAC,aAAI,SAAO,CACd,CACF,CACF,GACA,oCAAC,SAAI,WAAU,gEACb,oCAAC,SAAI,WAAU,wEACb,oCAAC,aAAI,+BAAc,CACrB,GACA,oCAAC,SAAI,WAAU,0FACb,oCAAC,aAAI,UAAQ,CACf,CACF,CACF;AAAA,EACF;AAEJ;","names":["Flags","dayjs"]}
@@ -20,9 +20,8 @@ __export(bl_score_item_exports, {
20
20
  default: () => BeatLeaderItem
21
21
  });
22
22
  module.exports = __toCommonJS(bl_score_item_exports);
23
- var import_jsx_runtime = require("react/jsx-runtime");
24
23
  var import_lucide_react = require("lucide-react");
25
- var import_utils = require("../utils");
24
+ var import_utils = require("../utils/index.js");
26
25
  const getModifiers = (modifiers) => {
27
26
  return modifiers ? modifiers.split(",") : [];
28
27
  };
@@ -30,75 +29,35 @@ function BeatLeaderItem({
30
29
  item
31
30
  }) {
32
31
  var _a, _b;
33
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "relative overflow-hidden", children: [
34
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
35
- "div",
32
+ return /* @__PURE__ */ React.createElement("div", { className: "relative overflow-hidden" }, /* @__PURE__ */ React.createElement(
33
+ "div",
34
+ {
35
+ className: "rounded-lg flex bg-black/[.4] space-x-2 backdrop-blur-none"
36
+ },
37
+ /* @__PURE__ */ React.createElement(
38
+ "img",
36
39
  {
37
- className: "rounded-lg flex bg-black/[.4] space-x-2 backdrop-blur-md",
38
- children: [
39
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
40
- "img",
41
- {
42
- loading: "eager",
43
- src: item.leaderboard.song.coverImage,
44
- className: "rounded-md h-20 w-20",
45
- alt: "score item cover"
46
- }
47
- ),
48
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col space-y-1 py-0.5", children: [
49
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
50
- "div",
51
- {
52
- className: "font-semibold text-xs text-ellipsis overflow-hidden line-clamp-1 break-all",
53
- children: item.leaderboard.song.name
54
- }
55
- ),
56
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
57
- "div",
58
- {
59
- className: "text-xs flex items-center space-x-2 *:flex *:items-center *:space-x-1 ",
60
- children: [
61
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
62
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.BarChart, { className: "w-3 h-3" }) }),
63
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: (0, import_utils.diffConv)(item.leaderboard.difficulty.difficultyName) })
64
- ] }),
65
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
66
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Star, { className: "w-3 h-3" }) }),
67
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
68
- (_b = (_a = item.leaderboard.difficulty.stars) == null ? void 0 : _a.toFixed(2)) != null ? _b : "none",
69
- " "
70
- ] })
71
- ] }),
72
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
73
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Key, { className: "w-3 h-3" }) }),
74
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: item.leaderboard.song.id.toLowerCase().replaceAll("x", "") })
75
- ] })
76
- ]
77
- }
78
- ),
79
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex space-x-2 text-xs items-center", children: [
80
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
81
- (item.baseScore / item.leaderboard.difficulty.maxScore * 100).toFixed(2),
82
- "%"
83
- ] }),
84
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { className: "text-orange-200", children: [
85
- item.pp.toFixed(2),
86
- "PP"
87
- ] }),
88
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-xs opacity-70", children: (0, import_utils.formatRelativeTimeByDay)(item.timepost * 1e3) })
89
- ] }),
90
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex items-center space-x-2", children: getModifiers(item.modifiers).length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "text-xs flex flex-wrap space-x-2 items-center", children: [
91
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Wrench, { className: "h-3 w-3" }),
92
- getModifiers(item.modifiers).map((modifier) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: modifier }, modifier))
93
- ] }) })
94
- ] })
95
- ]
40
+ loading: "eager",
41
+ src: item.leaderboard.song.coverImage,
42
+ className: "rounded-md h-20 w-20",
43
+ alt: "score item cover"
96
44
  }
97
45
  ),
98
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "absolute right-1 bottom-1 text-white flex text-xs space-x-1 items-center", children: [
99
- item.fullCombo && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "from-blue-300 to-red-300 bg-gradient-to-r bg-clip-text text-transparent", children: "FC" }),
100
- item.pinned && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.Pin, { className: "rotate-45 h-3 w-3 my-auto" })
101
- ] })
102
- ] });
46
+ /* @__PURE__ */ React.createElement("div", { className: "flex flex-col space-y-1 py-0.5" }, /* @__PURE__ */ React.createElement(
47
+ "div",
48
+ {
49
+ className: "font-semibold text-xs text-ellipsis overflow-hidden line-clamp-1 break-all"
50
+ },
51
+ item.leaderboard.song.name
52
+ ), /* @__PURE__ */ React.createElement(
53
+ "div",
54
+ {
55
+ className: "text-xs flex items-center space-x-2 *:flex *:items-center *:space-x-1 "
56
+ },
57
+ /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("span", null, /* @__PURE__ */ React.createElement(import_lucide_react.BarChart, { className: "w-3 h-3" })), /* @__PURE__ */ React.createElement("span", null, (0, import_utils.diffConv)(item.leaderboard.difficulty.difficultyName))),
58
+ /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("span", null, /* @__PURE__ */ React.createElement(import_lucide_react.Star, { className: "w-3 h-3" })), /* @__PURE__ */ React.createElement("span", null, (_b = (_a = item.leaderboard.difficulty.stars) == null ? void 0 : _a.toFixed(2)) != null ? _b : "none", " ")),
59
+ /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("span", null, /* @__PURE__ */ React.createElement(import_lucide_react.Key, { className: "w-3 h-3" })), /* @__PURE__ */ React.createElement("span", null, item.leaderboard.song.id.toLowerCase().replaceAll("x", "")))
60
+ ), /* @__PURE__ */ React.createElement("div", { className: "flex space-x-2 text-xs items-center" }, /* @__PURE__ */ React.createElement("span", null, (item.baseScore / item.leaderboard.difficulty.maxScore * 100).toFixed(2), "%"), /* @__PURE__ */ React.createElement("span", { className: "text-orange-200" }, item.pp.toFixed(2), "PP"), /* @__PURE__ */ React.createElement("span", { className: "text-xs opacity-70" }, (0, import_utils.formatRelativeTimeByDay)(item.timepost * 1e3))), /* @__PURE__ */ React.createElement("div", { className: "flex items-center space-x-2" }, getModifiers(item.modifiers).length > 0 && /* @__PURE__ */ React.createElement("div", { className: "text-xs flex flex-wrap space-x-2 items-center" }, /* @__PURE__ */ React.createElement(import_lucide_react.Wrench, { className: "h-3 w-3" }), getModifiers(item.modifiers).map((modifier) => /* @__PURE__ */ React.createElement("span", { key: modifier }, modifier)))))
61
+ ), /* @__PURE__ */ React.createElement("div", { className: "absolute right-1 bottom-1 text-white flex text-xs space-x-1 items-center" }, item.fullCombo && /* @__PURE__ */ React.createElement("span", { className: "from-blue-300 to-red-300 bg-gradient-to-r bg-clip-text text-transparent" }, "FC"), item.pinned && /* @__PURE__ */ React.createElement(import_lucide_react.Pin, { className: "rotate-45 h-3 w-3 my-auto" })));
103
62
  }
104
63
  //# sourceMappingURL=bl-score-item.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/components/bl-score-item.tsx"],"sourcesContent":["import { BarChart, Key, Pin, Star, Wrench } from 'lucide-react'\nimport { diffConv, formatRelativeTimeByDay } from '../utils'\nimport {Score} from \"@/service/api/interfaces/beatleader\";\n\nconst getModifiers = (modifiers: string) => {\n return modifiers ? modifiers.split(',') : []\n}\n\nexport default function BeatLeaderItem({\n item,\n}: {\n item: Score & {\n pinned?: boolean\n }\n}) {\n return (\n <div className=\"relative overflow-hidden\">\n <div\n className={'rounded-lg flex bg-black/[.4] space-x-2 backdrop-blur-md'}\n >\n <img\n loading={'eager'}\n src={item.leaderboard.song.coverImage}\n className={'rounded-md h-20 w-20'}\n alt={'score item cover'}\n />\n <div className={'flex flex-col space-y-1 py-0.5'}>\n <div\n className={\n 'font-semibold text-xs text-ellipsis overflow-hidden line-clamp-1 break-all'\n }\n >\n {item.leaderboard.song.name}\n </div>\n <div\n className={\n 'text-xs flex items-center space-x-2 *:flex *:items-center *:space-x-1 '\n }\n >\n <div>\n <span>\n <BarChart className={'w-3 h-3'} />\n </span>\n <span>\n {diffConv(item.leaderboard.difficulty.difficultyName)}\n </span>\n </div>\n <div>\n <span>\n <Star className={'w-3 h-3'} />\n </span>\n <span>\n {item.leaderboard.difficulty.stars?.toFixed(2) ?? 'none'}{' '}\n </span>\n </div>\n <div>\n <span>\n <Key className={'w-3 h-3'} />\n </span>\n <span>\n {item.leaderboard.song.id.toLowerCase().replaceAll('x', '')}\n </span>\n </div>\n </div>\n <div className={'flex space-x-2 text-xs items-center'}>\n <span>\n {(\n (item.baseScore / item.leaderboard.difficulty.maxScore) *\n 100\n ).toFixed(2)}\n %\n </span>\n <span className={'text-orange-200'}>{item.pp.toFixed(2)}PP</span>\n <span className={'text-xs opacity-70'}>\n {formatRelativeTimeByDay(item.timepost * 1000)}\n </span>\n </div>\n <div className={'flex items-center space-x-2'}>\n {getModifiers(item.modifiers).length > 0 && (\n <div className=\"text-xs flex flex-wrap space-x-2 items-center\">\n <Wrench className=\"h-3 w-3\" />\n {getModifiers(item.modifiers).map((modifier) => (\n <span key={modifier}>{modifier}</span>\n ))}\n </div>\n )}\n </div>\n </div>\n </div>\n\n <div className=\"absolute right-1 bottom-1 text-white flex text-xs space-x-1 items-center\">\n {item.fullCombo && (\n <span className=\"from-blue-300 to-red-300 bg-gradient-to-r bg-clip-text text-transparent\">\n FC\n </span>\n )}\n {item.pinned && <Pin className=\"rotate-45 h-3 w-3 my-auto\" />}\n </div>\n </div>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBQ;AApBR,0BAAiD;AACjD,mBAAkD;AAGlD,MAAM,eAAe,CAAC,cAAsB;AAC1C,SAAO,YAAY,UAAU,MAAM,GAAG,IAAI,CAAC;AAC7C;AAEe,SAAR,eAAgC;AAAA,EACrC;AACF,GAIG;AAdH;AAeE,SACE,6CAAC,SAAI,WAAU,6BACb;AAAA;AAAA,MAAC;AAAA;AAAA,QACC,WAAW;AAAA,QAEX;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,SAAS;AAAA,cACT,KAAK,KAAK,YAAY,KAAK;AAAA,cAC3B,WAAW;AAAA,cACX,KAAK;AAAA;AAAA,UACP;AAAA,UACA,6CAAC,SAAI,WAAW,kCACd;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,WACE;AAAA,gBAGD,eAAK,YAAY,KAAK;AAAA;AAAA,YACzB;AAAA,YACA;AAAA,cAAC;AAAA;AAAA,gBACC,WACE;AAAA,gBAGF;AAAA,+DAAC,SACC;AAAA,gEAAC,UACC,sDAAC,gCAAS,WAAW,WAAW,GAClC;AAAA,oBACA,4CAAC,UACE,qCAAS,KAAK,YAAY,WAAW,cAAc,GACtD;AAAA,qBACF;AAAA,kBACA,6CAAC,SACC;AAAA,gEAAC,UACC,sDAAC,4BAAK,WAAW,WAAW,GAC9B;AAAA,oBACA,6CAAC,UACE;AAAA,uCAAK,YAAY,WAAW,UAA5B,mBAAmC,QAAQ,OAA3C,YAAiD;AAAA,sBAAQ;AAAA,uBAC5D;AAAA,qBACF;AAAA,kBACA,6CAAC,SACC;AAAA,gEAAC,UACC,sDAAC,2BAAI,WAAW,WAAW,GAC7B;AAAA,oBACA,4CAAC,UACE,eAAK,YAAY,KAAK,GAAG,YAAY,EAAE,WAAW,KAAK,EAAE,GAC5D;AAAA,qBACF;AAAA;AAAA;AAAA,YACF;AAAA,YACA,6CAAC,SAAI,WAAW,uCACd;AAAA,2DAAC,UAEI;AAAA,sBAAK,YAAY,KAAK,YAAY,WAAW,WAC9C,KACA,QAAQ,CAAC;AAAA,gBAAE;AAAA,iBAEf;AAAA,cACA,6CAAC,UAAK,WAAW,mBAAoB;AAAA,qBAAK,GAAG,QAAQ,CAAC;AAAA,gBAAE;AAAA,iBAAE;AAAA,cAC1D,4CAAC,UAAK,WAAW,sBACd,oDAAwB,KAAK,WAAW,GAAI,GAC/C;AAAA,eACF;AAAA,YACA,4CAAC,SAAI,WAAW,+BACb,uBAAa,KAAK,SAAS,EAAE,SAAS,KACrC,6CAAC,SAAI,WAAU,iDACb;AAAA,0DAAC,8BAAO,WAAU,WAAU;AAAA,cAC3B,aAAa,KAAK,SAAS,EAAE,IAAI,CAAC,aACjC,4CAAC,UAAqB,sBAAX,QAAoB,CAChC;AAAA,eACH,GAEJ;AAAA,aACF;AAAA;AAAA;AAAA,IACF;AAAA,IAEA,6CAAC,SAAI,WAAU,4EACZ;AAAA,WAAK,aACJ,4CAAC,UAAK,WAAU,2EAA0E,gBAE1F;AAAA,MAED,KAAK,UAAU,4CAAC,2BAAI,WAAU,6BAA4B;AAAA,OAC7D;AAAA,KACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/components/bl-score-item.tsx"],"sourcesContent":["import { BarChart, Key, Pin, Star, Wrench } from 'lucide-react'\nimport { diffConv, formatRelativeTimeByDay } from '../utils'\nimport {Score} from \"@/services/api/interfaces/beatleader\";\n\nconst getModifiers = (modifiers: string) => {\n return modifiers ? modifiers.split(',') : []\n}\n\nexport default function BeatLeaderItem({\n item,\n}: {\n item: Score & {\n pinned?: boolean\n }\n}) {\n return (\n <div className=\"relative overflow-hidden\">\n <div\n className={'rounded-lg flex bg-black/[.4] space-x-2 backdrop-blur-none'}\n >\n <img\n loading={'eager'}\n src={item.leaderboard.song.coverImage}\n className={'rounded-md h-20 w-20'}\n alt={'score item cover'}\n />\n <div className={'flex flex-col space-y-1 py-0.5'}>\n <div\n className={\n 'font-semibold text-xs text-ellipsis overflow-hidden line-clamp-1 break-all'\n }\n >\n {item.leaderboard.song.name}\n </div>\n <div\n className={\n 'text-xs flex items-center space-x-2 *:flex *:items-center *:space-x-1 '\n }\n >\n <div>\n <span>\n <BarChart className={'w-3 h-3'} />\n </span>\n <span>\n {diffConv(item.leaderboard.difficulty.difficultyName)}\n </span>\n </div>\n <div>\n <span>\n <Star className={'w-3 h-3'} />\n </span>\n <span>\n {item.leaderboard.difficulty.stars?.toFixed(2) ?? 'none'}{' '}\n </span>\n </div>\n <div>\n <span>\n <Key className={'w-3 h-3'} />\n </span>\n <span>\n {item.leaderboard.song.id.toLowerCase().replaceAll('x', '')}\n </span>\n </div>\n </div>\n <div className={'flex space-x-2 text-xs items-center'}>\n <span>\n {(\n (item.baseScore / item.leaderboard.difficulty.maxScore) *\n 100\n ).toFixed(2)}\n %\n </span>\n <span className={'text-orange-200'}>{item.pp.toFixed(2)}PP</span>\n <span className={'text-xs opacity-70'}>\n {formatRelativeTimeByDay(item.timepost * 1000)}\n </span>\n </div>\n <div className={'flex items-center space-x-2'}>\n {getModifiers(item.modifiers).length > 0 && (\n <div className=\"text-xs flex flex-wrap space-x-2 items-center\">\n <Wrench className=\"h-3 w-3\" />\n {getModifiers(item.modifiers).map((modifier) => (\n <span key={modifier}>{modifier}</span>\n ))}\n </div>\n )}\n </div>\n </div>\n </div>\n\n <div className=\"absolute right-1 bottom-1 text-white flex text-xs space-x-1 items-center\">\n {item.fullCombo && (\n <span className=\"from-blue-300 to-red-300 bg-gradient-to-r bg-clip-text text-transparent\">\n FC\n </span>\n )}\n {item.pinned && <Pin className=\"rotate-45 h-3 w-3 my-auto\" />}\n </div>\n </div>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAAiD;AACjD,mBAAkD;AAGlD,MAAM,eAAe,CAAC,cAAsB;AAC1C,SAAO,YAAY,UAAU,MAAM,GAAG,IAAI,CAAC;AAC7C;AAEe,SAAR,eAAgC;AAAA,EACrC;AACF,GAIG;AAdH;AAeE,SACE,oCAAC,SAAI,WAAU,+BACb;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA;AAAA,IAEX;AAAA,MAAC;AAAA;AAAA,QACC,SAAS;AAAA,QACT,KAAK,KAAK,YAAY,KAAK;AAAA,QAC3B,WAAW;AAAA,QACX,KAAK;AAAA;AAAA,IACP;AAAA,IACA,oCAAC,SAAI,WAAW,oCACd;AAAA,MAAC;AAAA;AAAA,QACC,WACE;AAAA;AAAA,MAGD,KAAK,YAAY,KAAK;AAAA,IACzB,GACA;AAAA,MAAC;AAAA;AAAA,QACC,WACE;AAAA;AAAA,MAGF,oCAAC,aACC,oCAAC,cACC,oCAAC,gCAAS,WAAW,WAAW,CAClC,GACA,oCAAC,kBACE,uBAAS,KAAK,YAAY,WAAW,cAAc,CACtD,CACF;AAAA,MACA,oCAAC,aACC,oCAAC,cACC,oCAAC,4BAAK,WAAW,WAAW,CAC9B,GACA,oCAAC,eACE,gBAAK,YAAY,WAAW,UAA5B,mBAAmC,QAAQ,OAA3C,YAAiD,QAAQ,GAC5D,CACF;AAAA,MACA,oCAAC,aACC,oCAAC,cACC,oCAAC,2BAAI,WAAW,WAAW,CAC7B,GACA,oCAAC,cACE,KAAK,YAAY,KAAK,GAAG,YAAY,EAAE,WAAW,KAAK,EAAE,CAC5D,CACF;AAAA,IACF,GACA,oCAAC,SAAI,WAAW,yCACd,oCAAC,eAEI,KAAK,YAAY,KAAK,YAAY,WAAW,WAC9C,KACA,QAAQ,CAAC,GAAE,GAEf,GACA,oCAAC,UAAK,WAAW,qBAAoB,KAAK,GAAG,QAAQ,CAAC,GAAE,IAAE,GAC1D,oCAAC,UAAK,WAAW,4BACd,sCAAwB,KAAK,WAAW,GAAI,CAC/C,CACF,GACA,oCAAC,SAAI,WAAW,iCACb,aAAa,KAAK,SAAS,EAAE,SAAS,KACrC,oCAAC,SAAI,WAAU,mDACb,oCAAC,8BAAO,WAAU,WAAU,GAC3B,aAAa,KAAK,SAAS,EAAE,IAAI,CAAC,aACjC,oCAAC,UAAK,KAAK,YAAW,QAAS,CAChC,CACH,CAEJ,CACF;AAAA,EACF,GAEA,oCAAC,SAAI,WAAU,8EACZ,KAAK,aACJ,oCAAC,UAAK,WAAU,6EAA0E,IAE1F,GAED,KAAK,UAAU,oCAAC,2BAAI,WAAU,6BAA4B,CAC7D,CACF;AAEJ;","names":[]}