lastfm-nodejs-client 1.5.6 → 1.6.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 (316) hide show
  1. package/README.md +140 -74
  2. package/dist/@types/album/addTags.d.ts +11 -0
  3. package/dist/@types/album/getInfo.d.ts +11 -0
  4. package/dist/@types/album/getTags.d.ts +11 -0
  5. package/dist/@types/album/getTopTags.d.ts +10 -0
  6. package/dist/@types/album/removeTag.d.ts +11 -0
  7. package/dist/@types/album/search.d.ts +10 -0
  8. package/dist/@types/artist/addTags.d.ts +10 -0
  9. package/dist/@types/artist/getCorrection.d.ts +9 -0
  10. package/dist/@types/artist/getInfo.d.ts +10 -0
  11. package/dist/@types/artist/getSimilar.d.ts +10 -0
  12. package/dist/@types/artist/getTags.d.ts +10 -0
  13. package/dist/@types/artist/getTopAlbums.d.ts +11 -0
  14. package/dist/@types/artist/getTopTags.d.ts +9 -0
  15. package/dist/@types/artist/getTopTracks.d.ts +11 -0
  16. package/dist/@types/artist/removeTag.d.ts +10 -0
  17. package/dist/@types/artist/search.d.ts +10 -0
  18. package/dist/@types/auth/getMobileSession.d.ts +11 -0
  19. package/dist/@types/auth/getSession.d.ts +10 -0
  20. package/dist/@types/auth.d.ts +9 -6
  21. package/dist/@types/chart/topArtists.d.ts +11 -0
  22. package/dist/@types/chart/topTags.d.ts +8 -0
  23. package/dist/@types/chart/topTracks.d.ts +8 -0
  24. package/dist/@types/config.d.ts +13 -11
  25. package/dist/@types/createOptions.d.ts +23 -0
  26. package/dist/@types/geo/getTopArtists.d.ts +10 -0
  27. package/dist/@types/geo/getTopTracks.d.ts +10 -0
  28. package/dist/@types/getFriends.d.ts +6 -3
  29. package/dist/@types/getInfo.d.ts +5 -3
  30. package/dist/@types/getLovedTracks.d.ts +7 -3
  31. package/dist/@types/getRecentTracks.d.ts +7 -3
  32. package/dist/@types/getTopAlbums.d.ts +7 -3
  33. package/dist/@types/getTopArtists.d.ts +7 -3
  34. package/dist/@types/getTopTracks.d.ts +7 -3
  35. package/dist/@types/getUserTopTags.d.ts +6 -3
  36. package/dist/@types/getWeeklyAlbumChart.d.ts +7 -3
  37. package/dist/@types/getWeeklyArtistChart.d.ts +7 -3
  38. package/dist/@types/getWeeklyChartList.d.ts +8 -3
  39. package/dist/@types/getWeeklyTrackChart.d.ts +7 -3
  40. package/dist/@types/index.d.ts +31 -89
  41. package/dist/@types/lastfm.types.d.ts +1 -2
  42. package/dist/@types/library/getArtists.d.ts +10 -0
  43. package/dist/@types/md5.d.ts +7 -0
  44. package/dist/@types/method.d.ts +25 -77
  45. package/dist/@types/request.d.ts +23 -0
  46. package/dist/@types/tag/getInfo.d.ts +9 -0
  47. package/dist/@types/tag/getSimilar.d.ts +8 -0
  48. package/dist/@types/tag/getTopAlbums.d.ts +10 -0
  49. package/dist/@types/tag/getTopArtists.d.ts +10 -0
  50. package/dist/@types/tag/getTopTags.d.ts +7 -0
  51. package/dist/@types/tag/getWeeklyChartList.d.ts +9 -0
  52. package/dist/@types/tag/topTracks.d.ts +6 -3
  53. package/dist/@types/track/addTags.d.ts +11 -0
  54. package/dist/@types/track/getCorrection.d.ts +10 -0
  55. package/dist/@types/track/getInfo.d.ts +11 -0
  56. package/dist/@types/track/getSimilar.d.ts +11 -0
  57. package/dist/@types/track/getTags.d.ts +11 -0
  58. package/dist/@types/track/getTopTags.d.ts +10 -0
  59. package/dist/@types/track/love.d.ts +10 -0
  60. package/dist/@types/track/removeTag.d.ts +11 -0
  61. package/dist/@types/track/scrobble.d.ts +12 -0
  62. package/dist/@types/track/search.d.ts +11 -0
  63. package/dist/@types/track/unlove.d.ts +10 -0
  64. package/dist/@types/track/updateNowPlaying.d.ts +11 -0
  65. package/dist/@types/user/getPersonalTags.d.ts +12 -0
  66. package/dist/album/addTags.js +11 -0
  67. package/dist/album/addTags.js.map +1 -1
  68. package/dist/album/getInfo.js +11 -0
  69. package/dist/album/getInfo.js.map +1 -1
  70. package/dist/album/getTags.js +11 -0
  71. package/dist/album/getTags.js.map +1 -1
  72. package/dist/album/getTopTags.js +10 -0
  73. package/dist/album/getTopTags.js.map +1 -1
  74. package/dist/album/removeTag.js +11 -0
  75. package/dist/album/removeTag.js.map +1 -1
  76. package/dist/album/search.js +10 -0
  77. package/dist/album/search.js.map +1 -1
  78. package/dist/artist/addTags.js +10 -0
  79. package/dist/artist/addTags.js.map +1 -1
  80. package/dist/artist/getCorrection.js +9 -0
  81. package/dist/artist/getCorrection.js.map +1 -1
  82. package/dist/artist/getInfo.js +10 -0
  83. package/dist/artist/getInfo.js.map +1 -1
  84. package/dist/artist/getSimilar.js +10 -0
  85. package/dist/artist/getSimilar.js.map +1 -1
  86. package/dist/artist/getTags.js +10 -0
  87. package/dist/artist/getTags.js.map +1 -1
  88. package/dist/artist/getTopAlbums.js +11 -0
  89. package/dist/artist/getTopAlbums.js.map +1 -1
  90. package/dist/artist/getTopTags.js +9 -0
  91. package/dist/artist/getTopTags.js.map +1 -1
  92. package/dist/artist/getTopTracks.js +11 -0
  93. package/dist/artist/getTopTracks.js.map +1 -1
  94. package/dist/artist/removeTag.js +10 -0
  95. package/dist/artist/removeTag.js.map +1 -1
  96. package/dist/artist/search.js +10 -0
  97. package/dist/artist/search.js.map +1 -1
  98. package/dist/auth/getMobileSession.js +11 -0
  99. package/dist/auth/getMobileSession.js.map +1 -1
  100. package/dist/auth/getSession.js +10 -0
  101. package/dist/auth/getSession.js.map +1 -1
  102. package/dist/auth.js +9 -6
  103. package/dist/auth.js.map +1 -1
  104. package/dist/chart/topArtists.js +11 -0
  105. package/dist/chart/topArtists.js.map +1 -1
  106. package/dist/chart/topTags.js +8 -0
  107. package/dist/chart/topTags.js.map +1 -1
  108. package/dist/chart/topTracks.js +8 -0
  109. package/dist/chart/topTracks.js.map +1 -1
  110. package/dist/cjs/album/addTags.js +11 -0
  111. package/dist/cjs/album/addTags.js.map +1 -1
  112. package/dist/cjs/album/getInfo.js +11 -0
  113. package/dist/cjs/album/getInfo.js.map +1 -1
  114. package/dist/cjs/album/getTags.js +11 -0
  115. package/dist/cjs/album/getTags.js.map +1 -1
  116. package/dist/cjs/album/getTopTags.js +10 -0
  117. package/dist/cjs/album/getTopTags.js.map +1 -1
  118. package/dist/cjs/album/removeTag.js +11 -0
  119. package/dist/cjs/album/removeTag.js.map +1 -1
  120. package/dist/cjs/album/search.js +10 -0
  121. package/dist/cjs/album/search.js.map +1 -1
  122. package/dist/cjs/artist/addTags.js +10 -0
  123. package/dist/cjs/artist/addTags.js.map +1 -1
  124. package/dist/cjs/artist/getCorrection.js +9 -0
  125. package/dist/cjs/artist/getCorrection.js.map +1 -1
  126. package/dist/cjs/artist/getInfo.js +10 -0
  127. package/dist/cjs/artist/getInfo.js.map +1 -1
  128. package/dist/cjs/artist/getSimilar.js +10 -0
  129. package/dist/cjs/artist/getSimilar.js.map +1 -1
  130. package/dist/cjs/artist/getTags.js +10 -0
  131. package/dist/cjs/artist/getTags.js.map +1 -1
  132. package/dist/cjs/artist/getTopAlbums.js +11 -0
  133. package/dist/cjs/artist/getTopAlbums.js.map +1 -1
  134. package/dist/cjs/artist/getTopTags.js +9 -0
  135. package/dist/cjs/artist/getTopTags.js.map +1 -1
  136. package/dist/cjs/artist/getTopTracks.js +11 -0
  137. package/dist/cjs/artist/getTopTracks.js.map +1 -1
  138. package/dist/cjs/artist/removeTag.js +10 -0
  139. package/dist/cjs/artist/removeTag.js.map +1 -1
  140. package/dist/cjs/artist/search.js +10 -0
  141. package/dist/cjs/artist/search.js.map +1 -1
  142. package/dist/cjs/auth/getMobileSession.js +11 -0
  143. package/dist/cjs/auth/getMobileSession.js.map +1 -1
  144. package/dist/cjs/auth/getSession.js +10 -0
  145. package/dist/cjs/auth/getSession.js.map +1 -1
  146. package/dist/cjs/auth.js +9 -6
  147. package/dist/cjs/auth.js.map +1 -1
  148. package/dist/cjs/chart/topArtists.js +11 -0
  149. package/dist/cjs/chart/topArtists.js.map +1 -1
  150. package/dist/cjs/chart/topTags.js +8 -0
  151. package/dist/cjs/chart/topTags.js.map +1 -1
  152. package/dist/cjs/chart/topTracks.js +8 -0
  153. package/dist/cjs/chart/topTracks.js.map +1 -1
  154. package/dist/cjs/config.js.map +1 -1
  155. package/dist/cjs/createOptions.js +23 -0
  156. package/dist/cjs/createOptions.js.map +1 -1
  157. package/dist/cjs/geo/getTopArtists.js +10 -0
  158. package/dist/cjs/geo/getTopArtists.js.map +1 -1
  159. package/dist/cjs/geo/getTopTracks.js +10 -0
  160. package/dist/cjs/geo/getTopTracks.js.map +1 -1
  161. package/dist/cjs/getFriends.js +6 -3
  162. package/dist/cjs/getFriends.js.map +1 -1
  163. package/dist/cjs/getInfo.js +5 -3
  164. package/dist/cjs/getInfo.js.map +1 -1
  165. package/dist/cjs/getLovedTracks.js +7 -3
  166. package/dist/cjs/getLovedTracks.js.map +1 -1
  167. package/dist/cjs/getRecentTracks.js +7 -3
  168. package/dist/cjs/getRecentTracks.js.map +1 -1
  169. package/dist/cjs/getTopAlbums.js +7 -3
  170. package/dist/cjs/getTopAlbums.js.map +1 -1
  171. package/dist/cjs/getTopArtists.js +7 -3
  172. package/dist/cjs/getTopArtists.js.map +1 -1
  173. package/dist/cjs/getTopTracks.js +7 -3
  174. package/dist/cjs/getTopTracks.js.map +1 -1
  175. package/dist/cjs/getUserTopTags.js +6 -3
  176. package/dist/cjs/getUserTopTags.js.map +1 -1
  177. package/dist/cjs/getWeeklyAlbumChart.js +7 -3
  178. package/dist/cjs/getWeeklyAlbumChart.js.map +1 -1
  179. package/dist/cjs/getWeeklyArtistChart.js +7 -3
  180. package/dist/cjs/getWeeklyArtistChart.js.map +1 -1
  181. package/dist/cjs/getWeeklyChartList.js +8 -3
  182. package/dist/cjs/getWeeklyChartList.js.map +1 -1
  183. package/dist/cjs/getWeeklyTrackChart.js +7 -3
  184. package/dist/cjs/getWeeklyTrackChart.js.map +1 -1
  185. package/dist/cjs/index.js +21 -0
  186. package/dist/cjs/index.js.map +1 -1
  187. package/dist/cjs/library/getArtists.js +10 -0
  188. package/dist/cjs/library/getArtists.js.map +1 -1
  189. package/dist/cjs/md5.js +80 -0
  190. package/dist/cjs/md5.js.map +1 -0
  191. package/dist/cjs/method.js +11 -0
  192. package/dist/cjs/method.js.map +1 -1
  193. package/dist/cjs/request.js +32 -2
  194. package/dist/cjs/request.js.map +1 -1
  195. package/dist/cjs/tag/getInfo.js +9 -0
  196. package/dist/cjs/tag/getInfo.js.map +1 -1
  197. package/dist/cjs/tag/getSimilar.js +8 -0
  198. package/dist/cjs/tag/getSimilar.js.map +1 -1
  199. package/dist/cjs/tag/getTopAlbums.js +10 -0
  200. package/dist/cjs/tag/getTopAlbums.js.map +1 -1
  201. package/dist/cjs/tag/getTopArtists.js +10 -0
  202. package/dist/cjs/tag/getTopArtists.js.map +1 -1
  203. package/dist/cjs/tag/getTopTags.js +7 -0
  204. package/dist/cjs/tag/getTopTags.js.map +1 -1
  205. package/dist/cjs/tag/getWeeklyChartList.js +9 -0
  206. package/dist/cjs/tag/getWeeklyChartList.js.map +1 -1
  207. package/dist/cjs/tag/topTracks.js +6 -3
  208. package/dist/cjs/tag/topTracks.js.map +1 -1
  209. package/dist/cjs/track/addTags.js +11 -0
  210. package/dist/cjs/track/addTags.js.map +1 -1
  211. package/dist/cjs/track/getCorrection.js +10 -0
  212. package/dist/cjs/track/getCorrection.js.map +1 -1
  213. package/dist/cjs/track/getInfo.js +11 -0
  214. package/dist/cjs/track/getInfo.js.map +1 -1
  215. package/dist/cjs/track/getSimilar.js +11 -0
  216. package/dist/cjs/track/getSimilar.js.map +1 -1
  217. package/dist/cjs/track/getTags.js +11 -0
  218. package/dist/cjs/track/getTags.js.map +1 -1
  219. package/dist/cjs/track/getTopTags.js +10 -0
  220. package/dist/cjs/track/getTopTags.js.map +1 -1
  221. package/dist/cjs/track/love.js +10 -0
  222. package/dist/cjs/track/love.js.map +1 -1
  223. package/dist/cjs/track/removeTag.js +11 -0
  224. package/dist/cjs/track/removeTag.js.map +1 -1
  225. package/dist/cjs/track/scrobble.js +12 -0
  226. package/dist/cjs/track/scrobble.js.map +1 -1
  227. package/dist/cjs/track/search.js +11 -0
  228. package/dist/cjs/track/search.js.map +1 -1
  229. package/dist/cjs/track/unlove.js +10 -0
  230. package/dist/cjs/track/unlove.js.map +1 -1
  231. package/dist/cjs/track/updateNowPlaying.js +11 -0
  232. package/dist/cjs/track/updateNowPlaying.js.map +1 -1
  233. package/dist/cjs/user/getPersonalTags.js +12 -0
  234. package/dist/cjs/user/getPersonalTags.js.map +1 -1
  235. package/dist/config.js.map +1 -1
  236. package/dist/createOptions.js +23 -0
  237. package/dist/createOptions.js.map +1 -1
  238. package/dist/geo/getTopArtists.js +10 -0
  239. package/dist/geo/getTopArtists.js.map +1 -1
  240. package/dist/geo/getTopTracks.js +10 -0
  241. package/dist/geo/getTopTracks.js.map +1 -1
  242. package/dist/getFriends.js +6 -3
  243. package/dist/getFriends.js.map +1 -1
  244. package/dist/getInfo.js +5 -3
  245. package/dist/getInfo.js.map +1 -1
  246. package/dist/getLovedTracks.js +7 -3
  247. package/dist/getLovedTracks.js.map +1 -1
  248. package/dist/getRecentTracks.js +7 -3
  249. package/dist/getRecentTracks.js.map +1 -1
  250. package/dist/getTopAlbums.js +7 -3
  251. package/dist/getTopAlbums.js.map +1 -1
  252. package/dist/getTopArtists.js +7 -3
  253. package/dist/getTopArtists.js.map +1 -1
  254. package/dist/getTopTracks.js +7 -3
  255. package/dist/getTopTracks.js.map +1 -1
  256. package/dist/getUserTopTags.js +6 -3
  257. package/dist/getUserTopTags.js.map +1 -1
  258. package/dist/getWeeklyAlbumChart.js +7 -3
  259. package/dist/getWeeklyAlbumChart.js.map +1 -1
  260. package/dist/getWeeklyArtistChart.js +7 -3
  261. package/dist/getWeeklyArtistChart.js.map +1 -1
  262. package/dist/getWeeklyChartList.js +8 -3
  263. package/dist/getWeeklyChartList.js.map +1 -1
  264. package/dist/getWeeklyTrackChart.js +7 -3
  265. package/dist/getWeeklyTrackChart.js.map +1 -1
  266. package/dist/index.js +21 -0
  267. package/dist/index.js.map +1 -1
  268. package/dist/library/getArtists.js +10 -0
  269. package/dist/library/getArtists.js.map +1 -1
  270. package/dist/md5.js +77 -0
  271. package/dist/md5.js.map +1 -0
  272. package/dist/method.js +11 -0
  273. package/dist/method.js.map +1 -1
  274. package/dist/request.js +32 -2
  275. package/dist/request.js.map +1 -1
  276. package/dist/tag/getInfo.js +9 -0
  277. package/dist/tag/getInfo.js.map +1 -1
  278. package/dist/tag/getSimilar.js +8 -0
  279. package/dist/tag/getSimilar.js.map +1 -1
  280. package/dist/tag/getTopAlbums.js +10 -0
  281. package/dist/tag/getTopAlbums.js.map +1 -1
  282. package/dist/tag/getTopArtists.js +10 -0
  283. package/dist/tag/getTopArtists.js.map +1 -1
  284. package/dist/tag/getTopTags.js +7 -0
  285. package/dist/tag/getTopTags.js.map +1 -1
  286. package/dist/tag/getWeeklyChartList.js +9 -0
  287. package/dist/tag/getWeeklyChartList.js.map +1 -1
  288. package/dist/tag/topTracks.js +6 -3
  289. package/dist/tag/topTracks.js.map +1 -1
  290. package/dist/track/addTags.js +11 -0
  291. package/dist/track/addTags.js.map +1 -1
  292. package/dist/track/getCorrection.js +10 -0
  293. package/dist/track/getCorrection.js.map +1 -1
  294. package/dist/track/getInfo.js +11 -0
  295. package/dist/track/getInfo.js.map +1 -1
  296. package/dist/track/getSimilar.js +11 -0
  297. package/dist/track/getSimilar.js.map +1 -1
  298. package/dist/track/getTags.js +11 -0
  299. package/dist/track/getTags.js.map +1 -1
  300. package/dist/track/getTopTags.js +10 -0
  301. package/dist/track/getTopTags.js.map +1 -1
  302. package/dist/track/love.js +10 -0
  303. package/dist/track/love.js.map +1 -1
  304. package/dist/track/removeTag.js +11 -0
  305. package/dist/track/removeTag.js.map +1 -1
  306. package/dist/track/scrobble.js +12 -0
  307. package/dist/track/scrobble.js.map +1 -1
  308. package/dist/track/search.js +11 -0
  309. package/dist/track/search.js.map +1 -1
  310. package/dist/track/unlove.js +10 -0
  311. package/dist/track/unlove.js.map +1 -1
  312. package/dist/track/updateNowPlaying.js +11 -0
  313. package/dist/track/updateNowPlaying.js.map +1 -1
  314. package/dist/user/getPersonalTags.js +12 -0
  315. package/dist/user/getPersonalTags.js.map +1 -1
  316. package/package.json +13 -10
@@ -1 +1 @@
1
- {"version":3,"file":"method.js","sourceRoot":"","sources":["../../src/method.ts"],"names":[],"mappings":";;;AAgGa,QAAA,MAAM,GAAG;IACpB,KAAK,EAAE;QACL,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,kBAAkB;QAC9B,SAAS,EAAE,iBAAiB;QAC5B,MAAM,EAAE,cAAc;KACvB;IACD,MAAM,EAAE;QACN,OAAO,EAAE,gBAAgB;QACzB,aAAa,EAAE,sBAAsB;QACrC,OAAO,EAAE,gBAAgB;QACzB,UAAU,EAAE,mBAAmB;QAC/B,OAAO,EAAE,gBAAgB;QACzB,YAAY,EAAE,qBAAqB;QACnC,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,qBAAqB;QACnC,SAAS,EAAE,kBAAkB;QAC7B,MAAM,EAAE,eAAe;KACxB;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,uBAAuB;QACzC,UAAU,EAAE,iBAAiB;QAC7B,QAAQ,EAAE,eAAe;KAC1B;IACD,KAAK,EAAE;QACL,YAAY,EAAE,oBAAoB;QAClC,UAAU,EAAE,kBAAkB;QAC9B,aAAa,EAAE,qBAAqB;KACrC;IACD,GAAG,EAAE;QACH,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,kBAAkB;KACjC;IACD,OAAO,EAAE;QACP,UAAU,EAAE,oBAAoB;KACjC;IACD,GAAG,EAAE;QACH,OAAO,EAAE,aAAa;QACtB,UAAU,EAAE,gBAAgB;QAC5B,YAAY,EAAE,kBAAkB;QAChC,aAAa,EAAE,mBAAmB;QAClC,UAAU,EAAE,gBAAgB;QAC5B,YAAY,EAAE,kBAAkB;QAChC,kBAAkB,EAAE,wBAAwB;KAC7C;IACD,KAAK,EAAE;QACL,OAAO,EAAE,eAAe;QACxB,aAAa,EAAE,qBAAqB;QACpC,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,kBAAkB;QAC9B,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,kBAAkB;QAC9B,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,iBAAiB;QAC5B,QAAQ,EAAE,gBAAgB;QAC1B,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,cAAc;QACtB,gBAAgB,EAAE,wBAAwB;KAC3C;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,iBAAiB;QAC7B,OAAO,EAAE,cAAc;QACvB,cAAc,EAAE,qBAAqB;QACrC,eAAe,EAAE,sBAAsB;QACvC,eAAe,EAAE,sBAAsB;QACvC,YAAY,EAAE,mBAAmB;QACjC,aAAa,EAAE,oBAAoB;QACnC,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,mBAAmB;QACjC,mBAAmB,EAAE,0BAA0B;QAC/C,oBAAoB,EAAE,2BAA2B;QACjD,kBAAkB,EAAE,yBAAyB;QAC7C,mBAAmB,EAAE,0BAA0B;KAChD;CACe,CAAC"}
1
+ {"version":3,"file":"method.js","sourceRoot":"","sources":["../../src/method.ts"],"names":[],"mappings":";;;AA6GA;;;;;;;;;;GAUG;AACU,QAAA,MAAM,GAAW;IAC5B,KAAK,EAAE;QACL,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,kBAAkB;QAC9B,SAAS,EAAE,iBAAiB;QAC5B,MAAM,EAAE,cAAc;KACvB;IACD,MAAM,EAAE;QACN,OAAO,EAAE,gBAAgB;QACzB,aAAa,EAAE,sBAAsB;QACrC,OAAO,EAAE,gBAAgB;QACzB,UAAU,EAAE,mBAAmB;QAC/B,OAAO,EAAE,gBAAgB;QACzB,YAAY,EAAE,qBAAqB;QACnC,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,qBAAqB;QACnC,SAAS,EAAE,kBAAkB;QAC7B,MAAM,EAAE,eAAe;KACxB;IACD,IAAI,EAAE;QACJ,gBAAgB,EAAE,uBAAuB;QACzC,UAAU,EAAE,iBAAiB;QAC7B,QAAQ,EAAE,eAAe;KAC1B;IACD,KAAK,EAAE;QACL,YAAY,EAAE,oBAAoB;QAClC,UAAU,EAAE,kBAAkB;QAC9B,aAAa,EAAE,qBAAqB;KACrC;IACD,GAAG,EAAE;QACH,aAAa,EAAE,mBAAmB;QAClC,YAAY,EAAE,kBAAkB;KACjC;IACD,OAAO,EAAE;QACP,UAAU,EAAE,oBAAoB;KACjC;IACD,GAAG,EAAE;QACH,OAAO,EAAE,aAAa;QACtB,UAAU,EAAE,gBAAgB;QAC5B,YAAY,EAAE,kBAAkB;QAChC,aAAa,EAAE,mBAAmB;QAClC,UAAU,EAAE,gBAAgB;QAC5B,YAAY,EAAE,kBAAkB;QAChC,kBAAkB,EAAE,wBAAwB;KAC7C;IACD,KAAK,EAAE;QACL,OAAO,EAAE,eAAe;QACxB,aAAa,EAAE,qBAAqB;QACpC,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,kBAAkB;QAC9B,OAAO,EAAE,eAAe;QACxB,UAAU,EAAE,kBAAkB;QAC9B,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,iBAAiB;QAC5B,QAAQ,EAAE,gBAAgB;QAC1B,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,cAAc;QACtB,gBAAgB,EAAE,wBAAwB;KAC3C;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,iBAAiB;QAC7B,OAAO,EAAE,cAAc;QACvB,cAAc,EAAE,qBAAqB;QACrC,eAAe,EAAE,sBAAsB;QACvC,eAAe,EAAE,sBAAsB;QACvC,YAAY,EAAE,mBAAmB;QACjC,aAAa,EAAE,oBAAoB;QACnC,UAAU,EAAE,iBAAiB;QAC7B,YAAY,EAAE,mBAAmB;QACjC,mBAAmB,EAAE,0BAA0B;QAC/C,oBAAoB,EAAE,2BAA2B;QACjD,kBAAkB,EAAE,yBAAyB;QAC7C,mBAAmB,EAAE,0BAA0B;KAChD;CACF,CAAC"}
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.signedRequest = void 0;
4
- const node_crypto_1 = require("node:crypto");
5
4
  const config_js_1 = require("./config.js");
5
+ const md5_js_1 = require("./md5.js");
6
+ /**
7
+ * Last.fm API error codes.
8
+ * @see https://www.last.fm/api/errorcodes
9
+ */
6
10
  var ErrorResponse;
7
11
  (function (ErrorResponse) {
8
12
  ErrorResponse[ErrorResponse["InvalidService"] = 2] = "InvalidService";
@@ -20,6 +24,13 @@ var ErrorResponse;
20
24
  ErrorResponse[ErrorResponse["SuspendedAPIKey"] = 26] = "SuspendedAPIKey";
21
25
  ErrorResponse[ErrorResponse["RateLimitExceeded"] = 29] = "RateLimitExceeded";
22
26
  })(ErrorResponse || (ErrorResponse = {}));
27
+ /**
28
+ * Assembles the full Last.fm API request URL from the given options,
29
+ * appending the API key and JSON format automatically.
30
+ *
31
+ * @param options - Request options containing the method and any query parameters
32
+ * @returns The fully-formed URL string
33
+ */
23
34
  const buildUrl = (options) => {
24
35
  const params = new URLSearchParams();
25
36
  params.append('method', options.method);
@@ -81,6 +92,14 @@ const ErrorMessages = {
81
92
  [ErrorResponse.SuspendedAPIKey]: 'Suspended API key',
82
93
  [ErrorResponse.RateLimitExceeded]: 'Rate limit exceeded',
83
94
  };
95
+ /**
96
+ * Performs a GET request to the Last.fm API.
97
+ *
98
+ * Throws an `Error` on HTTP failure or if the Last.fm response body contains an error code.
99
+ *
100
+ * @param options - Request options specifying the method and query parameters
101
+ * @returns The parsed JSON response typed as `Response`
102
+ */
84
103
  const request = async (options) => {
85
104
  const url = buildUrl(options);
86
105
  const res = await fetch(url, {
@@ -98,6 +117,17 @@ const request = async (options) => {
98
117
  }
99
118
  return body;
100
119
  };
120
+ /**
121
+ * Performs an MD5-signed POST request to the Last.fm API.
122
+ *
123
+ * Used for write operations (scrobble, love, addTags, auth sessions).
124
+ * Generates an `api_sig` by sorting all parameters alphabetically, concatenating
125
+ * `key+value` pairs, appending the shared secret, and MD5-hashing the result.
126
+ *
127
+ * @param options - Request options specifying the method and POST body parameters
128
+ * @param secret - The Last.fm shared secret used to generate the API signature
129
+ * @returns The parsed JSON response typed as `Response`
130
+ */
101
131
  const signedRequest = async (options, secret) => {
102
132
  const params = new URLSearchParams();
103
133
  // Collect all params (excluding format/callback)
@@ -145,7 +175,7 @@ const signedRequest = async (options, secret) => {
145
175
  // Generate signature: sort keys alphabetically, concatenate key+value, append secret, MD5
146
176
  const sortedKeys = Object.keys(sigParams).sort();
147
177
  const sigString = sortedKeys.map(k => `${k}${sigParams[k]}`).join('') + secret;
148
- const apiSig = (0, node_crypto_1.createHash)('md5').update(sigString).digest('hex');
178
+ const apiSig = (0, md5_js_1.md5)(sigString);
149
179
  // Build POST body
150
180
  for (const [k, v] of Object.entries(sigParams)) {
151
181
  params.append(k, v);
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/request.ts"],"names":[],"mappings":";;;AAAA,2CAAqC;AACrC,qCAA+B;AA6B/B;;;GAGG;AACH,IAAK,aAeJ;AAfD,WAAK,aAAa;IAChB,qEAAkB,CAAA;IAClB,mEAAiB,CAAA;IACjB,iFAAwB,CAAA;IACxB,mEAAiB,CAAA;IACjB,2EAAqB,CAAA;IACrB,uEAAmB,CAAA;IACnB,uEAAmB,CAAA;IACnB,2EAAqB,CAAA;IACrB,oEAAkB,CAAA;IAClB,sEAAmB,CAAA;IACnB,sFAA2B,CAAA;IAC3B,sEAAmB,CAAA;IACnB,wEAAoB,CAAA;IACpB,4EAAsB,CAAA;AACxB,CAAC,EAfI,aAAa,KAAb,aAAa,QAejB;AAED;;;;;;GAMG;AACH,MAAM,QAAQ,GAAG,CAAC,OAAuB,EAAU,EAAE;IACnD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IAErC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAExC,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,GAAG;QAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACnD,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,IAAI,OAAO,CAAC,WAAW;QAAE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAChD,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,SAAS;QAAE,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACrE,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClE,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAElE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,kBAAM,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE5C,OAAO,GAAG,kBAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,aAAa,GAA2B;IAC5C,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,iBAAiB;IACjD,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,gBAAgB;IAC/C,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAAE,uBAAuB;IAC7D,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,gBAAgB;IAC/C,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,oBAAoB;IACvD,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,kBAAkB;IACnD,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,kBAAkB;IACnD,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,qBAAqB;IACxD,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,iBAAiB;IAChD,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,iBAAiB;IACjD,CAAC,aAAa,CAAC,sBAAsB,CAAC,EAAE,0BAA0B;IAClE,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,iBAAiB;IACjD,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,mBAAmB;IACpD,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,qBAAqB;CACzD,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,OAAO,GAAG,KAAK,EAAY,OAAuB,EAAqB,EAAE;IAC7E,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAE9B,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAA0C,CAAC;IAEtE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,IAAgB,CAAC;AAC1B,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACI,MAAM,aAAa,GAAG,KAAK,EAAY,OAAuB,EAAE,MAAc,EAAqB,EAAE;IAC1G,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IAErC,iDAAiD;IACjD,MAAM,SAAS,GAA2B,EAAE,CAAC;IAE7C,SAAS,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IACrC,SAAS,CAAC,SAAS,CAAC,GAAG,kBAAM,CAAC,OAAO,CAAC;IAEtC,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACnD,IAAI,OAAO,CAAC,GAAG;QAAE,SAAS,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAChD,IAAI,OAAO,CAAC,MAAM;QAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IACzD,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACnD,IAAI,OAAO,CAAC,KAAK;QAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IACtD,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACnD,IAAI,OAAO,CAAC,MAAM;QAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IACzD,IAAI,OAAO,CAAC,KAAK;QAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IACtD,IAAI,OAAO,CAAC,KAAK;QAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IACtD,IAAI,OAAO,CAAC,OAAO;QAAE,SAAS,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5D,IAAI,OAAO,CAAC,WAAW;QAAE,SAAS,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IACxE,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACnD,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACnD,IAAI,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC;IAC7C,IAAI,OAAO,CAAC,KAAK;QAAE,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IACtD,IAAI,OAAO,CAAC,IAAI;QAAE,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACnD,IAAI,OAAO,CAAC,SAAS;QAAE,SAAS,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAClE,IAAI,OAAO,CAAC,QAAQ;QAAE,SAAS,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC/D,IAAI,OAAO,CAAC,QAAQ;QAAE,SAAS,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;IAE/D,0FAA0F;IAC1F,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;IAC/E,MAAM,MAAM,GAAG,IAAA,YAAG,EAAC,SAAS,CAAC,CAAC;IAE9B,kBAAkB;IAClB,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtB,CAAC;IACD,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE5C,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,kBAAM,CAAC,QAAQ,EAAE;QACvC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,mCAAmC;SACpD;QACD,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAA0C,CAAC;IAEtE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,IAAgB,CAAC;AAC1B,CAAC,CAAC;AA7DW,QAAA,aAAa,iBA6DxB;AAEF,kBAAe,OAAO,CAAC"}
@@ -5,6 +5,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.tagGetInfo = tagGetInfo;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get the metadata for a tag on Last.fm. Includes a short wiki summary.
10
+ *
11
+ * @see https://www.last.fm/api/show/tag.getInfo
12
+ * @param method - The Last.fm API method string (`method.tag.getInfo`)
13
+ * @param tag - The tag name
14
+ * @param lang - ISO 639 alpha-2 language code for the wiki text (default `'en'`)
15
+ * @returns Tag metadata including wiki text and reach
16
+ */
8
17
  async function tagGetInfo(method, tag, lang = 'en') {
9
18
  return await (0, request_js_1.default)({ method, tag, lang });
10
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getInfo.js","sourceRoot":"","sources":["../../../src/tag/getInfo.ts"],"names":[],"mappings":";;;;;AAEA,gCAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,GAAW,EAAE,IAAI,GAAG,IAAI;IACvE,OAAO,MAAM,IAAA,oBAAO,EAAkB,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/D,CAAC"}
1
+ {"version":3,"file":"getInfo.js","sourceRoot":"","sources":["../../../src/tag/getInfo.ts"],"names":[],"mappings":";;;;;AAYA,gCAEC;AAbD,+DAAoC;AAEpC;;;;;;;;GAQG;AACI,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,GAAW,EAAE,IAAI,GAAG,IAAI;IACvE,OAAO,MAAM,IAAA,oBAAO,EAAkB,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/D,CAAC"}
@@ -5,6 +5,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.tagGetSimilar = tagGetSimilar;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Search for tags similar to this one on Last.fm. Returns tags ranked by similarity.
10
+ *
11
+ * @see https://www.last.fm/api/show/tag.getSimilar
12
+ * @param method - The Last.fm API method string (`method.tag.getSimilar`)
13
+ * @param tag - The tag name to find similar tags for
14
+ * @returns A list of similar tags
15
+ */
8
16
  async function tagGetSimilar(method, tag) {
9
17
  return await (0, request_js_1.default)({ method, tag });
10
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getSimilar.js","sourceRoot":"","sources":["../../../src/tag/getSimilar.ts"],"names":[],"mappings":";;;;;AAEA,sCAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,GAAW;IAC7D,OAAO,MAAM,IAAA,oBAAO,EAAqB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"getSimilar.js","sourceRoot":"","sources":["../../../src/tag/getSimilar.ts"],"names":[],"mappings":";;;;;AAWA,sCAEC;AAZD,+DAAoC;AAEpC;;;;;;;GAOG;AACI,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,GAAW;IAC7D,OAAO,MAAM,IAAA,oBAAO,EAAqB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;AAC5D,CAAC"}
@@ -5,6 +5,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.tagGetTopAlbums = tagGetTopAlbums;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get the top albums tagged with a given tag on Last.fm, ordered by tag count.
10
+ *
11
+ * @see https://www.last.fm/api/show/tag.getTopAlbums
12
+ * @param method - The Last.fm API method string (`method.tag.getTopAlbums`)
13
+ * @param tag - The tag name
14
+ * @param limit - Number of results per page (default `'50'`)
15
+ * @param page - Page number to fetch (default `'1'`)
16
+ * @returns Paginated list of top albums for the given tag
17
+ */
8
18
  async function tagGetTopAlbums(method, tag, limit = '50', page = '1') {
9
19
  return await (0, request_js_1.default)({ method, tag, limit, page });
10
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getTopAlbums.js","sourceRoot":"","sources":["../../../src/tag/getTopAlbums.ts"],"names":[],"mappings":";;;;;AAEA,0CAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,GAAW,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IACzF,OAAO,MAAM,IAAA,oBAAO,EAAuB,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"file":"getTopAlbums.js","sourceRoot":"","sources":["../../../src/tag/getTopAlbums.ts"],"names":[],"mappings":";;;;;AAaA,0CAEC;AAdD,+DAAoC;AAEpC;;;;;;;;;GASG;AACI,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,GAAW,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IACzF,OAAO,MAAM,IAAA,oBAAO,EAAuB,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC3E,CAAC"}
@@ -5,6 +5,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.tagGetTopArtists = tagGetTopArtists;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get the top artists tagged with a given tag on Last.fm, ordered by tag count.
10
+ *
11
+ * @see https://www.last.fm/api/show/tag.getTopArtists
12
+ * @param method - The Last.fm API method string (`method.tag.getTopArtists`)
13
+ * @param tag - The tag name
14
+ * @param limit - Number of results per page (default `'50'`)
15
+ * @param page - Page number to fetch (default `'1'`)
16
+ * @returns Paginated list of top artists for the given tag
17
+ */
8
18
  async function tagGetTopArtists(method, tag, limit = '50', page = '1') {
9
19
  return await (0, request_js_1.default)({ method, tag, limit, page });
10
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getTopArtists.js","sourceRoot":"","sources":["../../../src/tag/getTopArtists.ts"],"names":[],"mappings":";;;;;AAEA,4CAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,gBAAgB,CAAC,MAAc,EAAE,GAAW,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IAC1F,OAAO,MAAM,IAAA,oBAAO,EAAwB,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC5E,CAAC"}
1
+ {"version":3,"file":"getTopArtists.js","sourceRoot":"","sources":["../../../src/tag/getTopArtists.ts"],"names":[],"mappings":";;;;;AAaA,4CAEC;AAdD,+DAAoC;AAEpC;;;;;;;;;GASG;AACI,KAAK,UAAU,gBAAgB,CAAC,MAAc,EAAE,GAAW,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IAC1F,OAAO,MAAM,IAAA,oBAAO,EAAwB,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC5E,CAAC"}
@@ -5,6 +5,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.tagGetTopTags = tagGetTopTags;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Fetches the top global tags on Last.fm, sorted by popularity (number of times used).
10
+ *
11
+ * @see https://www.last.fm/api/show/tag.getTopTags
12
+ * @param method - The Last.fm API method string (`method.tag.getTopTags`)
13
+ * @returns The top tags on Last.fm ordered by usage count
14
+ */
8
15
  async function tagGetTopTags(method) {
9
16
  return await (0, request_js_1.default)({ method });
10
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getTopTags.js","sourceRoot":"","sources":["../../../src/tag/getTopTags.ts"],"names":[],"mappings":";;;;;AAEA,sCAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,aAAa,CAAC,MAAc;IAChD,OAAO,MAAM,IAAA,oBAAO,EAAqB,EAAE,MAAM,EAAE,CAAC,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"getTopTags.js","sourceRoot":"","sources":["../../../src/tag/getTopTags.ts"],"names":[],"mappings":";;;;;AAUA,sCAEC;AAXD,+DAAoC;AAEpC;;;;;;GAMG;AACI,KAAK,UAAU,aAAa,CAAC,MAAc;IAChD,OAAO,MAAM,IAAA,oBAAO,EAAqB,EAAE,MAAM,EAAE,CAAC,CAAC;AACvD,CAAC"}
@@ -5,6 +5,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.tagGetWeeklyChartList = tagGetWeeklyChartList;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get a list of available charts for this tag, expressed as date ranges which can be
10
+ * sent to the chart services.
11
+ *
12
+ * @see https://www.last.fm/api/show/tag.getWeeklyChartList
13
+ * @param method - The Last.fm API method string (`method.tag.getWeeklyChartList`)
14
+ * @param tag - The tag name
15
+ * @returns A list of date ranges representing available weekly charts for this tag
16
+ */
8
17
  async function tagGetWeeklyChartList(method, tag) {
9
18
  return await (0, request_js_1.default)({ method, tag });
10
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getWeeklyChartList.js","sourceRoot":"","sources":["../../../src/tag/getWeeklyChartList.ts"],"names":[],"mappings":";;;;;AAEA,sDAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,qBAAqB,CAAC,MAAc,EAAE,GAAW;IACrE,OAAO,MAAM,IAAA,oBAAO,EAA6B,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;AACpE,CAAC"}
1
+ {"version":3,"file":"getWeeklyChartList.js","sourceRoot":"","sources":["../../../src/tag/getWeeklyChartList.ts"],"names":[],"mappings":";;;;;AAYA,sDAEC;AAbD,+DAAoC;AAEpC;;;;;;;;GAQG;AACI,KAAK,UAAU,qBAAqB,CAAC,MAAc,EAAE,GAAW;IACrE,OAAO,MAAM,IAAA,oBAAO,EAA6B,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;AACpE,CAAC"}
@@ -6,10 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.tagTopTracks = tagTopTracks;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
8
  /**
9
- * GET: Tag Top Tracks - LastFM
9
+ * Get the top tracks tagged with a given tag on Last.fm, ordered by tag count.
10
10
  *
11
- * https://www.last.fm/api/show/tag.getTopTracks
12
- * @returns Top Tracks for a tag
11
+ * @see https://www.last.fm/api/show/tag.getTopTracks
12
+ * @param method - The Last.fm API method string (`method.tag.getTopTracks`)
13
+ * @param tag - The tag name
14
+ * @param limit - Number of results to return
15
+ * @returns Top tracks for the given tag ordered by tag count
13
16
  */
14
17
  async function tagTopTracks(method, tag, limit) {
15
18
  return await (0, request_js_1.default)({ method, tag, limit });
@@ -1 +1 @@
1
- {"version":3,"file":"topTracks.js","sourceRoot":"","sources":["../../../src/tag/topTracks.ts"],"names":[],"mappings":";;;;;AASA,oCAMC;AAdD,+DAAoC;AAEpC;;;;;GAKG;AACI,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,GAAW,EACX,KAAa;IAEb,OAAO,MAAM,IAAA,oBAAO,EAAuB,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"topTracks.js","sourceRoot":"","sources":["../../../src/tag/topTracks.ts"],"names":[],"mappings":";;;;;AAYA,oCAMC;AAjBD,+DAAoC;AAEpC;;;;;;;;GAQG;AACI,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,GAAW,EACX,KAAa;IAEb,OAAO,MAAM,IAAA,oBAAO,EAAuB,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;AACrE,CAAC"}
@@ -3,6 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.trackAddTags = trackAddTags;
4
4
  const request_js_1 = require("../request.js");
5
5
  const config_js_1 = require("../config.js");
6
+ /**
7
+ * Tag a track using a list of user-supplied tags. Requires authentication.
8
+ *
9
+ * @see https://www.last.fm/api/show/track.addTags
10
+ * @param method - The Last.fm API method string (`method.track.addTags`)
11
+ * @param artist - The artist name
12
+ * @param track - The track name
13
+ * @param tags - A comma-separated list of tags to apply (max 10)
14
+ * @param sk - A session key obtained via the auth flow
15
+ * @returns Authentication response confirming the operation
16
+ */
6
17
  async function trackAddTags(method, artist, track, tags, sk) {
7
18
  return await (0, request_js_1.signedRequest)({ method, artist, track, tags, sk }, config_js_1.config.share_secret);
8
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"addTags.js","sourceRoot":"","sources":["../../../src/track/addTags.ts"],"names":[],"mappings":";;AAGA,oCAEC;AAJD,8CAA8C;AAC9C,4CAAsC;AAC/B,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,IAAY,EAAE,EAAU;IACxG,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AACrG,CAAC"}
1
+ {"version":3,"file":"addTags.js","sourceRoot":"","sources":["../../../src/track/addTags.ts"],"names":[],"mappings":";;AAeA,oCAEC;AAhBD,8CAA8C;AAC9C,4CAAsC;AAEtC;;;;;;;;;;GAUG;AACI,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,IAAY,EAAE,EAAU;IACxG,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AACrG,CAAC"}
@@ -5,6 +5,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.trackGetCorrection = trackGetCorrection;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Use the Last.fm corrections data to check whether the supplied track has a correction
10
+ * to a canonical track and artist name.
11
+ *
12
+ * @see https://www.last.fm/api/show/track.getCorrection
13
+ * @param method - The Last.fm API method string (`method.track.getCorrection`)
14
+ * @param artist - The artist name
15
+ * @param track - The track name to check for a correction
16
+ * @returns The corrected canonical track and artist name if one exists
17
+ */
8
18
  async function trackGetCorrection(method, artist, track) {
9
19
  return await (0, request_js_1.default)({ method, artist, track });
10
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getCorrection.js","sourceRoot":"","sources":["../../../src/track/getCorrection.ts"],"names":[],"mappings":";;;;;AAEA,gDAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,kBAAkB,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa;IACpF,OAAO,MAAM,IAAA,oBAAO,EAA0B,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"file":"getCorrection.js","sourceRoot":"","sources":["../../../src/track/getCorrection.ts"],"names":[],"mappings":";;;;;AAaA,gDAEC;AAdD,+DAAoC;AAEpC;;;;;;;;;GASG;AACI,KAAK,UAAU,kBAAkB,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa;IACpF,OAAO,MAAM,IAAA,oBAAO,EAA0B,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC3E,CAAC"}
@@ -5,6 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.trackGetInfo = trackGetInfo;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get the metadata for a track on Last.fm. Includes wiki text, tags, and similar tracks.
10
+ *
11
+ * @see https://www.last.fm/api/show/track.getInfo
12
+ * @param method - The Last.fm API method string (`method.track.getInfo`)
13
+ * @param artist - The artist name
14
+ * @param track - The track name
15
+ * @param autocorrect - Set to `'1'` to auto-correct misspelled names (default `'1'`)
16
+ * @param lang - ISO 639 alpha-2 language code for the wiki text (default `'en'`)
17
+ * @returns Track metadata including duration, play count, wiki, and top tags
18
+ */
8
19
  async function trackGetInfo(method, artist, track, autocorrect = '1', lang = 'en') {
9
20
  return await (0, request_js_1.default)({ method, artist, track, autocorrect, lang });
10
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getInfo.js","sourceRoot":"","sources":["../../../src/track/getInfo.ts"],"names":[],"mappings":";;;;;AAEA,oCAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,GAAG,IAAI;IAC9G,OAAO,MAAM,IAAA,oBAAO,EAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AACxF,CAAC"}
1
+ {"version":3,"file":"getInfo.js","sourceRoot":"","sources":["../../../src/track/getInfo.ts"],"names":[],"mappings":";;;;;AAcA,oCAEC;AAfD,+DAAoC;AAEpC;;;;;;;;;;GAUG;AACI,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,GAAG,IAAI;IAC9G,OAAO,MAAM,IAAA,oBAAO,EAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AACxF,CAAC"}
@@ -5,6 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.trackGetSimilar = trackGetSimilar;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get the similar tracks for this track on Last.fm, based on listening data.
10
+ *
11
+ * @see https://www.last.fm/api/show/track.getSimilar
12
+ * @param method - The Last.fm API method string (`method.track.getSimilar`)
13
+ * @param artist - The artist name
14
+ * @param track - The track name
15
+ * @param limit - Maximum number of similar tracks to return (default `'30'`)
16
+ * @param autocorrect - Set to `'1'` to auto-correct misspelled names (default `'1'`)
17
+ * @returns A list of similar tracks with match scores
18
+ */
8
19
  async function trackGetSimilar(method, artist, track, limit = '30', autocorrect = '1') {
9
20
  return await (0, request_js_1.default)({ method, artist, track, limit, autocorrect });
10
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getSimilar.js","sourceRoot":"","sources":["../../../src/track/getSimilar.ts"],"names":[],"mappings":";;;;;AAEA,0CAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,KAAK,GAAG,IAAI,EAAE,WAAW,GAAG,GAAG;IAClH,OAAO,MAAM,IAAA,oBAAO,EAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;AAC5F,CAAC"}
1
+ {"version":3,"file":"getSimilar.js","sourceRoot":"","sources":["../../../src/track/getSimilar.ts"],"names":[],"mappings":";;;;;AAcA,0CAEC;AAfD,+DAAoC;AAEpC;;;;;;;;;;GAUG;AACI,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,KAAK,GAAG,IAAI,EAAE,WAAW,GAAG,GAAG;IAClH,OAAO,MAAM,IAAA,oBAAO,EAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;AAC5F,CAAC"}
@@ -5,6 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.trackGetTags = trackGetTags;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get the tags applied by an individual user to a track on Last.fm.
10
+ *
11
+ * @see https://www.last.fm/api/show/track.getTags
12
+ * @param method - The Last.fm API method string (`method.track.getTags`)
13
+ * @param artist - The artist name
14
+ * @param track - The track name
15
+ * @param user - The Last.fm username whose tags to retrieve
16
+ * @param autocorrect - Set to `'1'` to auto-correct misspelled names (default `'1'`)
17
+ * @returns Tags applied by the user to this track
18
+ */
8
19
  async function trackGetTags(method, artist, track, user, autocorrect = '1') {
9
20
  return await (0, request_js_1.default)({ method, artist, track, user, autocorrect });
10
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getTags.js","sourceRoot":"","sources":["../../../src/track/getTags.ts"],"names":[],"mappings":";;;;;AAEA,oCAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,IAAY,EAAE,WAAW,GAAG,GAAG;IAC/G,OAAO,MAAM,IAAA,oBAAO,EAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;AACxF,CAAC"}
1
+ {"version":3,"file":"getTags.js","sourceRoot":"","sources":["../../../src/track/getTags.ts"],"names":[],"mappings":";;;;;AAcA,oCAEC;AAfD,+DAAoC;AAEpC;;;;;;;;;;GAUG;AACI,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,IAAY,EAAE,WAAW,GAAG,GAAG;IAC/G,OAAO,MAAM,IAAA,oBAAO,EAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;AACxF,CAAC"}
@@ -5,6 +5,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.trackGetTopTags = trackGetTopTags;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get the top tags for a track on Last.fm, ordered by popularity.
10
+ *
11
+ * @see https://www.last.fm/api/show/track.getTopTags
12
+ * @param method - The Last.fm API method string (`method.track.getTopTags`)
13
+ * @param artist - The artist name
14
+ * @param track - The track name
15
+ * @param autocorrect - Set to `'1'` to auto-correct misspelled names (default `'1'`)
16
+ * @returns Top tags for the track ordered by tag count
17
+ */
8
18
  async function trackGetTopTags(method, artist, track, autocorrect = '1') {
9
19
  return await (0, request_js_1.default)({ method, artist, track, autocorrect });
10
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getTopTags.js","sourceRoot":"","sources":["../../../src/track/getTopTags.ts"],"names":[],"mappings":";;;;;AAEA,0CAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,WAAW,GAAG,GAAG;IACpG,OAAO,MAAM,IAAA,oBAAO,EAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;AACrF,CAAC"}
1
+ {"version":3,"file":"getTopTags.js","sourceRoot":"","sources":["../../../src/track/getTopTags.ts"],"names":[],"mappings":";;;;;AAaA,0CAEC;AAdD,+DAAoC;AAEpC;;;;;;;;;GASG;AACI,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,WAAW,GAAG,GAAG;IACpG,OAAO,MAAM,IAAA,oBAAO,EAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;AACrF,CAAC"}
@@ -3,6 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.trackLove = trackLove;
4
4
  const request_js_1 = require("../request.js");
5
5
  const config_js_1 = require("../config.js");
6
+ /**
7
+ * Love a track for the authenticated user. Requires authentication.
8
+ *
9
+ * @see https://www.last.fm/api/show/track.love
10
+ * @param method - The Last.fm API method string (`method.track.love`)
11
+ * @param artist - The artist name
12
+ * @param track - The track name
13
+ * @param sk - A session key obtained via the auth flow
14
+ * @returns Authentication response confirming the operation
15
+ */
6
16
  async function trackLove(method, artist, track, sk) {
7
17
  return await (0, request_js_1.signedRequest)({ method, artist, track, sk }, config_js_1.config.share_secret);
8
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"love.js","sourceRoot":"","sources":["../../../src/track/love.ts"],"names":[],"mappings":";;AAGA,8BAEC;AAJD,8CAA8C;AAC9C,4CAAsC;AAC/B,KAAK,UAAU,SAAS,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,EAAU;IACvF,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AAC/F,CAAC"}
1
+ {"version":3,"file":"love.js","sourceRoot":"","sources":["../../../src/track/love.ts"],"names":[],"mappings":";;AAcA,8BAEC;AAfD,8CAA8C;AAC9C,4CAAsC;AAEtC;;;;;;;;;GASG;AACI,KAAK,UAAU,SAAS,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,EAAU;IACvF,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AAC/F,CAAC"}
@@ -3,6 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.trackRemoveTag = trackRemoveTag;
4
4
  const request_js_1 = require("../request.js");
5
5
  const config_js_1 = require("../config.js");
6
+ /**
7
+ * Remove a user-applied tag from a track. Requires authentication.
8
+ *
9
+ * @see https://www.last.fm/api/show/track.removeTag
10
+ * @param method - The Last.fm API method string (`method.track.removeTag`)
11
+ * @param artist - The artist name
12
+ * @param track - The track name
13
+ * @param tag - A single tag to remove from the track
14
+ * @param sk - A session key obtained via the auth flow
15
+ * @returns Authentication response confirming the operation
16
+ */
6
17
  async function trackRemoveTag(method, artist, track, tag, sk) {
7
18
  return await (0, request_js_1.signedRequest)({ method, artist, track, tag, sk }, config_js_1.config.share_secret);
8
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"removeTag.js","sourceRoot":"","sources":["../../../src/track/removeTag.ts"],"names":[],"mappings":";;AAGA,wCAEC;AAJD,8CAA8C;AAC9C,4CAAsC;AAC/B,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,GAAW,EAAE,EAAU;IACzG,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AACpG,CAAC"}
1
+ {"version":3,"file":"removeTag.js","sourceRoot":"","sources":["../../../src/track/removeTag.ts"],"names":[],"mappings":";;AAeA,wCAEC;AAhBD,8CAA8C;AAC9C,4CAAsC;AAEtC;;;;;;;;;;GAUG;AACI,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,GAAW,EAAE,EAAU;IACzG,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AACpG,CAAC"}
@@ -3,6 +3,18 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.trackScrobble = trackScrobble;
4
4
  const request_js_1 = require("../request.js");
5
5
  const config_js_1 = require("../config.js");
6
+ /**
7
+ * Add a track-play to a user's scrobble history. Requires authentication.
8
+ *
9
+ * @see https://www.last.fm/api/show/track.scrobble
10
+ * @param method - The Last.fm API method string (`method.track.scrobble`)
11
+ * @param artist - The artist name
12
+ * @param track - The track name
13
+ * @param timestamp - Unix timestamp of when the track was listened to
14
+ * @param album - The album name
15
+ * @param sk - A session key obtained via the auth flow
16
+ * @returns The accepted and ignored scrobble counts
17
+ */
6
18
  async function trackScrobble(method, artist, track, timestamp, album, sk) {
7
19
  return await (0, request_js_1.signedRequest)({ method, artist, track, timestamp, album, sk }, config_js_1.config.share_secret);
8
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scrobble.js","sourceRoot":"","sources":["../../../src/track/scrobble.ts"],"names":[],"mappings":";;AAGA,sCAEC;AAJD,8CAA8C;AAC9C,4CAAsC;AAC/B,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,SAAiB,EAAE,KAAa,EAAE,EAAU;IAC7H,OAAO,MAAM,IAAA,0BAAa,EAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AACrH,CAAC"}
1
+ {"version":3,"file":"scrobble.js","sourceRoot":"","sources":["../../../src/track/scrobble.ts"],"names":[],"mappings":";;AAgBA,sCAEC;AAjBD,8CAA8C;AAC9C,4CAAsC;AAEtC;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,SAAiB,EAAE,KAAa,EAAE,EAAU;IAC7H,OAAO,MAAM,IAAA,0BAAa,EAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AACrH,CAAC"}
@@ -5,6 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.trackSearch = trackSearch;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Search for a track by track name, optionally filtered by artist. Returns paginated results.
10
+ *
11
+ * @see https://www.last.fm/api/show/track.search
12
+ * @param method - The Last.fm API method string (`method.track.search`)
13
+ * @param track - The track name to search for
14
+ * @param artist - Optionally narrow results to tracks by this artist
15
+ * @param limit - Number of results per page (default `'30'`)
16
+ * @param page - Page number to fetch (default `'1'`)
17
+ * @returns Paginated track search results
18
+ */
8
19
  async function trackSearch(method, track, artist, limit = '30', page = '1') {
9
20
  return await (0, request_js_1.default)({ method, track, artist, limit, page });
10
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/track/search.ts"],"names":[],"mappings":";;;;;AAEA,kCAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,KAAa,EAAE,MAAe,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IACxG,OAAO,MAAM,IAAA,oBAAO,EAAsB,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/track/search.ts"],"names":[],"mappings":";;;;;AAcA,kCAEC;AAfD,+DAAoC;AAEpC;;;;;;;;;;GAUG;AACI,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,KAAa,EAAE,MAAe,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IACxG,OAAO,MAAM,IAAA,oBAAO,EAAsB,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACpF,CAAC"}
@@ -3,6 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.trackUnlove = trackUnlove;
4
4
  const request_js_1 = require("../request.js");
5
5
  const config_js_1 = require("../config.js");
6
+ /**
7
+ * UnLove a track for the authenticated user. Requires authentication.
8
+ *
9
+ * @see https://www.last.fm/api/show/track.unlove
10
+ * @param method - The Last.fm API method string (`method.track.unlove`)
11
+ * @param artist - The artist name
12
+ * @param track - The track name
13
+ * @param sk - A session key obtained via the auth flow
14
+ * @returns Authentication response confirming the operation
15
+ */
6
16
  async function trackUnlove(method, artist, track, sk) {
7
17
  return await (0, request_js_1.signedRequest)({ method, artist, track, sk }, config_js_1.config.share_secret);
8
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"unlove.js","sourceRoot":"","sources":["../../../src/track/unlove.ts"],"names":[],"mappings":";;AAGA,kCAEC;AAJD,8CAA8C;AAC9C,4CAAsC;AAC/B,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,EAAU;IACzF,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AAC/F,CAAC"}
1
+ {"version":3,"file":"unlove.js","sourceRoot":"","sources":["../../../src/track/unlove.ts"],"names":[],"mappings":";;AAcA,kCAEC;AAfD,8CAA8C;AAC9C,4CAAsC;AAEtC;;;;;;;;;GASG;AACI,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,EAAU;IACzF,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AAC/F,CAAC"}
@@ -3,6 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.trackUpdateNowPlaying = trackUpdateNowPlaying;
4
4
  const request_js_1 = require("../request.js");
5
5
  const config_js_1 = require("../config.js");
6
+ /**
7
+ * Notify Last.fm that a user has started listening to a track. Requires authentication.
8
+ *
9
+ * @see https://www.last.fm/api/show/track.updateNowPlaying
10
+ * @param method - The Last.fm API method string (`method.track.updateNowPlaying`)
11
+ * @param artist - The artist name
12
+ * @param track - The track name
13
+ * @param album - The album name
14
+ * @param sk - A session key obtained via the auth flow
15
+ * @returns Authentication response confirming the now-playing update
16
+ */
6
17
  async function trackUpdateNowPlaying(method, artist, track, album, sk) {
7
18
  return await (0, request_js_1.signedRequest)({ method, artist, track, album, sk }, config_js_1.config.share_secret);
8
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"updateNowPlaying.js","sourceRoot":"","sources":["../../../src/track/updateNowPlaying.ts"],"names":[],"mappings":";;AAGA,sDAEC;AAJD,8CAA8C;AAC9C,4CAAsC;AAC/B,KAAK,UAAU,qBAAqB,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,KAAa,EAAE,EAAU;IAClH,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AACtG,CAAC"}
1
+ {"version":3,"file":"updateNowPlaying.js","sourceRoot":"","sources":["../../../src/track/updateNowPlaying.ts"],"names":[],"mappings":";;AAeA,sDAEC;AAhBD,8CAA8C;AAC9C,4CAAsC;AAEtC;;;;;;;;;;GAUG;AACI,KAAK,UAAU,qBAAqB,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa,EAAE,KAAa,EAAE,EAAU;IAClH,OAAO,MAAM,IAAA,0BAAa,EAAe,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,kBAAM,CAAC,YAAY,CAAC,CAAC;AACtG,CAAC"}
@@ -5,6 +5,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.userGetPersonalTags = userGetPersonalTags;
7
7
  const request_js_1 = __importDefault(require("../request.js"));
8
+ /**
9
+ * Get the items tagged by a user, of the type specified, filtered by tag.
10
+ *
11
+ * @see https://www.last.fm/api/show/user.getPersonalTags
12
+ * @param method - The Last.fm API method string (`method.user.getPersonalTags`)
13
+ * @param user - The Last.fm username
14
+ * @param tag - The tag to filter by
15
+ * @param taggingtype - The type of items tagged (`artist`, `album`, or `track`)
16
+ * @param limit - Number of results per page (default `'50'`)
17
+ * @param page - Page number to fetch (default `'1'`)
18
+ * @returns Paginated list of items tagged by the user with the given tag
19
+ */
8
20
  async function userGetPersonalTags(method, user, tag, taggingtype, limit = '50', page = '1') {
9
21
  return await (0, request_js_1.default)({ method, user, tag, limit, page });
10
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getPersonalTags.js","sourceRoot":"","sources":["../../../src/user/getPersonalTags.ts"],"names":[],"mappings":";;;;;AAEA,kDAEC;AAHD,+DAAoC;AAC7B,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,IAAY,EAAE,GAAW,EAAE,WAAmB,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IAChI,OAAO,MAAM,IAAA,oBAAO,EAA2B,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACrF,CAAC"}
1
+ {"version":3,"file":"getPersonalTags.js","sourceRoot":"","sources":["../../../src/user/getPersonalTags.ts"],"names":[],"mappings":";;;;;AAeA,kDAEC;AAhBD,+DAAoC;AAEpC;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,mBAAmB,CAAC,MAAc,EAAE,IAAY,EAAE,GAAW,EAAE,WAAmB,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IAChI,OAAO,MAAM,IAAA,oBAAO,EAA2B,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AACrF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAWA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;IACxC,QAAQ,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;IACzC,QAAQ,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE;IAC9C,MAAM,EAAE;QACN,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,KAAK;KACX;IACD,YAAY,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE;IACnD,QAAQ,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE;CACtB,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAWA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,GAAW;IAC5B,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;IACxC,QAAQ,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;IACzC,QAAQ,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE;IAC9C,MAAM,EAAE;QACN,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,KAAK;KACX;IACD,YAAY,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE;IACnD,QAAQ,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE;CACvC,CAAC"}