lastfm-nodejs-client 1.5.2 → 1.5.4

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 (47) hide show
  1. package/dist/@types/chart/topTags.d.ts +2 -2
  2. package/dist/@types/chart/topTracks.d.ts +2 -2
  3. package/dist/@types/lastfm.types.d.ts +16 -6
  4. package/dist/@types/request.d.ts +1 -1
  5. package/dist/chart/topTags.js.map +1 -1
  6. package/dist/chart/topTracks.js.map +1 -1
  7. package/dist/cjs/auth.js +1 -2
  8. package/dist/cjs/auth.js.map +1 -1
  9. package/dist/cjs/chart/topArtists.js +1 -2
  10. package/dist/cjs/chart/topArtists.js.map +1 -1
  11. package/dist/cjs/chart/topTags.js +1 -2
  12. package/dist/cjs/chart/topTags.js.map +1 -1
  13. package/dist/cjs/chart/topTracks.js +1 -2
  14. package/dist/cjs/chart/topTracks.js.map +1 -1
  15. package/dist/cjs/config.js +0 -25
  16. package/dist/cjs/config.js.map +1 -1
  17. package/dist/cjs/createOptions.js +1 -2
  18. package/dist/cjs/createOptions.js.map +1 -1
  19. package/dist/cjs/getInfo.js +1 -2
  20. package/dist/cjs/getInfo.js.map +1 -1
  21. package/dist/cjs/getLovedTracks.js +1 -2
  22. package/dist/cjs/getLovedTracks.js.map +1 -1
  23. package/dist/cjs/getRecentTracks.js +1 -2
  24. package/dist/cjs/getRecentTracks.js.map +1 -1
  25. package/dist/cjs/getTopAlbums.js +1 -2
  26. package/dist/cjs/getTopAlbums.js.map +1 -1
  27. package/dist/cjs/getTopArtists.js +1 -2
  28. package/dist/cjs/getTopArtists.js.map +1 -1
  29. package/dist/cjs/getTopTracks.js +1 -2
  30. package/dist/cjs/getTopTracks.js.map +1 -1
  31. package/dist/cjs/getWeeklyAlbumChart.js +1 -2
  32. package/dist/cjs/getWeeklyAlbumChart.js.map +1 -1
  33. package/dist/cjs/getWeeklyArtistChart.js +1 -2
  34. package/dist/cjs/getWeeklyArtistChart.js.map +1 -1
  35. package/dist/cjs/getWeeklyChartList.js +1 -2
  36. package/dist/cjs/getWeeklyChartList.js.map +1 -1
  37. package/dist/cjs/getWeeklyTrackChart.js +1 -2
  38. package/dist/cjs/getWeeklyTrackChart.js.map +1 -1
  39. package/dist/cjs/lastfm.types.js.map +1 -1
  40. package/dist/cjs/request.js +27 -89
  41. package/dist/cjs/request.js.map +1 -1
  42. package/dist/config.js +0 -2
  43. package/dist/config.js.map +1 -1
  44. package/dist/lastfm.types.js.map +1 -1
  45. package/dist/request.js +27 -86
  46. package/dist/request.js.map +1 -1
  47. package/package.json +17 -15
@@ -1,2 +1,2 @@
1
- import type { TagsResponse } from '../lastfm.types.js';
2
- export declare function chartTopTags(method: string, page: string): Promise<TagsResponse>;
1
+ import type { ChartTopTagsResponse } from '../lastfm.types.js';
2
+ export declare function chartTopTags(method: string, page: string): Promise<ChartTopTagsResponse>;
@@ -1,2 +1,2 @@
1
- import type { TopTrackResponse } from '../lastfm.types.js';
2
- export declare function chartTopTracks(method: string, page: string): Promise<TopTrackResponse>;
1
+ import type { ChartTopTracksResponse } from '../lastfm.types.js';
2
+ export declare function chartTopTracks(method: string, page: string): Promise<ChartTopTracksResponse>;
@@ -28,9 +28,11 @@ export interface RecentTracks {
28
28
  track: Track[];
29
29
  '@attr': AttrLimit;
30
30
  }
31
- export interface TagsResponse {
32
- tag: Tag[];
33
- '@attr': Attr;
31
+ export interface ChartTopTagsResponse {
32
+ tags: {
33
+ tag: Tag[];
34
+ '@attr': AttributesPage;
35
+ };
34
36
  }
35
37
  export interface Tag {
36
38
  name: string;
@@ -57,8 +59,16 @@ export interface Friends {
57
59
  user: User[];
58
60
  }
59
61
  export interface ChartTopArtistResponse {
60
- artists: Artist[];
61
- '@attr': AttributesPage;
62
+ artists: {
63
+ artist: Artist[];
64
+ '@attr': AttributesPage;
65
+ };
66
+ }
67
+ export interface ChartTopTracksResponse {
68
+ tracks: {
69
+ track: Track[];
70
+ '@attr': AttributesPage;
71
+ };
62
72
  }
63
73
  export interface TopArtistsResponse {
64
74
  topartists: TopArtists;
@@ -143,7 +153,7 @@ export interface Date {
143
153
  '#text': string;
144
154
  }
145
155
  export interface Track {
146
- '@attr'?: AttrNowPlaying;
156
+ '@attr'?: AttrRank;
147
157
  album: Album;
148
158
  artist: Artist;
149
159
  date?: Date;
@@ -4,5 +4,5 @@ interface RequestOptions {
4
4
  period?: string;
5
5
  limit?: string;
6
6
  }
7
- declare const request: <Response_1>(options: RequestOptions) => Promise<Response_1>;
7
+ declare const request: <Response>(options: RequestOptions) => Promise<Response>;
8
8
  export default request;
@@ -1 +1 @@
1
- {"version":3,"file":"topTags.js","sourceRoot":"","sources":["../../src/chart/topTags.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,OAAO,MAAM,eAAe,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,IAAY;IAC7D,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,OAAO,CAAe,OAAO,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"topTags.js","sourceRoot":"","sources":["../../src/chart/topTags.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,OAAO,MAAM,eAAe,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,IAAY;IAC7D,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,OAAO,CAAuB,OAAO,CAAC,CAAC;AACtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"topTracks.js","sourceRoot":"","sources":["../../src/chart/topTracks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,OAAO,MAAM,eAAe,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,IAAY;IAC/D,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,OAAO,CAAmB,OAAO,CAAC,CAAC;AAClD,CAAC"}
1
+ {"version":3,"file":"topTracks.js","sourceRoot":"","sources":["../../src/chart/topTracks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,OAAO,MAAM,eAAe,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,IAAY;IAC/D,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,OAAO,CAAyB,OAAO,CAAC,CAAC;AACxD,CAAC"}
package/dist/cjs/auth.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.auth = void 0;
6
+ exports.auth = auth;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -20,5 +20,4 @@ async function auth(method, user, period, limit) {
20
20
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
21
21
  return await (0, request_js_1.default)(options);
22
22
  }
23
- exports.auth = auth;
24
23
  //# sourceMappingURL=auth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;;;;;GASG;AACI,KAAK,UAAU,IAAI,CACxB,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAe,OAAO,CAAC,CAAC;AAC9C,CAAC;AARD,oBAQC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":";;;;;AAcA,oBAQC;AArBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;;;;;GASG;AACI,KAAK,UAAU,IAAI,CACxB,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAe,OAAO,CAAC,CAAC;AAC9C,CAAC"}
@@ -3,12 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.chartTopArtists = void 0;
6
+ exports.chartTopArtists = chartTopArtists;
7
7
  const createOptions_js_1 = require("../createOptions.js");
8
8
  const request_js_1 = __importDefault(require("../request.js"));
9
9
  async function chartTopArtists(method, user, period, page, limit) {
10
10
  const options = (0, createOptions_js_1.createOptions)(method, user, period, page, limit);
11
11
  return await (0, request_js_1.default)(options);
12
12
  }
13
- exports.chartTopArtists = chartTopArtists;
14
13
  //# sourceMappingURL=topArtists.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"topArtists.js","sourceRoot":"","sources":["../../../src/chart/topArtists.ts"],"names":[],"mappings":";;;;;;AACA,0DAAoD;AACpD,+DAAoC;AAE7B,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,IAAY,EACZ,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACjE,OAAO,MAAM,IAAA,oBAAO,EAAyB,OAAO,CAAC,CAAC;AACxD,CAAC;AATD,0CASC"}
1
+ {"version":3,"file":"topArtists.js","sourceRoot":"","sources":["../../../src/chart/topArtists.ts"],"names":[],"mappings":";;;;;AAIA,0CASC;AAZD,0DAAoD;AACpD,+DAAoC;AAE7B,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,IAAY,EACZ,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACjE,OAAO,MAAM,IAAA,oBAAO,EAAyB,OAAO,CAAC,CAAC;AACxD,CAAC"}
@@ -3,12 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.chartTopTags = void 0;
6
+ exports.chartTopTags = chartTopTags;
7
7
  const createOptions_js_1 = require("../createOptions.js");
8
8
  const request_js_1 = __importDefault(require("../request.js"));
9
9
  async function chartTopTags(method, page) {
10
10
  const options = (0, createOptions_js_1.createOptions)(method, page);
11
11
  return await (0, request_js_1.default)(options);
12
12
  }
13
- exports.chartTopTags = chartTopTags;
14
13
  //# sourceMappingURL=topTags.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"topTags.js","sourceRoot":"","sources":["../../../src/chart/topTags.ts"],"names":[],"mappings":";;;;;;AACA,0DAAoD;AACpD,+DAAoC;AAE7B,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,IAAY;IAC7D,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,IAAA,oBAAO,EAAe,OAAO,CAAC,CAAC;AAC9C,CAAC;AAHD,oCAGC"}
1
+ {"version":3,"file":"topTags.js","sourceRoot":"","sources":["../../../src/chart/topTags.ts"],"names":[],"mappings":";;;;;AAIA,oCAGC;AAND,0DAAoD;AACpD,+DAAoC;AAE7B,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,IAAY;IAC7D,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,IAAA,oBAAO,EAAuB,OAAO,CAAC,CAAC;AACtD,CAAC"}
@@ -3,12 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.chartTopTracks = void 0;
6
+ exports.chartTopTracks = chartTopTracks;
7
7
  const createOptions_js_1 = require("../createOptions.js");
8
8
  const request_js_1 = __importDefault(require("../request.js"));
9
9
  async function chartTopTracks(method, page) {
10
10
  const options = (0, createOptions_js_1.createOptions)(method, page);
11
11
  return await (0, request_js_1.default)(options);
12
12
  }
13
- exports.chartTopTracks = chartTopTracks;
14
13
  //# sourceMappingURL=topTracks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"topTracks.js","sourceRoot":"","sources":["../../../src/chart/topTracks.ts"],"names":[],"mappings":";;;;;;AACA,0DAAoD;AACpD,+DAAoC;AAE7B,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,IAAY;IAC/D,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,IAAA,oBAAO,EAAmB,OAAO,CAAC,CAAC;AAClD,CAAC;AAHD,wCAGC"}
1
+ {"version":3,"file":"topTracks.js","sourceRoot":"","sources":["../../../src/chart/topTracks.ts"],"names":[],"mappings":";;;;;AAIA,wCAGC;AAND,0DAAoD;AACpD,+DAAoC;AAE7B,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,IAAY;IAC/D,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,IAAA,oBAAO,EAAyB,OAAO,CAAC,CAAC;AACxD,CAAC"}
@@ -1,31 +1,6 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  Object.defineProperty(exports, "__esModule", { value: true });
26
3
  exports.config = void 0;
27
- const dotenv = __importStar(require("dotenv"));
28
- dotenv.config();
29
4
  /**
30
5
  * @description Stores the Last.fm API key, app name, base url, format, shared secret, and username.
31
6
  * Simply add a .env file to the root of the project and add the following:
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AACjC,MAAM,CAAC,MAAM,EAAE,CAAC;AAahB;;;;;;;;GAQG;AACU,QAAA,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;AACU,QAAA,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,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createOptions = void 0;
3
+ exports.createOptions = createOptions;
4
4
  function createOptions(method, user, period, limit, page) {
5
5
  return {
6
6
  method,
@@ -10,5 +10,4 @@ function createOptions(method, user, period, limit, page) {
10
10
  limit,
11
11
  };
12
12
  }
13
- exports.createOptions = createOptions;
14
13
  //# sourceMappingURL=createOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createOptions.js","sourceRoot":"","sources":["../../src/createOptions.ts"],"names":[],"mappings":";;;AAAA,SAAgB,aAAa,CAC3B,MAAc,EACd,IAAY,EACZ,MAAe,EACf,KAAc,EACd,IAAa;IAEb,OAAO;QACL,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,MAAM;QACN,KAAK;KACN,CAAC;AACJ,CAAC;AAdD,sCAcC"}
1
+ {"version":3,"file":"createOptions.js","sourceRoot":"","sources":["../../src/createOptions.ts"],"names":[],"mappings":";;AAAA,sCAcC;AAdD,SAAgB,aAAa,CAC3B,MAAc,EACd,IAAY,EACZ,MAAe,EACf,KAAc,EACd,IAAa;IAEb,OAAO;QACL,MAAM;QACN,IAAI;QACJ,IAAI;QACJ,MAAM;QACN,KAAK;KACN,CAAC;AACJ,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getInfo = void 0;
6
+ exports.getInfo = getInfo;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getInfo(method, user) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getInfo = getInfo;
20
19
  //# sourceMappingURL=getInfo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getInfo.js","sourceRoot":"","sources":["../../src/getInfo.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,OAAO,CAAC,MAAc,EAAE,IAAY;IACxD,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,IAAA,oBAAO,EAAe,OAAO,CAAC,CAAC;AAC9C,CAAC;AAHD,0BAGC"}
1
+ {"version":3,"file":"getInfo.js","sourceRoot":"","sources":["../../src/getInfo.ts"],"names":[],"mappings":";;;;;AAUA,0BAGC;AAZD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,OAAO,CAAC,MAAc,EAAE,IAAY;IACxD,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,IAAA,oBAAO,EAAe,OAAO,CAAC,CAAC;AAC9C,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getLovedTracks = void 0;
6
+ exports.getLovedTracks = getLovedTracks;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getLovedTracks(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getLovedTracks = getLovedTracks;
20
19
  //# sourceMappingURL=getLovedTracks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getLovedTracks.js","sourceRoot":"","sources":["../../src/getLovedTracks.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,cAAc,CAClC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAsB,OAAO,CAAC,CAAC;AACrD,CAAC;AARD,wCAQC"}
1
+ {"version":3,"file":"getLovedTracks.js","sourceRoot":"","sources":["../../src/getLovedTracks.ts"],"names":[],"mappings":";;;;;AAUA,wCAQC;AAjBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,cAAc,CAClC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAsB,OAAO,CAAC,CAAC;AACrD,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getRecentTracks = void 0;
6
+ exports.getRecentTracks = getRecentTracks;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getRecentTracks(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getRecentTracks = getRecentTracks;
20
19
  //# sourceMappingURL=getRecentTracks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getRecentTracks.js","sourceRoot":"","sources":["../../src/getRecentTracks.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAuB,OAAO,CAAC,CAAC;AACtD,CAAC;AARD,0CAQC"}
1
+ {"version":3,"file":"getRecentTracks.js","sourceRoot":"","sources":["../../src/getRecentTracks.ts"],"names":[],"mappings":";;;;;AAUA,0CAQC;AAjBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAuB,OAAO,CAAC,CAAC;AACtD,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getTopAlbums = void 0;
6
+ exports.getTopAlbums = getTopAlbums;
7
7
  const request_js_1 = __importDefault(require("./request.js"));
8
8
  const createOptions_js_1 = require("./createOptions.js");
9
9
  /**
@@ -16,5 +16,4 @@ async function getTopAlbums(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getTopAlbums = getTopAlbums;
20
19
  //# sourceMappingURL=getTopAlbums.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTopAlbums.js","sourceRoot":"","sources":["../../src/getTopAlbums.ts"],"names":[],"mappings":";;;;;;AACA,8DAAmC;AACnC,yDAAmD;AAEnD;;;;;GAKG;AACI,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAoB,OAAO,CAAC,CAAC;AACnD,CAAC;AARD,oCAQC"}
1
+ {"version":3,"file":"getTopAlbums.js","sourceRoot":"","sources":["../../src/getTopAlbums.ts"],"names":[],"mappings":";;;;;AAUA,oCAQC;AAjBD,8DAAmC;AACnC,yDAAmD;AAEnD;;;;;GAKG;AACI,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAoB,OAAO,CAAC,CAAC;AACnD,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getTopArtists = void 0;
6
+ exports.getTopArtists = getTopArtists;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getTopArtists(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getTopArtists = getTopArtists;
20
19
  //# sourceMappingURL=getTopArtists.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTopArtists.js","sourceRoot":"","sources":["../../src/getTopArtists.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,aAAa,CACjC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAqB,OAAO,CAAC,CAAC;AACpD,CAAC;AARD,sCAQC"}
1
+ {"version":3,"file":"getTopArtists.js","sourceRoot":"","sources":["../../src/getTopArtists.ts"],"names":[],"mappings":";;;;;AAUA,sCAQC;AAjBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,aAAa,CACjC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAqB,OAAO,CAAC,CAAC;AACpD,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getTopTracks = void 0;
6
+ exports.getTopTracks = getTopTracks;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getTopTracks(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getTopTracks = getTopTracks;
20
19
  //# sourceMappingURL=getTopTracks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTopTracks.js","sourceRoot":"","sources":["../../src/getTopTracks.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAmB,OAAO,CAAC,CAAC;AAClD,CAAC;AARD,oCAQC"}
1
+ {"version":3,"file":"getTopTracks.js","sourceRoot":"","sources":["../../src/getTopTracks.ts"],"names":[],"mappings":";;;;;AAUA,oCAQC;AAjBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAAmB,OAAO,CAAC,CAAC;AAClD,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getWeeklyAlbumChart = void 0;
6
+ exports.getWeeklyAlbumChart = getWeeklyAlbumChart;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getWeeklyAlbumChart(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getWeeklyAlbumChart = getWeeklyAlbumChart;
20
19
  //# sourceMappingURL=getWeeklyAlbumChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getWeeklyAlbumChart.js","sourceRoot":"","sources":["../../src/getWeeklyAlbumChart.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAA2B,OAAO,CAAC,CAAC;AAC1D,CAAC;AARD,kDAQC"}
1
+ {"version":3,"file":"getWeeklyAlbumChart.js","sourceRoot":"","sources":["../../src/getWeeklyAlbumChart.ts"],"names":[],"mappings":";;;;;AAUA,kDAQC;AAjBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAA2B,OAAO,CAAC,CAAC;AAC1D,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getWeeklyArtistChart = void 0;
6
+ exports.getWeeklyArtistChart = getWeeklyArtistChart;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getWeeklyArtistChart(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getWeeklyArtistChart = getWeeklyArtistChart;
20
19
  //# sourceMappingURL=getWeeklyArtistChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getWeeklyArtistChart.js","sourceRoot":"","sources":["../../src/getWeeklyArtistChart.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAA4B,OAAO,CAAC,CAAC;AAC3D,CAAC;AARD,oDAQC"}
1
+ {"version":3,"file":"getWeeklyArtistChart.js","sourceRoot":"","sources":["../../src/getWeeklyArtistChart.ts"],"names":[],"mappings":";;;;;AAUA,oDAQC;AAjBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAA4B,OAAO,CAAC,CAAC;AAC3D,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getWeeklyChartList = void 0;
6
+ exports.getWeeklyChartList = getWeeklyChartList;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getWeeklyChartList(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getWeeklyChartList = getWeeklyChartList;
20
19
  //# sourceMappingURL=getWeeklyChartList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getWeeklyChartList.js","sourceRoot":"","sources":["../../src/getWeeklyChartList.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,kBAAkB,CACtC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAA0B,OAAO,CAAC,CAAC;AACzD,CAAC;AARD,gDAQC"}
1
+ {"version":3,"file":"getWeeklyChartList.js","sourceRoot":"","sources":["../../src/getWeeklyChartList.ts"],"names":[],"mappings":";;;;;AAUA,gDAQC;AAjBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,kBAAkB,CACtC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAA0B,OAAO,CAAC,CAAC;AACzD,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getWeeklyTrackChart = void 0;
6
+ exports.getWeeklyTrackChart = getWeeklyTrackChart;
7
7
  const createOptions_js_1 = require("./createOptions.js");
8
8
  const request_js_1 = __importDefault(require("./request.js"));
9
9
  /**
@@ -16,5 +16,4 @@ async function getWeeklyTrackChart(method, user, period, limit) {
16
16
  const options = (0, createOptions_js_1.createOptions)(method, user, period, limit);
17
17
  return await (0, request_js_1.default)(options);
18
18
  }
19
- exports.getWeeklyTrackChart = getWeeklyTrackChart;
20
19
  //# sourceMappingURL=getWeeklyTrackChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getWeeklyTrackChart.js","sourceRoot":"","sources":["../../src/getWeeklyTrackChart.ts"],"names":[],"mappings":";;;;;;AACA,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAA2B,OAAO,CAAC,CAAC;AAC1D,CAAC;AARD,kDAQC"}
1
+ {"version":3,"file":"getWeeklyTrackChart.js","sourceRoot":"","sources":["../../src/getWeeklyTrackChart.ts"],"names":[],"mappings":";;;;;AAUA,kDAQC;AAjBD,yDAAmD;AACnD,8DAAmC;AAEnC;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,IAAY,EACZ,MAAc,EACd,KAAa;IAEb,MAAM,OAAO,GAAG,IAAA,gCAAa,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,MAAM,IAAA,oBAAO,EAA2B,OAAO,CAAC,CAAC;AAC1D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lastfm.types.js","sourceRoot":"","sources":["../../src/lastfm.types.ts"],"names":[],"mappings":";;;AAqSA,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,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,EAfW,aAAa,6BAAb,aAAa,QAexB"}
1
+ {"version":3,"file":"lastfm.types.js","sourceRoot":"","sources":["../../src/lastfm.types.ts"],"names":[],"mappings":";;;AAgTA,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,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,EAfW,aAAa,6BAAb,aAAa,QAexB"}
@@ -1,9 +1,5 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const cross_fetch_1 = __importDefault(require("cross-fetch"));
7
3
  const config_js_1 = require("./config.js");
8
4
  var ErrorResponse;
9
5
  (function (ErrorResponse) {
@@ -35,96 +31,38 @@ const buildUrl = (options) => {
35
31
  params.append('format', config_js_1.config.format.json);
36
32
  return `${config_js_1.config.base_url}?${params.toString()}`;
37
33
  };
34
+ const ErrorMessages = {
35
+ [ErrorResponse.InvalidService]: 'Invalid service',
36
+ [ErrorResponse.InvalidMethod]: 'Invalid method',
37
+ [ErrorResponse.AuthenticationFailed]: 'Authentication failed',
38
+ [ErrorResponse.InvalidFormat]: 'Invalid format',
39
+ [ErrorResponse.InvalidParameters]: 'Invalid parameters',
40
+ [ErrorResponse.InvalidResource]: 'Invalid resource',
41
+ [ErrorResponse.OperationFailed]: 'Operation failed',
42
+ [ErrorResponse.InvalidSessionKey]: 'Invalid session key',
43
+ [ErrorResponse.InvalidAPIKey]: 'Invalid API key',
44
+ [ErrorResponse.ServiceOffline]: 'Service offline',
45
+ [ErrorResponse.InvalidMethodSignature]: 'Invalid method signature',
46
+ [ErrorResponse.TemporaryError]: 'Temporary error',
47
+ [ErrorResponse.SuspendedAPIKey]: 'Suspended API key',
48
+ [ErrorResponse.RateLimitExceeded]: 'Rate limit exceeded',
49
+ };
38
50
  const request = async (options) => {
39
51
  const url = buildUrl(options);
40
- return (await (0, cross_fetch_1.default)(url, {
52
+ const res = await fetch(url, {
41
53
  headers: {
42
54
  'Content-Type': 'application/json',
43
55
  },
44
- })
45
- .then(async (res) => {
46
- if (!res.ok) {
47
- throw new Error(res.statusText);
48
- }
49
- switch (res.status) {
50
- case 200: {
51
- const contentType = res.headers.get('content-type');
52
- if (contentType && contentType.includes('json')) {
53
- const body = await res.json();
54
- return body;
55
- }
56
- return res;
57
- }
58
- case 400: {
59
- throw new Error('Bad request');
60
- }
61
- case 401: {
62
- throw new Error('Unauthorized');
63
- }
64
- case 403: {
65
- throw new Error('Forbidden');
66
- }
67
- case 404: {
68
- throw new Error('Not found');
69
- }
70
- case 500: {
71
- throw new Error('Internal server error');
72
- }
73
- case 503: {
74
- throw new Error('Service unavailable');
75
- }
76
- case ErrorResponse.InvalidAPIKey: {
77
- throw new Error('Invalid API key');
78
- }
79
- case ErrorResponse.InvalidMethod: {
80
- throw new Error('Invalid method');
81
- }
82
- case ErrorResponse.InvalidParameters: {
83
- throw new Error('Invalid parameters');
84
- }
85
- case ErrorResponse.InvalidResource: {
86
- throw new Error('Invalid resource');
87
- }
88
- case ErrorResponse.InvalidSessionKey: {
89
- throw new Error('Invalid session key');
90
- }
91
- case ErrorResponse.InvalidService: {
92
- throw new Error('Invalid service');
93
- }
94
- case ErrorResponse.OperationFailed: {
95
- throw new Error('Operation failed');
96
- }
97
- case ErrorResponse.RateLimitExceeded: {
98
- throw new Error('Rate limit exceeded');
99
- }
100
- case ErrorResponse.ServiceOffline: {
101
- throw new Error('Service offline');
102
- }
103
- case ErrorResponse.SuspendedAPIKey: {
104
- throw new Error('Suspended API key');
105
- }
106
- case ErrorResponse.TemporaryError: {
107
- throw new Error('Temporary error');
108
- }
109
- case ErrorResponse.AuthenticationFailed: {
110
- throw new Error('Authentication failed');
111
- }
112
- case ErrorResponse.InvalidFormat: {
113
- throw new Error('Invalid format');
114
- }
115
- case ErrorResponse.InvalidMethodSignature: {
116
- throw new Error('Invalid method signature');
117
- }
118
- default: {
119
- throw new Error('Unknown error');
120
- }
121
- }
122
- })
123
- .then((json) => json)
124
- .catch((error) => {
125
- // eslint-disable-next-line no-console
126
- console.error('🚨 error:', error);
127
- }));
56
+ });
57
+ if (!res.ok) {
58
+ throw new Error(`HTTP ${res.status}: ${res.statusText}`);
59
+ }
60
+ const body = await res.json();
61
+ if (body.error) {
62
+ const message = ErrorMessages[body.error] ?? body.message ?? 'Unknown error';
63
+ throw new Error(`LastFM error ${body.error}: ${message}`);
64
+ }
65
+ return body;
128
66
  };
129
67
  exports.default = request;
130
68
  //# sourceMappingURL=request.js.map
@@ -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":"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"}
package/dist/config.js CHANGED
@@ -1,5 +1,3 @@
1
- import * as dotenv from 'dotenv';
2
- dotenv.config();
3
1
  /**
4
2
  * @description Stores the Last.fm API key, app name, base url, format, shared secret, and username.
5
3
  * Simply add a .env file to the root of the project and add the following:
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,MAAM,CAAC,MAAM,EAAE,CAAC;AAahB;;;;;;;;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,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 +1 @@
1
- {"version":3,"file":"lastfm.types.js","sourceRoot":"","sources":["../src/lastfm.types.ts"],"names":[],"mappings":"AAqSA,MAAM,CAAN,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,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,EAfW,aAAa,KAAb,aAAa,QAexB"}
1
+ {"version":3,"file":"lastfm.types.js","sourceRoot":"","sources":["../src/lastfm.types.ts"],"names":[],"mappings":"AAgTA,MAAM,CAAN,IAAY,aAeX;AAfD,WAAY,aAAa;IACvB,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,EAfW,aAAa,KAAb,aAAa,QAexB"}
package/dist/request.js CHANGED
@@ -1,4 +1,3 @@
1
- import fetch from 'cross-fetch';
2
1
  import { config } from './config.js';
3
2
  var ErrorResponse;
4
3
  (function (ErrorResponse) {
@@ -30,96 +29,38 @@ const buildUrl = (options) => {
30
29
  params.append('format', config.format.json);
31
30
  return `${config.base_url}?${params.toString()}`;
32
31
  };
32
+ const ErrorMessages = {
33
+ [ErrorResponse.InvalidService]: 'Invalid service',
34
+ [ErrorResponse.InvalidMethod]: 'Invalid method',
35
+ [ErrorResponse.AuthenticationFailed]: 'Authentication failed',
36
+ [ErrorResponse.InvalidFormat]: 'Invalid format',
37
+ [ErrorResponse.InvalidParameters]: 'Invalid parameters',
38
+ [ErrorResponse.InvalidResource]: 'Invalid resource',
39
+ [ErrorResponse.OperationFailed]: 'Operation failed',
40
+ [ErrorResponse.InvalidSessionKey]: 'Invalid session key',
41
+ [ErrorResponse.InvalidAPIKey]: 'Invalid API key',
42
+ [ErrorResponse.ServiceOffline]: 'Service offline',
43
+ [ErrorResponse.InvalidMethodSignature]: 'Invalid method signature',
44
+ [ErrorResponse.TemporaryError]: 'Temporary error',
45
+ [ErrorResponse.SuspendedAPIKey]: 'Suspended API key',
46
+ [ErrorResponse.RateLimitExceeded]: 'Rate limit exceeded',
47
+ };
33
48
  const request = async (options) => {
34
49
  const url = buildUrl(options);
35
- return (await fetch(url, {
50
+ const res = await fetch(url, {
36
51
  headers: {
37
52
  'Content-Type': 'application/json',
38
53
  },
39
- })
40
- .then(async (res) => {
41
- if (!res.ok) {
42
- throw new Error(res.statusText);
43
- }
44
- switch (res.status) {
45
- case 200: {
46
- const contentType = res.headers.get('content-type');
47
- if (contentType && contentType.includes('json')) {
48
- const body = await res.json();
49
- return body;
50
- }
51
- return res;
52
- }
53
- case 400: {
54
- throw new Error('Bad request');
55
- }
56
- case 401: {
57
- throw new Error('Unauthorized');
58
- }
59
- case 403: {
60
- throw new Error('Forbidden');
61
- }
62
- case 404: {
63
- throw new Error('Not found');
64
- }
65
- case 500: {
66
- throw new Error('Internal server error');
67
- }
68
- case 503: {
69
- throw new Error('Service unavailable');
70
- }
71
- case ErrorResponse.InvalidAPIKey: {
72
- throw new Error('Invalid API key');
73
- }
74
- case ErrorResponse.InvalidMethod: {
75
- throw new Error('Invalid method');
76
- }
77
- case ErrorResponse.InvalidParameters: {
78
- throw new Error('Invalid parameters');
79
- }
80
- case ErrorResponse.InvalidResource: {
81
- throw new Error('Invalid resource');
82
- }
83
- case ErrorResponse.InvalidSessionKey: {
84
- throw new Error('Invalid session key');
85
- }
86
- case ErrorResponse.InvalidService: {
87
- throw new Error('Invalid service');
88
- }
89
- case ErrorResponse.OperationFailed: {
90
- throw new Error('Operation failed');
91
- }
92
- case ErrorResponse.RateLimitExceeded: {
93
- throw new Error('Rate limit exceeded');
94
- }
95
- case ErrorResponse.ServiceOffline: {
96
- throw new Error('Service offline');
97
- }
98
- case ErrorResponse.SuspendedAPIKey: {
99
- throw new Error('Suspended API key');
100
- }
101
- case ErrorResponse.TemporaryError: {
102
- throw new Error('Temporary error');
103
- }
104
- case ErrorResponse.AuthenticationFailed: {
105
- throw new Error('Authentication failed');
106
- }
107
- case ErrorResponse.InvalidFormat: {
108
- throw new Error('Invalid format');
109
- }
110
- case ErrorResponse.InvalidMethodSignature: {
111
- throw new Error('Invalid method signature');
112
- }
113
- default: {
114
- throw new Error('Unknown error');
115
- }
116
- }
117
- })
118
- .then((json) => json)
119
- .catch((error) => {
120
- // eslint-disable-next-line no-console
121
- console.error('🚨 error:', error);
122
- }));
54
+ });
55
+ if (!res.ok) {
56
+ throw new Error(`HTTP ${res.status}: ${res.statusText}`);
57
+ }
58
+ const body = await res.json();
59
+ if (body.error) {
60
+ const message = ErrorMessages[body.error] ?? body.message ?? 'Unknown error';
61
+ throw new Error(`LastFM error ${body.error}: ${message}`);
62
+ }
63
+ return body;
123
64
  };
124
65
  export default request;
125
66
  //# sourceMappingURL=request.js.map
@@ -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":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lastfm-nodejs-client",
3
- "version": "1.5.2",
3
+ "version": "1.5.4",
4
4
  "description": "A NodeJS wrapper client for LastFm API. Fetching public data by username using the LastFm public API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -16,7 +16,7 @@
16
16
  "prepublish": "npm test && npm run lint && npm run prepare",
17
17
  "clean": "rimraf dist",
18
18
  "publish": "npm run prepublish && npm publish --access public",
19
- "test": "npx playwright test --reporter=list"
19
+ "test": "pnpm exec playwright test --reporter=list"
20
20
  },
21
21
  "keywords": [
22
22
  "client",
@@ -33,20 +33,19 @@
33
33
  ],
34
34
  "license": "MIT",
35
35
  "dependencies": {
36
- "cross-fetch": "^4.0.0",
37
- "dotenv": "^16.3.1",
38
- "rimraf": "^5.0.5"
36
+ "rimraf": "6.1.3"
39
37
  },
40
38
  "devDependencies": {
41
- "@playwright/test": "^1.38.1",
42
- "@types/node": "^20.8.3",
43
- "@typescript-eslint/eslint-plugin": "^6.7.4",
44
- "eslint": "^8.51.0",
45
- "eslint-config-standard-with-typescript": "^39.1.1",
46
- "eslint-plugin-import": "^2.25.2",
47
- "eslint-plugin-n": "^15.0.0 || ^16.0.0 ",
48
- "eslint-plugin-promise": "^6.0.0",
49
- "typescript": "^5.2.2"
39
+ "@playwright/test": "1.58.2",
40
+ "@types/node": "25.5.0",
41
+ "@typescript-eslint/eslint-plugin": "6.21.0",
42
+ "@typescript-eslint/parser": "6.21.0",
43
+ "eslint": "8.57.1",
44
+ "eslint-config-standard-with-typescript": "39.1.1",
45
+ "eslint-plugin-import": "2.32.0",
46
+ "eslint-plugin-n": "16.6.2",
47
+ "eslint-plugin-promise": "6.6.0",
48
+ "typescript": "5.9.3"
50
49
  },
51
50
  "repository": {
52
51
  "type": "git",
@@ -56,5 +55,8 @@
56
55
  "url": "https://github.com/mannuelf/lastfm-nodejs-client/issues"
57
56
  },
58
57
  "homepage": "https://github.com/mannuelf/lastfm-nodejs-client#readme",
59
- "type": "module"
58
+ "type": "module",
59
+ "engines": {
60
+ "node": ">=18.0.0"
61
+ }
60
62
  }