hana-music-api 2.2.0 → 2.3.0

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 (709) hide show
  1. package/dist/api/activate_init_profile.d.ts +1 -1
  2. package/dist/api/activate_init_profile.js +1 -1
  3. package/dist/api/aidj_content_rcmd.d.ts +1 -1
  4. package/dist/api/aidj_content_rcmd.js +1 -1
  5. package/dist/api/album.d.ts +1 -1
  6. package/dist/api/album.js +1 -1
  7. package/dist/api/album_detail.d.ts +1 -1
  8. package/dist/api/album_detail.js +1 -1
  9. package/dist/api/album_detail_dynamic.d.ts +1 -1
  10. package/dist/api/album_detail_dynamic.js +1 -1
  11. package/dist/api/album_list.d.ts +1 -1
  12. package/dist/api/album_list.js +1 -1
  13. package/dist/api/album_list_style.d.ts +1 -1
  14. package/dist/api/album_list_style.js +1 -1
  15. package/dist/api/album_new.d.ts +1 -1
  16. package/dist/api/album_new.js +1 -1
  17. package/dist/api/album_newest.d.ts +1 -1
  18. package/dist/api/album_newest.js +1 -1
  19. package/dist/api/album_privilege.d.ts +1 -1
  20. package/dist/api/album_privilege.js +1 -1
  21. package/dist/api/album_songsaleboard.d.ts +1 -1
  22. package/dist/api/album_songsaleboard.js +1 -1
  23. package/dist/api/album_sub.d.ts +1 -1
  24. package/dist/api/album_sub.js +1 -1
  25. package/dist/api/album_sublist.d.ts +1 -1
  26. package/dist/api/album_sublist.js +1 -1
  27. package/dist/api/artist_album.d.ts +1 -1
  28. package/dist/api/artist_album.js +1 -1
  29. package/dist/api/artist_desc.d.ts +1 -1
  30. package/dist/api/artist_desc.js +1 -1
  31. package/dist/api/artist_detail.d.ts +1 -1
  32. package/dist/api/artist_detail.js +1 -1
  33. package/dist/api/artist_detail_dynamic.d.ts +1 -1
  34. package/dist/api/artist_detail_dynamic.js +1 -1
  35. package/dist/api/artist_fans.d.ts +1 -1
  36. package/dist/api/artist_fans.js +1 -1
  37. package/dist/api/artist_follow_count.d.ts +1 -1
  38. package/dist/api/artist_follow_count.js +1 -1
  39. package/dist/api/artist_list.d.ts +1 -1
  40. package/dist/api/artist_list.js +1 -1
  41. package/dist/api/artist_mv.d.ts +1 -1
  42. package/dist/api/artist_mv.js +1 -1
  43. package/dist/api/artist_new_mv.d.ts +1 -1
  44. package/dist/api/artist_new_mv.js +1 -1
  45. package/dist/api/artist_new_song.d.ts +1 -1
  46. package/dist/api/artist_new_song.js +1 -1
  47. package/dist/api/artist_songs.d.ts +1 -1
  48. package/dist/api/artist_songs.js +1 -1
  49. package/dist/api/artist_sub.d.ts +1 -1
  50. package/dist/api/artist_sub.js +1 -1
  51. package/dist/api/artist_sublist.d.ts +1 -1
  52. package/dist/api/artist_sublist.js +1 -1
  53. package/dist/api/artist_top_song.d.ts +1 -1
  54. package/dist/api/artist_top_song.js +1 -1
  55. package/dist/api/artist_video.d.ts +1 -1
  56. package/dist/api/artist_video.js +1 -1
  57. package/dist/api/artists.d.ts +1 -1
  58. package/dist/api/artists.js +1 -1
  59. package/dist/api/audio_match.d.ts +1 -1
  60. package/dist/api/audio_match.js +1 -1
  61. package/dist/api/avatar_upload.d.ts +1 -1
  62. package/dist/api/avatar_upload.js +1 -1
  63. package/dist/api/banner.d.ts +1 -1
  64. package/dist/api/banner.js +1 -1
  65. package/dist/api/batch.d.ts +1 -1
  66. package/dist/api/batch.js +1 -1
  67. package/dist/api/broadcast_category_region_get.d.ts +1 -1
  68. package/dist/api/broadcast_category_region_get.js +1 -1
  69. package/dist/api/broadcast_channel_collect_list.d.ts +1 -1
  70. package/dist/api/broadcast_channel_collect_list.js +1 -1
  71. package/dist/api/broadcast_channel_currentinfo.d.ts +1 -1
  72. package/dist/api/broadcast_channel_currentinfo.js +1 -1
  73. package/dist/api/broadcast_channel_list.d.ts +1 -1
  74. package/dist/api/broadcast_channel_list.js +1 -1
  75. package/dist/api/broadcast_sub.d.ts +1 -1
  76. package/dist/api/broadcast_sub.js +1 -1
  77. package/dist/api/calendar.d.ts +1 -1
  78. package/dist/api/calendar.js +1 -1
  79. package/dist/api/captcha_sent.d.ts +1 -1
  80. package/dist/api/captcha_sent.js +1 -1
  81. package/dist/api/captcha_verify.d.ts +1 -1
  82. package/dist/api/captcha_verify.js +1 -1
  83. package/dist/api/cellphone_existence_check.d.ts +1 -1
  84. package/dist/api/cellphone_existence_check.js +1 -1
  85. package/dist/api/check_music.d.ts +1 -1
  86. package/dist/api/check_music.js +1 -1
  87. package/dist/api/cloud.d.ts +1 -1
  88. package/dist/api/cloud.js +1 -1
  89. package/dist/api/cloud_import.d.ts +1 -1
  90. package/dist/api/cloud_import.js +1 -1
  91. package/dist/api/cloud_match.d.ts +1 -1
  92. package/dist/api/cloud_match.js +1 -1
  93. package/dist/api/cloudsearch.d.ts +1 -1
  94. package/dist/api/cloudsearch.js +1 -1
  95. package/dist/api/comment.d.ts +1 -1
  96. package/dist/api/comment.js +1 -1
  97. package/dist/api/comment_album.d.ts +1 -1
  98. package/dist/api/comment_album.js +1 -1
  99. package/dist/api/comment_dj.d.ts +1 -1
  100. package/dist/api/comment_dj.js +1 -1
  101. package/dist/api/comment_event.d.ts +1 -1
  102. package/dist/api/comment_event.js +1 -1
  103. package/dist/api/comment_floor.d.ts +1 -1
  104. package/dist/api/comment_floor.js +1 -1
  105. package/dist/api/comment_hot.d.ts +1 -1
  106. package/dist/api/comment_hot.js +1 -1
  107. package/dist/api/comment_hug_list.d.ts +1 -1
  108. package/dist/api/comment_hug_list.js +1 -1
  109. package/dist/api/comment_like.d.ts +1 -1
  110. package/dist/api/comment_like.js +1 -1
  111. package/dist/api/comment_music.d.ts +1 -1
  112. package/dist/api/comment_music.js +1 -1
  113. package/dist/api/comment_mv.d.ts +1 -1
  114. package/dist/api/comment_mv.js +1 -1
  115. package/dist/api/comment_new.d.ts +1 -1
  116. package/dist/api/comment_new.js +1 -1
  117. package/dist/api/comment_playlist.d.ts +1 -1
  118. package/dist/api/comment_playlist.js +1 -1
  119. package/dist/api/comment_video.d.ts +1 -1
  120. package/dist/api/comment_video.js +1 -1
  121. package/dist/api/countries_code_list.d.ts +1 -1
  122. package/dist/api/countries_code_list.js +1 -1
  123. package/dist/api/daily_signin.d.ts +1 -1
  124. package/dist/api/daily_signin.js +1 -1
  125. package/dist/api/digitalAlbum_detail.d.ts +1 -1
  126. package/dist/api/digitalAlbum_detail.js +1 -1
  127. package/dist/api/digitalAlbum_ordering.d.ts +1 -1
  128. package/dist/api/digitalAlbum_ordering.js +1 -1
  129. package/dist/api/digitalAlbum_purchased.d.ts +1 -1
  130. package/dist/api/digitalAlbum_purchased.js +1 -1
  131. package/dist/api/digitalAlbum_sales.d.ts +1 -1
  132. package/dist/api/digitalAlbum_sales.js +1 -1
  133. package/dist/api/djRadio_top.d.ts +1 -1
  134. package/dist/api/djRadio_top.js +1 -1
  135. package/dist/api/dj_banner.d.ts +1 -1
  136. package/dist/api/dj_banner.js +1 -1
  137. package/dist/api/dj_category_excludehot.d.ts +1 -1
  138. package/dist/api/dj_category_excludehot.js +1 -1
  139. package/dist/api/dj_category_recommend.d.ts +1 -1
  140. package/dist/api/dj_category_recommend.js +1 -1
  141. package/dist/api/dj_catelist.d.ts +1 -1
  142. package/dist/api/dj_catelist.js +1 -1
  143. package/dist/api/dj_detail.d.ts +1 -1
  144. package/dist/api/dj_detail.js +1 -1
  145. package/dist/api/dj_difm_all_style_channel.d.ts +1 -1
  146. package/dist/api/dj_difm_all_style_channel.js +1 -1
  147. package/dist/api/dj_difm_channel_subscribe.d.ts +1 -1
  148. package/dist/api/dj_difm_channel_subscribe.js +1 -1
  149. package/dist/api/dj_difm_channel_unsubscribe.d.ts +1 -1
  150. package/dist/api/dj_difm_channel_unsubscribe.js +1 -1
  151. package/dist/api/dj_difm_playing_tracks_list.d.ts +1 -1
  152. package/dist/api/dj_difm_playing_tracks_list.js +1 -1
  153. package/dist/api/dj_difm_subscribe_channels_get.d.ts +1 -1
  154. package/dist/api/dj_difm_subscribe_channels_get.js +1 -1
  155. package/dist/api/dj_hot.d.ts +1 -1
  156. package/dist/api/dj_hot.js +1 -1
  157. package/dist/api/dj_paygift.d.ts +1 -1
  158. package/dist/api/dj_paygift.js +1 -1
  159. package/dist/api/dj_personalize_recommend.d.ts +1 -1
  160. package/dist/api/dj_personalize_recommend.js +1 -1
  161. package/dist/api/dj_program.d.ts +1 -1
  162. package/dist/api/dj_program.js +1 -1
  163. package/dist/api/dj_program_detail.d.ts +1 -1
  164. package/dist/api/dj_program_detail.js +1 -1
  165. package/dist/api/dj_program_toplist.d.ts +1 -1
  166. package/dist/api/dj_program_toplist.js +1 -1
  167. package/dist/api/dj_program_toplist_hours.d.ts +1 -1
  168. package/dist/api/dj_program_toplist_hours.js +1 -1
  169. package/dist/api/dj_radio_hot.d.ts +1 -1
  170. package/dist/api/dj_radio_hot.js +1 -1
  171. package/dist/api/dj_recommend.d.ts +1 -1
  172. package/dist/api/dj_recommend.js +1 -1
  173. package/dist/api/dj_recommend_type.d.ts +1 -1
  174. package/dist/api/dj_recommend_type.js +1 -1
  175. package/dist/api/dj_sub.d.ts +1 -1
  176. package/dist/api/dj_sub.js +1 -1
  177. package/dist/api/dj_sublist.d.ts +1 -1
  178. package/dist/api/dj_sublist.js +1 -1
  179. package/dist/api/dj_subscriber.d.ts +1 -1
  180. package/dist/api/dj_subscriber.js +1 -1
  181. package/dist/api/dj_today_perfered.d.ts +1 -1
  182. package/dist/api/dj_today_perfered.js +1 -1
  183. package/dist/api/dj_toplist.d.ts +1 -1
  184. package/dist/api/dj_toplist.js +1 -1
  185. package/dist/api/dj_toplist_hours.d.ts +1 -1
  186. package/dist/api/dj_toplist_hours.js +1 -1
  187. package/dist/api/dj_toplist_newcomer.d.ts +1 -1
  188. package/dist/api/dj_toplist_newcomer.js +1 -1
  189. package/dist/api/dj_toplist_pay.d.ts +1 -1
  190. package/dist/api/dj_toplist_pay.js +1 -1
  191. package/dist/api/dj_toplist_popular.d.ts +1 -1
  192. package/dist/api/dj_toplist_popular.js +1 -1
  193. package/dist/api/event.d.ts +1 -1
  194. package/dist/api/event.js +1 -1
  195. package/dist/api/event_del.d.ts +1 -1
  196. package/dist/api/event_del.js +1 -1
  197. package/dist/api/event_forward.d.ts +1 -1
  198. package/dist/api/event_forward.js +1 -1
  199. package/dist/api/fm_trash.d.ts +1 -1
  200. package/dist/api/fm_trash.js +1 -1
  201. package/dist/api/follow.d.ts +1 -1
  202. package/dist/api/follow.js +1 -1
  203. package/dist/api/get_userids.d.ts +1 -1
  204. package/dist/api/get_userids.js +1 -1
  205. package/dist/api/history_recommend_songs.d.ts +1 -1
  206. package/dist/api/history_recommend_songs.js +1 -1
  207. package/dist/api/history_recommend_songs_detail.d.ts +1 -1
  208. package/dist/api/history_recommend_songs_detail.js +1 -1
  209. package/dist/api/homepage_block_page.d.ts +1 -1
  210. package/dist/api/homepage_block_page.js +1 -1
  211. package/dist/api/homepage_dragon_ball.d.ts +1 -1
  212. package/dist/api/homepage_dragon_ball.js +1 -1
  213. package/dist/api/hot_topic.d.ts +1 -1
  214. package/dist/api/hot_topic.js +1 -1
  215. package/dist/api/hug_comment.d.ts +1 -1
  216. package/dist/api/hug_comment.js +1 -1
  217. package/dist/api/image_upload_token.d.ts +1 -1
  218. package/dist/api/image_upload_token.js +1 -1
  219. package/dist/api/inner_version.d.ts +1 -1
  220. package/dist/api/inner_version.js +1 -1
  221. package/dist/api/like.d.ts +1 -1
  222. package/dist/api/like.js +1 -1
  223. package/dist/api/likelist.d.ts +1 -1
  224. package/dist/api/likelist.js +1 -1
  225. package/dist/api/listen_data_realtime_report.d.ts +1 -1
  226. package/dist/api/listen_data_realtime_report.js +1 -1
  227. package/dist/api/listen_data_report.d.ts +1 -1
  228. package/dist/api/listen_data_report.js +1 -1
  229. package/dist/api/listen_data_today_song.d.ts +1 -1
  230. package/dist/api/listen_data_today_song.js +1 -1
  231. package/dist/api/listen_data_total.d.ts +1 -1
  232. package/dist/api/listen_data_total.js +1 -1
  233. package/dist/api/listen_data_year_report.d.ts +1 -1
  234. package/dist/api/listen_data_year_report.js +1 -1
  235. package/dist/api/listentogether_accept.d.ts +1 -1
  236. package/dist/api/listentogether_accept.js +1 -1
  237. package/dist/api/listentogether_end.d.ts +1 -1
  238. package/dist/api/listentogether_end.js +1 -1
  239. package/dist/api/listentogether_heatbeat.d.ts +1 -1
  240. package/dist/api/listentogether_heatbeat.js +1 -1
  241. package/dist/api/listentogether_play_command.d.ts +1 -1
  242. package/dist/api/listentogether_play_command.js +1 -1
  243. package/dist/api/listentogether_room_check.d.ts +1 -1
  244. package/dist/api/listentogether_room_check.js +1 -1
  245. package/dist/api/listentogether_room_create.d.ts +1 -1
  246. package/dist/api/listentogether_room_create.js +1 -1
  247. package/dist/api/listentogether_status.d.ts +1 -1
  248. package/dist/api/listentogether_status.js +1 -1
  249. package/dist/api/listentogether_sync_list_command.d.ts +1 -1
  250. package/dist/api/listentogether_sync_list_command.js +1 -1
  251. package/dist/api/listentogether_sync_playlist_get.d.ts +1 -1
  252. package/dist/api/listentogether_sync_playlist_get.js +1 -1
  253. package/dist/api/login.d.ts +1 -1
  254. package/dist/api/login.js +1 -1
  255. package/dist/api/login_cellphone.d.ts +1 -1
  256. package/dist/api/login_cellphone.js +1 -1
  257. package/dist/api/login_qr_check.d.ts +1 -1
  258. package/dist/api/login_qr_check.js +1 -1
  259. package/dist/api/login_qr_create.d.ts +1 -1
  260. package/dist/api/login_qr_create.js +1 -1
  261. package/dist/api/login_qr_key.d.ts +1 -1
  262. package/dist/api/login_qr_key.js +1 -1
  263. package/dist/api/login_refresh.d.ts +1 -1
  264. package/dist/api/login_refresh.js +1 -1
  265. package/dist/api/login_status.d.ts +1 -1
  266. package/dist/api/login_status.js +1 -1
  267. package/dist/api/logout.d.ts +1 -1
  268. package/dist/api/logout.js +1 -1
  269. package/dist/api/lyric.d.ts +1 -1
  270. package/dist/api/lyric.js +1 -1
  271. package/dist/api/lyric_new.d.ts +1 -1
  272. package/dist/api/lyric_new.js +1 -1
  273. package/dist/api/mlog_music_rcmd.d.ts +1 -1
  274. package/dist/api/mlog_music_rcmd.js +1 -1
  275. package/dist/api/mlog_to_video.d.ts +1 -1
  276. package/dist/api/mlog_to_video.js +1 -1
  277. package/dist/api/mlog_url.d.ts +1 -1
  278. package/dist/api/mlog_url.js +1 -1
  279. package/dist/api/msg_comments.d.ts +1 -1
  280. package/dist/api/msg_comments.js +1 -1
  281. package/dist/api/msg_forwards.d.ts +1 -1
  282. package/dist/api/msg_forwards.js +1 -1
  283. package/dist/api/msg_notices.d.ts +1 -1
  284. package/dist/api/msg_notices.js +1 -1
  285. package/dist/api/msg_private.d.ts +1 -1
  286. package/dist/api/msg_private.js +1 -1
  287. package/dist/api/msg_private_history.d.ts +1 -1
  288. package/dist/api/msg_private_history.js +1 -1
  289. package/dist/api/msg_recentcontact.d.ts +1 -1
  290. package/dist/api/msg_recentcontact.js +1 -1
  291. package/dist/api/music_first_listen_info.d.ts +1 -1
  292. package/dist/api/music_first_listen_info.js +1 -1
  293. package/dist/api/musician_cloudbean.d.ts +1 -1
  294. package/dist/api/musician_cloudbean.js +1 -1
  295. package/dist/api/musician_cloudbean_obtain.d.ts +1 -1
  296. package/dist/api/musician_cloudbean_obtain.js +1 -1
  297. package/dist/api/musician_data_overview.d.ts +1 -1
  298. package/dist/api/musician_data_overview.js +1 -1
  299. package/dist/api/musician_play_trend.d.ts +1 -1
  300. package/dist/api/musician_play_trend.js +1 -1
  301. package/dist/api/musician_sign.d.ts +1 -1
  302. package/dist/api/musician_sign.js +1 -1
  303. package/dist/api/musician_tasks.d.ts +1 -1
  304. package/dist/api/musician_tasks.js +1 -1
  305. package/dist/api/musician_tasks_new.d.ts +1 -1
  306. package/dist/api/musician_tasks_new.js +1 -1
  307. package/dist/api/mv_all.d.ts +1 -1
  308. package/dist/api/mv_all.js +1 -1
  309. package/dist/api/mv_detail.d.ts +1 -1
  310. package/dist/api/mv_detail.js +1 -1
  311. package/dist/api/mv_detail_info.d.ts +1 -1
  312. package/dist/api/mv_detail_info.js +1 -1
  313. package/dist/api/mv_exclusive_rcmd.d.ts +1 -1
  314. package/dist/api/mv_exclusive_rcmd.js +1 -1
  315. package/dist/api/mv_first.d.ts +1 -1
  316. package/dist/api/mv_first.js +1 -1
  317. package/dist/api/mv_sub.d.ts +1 -1
  318. package/dist/api/mv_sub.js +1 -1
  319. package/dist/api/mv_sublist.d.ts +1 -1
  320. package/dist/api/mv_sublist.js +1 -1
  321. package/dist/api/mv_url.d.ts +1 -1
  322. package/dist/api/mv_url.js +1 -1
  323. package/dist/api/nickname_check.d.ts +1 -1
  324. package/dist/api/nickname_check.js +1 -1
  325. package/dist/api/personal_fm.d.ts +1 -1
  326. package/dist/api/personal_fm.js +1 -1
  327. package/dist/api/personal_fm_mode.d.ts +1 -1
  328. package/dist/api/personal_fm_mode.js +1 -1
  329. package/dist/api/personalized.d.ts +1 -1
  330. package/dist/api/personalized.js +1 -1
  331. package/dist/api/personalized_djprogram.d.ts +1 -1
  332. package/dist/api/personalized_djprogram.js +1 -1
  333. package/dist/api/personalized_mv.d.ts +1 -1
  334. package/dist/api/personalized_mv.js +1 -1
  335. package/dist/api/personalized_newsong.d.ts +1 -1
  336. package/dist/api/personalized_newsong.js +1 -1
  337. package/dist/api/personalized_privatecontent.d.ts +1 -1
  338. package/dist/api/personalized_privatecontent.js +1 -1
  339. package/dist/api/personalized_privatecontent_list.d.ts +1 -1
  340. package/dist/api/personalized_privatecontent_list.js +1 -1
  341. package/dist/api/pl_count.d.ts +1 -1
  342. package/dist/api/pl_count.js +1 -1
  343. package/dist/api/playlist_catlist.d.ts +1 -1
  344. package/dist/api/playlist_catlist.js +1 -1
  345. package/dist/api/playlist_cover_update.d.ts +1 -1
  346. package/dist/api/playlist_cover_update.js +1 -1
  347. package/dist/api/playlist_create.d.ts +1 -1
  348. package/dist/api/playlist_create.js +1 -1
  349. package/dist/api/playlist_delete.d.ts +1 -1
  350. package/dist/api/playlist_delete.js +1 -1
  351. package/dist/api/playlist_desc_update.d.ts +1 -1
  352. package/dist/api/playlist_desc_update.js +1 -1
  353. package/dist/api/playlist_detail.d.ts +1 -1
  354. package/dist/api/playlist_detail.js +1 -1
  355. package/dist/api/playlist_detail_dynamic.d.ts +1 -1
  356. package/dist/api/playlist_detail_dynamic.js +1 -1
  357. package/dist/api/playlist_detail_rcmd_get.d.ts +1 -1
  358. package/dist/api/playlist_detail_rcmd_get.js +1 -1
  359. package/dist/api/playlist_highquality_tags.d.ts +1 -1
  360. package/dist/api/playlist_highquality_tags.js +1 -1
  361. package/dist/api/playlist_hot.d.ts +1 -1
  362. package/dist/api/playlist_hot.js +1 -1
  363. package/dist/api/playlist_import_name_task_create.d.ts +1 -1
  364. package/dist/api/playlist_import_name_task_create.js +1 -1
  365. package/dist/api/playlist_import_task_status.d.ts +1 -1
  366. package/dist/api/playlist_import_task_status.js +1 -1
  367. package/dist/api/playlist_mylike.d.ts +1 -1
  368. package/dist/api/playlist_mylike.js +1 -1
  369. package/dist/api/playlist_name_update.d.ts +1 -1
  370. package/dist/api/playlist_name_update.js +1 -1
  371. package/dist/api/playlist_order_update.d.ts +1 -1
  372. package/dist/api/playlist_order_update.js +1 -1
  373. package/dist/api/playlist_privacy.d.ts +1 -1
  374. package/dist/api/playlist_privacy.js +1 -1
  375. package/dist/api/playlist_subscribe.d.ts +1 -1
  376. package/dist/api/playlist_subscribe.js +1 -1
  377. package/dist/api/playlist_subscribers.d.ts +1 -1
  378. package/dist/api/playlist_subscribers.js +1 -1
  379. package/dist/api/playlist_tags_update.d.ts +1 -1
  380. package/dist/api/playlist_tags_update.js +1 -1
  381. package/dist/api/playlist_track_add.d.ts +1 -1
  382. package/dist/api/playlist_track_add.js +1 -1
  383. package/dist/api/playlist_track_all.d.ts +1 -1
  384. package/dist/api/playlist_track_all.js +1 -1
  385. package/dist/api/playlist_track_delete.d.ts +1 -1
  386. package/dist/api/playlist_track_delete.js +1 -1
  387. package/dist/api/playlist_tracks.d.ts +1 -1
  388. package/dist/api/playlist_tracks.js +1 -1
  389. package/dist/api/playlist_update.d.ts +1 -1
  390. package/dist/api/playlist_update.js +1 -1
  391. package/dist/api/playlist_update_playcount.d.ts +1 -1
  392. package/dist/api/playlist_update_playcount.js +1 -1
  393. package/dist/api/playlist_video_recent.d.ts +1 -1
  394. package/dist/api/playlist_video_recent.js +1 -1
  395. package/dist/api/playmode_intelligence_list.d.ts +1 -1
  396. package/dist/api/playmode_intelligence_list.js +1 -1
  397. package/dist/api/program_recommend.d.ts +1 -1
  398. package/dist/api/program_recommend.js +1 -1
  399. package/dist/api/rebind.d.ts +1 -1
  400. package/dist/api/rebind.js +1 -1
  401. package/dist/api/recent_listen_list.d.ts +1 -1
  402. package/dist/api/recent_listen_list.js +1 -1
  403. package/dist/api/recommend_resource.d.ts +1 -1
  404. package/dist/api/recommend_resource.js +1 -1
  405. package/dist/api/recommend_songs.d.ts +1 -1
  406. package/dist/api/recommend_songs.js +1 -1
  407. package/dist/api/recommend_songs_dislike.d.ts +1 -1
  408. package/dist/api/recommend_songs_dislike.js +1 -1
  409. package/dist/api/record_recent_album.d.ts +1 -1
  410. package/dist/api/record_recent_album.js +1 -1
  411. package/dist/api/record_recent_dj.d.ts +1 -1
  412. package/dist/api/record_recent_dj.js +1 -1
  413. package/dist/api/record_recent_playlist.d.ts +1 -1
  414. package/dist/api/record_recent_playlist.js +1 -1
  415. package/dist/api/record_recent_song.d.ts +1 -1
  416. package/dist/api/record_recent_song.js +1 -1
  417. package/dist/api/record_recent_video.d.ts +1 -1
  418. package/dist/api/record_recent_video.js +1 -1
  419. package/dist/api/record_recent_voice.d.ts +1 -1
  420. package/dist/api/record_recent_voice.js +1 -1
  421. package/dist/api/register_anonimous.d.ts +1 -1
  422. package/dist/api/register_anonimous.js +1 -1
  423. package/dist/api/register_cellphone.d.ts +1 -1
  424. package/dist/api/register_cellphone.js +1 -1
  425. package/dist/api/related_allvideo.d.ts +1 -1
  426. package/dist/api/related_allvideo.js +1 -1
  427. package/dist/api/related_playlist.d.ts +1 -1
  428. package/dist/api/related_playlist.js +1 -1
  429. package/dist/api/resource_like.d.ts +1 -1
  430. package/dist/api/resource_like.js +1 -1
  431. package/dist/api/scrobble.d.ts +1 -1
  432. package/dist/api/scrobble.js +1 -1
  433. package/dist/api/search.d.ts +1 -1
  434. package/dist/api/search.js +1 -1
  435. package/dist/api/search_default.d.ts +1 -1
  436. package/dist/api/search_default.js +1 -1
  437. package/dist/api/search_hot.d.ts +1 -1
  438. package/dist/api/search_hot.js +1 -1
  439. package/dist/api/search_hot_detail.d.ts +1 -1
  440. package/dist/api/search_hot_detail.js +1 -1
  441. package/dist/api/search_match.d.ts +1 -1
  442. package/dist/api/search_match.js +1 -1
  443. package/dist/api/search_multimatch.d.ts +1 -1
  444. package/dist/api/search_multimatch.js +1 -1
  445. package/dist/api/search_suggest.d.ts +1 -1
  446. package/dist/api/search_suggest.js +1 -1
  447. package/dist/api/send_album.d.ts +1 -1
  448. package/dist/api/send_album.js +1 -1
  449. package/dist/api/send_playlist.d.ts +1 -1
  450. package/dist/api/send_playlist.js +1 -1
  451. package/dist/api/send_song.d.ts +1 -1
  452. package/dist/api/send_song.js +1 -1
  453. package/dist/api/send_text.d.ts +1 -1
  454. package/dist/api/send_text.js +1 -1
  455. package/dist/api/setting.d.ts +1 -1
  456. package/dist/api/setting.js +1 -1
  457. package/dist/api/share_resource.d.ts +1 -1
  458. package/dist/api/share_resource.js +1 -1
  459. package/dist/api/sheet_list.d.ts +1 -1
  460. package/dist/api/sheet_list.js +1 -1
  461. package/dist/api/sheet_preview.d.ts +1 -1
  462. package/dist/api/sheet_preview.js +1 -1
  463. package/dist/api/sign_happy_info.d.ts +1 -1
  464. package/dist/api/sign_happy_info.js +1 -1
  465. package/dist/api/signin_progress.d.ts +1 -1
  466. package/dist/api/signin_progress.js +1 -1
  467. package/dist/api/simi_artist.d.ts +1 -1
  468. package/dist/api/simi_artist.js +1 -1
  469. package/dist/api/simi_mv.d.ts +1 -1
  470. package/dist/api/simi_mv.js +1 -1
  471. package/dist/api/simi_playlist.d.ts +1 -1
  472. package/dist/api/simi_playlist.js +1 -1
  473. package/dist/api/simi_song.d.ts +1 -1
  474. package/dist/api/simi_song.js +1 -1
  475. package/dist/api/simi_user.d.ts +1 -1
  476. package/dist/api/simi_user.js +1 -1
  477. package/dist/api/song_chorus.d.ts +1 -1
  478. package/dist/api/song_chorus.js +1 -1
  479. package/dist/api/song_detail.d.ts +1 -1
  480. package/dist/api/song_detail.js +1 -1
  481. package/dist/api/song_downlist.d.ts +1 -1
  482. package/dist/api/song_downlist.js +1 -1
  483. package/dist/api/song_download_url.d.ts +1 -1
  484. package/dist/api/song_download_url.js +1 -1
  485. package/dist/api/song_download_url_v1.d.ts +1 -1
  486. package/dist/api/song_download_url_v1.js +1 -1
  487. package/dist/api/song_dynamic_cover.d.ts +1 -1
  488. package/dist/api/song_dynamic_cover.js +1 -1
  489. package/dist/api/song_like_check.d.ts +1 -1
  490. package/dist/api/song_like_check.js +1 -1
  491. package/dist/api/song_lyrics_mark.d.ts +1 -1
  492. package/dist/api/song_lyrics_mark.js +1 -1
  493. package/dist/api/song_lyrics_mark_add.d.ts +1 -1
  494. package/dist/api/song_lyrics_mark_add.js +1 -1
  495. package/dist/api/song_lyrics_mark_del.d.ts +1 -1
  496. package/dist/api/song_lyrics_mark_del.js +1 -1
  497. package/dist/api/song_lyrics_mark_user_page.d.ts +1 -1
  498. package/dist/api/song_lyrics_mark_user_page.js +1 -1
  499. package/dist/api/song_monthdownlist.d.ts +1 -1
  500. package/dist/api/song_monthdownlist.js +1 -1
  501. package/dist/api/song_music_detail.d.ts +1 -1
  502. package/dist/api/song_music_detail.js +1 -1
  503. package/dist/api/song_order_update.d.ts +1 -1
  504. package/dist/api/song_order_update.js +1 -1
  505. package/dist/api/song_purchased.d.ts +1 -1
  506. package/dist/api/song_purchased.js +1 -1
  507. package/dist/api/song_red_count.d.ts +1 -1
  508. package/dist/api/song_red_count.js +1 -1
  509. package/dist/api/song_singledownlist.d.ts +1 -1
  510. package/dist/api/song_singledownlist.js +1 -1
  511. package/dist/api/song_url.d.ts +1 -1
  512. package/dist/api/song_url.js +1 -1
  513. package/dist/api/song_url_v1.d.ts +1 -1
  514. package/dist/api/song_url_v1.js +1 -1
  515. package/dist/api/song_wiki_summary.d.ts +1 -1
  516. package/dist/api/song_wiki_summary.js +1 -1
  517. package/dist/api/starpick_comments_summary.d.ts +1 -1
  518. package/dist/api/starpick_comments_summary.js +1 -1
  519. package/dist/api/style_album.d.ts +1 -1
  520. package/dist/api/style_album.js +1 -1
  521. package/dist/api/style_artist.d.ts +1 -1
  522. package/dist/api/style_artist.js +1 -1
  523. package/dist/api/style_detail.d.ts +1 -1
  524. package/dist/api/style_detail.js +1 -1
  525. package/dist/api/style_list.d.ts +1 -1
  526. package/dist/api/style_list.js +1 -1
  527. package/dist/api/style_playlist.d.ts +1 -1
  528. package/dist/api/style_playlist.js +1 -1
  529. package/dist/api/style_preference.d.ts +1 -1
  530. package/dist/api/style_preference.js +1 -1
  531. package/dist/api/style_song.d.ts +1 -1
  532. package/dist/api/style_song.js +1 -1
  533. package/dist/api/summary_annual.d.ts +1 -1
  534. package/dist/api/summary_annual.js +1 -1
  535. package/dist/api/top_album.d.ts +1 -1
  536. package/dist/api/top_album.js +1 -1
  537. package/dist/api/top_artists.d.ts +1 -1
  538. package/dist/api/top_artists.js +1 -1
  539. package/dist/api/top_list.d.ts +1 -1
  540. package/dist/api/top_list.js +1 -1
  541. package/dist/api/top_mv.d.ts +1 -1
  542. package/dist/api/top_mv.js +1 -1
  543. package/dist/api/top_playlist.d.ts +1 -1
  544. package/dist/api/top_playlist.js +1 -1
  545. package/dist/api/top_playlist_highquality.d.ts +1 -1
  546. package/dist/api/top_playlist_highquality.js +1 -1
  547. package/dist/api/top_song.d.ts +1 -1
  548. package/dist/api/top_song.js +1 -1
  549. package/dist/api/topic_detail.d.ts +1 -1
  550. package/dist/api/topic_detail.js +1 -1
  551. package/dist/api/topic_detail_event_hot.d.ts +1 -1
  552. package/dist/api/topic_detail_event_hot.js +1 -1
  553. package/dist/api/topic_sublist.d.ts +1 -1
  554. package/dist/api/topic_sublist.js +1 -1
  555. package/dist/api/toplist.d.ts +1 -1
  556. package/dist/api/toplist.js +1 -1
  557. package/dist/api/toplist_artist.d.ts +1 -1
  558. package/dist/api/toplist_artist.js +1 -1
  559. package/dist/api/toplist_detail.d.ts +1 -1
  560. package/dist/api/toplist_detail.js +1 -1
  561. package/dist/api/ugc_album_get.d.ts +1 -1
  562. package/dist/api/ugc_album_get.js +1 -1
  563. package/dist/api/ugc_artist_get.d.ts +1 -1
  564. package/dist/api/ugc_artist_get.js +1 -1
  565. package/dist/api/ugc_artist_search.d.ts +1 -1
  566. package/dist/api/ugc_artist_search.js +1 -1
  567. package/dist/api/ugc_detail.d.ts +1 -1
  568. package/dist/api/ugc_detail.js +1 -1
  569. package/dist/api/ugc_mv_get.d.ts +1 -1
  570. package/dist/api/ugc_mv_get.js +1 -1
  571. package/dist/api/ugc_song_get.d.ts +1 -1
  572. package/dist/api/ugc_song_get.js +1 -1
  573. package/dist/api/ugc_user_devote.d.ts +1 -1
  574. package/dist/api/ugc_user_devote.js +1 -1
  575. package/dist/api/user_account.d.ts +1 -1
  576. package/dist/api/user_account.js +1 -1
  577. package/dist/api/user_audio.d.ts +1 -1
  578. package/dist/api/user_audio.js +1 -1
  579. package/dist/api/user_binding.d.ts +1 -1
  580. package/dist/api/user_binding.js +1 -1
  581. package/dist/api/user_cloud.d.ts +1 -1
  582. package/dist/api/user_cloud.js +1 -1
  583. package/dist/api/user_cloud_del.d.ts +1 -1
  584. package/dist/api/user_cloud_del.js +1 -1
  585. package/dist/api/user_cloud_detail.d.ts +1 -1
  586. package/dist/api/user_cloud_detail.js +1 -1
  587. package/dist/api/user_comment_history.d.ts +1 -1
  588. package/dist/api/user_comment_history.js +1 -1
  589. package/dist/api/user_detail.d.ts +1 -1
  590. package/dist/api/user_detail.js +1 -1
  591. package/dist/api/user_dj.d.ts +1 -1
  592. package/dist/api/user_dj.js +1 -1
  593. package/dist/api/user_event.d.ts +1 -1
  594. package/dist/api/user_event.js +1 -1
  595. package/dist/api/user_follow_mixed.d.ts +1 -1
  596. package/dist/api/user_follow_mixed.js +1 -1
  597. package/dist/api/user_followeds.d.ts +1 -1
  598. package/dist/api/user_followeds.js +1 -1
  599. package/dist/api/user_follows.d.ts +1 -1
  600. package/dist/api/user_follows.js +1 -1
  601. package/dist/api/user_level.d.ts +1 -1
  602. package/dist/api/user_level.js +1 -1
  603. package/dist/api/user_medal.d.ts +1 -1
  604. package/dist/api/user_medal.js +1 -1
  605. package/dist/api/user_mutualfollow_get.d.ts +1 -1
  606. package/dist/api/user_mutualfollow_get.js +1 -1
  607. package/dist/api/user_playlist.d.ts +1 -1
  608. package/dist/api/user_playlist.js +1 -1
  609. package/dist/api/user_playlist_collect.d.ts +1 -1
  610. package/dist/api/user_playlist_collect.js +1 -1
  611. package/dist/api/user_playlist_create.d.ts +1 -1
  612. package/dist/api/user_playlist_create.js +1 -1
  613. package/dist/api/user_record.d.ts +1 -1
  614. package/dist/api/user_record.js +1 -1
  615. package/dist/api/user_replacephone.d.ts +1 -1
  616. package/dist/api/user_replacephone.js +1 -1
  617. package/dist/api/user_social_status.d.ts +1 -1
  618. package/dist/api/user_social_status.js +1 -1
  619. package/dist/api/user_social_status_edit.d.ts +1 -1
  620. package/dist/api/user_social_status_edit.js +1 -1
  621. package/dist/api/user_social_status_rcmd.d.ts +1 -1
  622. package/dist/api/user_social_status_rcmd.js +1 -1
  623. package/dist/api/user_social_status_support.d.ts +1 -1
  624. package/dist/api/user_social_status_support.js +1 -1
  625. package/dist/api/user_subcount.d.ts +1 -1
  626. package/dist/api/user_subcount.js +1 -1
  627. package/dist/api/user_update.d.ts +1 -1
  628. package/dist/api/user_update.js +1 -1
  629. package/dist/api/verify_getQr.d.ts +1 -1
  630. package/dist/api/verify_getQr.js +1 -1
  631. package/dist/api/verify_qrcodestatus.d.ts +1 -1
  632. package/dist/api/verify_qrcodestatus.js +1 -1
  633. package/dist/api/video_category_list.d.ts +1 -1
  634. package/dist/api/video_category_list.js +1 -1
  635. package/dist/api/video_detail.d.ts +1 -1
  636. package/dist/api/video_detail.js +1 -1
  637. package/dist/api/video_detail_info.d.ts +1 -1
  638. package/dist/api/video_detail_info.js +1 -1
  639. package/dist/api/video_group.d.ts +1 -1
  640. package/dist/api/video_group.js +1 -1
  641. package/dist/api/video_group_list.d.ts +1 -1
  642. package/dist/api/video_group_list.js +1 -1
  643. package/dist/api/video_sub.d.ts +1 -1
  644. package/dist/api/video_sub.js +1 -1
  645. package/dist/api/video_timeline_all.d.ts +1 -1
  646. package/dist/api/video_timeline_all.js +1 -1
  647. package/dist/api/video_timeline_recommend.d.ts +1 -1
  648. package/dist/api/video_timeline_recommend.js +1 -1
  649. package/dist/api/video_url.d.ts +1 -1
  650. package/dist/api/video_url.js +1 -1
  651. package/dist/api/vip_growthpoint.d.ts +1 -1
  652. package/dist/api/vip_growthpoint.js +1 -1
  653. package/dist/api/vip_growthpoint_details.d.ts +1 -1
  654. package/dist/api/vip_growthpoint_details.js +1 -1
  655. package/dist/api/vip_growthpoint_get.d.ts +1 -1
  656. package/dist/api/vip_growthpoint_get.js +1 -1
  657. package/dist/api/vip_info.d.ts +1 -1
  658. package/dist/api/vip_info.js +1 -1
  659. package/dist/api/vip_info_v2.d.ts +1 -1
  660. package/dist/api/vip_info_v2.js +1 -1
  661. package/dist/api/vip_tasks.d.ts +1 -1
  662. package/dist/api/vip_tasks.js +1 -1
  663. package/dist/api/vip_timemachine.d.ts +1 -1
  664. package/dist/api/vip_timemachine.js +1 -1
  665. package/dist/api/voice_delete.d.ts +1 -1
  666. package/dist/api/voice_delete.js +1 -1
  667. package/dist/api/voice_detail.d.ts +1 -1
  668. package/dist/api/voice_detail.js +1 -1
  669. package/dist/api/voice_lyric.d.ts +1 -1
  670. package/dist/api/voice_lyric.js +1 -1
  671. package/dist/api/voice_upload.d.ts +1 -1
  672. package/dist/api/voice_upload.js +1 -1
  673. package/dist/api/voicelist_detail.d.ts +1 -1
  674. package/dist/api/voicelist_detail.js +1 -1
  675. package/dist/api/voicelist_list.d.ts +1 -1
  676. package/dist/api/voicelist_list.js +1 -1
  677. package/dist/api/voicelist_list_search.d.ts +1 -1
  678. package/dist/api/voicelist_list_search.js +1 -1
  679. package/dist/api/voicelist_search.d.ts +1 -1
  680. package/dist/api/voicelist_search.js +1 -1
  681. package/dist/api/voicelist_trans.d.ts +1 -1
  682. package/dist/api/voicelist_trans.js +1 -1
  683. package/dist/api/yunbei.d.ts +1 -1
  684. package/dist/api/yunbei.js +1 -1
  685. package/dist/api/yunbei_expense.d.ts +1 -1
  686. package/dist/api/yunbei_expense.js +1 -1
  687. package/dist/api/yunbei_info.d.ts +1 -1
  688. package/dist/api/yunbei_info.js +1 -1
  689. package/dist/api/yunbei_rcmd_song.d.ts +1 -1
  690. package/dist/api/yunbei_rcmd_song.js +1 -1
  691. package/dist/api/yunbei_rcmd_song_history.d.ts +1 -1
  692. package/dist/api/yunbei_rcmd_song_history.js +1 -1
  693. package/dist/api/yunbei_receipt.d.ts +1 -1
  694. package/dist/api/yunbei_receipt.js +1 -1
  695. package/dist/api/yunbei_sign.d.ts +1 -1
  696. package/dist/api/yunbei_sign.js +1 -1
  697. package/dist/api/yunbei_task_finish.d.ts +1 -1
  698. package/dist/api/yunbei_task_finish.js +1 -1
  699. package/dist/api/yunbei_tasks.d.ts +1 -1
  700. package/dist/api/yunbei_tasks.js +1 -1
  701. package/dist/api/yunbei_tasks_todo.d.ts +1 -1
  702. package/dist/api/yunbei_tasks_todo.js +1 -1
  703. package/dist/api/yunbei_today.d.ts +1 -1
  704. package/dist/api/yunbei_today.js +1 -1
  705. package/dist/{client.generated-CYmDKrSb.d.ts → client.generated-2Gz4VVrX.d.ts} +293 -66
  706. package/dist/{client.generated-FkTIQHK_.js → client.generated-C83dignJ.js} +138 -59
  707. package/dist/index.d.ts +2 -2
  708. package/dist/index.js +2 -2
  709. package/package.json +1 -1
@@ -291,19 +291,41 @@ const parseJsonRecord = (text) => {
291
291
  const isJsonRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
292
292
  //#endregion
293
293
  //#region src/core/response.ts
294
- const classifyHeaderRateLimit = (status, headers, now) => status === 429 ? { retryAfterMs: retryAfterMs(headers.get("retry-after"), now) } : void 0;
294
+ const classifyHeaderRateLimit = (status, headers, now) => status === 429 ? {
295
+ status: 429,
296
+ retryAfterMs: retryAfterMs(headers.get("retry-after"), now)
297
+ } : void 0;
295
298
  const classifyConsumedRateLimit = (response, value, now) => {
296
- const businessLimited = hasBusiness429(response);
297
- const statusLimited = isRecord(value) && "status" in value && Number(value.status) === 429;
298
- if (response.status !== 429 && !businessLimited && !statusLimited) return;
299
- return { retryAfterMs: retryAfterMs(response.headers.get("retry-after"), now) };
299
+ const code = readBusinessCode(value) ?? readBusinessCode(response.body);
300
+ const message = readBusinessMessage(value) ?? readBusinessMessage(response.body);
301
+ const statusLimited = isRecord(value) && Number(value.status) === 429;
302
+ const status = response.status === 429 || code === 429 || statusLimited ? 429 : response.status === 405 && code === 405 && typeof message === "string" && /操作(?:过于)?频繁/.test(message) ? 405 : void 0;
303
+ if (status === void 0) return;
304
+ return {
305
+ status,
306
+ retryAfterMs: retryAfterMs(response.headers.get("retry-after"), now)
307
+ };
300
308
  };
301
- const hasBusiness429 = (response) => {
309
+ const readBusinessCode = (value) => {
310
+ const body = readBody(value);
311
+ if (isRecord(body)) {
312
+ const code = Number(body.code);
313
+ return Number.isFinite(code) ? code : void 0;
314
+ }
315
+ };
316
+ const readBusinessMessage = (value) => {
317
+ const body = readBody(value);
318
+ if (!isRecord(body)) return;
319
+ const message = body.msg ?? body.message;
320
+ return typeof message === "string" ? message : void 0;
321
+ };
322
+ const readBody = (value) => {
323
+ const body = isRecord(value) && "body" in value ? value.body : value;
324
+ if (!(body instanceof Uint8Array)) return body;
302
325
  try {
303
- const body = JSON.parse(new TextDecoder().decode(response.body));
304
- return isRecord(body) && Number(body.code) === 429;
326
+ return JSON.parse(new TextDecoder().decode(body));
305
327
  } catch {
306
- return false;
328
+ return;
307
329
  }
308
330
  };
309
331
  const interpretResponse = (response, crypto, encryptResponse, gzip) => {
@@ -376,21 +398,21 @@ const normalizeFailure = (error, cancelled = false, timedOut = false) => {
376
398
  }
377
399
  if (timedOut) error = new DeadlineExceeded({ message: "Request timed out" });
378
400
  if (error instanceof UpstreamRateLimited && error.response) return {
379
- status: 429,
401
+ status: error.status,
380
402
  cookie: [...error.response.cookie],
381
403
  body: {
382
404
  ...isRecord(error.response.body) ? error.response.body : {
383
- code: 429,
405
+ code: error.status,
384
406
  msg: error.message
385
407
  },
386
408
  retryAfter: Math.ceil(error.retryAfterMs / 1e3)
387
409
  }
388
410
  };
389
411
  if (error instanceof UpstreamRateLimited) return {
390
- status: 429,
412
+ status: error.status,
391
413
  cookie: [],
392
414
  body: {
393
- code: 429,
415
+ code: error.status,
394
416
  msg: error.message,
395
417
  retryAfter: Math.ceil(error.retryAfterMs / 1e3)
396
418
  }
@@ -491,6 +513,7 @@ const isCacheable = (response) => {
491
513
  };
492
514
  const retryDecision = (uri, error, attempt, options, random) => {
493
515
  if (requestSemantic(uri) !== "read") return;
516
+ if (error instanceof UpstreamRateLimited) return;
494
517
  const text = errorText(error).toLowerCase();
495
518
  const neverConnected = /eai_again|econnrefused|und_err_connect_timeout|\bconnect etimedout\b/.test(text);
496
519
  const read = /\/search\/|\/song\/lyric|\/song\/detail|\/playlist\/detail/.test(uri);
@@ -911,7 +934,7 @@ const transportEffect = (url, options, interpret) => {
911
934
  host,
912
935
  identity,
913
936
  retryAfterMs: headerDecision.retryAfterMs,
914
- status: 429,
937
+ status: headerDecision.status,
915
938
  message: "Upstream rate limited",
916
939
  response: Result.isSuccess(interpreted) && "cookie" in interpreted.success ? interpreted.success : void 0
917
940
  });
@@ -922,7 +945,7 @@ const transportEffect = (url, options, interpret) => {
922
945
  host,
923
946
  identity,
924
947
  retryAfterMs: decision.retryAfterMs,
925
- status: 429,
948
+ status: decision.status,
926
949
  message: "Upstream rate limited",
927
950
  response: "cookie" in value ? value : void 0
928
951
  });
@@ -1027,7 +1050,7 @@ const requestEffect = (intent) => withRequestDeadline(Effect.gen(function* () {
1027
1050
  const error = result.failure;
1028
1051
  const durationMs = (yield* Clock.currentTimeMillis) - startedAt;
1029
1052
  const delayMs = intent.semantic === "read" ? retryDecision(intent.target, error, attempt, options.retry, Math.random()) : void 0;
1030
- const status = error instanceof UpstreamRateLimited ? 429 : error instanceof ProtocolFailed ? error.response?.status : void 0;
1053
+ const status = error instanceof UpstreamRateLimited ? error.status : error instanceof ProtocolFailed ? error.response?.status : void 0;
1031
1054
  options.onRequestEvent?.({
1032
1055
  ...event,
1033
1056
  durationMs,
@@ -1416,14 +1439,14 @@ const Album$1 = UpstreamObject({
1416
1439
  publishTime: Schema.Finite,
1417
1440
  description: Schema.String
1418
1441
  });
1419
- const ModuleBody$21 = Schema.toStandardSchemaV1(UpstreamObject({
1442
+ const ModuleBody$25 = Schema.toStandardSchemaV1(UpstreamObject({
1420
1443
  code: Schema.Literal(200),
1421
1444
  songs: Schema.Array(Song),
1422
1445
  album: Album$1
1423
1446
  }));
1424
1447
  const album$1 = (query, request) => Effect.gen(function* () {
1425
1448
  const response = yield* request(buildApiRequestIntent(`/api/v1/album/${query.id}`, {}, createOption(query, "weapi")));
1426
- const body = yield* decodeUpstreamBody("album", ModuleBody$21, response);
1449
+ const body = yield* decodeUpstreamBody("album", ModuleBody$25, response);
1427
1450
  return {
1428
1451
  ...toModuleResponse(response),
1429
1452
  body
@@ -1588,7 +1611,7 @@ const SubscribedAlbum = UpstreamObject({
1588
1611
  size: Schema.Finite,
1589
1612
  artists: Schema.Array(Artist)
1590
1613
  });
1591
- const ModuleBody$20 = Schema.toStandardSchemaV1(UpstreamObject({
1614
+ const ModuleBody$24 = Schema.toStandardSchemaV1(UpstreamObject({
1592
1615
  code: Schema.Literal(200),
1593
1616
  data: Schema.Array(SubscribedAlbum),
1594
1617
  hasMore: Schema.Boolean
@@ -1600,7 +1623,7 @@ const albumSublist$1 = (query, request) => Effect.gen(function* () {
1600
1623
  total: true
1601
1624
  };
1602
1625
  const response = yield* request(buildApiRequestIntent(`/api/album/sublist`, data, createOption(query, "weapi")));
1603
- const body = yield* decodeUpstreamBody("album_sublist", ModuleBody$20, response);
1626
+ const body = yield* decodeUpstreamBody("album_sublist", ModuleBody$24, response);
1604
1627
  return {
1605
1628
  ...toModuleResponse(response),
1606
1629
  body
@@ -1622,7 +1645,7 @@ const Album = UpstreamObject({
1622
1645
  artist: Artist,
1623
1646
  publishTime: Schema.Finite
1624
1647
  });
1625
- const ModuleBody$19 = Schema.toStandardSchemaV1(UpstreamObject({
1648
+ const ModuleBody$23 = Schema.toStandardSchemaV1(UpstreamObject({
1626
1649
  code: Schema.Literal(200),
1627
1650
  hotAlbums: Schema.Array(Album),
1628
1651
  more: Schema.Boolean
@@ -1634,7 +1657,7 @@ const artistAlbum$1 = (query, request) => Effect.gen(function* () {
1634
1657
  total: true
1635
1658
  };
1636
1659
  const response = yield* request(buildApiRequestIntent(`/api/artist/albums/${query.id}`, data, createOption(query, "weapi")));
1637
- const body = yield* decodeUpstreamBody("artist_album", ModuleBody$19, response);
1660
+ const body = yield* decodeUpstreamBody("artist_album", ModuleBody$23, response);
1638
1661
  return {
1639
1662
  ...toModuleResponse(response),
1640
1663
  body
@@ -1785,7 +1808,7 @@ const SubscribedArtist = UpstreamObject({
1785
1808
  picUrl: Schema.String,
1786
1809
  albumSize: Schema.Finite
1787
1810
  });
1788
- const ModuleBody$18 = Schema.toStandardSchemaV1(UpstreamObject({
1811
+ const ModuleBody$22 = Schema.toStandardSchemaV1(UpstreamObject({
1789
1812
  code: Schema.Literal(200),
1790
1813
  data: Schema.Array(SubscribedArtist),
1791
1814
  hasMore: Schema.Boolean
@@ -1797,7 +1820,7 @@ const artistSublist$1 = (query, request) => Effect.gen(function* () {
1797
1820
  total: true
1798
1821
  };
1799
1822
  const response = yield* request(buildApiRequestIntent(`/api/artist/sublist`, data, createOption(query, "weapi")));
1800
- const body = yield* decodeUpstreamBody("artist_sublist", ModuleBody$18, response);
1823
+ const body = yield* decodeUpstreamBody("artist_sublist", ModuleBody$22, response);
1801
1824
  return {
1802
1825
  ...toModuleResponse(response),
1803
1826
  body
@@ -1807,14 +1830,14 @@ const artistSublist$1 = (query, request) => Effect.gen(function* () {
1807
1830
  //#region src/modules/artist_top_song.ts
1808
1831
  const inputSchema$48 = Schema.Struct({ id: QueryIdentifier });
1809
1832
  const decodeModuleInput$48 = (input) => decodeModuleInput$68(inputSchema$48, input);
1810
- const ModuleBody$17 = Schema.toStandardSchemaV1(UpstreamObject({
1833
+ const ModuleBody$21 = Schema.toStandardSchemaV1(UpstreamObject({
1811
1834
  code: Schema.Literal(200),
1812
1835
  songs: Schema.Array(Song)
1813
1836
  }));
1814
1837
  const artistTopSong$1 = (query, request) => Effect.gen(function* () {
1815
1838
  const data = { id: query.id };
1816
1839
  const response = yield* request(buildApiRequestIntent(`/api/artist/top/song`, data, createOption(query, "weapi")));
1817
- const body = yield* decodeUpstreamBody("artist_top_song", ModuleBody$17, response);
1840
+ const body = yield* decodeUpstreamBody("artist_top_song", ModuleBody$21, response);
1818
1841
  return {
1819
1842
  ...toModuleResponse(response),
1820
1843
  body
@@ -2066,7 +2089,7 @@ const calendar$1 = (query, request) => Effect.gen(function* () {
2066
2089
  });
2067
2090
  //#endregion
2068
2091
  //#region src/modules/captcha_sent.ts
2069
- const ModuleBody$16 = Schema.toStandardSchemaV1(UpstreamObject({
2092
+ const ModuleBody$20 = Schema.toStandardSchemaV1(UpstreamObject({
2070
2093
  code: Schema.Literal(200),
2071
2094
  data: Schema.Boolean
2072
2095
  }));
@@ -2079,7 +2102,7 @@ const captchaSent$1 = (query, request) => Effect.gen(function* () {
2079
2102
  const result = yield* request(buildApiRequestIntent(`/api/sms/captcha/sent`, data, createOption(query, "weapi")));
2080
2103
  return {
2081
2104
  ...toModuleResponse(result),
2082
- body: yield* decodeUpstreamBody("captcha_sent", ModuleBody$16, result)
2105
+ body: yield* decodeUpstreamBody("captcha_sent", ModuleBody$20, result)
2083
2106
  };
2084
2107
  });
2085
2108
  //#endregion
@@ -3096,7 +3119,7 @@ const imageUploadToken$1 = (_input, request) => allocateImageUpload("image.jpg",
3096
3119
  })));
3097
3120
  //#endregion
3098
3121
  //#region src/core/service-metadata.ts
3099
- const SERVICE_VERSION = "2.2.0";
3122
+ const SERVICE_VERSION = "2.3.0";
3100
3123
  //#endregion
3101
3124
  //#region src/modules/inner_version.ts
3102
3125
  const innerVersion$1 = () => Effect.succeed({
@@ -3123,14 +3146,14 @@ const like$1 = (input, request) => Effect.gen(function* () {
3123
3146
  });
3124
3147
  //#endregion
3125
3148
  //#region src/modules/likelist.ts
3126
- const ModuleBody$15 = Schema.toStandardSchemaV1(UpstreamObject({
3149
+ const ModuleBody$19 = Schema.toStandardSchemaV1(UpstreamObject({
3127
3150
  code: Schema.Literal(200),
3128
3151
  ids: Schema.Array(Schema.Finite)
3129
3152
  }));
3130
3153
  const likelist$1 = (query, request) => Effect.gen(function* () {
3131
3154
  const data = { uid: query.uid };
3132
3155
  const response = yield* request(buildApiRequestIntent(`/api/song/like/get`, data, createOption(query)));
3133
- const body = yield* decodeUpstreamBody("likelist", ModuleBody$15, response);
3156
+ const body = yield* decodeUpstreamBody("likelist", ModuleBody$19, response);
3134
3157
  return {
3135
3158
  ...toModuleResponse(response),
3136
3159
  body
@@ -3329,7 +3352,7 @@ const inputSchema$26 = Schema.Union([
3329
3352
  })
3330
3353
  ]);
3331
3354
  const decodeModuleInput$26 = (input) => decodeModuleInput$68(inputSchema$26, input);
3332
- const ModuleBody$14 = Schema.toStandardSchemaV1(UpstreamObject({
3355
+ const ModuleBody$18 = Schema.toStandardSchemaV1(UpstreamObject({
3333
3356
  code: Schema.Literal(200),
3334
3357
  account: UpstreamObject({ id: Schema.Finite }),
3335
3358
  profile: UpstreamObject({
@@ -3354,7 +3377,7 @@ const loginCellphone$1 = (query, request) => Effect.gen(function* () {
3354
3377
  remember: "true"
3355
3378
  };
3356
3379
  const result = yield* request(buildApiRequestIntent("/api/w/login/cellphone", data, createOption(query, "weapi")));
3357
- const body = yield* decodeUpstreamBody("login_cellphone", ModuleBody$14, result, { body: renameAvatarField(result.body) });
3380
+ const body = yield* decodeUpstreamBody("login_cellphone", ModuleBody$18, result, { body: renameAvatarField(result.body) });
3358
3381
  if (!result.cookie.some((cookie) => /^MUSIC_U=[^;]+/.test(cookie))) return yield* new UnexpectedUpstreamShape({
3359
3382
  module: "login_cellphone",
3360
3383
  path: "cookie.MUSIC_U",
@@ -3374,7 +3397,7 @@ const loginCellphone$1 = (query, request) => Effect.gen(function* () {
3374
3397
  //#region src/modules/login_qr_check.ts
3375
3398
  const inputSchema$25 = Schema.Struct({ key: Schema.String });
3376
3399
  const decodeModuleInput$25 = (input) => decodeModuleInput$68(inputSchema$25, input);
3377
- const ModuleBody$13 = Schema.toStandardSchemaV1(Schema.Union([
3400
+ const ModuleBody$17 = Schema.toStandardSchemaV1(Schema.Union([
3378
3401
  UpstreamObject({ code: Schema.Literal(800) }),
3379
3402
  UpstreamObject({ code: Schema.Literal(801) }),
3380
3403
  UpstreamObject({
@@ -3389,7 +3412,7 @@ const loginQrCheck$1 = (query, request) => Effect.gen(function* () {
3389
3412
  key: query.key,
3390
3413
  type: 3
3391
3414
  }, createOption(query)));
3392
- const body = yield* decodeUpstreamBody("login_qr_check", ModuleBody$13, result, { codes: [
3415
+ const body = yield* decodeUpstreamBody("login_qr_check", ModuleBody$17, result, { codes: [
3393
3416
  800,
3394
3417
  801,
3395
3418
  802,
@@ -3420,7 +3443,7 @@ const inputSchema$24 = Schema.Struct({
3420
3443
  ]))
3421
3444
  });
3422
3445
  const decodeModuleInput$24 = (input) => decodeModuleInput$68(inputSchema$24, input);
3423
- const ModuleBody$12 = Schema.toStandardSchemaV1(Schema.Struct({
3446
+ const ModuleBody$16 = Schema.toStandardSchemaV1(Schema.Struct({
3424
3447
  code: Schema.Literal(200),
3425
3448
  data: Schema.Struct({
3426
3449
  qrurl: Schema.String,
@@ -3449,13 +3472,13 @@ const loginQrCreate$1 = (query) => Effect.gen(function* () {
3449
3472
  });
3450
3473
  //#endregion
3451
3474
  //#region src/modules/login_qr_key.ts
3452
- const ModuleBody$11 = Schema.toStandardSchemaV1(UpstreamObject({
3475
+ const ModuleBody$15 = Schema.toStandardSchemaV1(UpstreamObject({
3453
3476
  code: Schema.Literal(200),
3454
3477
  data: UpstreamObject({ unikey: Schema.String })
3455
3478
  }));
3456
3479
  const loginQrKey$1 = (query, request) => Effect.gen(function* () {
3457
3480
  const result = yield* request(buildApiRequestIntent("/api/login/qrcode/unikey", { type: 3 }, createOption(query)));
3458
- const body = yield* decodeUpstreamBody("login_qr_key", ModuleBody$11, result, { body: {
3481
+ const body = yield* decodeUpstreamBody("login_qr_key", ModuleBody$15, result, { body: {
3459
3482
  data: result.body,
3460
3483
  code: 200
3461
3484
  } });
@@ -3467,13 +3490,13 @@ const loginQrKey$1 = (query, request) => Effect.gen(function* () {
3467
3490
  });
3468
3491
  //#endregion
3469
3492
  //#region src/modules/login_refresh.ts
3470
- const ModuleBody$10 = Schema.toStandardSchemaV1(UpstreamObject({
3493
+ const ModuleBody$14 = Schema.toStandardSchemaV1(UpstreamObject({
3471
3494
  code: Schema.Literal(200),
3472
3495
  cookie: Schema.String
3473
3496
  }));
3474
3497
  const loginRefresh$1 = (query, request) => Effect.gen(function* () {
3475
3498
  const result = yield* request(buildApiRequestIntent("/api/login/token/refresh", {}, createOption(query)));
3476
- const body = yield* decodeUpstreamBody("login_refresh", ModuleBody$10, result, { body: isRecord(result.body) ? {
3499
+ const body = yield* decodeUpstreamBody("login_refresh", ModuleBody$14, result, { body: isRecord(result.body) ? {
3477
3500
  ...result.body,
3478
3501
  cookie: result.cookie.join(";")
3479
3502
  } : result.body });
@@ -3487,7 +3510,7 @@ const loginRefresh$1 = (query, request) => Effect.gen(function* () {
3487
3510
  //#region src/modules/user_account.ts
3488
3511
  const inputSchema$23 = Schema.Struct({});
3489
3512
  const decodeModuleInput$23 = (input) => decodeModuleInput$68(inputSchema$23, input).pipe(Effect.as({}));
3490
- const ModuleBody$9 = Schema.toStandardSchemaV1(UpstreamObject({
3513
+ const ModuleBody$13 = Schema.toStandardSchemaV1(UpstreamObject({
3491
3514
  code: Schema.Literal(200),
3492
3515
  account: Schema.NullOr(UpstreamObject({
3493
3516
  id: Schema.Finite,
@@ -3505,15 +3528,15 @@ const userAccount$1 = (query, request) => Effect.gen(function* () {
3505
3528
  const result = yield* request(buildApiRequestIntent(`/api/nuser/account/get`, {}, createOption(query, "weapi")));
3506
3529
  return {
3507
3530
  ...toModuleResponse(result),
3508
- body: yield* decodeUpstreamBody("user_account", ModuleBody$9, result)
3531
+ body: yield* decodeUpstreamBody("user_account", ModuleBody$13, result)
3509
3532
  };
3510
3533
  });
3511
3534
  //#endregion
3512
3535
  //#region src/modules/login_status.ts
3513
- const ModuleBody$8 = Schema.toStandardSchemaV1(Schema.Struct({ data: ModuleBody$9 }));
3536
+ const ModuleBody$12 = Schema.toStandardSchemaV1(Schema.Struct({ data: ModuleBody$13 }));
3514
3537
  const loginStatus$1 = (query, request) => Effect.gen(function* () {
3515
3538
  const result = yield* request(buildApiRequestIntent("/api/w/nuser/account/get", {}, createOption(query, "weapi")));
3516
- const body = yield* decodeUpstreamBody("login_status", ModuleBody$8, result, { body: { data: result.body } });
3539
+ const body = yield* decodeUpstreamBody("login_status", ModuleBody$12, result, { body: { data: result.body } });
3517
3540
  return {
3518
3541
  ...toModuleResponse(result),
3519
3542
  status: 200,
@@ -3522,12 +3545,12 @@ const loginStatus$1 = (query, request) => Effect.gen(function* () {
3522
3545
  });
3523
3546
  //#endregion
3524
3547
  //#region src/modules/logout.ts
3525
- const ModuleBody$7 = Schema.toStandardSchemaV1(UpstreamObject({ code: Schema.Literal(200) }));
3548
+ const ModuleBody$11 = Schema.toStandardSchemaV1(UpstreamObject({ code: Schema.Literal(200) }));
3526
3549
  const logout$1 = (query, request) => Effect.gen(function* () {
3527
3550
  const result = yield* request(buildApiRequestIntent(`/api/logout`, {}, createOption(query)));
3528
3551
  return {
3529
3552
  ...toModuleResponse(result),
3530
- body: yield* decodeUpstreamBody("logout", ModuleBody$7, result)
3553
+ body: yield* decodeUpstreamBody("logout", ModuleBody$11, result)
3531
3554
  };
3532
3555
  });
3533
3556
  //#endregion
@@ -3555,6 +3578,17 @@ const lyric$1 = (input, request) => Effect.gen(function* () {
3555
3578
  });
3556
3579
  //#endregion
3557
3580
  //#region src/modules/lyric_new.ts
3581
+ const Lyric = UpstreamObject({ lyric: Schema.String });
3582
+ const ModuleBody$10 = Schema.toStandardSchemaV1(UpstreamObject({
3583
+ code: Schema.Literal(200),
3584
+ lrc: Lyric,
3585
+ tlyric: Schema.optionalKey(Lyric),
3586
+ romalrc: Schema.optionalKey(Lyric),
3587
+ yrc: Schema.optionalKey(Lyric),
3588
+ ytlrc: Schema.optionalKey(Lyric),
3589
+ yromalrc: Schema.optionalKey(Lyric),
3590
+ pureMusic: Schema.optionalKey(Schema.Boolean)
3591
+ }));
3558
3592
  const lyricNew$1 = (query, request) => Effect.gen(function* () {
3559
3593
  const data = {
3560
3594
  id: query.id,
@@ -3567,7 +3601,12 @@ const lyricNew$1 = (query, request) => Effect.gen(function* () {
3567
3601
  ytv: 0,
3568
3602
  yrv: 0
3569
3603
  };
3570
- return toModuleResponse(yield* request(buildApiRequestIntent(`/api/song/lyric/v1`, data, createOption(query))));
3604
+ const response = yield* request(buildApiRequestIntent(`/api/song/lyric/v1`, data, createOption(query)));
3605
+ const body = yield* decodeUpstreamBody("lyric_new", ModuleBody$10, response);
3606
+ return {
3607
+ ...toModuleResponse(response),
3608
+ body
3609
+ };
3571
3610
  });
3572
3611
  //#endregion
3573
3612
  //#region src/modules/mlog_music_rcmd.ts
@@ -3967,7 +4006,7 @@ const Playlist$1 = UpstreamObject({
3967
4006
  trackUpdateTime: Schema.Finite,
3968
4007
  description: Schema.NullOr(Schema.String)
3969
4008
  });
3970
- const ModuleBody$6 = Schema.toStandardSchemaV1(UpstreamObject({
4009
+ const ModuleBody$9 = Schema.toStandardSchemaV1(UpstreamObject({
3971
4010
  code: Schema.Literal(200),
3972
4011
  playlist: Playlist$1
3973
4012
  }));
@@ -3985,7 +4024,7 @@ const playlistDetail$1 = (input, request) => Effect.gen(function* () {
3985
4024
  response: "json",
3986
4025
  semantic: "read"
3987
4026
  });
3988
- const body = yield* decodeUpstreamBody("playlist_detail", ModuleBody$6, response);
4027
+ const body = yield* decodeUpstreamBody("playlist_detail", ModuleBody$9, response);
3989
4028
  return {
3990
4029
  ...toModuleResponse(response),
3991
4030
  body
@@ -4185,7 +4224,7 @@ const inputSchema$19 = Schema.Struct({
4185
4224
  offset: Schema.optional(QueryNumber)
4186
4225
  });
4187
4226
  const decodeModuleInput$19 = (input) => decodeModuleInput$68(inputSchema$19, input);
4188
- const ModuleBody$5 = Schema.toStandardSchemaV1(UpstreamObject({
4227
+ const ModuleBody$8 = Schema.toStandardSchemaV1(UpstreamObject({
4189
4228
  code: Schema.Literal(200),
4190
4229
  songs: Schema.Array(Song)
4191
4230
  }));
@@ -4228,7 +4267,7 @@ const playlistTrackAll$1 = (query, request) => Effect.gen(function* () {
4228
4267
  ids.push(track.id);
4229
4268
  }
4230
4269
  const songDetail = yield* request(buildApiRequestIntent("/api/v3/song/detail", { c: "[" + ids.map((id) => "{\"id\":" + id + "}").join(",") + "]" }, createOption(query)));
4231
- const songs = yield* decodeUpstreamBody("playlist_track_all", ModuleBody$5, songDetail);
4270
+ const songs = yield* decodeUpstreamBody("playlist_track_all", ModuleBody$8, songDetail);
4232
4271
  return {
4233
4272
  ...toModuleResponse(songDetail),
4234
4273
  body: songs
@@ -4354,13 +4393,13 @@ const recommendResource$1 = (query, request) => Effect.gen(function* () {
4354
4393
  });
4355
4394
  //#endregion
4356
4395
  //#region src/modules/recommend_songs.ts
4357
- const ModuleBody$4 = Schema.toStandardSchemaV1(UpstreamObject({
4396
+ const ModuleBody$7 = Schema.toStandardSchemaV1(UpstreamObject({
4358
4397
  code: Schema.Literal(200),
4359
4398
  data: UpstreamObject({ dailySongs: Schema.Array(Song) })
4360
4399
  }));
4361
4400
  const recommendSongs$1 = (query, request) => Effect.gen(function* () {
4362
4401
  const response = yield* request(buildApiRequestIntent(`/api/v3/discovery/recommend/songs`, {}, createOption(query, "weapi")));
4363
- const body = yield* decodeUpstreamBody("recommend_songs", ModuleBody$4, response);
4402
+ const body = yield* decodeUpstreamBody("recommend_songs", ModuleBody$7, response);
4364
4403
  return {
4365
4404
  ...toModuleResponse(response),
4366
4405
  body
@@ -4526,6 +4565,7 @@ const resourceLike$1 = (input, request) => Effect.gen(function* () {
4526
4565
  });
4527
4566
  //#endregion
4528
4567
  //#region src/modules/scrobble.ts
4568
+ const ModuleBody$6 = Schema.toStandardSchemaV1(UpstreamObject({ code: Schema.Literal(200) }));
4529
4569
  const scrobble$1 = (query, request) => Effect.gen(function* () {
4530
4570
  const data = { logs: JSON.stringify([{
4531
4571
  action: "play",
@@ -4542,7 +4582,12 @@ const scrobble$1 = (query, request) => Effect.gen(function* () {
4542
4582
  content: ""
4543
4583
  }
4544
4584
  }]) };
4545
- return toModuleResponse(yield* request(buildApiRequestIntent(`/api/feedback/weblog`, data, createOption(query, "weapi"))));
4585
+ const response = yield* request(buildApiRequestIntent(`/api/feedback/weblog`, data, createOption(query, "weapi")));
4586
+ const body = yield* decodeUpstreamBody("scrobble", ModuleBody$6, response);
4587
+ return {
4588
+ ...toModuleResponse(response),
4589
+ body
4590
+ };
4546
4591
  });
4547
4592
  //#endregion
4548
4593
  //#region src/modules/search.ts
@@ -4756,7 +4801,7 @@ const songChorus$1 = (query, request) => Effect.gen(function* () {
4756
4801
  //#region src/modules/song_detail.ts
4757
4802
  const inputSchema$15 = Schema.Struct({ ids: Schema.optional(QueryIdentifier) });
4758
4803
  const decodeModuleInput$15 = (input) => decodeModuleInput$68(inputSchema$15, input);
4759
- const ModuleBody$3 = Schema.toStandardSchemaV1(UpstreamObject({
4804
+ const ModuleBody$5 = Schema.toStandardSchemaV1(UpstreamObject({
4760
4805
  code: Schema.Literal(200),
4761
4806
  songs: Schema.Array(Song)
4762
4807
  }));
@@ -4772,7 +4817,7 @@ const songDetail$1 = (input, request) => Effect.gen(function* () {
4772
4817
  response: "json",
4773
4818
  semantic: "read"
4774
4819
  });
4775
- const body = yield* decodeUpstreamBody("song_detail", ModuleBody$3, response);
4820
+ const body = yield* decodeUpstreamBody("song_detail", ModuleBody$5, response);
4776
4821
  return {
4777
4822
  ...toModuleResponse(response),
4778
4823
  body
@@ -4800,13 +4845,28 @@ const songDownloadUrl$1 = (query, request) => Effect.gen(function* () {
4800
4845
  });
4801
4846
  //#endregion
4802
4847
  //#region src/modules/song_download_url_v1.ts
4848
+ const ModuleBody$4 = Schema.toStandardSchemaV1(UpstreamObject({
4849
+ code: Schema.Literal(200),
4850
+ data: UpstreamObject({
4851
+ id: Schema.Finite,
4852
+ url: Schema.NullOr(Schema.String),
4853
+ code: Schema.Finite,
4854
+ level: Schema.NullOr(Schema.String),
4855
+ size: Schema.Finite
4856
+ })
4857
+ }));
4803
4858
  const songDownloadUrlV1$1 = (query, request) => Effect.gen(function* () {
4804
4859
  const data = {
4805
4860
  id: query.id,
4806
4861
  immerseType: "c51",
4807
4862
  level: query.level
4808
4863
  };
4809
- return toModuleResponse(yield* request(buildApiRequestIntent(`/api/song/enhance/download/url/v1`, data, createOption(query))));
4864
+ const response = yield* request(buildApiRequestIntent(`/api/song/enhance/download/url/v1`, data, createOption(query)));
4865
+ const body = yield* decodeUpstreamBody("song_download_url_v1", ModuleBody$4, response);
4866
+ return {
4867
+ ...toModuleResponse(response),
4868
+ body
4869
+ };
4810
4870
  });
4811
4871
  //#endregion
4812
4872
  //#region src/modules/song_dynamic_cover.ts
@@ -4960,6 +5020,20 @@ const inputSchema$13 = Schema.Struct({
4960
5020
  ]))
4961
5021
  });
4962
5022
  const decodeModuleInput$13 = (input) => decodeModuleInput$68(inputSchema$13, input);
5023
+ const ModuleBody$3 = Schema.toStandardSchemaV1(UpstreamObject({
5024
+ code: Schema.Literal(200),
5025
+ data: Schema.Array(UpstreamObject({
5026
+ id: Schema.Finite,
5027
+ url: Schema.NullOr(Schema.String),
5028
+ code: Schema.Finite,
5029
+ level: Schema.NullOr(Schema.String),
5030
+ expi: Schema.Finite,
5031
+ freeTrialInfo: Schema.NullOr(UpstreamObject({
5032
+ start: Schema.Finite,
5033
+ end: Schema.Finite
5034
+ }))
5035
+ }))
5036
+ }));
4963
5037
  const songUrlV1$1 = (query, request) => Effect.gen(function* () {
4964
5038
  const data = {
4965
5039
  ids: "[" + query.id + "]",
@@ -4967,7 +5041,12 @@ const songUrlV1$1 = (query, request) => Effect.gen(function* () {
4967
5041
  encodeType: "flac"
4968
5042
  };
4969
5043
  if (data.level === "sky") data.immerseType = "c51";
4970
- return toModuleResponse(yield* request(buildApiRequestIntent(`/api/song/enhance/player/url/v1`, data, createOption(query))));
5044
+ const response = yield* request(buildApiRequestIntent(`/api/song/enhance/player/url/v1`, data, createOption(query)));
5045
+ const body = yield* decodeUpstreamBody("song_url_v1", ModuleBody$3, response);
5046
+ return {
5047
+ ...toModuleResponse(response),
5048
+ body
5049
+ };
4971
5050
  });
4972
5051
  //#endregion
4973
5052
  //#region src/modules/song_wiki_summary.ts
@@ -8918,4 +8997,4 @@ const createHanaMusicApi = (config = {}) => {
8918
8997
  };
8919
8998
  };
8920
8999
  //#endregion
8921
- export { commentHot as $, videoSub as $a, topAlbum as $i, mvSublist as $n, ModuleBody$21 as $o, relatedPlaylist as $r, homepageDragonBall as $t, audioMatch as A, userFolloweds as Aa, songLikeCheck as Ai, mlogMusicRcmd as An, invokeModule as Ao, playlistTrackAdd as Ar, djProgramToplistHours as At, captchaSent as B, userSocialStatus as Ba, songSingledownlist as Bi, musicianCloudbean as Bn, ModuleBody$9 as Bo, recentListenList as Br, djToplistHours as Bt, artistNewSong as C, userCloudDel as Ca, simiUser as Ci, loginQrCreate as Cn, yunbeiRcmdSongHistory as Co, playlistMylike as Cr, djDifmSubscribeChannelsGet as Ct, artistTopSong as D, userDj as Da, songDownloadUrl as Di, logout as Dn, yunbeiTasks as Do, playlistSubscribe as Dr, djProgram as Dt, artistSublist as E, userDetail as Ea, songDownlist as Ei, loginStatus as En, yunbeiTaskFinish as Eo, playlistPrivacy as Er, djPersonalizeRecommend as Et, broadcastChannelCollectList as F, userPlaylist as Fa, songMonthdownlist as Fi, msgNotices as Fn, ModuleBody$4 as Fo, playlistUpdatePlaycount as Fr, djSub as Ft, cloudImport as G, userUpdate as Ga, styleAlbum as Gi, musicianTasks as Gn, ModuleBody$14 as Go, recordRecentDj as Gr, eventDel as Gt, cellphoneExistenceCheck as H, userSocialStatusRcmd as Ha, songUrlV1 as Hi, musicianDataOverview as Hn, ModuleBody$11 as Ho, recommendSongs as Hr, djToplistPay as Ht, broadcastChannelCurrentinfo as I, userPlaylistCollect as Ia, songMusicDetail as Ii, msgPrivate as In, ModuleBody$5 as Io, playlistVideoRecent as Ir, djSublist as It, comment as J, videoCategoryList as Ja, styleList as Ji, mvDetail as Jn, ModuleBody$16 as Jo, recordRecentVideo as Jr, follow as Jt, cloudMatch as K, verifyGetQr as Ka, styleArtist as Ki, musicianTasksNew as Kn, RiskBody as Ko, recordRecentPlaylist as Kr, eventForward as Kt, broadcastChannelList as L, userPlaylistCreate as La, songOrderUpdate as Li, msgPrivateHistory as Ln, ModuleBody$6 as Lo, playmodeIntelligenceList as Lr, djSubscriber as Lt, banner as M, userLevel as Ma, songLyricsMarkAdd as Mi, mlogUrl as Mn, ModuleBody$1 as Mo, playlistTrackDelete as Mr, djRadioTop as Mt, batch as N, userMedal as Na, songLyricsMarkDel as Ni, msgComments as Nn, ModuleBody$2 as No, playlistTracks as Nr, djRecommend as Nt, artistVideo as O, userEvent as Oa, songDownloadUrlV1 as Oi, lyric as On, yunbeiTasksTodo as Oo, playlistSubscribers as Or, djProgramDetail as Ot, broadcastCategoryRegionGet as P, userMutualfollowGet as Pa, songLyricsMarkUserPage as Pi, msgForwards as Pn, ModuleBody$3 as Po, playlistUpdate as Pr, djRecommendType as Pt, commentFloor as Q, videoGroupList as Qa, summaryAnnual as Qi, mvSub as Qn, ModuleBody$20 as Qo, relatedAllvideo as Qr, homepageBlockPage as Qt, broadcastSub as R, userRecord as Ra, songPurchased as Ri, msgRecentcontact as Rn, ModuleBody$7 as Ro, programRecommend as Rr, djTodayPerfered as Rt, artistNewMv as S, userCloud as Sa, simiSong as Si, loginQrCheck as Sn, yunbeiRcmdSong as So, playlistImportTaskStatus as Sr, djDifmPlayingTracksList as St, artistSub as T, userCommentHistory as Ta, songDetail as Ti, loginRefresh as Tn, yunbeiSign as To, playlistOrderUpdate as Tr, djPaygift as Tt, checkMusic as U, userSocialStatusSupport as Ua, songWikiSummary as Ui, musicianPlayTrend as Un, ModuleBody$12 as Uo, recommendSongsDislike as Ur, djToplistPopular as Ut, captchaVerify as V, userSocialStatusEdit as Va, songUrl as Vi, musicianCloudbeanObtain as Vn, ModuleBody$10 as Vo, recommendResource as Vr, djToplistNewcomer as Vt, cloud as W, userSubcount as Wa, starpickCommentsSummary as Wi, musicianSign as Wn, ModuleBody$13 as Wo, recordRecentAlbum as Wr, event as Wt, commentDj as X, videoDetailInfo as Xa, stylePreference as Xi, mvExclusiveRcmd as Xn, ModuleBody$18 as Xo, registerAnonimous as Xr, historyRecommendSongs as Xt, commentAlbum as Y, videoDetail as Ya, stylePlaylist as Yi, mvDetailInfo as Yn, ModuleBody$17 as Yo, recordRecentVoice as Yr, getUserids as Yt, commentEvent as Z, videoGroup as Za, styleSong as Zi, mvFirst as Zn, ModuleBody$19 as Zo, registerCellphone as Zr, historyRecommendSongsDetail as Zt, artistDetailDynamic as _, ugcSongGet as _a, signHappyInfo as _i, listentogetherStatus as _n, voicelistSearch as _o, playlistDetailDynamic as _r, djCatelist as _t, albumDetailDynamic as a, topSong as aa, searchHotDetail as ai, likelist as an, vipGrowthpointGet as ao, personalizedDjprogram as ar, commentPlaylist as at, artistList as b, userAudio as ba, simiMv as bi, login as bn, yunbeiExpense as bo, playlistHot as br, djDifmChannelSubscribe as bt, albumNew as c, topicSublist as ca, searchSuggest as ci, listenDataTodaySong as cn, vipTasks as co, personalizedPrivatecontent as cr, createHanaMusicApi as ct, albumSongsaleboard as d, toplistDetail as da, sendSong as di, listentogetherAccept as dn, voiceDetail as do, playlistCatlist as dr, digitalAlbumOrdering as dt, topArtists as ea, resourceLike as ei, hotTopic as en, videoTimelineAll as eo, mvUrl as er, createRequest as es, commentHugList as et, albumSub as f, ugcAlbumGet as fa, sendText as fi, listentogetherEnd as fn, voiceLyric as fo, playlistCoverUpdate as fr, digitalAlbumPurchased as ft, artistDetail as g, ugcMvGet as ga, sheetPreview as gi, listentogetherRoomCreate as gn, voicelistListSearch as go, playlistDetail as gr, djCategoryRecommend as gt, artistDesc as h, ugcDetail as ha, sheetList as hi, listentogetherRoomCheck as hn, voicelistList as ho, playlistDescUpdate as hr, djCategoryExcludehot as ht, albumDetail as i, topPlaylistHighquality as ia, searchHot as ii, like as in, vipGrowthpointDetails as io, personalized as ir, commentNew as it, avatarUpload as j, userFollows as ja, songLyricsMark as ji, mlogToVideo as jn, ModuleBody as jo, playlistTrackAll as jr, djRadioHot as jt, artists as k, userFollowMixed as ka, songDynamicCover as ki, lyricNew as kn, yunbeiToday as ko, playlistTagsUpdate as kr, djProgramToplist as kt, albumNewest as l, toplist as la, sendAlbum as li, listenDataTotal as ln, vipTimemachine as lo, personalizedPrivatecontentList as lr, dailySignin as lt, artistAlbum as m, ugcArtistSearch as ma, shareResource as mi, listentogetherPlayCommand as mn, voicelistDetail as mo, playlistDelete as mr, djBanner as mt, aidjContentRcmd as n, topMv as na, search as ni, imageUploadToken as nn, videoUrl as no, personalFm as nr, commentMusic as nt, albumList as o, topicDetail as oa, searchMatch as oi, listenDataRealtimeReport as on, vipInfo as oo, personalizedMv as or, commentVideo as ot, albumSublist as p, ugcArtistGet as pa, setting as pi, listentogetherHeatbeat as pn, voiceUpload as po, playlistCreate as pr, digitalAlbumSales as pt, cloudsearch as q, verifyQrcodestatus as qa, styleDetail as qi, mvAll as qn, ModuleBody$15 as qo, recordRecentSong as qr, fmTrash as qt, album as r, topPlaylist as ra, searchDefault as ri, innerVersion as rn, vipGrowthpoint as ro, personalFmMode as rr, commentMv as rt, albumListStyle as s, topicDetailEventHot as sa, searchMultimatch as si, listenDataReport as sn, vipInfoV2 as so, personalizedNewsong as sr, countriesCodeList as st, activateInitProfile as t, topList as ta, scrobble as ti, hugComment as tn, videoTimelineRecommend as to, nicknameCheck as tr, createOption as ts, commentLike as tt, albumPrivilege as u, toplistArtist as ua, sendPlaylist as ui, listenDataYearReport as un, voiceDelete as uo, plCount as ur, digitalAlbumDetail as ut, artistFans as v, ugcUserDevote as va, signinProgress as vi, listentogetherSyncListCommand as vn, voicelistTrans as vo, playlistDetailRcmdGet as vr, djDetail as vt, artistSongs as w, userCloudDetail as wa, songChorus as wi, loginQrKey as wn, yunbeiReceipt as wo, playlistNameUpdate as wr, djHot as wt, artistMv as x, userBinding as xa, simiPlaylist as xi, loginCellphone as xn, yunbeiInfo as xo, playlistImportNameTaskCreate as xr, djDifmChannelUnsubscribe as xt, artistFollowCount as y, userAccount as ya, simiArtist as yi, listentogetherSyncPlaylistGet as yn, yunbei as yo, playlistHighqualityTags as yr, djDifmAllStyleChannel as yt, calendar as z, userReplacephone as za, songRedCount as zi, musicFirstListenInfo as zn, ModuleBody$8 as zo, rebind as zr, djToplist as zt };
9000
+ export { commentHot as $, videoSub as $a, topAlbum as $i, mvSublist as $n, ModuleBody$21 as $o, relatedPlaylist as $r, homepageDragonBall as $t, audioMatch as A, userFolloweds as Aa, songLikeCheck as Ai, mlogMusicRcmd as An, invokeModule as Ao, playlistTrackAdd as Ar, djProgramToplistHours as At, captchaSent as B, userSocialStatus as Ba, songSingledownlist as Bi, musicianCloudbean as Bn, ModuleBody$9 as Bo, recentListenList as Br, djToplistHours as Bt, artistNewSong as C, userCloudDel as Ca, simiUser as Ci, loginQrCreate as Cn, yunbeiRcmdSongHistory as Co, playlistMylike as Cr, djDifmSubscribeChannelsGet as Ct, artistTopSong as D, userDj as Da, songDownloadUrl as Di, logout as Dn, yunbeiTasks as Do, playlistSubscribe as Dr, djProgram as Dt, artistSublist as E, userDetail as Ea, songDownlist as Ei, loginStatus as En, yunbeiTaskFinish as Eo, playlistPrivacy as Er, djPersonalizeRecommend as Et, broadcastChannelCollectList as F, userPlaylist as Fa, songMonthdownlist as Fi, msgNotices as Fn, ModuleBody$4 as Fo, playlistUpdatePlaycount as Fr, djSub as Ft, cloudImport as G, userUpdate as Ga, styleAlbum as Gi, musicianTasks as Gn, ModuleBody$14 as Go, recordRecentDj as Gr, eventDel as Gt, cellphoneExistenceCheck as H, userSocialStatusRcmd as Ha, songUrlV1 as Hi, musicianDataOverview as Hn, ModuleBody$11 as Ho, recommendSongs as Hr, djToplistPay as Ht, broadcastChannelCurrentinfo as I, userPlaylistCollect as Ia, songMusicDetail as Ii, msgPrivate as In, ModuleBody$5 as Io, playlistVideoRecent as Ir, djSublist as It, comment as J, videoCategoryList as Ja, styleList as Ji, mvDetail as Jn, ModuleBody$17 as Jo, recordRecentVideo as Jr, follow as Jt, cloudMatch as K, verifyGetQr as Ka, styleArtist as Ki, musicianTasksNew as Kn, ModuleBody$15 as Ko, recordRecentPlaylist as Kr, eventForward as Kt, broadcastChannelList as L, userPlaylistCreate as La, songOrderUpdate as Li, msgPrivateHistory as Ln, ModuleBody$6 as Lo, playmodeIntelligenceList as Lr, djSubscriber as Lt, banner as M, userLevel as Ma, songLyricsMarkAdd as Mi, mlogUrl as Mn, ModuleBody$1 as Mo, playlistTrackDelete as Mr, djRadioTop as Mt, batch as N, userMedal as Na, songLyricsMarkDel as Ni, msgComments as Nn, ModuleBody$2 as No, playlistTracks as Nr, djRecommend as Nt, artistVideo as O, userEvent as Oa, songDownloadUrlV1 as Oi, lyric as On, yunbeiTasksTodo as Oo, playlistSubscribers as Or, djProgramDetail as Ot, broadcastCategoryRegionGet as P, userMutualfollowGet as Pa, songLyricsMarkUserPage as Pi, msgForwards as Pn, ModuleBody$3 as Po, playlistUpdate as Pr, djRecommendType as Pt, commentFloor as Q, videoGroupList as Qa, summaryAnnual as Qi, mvSub as Qn, ModuleBody$20 as Qo, relatedAllvideo as Qr, homepageBlockPage as Qt, broadcastSub as R, userRecord as Ra, songPurchased as Ri, msgRecentcontact as Rn, ModuleBody$7 as Ro, programRecommend as Rr, djTodayPerfered as Rt, artistNewMv as S, userCloud as Sa, simiSong as Si, loginQrCheck as Sn, yunbeiRcmdSong as So, playlistImportTaskStatus as Sr, djDifmPlayingTracksList as St, artistSub as T, userCommentHistory as Ta, songDetail as Ti, loginRefresh as Tn, yunbeiSign as To, playlistOrderUpdate as Tr, djPaygift as Tt, checkMusic as U, userSocialStatusSupport as Ua, songWikiSummary as Ui, musicianPlayTrend as Un, ModuleBody$12 as Uo, recommendSongsDislike as Ur, djToplistPopular as Ut, captchaVerify as V, userSocialStatusEdit as Va, songUrl as Vi, musicianCloudbeanObtain as Vn, ModuleBody$10 as Vo, recommendResource as Vr, djToplistNewcomer as Vt, cloud as W, userSubcount as Wa, starpickCommentsSummary as Wi, musicianSign as Wn, ModuleBody$13 as Wo, recordRecentAlbum as Wr, event as Wt, commentDj as X, videoDetailInfo as Xa, stylePreference as Xi, mvExclusiveRcmd as Xn, RiskBody as Xo, registerAnonimous as Xr, historyRecommendSongs as Xt, commentAlbum as Y, videoDetail as Ya, stylePlaylist as Yi, mvDetailInfo as Yn, ModuleBody$18 as Yo, recordRecentVoice as Yr, getUserids as Yt, commentEvent as Z, videoGroup as Za, styleSong as Zi, mvFirst as Zn, ModuleBody$19 as Zo, registerCellphone as Zr, historyRecommendSongsDetail as Zt, artistDetailDynamic as _, ugcSongGet as _a, signHappyInfo as _i, listentogetherStatus as _n, voicelistSearch as _o, playlistDetailDynamic as _r, djCatelist as _t, albumDetailDynamic as a, topSong as aa, searchHotDetail as ai, likelist as an, vipGrowthpointGet as ao, personalizedDjprogram as ar, createOption as as, commentPlaylist as at, artistList as b, userAudio as ba, simiMv as bi, login as bn, yunbeiExpense as bo, playlistHot as br, djDifmChannelSubscribe as bt, albumNew as c, topicSublist as ca, searchSuggest as ci, listenDataTodaySong as cn, vipTasks as co, personalizedPrivatecontent as cr, createHanaMusicApi as ct, albumSongsaleboard as d, toplistDetail as da, sendSong as di, listentogetherAccept as dn, voiceDetail as do, playlistCatlist as dr, digitalAlbumOrdering as dt, topArtists as ea, resourceLike as ei, hotTopic as en, videoTimelineAll as eo, mvUrl as er, ModuleBody$22 as es, commentHugList as et, albumSub as f, ugcAlbumGet as fa, sendText as fi, listentogetherEnd as fn, voiceLyric as fo, playlistCoverUpdate as fr, digitalAlbumPurchased as ft, artistDetail as g, ugcMvGet as ga, sheetPreview as gi, listentogetherRoomCreate as gn, voicelistListSearch as go, playlistDetail as gr, djCategoryRecommend as gt, artistDesc as h, ugcDetail as ha, sheetList as hi, listentogetherRoomCheck as hn, voicelistList as ho, playlistDescUpdate as hr, djCategoryExcludehot as ht, albumDetail as i, topPlaylistHighquality as ia, searchHot as ii, like as in, vipGrowthpointDetails as io, personalized as ir, createRequest as is, commentNew as it, avatarUpload as j, userFollows as ja, songLyricsMark as ji, mlogToVideo as jn, ModuleBody as jo, playlistTrackAll as jr, djRadioHot as jt, artists as k, userFollowMixed as ka, songDynamicCover as ki, lyricNew as kn, yunbeiToday as ko, playlistTagsUpdate as kr, djProgramToplist as kt, albumNewest as l, toplist as la, sendAlbum as li, listenDataTotal as ln, vipTimemachine as lo, personalizedPrivatecontentList as lr, dailySignin as lt, artistAlbum as m, ugcArtistSearch as ma, shareResource as mi, listentogetherPlayCommand as mn, voicelistDetail as mo, playlistDelete as mr, djBanner as mt, aidjContentRcmd as n, topMv as na, search as ni, imageUploadToken as nn, videoUrl as no, personalFm as nr, ModuleBody$24 as ns, commentMusic as nt, albumList as o, topicDetail as oa, searchMatch as oi, listenDataRealtimeReport as on, vipInfo as oo, personalizedMv as or, commentVideo as ot, albumSublist as p, ugcArtistGet as pa, setting as pi, listentogetherHeatbeat as pn, voiceUpload as po, playlistCreate as pr, digitalAlbumSales as pt, cloudsearch as q, verifyQrcodestatus as qa, styleDetail as qi, mvAll as qn, ModuleBody$16 as qo, recordRecentSong as qr, fmTrash as qt, album as r, topPlaylist as ra, searchDefault as ri, innerVersion as rn, vipGrowthpoint as ro, personalFmMode as rr, ModuleBody$25 as rs, commentMv as rt, albumListStyle as s, topicDetailEventHot as sa, searchMultimatch as si, listenDataReport as sn, vipInfoV2 as so, personalizedNewsong as sr, countriesCodeList as st, activateInitProfile as t, topList as ta, scrobble as ti, hugComment as tn, videoTimelineRecommend as to, nicknameCheck as tr, ModuleBody$23 as ts, commentLike as tt, albumPrivilege as u, toplistArtist as ua, sendPlaylist as ui, listenDataYearReport as un, voiceDelete as uo, plCount as ur, digitalAlbumDetail as ut, artistFans as v, ugcUserDevote as va, signinProgress as vi, listentogetherSyncListCommand as vn, voicelistTrans as vo, playlistDetailRcmdGet as vr, djDetail as vt, artistSongs as w, userCloudDetail as wa, songChorus as wi, loginQrKey as wn, yunbeiReceipt as wo, playlistNameUpdate as wr, djHot as wt, artistMv as x, userBinding as xa, simiPlaylist as xi, loginCellphone as xn, yunbeiInfo as xo, playlistImportNameTaskCreate as xr, djDifmChannelUnsubscribe as xt, artistFollowCount as y, userAccount as ya, simiArtist as yi, listentogetherSyncPlaylistGet as yn, yunbei as yo, playlistHighqualityTags as yr, djDifmAllStyleChannel as yt, calendar as z, userReplacephone as za, songRedCount as zi, musicFirstListenInfo as zn, ModuleBody$8 as zo, rebind as zr, djToplist as zt };