lastfm-nodejs-client 1.6.0 → 1.7.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.
- package/README.md +140 -74
- package/dist/@types/album/addTags.d.ts +11 -0
- package/dist/@types/album/getInfo.d.ts +11 -0
- package/dist/@types/album/getTags.d.ts +11 -0
- package/dist/@types/album/getTopTags.d.ts +10 -0
- package/dist/@types/album/removeTag.d.ts +11 -0
- package/dist/@types/album/search.d.ts +10 -0
- package/dist/@types/artist/addTags.d.ts +10 -0
- package/dist/@types/artist/getCorrection.d.ts +9 -0
- package/dist/@types/artist/getInfo.d.ts +10 -0
- package/dist/@types/artist/getSimilar.d.ts +10 -0
- package/dist/@types/artist/getTags.d.ts +10 -0
- package/dist/@types/artist/getTopAlbums.d.ts +11 -0
- package/dist/@types/artist/getTopTags.d.ts +9 -0
- package/dist/@types/artist/getTopTracks.d.ts +11 -0
- package/dist/@types/artist/removeTag.d.ts +10 -0
- package/dist/@types/artist/search.d.ts +10 -0
- package/dist/@types/auth/getMobileSession.d.ts +11 -0
- package/dist/@types/auth/getSession.d.ts +10 -0
- package/dist/@types/auth.d.ts +9 -6
- package/dist/@types/chart/topArtists.d.ts +11 -0
- package/dist/@types/chart/topTags.d.ts +8 -0
- package/dist/@types/chart/topTracks.d.ts +8 -0
- package/dist/@types/config.d.ts +13 -11
- package/dist/@types/createOptions.d.ts +23 -0
- package/dist/@types/geo/getTopArtists.d.ts +10 -0
- package/dist/@types/geo/getTopTracks.d.ts +10 -0
- package/dist/@types/getFriends.d.ts +6 -3
- package/dist/@types/getInfo.d.ts +5 -3
- package/dist/@types/getLovedTracks.d.ts +7 -3
- package/dist/@types/getRecentTracks.d.ts +7 -3
- package/dist/@types/getTopAlbums.d.ts +7 -3
- package/dist/@types/getTopArtists.d.ts +7 -3
- package/dist/@types/getTopTracks.d.ts +7 -3
- package/dist/@types/getUserTopTags.d.ts +6 -3
- package/dist/@types/getWeeklyAlbumChart.d.ts +7 -3
- package/dist/@types/getWeeklyArtistChart.d.ts +7 -3
- package/dist/@types/getWeeklyChartList.d.ts +8 -3
- package/dist/@types/getWeeklyTrackChart.d.ts +7 -3
- package/dist/@types/index.d.ts +31 -89
- package/dist/@types/library/getArtists.d.ts +10 -0
- package/dist/@types/method.d.ts +25 -77
- package/dist/@types/request.d.ts +23 -0
- package/dist/@types/tag/getInfo.d.ts +9 -0
- package/dist/@types/tag/getSimilar.d.ts +8 -0
- package/dist/@types/tag/getTopAlbums.d.ts +10 -0
- package/dist/@types/tag/getTopArtists.d.ts +10 -0
- package/dist/@types/tag/getTopTags.d.ts +7 -0
- package/dist/@types/tag/getWeeklyChartList.d.ts +9 -0
- package/dist/@types/tag/topTracks.d.ts +6 -3
- package/dist/@types/track/addTags.d.ts +11 -0
- package/dist/@types/track/getCorrection.d.ts +10 -0
- package/dist/@types/track/getInfo.d.ts +11 -0
- package/dist/@types/track/getSimilar.d.ts +11 -0
- package/dist/@types/track/getTags.d.ts +11 -0
- package/dist/@types/track/getTopTags.d.ts +10 -0
- package/dist/@types/track/love.d.ts +10 -0
- package/dist/@types/track/removeTag.d.ts +11 -0
- package/dist/@types/track/scrobble.d.ts +12 -0
- package/dist/@types/track/search.d.ts +11 -0
- package/dist/@types/track/unlove.d.ts +10 -0
- package/dist/@types/track/updateNowPlaying.d.ts +11 -0
- package/dist/@types/user/getPersonalTags.d.ts +12 -0
- package/dist/album/addTags.js +11 -0
- package/dist/album/addTags.js.map +1 -1
- package/dist/album/getInfo.js +11 -0
- package/dist/album/getInfo.js.map +1 -1
- package/dist/album/getTags.js +11 -0
- package/dist/album/getTags.js.map +1 -1
- package/dist/album/getTopTags.js +10 -0
- package/dist/album/getTopTags.js.map +1 -1
- package/dist/album/removeTag.js +11 -0
- package/dist/album/removeTag.js.map +1 -1
- package/dist/album/search.js +10 -0
- package/dist/album/search.js.map +1 -1
- package/dist/artist/addTags.js +10 -0
- package/dist/artist/addTags.js.map +1 -1
- package/dist/artist/getCorrection.js +9 -0
- package/dist/artist/getCorrection.js.map +1 -1
- package/dist/artist/getInfo.js +10 -0
- package/dist/artist/getInfo.js.map +1 -1
- package/dist/artist/getSimilar.js +10 -0
- package/dist/artist/getSimilar.js.map +1 -1
- package/dist/artist/getTags.js +10 -0
- package/dist/artist/getTags.js.map +1 -1
- package/dist/artist/getTopAlbums.js +11 -0
- package/dist/artist/getTopAlbums.js.map +1 -1
- package/dist/artist/getTopTags.js +9 -0
- package/dist/artist/getTopTags.js.map +1 -1
- package/dist/artist/getTopTracks.js +11 -0
- package/dist/artist/getTopTracks.js.map +1 -1
- package/dist/artist/removeTag.js +10 -0
- package/dist/artist/removeTag.js.map +1 -1
- package/dist/artist/search.js +10 -0
- package/dist/artist/search.js.map +1 -1
- package/dist/auth/getMobileSession.js +11 -0
- package/dist/auth/getMobileSession.js.map +1 -1
- package/dist/auth/getSession.js +10 -0
- package/dist/auth/getSession.js.map +1 -1
- package/dist/auth.js +9 -6
- package/dist/auth.js.map +1 -1
- package/dist/chart/topArtists.js +11 -0
- package/dist/chart/topArtists.js.map +1 -1
- package/dist/chart/topTags.js +8 -0
- package/dist/chart/topTags.js.map +1 -1
- package/dist/chart/topTracks.js +8 -0
- package/dist/chart/topTracks.js.map +1 -1
- package/dist/cjs/album/addTags.js +11 -0
- package/dist/cjs/album/addTags.js.map +1 -1
- package/dist/cjs/album/getInfo.js +11 -0
- package/dist/cjs/album/getInfo.js.map +1 -1
- package/dist/cjs/album/getTags.js +11 -0
- package/dist/cjs/album/getTags.js.map +1 -1
- package/dist/cjs/album/getTopTags.js +10 -0
- package/dist/cjs/album/getTopTags.js.map +1 -1
- package/dist/cjs/album/removeTag.js +11 -0
- package/dist/cjs/album/removeTag.js.map +1 -1
- package/dist/cjs/album/search.js +10 -0
- package/dist/cjs/album/search.js.map +1 -1
- package/dist/cjs/artist/addTags.js +10 -0
- package/dist/cjs/artist/addTags.js.map +1 -1
- package/dist/cjs/artist/getCorrection.js +9 -0
- package/dist/cjs/artist/getCorrection.js.map +1 -1
- package/dist/cjs/artist/getInfo.js +10 -0
- package/dist/cjs/artist/getInfo.js.map +1 -1
- package/dist/cjs/artist/getSimilar.js +10 -0
- package/dist/cjs/artist/getSimilar.js.map +1 -1
- package/dist/cjs/artist/getTags.js +10 -0
- package/dist/cjs/artist/getTags.js.map +1 -1
- package/dist/cjs/artist/getTopAlbums.js +11 -0
- package/dist/cjs/artist/getTopAlbums.js.map +1 -1
- package/dist/cjs/artist/getTopTags.js +9 -0
- package/dist/cjs/artist/getTopTags.js.map +1 -1
- package/dist/cjs/artist/getTopTracks.js +11 -0
- package/dist/cjs/artist/getTopTracks.js.map +1 -1
- package/dist/cjs/artist/removeTag.js +10 -0
- package/dist/cjs/artist/removeTag.js.map +1 -1
- package/dist/cjs/artist/search.js +10 -0
- package/dist/cjs/artist/search.js.map +1 -1
- package/dist/cjs/auth/getMobileSession.js +11 -0
- package/dist/cjs/auth/getMobileSession.js.map +1 -1
- package/dist/cjs/auth/getSession.js +10 -0
- package/dist/cjs/auth/getSession.js.map +1 -1
- package/dist/cjs/auth.js +9 -6
- package/dist/cjs/auth.js.map +1 -1
- package/dist/cjs/chart/topArtists.js +11 -0
- package/dist/cjs/chart/topArtists.js.map +1 -1
- package/dist/cjs/chart/topTags.js +8 -0
- package/dist/cjs/chart/topTags.js.map +1 -1
- package/dist/cjs/chart/topTracks.js +8 -0
- package/dist/cjs/chart/topTracks.js.map +1 -1
- package/dist/cjs/config.js.map +1 -1
- package/dist/cjs/createOptions.js +23 -0
- package/dist/cjs/createOptions.js.map +1 -1
- package/dist/cjs/geo/getTopArtists.js +10 -0
- package/dist/cjs/geo/getTopArtists.js.map +1 -1
- package/dist/cjs/geo/getTopTracks.js +10 -0
- package/dist/cjs/geo/getTopTracks.js.map +1 -1
- package/dist/cjs/getFriends.js +6 -3
- package/dist/cjs/getFriends.js.map +1 -1
- package/dist/cjs/getInfo.js +5 -3
- package/dist/cjs/getInfo.js.map +1 -1
- package/dist/cjs/getLovedTracks.js +7 -3
- package/dist/cjs/getLovedTracks.js.map +1 -1
- package/dist/cjs/getRecentTracks.js +7 -3
- package/dist/cjs/getRecentTracks.js.map +1 -1
- package/dist/cjs/getTopAlbums.js +7 -3
- package/dist/cjs/getTopAlbums.js.map +1 -1
- package/dist/cjs/getTopArtists.js +7 -3
- package/dist/cjs/getTopArtists.js.map +1 -1
- package/dist/cjs/getTopTracks.js +7 -3
- package/dist/cjs/getTopTracks.js.map +1 -1
- package/dist/cjs/getUserTopTags.js +6 -3
- package/dist/cjs/getUserTopTags.js.map +1 -1
- package/dist/cjs/getWeeklyAlbumChart.js +7 -3
- package/dist/cjs/getWeeklyAlbumChart.js.map +1 -1
- package/dist/cjs/getWeeklyArtistChart.js +7 -3
- package/dist/cjs/getWeeklyArtistChart.js.map +1 -1
- package/dist/cjs/getWeeklyChartList.js +8 -3
- package/dist/cjs/getWeeklyChartList.js.map +1 -1
- package/dist/cjs/getWeeklyTrackChart.js +7 -3
- package/dist/cjs/getWeeklyTrackChart.js.map +1 -1
- package/dist/cjs/index.js +21 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/library/getArtists.js +10 -0
- package/dist/cjs/library/getArtists.js.map +1 -1
- package/dist/cjs/method.js +11 -0
- package/dist/cjs/method.js.map +1 -1
- package/dist/cjs/request.js +30 -0
- package/dist/cjs/request.js.map +1 -1
- package/dist/cjs/tag/getInfo.js +9 -0
- package/dist/cjs/tag/getInfo.js.map +1 -1
- package/dist/cjs/tag/getSimilar.js +8 -0
- package/dist/cjs/tag/getSimilar.js.map +1 -1
- package/dist/cjs/tag/getTopAlbums.js +10 -0
- package/dist/cjs/tag/getTopAlbums.js.map +1 -1
- package/dist/cjs/tag/getTopArtists.js +10 -0
- package/dist/cjs/tag/getTopArtists.js.map +1 -1
- package/dist/cjs/tag/getTopTags.js +7 -0
- package/dist/cjs/tag/getTopTags.js.map +1 -1
- package/dist/cjs/tag/getWeeklyChartList.js +9 -0
- package/dist/cjs/tag/getWeeklyChartList.js.map +1 -1
- package/dist/cjs/tag/topTracks.js +6 -3
- package/dist/cjs/tag/topTracks.js.map +1 -1
- package/dist/cjs/track/addTags.js +11 -0
- package/dist/cjs/track/addTags.js.map +1 -1
- package/dist/cjs/track/getCorrection.js +10 -0
- package/dist/cjs/track/getCorrection.js.map +1 -1
- package/dist/cjs/track/getInfo.js +11 -0
- package/dist/cjs/track/getInfo.js.map +1 -1
- package/dist/cjs/track/getSimilar.js +11 -0
- package/dist/cjs/track/getSimilar.js.map +1 -1
- package/dist/cjs/track/getTags.js +11 -0
- package/dist/cjs/track/getTags.js.map +1 -1
- package/dist/cjs/track/getTopTags.js +10 -0
- package/dist/cjs/track/getTopTags.js.map +1 -1
- package/dist/cjs/track/love.js +10 -0
- package/dist/cjs/track/love.js.map +1 -1
- package/dist/cjs/track/removeTag.js +11 -0
- package/dist/cjs/track/removeTag.js.map +1 -1
- package/dist/cjs/track/scrobble.js +12 -0
- package/dist/cjs/track/scrobble.js.map +1 -1
- package/dist/cjs/track/search.js +11 -0
- package/dist/cjs/track/search.js.map +1 -1
- package/dist/cjs/track/unlove.js +10 -0
- package/dist/cjs/track/unlove.js.map +1 -1
- package/dist/cjs/track/updateNowPlaying.js +11 -0
- package/dist/cjs/track/updateNowPlaying.js.map +1 -1
- package/dist/cjs/user/getPersonalTags.js +12 -0
- package/dist/cjs/user/getPersonalTags.js.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/createOptions.js +23 -0
- package/dist/createOptions.js.map +1 -1
- package/dist/geo/getTopArtists.js +10 -0
- package/dist/geo/getTopArtists.js.map +1 -1
- package/dist/geo/getTopTracks.js +10 -0
- package/dist/geo/getTopTracks.js.map +1 -1
- package/dist/getFriends.js +6 -3
- package/dist/getFriends.js.map +1 -1
- package/dist/getInfo.js +5 -3
- package/dist/getInfo.js.map +1 -1
- package/dist/getLovedTracks.js +7 -3
- package/dist/getLovedTracks.js.map +1 -1
- package/dist/getRecentTracks.js +7 -3
- package/dist/getRecentTracks.js.map +1 -1
- package/dist/getTopAlbums.js +7 -3
- package/dist/getTopAlbums.js.map +1 -1
- package/dist/getTopArtists.js +7 -3
- package/dist/getTopArtists.js.map +1 -1
- package/dist/getTopTracks.js +7 -3
- package/dist/getTopTracks.js.map +1 -1
- package/dist/getUserTopTags.js +6 -3
- package/dist/getUserTopTags.js.map +1 -1
- package/dist/getWeeklyAlbumChart.js +7 -3
- package/dist/getWeeklyAlbumChart.js.map +1 -1
- package/dist/getWeeklyArtistChart.js +7 -3
- package/dist/getWeeklyArtistChart.js.map +1 -1
- package/dist/getWeeklyChartList.js +8 -3
- package/dist/getWeeklyChartList.js.map +1 -1
- package/dist/getWeeklyTrackChart.js +7 -3
- package/dist/getWeeklyTrackChart.js.map +1 -1
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -1
- package/dist/library/getArtists.js +10 -0
- package/dist/library/getArtists.js.map +1 -1
- package/dist/method.js +11 -0
- package/dist/method.js.map +1 -1
- package/dist/request.js +30 -0
- package/dist/request.js.map +1 -1
- package/dist/tag/getInfo.js +9 -0
- package/dist/tag/getInfo.js.map +1 -1
- package/dist/tag/getSimilar.js +8 -0
- package/dist/tag/getSimilar.js.map +1 -1
- package/dist/tag/getTopAlbums.js +10 -0
- package/dist/tag/getTopAlbums.js.map +1 -1
- package/dist/tag/getTopArtists.js +10 -0
- package/dist/tag/getTopArtists.js.map +1 -1
- package/dist/tag/getTopTags.js +7 -0
- package/dist/tag/getTopTags.js.map +1 -1
- package/dist/tag/getWeeklyChartList.js +9 -0
- package/dist/tag/getWeeklyChartList.js.map +1 -1
- package/dist/tag/topTracks.js +6 -3
- package/dist/tag/topTracks.js.map +1 -1
- package/dist/track/addTags.js +11 -0
- package/dist/track/addTags.js.map +1 -1
- package/dist/track/getCorrection.js +10 -0
- package/dist/track/getCorrection.js.map +1 -1
- package/dist/track/getInfo.js +11 -0
- package/dist/track/getInfo.js.map +1 -1
- package/dist/track/getSimilar.js +11 -0
- package/dist/track/getSimilar.js.map +1 -1
- package/dist/track/getTags.js +11 -0
- package/dist/track/getTags.js.map +1 -1
- package/dist/track/getTopTags.js +10 -0
- package/dist/track/getTopTags.js.map +1 -1
- package/dist/track/love.js +10 -0
- package/dist/track/love.js.map +1 -1
- package/dist/track/removeTag.js +11 -0
- package/dist/track/removeTag.js.map +1 -1
- package/dist/track/scrobble.js +12 -0
- package/dist/track/scrobble.js.map +1 -1
- package/dist/track/search.js +11 -0
- package/dist/track/search.js.map +1 -1
- package/dist/track/unlove.js +10 -0
- package/dist/track/unlove.js.map +1 -1
- package/dist/track/updateNowPlaying.js +11 -0
- package/dist/track/updateNowPlaying.js.map +1 -1
- package/dist/user/getPersonalTags.js +12 -0
- package/dist/user/getPersonalTags.js.map +1 -1
- package/package.json +7 -10
package/dist/cjs/tag/getInfo.js
CHANGED
|
@@ -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":";;;;;
|
|
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":";;;;;
|
|
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":";;;;;
|
|
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":";;;;;
|
|
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":";;;;;
|
|
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":";;;;;
|
|
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
|
-
*
|
|
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
|
-
* @
|
|
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":";;;;;
|
|
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":";;
|
|
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":";;;;;
|
|
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":";;;;;
|
|
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":";;;;;
|
|
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":";;;;;
|
|
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":";;;;;
|
|
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"}
|
package/dist/cjs/track/love.js
CHANGED
|
@@ -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":";;
|
|
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":";;
|
|
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":";;
|
|
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"}
|
package/dist/cjs/track/search.js
CHANGED
|
@@ -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":";;;;;
|
|
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"}
|
package/dist/cjs/track/unlove.js
CHANGED
|
@@ -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":";;
|
|
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":";;
|
|
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":";;;;;
|
|
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"}
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAWA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,MAAM,
|
|
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"}
|
package/dist/createOptions.js
CHANGED
|
@@ -1,3 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds a request options object for use with `request` or `signedRequest`.
|
|
3
|
+
*
|
|
4
|
+
* @param method - The Last.fm API method string (e.g. `'user.getInfo'`)
|
|
5
|
+
* @param user - Last.fm username
|
|
6
|
+
* @param period - Time period (`overall`, `7day`, `1month`, `3month`, `6month`, `12month`)
|
|
7
|
+
* @param limit - Number of results to return per page
|
|
8
|
+
* @param page - Page number for paginated results (1-indexed)
|
|
9
|
+
* @param from - Unix timestamp; only return scrobbles after this time
|
|
10
|
+
* @param tag - Tag name
|
|
11
|
+
* @param artist - Artist name
|
|
12
|
+
* @param album - Album title
|
|
13
|
+
* @param track - Track title
|
|
14
|
+
* @param country - Country name as defined by the ISO 3166-1 standard
|
|
15
|
+
* @param autocorrect - Set to `'1'` to auto-correct misspelled artist/track names
|
|
16
|
+
* @param mbid - MusicBrainz ID for the resource
|
|
17
|
+
* @param lang - ISO 639 alpha-2 language code for localised text (default `'en'`)
|
|
18
|
+
* @param sk - Session key obtained via the auth flow
|
|
19
|
+
* @param token - Authentication token from `auth.getToken`
|
|
20
|
+
* @param tags - Comma-separated list of user-supplied tags (max 10)
|
|
21
|
+
* @param timestamp - Unix timestamp of the scrobble
|
|
22
|
+
* @returns A request options object ready to pass to `request` or `signedRequest`
|
|
23
|
+
*/
|
|
1
24
|
export function createOptions(method, user, period, limit, page, from, tag, artist, album, track, country, autocorrect, mbid, lang, sk, token, tags, timestamp) {
|
|
2
25
|
return {
|
|
3
26
|
method,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createOptions.js","sourceRoot":"","sources":["../src/createOptions.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,aAAa,CAC3B,MAAc,EACd,IAAY,EACZ,MAAe,EACf,KAAc,EACd,IAAa,EACb,IAAa,EACb,GAAY,EACZ,MAAe,EACf,KAAc,EACd,KAAc,EACd,OAAgB,EAChB,WAAoB,EACpB,IAAa,EACb,IAAa,EACb,EAAW,EACX,KAAc,EACd,IAAa,EACb,SAAkB;IAElB,OAAO;QACL,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,GAAG;QACH,MAAM;QACN,KAAK;QACL,IAAI;QACJ,MAAM;QACN,KAAK;QACL,KAAK;QACL,OAAO;QACP,WAAW;QACX,IAAI;QACJ,IAAI;QACJ,EAAE;QACF,KAAK;QACL,IAAI;QACJ,SAAS;KACV,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"createOptions.js","sourceRoot":"","sources":["../src/createOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,aAAa,CAC3B,MAAc,EACd,IAAY,EACZ,MAAe,EACf,KAAc,EACd,IAAa,EACb,IAAa,EACb,GAAY,EACZ,MAAe,EACf,KAAc,EACd,KAAc,EACd,OAAgB,EAChB,WAAoB,EACpB,IAAa,EACb,IAAa,EACb,EAAW,EACX,KAAc,EACd,IAAa,EACb,SAAkB;IAElB,OAAO;QACL,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,GAAG;QACH,MAAM;QACN,KAAK;QACL,IAAI;QACJ,MAAM;QACN,KAAK;QACL,KAAK;QACL,OAAO;QACP,WAAW;QACX,IAAI;QACJ,IAAI;QACJ,EAAE;QACF,KAAK;QACL,IAAI;QACJ,SAAS;KACV,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import request from '../request.js';
|
|
2
|
+
/**
|
|
3
|
+
* Get the most popular artists on Last.fm by country.
|
|
4
|
+
*
|
|
5
|
+
* @see https://www.last.fm/api/show/geo.getTopArtists
|
|
6
|
+
* @param method - The Last.fm API method string (`method.geo.getTopArtists`)
|
|
7
|
+
* @param country - Country name as defined by the ISO 3166-1 standard
|
|
8
|
+
* @param limit - Number of results per page (default `'50'`)
|
|
9
|
+
* @param page - Page number to fetch (default `'1'`)
|
|
10
|
+
* @returns Paginated list of top artists for the given country
|
|
11
|
+
*/
|
|
2
12
|
export async function geoGetTopArtists(method, country, limit = '50', page = '1') {
|
|
3
13
|
return await request({ method, country, limit, page });
|
|
4
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTopArtists.js","sourceRoot":"","sources":["../../src/geo/getTopArtists.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"getTopArtists.js","sourceRoot":"","sources":["../../src/geo/getTopArtists.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,eAAe,CAAC;AAEpC;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAc,EAAE,OAAe,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IAC9F,OAAO,MAAM,OAAO,CAAwB,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAChF,CAAC"}
|
package/dist/geo/getTopTracks.js
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import request from '../request.js';
|
|
2
|
+
/**
|
|
3
|
+
* Get the most popular tracks on Last.fm by country.
|
|
4
|
+
*
|
|
5
|
+
* @see https://www.last.fm/api/show/geo.getTopTracks
|
|
6
|
+
* @param method - The Last.fm API method string (`method.geo.getTopTracks`)
|
|
7
|
+
* @param country - Country name as defined by the ISO 3166-1 standard
|
|
8
|
+
* @param limit - Number of results per page (default `'50'`)
|
|
9
|
+
* @param page - Page number to fetch (default `'1'`)
|
|
10
|
+
* @returns Paginated list of top tracks for the given country
|
|
11
|
+
*/
|
|
2
12
|
export async function geoGetTopTracks(method, country, limit = '50', page = '1') {
|
|
3
13
|
return await request({ method, country, limit, page });
|
|
4
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTopTracks.js","sourceRoot":"","sources":["../../src/geo/getTopTracks.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"getTopTracks.js","sourceRoot":"","sources":["../../src/geo/getTopTracks.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,eAAe,CAAC;AAEpC;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,OAAe,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,GAAG,GAAG;IAC7F,OAAO,MAAM,OAAO,CAAuB,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/E,CAAC"}
|
package/dist/getFriends.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { createOptions } from './createOptions.js';
|
|
2
2
|
import request from './request.js';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Get a list of the user's friends on Last.fm.
|
|
5
5
|
*
|
|
6
|
-
* https://www.last.fm/api/show/user.getFriends
|
|
7
|
-
* @
|
|
6
|
+
* @see https://www.last.fm/api/show/user.getFriends
|
|
7
|
+
* @param method - The Last.fm API method string (`method.user.getFriends`)
|
|
8
|
+
* @param user - The Last.fm username
|
|
9
|
+
* @param limit - Number of results per page
|
|
10
|
+
* @returns A list of the user's friends with their profile information
|
|
8
11
|
*/
|
|
9
12
|
export async function getFriends(method, user, limit) {
|
|
10
13
|
const options = createOptions(method, user, undefined, limit);
|
package/dist/getFriends.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFriends.js","sourceRoot":"","sources":["../src/getFriends.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC
|
|
1
|
+
{"version":3,"file":"getFriends.js","sourceRoot":"","sources":["../src/getFriends.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,IAAY,EACZ,KAAa;IAEb,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9D,OAAO,MAAM,OAAO,CAAkB,OAAO,CAAC,CAAC;AACjD,CAAC"}
|
package/dist/getInfo.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { createOptions } from './createOptions.js';
|
|
2
2
|
import request from './request.js';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Get information about a user profile on Last.fm.
|
|
5
5
|
*
|
|
6
|
-
* https://www.last.fm/api/show/user.getInfo
|
|
7
|
-
* @
|
|
6
|
+
* @see https://www.last.fm/api/show/user.getInfo
|
|
7
|
+
* @param method - The Last.fm API method string (`method.user.getInfo`)
|
|
8
|
+
* @param user - The Last.fm username
|
|
9
|
+
* @returns User profile information including name, playcount, and registration date
|
|
8
10
|
*/
|
|
9
11
|
export async function getInfo(method, user) {
|
|
10
12
|
const options = createOptions(method, user);
|
package/dist/getInfo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getInfo.js","sourceRoot":"","sources":["../src/getInfo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC
|
|
1
|
+
{"version":3,"file":"getInfo.js","sourceRoot":"","sources":["../src/getInfo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAc,EAAE,IAAY;IACxD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,OAAO,CAAe,OAAO,CAAC,CAAC;AAC9C,CAAC"}
|