beatsaber-bot-core 0.2.0-dev.8 → 0.2.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 (211) hide show
  1. package/lib/api/base/aioclient.d.ts +11 -0
  2. package/lib/api/base/aioclient.js +20 -0
  3. package/lib/api/base/aioclient.js.map +1 -0
  4. package/lib/api/base/blclient.d.ts +18 -0
  5. package/lib/api/base/blclient.js +60 -0
  6. package/lib/api/base/blclient.js.map +1 -0
  7. package/lib/api/base/bsclient.d.ts +17 -0
  8. package/lib/api/base/bsclient.js +75 -0
  9. package/lib/api/base/bsclient.js.map +1 -0
  10. package/lib/api/base/index.d.ts +4 -12
  11. package/lib/api/base/index.js +4 -4
  12. package/lib/api/base/index.js.map +1 -1
  13. package/lib/api/base/scRequest.d.ts +2 -0
  14. package/lib/api/base/scRequest.js +28 -13
  15. package/lib/api/base/scRequest.js.map +1 -1
  16. package/lib/api/base/ssclient.d.ts +13 -0
  17. package/lib/api/base/ssclient.js +48 -0
  18. package/lib/api/base/ssclient.js.map +1 -0
  19. package/lib/api/composed/beatleader.d.ts +8 -3
  20. package/lib/api/composed/beatleader.js +39 -5
  21. package/lib/api/composed/beatleader.js.map +1 -1
  22. package/lib/api/composed/beatsaver.d.ts +2 -3
  23. package/lib/api/composed/beatsaver.js +2 -1
  24. package/lib/api/composed/beatsaver.js.map +1 -1
  25. package/lib/api/composed/scoresaber.js +5 -1
  26. package/lib/api/composed/scoresaber.js.map +1 -1
  27. package/lib/api/error.d.ts +9 -0
  28. package/lib/api/error.js +27 -0
  29. package/lib/api/error.js.map +1 -0
  30. package/lib/api/helper.d.ts +19 -0
  31. package/lib/api/helper.js +102 -0
  32. package/lib/api/helper.js.map +1 -0
  33. package/lib/api/index.d.ts +6 -23
  34. package/lib/api/index.js +22 -113
  35. package/lib/api/index.js.map +1 -1
  36. package/lib/api/interfaces/beatsaver/bsmap.d.ts +2 -0
  37. package/lib/api/interfaces/beatsaver/index.d.ts +2 -1
  38. package/lib/api/interfaces/index.d.ts +12 -0
  39. package/lib/api/interfaces/index.js +3 -0
  40. package/lib/api/interfaces/index.js.map +1 -0
  41. package/lib/api/interfaces/scoresaber/item.d.ts +12 -3
  42. package/lib/api/interfaces/scoresaber/leaderboard.d.ts +10 -0
  43. package/lib/api/interfaces/scoresaber/leaderboard.js +3 -0
  44. package/lib/api/interfaces/scoresaber/leaderboard.js.map +1 -0
  45. package/lib/cmd/bind/bind-beatleader.js +15 -17
  46. package/lib/cmd/bind/bind-beatleader.js.map +1 -1
  47. package/lib/cmd/bind/bind-beatsaver.js +27 -21
  48. package/lib/cmd/bind/bind-beatsaver.js.map +1 -1
  49. package/lib/cmd/bind/bind-id-beatleader.js +8 -10
  50. package/lib/cmd/bind/bind-id-beatleader.js.map +1 -1
  51. package/lib/cmd/bind/bind-id-beatsaver.js +8 -10
  52. package/lib/cmd/bind/bind-id-beatsaver.js.map +1 -1
  53. package/lib/cmd/bind/bind-scoresaber.js +7 -9
  54. package/lib/cmd/bind/bind-scoresaber.js.map +1 -1
  55. package/lib/cmd/bind/index.js +6 -3
  56. package/lib/cmd/bind/index.js.map +1 -1
  57. package/lib/cmd/bsmap/id-search.js +5 -6
  58. package/lib/cmd/bsmap/id-search.js.map +1 -1
  59. package/lib/cmd/bsmap/key-search.js +10 -10
  60. package/lib/cmd/bsmap/key-search.js.map +1 -1
  61. package/lib/cmd/bsmap/latest.js +13 -19
  62. package/lib/cmd/bsmap/latest.js.map +1 -1
  63. package/lib/cmd/config/index.d.ts +12 -0
  64. package/lib/cmd/config/index.js +70 -0
  65. package/lib/cmd/config/index.js.map +1 -0
  66. package/lib/cmd/deprecated/me.d.ts +1 -1
  67. package/lib/cmd/deprecated/me.js +6 -6
  68. package/lib/cmd/deprecated/me.js.map +1 -1
  69. package/lib/cmd/deprecated/tmp.js +2 -0
  70. package/lib/cmd/deprecated/tmp.js.map +1 -1
  71. package/lib/cmd/deprecated/whois.js +2 -2
  72. package/lib/cmd/deprecated/whois.js.map +1 -1
  73. package/lib/cmd/help.js +2 -2
  74. package/lib/cmd/index.js +3 -1
  75. package/lib/cmd/index.js.map +1 -1
  76. package/lib/cmd/rank.js +12 -18
  77. package/lib/cmd/rank.js.map +1 -1
  78. package/lib/cmd/score.d.ts +1 -1
  79. package/lib/cmd/score.js +20 -12
  80. package/lib/cmd/score.js.map +1 -1
  81. package/lib/cmd/subscribe/group-beatleader-score.d.ts +2 -0
  82. package/lib/cmd/subscribe/group-beatleader-score.js +41 -0
  83. package/lib/cmd/subscribe/group-beatleader-score.js.map +1 -0
  84. package/lib/cmd/subscribe/group-beatsaver-mapper.d.ts +2 -0
  85. package/lib/cmd/subscribe/group-beatsaver-mapper.js +42 -0
  86. package/lib/cmd/subscribe/group-beatsaver-mapper.js.map +1 -0
  87. package/lib/cmd/subscribe/id-beatleader-score.d.ts +2 -0
  88. package/lib/cmd/subscribe/id-beatleader-score.js +41 -0
  89. package/lib/cmd/subscribe/id-beatleader-score.js.map +1 -0
  90. package/lib/cmd/subscribe/id-beatsaver-mapper.d.ts +2 -0
  91. package/lib/cmd/subscribe/id-beatsaver-mapper.js +42 -0
  92. package/lib/cmd/subscribe/id-beatsaver-mapper.js.map +1 -0
  93. package/lib/cmd/subscribe/index.js +22 -6
  94. package/lib/cmd/subscribe/index.js.map +1 -1
  95. package/lib/cmd/subscribe/unsubscribe.d.ts +4 -3
  96. package/lib/cmd/subscribe/unsubscribe.js +38 -0
  97. package/lib/cmd/subscribe/unsubscribe.js.map +1 -1
  98. package/lib/config.d.ts +21 -4
  99. package/lib/errors/index.d.ts +30 -0
  100. package/lib/errors/index.js +94 -1
  101. package/lib/errors/index.js.map +1 -1
  102. package/lib/i18n/index.js +17 -11
  103. package/lib/i18n/index.js.map +1 -1
  104. package/lib/i18n/parser.d.ts +14 -0
  105. package/lib/i18n/parser.js +165 -0
  106. package/lib/i18n/parser.js.map +1 -0
  107. package/lib/i18n/zh-cn.json +1 -1
  108. package/lib/img-render/components/RankDifficulty.d.ts +6 -0
  109. package/lib/img-render/components/RankDifficulty.js +17 -0
  110. package/lib/img-render/components/RankDifficulty.js.map +1 -0
  111. package/lib/img-render/components/base/avatar.d.ts +7 -0
  112. package/lib/img-render/components/base/avatar.js +11 -0
  113. package/lib/img-render/components/base/avatar.js.map +1 -1
  114. package/lib/img-render/components/bl-rank-score-item.d.ts +18 -0
  115. package/lib/img-render/components/bl-rank-score-item.js +42 -0
  116. package/lib/img-render/components/bl-rank-score-item.js.map +1 -0
  117. package/lib/img-render/components/bl-score-item.d.ts +6 -0
  118. package/lib/img-render/components/bl-score-item.js +14 -0
  119. package/lib/img-render/components/bl-score-item.js.map +1 -0
  120. package/lib/img-render/components/blScoreItem.js +2 -2
  121. package/lib/img-render/components/blScoreItem.js.map +1 -1
  122. package/lib/img-render/components/rankScoreItem.d.ts +18 -0
  123. package/lib/img-render/components/rankScoreItem.js +42 -0
  124. package/lib/img-render/components/rankScoreItem.js.map +1 -0
  125. package/lib/img-render/components/scoregraph.d.ts +3 -1
  126. package/lib/img-render/components/scoregraph.js +5 -4
  127. package/lib/img-render/components/scoregraph.js.map +1 -1
  128. package/lib/img-render/components/ss-rank-score-item.d.ts +18 -0
  129. package/lib/img-render/components/ss-rank-score-item.js +42 -0
  130. package/lib/img-render/components/ss-rank-score-item.js.map +1 -0
  131. package/lib/img-render/components/ss-score-item.d.ts +4 -0
  132. package/lib/img-render/components/ss-score-item.js +14 -0
  133. package/lib/img-render/components/ss-score-item.js.map +1 -0
  134. package/lib/img-render/components/ssScoreItem.js +1 -1
  135. package/lib/img-render/components/ssScoreItem.js.map +1 -1
  136. package/lib/img-render/index.d.ts +13 -10
  137. package/lib/img-render/index.js +61 -34
  138. package/lib/img-render/index.js.map +1 -1
  139. package/lib/img-render/interfaces.d.ts +2 -0
  140. package/lib/img-render/render.js +26 -1
  141. package/lib/img-render/render.js.map +1 -1
  142. package/lib/img-render/result/bl-player.d.ts +2 -1
  143. package/lib/img-render/result/bl-player.js +7 -4
  144. package/lib/img-render/result/bl-player.js.map +1 -1
  145. package/lib/img-render/result/bl-score-with-rank.d.ts +14 -0
  146. package/lib/img-render/result/bl-score-with-rank.js +33 -0
  147. package/lib/img-render/result/bl-score-with-rank.js.map +1 -0
  148. package/lib/img-render/result/bl-score.js +1 -1
  149. package/lib/img-render/result/bl-score.js.map +1 -1
  150. package/lib/img-render/result/bs-score-with-rank.d.ts +13 -0
  151. package/lib/img-render/result/bs-score-with-rank.js +33 -0
  152. package/lib/img-render/result/bs-score-with-rank.js.map +1 -0
  153. package/lib/img-render/result/index.d.ts +3 -2
  154. package/lib/img-render/result/index.js +10 -5
  155. package/lib/img-render/result/index.js.map +1 -1
  156. package/lib/img-render/result/ss-player.d.ts +2 -1
  157. package/lib/img-render/result/ss-player.js +3 -4
  158. package/lib/img-render/result/ss-player.js.map +1 -1
  159. package/lib/img-render/result/ss-score-with-rank.d.ts +0 -0
  160. package/lib/img-render/result/ss-score-with-rank.js +277 -0
  161. package/lib/img-render/result/ss-score-with-rank.js.map +1 -0
  162. package/lib/img-render/utils/canvas.js +9 -3
  163. package/lib/img-render/utils/canvas.js.map +1 -1
  164. package/lib/img-render/utils/format.d.ts +3 -0
  165. package/lib/img-render/utils/format.js +25 -1
  166. package/lib/img-render/utils/format.js.map +1 -1
  167. package/lib/img-render/utils/index.d.ts +1 -1
  168. package/lib/img-render/utils/index.js +1 -1
  169. package/lib/img-render/utils/index.js.map +1 -1
  170. package/lib/img-render/utils/qrcode.js +8 -1
  171. package/lib/img-render/utils/qrcode.js.map +1 -1
  172. package/lib/interface/cmd.d.ts +3 -0
  173. package/lib/interface/db/index.d.ts +7 -0
  174. package/lib/interface/db/models.d.ts +5 -0
  175. package/lib/interface/render.d.ts +7 -5
  176. package/lib/schedules/index.d.ts +6 -2
  177. package/lib/schedules/index.js +9 -2
  178. package/lib/schedules/index.js.map +1 -1
  179. package/lib/schedules/interface.d.ts +2 -1
  180. package/lib/schedules/oauthTokenRefreshTask.js +8 -8
  181. package/lib/schedules/oauthTokenRefreshTask.js.map +1 -1
  182. package/lib/schedules/temp.d.ts +2 -1
  183. package/lib/schedules/temp.js +20 -25
  184. package/lib/schedules/temp.js.map +1 -1
  185. package/lib/utils/cache.d.ts +2 -1
  186. package/lib/utils/cache.js +4 -4
  187. package/lib/utils/cache.js.map +1 -1
  188. package/lib/utils/fetch/error.d.ts +9 -0
  189. package/lib/utils/fetch/error.js +27 -0
  190. package/lib/utils/fetch/error.js.map +1 -0
  191. package/lib/utils/fetch/index.d.ts +4 -0
  192. package/lib/utils/fetch/index.js +34 -0
  193. package/lib/utils/fetch/index.js.map +1 -0
  194. package/lib/utils/fetch/ofetch.d.ts +23 -0
  195. package/lib/utils/fetch/ofetch.js +85 -0
  196. package/lib/utils/fetch/ofetch.js.map +1 -0
  197. package/lib/utils/index.d.ts +3 -0
  198. package/lib/utils/index.js +4 -1
  199. package/lib/utils/index.js.map +1 -1
  200. package/lib/utils/preference.d.ts +35 -0
  201. package/lib/utils/preference.js +115 -0
  202. package/lib/utils/preference.js.map +1 -0
  203. package/lib/utils/puppeteer.d.ts +23 -0
  204. package/lib/utils/puppeteer.js +92 -0
  205. package/lib/utils/puppeteer.js.map +1 -0
  206. package/lib/utils/s3.d.ts +11 -0
  207. package/lib/utils/s3.js +60 -0
  208. package/lib/utils/s3.js.map +1 -0
  209. package/lib/ws/beatsaver.js +16 -2
  210. package/lib/ws/beatsaver.js.map +1 -1
  211. package/package.json +12 -4
@@ -0,0 +1,277 @@
1
+ // import {
2
+ // Check,
3
+ // Key,
4
+ // Clock,
5
+ // ThumbsUp,
6
+ // ThumbsDown,
7
+ // Calendar,
8
+ // HeartPulse,
9
+ // } from 'lucide-react'
10
+ // import ScoreGraph from '../components/scoregraph'
11
+ // import React from 'react'
12
+ // import { BSOR, Score } from '../../api/interfaces/beatleader'
13
+ // import { BSMap } from '../../api/interfaces/beatsaver'
14
+ // import {
15
+ // BlRankScoreItem,
16
+ // ScoreItemSkeleton,
17
+ // } from '../../img-render/components/bl-rank-score-item'
18
+ // import { RankDifficulty } from '../../img-render/components/RankDifficulty'
19
+ // import { Avatar } from '../../img-render/components/base/avatar'
20
+ // import { formatDuration, formatTime } from '../../img-render/utils'
21
+ // import Progressbar from '../../img-render/components/progressbar'
22
+ // import {SSScore} from "../../api/interfaces/scoresaber";
23
+ //
24
+ // interface SSScoreProps {
25
+ // score: SSScore
26
+ // aroundScores: SSScore[]
27
+ // regionTopScores: SSScore[]
28
+ // bsMap: BSMap
29
+ // difficulties: any[]
30
+ // statistic: any
31
+ // bsor: BSOR
32
+ // bg: string
33
+ // }
34
+ //
35
+ // export default function SSRankScore({
36
+ // score,
37
+ // aroundScores,
38
+ // regionTopScores,
39
+ // difficulties,
40
+ // bsMap,
41
+ // statistic,
42
+ // bsor,
43
+ // bg,
44
+ // }: SSScoreProps) {
45
+ //
46
+ //
47
+ // let aroundScore = aroundScores
48
+ // .slice(0, 7)
49
+ // .map((it) => ({ ...it, template: false }))
50
+ // let regionTopScore = regionTopScores
51
+ // .slice(0, 7)
52
+ // .map((it) => ({ ...it, template: false }))
53
+ // if (aroundScore.length < 7) {
54
+ // aroundScore = aroundScore.concat(
55
+ // new Array(7 - aroundScore.length).fill({ template: true })
56
+ // )
57
+ // }
58
+ // if (regionTopScore.length < 7) {
59
+ // regionTopScore = regionTopScore.concat(
60
+ // new Array(7 - regionTopScore.length).fill({ template: true })
61
+ // )
62
+ // }
63
+ //
64
+ // return (
65
+ // <>
66
+ // <div
67
+ // className={
68
+ // 'flex flex-col justify-center items-center relative h-[720px] w-[1165px] my-auto rounded-none'
69
+ // }
70
+ // id="render-result"
71
+ // >
72
+ // <div
73
+ // className={
74
+ // 'bg-blend-darken h-full w-full left-auto absolute right-auto bg-black/[.6] p-4 text-white flex flex-col justify-between z-10'
75
+ // }
76
+ // >
77
+ // <div className={'flex justify-between items-start gap-2 grow'}>
78
+ // <div className="flex flex-col items-start justify-between text-xl font-bold grow h-full">
79
+ // <div className="flex space-x-4 items-center justify-between text-2xl font-bold">
80
+ // <Avatar
81
+ // className={'h-16 w-16 rounded-full'}
82
+ // src={score.player.avatar}
83
+ // fallback={score.player.name.slice(0, 1)}
84
+ // />
85
+ // <div>{score.player.name}</div>
86
+ // </div>
87
+ // <div className="text-xl text-ellipsis line-clamp-2">
88
+ // {score.song.name}
89
+ // </div>
90
+ // <div className="flex space-x-4 h-52">
91
+ // <Avatar
92
+ // className={'h-52 w-52 rounded-md'}
93
+ // src={score.song.cover}
94
+ // fallback={score.song.name.slice(0, 1)}
95
+ // />
96
+ // <div className="text-xs font-bold flex flex-col items-start justify-between grow w-full">
97
+ // <div className="flex space-x-2 items-center text-sm">
98
+ // <Avatar
99
+ // className={'h-4 w-4 rounded-full'}
100
+ // src={bsMap.uploader.avatar}
101
+ // fallback={score.song.mapper.slice(0, 1)}
102
+ // />
103
+ // <div className="flex items-center justify-between">
104
+ // <div className="text-ellipsis line-clamp-1">
105
+ // {score.song.mapper}
106
+ // </div>
107
+ // </div>
108
+ // </div>
109
+ // <div className="text-xs flex gap-2 items-center *:space-x-1 *:flex *:items-center font-normal">
110
+ // <div className="flex items-center">
111
+ // <HeartPulse className="h-3 w-3" />
112
+ // <span>{bsMap.metadata.bpm.toFixed(0)}</span>
113
+ // </div>
114
+ // <div>
115
+ // <span>
116
+ // <Key className={'w-3 h-3'} />
117
+ // </span>
118
+ // <span>
119
+ // {score.song.id.toLowerCase().replaceAll('x', '')}
120
+ // </span>
121
+ // </div>
122
+ //
123
+ // <div className="flex items-center">
124
+ // <Clock className="h-3 w-3" />
125
+ // <span>{formatDuration(bsMap.metadata.duration)}</span>
126
+ // </div>
127
+ // <div className="flex items-center text-ellipsis col-span-2 line-clamp-1">
128
+ // <Calendar className="h-3 w-3" />
129
+ // <span>{formatTime(bsMap.lastPublishedAt)}</span>
130
+ // </div>
131
+ // </div>
132
+ // <div className="flex items-center space-x-2 justify-between font-normal">
133
+ // <Progressbar
134
+ // value={bsMap.stats.score * 100}
135
+ // // className="h-1.5"
136
+ // // containerClassName="h-1.5"
137
+ // />
138
+ // <span>{(bsMap.stats.score * 100).toFixed(2)} %</span>
139
+ // <div className="flex items-center">
140
+ // <ThumbsUp className="h-3 w-3 mr-0.5" />
141
+ // <span>{bsMap.stats.upvotes}</span>
142
+ // </div>
143
+ // <div className="flex items-center">
144
+ // <ThumbsDown className="h-3 w-3 mr-0.5" />
145
+ // <span>{bsMap.stats.downvotes}</span>
146
+ // </div>
147
+ // </div>
148
+ // <div className={'text-lg min-w-60 flex flex-col leading-6'}>
149
+ // <div className="flex justify-between items-center">
150
+ // <span> # {score.pp.toFixed(2)} PP</span>
151
+ // <span> # {score.rank}</span>
152
+ // </div>
153
+ // {
154
+ // <div className="flex items-center justify-between">
155
+ // <span>Accuracy</span>
156
+ // <span>{(score.accuracy * 100).toFixed(2)} %</span>
157
+ // </div>
158
+ // }
159
+ // {score.fullCombo && (
160
+ // <div className="flex items-center justify-between">
161
+ // <span>Full Combo</span>
162
+ // <Check />
163
+ // </div>
164
+ // )}
165
+ // {score.maxCombo && (
166
+ // <div className="flex items-center justify-between">
167
+ // <span>Max Combo</span>
168
+ // <span>{score.maxCombo}</span>
169
+ // </div>
170
+ // )}
171
+ //
172
+ // {
173
+ // <div className="flex items-center justify-between">
174
+ // <span>Missed Notes</span>
175
+ // <span>{score.missedNotes}</span>
176
+ // </div>
177
+ // }
178
+ // {
179
+ // <div className="flex items-center justify-between">
180
+ // <span>Total Mistakes</span>
181
+ // <span>{score.missedNotes}</span>
182
+ // </div>
183
+ // }
184
+ // {score.modifiers && (
185
+ // <div className="flex items-center justify-between">
186
+ // <span>Modifiers</span>
187
+ // <span>{score.modifiers}</span>
188
+ // </div>
189
+ // )}
190
+ // </div>
191
+ // </div>
192
+ // </div>
193
+ // {/*diff code */}
194
+ // <div className="text-xl font-bold h-24 w-[500px] rounded-lg mt-auto flex items-center justify-evenly gap-2 ">
195
+ // {difficulties
196
+ // .filter((it: any) => it.mode === 1)
197
+ // .map((diff: any) => (
198
+ // <RankDifficulty
199
+ // difficulty={diff.difficultyName}
200
+ // stars={diff.stars}
201
+ // current={score.difficulty.id === diff.id}
202
+ // key={diff.difficultyName}
203
+ // />
204
+ // ))}
205
+ // </div>
206
+ //
207
+ // {/*acc graph*/}
208
+ // <div className="align-end mt-2 mb-2">
209
+ // <span className="text-xl font-bold">AccGraph</span>
210
+ //
211
+ // {/*<ScoreGraph scoreId={score.id} scoreInfo={score} />*/}
212
+ // </div>
213
+ // </div>
214
+ // <div className={'flex justify-between gap-2 items-start mt-auto'}>
215
+ // <div className={'flex flex-col items-start gap-2'}>
216
+ // <div className={'text-white font-bold text-3xl mr-auto'}>
217
+ // Global Rank
218
+ // </div>
219
+ // {aroundScore.map((cur: any, idx) =>
220
+ // !cur.template ? (
221
+ // <BlRankScoreItem
222
+ // key={cur.id}
223
+ // name={cur.player.name}
224
+ // date={cur.timepost}
225
+ // countryCode={cur.player.country ?? 'CN'}
226
+ // avatar={cur.player.avatar}
227
+ // globalRank={cur.rank}
228
+ // score={cur.modifiedScore}
229
+ // modifiers={cur.modifiers}
230
+ // isRegionRank={false}
231
+ // acc={cur.accuracy}
232
+ // pp={cur.pp}
233
+ // self={cur.player.id === score.leaderboardPlayerInfo.id}
234
+ // />
235
+ // ) : (
236
+ // <ScoreItemSkeleton isRegionRank={false} key={idx} />
237
+ // )
238
+ // )}
239
+ // </div>
240
+ // <div className={'flex flex-col items-start gap-2'}>
241
+ // <div className={'text-white font-bold text-3xl mr-auto'}>
242
+ // Region Top Rank
243
+ // </div>
244
+ // {regionTopScore.map((cur: any, idx) =>
245
+ // !cur.template ? (
246
+ // <BlRankScoreItem
247
+ // key={cur.id}
248
+ // name={cur.player.name}
249
+ // date={cur.timepost}
250
+ // countryCode={cur.player.country ?? 'CN'}
251
+ // avatar={cur.player.avatar}
252
+ // globalRank={cur.rank}
253
+ // score={cur.modifiedScore}
254
+ // modifiers={cur.modifiers}
255
+ // isRegionRank
256
+ // acc={cur.accuracy}
257
+ // pp={cur.pp}
258
+ // self={cur.player.id === score.playerId}
259
+ // />
260
+ // ) : (
261
+ // <ScoreItemSkeleton isRegionRank key={idx} />
262
+ // )
263
+ // )}
264
+ // </div>
265
+ // </div>
266
+ // </div>
267
+ // </div>
268
+ // <img
269
+ // src={bg}
270
+ // className={'inset-0 rounded-lg absolute h-full object-cover w-full'}
271
+ // loading={'eager'}
272
+ // />
273
+ // </div>
274
+ // </>
275
+ // )
276
+ // }
277
+ //# sourceMappingURL=ss-score-with-rank.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ss-score-with-rank.js","sourceRoot":"","sources":["../../../src/img-render/result/ss-score-with-rank.tsx"],"names":[],"mappings":"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"}
@@ -44,7 +44,7 @@ exports.canvasHelper = {
44
44
  };
45
45
  const canvasBuilder = async () => {
46
46
  try {
47
- const { createCanvas: _createCanvas } = await Promise.resolve().then(() => __importStar(require('canvas')));
47
+ const { createCanvas: _createCanvas } = await Promise.resolve().then(() => __importStar(require('@napi-rs/canvas')));
48
48
  exports.canvasHelper.createCanvas = _createCanvas;
49
49
  exports.canvasHelper.canvasToDataURL = (canvas) => {
50
50
  return canvas.toDataURL('image/png');
@@ -53,6 +53,14 @@ const canvasBuilder = async () => {
53
53
  }
54
54
  catch (err) {
55
55
  try {
56
+ const { createCanvas: _createCanvas } = await Promise.resolve().then(() => __importStar(require('canvas')));
57
+ exports.canvasHelper.createCanvas = _createCanvas;
58
+ exports.canvasHelper.canvasToDataURL = (canvas) => {
59
+ return canvas.toDataURL('image/png');
60
+ };
61
+ exports.canvasHelper.enable = true;
62
+ }
63
+ catch (err) {
56
64
  const { Canvas } = await Promise.resolve().then(() => __importStar(require('skia-canvas')));
57
65
  exports.canvasHelper.createCanvas = (h, w) => {
58
66
  return new Canvas(h, w);
@@ -62,8 +70,6 @@ const canvasBuilder = async () => {
62
70
  };
63
71
  exports.canvasHelper.enable = true;
64
72
  }
65
- catch (err) {
66
- }
67
73
  }
68
74
  };
69
75
  canvasBuilder().then(() => console.log(`canvas init over: enable: ${exports.canvasHelper.enable}`));
@@ -1 +1 @@
1
- {"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/img-render/utils/canvas.js"],"names":[],"mappings":";AAAA,yDAAyD;AACzD,sCAAsC;AACtC,mEAAmE;AACnE,oBAAoB;AACpB,yCAAyC;AACzC,wCAAwC;AACxC,IAAI;AACJ,EAAE;AACF,oDAAoD;AACpD,yDAAyD;AACzD,2CAA2C;AAC3C,yCAAyC;AACzC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;AAGS,QAAA,YAAY,GAAG;IAC1B,YAAY,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE,GAAC,OAAO,EAAE,CAAA,CAAA,CAAC;IAChC,MAAM,EAAE,KAAK;IACb,eAAe,EAAE,CAAC,MAAM,EAAC,EAAE,CAAC,EAAE;CAC/B,CAAA;AAED,MAAM,aAAa,GAAG,KAAK,IAAG,EAAE;IAC9B,IAAI,CAAC;QACH,MAAM,EAAC,YAAY,EAAE,aAAa,EAAC,GAAG,wDAAa,QAAQ,GAAC,CAAA;QAC5D,oBAAY,CAAC,YAAY,GAAG,aAAa,CAAA;QACzC,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;YACvC,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QACtC,CAAC,CAAA;QACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;IAC5B,CAAC;IAAA,OAAM,GAAG,EAAE,CAAC;QACX,IAAI,CAAC;YACH,MAAM,EAAC,MAAM,EAAC,GAAG,wDAAa,aAAa,GAAC,CAAA;YAC5C,oBAAY,CAAC,YAAY,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE;gBACjC,OAAO,IAAI,MAAM,CAAC,CAAC,EAAC,CAAC,CAAC,CAAA;YACxB,CAAC,CAAA;YACD,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;gBACvC,OAAO,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YAC1C,CAAC,CAAA;YACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;QAC5B,CAAC;QAAA,OAAM,GAAG,EAAE,CAAC;QAEb,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,aAAa,EAAE,CAAC,IAAI,CAAC,GAAE,EAAE,CAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,oBAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/img-render/utils/canvas.js"],"names":[],"mappings":";AAAA,yDAAyD;AACzD,sCAAsC;AACtC,mEAAmE;AACnE,oBAAoB;AACpB,yCAAyC;AACzC,wCAAwC;AACxC,IAAI;AACJ,EAAE;AACF,oDAAoD;AACpD,yDAAyD;AACzD,2CAA2C;AAC3C,yCAAyC;AACzC,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;AAGS,QAAA,YAAY,GAAG;IAC1B,YAAY,EAAE,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE,GAAC,OAAO,EAAE,CAAA,CAAA,CAAC;IAChC,MAAM,EAAE,KAAK;IACb,eAAe,EAAE,CAAC,MAAM,EAAC,EAAE,CAAC,EAAE;CAC/B,CAAA;AAED,MAAM,aAAa,GAAG,KAAK,IAAG,EAAE;IAC9B,IAAI,CAAC;QAEH,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,wDAAa,iBAAiB,GAAC,CAAA;QACvE,oBAAY,CAAC,YAAY,GAAG,aAAa,CAAA;QACzC,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;YACvC,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QACtC,CAAC,CAAA;QACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;IAE5B,CAAC;IAAA,OAAM,GAAG,EAAE,CAAC;QACX,IAAI,CAAC;YACH,MAAM,EAAC,YAAY,EAAE,aAAa,EAAC,GAAG,wDAAa,QAAQ,GAAC,CAAA;YAC5D,oBAAY,CAAC,YAAY,GAAG,aAAa,CAAA;YACzC,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;gBACvC,OAAO,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;YACtC,CAAC,CAAA;YACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;QAE5B,CAAC;QAAA,OAAM,GAAG,EAAE,CAAC;YACX,MAAM,EAAC,MAAM,EAAC,GAAG,wDAAa,aAAa,GAAC,CAAA;YAC5C,oBAAY,CAAC,YAAY,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,EAAE;gBACjC,OAAO,IAAI,MAAM,CAAC,CAAC,EAAC,CAAC,CAAC,CAAA;YACxB,CAAC,CAAA;YACD,oBAAY,CAAC,eAAe,GAAG,CAAC,MAAM,EAAC,EAAE;gBACvC,OAAO,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YAC1C,CAAC,CAAA;YACD,oBAAY,CAAC,MAAM,GAAG,IAAI,CAAA;QAC5B,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,aAAa,EAAE,CAAC,IAAI,CAAC,GAAE,EAAE,CAAA,OAAO,CAAC,GAAG,CAAC,6BAA6B,oBAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA"}
@@ -1,3 +1,6 @@
1
1
  export declare const formatDuration: (duration: number) => string;
2
2
  export declare const formatTime: (time: string) => string;
3
+ export declare function formatRelativeTimeByDay(time: string | number | Date): string;
3
4
  export declare const formatNumber: (number: number) => string;
5
+ export declare function numberWithCommas(x: number): string;
6
+ export declare const formatDate: (time: Date | undefined, template?: string) => string;
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.formatNumber = exports.formatTime = exports.formatDuration = void 0;
6
+ exports.formatDate = exports.numberWithCommas = exports.formatNumber = exports.formatRelativeTimeByDay = exports.formatTime = exports.formatDuration = void 0;
7
7
  const dayjs_1 = __importDefault(require("dayjs"));
8
8
  const duration_1 = __importDefault(require("dayjs/plugin/duration"));
9
9
  const relativeTime_1 = __importDefault(require("dayjs/plugin/relativeTime"));
@@ -22,6 +22,20 @@ const formatTime = (time) => {
22
22
  return (0, dayjs_1.default)(time).locale(zh_cn_1.default).fromNow();
23
23
  };
24
24
  exports.formatTime = formatTime;
25
+ function formatRelativeTimeByDay(time) {
26
+ let res = (0, dayjs_1.default)().diff((0, dayjs_1.default)(time), 'd');
27
+ let unit = 'd';
28
+ if (res <= 0) {
29
+ res = (0, dayjs_1.default)().diff((0, dayjs_1.default)(time), 'h');
30
+ unit = 'h';
31
+ }
32
+ if (res <= 0) {
33
+ res = (0, dayjs_1.default)().diff((0, dayjs_1.default)(time), 'm');
34
+ unit = 'm';
35
+ }
36
+ return `${res}${unit}`;
37
+ }
38
+ exports.formatRelativeTimeByDay = formatRelativeTimeByDay;
25
39
  const formatNumber = (number) => {
26
40
  // 1.11w
27
41
  try {
@@ -39,4 +53,14 @@ const formatNumber = (number) => {
39
53
  }
40
54
  };
41
55
  exports.formatNumber = formatNumber;
56
+ function numberWithCommas(x) {
57
+ return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
58
+ }
59
+ exports.numberWithCommas = numberWithCommas;
60
+ const formatDate = (time, template) => {
61
+ if (!time)
62
+ return undefined;
63
+ return (0, dayjs_1.default)(time).format(template ?? 'YYYY-MM-DD');
64
+ };
65
+ exports.formatDate = formatDate;
42
66
  //# sourceMappingURL=format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/img-render/utils/format.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AACzB,qEAA4C;AAC5C,6EAAoD;AACpD,+DAAmC;AACnC,eAAK,CAAC,MAAM,CAAC,kBAAQ,CAAC,CAAA;AACtB,eAAK,CAAC,MAAM,CAAC,sBAAY,CAAC,CAAA;AACnB,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE;IACjD,MAAM,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC5C,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;AAC7B,CAAC,CAAA;AAHY,QAAA,cAAc,kBAG1B;AAED,wDAAwD;AACxD,8DAA8D;AAC9D,IAAI;AAEG,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;IACzC,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,eAAE,CAAC,CAAC,OAAO,EAAE,CAAA;AACzC,CAAC,CAAA;AAFY,QAAA,UAAU,cAEtB;AAEM,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,QAAQ;IACR,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,KAAK,EAAE,CAAC;YACnB,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;QAC5C,CAAC;QACD,QAAQ;QACR,IAAI,MAAM,GAAG,IAAI,EAAE,CAAC;YAClB,OAAO,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC1B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAA;IACZ,CAAC;AACH,CAAC,CAAA;AAdY,QAAA,YAAY,gBAcxB"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/img-render/utils/format.ts"],"names":[],"mappings":";;;;;;AAAA,kDAAyB;AACzB,qEAA4C;AAC5C,6EAAoD;AACpD,+DAAmC;AACnC,eAAK,CAAC,MAAM,CAAC,kBAAQ,CAAC,CAAA;AACtB,eAAK,CAAC,MAAM,CAAC,sBAAY,CAAC,CAAA;AACnB,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE;IACjD,MAAM,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC5C,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;AAC7B,CAAC,CAAA;AAHY,QAAA,cAAc,kBAG1B;AAED,wDAAwD;AACxD,8DAA8D;AAC9D,IAAI;AAEG,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;IACzC,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,eAAE,CAAC,CAAC,OAAO,EAAE,CAAA;AACzC,CAAC,CAAA;AAFY,QAAA,UAAU,cAEtB;AAED,SAAgB,uBAAuB,CAAC,IAA4B;IAClE,IAAI,GAAG,GAAG,IAAA,eAAK,GAAE,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;IACxC,IAAI,IAAI,GAAG,GAAG,CAAA;IACd,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACb,GAAG,GAAG,IAAA,eAAK,GAAE,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QACpC,IAAI,GAAG,GAAG,CAAA;IACZ,CAAC;IACD,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACb,GAAG,GAAG,IAAA,eAAK,GAAE,CAAC,IAAI,CAAC,IAAA,eAAK,EAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QACpC,IAAI,GAAG,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,GAAG,GAAG,GAAG,IAAI,EAAE,CAAA;AACxB,CAAC;AAZD,0DAYC;AAEM,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,EAAE;IAC7C,QAAQ;IACR,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,KAAK,EAAE,CAAC;YACnB,OAAO,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;QAC5C,CAAC;QACD,QAAQ;QACR,IAAI,MAAM,GAAG,IAAI,EAAE,CAAC;YAClB,OAAO,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;QAC3C,CAAC;QACD,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC1B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAA;IACZ,CAAC;AACH,CAAC,CAAA;AAdY,QAAA,YAAY,gBAcxB;AAED,SAAgB,gBAAgB,CAAC,CAAS;IACxC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAA;AAC3D,CAAC;AAFD,4CAEC;AACM,MAAM,UAAU,GAAG,CAAC,IAAsB,EAAE,QAAiB,EAAE,EAAE;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAA;IAC3B,OAAO,IAAA,eAAK,EAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,YAAY,CAAC,CAAA;AACrD,CAAC,CAAA;AAHY,QAAA,UAAU,cAGtB"}
@@ -1,3 +1,3 @@
1
1
  export * from './format';
2
2
  export * from './tag-format';
3
- export declare const diffConv: (diff: string) => "E+" | "EX" | "H" | "N" | "E";
3
+ export declare const diffConv: (diff: string) => "EX+" | "EX" | "H" | "N" | "E";
@@ -19,7 +19,7 @@ __exportStar(require("./format"), exports);
19
19
  __exportStar(require("./tag-format"), exports);
20
20
  const diffConv = (diff) => {
21
21
  if (diff.includes('ExpertPlus')) {
22
- return 'E+';
22
+ return 'EX+';
23
23
  }
24
24
  else if (diff.includes('Expert')) {
25
25
  return 'EX';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/img-render/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,+CAA4B;AAErB,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE;IACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAA;IACb,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,CAAA;IACZ,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAXY,QAAA,QAAQ,YAWpB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/img-render/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,+CAA4B;AAErB,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE;IACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,OAAO,KAAK,CAAA;IACd,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAA;IACb,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,CAAA;IACZ,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAXY,QAAA,QAAQ,YAWpB"}
@@ -1,6 +1,13 @@
1
1
  "use strict";
2
+ // import {
3
+ // CornerDotType,
4
+ // CornerSquareType,
5
+ // DotType,
6
+ // QRCodeCanvas,
7
+ // TypeNumber,
8
+ // } from '@loskir/styled-qr-code-node'
2
9
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const styled_qr_code_node_1 = require("@loskir/styled-qr-code-node");
10
+ const styled_qr_code_node_1 = require("@ktfun/styled-qr-code-node");
4
11
  async function createQrcode(url, width = 300, height = 300) {
5
12
  const options = {
6
13
  width: width ?? 300,
@@ -1 +1 @@
1
- {"version":3,"file":"qrcode.js","sourceRoot":"","sources":["../../../src/img-render/utils/qrcode.ts"],"names":[],"mappings":";;AAAA,qEAMoC;AAErB,KAAK,UAAU,YAAY,CACxC,GAAW,EACX,QAAgB,GAAG,EACnB,SAAiB,GAAG;IAEpB,MAAM,OAAO,GAAG;QACd,KAAK,EAAE,KAAK,IAAI,GAAG;QACnB,MAAM,EAAE,MAAM,IAAI,GAAG;QACrB,IAAI,EAAE,QAAe;QACrB,IAAI,EAAE,GAAG;QACT,MAAM,EAAE,CAAC;QACT,SAAS,EAAE;YACT,UAAU,EAAE,CAAe;YAC3B,IAAI,EAAE,MAAa;YACnB,oBAAoB,EAAE,GAAU;SACjC;QACD,YAAY,EAAE;YACZ,kBAAkB,EAAE,IAAI;YACxB,SAAS,EAAE,GAAG;YACd,MAAM,EAAE,EAAE;YACV,WAAW,EAAE,WAAW;SACzB;QACD,WAAW,EAAE;YACX,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,SAAoB;SAC3B;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,cAAc;SACtB;QACD,oBAAoB,EAAE;YACpB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,eAAmC;SAC1C;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,KAAsB;SAC7B;KACF,CAAA;IACD,MAAM,MAAM,GAAG,IAAI,kCAAY,CAAC,OAAO,CAAC,CAAA;IAExC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACzC,OAAO,GAAG,CAAA;AACZ,CAAC;AA1CD,+BA0CC"}
1
+ {"version":3,"file":"qrcode.js","sourceRoot":"","sources":["../../../src/img-render/utils/qrcode.ts"],"names":[],"mappings":";AAAA,WAAW;AACX,mBAAmB;AACnB,sBAAsB;AACtB,aAAa;AACb,kBAAkB;AAClB,gBAAgB;AAChB,uCAAuC;;AAEvC,oEAAyD;AAE1C,KAAK,UAAU,YAAY,CACxC,GAAW,EACX,QAAgB,GAAG,EACnB,SAAiB,GAAG;IAEpB,MAAM,OAAO,GAAG;QACd,KAAK,EAAE,KAAK,IAAI,GAAG;QACnB,MAAM,EAAE,MAAM,IAAI,GAAG;QACrB,IAAI,EAAE,QAAe;QACrB,IAAI,EAAE,GAAG;QACT,MAAM,EAAE,CAAC;QACT,SAAS,EAAE;YACT,UAAU,EAAE,CAAU;YACtB,IAAI,EAAE,MAAa;YACnB,oBAAoB,EAAE,GAAU;SACjC;QACD,YAAY,EAAE;YACZ,kBAAkB,EAAE,IAAI;YACxB,SAAS,EAAE,GAAG;YACd,MAAM,EAAE,EAAE;YACV,WAAW,EAAE,WAAW;SACzB;QACD,WAAW,EAAE;YACX,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,SAAkB;SACzB;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,cAAc;SACtB;QACD,oBAAoB,EAAE;YACpB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,eAAwB;SAC/B;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,KAAc;SACrB;KACF,CAAA;IACD,MAAM,MAAM,GAAG,IAAI,kCAAY,CAAC,OAAO,CAAC,CAAA;IAExC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACzC,OAAO,GAAG,CAAA;AACZ,CAAC;AA1CD,+BA0CC"}
@@ -4,6 +4,7 @@ import { Logger } from './logger';
4
4
  import { APIService } from '../api';
5
5
  import { DB } from '../interface/db';
6
6
  import { Config } from '../config';
7
+ import { TmpFileStorage, UserPreferenceStore } from '../utils';
7
8
  export interface CmdContext<CHANNEL, OPT> {
8
9
  render: ImgRender;
9
10
  api: APIService;
@@ -11,6 +12,8 @@ export interface CmdContext<CHANNEL, OPT> {
11
12
  db: DB<CHANNEL>;
12
13
  config: Config;
13
14
  session: Session;
15
+ userPreference: UserPreferenceStore;
16
+ s3: TmpFileStorage;
14
17
  options: OPT;
15
18
  input: string;
16
19
  }
@@ -22,6 +22,8 @@ export interface SubWithGroupRes<T> {
22
22
  groupChannel: RelateChannelInfo<T>;
23
23
  }
24
24
  export interface DB<T> {
25
+ storeUserPreference<V = any>(uid: number, value: V): Promise<boolean>;
26
+ getUserPreference<V = any>(uid: number): Promise<V>;
25
27
  getUserAccountsByUid(id: number): Promise<Record<string, RelateAccount>>;
26
28
  batchGetOrCreateUBySessionInfo(s: T[]): Promise<RelateChannelInfo<T>[]>;
27
29
  getUAndGBySessionInfo(s: T): Promise<[RelateChannelInfo<T>, RelateChannelInfo<T>]>;
@@ -29,7 +31,12 @@ export interface DB<T> {
29
31
  upsertSubscription(data: Partial<Subscribe>): Promise<void>;
30
32
  getSubscriptionInfoByUGID(gid: number, uid: number): Promise<SubInfoRes[]>;
31
33
  getSubscriptionsByGID(gid: number): Promise<Record<string, Subscribe>>;
34
+ getIDSubscriptionByGID(gid: number): Promise<Subscribe[]>;
35
+ getIDSubscriptionByType(type: string): Promise<SubWithGroupRes<T>[]>;
36
+ removeIDSubscriptionByID(id: number): Promise<void>;
37
+ getIDSubscriptionByGIDAndType(gid: number, type: string): Promise<Subscribe[]>;
32
38
  getAllSubScriptionByUIDAndPlatform(id: string | number, type: string): Promise<SubDetailWithGroupRes<T>[]>;
39
+ getSubscriptionsByType(type: string): Promise<SubDetailWithGroupRes<T>[]>;
33
40
  addSubscribeMember(data: Partial<SubscribeMember>): Promise<void>;
34
41
  removeFromSubGroupBySubAndUid(subId: number, id: number): Promise<void>;
35
42
  }
@@ -32,3 +32,8 @@ export type RelateChannelInfo<CHANNEL> = {
32
32
  name: string;
33
33
  type: 'user' | 'group' | string;
34
34
  } & CHANNEL;
35
+ export type UserPreference<T = any> = {
36
+ uid: number;
37
+ gid: number;
38
+ data: T;
39
+ };
@@ -1,8 +1,10 @@
1
+ /// <reference types="node" />
1
2
  import { Config } from '../config';
2
3
  import { APIService } from '../api';
3
4
  import { RenderOption } from '../img-render/interfaces';
4
5
  import { Platform } from '../interface';
5
6
  import { BSMap } from '../api/interfaces/beatsaver';
7
+ import { UserPreferenceStore } from '../utils';
6
8
  type HtmlToImgBufferConverter = (html: string, onRenderStart?: () => void, onRenderError?: (e: any) => void) => Promise<any>;
7
9
  export interface ImgRender {
8
10
  config: Config;
@@ -12,10 +14,10 @@ export interface ImgRender {
12
14
  _renderRank: (accountId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<any>;
13
15
  _renderScore: (scoreId: string, platform: Platform, api: APIService, renderOpts: RenderOption) => Promise<any>;
14
16
  _renderMap: (bsMap: BSMap, renderOpts: RenderOption) => Promise<any>;
15
- renderRank(accountId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<any>;
16
- renderScore(scoreId: string, platform: Platform, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<any>;
17
- renderMapById(mapId: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<any>;
18
- renderMap(map: BSMap, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<any>;
19
- renderUrl(url: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<any>;
17
+ renderRank(accountId: string, platform: Platform, userPreference?: UserPreferenceStore, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
18
+ renderScore(scoreId: string, platform: Platform, userPreference?: UserPreferenceStore, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
19
+ renderMapById(mapId: string, userPreference?: UserPreferenceStore, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
20
+ renderMap(map: BSMap, userPreference?: UserPreferenceStore, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
21
+ renderUrl(url: string, onRenderStart?: () => void, onRenderError?: (e: any) => void): Promise<Buffer>;
20
22
  }
21
23
  export {};
@@ -1,3 +1,7 @@
1
- import { ScheduleTask } from '../schedules/interface';
2
1
  import { Config } from '../config';
3
- export declare const getScheduleTasks: (config: Config) => ScheduleTask[];
2
+ export declare const getScheduleTasks: (config: Config) => {
3
+ name: string;
4
+ handler: <T>(c: import("./interface").ScheduleTaskCtx<T>) => Promise<void>;
5
+ cron: string;
6
+ enable: boolean;
7
+ }[];
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getScheduleTasks = void 0;
4
4
  const oauthTokenRefreshTask_1 = require("./oauthTokenRefreshTask");
5
+ const temp_1 = require("../schedules/temp");
5
6
  const oauthTokenRefreshTask = {
6
7
  name: 'oauthTokenRefreshTask',
7
8
  // config
@@ -9,8 +10,14 @@ const oauthTokenRefreshTask = {
9
10
  executor: oauthTokenRefreshTask_1.tokenRefreshTask,
10
11
  };
11
12
  const getScheduleTasks = (config) => {
12
- // oauthTokenRefreshTask
13
- return [];
13
+ return [
14
+ {
15
+ name: 'lb-rank-notifier',
16
+ handler: temp_1.LBScoreMonitor,
17
+ cron: config.tempCron.cron,
18
+ enable: config.tempCron.enable,
19
+ },
20
+ ];
14
21
  };
15
22
  exports.getScheduleTasks = getScheduleTasks;
16
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schedules/index.ts"],"names":[],"mappings":";;;AAAA,mEAA0D;AAI1D,MAAM,qBAAqB,GAAG;IAC5B,IAAI,EAAE,uBAAuB;IAC7B,SAAS;IACT,IAAI,EAAE,EAAE;IACR,QAAQ,EAAE,wCAAgB;CAC3B,CAAA;AAEM,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,EAAE;IACjD,wBAAwB;IACxB,OAAO,EAAoB,CAAA;AAC7B,CAAC,CAAA;AAHY,QAAA,gBAAgB,oBAG5B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schedules/index.ts"],"names":[],"mappings":";;;AAAA,mEAA0D;AAE1D,2CAAiD;AAEjD,MAAM,qBAAqB,GAAG;IAC5B,IAAI,EAAE,uBAAuB;IAC7B,SAAS;IACT,IAAI,EAAE,EAAE;IACR,QAAQ,EAAE,wCAAgB;CAC3B,CAAA;AAEM,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAAE,EAAE;IACjD,OAAO;QACL;YACE,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,qBAAc;YACvB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;YAC1B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;SAC/B;KACF,CAAA;AACH,CAAC,CAAA;AATY,QAAA,gBAAgB,oBAS5B"}
@@ -13,5 +13,6 @@ export type ScheduleTaskCtx<T> = {
13
13
  export type ScheduleTask = {
14
14
  name: string;
15
15
  cron: string;
16
- executor: <T>(c: ScheduleTaskCtx<T>) => Promise<void>;
16
+ handler: <T>(c: ScheduleTaskCtx<T>) => Promise<void>;
17
+ enable: boolean;
17
18
  };
@@ -14,8 +14,8 @@ const tokenRefreshTask = async (c) => {
14
14
  c.logger.info(`try to refresh ${account.platform} ${account.platformUid}'s token`);
15
15
  const now = new Date();
16
16
  if (account.platform === 'beatleader') {
17
- const token = await c.api.BeatLeader.wrapperResult().refreshOAuthToken(account.refreshToken);
18
- if (!token.isSuccess()) {
17
+ const token = await c.api.BeatLeader.refreshOAuthToken(account.refreshToken);
18
+ if (!token) {
19
19
  c.logger.info(`failed to refresh ${account.platform} token, invalid this account, ${JSON.stringify(account)}`);
20
20
  account.valid = 'invalid';
21
21
  account.lastModifiedAt = now;
@@ -24,12 +24,12 @@ const tokenRefreshTask = async (c) => {
24
24
  // bot.sendMessage(item.sub.channelId, '似乎 BeatSaver 通知的 token 已经失效了,通过 bbbind 重新绑定吧')
25
25
  continue;
26
26
  }
27
- account.accessToken = token.data.access_token;
28
- account.refreshToken = token.data.refresh_token;
27
+ account.accessToken = token.access_token;
28
+ account.refreshToken = token.refresh_token;
29
29
  }
30
30
  else if (account.platform === 'beatsaver') {
31
- const token = await c.api.BeatSaver.wrapperResult().refreshOAuthToken(account.refreshToken);
32
- if (!token.isSuccess()) {
31
+ const token = await c.api.BeatSaver.refreshOAuthToken(account.refreshToken);
32
+ if (!token) {
33
33
  c.logger.info(`failed to refresh ${account.platform} token, invalid this account, ${JSON.stringify(account)}`);
34
34
  account.valid = 'invalid';
35
35
  account.lastModifiedAt = now;
@@ -38,8 +38,8 @@ const tokenRefreshTask = async (c) => {
38
38
  // bot.sendMessage(item.sub.channelId, '似乎 BeatSaver 通知的 token 已经失效了,通过 bbbind 重新绑定吧')
39
39
  continue;
40
40
  }
41
- account.accessToken = token.data.access_token;
42
- account.refreshToken = token.data.refresh_token;
41
+ account.accessToken = token.access_token;
42
+ account.refreshToken = token.refresh_token;
43
43
  }
44
44
  account.lastRefreshAt = now;
45
45
  account.lastModifiedAt = now;
@@ -1 +1 @@
1
- {"version":3,"file":"oauthTokenRefreshTask.js","sourceRoot":"","sources":["../../src/schedules/oauthTokenRefreshTask.ts"],"names":[],"mappings":";;;AAEO,MAAM,gBAAgB,GAAG,KAAK,EAAK,CAAqB,EAAE,EAAE;IACjE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;IACzC,mBAAmB;IACnB,MAAM,QAAQ,GAAG,EAAE,CAAA;IACnB,yCAAyC;IACzC,oEAAoE;IACpE,oBAAoB;IACpB,mBAAmB;IACnB,KAAK;IACL,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,kBAAkB,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,WAAW,UAAU,CACpE,CAAA;QACD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,IAAI,OAAO,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,iBAAiB,CACpE,OAAO,CAAC,YAAY,CACrB,CAAA;YACD,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;gBACvB,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,qBAAqB,OAAO,CAAC,QAAQ,iCAAiC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAChG,CAAA;gBACD,OAAO,CAAC,KAAK,GAAG,SAAS,CAAA;gBACzB,OAAO,CAAC,cAAc,GAAG,GAAG,CAAA;gBAC5B,+DAA+D;gBAC/D,sCAAsC;gBACtC,sFAAsF;gBACtF,SAAQ;YACV,CAAC;YACD,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAA;YAC7C,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAA;QACjD,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,iBAAiB,CACnE,OAAO,CAAC,YAAY,CACrB,CAAA;YACD,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;gBACvB,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,qBAAqB,OAAO,CAAC,QAAQ,iCAAiC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAChG,CAAA;gBACD,OAAO,CAAC,KAAK,GAAG,SAAS,CAAA;gBACzB,OAAO,CAAC,cAAc,GAAG,GAAG,CAAA;gBAC5B,+DAA+D;gBAC/D,sCAAsC;gBACtC,sFAAsF;gBACtF,SAAQ;YACV,CAAC;YACD,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAA;YAC7C,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAA;QACjD,CAAC;QACD,OAAO,CAAC,aAAa,GAAG,GAAG,CAAA;QAC3B,OAAO,CAAC,cAAc,GAAG,GAAG,CAAA;QAC5B,EAAE;QACF,+DAA+D;QAC/D,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,WAAW,OAAO,CAAC,QAAQ,uBAAuB,OAAO,CAAC,WAAW,EAAE,CACxE,CAAA;IACH,CAAC;IACD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;AAC9C,CAAC,CAAA;AA1DY,QAAA,gBAAgB,oBA0D5B"}
1
+ {"version":3,"file":"oauthTokenRefreshTask.js","sourceRoot":"","sources":["../../src/schedules/oauthTokenRefreshTask.ts"],"names":[],"mappings":";;;AAEO,MAAM,gBAAgB,GAAG,KAAK,EAAK,CAAqB,EAAE,EAAE;IACjE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;IACzC,mBAAmB;IACnB,MAAM,QAAQ,GAAG,EAAE,CAAA;IACnB,yCAAyC;IACzC,oEAAoE;IACpE,oBAAoB;IACpB,mBAAmB;IACnB,KAAK;IACL,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,kBAAkB,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,WAAW,UAAU,CACpE,CAAA;QACD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,IAAI,OAAO,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,iBAAiB,CACpD,OAAO,CAAC,YAAY,CACrB,CAAA;YACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,qBAAqB,OAAO,CAAC,QAAQ,iCAAiC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAChG,CAAA;gBACD,OAAO,CAAC,KAAK,GAAG,SAAS,CAAA;gBACzB,OAAO,CAAC,cAAc,GAAG,GAAG,CAAA;gBAC5B,+DAA+D;gBAC/D,sCAAsC;gBACtC,sFAAsF;gBACtF,SAAQ;YACV,CAAC;YACD,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,CAAA;YACxC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,aAAa,CAAA;QAC5C,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,CACnD,OAAO,CAAC,YAAY,CACrB,CAAA;YACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,qBAAqB,OAAO,CAAC,QAAQ,iCAAiC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAChG,CAAA;gBACD,OAAO,CAAC,KAAK,GAAG,SAAS,CAAA;gBACzB,OAAO,CAAC,cAAc,GAAG,GAAG,CAAA;gBAC5B,+DAA+D;gBAC/D,sCAAsC;gBACtC,sFAAsF;gBACtF,SAAQ;YACV,CAAC;YACD,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,YAAY,CAAA;YACxC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,aAAa,CAAA;QAC5C,CAAC;QACD,OAAO,CAAC,aAAa,GAAG,GAAG,CAAA;QAC3B,OAAO,CAAC,cAAc,GAAG,GAAG,CAAA;QAC5B,EAAE;QACF,+DAA+D;QAC/D,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,WAAW,OAAO,CAAC,QAAQ,uBAAuB,OAAO,CAAC,WAAW,EAAE,CACxE,CAAA;IACH,CAAC;IACD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAA;AAC9C,CAAC,CAAA;AA1DY,QAAA,gBAAgB,oBA0D5B"}
@@ -1 +1,2 @@
1
- export {};
1
+ import { ScheduleTaskCtx } from '../schedules/interface';
2
+ export declare const LBScoreMonitor: <T>(c: ScheduleTaskCtx<T>) => Promise<void>;