|
@@ -205,6 +205,35 @@ class _MusicBrainzModule extends CoreClass {
|
|
|
|
|
|
return response;
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Searches for MusicBrainz artists
|
|
|
+ * @param {object} payload - object that contains the payload
|
|
|
+ * @param {string} payload.query - the artist query
|
|
|
+ * @returns {Promise} - returns promise (reject, resolve)
|
|
|
+ */
|
|
|
+ async SEARCH_MUSICBRAINZ_ARTISTS(payload) {
|
|
|
+ const { query } = payload;
|
|
|
+
|
|
|
+ // TODO support offset
|
|
|
+ const response = await MusicBrainzModule.runJob(
|
|
|
+ "API_CALL",
|
|
|
+ {
|
|
|
+ url: `https://musicbrainz.org/ws/2/artist`,
|
|
|
+ params: {
|
|
|
+ fmt: "json",
|
|
|
+ query,
|
|
|
+ limit: 100,
|
|
|
+ offset: 0
|
|
|
+ }
|
|
|
+ },
|
|
|
+ this
|
|
|
+ );
|
|
|
+
|
|
|
+ return {
|
|
|
+ musicbrainzArtists: response.artists
|
|
|
+ };
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
export default new _MusicBrainzModule();
|