beatsaber-bot-core 0.2.0-rc.9 → 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
@@ -57,9 +57,9 @@ __export(beatsaver_exports, {
57
57
  beatsaver: () => beatsaver
58
58
  });
59
59
  module.exports = __toCommonJS(beatsaver_exports);
60
- var import_errors = require("../../infra/errors");
60
+ var import_errors = require("../../services/errors/index.js");
61
61
  const beatsaver = (c) => __async(null, null, function* () {
62
- const { bsMapSub } = yield c.services.db.getSubscriptionsByGID(c.session.g.id);
62
+ const { bsMapSub } = yield c.services.db.getSubscriptionsByGID(c.session.channel.id);
63
63
  if (bsMapSub) {
64
64
  if (bsMapSub.enable) {
65
65
  throw new import_errors.SubscriptionExistError();
@@ -72,7 +72,7 @@ const beatsaver = (c) => __async(null, null, function* () {
72
72
  return;
73
73
  }
74
74
  const data = {
75
- gid: c.session.g.id,
75
+ gid: c.session.channel.id,
76
76
  type: "beatsaver-map",
77
77
  time: /* @__PURE__ */ new Date(),
78
78
  enable: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cmd/subscribe/beatsaver.ts"],"sourcesContent":["import { CmdContext } from '@/interface'\nimport { SubscriptionExistError } from '@/infra/errors'\nexport const beatsaver = async <T, C>(c: CmdContext<T, C>) => {\n const { bsMapSub } = await c.services.db.getSubscriptionsByGID(c.session.g.id)\n if (bsMapSub) {\n if (bsMapSub.enable) {\n throw new SubscriptionExistError()\n }\n const data = { ...bsMapSub, enable: true }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver.success')\n )\n return\n }\n const data = {\n gid: c.session.g.id,\n type: 'beatsaver-map',\n time: new Date(),\n enable: true,\n data: {},\n }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver.success')\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAAuC;AAChC,MAAM,YAAY,CAAa,MAAwB;AAC5D,QAAM,EAAE,SAAS,IAAI,MAAM,EAAE,SAAS,GAAG,sBAAsB,EAAE,QAAQ,EAAE,EAAE;AAC7E,MAAI,UAAU;AACZ,QAAI,SAAS,QAAQ;AACnB,YAAM,IAAI,qCAAuB;AAAA,IACnC;AACA,UAAMA,QAAO,iCAAK,WAAL,EAAe,QAAQ,KAAK;AACzC,UAAM,EAAE,SAAS,GAAG,mBAAmBA,KAAI;AAC3C,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,4CAA4C;AAAA,IAC7D;AACA;AAAA,EACF;AACA,QAAM,OAAO;AAAA,IACX,KAAK,EAAE,QAAQ,EAAE;AAAA,IACjB,MAAM;AAAA,IACN,MAAM,oBAAI,KAAK;AAAA,IACf,QAAQ;AAAA,IACR,MAAM,CAAC;AAAA,EACT;AACA,QAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,QAAM,EAAE,QAAQ;AAAA,IACd,EAAE,QAAQ,KAAK,4CAA4C;AAAA,EAC7D;AACF;","names":["data"]}
1
+ {"version":3,"sources":["../../../../src/cmd/subscribe/beatsaver.ts"],"sourcesContent":["import { CmdContext } from '@/interface'\nimport { SubscriptionExistError } from '@/services/errors'\nexport const beatsaver = async (c: CmdContext) => {\n const { bsMapSub } = await c.services.db.getSubscriptionsByGID(c.session.channel.id)\n if (bsMapSub) {\n if (bsMapSub.enable) {\n throw new SubscriptionExistError()\n }\n const data = { ...bsMapSub, enable: true }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver.success')\n )\n return\n }\n const data = {\n gid: c.session.channel.id,\n type: 'beatsaver-map',\n time: new Date(),\n enable: true,\n data: {},\n }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver.success')\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAAuC;AAChC,MAAM,YAAY,CAAO,MAAkB;AAChD,QAAM,EAAE,SAAS,IAAI,MAAM,EAAE,SAAS,GAAG,sBAAsB,EAAE,QAAQ,QAAQ,EAAE;AACnF,MAAI,UAAU;AACZ,QAAI,SAAS,QAAQ;AACnB,YAAM,IAAI,qCAAuB;AAAA,IACnC;AACA,UAAMA,QAAO,iCAAK,WAAL,EAAe,QAAQ,KAAK;AACzC,UAAM,EAAE,SAAS,GAAG,mBAAmBA,KAAI;AAC3C,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,4CAA4C;AAAA,IAC7D;AACA;AAAA,EACF;AACA,QAAM,OAAO;AAAA,IACX,KAAK,EAAE,QAAQ,QAAQ;AAAA,IACvB,MAAM;AAAA,IACN,MAAM,oBAAI,KAAK;AAAA,IACf,QAAQ;AAAA,IACR,MAAM,CAAC;AAAA,EACT;AACA,QAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,QAAM,EAAE,QAAQ;AAAA,IACd,EAAE,QAAQ,KAAK,4CAA4C;AAAA,EAC7D;AACF;","names":["data"]}
@@ -57,7 +57,7 @@ __export(id_beatleader_score_exports, {
57
57
  idBeatleaderScore: () => idBeatleaderScore
58
58
  });
59
59
  module.exports = __toCommonJS(id_beatleader_score_exports);
60
- var import_errors = require("../../infra/errors");
60
+ var import_errors = require("../../services/errors/index.js");
61
61
  const idBeatleaderScore = (c) => __async(null, null, function* () {
62
62
  if (!c.input) {
63
63
  return;
@@ -66,8 +66,8 @@ const idBeatleaderScore = (c) => __async(null, null, function* () {
66
66
  if (!bluser) {
67
67
  throw new import_errors.BLIDNotFoundError({ accountId: c.input });
68
68
  }
69
- const subscribes = yield c.services.db.getIDSubscriptionByGIDAndType(
70
- c.session.g.id,
69
+ const subscribes = yield c.services.db.getIDSubscriptionByChannelIDAndType(
70
+ c.session.channel.id,
71
71
  "id-beatleader-score"
72
72
  );
73
73
  const it = subscribes.find((it2) => {
@@ -88,7 +88,7 @@ const idBeatleaderScore = (c) => __async(null, null, function* () {
88
88
  return;
89
89
  }
90
90
  const data = {
91
- gid: c.session.g.id,
91
+ gid: c.session.channel.id,
92
92
  type: "id-beatsaver-map",
93
93
  time: /* @__PURE__ */ new Date(),
94
94
  enable: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cmd/subscribe/id-beatleader-score.ts"],"sourcesContent":["import { CmdContext } from '@/interface'\nimport { BLIDNotFoundError, SubscriptionExistError } from '@/infra/errors'\n\nexport const idBeatleaderScore = async <T, C>(c: CmdContext<T, C>) => {\n if (!c.input) {\n return\n }\n const bluser = await c.services.api.BeatLeader.getPlayerInfo(c.input)\n if (!bluser) {\n throw new BLIDNotFoundError({ accountId: c.input })\n }\n\n const subscribes = await c.services.db.getIDSubscriptionByGIDAndType(\n c.session.g.id,\n 'id-beatleader-score'\n )\n const it = subscribes.find((it) => it.data?.playerId === bluser.id)\n if (it) {\n if (it.enable) {\n throw new SubscriptionExistError()\n }\n\n const data = { ...it, enable: true }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver-mapper.success', {\n name: bluser.name,\n })\n )\n return\n }\n const data = {\n gid: c.session.g.id,\n type: 'id-beatsaver-map',\n time: new Date(),\n enable: true,\n data: {\n playerId: bluser.id,\n },\n }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver-mapper.success', {\n name: bluser.name,\n })\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA0D;AAEnD,MAAM,oBAAoB,CAAa,MAAwB;AACpE,MAAI,CAAC,EAAE,OAAO;AACZ;AAAA,EACF;AACA,QAAM,SAAS,MAAM,EAAE,SAAS,IAAI,WAAW,cAAc,EAAE,KAAK;AACpE,MAAI,CAAC,QAAQ;AACX,UAAM,IAAI,gCAAkB,EAAE,WAAW,EAAE,MAAM,CAAC;AAAA,EACpD;AAEA,QAAM,aAAa,MAAM,EAAE,SAAS,GAAG;AAAA,IACrC,EAAE,QAAQ,EAAE;AAAA,IACZ;AAAA,EACF;AACA,QAAM,KAAK,WAAW,KAAK,CAACA,QAAI;AAhBlC;AAgBqC,kBAAAA,IAAG,SAAH,mBAAS,cAAa,OAAO;AAAA,GAAE;AAClE,MAAI,IAAI;AACN,QAAI,GAAG,QAAQ;AACb,YAAM,IAAI,qCAAuB;AAAA,IACnC;AAEA,UAAMC,QAAO,iCAAK,KAAL,EAAS,QAAQ,KAAK;AACnC,UAAM,EAAE,SAAS,GAAG,mBAAmBA,KAAI;AAC3C,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,qDAAqD;AAAA,QAClE,MAAM,OAAO;AAAA,MACf,CAAC;AAAA,IACH;AACA;AAAA,EACF;AACA,QAAM,OAAO;AAAA,IACX,KAAK,EAAE,QAAQ,EAAE;AAAA,IACjB,MAAM;AAAA,IACN,MAAM,oBAAI,KAAK;AAAA,IACf,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,UAAU,OAAO;AAAA,IACnB;AAAA,EACF;AACA,QAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,QAAM,EAAE,QAAQ;AAAA,IACd,EAAE,QAAQ,KAAK,qDAAqD;AAAA,MAClE,MAAM,OAAO;AAAA,IACf,CAAC;AAAA,EACH;AACF;","names":["it","data"]}
1
+ {"version":3,"sources":["../../../../src/cmd/subscribe/id-beatleader-score.ts"],"sourcesContent":["import { CmdContext } from '@/interface'\nimport { BLIDNotFoundError, SubscriptionExistError } from '@/services/errors'\n\nexport const idBeatleaderScore = async (c: CmdContext) => {\n if (!c.input) {\n return\n }\n const bluser = await c.services.api.BeatLeader.getPlayerInfo(c.input)\n if (!bluser) {\n throw new BLIDNotFoundError({ accountId: c.input })\n }\n\n const subscribes = await c.services.db.getIDSubscriptionByChannelIDAndType(\n c.session.channel.id,\n 'id-beatleader-score'\n )\n const it = subscribes.find((it) => it.data?.playerId === bluser.id)\n if (it) {\n if (it.enable) {\n throw new SubscriptionExistError()\n }\n\n const data = { ...it, enable: true }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver-mapper.success', {\n name: bluser.name,\n })\n )\n return\n }\n const data = {\n gid: c.session.channel.id,\n type: 'id-beatsaver-map',\n time: new Date(),\n enable: true,\n data: {\n playerId: bluser.id,\n },\n }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver-mapper.success', {\n name: bluser.name,\n })\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA0D;AAEnD,MAAM,oBAAoB,CAAO,MAAkB;AACxD,MAAI,CAAC,EAAE,OAAO;AACZ;AAAA,EACF;AACA,QAAM,SAAS,MAAM,EAAE,SAAS,IAAI,WAAW,cAAc,EAAE,KAAK;AACpE,MAAI,CAAC,QAAQ;AACX,UAAM,IAAI,gCAAkB,EAAE,WAAW,EAAE,MAAM,CAAC;AAAA,EACpD;AAEA,QAAM,aAAa,MAAM,EAAE,SAAS,GAAG;AAAA,IACrC,EAAE,QAAQ,QAAQ;AAAA,IAClB;AAAA,EACF;AACA,QAAM,KAAK,WAAW,KAAK,CAACA,QAAI;AAhBlC;AAgBqC,kBAAAA,IAAG,SAAH,mBAAS,cAAa,OAAO;AAAA,GAAE;AAClE,MAAI,IAAI;AACN,QAAI,GAAG,QAAQ;AACb,YAAM,IAAI,qCAAuB;AAAA,IACnC;AAEA,UAAMC,QAAO,iCAAK,KAAL,EAAS,QAAQ,KAAK;AACnC,UAAM,EAAE,SAAS,GAAG,mBAAmBA,KAAI;AAC3C,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,qDAAqD;AAAA,QAClE,MAAM,OAAO;AAAA,MACf,CAAC;AAAA,IACH;AACA;AAAA,EACF;AACA,QAAM,OAAO;AAAA,IACX,KAAK,EAAE,QAAQ,QAAQ;AAAA,IACvB,MAAM;AAAA,IACN,MAAM,oBAAI,KAAK;AAAA,IACf,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,UAAU,OAAO;AAAA,IACnB;AAAA,EACF;AACA,QAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,QAAM,EAAE,QAAQ;AAAA,IACd,EAAE,QAAQ,KAAK,qDAAqD;AAAA,MAClE,MAAM,OAAO;AAAA,IACf,CAAC;AAAA,EACH;AACF;","names":["it","data"]}
@@ -57,7 +57,7 @@ __export(id_beatsaver_mapper_exports, {
57
57
  idBeatsaverMapper: () => idBeatsaverMapper
58
58
  });
59
59
  module.exports = __toCommonJS(id_beatsaver_mapper_exports);
60
- var import_errors = require("../../infra/errors");
60
+ var import_errors = require("../../services/errors/index.js");
61
61
  const idBeatsaverMapper = (c) => __async(null, null, function* () {
62
62
  if (!c.input) {
63
63
  return;
@@ -66,8 +66,8 @@ const idBeatsaverMapper = (c) => __async(null, null, function* () {
66
66
  if (!mapper) {
67
67
  throw new import_errors.BSIDNotFoundError({ accountId: c.input });
68
68
  }
69
- const subscribes = yield c.services.db.getIDSubscriptionByGIDAndType(
70
- c.session.g.id,
69
+ const subscribes = yield c.services.db.getIDSubscriptionByChannelIDAndType(
70
+ c.session.channel.id,
71
71
  "id-beatsaver-map"
72
72
  );
73
73
  const it = subscribes.find((it2) => {
@@ -88,7 +88,7 @@ const idBeatsaverMapper = (c) => __async(null, null, function* () {
88
88
  return;
89
89
  }
90
90
  const data = {
91
- gid: c.session.g.id,
91
+ gid: c.session.channel.id,
92
92
  type: "id-beatsaver-map",
93
93
  time: /* @__PURE__ */ new Date(),
94
94
  enable: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cmd/subscribe/id-beatsaver-mapper.ts"],"sourcesContent":["import { CmdContext } from '@/interface'\nimport { BSIDNotFoundError, SubscriptionExistError } from '@/infra/errors'\nexport const idBeatsaverMapper = async <T, C>(c: CmdContext<T, C>) => {\n if (!c.input) {\n return\n }\n const mapper = await c.services.api.BeatSaver.getBSMapperById(c.input)\n if (!mapper) {\n throw new BSIDNotFoundError({ accountId: c.input })\n }\n const subscribes = await c.services.db.getIDSubscriptionByGIDAndType(\n c.session.g.id,\n 'id-beatsaver-map'\n )\n const it = subscribes.find((it) => it.data?.mapperId === mapper.id)\n if (it) {\n if (it.enable) {\n throw new SubscriptionExistError()\n }\n\n const data = { ...it, enable: true }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver-mapper.success', {\n name: mapper.name,\n })\n )\n return\n }\n const data = {\n gid: c.session.g.id,\n type: 'id-beatsaver-map',\n time: new Date(),\n enable: true,\n data: {\n mapperId: mapper.id,\n mapperName: mapper.name,\n },\n }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver-mapper.success', {\n name: mapper.name,\n })\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA0D;AACnD,MAAM,oBAAoB,CAAa,MAAwB;AACpE,MAAI,CAAC,EAAE,OAAO;AACZ;AAAA,EACF;AACA,QAAM,SAAS,MAAM,EAAE,SAAS,IAAI,UAAU,gBAAgB,EAAE,KAAK;AACrE,MAAI,CAAC,QAAQ;AACX,UAAM,IAAI,gCAAkB,EAAE,WAAW,EAAE,MAAM,CAAC;AAAA,EACpD;AACA,QAAM,aAAa,MAAM,EAAE,SAAS,GAAG;AAAA,IACrC,EAAE,QAAQ,EAAE;AAAA,IACZ;AAAA,EACF;AACA,QAAM,KAAK,WAAW,KAAK,CAACA,QAAI;AAdlC;AAcqC,kBAAAA,IAAG,SAAH,mBAAS,cAAa,OAAO;AAAA,GAAE;AAClE,MAAI,IAAI;AACN,QAAI,GAAG,QAAQ;AACb,YAAM,IAAI,qCAAuB;AAAA,IACnC;AAEA,UAAMC,QAAO,iCAAK,KAAL,EAAS,QAAQ,KAAK;AACnC,UAAM,EAAE,SAAS,GAAG,mBAAmBA,KAAI;AAC3C,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,qDAAqD;AAAA,QAClE,MAAM,OAAO;AAAA,MACf,CAAC;AAAA,IACH;AACA;AAAA,EACF;AACA,QAAM,OAAO;AAAA,IACX,KAAK,EAAE,QAAQ,EAAE;AAAA,IACjB,MAAM;AAAA,IACN,MAAM,oBAAI,KAAK;AAAA,IACf,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,UAAU,OAAO;AAAA,MACjB,YAAY,OAAO;AAAA,IACrB;AAAA,EACF;AACA,QAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,QAAM,EAAE,QAAQ;AAAA,IACd,EAAE,QAAQ,KAAK,qDAAqD;AAAA,MAClE,MAAM,OAAO;AAAA,IACf,CAAC;AAAA,EACH;AACF;","names":["it","data"]}
1
+ {"version":3,"sources":["../../../../src/cmd/subscribe/id-beatsaver-mapper.ts"],"sourcesContent":["import { CmdContext } from '@/interface'\nimport { BSIDNotFoundError, SubscriptionExistError } from '@/services/errors'\nexport const idBeatsaverMapper = async (c: CmdContext) => {\n if (!c.input) {\n return\n }\n const mapper = await c.services.api.BeatSaver.getBSMapperById(c.input)\n if (!mapper) {\n throw new BSIDNotFoundError({ accountId: c.input })\n }\n const subscribes = await c.services.db.getIDSubscriptionByChannelIDAndType(\n c.session.channel.id,\n 'id-beatsaver-map'\n )\n const it = subscribes.find((it) => it.data?.mapperId === mapper.id)\n if (it) {\n if (it.enable) {\n throw new SubscriptionExistError()\n }\n\n const data = { ...it, enable: true }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver-mapper.success', {\n name: mapper.name,\n })\n )\n return\n }\n const data = {\n gid: c.session.channel.id,\n type: 'id-beatsaver-map',\n time: new Date(),\n enable: true,\n data: {\n mapperId: mapper.id,\n mapperName: mapper.name,\n },\n }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.beatsaver-mapper.success', {\n name: mapper.name,\n })\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA0D;AACnD,MAAM,oBAAoB,CAAO,MAAkB;AACxD,MAAI,CAAC,EAAE,OAAO;AACZ;AAAA,EACF;AACA,QAAM,SAAS,MAAM,EAAE,SAAS,IAAI,UAAU,gBAAgB,EAAE,KAAK;AACrE,MAAI,CAAC,QAAQ;AACX,UAAM,IAAI,gCAAkB,EAAE,WAAW,EAAE,MAAM,CAAC;AAAA,EACpD;AACA,QAAM,aAAa,MAAM,EAAE,SAAS,GAAG;AAAA,IACrC,EAAE,QAAQ,QAAQ;AAAA,IAClB;AAAA,EACF;AACA,QAAM,KAAK,WAAW,KAAK,CAACA,QAAI;AAdlC;AAcqC,kBAAAA,IAAG,SAAH,mBAAS,cAAa,OAAO;AAAA,GAAE;AAClE,MAAI,IAAI;AACN,QAAI,GAAG,QAAQ;AACb,YAAM,IAAI,qCAAuB;AAAA,IACnC;AAEA,UAAMC,QAAO,iCAAK,KAAL,EAAS,QAAQ,KAAK;AACnC,UAAM,EAAE,SAAS,GAAG,mBAAmBA,KAAI;AAC3C,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,qDAAqD;AAAA,QAClE,MAAM,OAAO;AAAA,MACf,CAAC;AAAA,IACH;AACA;AAAA,EACF;AACA,QAAM,OAAO;AAAA,IACX,KAAK,EAAE,QAAQ,QAAQ;AAAA,IACvB,MAAM;AAAA,IACN,MAAM,oBAAI,KAAK;AAAA,IACf,QAAQ;AAAA,IACR,MAAM;AAAA,MACJ,UAAU,OAAO;AAAA,MACjB,YAAY,OAAO;AAAA,IACrB;AAAA,EACF;AACA,QAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,QAAM,EAAE,QAAQ;AAAA,IACd,EAAE,QAAQ,KAAK,qDAAqD;AAAA,MAClE,MAAM,OAAO;AAAA,IACf,CAAC;AAAA,EACH;AACF;","names":["it","data"]}
@@ -40,12 +40,12 @@ __export(subscribe_exports, {
40
40
  default: () => subscribe_default
41
41
  });
42
42
  module.exports = __toCommonJS(subscribe_exports);
43
- var import_builder = require("../../interface/cmd/builder");
44
- var import_beatleader = require("../../cmd/subscribe/beatleader");
45
- var import_beatsaver = require("../../cmd/subscribe/beatsaver");
46
- var import_errors = require("../../infra/errors");
47
- var import_id_beatsaver_mapper = require("../../cmd/subscribe/id-beatsaver-mapper");
48
- var subscribe_default = () => new import_builder.CommandBuilder().setName("subscribe").addAlias("bbsub").addAlias("/subbl", { options: { type: "beatleader" } }).addAlias("/subbs", { options: { type: "beatsaver" } }).addAlias("blsub", { options: { type: "beatleader" } }).addAlias("bssub", { options: { type: "beatsaver" } }).addAlias("subbl", { options: { type: "beatleader" } }).addAlias("subbs", { options: { type: "beatsaver" } }).addAlias("subbl", { options: { type: "beatleader" } }).addAlias("submapper", { options: { type: "bsmapper" } }).addOption("type", "type:string").setDescription("clear an auth account relate info").setExecutor((c) => __async(null, null, function* () {
43
+ var import_interface = require("../../interface/index.js");
44
+ var import_beatleader = require("./beatleader.js");
45
+ var import_beatsaver = require("./beatsaver.js");
46
+ var import_errors = require("../../services/errors/index.js");
47
+ var import_id_beatsaver_mapper = require("./id-beatsaver-mapper.js");
48
+ var subscribe_default = () => new import_interface.CommandBuilder().setName("subscribe").addAlias("bbsub").addAlias("/subbl", { options: { type: "beatleader" } }).addAlias("/subbs", { options: { type: "beatsaver" } }).addAlias("blsub", { options: { type: "beatleader" } }).addAlias("bssub", { options: { type: "beatsaver" } }).addAlias("subbl", { options: { type: "beatleader" } }).addAlias("subbs", { options: { type: "beatsaver" } }).addAlias("subbl", { options: { type: "beatleader" } }).addAlias("submapper", { options: { type: "bsmapper" } }).addOption("type", "type:string").setDescription("clear an auth account relate info").setExecutor((c) => __async(null, null, function* () {
49
49
  var _a, _b;
50
50
  if (c.options.type === "beatsaver") {
51
51
  if (c.input) return (0, import_id_beatsaver_mapper.idBeatsaverMapper)(c);
@@ -55,8 +55,8 @@ var subscribe_default = () => new import_builder.CommandBuilder().setName("subsc
55
55
  return (0, import_beatleader.beatleader)(c);
56
56
  }
57
57
  const rows = yield c.services.db.getSubscriptionInfoByUGID(
58
- c.session.g.id,
59
- c.session.u.id
58
+ c.session.channel.id,
59
+ c.session.user.id
60
60
  );
61
61
  if (rows.length < 1) {
62
62
  throw new import_errors.NoneSubscriptionExistError();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cmd/subscribe/index.ts"],"sourcesContent":["import {CommandBuilder} from \"@/interface/cmd/builder\";\nimport { beatleader } from '@/cmd/subscribe/beatleader'\nimport { beatsaver } from '@/cmd/subscribe/beatsaver'\nimport { NoneSubscriptionExistError } from '@/infra/errors'\nimport { idBeatsaverMapper } from '@/cmd/subscribe/id-beatsaver-mapper'\n\nexport default () =>\n new CommandBuilder()\n .setName('subscribe')\n .addAlias('bbsub')\n .addAlias('/subbl', { options: { type: 'beatleader' } })\n .addAlias('/subbs', { options: { type: 'beatsaver' } })\n .addAlias('blsub', { options: { type: 'beatleader' } })\n .addAlias('bssub', { options: { type: 'beatsaver' } })\n .addAlias('subbl', { options: { type: 'beatleader' } })\n .addAlias('subbs', { options: { type: 'beatsaver' } })\n .addAlias('subbl', { options: { type: 'beatleader' } })\n .addAlias('submapper', { options: { type: 'bsmapper' } })\n .addOption('type', 'type:string')\n .setDescription('clear an auth account relate info')\n .setExecutor(async (c) => {\n // check admin permission\n // if (options.type === 'beatsaver-alert') {\n // return alert(c)\n // }\n\n if (c.options.type === 'beatsaver') {\n if (c.input) return idBeatsaverMapper(c)\n return beatsaver(c)\n }\n\n if (c.options.type === 'beatleader') {\n return beatleader(c)\n }\n\n // return subscription info\n const rows = await c.services.db.getSubscriptionInfoByUGID(\n c.session.g.id,\n c.session.u.id\n )\n\n if (rows.length < 1) {\n throw new NoneSubscriptionExistError()\n }\n let text = c.session.text('commands.bsbot.subscribe.info.header') + '\\n'\n for (const row of rows) {\n if (row.subscribe.type.startsWith('group')) {\n text += c.session.text(\n 'commands.bsbot.subscribe.info.group-body-item',\n {\n type:\n row.subscribe.type +\n `(${row.subscribe.data?.mapperName} ${row.subscribe.data?.mapperId})`,\n }\n )\n } else {\n text += c.session.text('commands.bsbot.subscribe.info.body-item', {\n type: row.subscribe.type,\n cnt: row.memberCount,\n enable: row.subscribe.enable,\n })\n if (row.me) {\n text += c.session.text(\n 'commands.bsbot.subscribe.info.body-item-include-you'\n )\n }\n }\n\n text += '\\n\\n'\n }\n await c.session.sendQuote(text)\n })\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA6B;AAC7B,wBAA2B;AAC3B,uBAA0B;AAC1B,oBAA2C;AAC3C,iCAAkC;AAElC,IAAO,oBAAQ,MACb,IAAI,8BAAe,EAChB,QAAQ,WAAW,EACnB,SAAS,OAAO,EAChB,SAAS,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACtD,SAAS,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACrD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACrD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACpD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACrD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACpD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACrD,SAAS,aAAa,EAAE,SAAS,EAAE,MAAM,WAAW,EAAE,CAAC,EACvD,UAAU,QAAQ,aAAa,EAC/B,eAAe,mCAAmC,EAClD,YAAY,CAAO,MAAM;AApB9B;AA0BM,MAAI,EAAE,QAAQ,SAAS,aAAa;AAClC,QAAI,EAAE,MAAO,YAAO,8CAAkB,CAAC;AACvC,eAAO,4BAAU,CAAC;AAAA,EACpB;AAEA,MAAI,EAAE,QAAQ,SAAS,cAAc;AACnC,eAAO,8BAAW,CAAC;AAAA,EACrB;AAGA,QAAM,OAAO,MAAM,EAAE,SAAS,GAAG;AAAA,IAC/B,EAAE,QAAQ,EAAE;AAAA,IACZ,EAAE,QAAQ,EAAE;AAAA,EACd;AAEA,MAAI,KAAK,SAAS,GAAG;AACnB,UAAM,IAAI,yCAA2B;AAAA,EACvC;AACA,MAAI,OAAO,EAAE,QAAQ,KAAK,sCAAsC,IAAI;AACpE,aAAW,OAAO,MAAM;AACtB,QAAI,IAAI,UAAU,KAAK,WAAW,OAAO,GAAG;AAC1C,cAAQ,EAAE,QAAQ;AAAA,QAChB;AAAA,QACA;AAAA,UACE,MACE,IAAI,UAAU,OACd,KAAI,SAAI,UAAU,SAAd,mBAAoB,UAAU,KAAI,SAAI,UAAU,SAAd,mBAAoB,QAAQ;AAAA,QACtE;AAAA,MACF;AAAA,IACF,OAAO;AACL,cAAQ,EAAE,QAAQ,KAAK,2CAA2C;AAAA,QAChE,MAAM,IAAI,UAAU;AAAA,QACpB,KAAK,IAAI;AAAA,QACT,QAAQ,IAAI,UAAU;AAAA,MACxB,CAAC;AACD,UAAI,IAAI,IAAI;AACV,gBAAQ,EAAE,QAAQ;AAAA,UAChB;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,YAAQ;AAAA,EACV;AACA,QAAM,EAAE,QAAQ,UAAU,IAAI;AAChC,EAAC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/cmd/subscribe/index.ts"],"sourcesContent":["import {CommandBuilder} from \"@/interface\";\nimport { beatleader } from './beatleader'\nimport { beatsaver } from './beatsaver'\nimport { NoneSubscriptionExistError } from '@/services/errors'\nimport { idBeatsaverMapper } from './id-beatsaver-mapper'\n\nexport default () =>\n new CommandBuilder()\n .setName('subscribe')\n .addAlias('bbsub')\n .addAlias('/subbl', { options: { type: 'beatleader' } })\n .addAlias('/subbs', { options: { type: 'beatsaver' } })\n .addAlias('blsub', { options: { type: 'beatleader' } })\n .addAlias('bssub', { options: { type: 'beatsaver' } })\n .addAlias('subbl', { options: { type: 'beatleader' } })\n .addAlias('subbs', { options: { type: 'beatsaver' } })\n .addAlias('subbl', { options: { type: 'beatleader' } })\n .addAlias('submapper', { options: { type: 'bsmapper' } })\n .addOption('type', 'type:string')\n .setDescription('clear an auth account relate info')\n .setExecutor(async (c) => {\n // check admin permission\n // if (options.type === 'beatsaver-alert') {\n // return alert(c)\n // }\n\n if (c.options.type === 'beatsaver') {\n if (c.input) return idBeatsaverMapper(c)\n return beatsaver(c)\n }\n\n if (c.options.type === 'beatleader') {\n return beatleader(c)\n }\n\n // return subscription info\n const rows = await c.services.db.getSubscriptionInfoByUGID(\n c.session.channel.id,\n c.session.user.id\n )\n\n if (rows.length < 1) {\n throw new NoneSubscriptionExistError()\n }\n let text = c.session.text('commands.bsbot.subscribe.info.header') + '\\n'\n for (const row of rows) {\n if (row.subscribe.type.startsWith('group')) {\n text += c.session.text(\n 'commands.bsbot.subscribe.info.group-body-item',\n {\n type:\n row.subscribe.type +\n `(${row.subscribe.data?.mapperName} ${row.subscribe.data?.mapperId})`,\n }\n )\n } else {\n text += c.session.text('commands.bsbot.subscribe.info.body-item', {\n type: row.subscribe.type,\n cnt: row.memberCount,\n enable: row.subscribe.enable,\n })\n if (row.me) {\n text += c.session.text(\n 'commands.bsbot.subscribe.info.body-item-include-you'\n )\n }\n }\n\n text += '\\n\\n'\n }\n await c.session.sendQuote(text)\n })\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA6B;AAC7B,wBAA2B;AAC3B,uBAA0B;AAC1B,oBAA2C;AAC3C,iCAAkC;AAElC,IAAO,oBAAQ,MACb,IAAI,gCAAe,EAChB,QAAQ,WAAW,EACnB,SAAS,OAAO,EAChB,SAAS,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACtD,SAAS,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACrD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACrD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACpD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACrD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACpD,SAAS,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACrD,SAAS,aAAa,EAAE,SAAS,EAAE,MAAM,WAAW,EAAE,CAAC,EACvD,UAAU,QAAQ,aAAa,EAC/B,eAAe,mCAAmC,EAClD,YAAY,CAAO,MAAM;AApB9B;AA0BM,MAAI,EAAE,QAAQ,SAAS,aAAa;AAClC,QAAI,EAAE,MAAO,YAAO,8CAAkB,CAAC;AACvC,eAAO,4BAAU,CAAC;AAAA,EACpB;AAEA,MAAI,EAAE,QAAQ,SAAS,cAAc;AACnC,eAAO,8BAAW,CAAC;AAAA,EACrB;AAGA,QAAM,OAAO,MAAM,EAAE,SAAS,GAAG;AAAA,IAC/B,EAAE,QAAQ,QAAQ;AAAA,IAClB,EAAE,QAAQ,KAAK;AAAA,EACjB;AAEA,MAAI,KAAK,SAAS,GAAG;AACnB,UAAM,IAAI,yCAA2B;AAAA,EACvC;AACA,MAAI,OAAO,EAAE,QAAQ,KAAK,sCAAsC,IAAI;AACpE,aAAW,OAAO,MAAM;AACtB,QAAI,IAAI,UAAU,KAAK,WAAW,OAAO,GAAG;AAC1C,cAAQ,EAAE,QAAQ;AAAA,QAChB;AAAA,QACA;AAAA,UACE,MACE,IAAI,UAAU,OACd,KAAI,SAAI,UAAU,SAAd,mBAAoB,UAAU,KAAI,SAAI,UAAU,SAAd,mBAAoB,QAAQ;AAAA,QACtE;AAAA,MACF;AAAA,IACF,OAAO;AACL,cAAQ,EAAE,QAAQ,KAAK,2CAA2C;AAAA,QAChE,MAAM,IAAI,UAAU;AAAA,QACpB,KAAK,IAAI;AAAA,QACT,QAAQ,IAAI,UAAU;AAAA,MACxB,CAAC;AACD,UAAI,IAAI,IAAI;AACV,gBAAQ,EAAE,QAAQ;AAAA,UAChB;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,YAAQ;AAAA,EACV;AACA,QAAM,EAAE,QAAQ,UAAU,IAAI;AAChC,EAAC;","names":[]}
@@ -40,11 +40,11 @@ __export(subjoin_exports, {
40
40
  default: () => subjoin_default
41
41
  });
42
42
  module.exports = __toCommonJS(subjoin_exports);
43
- var import_builder = require("../../interface/cmd/builder");
44
- var import_errors = require("../../infra/errors");
45
- var subjoin_default = () => new import_builder.CommandBuilder().setName("subjoin").addAlias("bbjoin").addAlias("/joinbl", { options: { type: "beatleader" } }).addAlias("/joinbs", { options: { type: "beatsaver" } }).addAlias("bljoin", { options: { type: "beatleader" } }).addAlias("bsjoin", { options: { type: "beatsaver" } }).addOption("type", "type:string").setDescription("").setExecutor((c) => __async(null, null, function* () {
43
+ var import_interface = require("../../interface/index.js");
44
+ var import_errors = require("../../services/errors/index.js");
45
+ var subjoin_default = () => new import_interface.CommandBuilder().setName("subjoin").addAlias("bbjoin").addAlias("/joinbl", { options: { type: "beatleader" } }).addAlias("/joinbs", { options: { type: "beatsaver" } }).addAlias("bljoin", { options: { type: "beatleader" } }).addAlias("bsjoin", { options: { type: "beatsaver" } }).addOption("type", "type:string").setDescription("").setExecutor((c) => __async(null, null, function* () {
46
46
  const { blSub, bsMapSub } = yield c.services.db.getSubscriptionsByGID(
47
- c.session.g.id
47
+ c.session.channel.id
48
48
  );
49
49
  if (c.options.type === "beatleader") {
50
50
  if (!blSub) {
@@ -52,7 +52,7 @@ var subjoin_default = () => new import_builder.CommandBuilder().setName("subjoin
52
52
  }
53
53
  const data = {
54
54
  subscribeId: blSub.id,
55
- memberUid: c.session.u.id,
55
+ memberUid: c.session.user.id,
56
56
  joinedAt: /* @__PURE__ */ new Date()
57
57
  };
58
58
  yield c.services.db.addSubscribeMember(data);
@@ -65,7 +65,7 @@ var subjoin_default = () => new import_builder.CommandBuilder().setName("subjoin
65
65
  }
66
66
  const data = {
67
67
  subscribeId: bsMapSub.id,
68
- memberUid: c.session.u.id,
68
+ memberUid: c.session.user.id,
69
69
  joinedAt: /* @__PURE__ */ new Date()
70
70
  };
71
71
  yield c.services.db.addSubscribeMember(data);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cmd/subscribe/subjoin.ts"],"sourcesContent":["import {CommandBuilder} from \"@/interface/cmd/builder\";\nimport { SubscriptionNotExistError } from '@/infra/errors'\nexport default () =>\n new CommandBuilder()\n .setName('subjoin')\n .addAlias('bbjoin')\n .addAlias('/joinbl', { options: { type: 'beatleader' } })\n .addAlias('/joinbs', { options: { type: 'beatsaver' } })\n .addAlias('bljoin', { options: { type: 'beatleader' } })\n .addAlias('bsjoin', { options: { type: 'beatsaver' } })\n .addOption('type', 'type:string')\n .setDescription('')\n .setExecutor(async (c) => {\n const { blSub, bsMapSub } = await c.services.db.getSubscriptionsByGID(\n c.session.g.id\n )\n if (c.options.type === 'beatleader') {\n if (!blSub) {\n // create blSub?\n throw new SubscriptionNotExistError('beatleader-score')\n }\n const data = {\n subscribeId: blSub.id,\n memberUid: c.session.u.id,\n joinedAt: new Date(),\n }\n await c.services.db.addSubscribeMember(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.join.success.beatleader')\n )\n } else if (c.options.type === 'beatsaver') {\n if (!bsMapSub) {\n throw new SubscriptionNotExistError('beatsaver-map')\n }\n const data = {\n subscribeId: bsMapSub.id,\n memberUid: c.session.u.id,\n joinedAt: new Date(),\n }\n await c.services.db.addSubscribeMember(data)\n c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.join.success.beatsaver')\n )\n }\n })\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA6B;AAC7B,oBAA0C;AAC1C,IAAO,kBAAQ,MACb,IAAI,8BAAe,EAChB,QAAQ,SAAS,EACjB,SAAS,QAAQ,EACjB,SAAS,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACvD,SAAS,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACtD,SAAS,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACtD,SAAS,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACrD,UAAU,QAAQ,aAAa,EAC/B,eAAe,EAAE,EACjB,YAAY,CAAO,MAAM;AACxB,QAAM,EAAE,OAAO,SAAS,IAAI,MAAM,EAAE,SAAS,GAAG;AAAA,IAC9C,EAAE,QAAQ,EAAE;AAAA,EACd;AACA,MAAI,EAAE,QAAQ,SAAS,cAAc;AACnC,QAAI,CAAC,OAAO;AAEV,YAAM,IAAI,wCAA0B,kBAAkB;AAAA,IACxD;AACA,UAAM,OAAO;AAAA,MACX,aAAa,MAAM;AAAA,MACnB,WAAW,EAAE,QAAQ,EAAE;AAAA,MACvB,UAAU,oBAAI,KAAK;AAAA,IACrB;AACA,UAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,kDAAkD;AAAA,IACnE;AAAA,EACF,WAAW,EAAE,QAAQ,SAAS,aAAa;AACzC,QAAI,CAAC,UAAU;AACb,YAAM,IAAI,wCAA0B,eAAe;AAAA,IACrD;AACA,UAAM,OAAO;AAAA,MACX,aAAa,SAAS;AAAA,MACtB,WAAW,EAAE,QAAQ,EAAE;AAAA,MACvB,UAAU,oBAAI,KAAK;AAAA,IACrB;AACA,UAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,MAAE,QAAQ;AAAA,MACR,EAAE,QAAQ,KAAK,iDAAiD;AAAA,IAClE;AAAA,EACF;AACF,EAAC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/cmd/subscribe/subjoin.ts"],"sourcesContent":["import {CommandBuilder} from \"@/interface\";\nimport { SubscriptionNotExistError } from '@/services/errors'\nexport default () =>\n new CommandBuilder()\n .setName('subjoin')\n .addAlias('bbjoin')\n .addAlias('/joinbl', { options: { type: 'beatleader' } })\n .addAlias('/joinbs', { options: { type: 'beatsaver' } })\n .addAlias('bljoin', { options: { type: 'beatleader' } })\n .addAlias('bsjoin', { options: { type: 'beatsaver' } })\n .addOption('type', 'type:string')\n .setDescription('')\n .setExecutor(async (c) => {\n const { blSub, bsMapSub } = await c.services.db.getSubscriptionsByGID(\n c.session.channel.id\n )\n if (c.options.type === 'beatleader') {\n if (!blSub) {\n // create blSub?\n throw new SubscriptionNotExistError('beatleader-score')\n }\n const data = {\n subscribeId: blSub.id,\n memberUid: c.session.user.id,\n joinedAt: new Date(),\n }\n await c.services.db.addSubscribeMember(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.join.success.beatleader')\n )\n } else if (c.options.type === 'beatsaver') {\n if (!bsMapSub) {\n throw new SubscriptionNotExistError('beatsaver-map')\n }\n const data = {\n subscribeId: bsMapSub.id,\n memberUid: c.session.user.id,\n joinedAt: new Date(),\n }\n await c.services.db.addSubscribeMember(data)\n c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.join.success.beatsaver')\n )\n }\n })\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA6B;AAC7B,oBAA0C;AAC1C,IAAO,kBAAQ,MACb,IAAI,gCAAe,EAChB,QAAQ,SAAS,EACjB,SAAS,QAAQ,EACjB,SAAS,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACvD,SAAS,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACtD,SAAS,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACtD,SAAS,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACrD,UAAU,QAAQ,aAAa,EAC/B,eAAe,EAAE,EACjB,YAAY,CAAO,MAAM;AACxB,QAAM,EAAE,OAAO,SAAS,IAAI,MAAM,EAAE,SAAS,GAAG;AAAA,IAC9C,EAAE,QAAQ,QAAQ;AAAA,EACpB;AACA,MAAI,EAAE,QAAQ,SAAS,cAAc;AACnC,QAAI,CAAC,OAAO;AAEV,YAAM,IAAI,wCAA0B,kBAAkB;AAAA,IACxD;AACA,UAAM,OAAO;AAAA,MACX,aAAa,MAAM;AAAA,MACnB,WAAW,EAAE,QAAQ,KAAK;AAAA,MAC1B,UAAU,oBAAI,KAAK;AAAA,IACrB;AACA,UAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,kDAAkD;AAAA,IACnE;AAAA,EACF,WAAW,EAAE,QAAQ,SAAS,aAAa;AACzC,QAAI,CAAC,UAAU;AACb,YAAM,IAAI,wCAA0B,eAAe;AAAA,IACrD;AACA,UAAM,OAAO;AAAA,MACX,aAAa,SAAS;AAAA,MACtB,WAAW,EAAE,QAAQ,KAAK;AAAA,MAC1B,UAAU,oBAAI,KAAK;AAAA,IACrB;AACA,UAAM,EAAE,SAAS,GAAG,mBAAmB,IAAI;AAC3C,MAAE,QAAQ;AAAA,MACR,EAAE,QAAQ,KAAK,iDAAiD;AAAA,IAClE;AAAA,EACF;AACF,EAAC;","names":[]}
@@ -40,11 +40,11 @@ __export(subleave_exports, {
40
40
  default: () => subleave_default
41
41
  });
42
42
  module.exports = __toCommonJS(subleave_exports);
43
- var import_builder = require("../../interface/cmd/builder");
44
- var subleave_default = () => new import_builder.CommandBuilder().setName("subleave").addAlias("bbleave").addAlias("/leavebl", { options: { type: "beatleader" } }).addAlias("/leavebs", { options: { type: "beatsaver" } }).addAlias("leavebl", { options: { type: "beatleader" } }).addAlias("leavebs", { options: { type: "beatsaver" } }).addOption("type", "type:string").setDescription("").setExecutor((c) => __async(null, null, function* () {
43
+ var import_interface = require("../../interface/index.js");
44
+ var subleave_default = () => new import_interface.CommandBuilder().setName("subleave").addAlias("bbleave").addAlias("/leavebl", { options: { type: "beatleader" } }).addAlias("/leavebs", { options: { type: "beatsaver" } }).addAlias("leavebl", { options: { type: "beatleader" } }).addAlias("leavebs", { options: { type: "beatsaver" } }).addOption("type", "type:string").setDescription("").setExecutor((c) => __async(null, null, function* () {
45
45
  const subs = yield c.services.db.getSubscriptionInfoByUGID(
46
- c.session.g.id,
47
- c.session.u.id
46
+ c.session.channel.id,
47
+ c.session.user.id
48
48
  );
49
49
  if (c.options.type === "beatleader") {
50
50
  const blSub = subs.find((it) => it.subscribe.type == "beatleader-score");
@@ -57,7 +57,7 @@ var subleave_default = () => new import_builder.CommandBuilder().setName("sublea
57
57
  }
58
58
  yield c.services.db.removeFromSubGroupBySubAndUid(
59
59
  blSub.subscribe.id,
60
- c.session.u.id
60
+ c.session.user.id
61
61
  );
62
62
  yield c.session.sendQuote(
63
63
  c.session.text("commands.bsbot.subscribe.leave.success.beatleader")
@@ -72,7 +72,7 @@ var subleave_default = () => new import_builder.CommandBuilder().setName("sublea
72
72
  }
73
73
  yield c.services.db.removeFromSubGroupBySubAndUid(
74
74
  bsSub.subscribe.id,
75
- c.session.u.id
75
+ c.session.user.id
76
76
  );
77
77
  yield c.session.sendQuote(
78
78
  c.session.text("commands.bsbot.subscribe.leave.success.beatsaver")
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cmd/subscribe/subleave.ts"],"sourcesContent":["import {CommandBuilder} from \"@/interface/cmd/builder\";\n\nexport default () =>\n new CommandBuilder()\n .setName('subleave')\n .addAlias('bbleave')\n .addAlias('/leavebl', { options: { type: 'beatleader' } })\n .addAlias('/leavebs', { options: { type: 'beatsaver' } })\n .addAlias('leavebl', { options: { type: 'beatleader' } })\n .addAlias('leavebs', { options: { type: 'beatsaver' } })\n .addOption('type', 'type:string')\n .setDescription('')\n .setExecutor(async (c) => {\n // getUserJoinedGroupMember\n const subs = await c.services.db.getSubscriptionInfoByUGID(\n c.session.g.id,\n c.session.u.id\n )\n if (c.options.type === 'beatleader') {\n const blSub = subs.find((it) => it.subscribe.type == 'beatleader-score')\n if (!blSub?.me) {\n return c.session.sendQuote(\n c.session.text(\n 'commands.bsbot.subscribe.leave.not-exist.beatleader'\n )\n )\n }\n await c.services.db.removeFromSubGroupBySubAndUid(\n blSub.subscribe.id,\n c.session.u.id\n )\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.leave.success.beatleader')\n )\n } else if (c.options.type === 'beatsaver') {\n const bsSub = subs.find((it) => it.subscribe.type == 'beatsaver-map')\n if (!bsSub?.me) {\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.leave.not-exist.beatsaver')\n )\n return\n }\n\n await c.services.db.removeFromSubGroupBySubAndUid(\n bsSub.subscribe.id,\n c.session.u.id\n )\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.leave.success.beatsaver')\n )\n }\n })\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA6B;AAE7B,IAAO,mBAAQ,MACb,IAAI,8BAAe,EAChB,QAAQ,UAAU,EAClB,SAAS,SAAS,EAClB,SAAS,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACxD,SAAS,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACvD,SAAS,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACvD,SAAS,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACtD,UAAU,QAAQ,aAAa,EAC/B,eAAe,EAAE,EACjB,YAAY,CAAO,MAAM;AAExB,QAAM,OAAO,MAAM,EAAE,SAAS,GAAG;AAAA,IAC/B,EAAE,QAAQ,EAAE;AAAA,IACZ,EAAE,QAAQ,EAAE;AAAA,EACd;AACA,MAAI,EAAE,QAAQ,SAAS,cAAc;AACnC,UAAM,QAAQ,KAAK,KAAK,CAAC,OAAO,GAAG,UAAU,QAAQ,kBAAkB;AACvE,QAAI,EAAC,+BAAO,KAAI;AACd,aAAO,EAAE,QAAQ;AAAA,QACf,EAAE,QAAQ;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,IACF;AACA,UAAM,EAAE,SAAS,GAAG;AAAA,MAClB,MAAM,UAAU;AAAA,MAChB,EAAE,QAAQ,EAAE;AAAA,IACd;AACA,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,mDAAmD;AAAA,IACpE;AAAA,EACF,WAAW,EAAE,QAAQ,SAAS,aAAa;AACzC,UAAM,QAAQ,KAAK,KAAK,CAAC,OAAO,GAAG,UAAU,QAAQ,eAAe;AACpE,QAAI,EAAC,+BAAO,KAAI;AACd,YAAM,EAAE,QAAQ;AAAA,QACd,EAAE,QAAQ,KAAK,oDAAoD;AAAA,MACrE;AACA;AAAA,IACF;AAEA,UAAM,EAAE,SAAS,GAAG;AAAA,MAClB,MAAM,UAAU;AAAA,MAChB,EAAE,QAAQ,EAAE;AAAA,IACd;AACA,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,kDAAkD;AAAA,IACnE;AAAA,EACF;AACF,EAAC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/cmd/subscribe/subleave.ts"],"sourcesContent":["import {CommandBuilder} from \"@/interface\";\n\nexport default () =>\n new CommandBuilder()\n .setName('subleave')\n .addAlias('bbleave')\n .addAlias('/leavebl', { options: { type: 'beatleader' } })\n .addAlias('/leavebs', { options: { type: 'beatsaver' } })\n .addAlias('leavebl', { options: { type: 'beatleader' } })\n .addAlias('leavebs', { options: { type: 'beatsaver' } })\n .addOption('type', 'type:string')\n .setDescription('')\n .setExecutor(async (c) => {\n // getUserJoinedGroupMember\n const subs = await c.services.db.getSubscriptionInfoByUGID(\n c.session.channel.id,\n c.session.user.id\n )\n if (c.options.type === 'beatleader') {\n const blSub = subs.find((it) => it.subscribe.type == 'beatleader-score')\n if (!blSub?.me) {\n return c.session.sendQuote(\n c.session.text(\n 'commands.bsbot.subscribe.leave.not-exist.beatleader'\n )\n )\n }\n await c.services.db.removeFromSubGroupBySubAndUid(\n blSub.subscribe.id,\n c.session.user.id\n )\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.leave.success.beatleader')\n )\n } else if (c.options.type === 'beatsaver') {\n const bsSub = subs.find((it) => it.subscribe.type == 'beatsaver-map')\n if (!bsSub?.me) {\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.leave.not-exist.beatsaver')\n )\n return\n }\n\n await c.services.db.removeFromSubGroupBySubAndUid(\n bsSub.subscribe.id,\n c.session.user.id\n )\n await c.session.sendQuote(\n c.session.text('commands.bsbot.subscribe.leave.success.beatsaver')\n )\n }\n })\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA6B;AAE7B,IAAO,mBAAQ,MACb,IAAI,gCAAe,EAChB,QAAQ,UAAU,EAClB,SAAS,SAAS,EAClB,SAAS,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACxD,SAAS,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACvD,SAAS,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,EAAE,CAAC,EACvD,SAAS,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,EAAE,CAAC,EACtD,UAAU,QAAQ,aAAa,EAC/B,eAAe,EAAE,EACjB,YAAY,CAAO,MAAM;AAExB,QAAM,OAAO,MAAM,EAAE,SAAS,GAAG;AAAA,IAC/B,EAAE,QAAQ,QAAQ;AAAA,IAClB,EAAE,QAAQ,KAAK;AAAA,EACjB;AACA,MAAI,EAAE,QAAQ,SAAS,cAAc;AACnC,UAAM,QAAQ,KAAK,KAAK,CAAC,OAAO,GAAG,UAAU,QAAQ,kBAAkB;AACvE,QAAI,EAAC,+BAAO,KAAI;AACd,aAAO,EAAE,QAAQ;AAAA,QACf,EAAE,QAAQ;AAAA,UACR;AAAA,QACF;AAAA,MACF;AAAA,IACF;AACA,UAAM,EAAE,SAAS,GAAG;AAAA,MAClB,MAAM,UAAU;AAAA,MAChB,EAAE,QAAQ,KAAK;AAAA,IACjB;AACA,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,mDAAmD;AAAA,IACpE;AAAA,EACF,WAAW,EAAE,QAAQ,SAAS,aAAa;AACzC,UAAM,QAAQ,KAAK,KAAK,CAAC,OAAO,GAAG,UAAU,QAAQ,eAAe;AACpE,QAAI,EAAC,+BAAO,KAAI;AACd,YAAM,EAAE,QAAQ;AAAA,QACd,EAAE,QAAQ,KAAK,oDAAoD;AAAA,MACrE;AACA;AAAA,IACF;AAEA,UAAM,EAAE,SAAS,GAAG;AAAA,MAClB,MAAM,UAAU;AAAA,MAChB,EAAE,QAAQ,KAAK;AAAA,IACjB;AACA,UAAM,EAAE,QAAQ;AAAA,MACd,EAAE,QAAQ,KAAK,kDAAkD;AAAA,IACnE;AAAA,EACF;AACF,EAAC;","names":[]}
@@ -57,11 +57,11 @@ __export(unsubscribe_exports, {
57
57
  default: () => unsubscribe_default
58
58
  });
59
59
  module.exports = __toCommonJS(unsubscribe_exports);
60
- var import_builder = require("../../interface/cmd/builder");
61
- var import_errors = require("../../infra/errors");
62
- var unsubscribe_default = () => new import_builder.CommandBuilder().setName("unsubscribe").addAlias("bbunsub").addAlias("/unsubbl", { options: { type: "beatleader" } }).addAlias("/unsubbs", { options: { type: "beatsaver" } }).addAlias("unsubbl", { options: { type: "beatleader" } }).addAlias("unsubbs", { options: { type: "beatsaver" } }).addOption("type", "type:string").setDescription("").setExecutor((c) => __async(null, null, function* () {
60
+ var import_errors = require("../../services/errors/index.js");
61
+ var import_interface = require("../../interface/index.js");
62
+ var unsubscribe_default = () => new import_interface.CommandBuilder().setName("unsubscribe").addAlias("bbunsub").addAlias("/unsubbl", { options: { type: "beatleader" } }).addAlias("/unsubbs", { options: { type: "beatsaver" } }).addAlias("unsubbl", { options: { type: "beatleader" } }).addAlias("unsubbs", { options: { type: "beatsaver" } }).addOption("type", "type:string").setDescription("").setExecutor((c) => __async(null, null, function* () {
63
63
  const { blSub, bsMapSub, bsAlertSub } = yield c.services.db.getSubscriptionsByGID(
64
- c.session.g.id
64
+ c.session.channel.id
65
65
  );
66
66
  if (c.options.type === "beatleader") {
67
67
  if (!blSub) {
@@ -102,8 +102,8 @@ const unsubIDBSMapper = (c) => __async(null, null, function* () {
102
102
  var _a;
103
103
  const input = c.input;
104
104
  if (input) {
105
- const res = yield c.services.db.getIDSubscriptionByGIDAndType(
106
- c.session.g.id,
105
+ const res = yield c.services.db.getIDSubscriptionByChannelIDAndType(
106
+ c.session.channel.id,
107
107
  "id-beatsaver-map"
108
108
  );
109
109
  const it = res.find((it2) => {
@@ -126,8 +126,8 @@ const unsubIDBLScore = (c) => __async(null, null, function* () {
126
126
  var _a;
127
127
  const input = c.input;
128
128
  if (input) {
129
- const res = yield c.services.db.getIDSubscriptionByGIDAndType(
130
- c.session.g.id,
129
+ const res = yield c.services.db.getIDSubscriptionByChannelIDAndType(
130
+ c.session.channel.id,
131
131
  "id-beatleader-score"
132
132
  );
133
133
  const it = res.find((it2) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cmd/subscribe/unsubscribe.ts"],"sourcesContent":["import {CommandBuilder} from \"@/interface/cmd/builder\";\nimport {\n BSMapperSubscriptionNotExistError,\n SubscriptionNotExistError,\n} from '@/infra/errors'\nimport { CmdContext } from '@/interface'\n\nexport default () =>\n new CommandBuilder()\n .setName('unsubscribe')\n .addAlias('bbunsub')\n .addAlias('/unsubbl', { options: { type: 'beatleader' } })\n .addAlias('/unsubbs', { options: { type: 'beatsaver' } })\n .addAlias('unsubbl', { options: { type: 'beatleader' } })\n .addAlias('unsubbs', { options: { type: 'beatsaver' } })\n .addOption('type', 'type:string')\n .setDescription('')\n .setExecutor(async (c) => {\n const { blSub, bsMapSub, bsAlertSub } = await c.services.db.getSubscriptionsByGID(\n c.session.g.id\n )\n if (c.options.type === 'beatleader') {\n if (!blSub) {\n throw new SubscriptionNotExistError('beatleader-score')\n }\n const data = { ...blSub, enable: false }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.beatleader')\n )\n }\n\n if (c.options.type === 'beatsaver') {\n if (c.input) {\n await unsubIDBSMapper(c)\n return\n }\n\n if (!bsMapSub) {\n throw new SubscriptionNotExistError('beatsaver-map')\n }\n const data = { ...bsMapSub, enable: false }\n await c.services.db.upsertSubscription(data)\n c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.beatsaver')\n )\n }\n\n if (c.options.type === 'alert') {\n if (!bsAlertSub) {\n throw new SubscriptionNotExistError('beatsaver-alert')\n }\n const data = { ...bsAlertSub, enable: false }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.alert')\n )\n }\n })\n\nconst unsubIDBSMapper = async <T, C>(c: CmdContext<T, C>) => {\n const input = c.input\n if (input) {\n const res = await c.services.db.getIDSubscriptionByGIDAndType(\n c.session.g.id,\n 'id-beatsaver-map'\n )\n const it = res.find((it) => it.data?.mapperId?.toString() === input)\n if (!it) {\n throw new BSMapperSubscriptionNotExistError({ id: input })\n }\n\n await c.services.db.removeIDSubscriptionByID(it.id)\n c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.beatsaver-mapper', {\n name: it?.data?.mapperName,\n })\n )\n return\n }\n}\n\nconst unsubIDBLScore = async <T, C>(c: CmdContext<T, C>) => {\n const input = c.input\n if (input) {\n const res = await c.services.db.getIDSubscriptionByGIDAndType(\n c.session.g.id,\n 'id-beatleader-score'\n )\n const it = res.find((it) => it.data?.playerId?.toString() === input)\n if (!it) {\n throw new SubscriptionNotExistError(`id-beatleader-score(${input})`)\n }\n await c.services.db.removeIDSubscriptionByID(it.id)\n c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.beatleader-score', {\n name: it?.data?.playerId,\n })\n )\n return\n }\n}\n"],"mappings":"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","names":["it","_a"]}
1
+ {"version":3,"sources":["../../../../src/cmd/subscribe/unsubscribe.ts"],"sourcesContent":["\nimport {\n BSMapperSubscriptionNotExistError,\n SubscriptionNotExistError,\n} from '@/services/errors'\nimport {CmdContext, CommandBuilder} from \"@/interface\";\n\nexport default () =>\n new CommandBuilder()\n .setName('unsubscribe')\n .addAlias('bbunsub')\n .addAlias('/unsubbl', { options: { type: 'beatleader' } })\n .addAlias('/unsubbs', { options: { type: 'beatsaver' } })\n .addAlias('unsubbl', { options: { type: 'beatleader' } })\n .addAlias('unsubbs', { options: { type: 'beatsaver' } })\n .addOption('type', 'type:string')\n .setDescription('')\n .setExecutor(async (c) => {\n const { blSub, bsMapSub, bsAlertSub } = await c.services.db.getSubscriptionsByGID(\n c.session.channel.id\n )\n if (c.options.type === 'beatleader') {\n if (!blSub) {\n throw new SubscriptionNotExistError('beatleader-score')\n }\n const data = { ...blSub, enable: false }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.beatleader')\n )\n }\n\n if (c.options.type === 'beatsaver') {\n if (c.input) {\n await unsubIDBSMapper(c)\n return\n }\n\n if (!bsMapSub) {\n throw new SubscriptionNotExistError('beatsaver-map')\n }\n const data = { ...bsMapSub, enable: false }\n await c.services.db.upsertSubscription(data)\n c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.beatsaver')\n )\n }\n\n if (c.options.type === 'alert') {\n if (!bsAlertSub) {\n throw new SubscriptionNotExistError('beatsaver-alert')\n }\n const data = { ...bsAlertSub, enable: false }\n await c.services.db.upsertSubscription(data)\n await c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.alert')\n )\n }\n })\n\nconst unsubIDBSMapper = async (c: CmdContext) => {\n const input = c.input\n if (input) {\n const res = await c.services.db.getIDSubscriptionByChannelIDAndType(\n c.session.channel.id,\n 'id-beatsaver-map'\n )\n const it = res.find((it) => it.data?.mapperId?.toString() === input)\n if (!it) {\n throw new BSMapperSubscriptionNotExistError({ id: input })\n }\n\n await c.services.db.removeIDSubscriptionByID(it.id)\n c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.beatsaver-mapper', {\n name: it?.data?.mapperName,\n })\n )\n return\n }\n}\n\nconst unsubIDBLScore = async (c: CmdContext) => {\n const input = c.input\n if (input) {\n const res = await c.services.db.getIDSubscriptionByChannelIDAndType(\n c.session.channel.id,\n 'id-beatleader-score'\n )\n const it = res.find((it) => it.data?.playerId?.toString() === input)\n if (!it) {\n throw new SubscriptionNotExistError(`id-beatleader-score(${input})`)\n }\n await c.services.db.removeIDSubscriptionByID(it.id)\n c.session.sendQuote(\n c.session.text('commands.bsbot.unsubscribe.success.beatleader-score', {\n name: it?.data?.playerId,\n })\n )\n return\n }\n}\n"],"mappings":"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","names":["it","_a"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/common/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 @@
1
+ {"version":3,"sources":["../../../../src/common/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":[]}
@@ -21,30 +21,32 @@ __export(fetch_exports, {
21
21
  createFetch: () => createFetch
22
22
  });
23
23
  module.exports = __toCommonJS(fetch_exports);
24
- var import_ofetch = require("./ofetch");
25
- var import_error = require("./error");
26
- var import_ofetch2 = require("./ofetch");
27
- const rofetch = (0, import_ofetch.createFetch)({
28
- defaults: {
29
- retryStatusCodes: [400, 408, 409, 425, 429, 502, 503, 504],
30
- retry: 2,
31
- retryDelay: 400
32
- }
33
- });
34
- const ofetch = new import_ofetch.Fetch(rofetch);
24
+ var import_ofetch = require("./ofetch.js");
25
+ var import_error = require("./error.js");
26
+ var import_ofetch2 = require("./ofetch.js");
27
+ const ofetch = new import_ofetch.Fetch();
35
28
  const createFetch = (logger) => {
36
29
  return ofetch.extend({
37
30
  onRequest: (context) => {
38
31
  logger.debug(`[fetch -->] ${context.options.baseURL}${context.request}`);
32
+ logger.debug(`[fetch -->] ${JSON.stringify(context.options, null, 2)}`);
39
33
  },
40
34
  onResponse: (context) => {
41
35
  logger.debug(`[fetch <--] ${context.request} ${context.response.status}`);
36
+ switch (context.options.responseType) {
37
+ case "text":
38
+ logger.debug(`[fetch <--] ${context.response._data}`);
39
+ break;
40
+ case "json":
41
+ logger.debug(`[fetch -->] ${JSON.stringify(context.response._data, null, 2)}`);
42
+ break;
43
+ }
42
44
  },
43
- onResponseError: (context) => {
44
- if (context.response.status === 404) {
45
+ onResponseError({ request, response, options, error }) {
46
+ logger.debug(`response error ${response.statusText}`, error);
47
+ if (response.status === 404) {
45
48
  throw new import_error.NotFoundError();
46
49
  }
47
- throw context.error;
48
50
  },
49
51
  ignoreResponseError: false
50
52
  });
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/common/fetch/index.ts"],"sourcesContent":["import { Fetch } from './ofetch'\nimport { Logger } from '@/core'\nimport { NotFoundError } from './error'\n\nconst ofetch = new Fetch()\n\nexport const createFetch = (logger: Logger) => {\n return ofetch.extend({\n onRequest: (context) => {\n logger.debug(`[fetch -->] ${context.options.baseURL}${context.request}`)\n logger.debug(`[fetch -->] ${JSON.stringify(context.options, null, 2)}`)\n },\n onResponse: (context) => {\n logger.debug(`[fetch <--] ${context.request} ${context.response.status}`)\n switch (context.options.responseType) {\n case 'text':\n logger.debug(`[fetch <--] ${context.response._data}`)\n break\n case \"json\":\n logger.debug(`[fetch -->] ${JSON.stringify(context.response._data, null, 2)}`)\n break\n }\n },\n onResponseError({ request, response, options, error }) {\n logger.debug(`response error ${response.statusText}`, error)\n if (response.status === 404) {\n throw new NotFoundError()\n }\n },\n ignoreResponseError: false,\n })\n}\n\nexport { Fetch } from './ofetch'\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAsB;AAEtB,mBAA8B;AA+B9B,IAAAA,iBAAsB;AA7BtB,MAAM,SAAS,IAAI,oBAAM;AAElB,MAAM,cAAc,CAAC,WAAmB;AAC7C,SAAO,OAAO,OAAO;AAAA,IACnB,WAAW,CAAC,YAAY;AACtB,aAAO,MAAM,eAAe,QAAQ,QAAQ,OAAO,GAAG,QAAQ,OAAO,EAAE;AACvE,aAAO,MAAM,eAAe,KAAK,UAAU,QAAQ,SAAS,MAAM,CAAC,CAAC,EAAE;AAAA,IACxE;AAAA,IACA,YAAY,CAAC,YAAY;AACvB,aAAO,MAAM,eAAe,QAAQ,OAAO,IAAI,QAAQ,SAAS,MAAM,EAAE;AACxE,cAAQ,QAAQ,QAAQ,cAAc;AAAA,QACpC,KAAK;AACH,iBAAO,MAAM,eAAe,QAAQ,SAAS,KAAK,EAAE;AACpD;AAAA,QACF,KAAK;AACH,iBAAO,MAAM,eAAe,KAAK,UAAU,QAAQ,SAAS,OAAO,MAAM,CAAC,CAAC,EAAE;AAC7E;AAAA,MACJ;AAAA,IACF;AAAA,IACA,gBAAgB,EAAE,SAAS,UAAU,SAAS,MAAM,GAAG;AACrD,aAAO,MAAM,kBAAkB,SAAS,UAAU,IAAI,KAAK;AAC3D,UAAI,SAAS,WAAW,KAAK;AAC3B,cAAM,IAAI,2BAAc;AAAA,MAC1B;AAAA,IACF;AAAA,IACA,qBAAqB;AAAA,EACvB,CAAC;AACH;","names":["import_ofetch"]}
@@ -56,25 +56,18 @@ var __async = (__this, __arguments, generator) => {
56
56
  var ofetch_exports = {};
57
57
  __export(ofetch_exports, {
58
58
  Fetch: () => Fetch,
59
- createFetch: () => import_ofetch2.createFetch,
60
- rofetch: () => rofetch
59
+ createFetch: () => import_ofetch2.createFetch
61
60
  });
62
61
  module.exports = __toCommonJS(ofetch_exports);
63
62
  var import_ofetch = require("ofetch");
64
- var import_error = require("./error");
65
63
  var import_ofetch2 = require("ofetch");
66
64
  const rofetch = (0, import_ofetch.createFetch)({
67
65
  defaults: {
68
- retryStatusCodes: [400, 408, 409, 425, 429, 500, 502, 503, 504],
69
- retry: 3,
66
+ retryStatusCodes: [408, 409, 425, 429, 500, 502, 503, 504],
67
+ retry: 2,
70
68
  retryDelay: 800
71
69
  }
72
70
  }).create({
73
- onResponseError({ request, response, options }) {
74
- if (response.status === 404) {
75
- throw new import_error.NotFoundError();
76
- }
77
- },
78
71
  onRequestError({ request, error }) {
79
72
  }
80
73
  });
@@ -99,6 +92,7 @@ class Fetch {
99
92
  body: f
100
93
  });
101
94
  }
95
+ console.debug();
102
96
  const res = yield this.ofetchInstance(request, opt);
103
97
  return res;
104
98
  });
@@ -131,7 +125,6 @@ class Fetch {
131
125
  // Annotate the CommonJS export names for ESM import in node:
132
126
  0 && (module.exports = {
133
127
  Fetch,
134
- createFetch,
135
- rofetch
128
+ createFetch
136
129
  });
137
130
  //# sourceMappingURL=ofetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/common/fetch/ofetch.ts"],"sourcesContent":["import { $Fetch, createFetch, FetchOptions, ResponseType } from 'ofetch'\n\n\nconst rofetch = createFetch({\n defaults: {\n retryStatusCodes: [408, 409, 425, 429, 500, 502, 503, 504],\n retry: 2,\n retryDelay: 800,\n },\n}).create({\n\n onRequestError({ request, error }) {\n\n },\n})\n\nexport type ExtendFetchOptions<R extends ResponseType = ResponseType, T = any> = {\n form?: Record<string, any>\n} & FetchOptions<R, T>\n\nexport class Fetch {\n private options?: FetchOptions\n private ofetchInstance: $Fetch\n constructor(fetchInstance?: $Fetch, options?: FetchOptions) {\n this.options = options\n this.ofetchInstance = fetchInstance ?? rofetch\n }\n async fetch<T, R extends ResponseType>(request: string, options?: ExtendFetchOptions<R, T>) {\n let opt = {\n ...options,\n ...this.options\n } as ExtendFetchOptions<R, T>\n if(opt.form) {\n const form = new FormData()\n let f = opt.form\n Object.entries(form).forEach(([key, value]) => form.append(key, value))\n opt = {\n ...opt,\n headers: {\n ...opt.headers,\n 'Content-Type': 'multipart/form-data'\n },\n body: f\n }\n }\n console.debug()\n const res = await this.ofetchInstance<T, R>(request, opt)\n return res\n }\n get<T = any, R extends ResponseType = 'json'>(\n request: string,\n options?: ExtendFetchOptions<R>\n ) {\n return this.fetch<T, R>(request, { ...options, method: 'GET' })\n }\n post<T = any, R extends ResponseType = 'json'>(\n request: string,\n options?: ExtendFetchOptions<R>\n ) {\n return this.fetch<T, R>(request, { ...options, method: 'POST' })\n }\n put<T = any, R extends ResponseType = 'json'>(\n request: string,\n options?: ExtendFetchOptions<R>\n ) {\n return this.fetch(request, { ...options, method: 'PUT' })\n }\n patch<T = any, R extends ResponseType = 'json'>(\n request: string,\n options?: ExtendFetchOptions<R>\n ) {\n return this.fetch(request, { ...options, method: 'PATCH' })\n }\n delete<T = any, R extends ResponseType = 'json'>(\n request: string,\n options?: ExtendFetchOptions<R>\n ) {\n return this.fetch(request, { ...options, method: 'DELETE' })\n }\n head(request: string, options?: FetchOptions) {\n return this.fetch(request, { ...options, method: 'HEAD' })\n }\n\n extend(options: FetchOptions) {\n return new Fetch(this.ofetchInstance, { ...this.options, ...options })\n }\n baseUrl(url: string) {\n return this.extend({ baseURL: url })\n }\n}\n\nexport { createFetch } from 'ofetch'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAgE;AA2FhE,IAAAA,iBAA4B;AAxF5B,MAAM,cAAU,2BAAY;AAAA,EAC1B,UAAU;AAAA,IACR,kBAAkB,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG;AAAA,IACzD,OAAO;AAAA,IACP,YAAY;AAAA,EACd;AACF,CAAC,EAAE,OAAO;AAAA,EAER,eAAe,EAAE,SAAS,MAAM,GAAG;AAAA,EAEnC;AACF,CAAC;AAMM,MAAM,MAAM;AAAA,EAGjB,YAAY,eAAwB,SAAwB;AAF5D,wBAAQ;AACR,wBAAQ;AAEN,SAAK,UAAU;AACf,SAAK,iBAAiB,wCAAiB;AAAA,EACzC;AAAA,EACO,MAAiC,SAAiB,SAAoC;AAAA;AAC3F,UAAI,MAAM,kCACL,UACA,KAAK;AAEV,UAAG,IAAI,MAAM;AACX,cAAM,OAAO,IAAI,SAAS;AAC1B,YAAI,IAAI,IAAI;AACZ,eAAO,QAAQ,IAAI,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM,KAAK,OAAO,KAAK,KAAK,CAAC;AACtE,cAAM,iCACD,MADC;AAAA,UAEJ,SAAS,iCACJ,IAAI,UADA;AAAA,YAEP,gBAAgB;AAAA,UAClB;AAAA,UACA,MAAM;AAAA,QACR;AAAA,MACF;AACA,cAAQ,MAAM;AACd,YAAM,MAAM,MAAM,KAAK,eAAqB,SAAS,GAAG;AACxD,aAAO;AAAA,IACT;AAAA;AAAA,EACA,IACE,SACA,SACA;AACA,WAAO,KAAK,MAAY,SAAS,iCAAK,UAAL,EAAc,QAAQ,MAAM,EAAC;AAAA,EAChE;AAAA,EACA,KACE,SACA,SACA;AACA,WAAO,KAAK,MAAY,SAAS,iCAAK,UAAL,EAAc,QAAQ,OAAO,EAAC;AAAA,EACjE;AAAA,EACA,IACE,SACA,SACA;AACA,WAAO,KAAK,MAAM,SAAS,iCAAK,UAAL,EAAc,QAAQ,MAAM,EAAC;AAAA,EAC1D;AAAA,EACA,MACE,SACA,SACA;AACA,WAAO,KAAK,MAAM,SAAS,iCAAK,UAAL,EAAc,QAAQ,QAAQ,EAAC;AAAA,EAC5D;AAAA,EACA,OACE,SACA,SACA;AACA,WAAO,KAAK,MAAM,SAAS,iCAAK,UAAL,EAAc,QAAQ,SAAS,EAAC;AAAA,EAC7D;AAAA,EACA,KAAK,SAAiB,SAAwB;AAC5C,WAAO,KAAK,MAAM,SAAS,iCAAK,UAAL,EAAc,QAAQ,OAAO,EAAC;AAAA,EAC3D;AAAA,EAEA,OAAO,SAAuB;AAC5B,WAAO,IAAI,MAAM,KAAK,gBAAgB,kCAAK,KAAK,UAAY,QAAS;AAAA,EACvE;AAAA,EACA,QAAQ,KAAa;AACnB,WAAO,KAAK,OAAO,EAAE,SAAS,IAAI,CAAC;AAAA,EACrC;AACF;","names":["import_ofetch"]}
@@ -0,0 +1,55 @@
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 i18n_exports = {};
19
+ __export(i18n_exports, {
20
+ createTranslator: () => createTranslator
21
+ });
22
+ module.exports = __toCommonJS(i18n_exports);
23
+ var import_parser = require("./parser.js");
24
+ var import_util = require("./util.js");
25
+ const defaultLang = "en-US";
26
+ const createTranslator = (translateObject) => {
27
+ return (path, params = {}, lang = defaultLang) => _translate(translateObject, path, params, lang);
28
+ };
29
+ const _translate = (translateObject, path, params = {}, lang = defaultLang) => {
30
+ const keys = path.split(".");
31
+ let result = translateObject[lang];
32
+ if (!result) {
33
+ return null;
34
+ }
35
+ for (const key of keys) {
36
+ if (result[key] !== void 0) {
37
+ result = result[key];
38
+ } else {
39
+ return null;
40
+ }
41
+ }
42
+ try {
43
+ if (typeof result === "string") {
44
+ return (0, import_parser.interpolate)(result, params);
45
+ }
46
+ } catch (e) {
47
+ return (0, import_util.interpolateString)(result, params);
48
+ }
49
+ return null;
50
+ };
51
+ // Annotate the CommonJS export names for ESM import in node:
52
+ 0 && (module.exports = {
53
+ createTranslator
54
+ });
55
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/common/i18n/index.ts"],"sourcesContent":["import {interpolate} from \"./parser\";\nimport {interpolateString} from \"./util\";\n\nconst defaultLang = \"en-US\";\n\nexport const createTranslator = (translateObject: object) => {\n return (path: string, params = {}, lang = defaultLang) => _translate(translateObject, path, params, lang)\n}\nconst _translate = (\n translateObject: object,\n path: string,\n params = {},\n lang = defaultLang\n) => {\n const keys = path.split('.')\n let result = translateObject[lang]\n if(!result) {\n return null\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 return null\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA0B;AAC1B,kBAAgC;AAEhC,MAAM,cAAc;AAEb,MAAM,mBAAmB,CAAC,oBAA4B;AAC3D,SAAO,CAAC,MAAc,SAAS,CAAC,GAAG,OAAO,gBAAgB,WAAW,iBAAiB,MAAM,QAAQ,IAAI;AAC1G;AACA,MAAM,aAAa,CACjB,iBACA,MACA,SAAS,CAAC,GACV,OAAO,gBACJ;AACH,QAAM,OAAO,KAAK,MAAM,GAAG;AAC3B,MAAI,SAAS,gBAAgB,IAAI;AACjC,MAAG,CAAC,QAAQ;AACV,WAAO;AAAA,EACT;AACA,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,eAAO,+BAAkB,QAAQ,MAAM;AAAA,EACzC;AACA,SAAO;AACT;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/common/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\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":"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","names":["TokenType","value"]}