diff --git a/commands/interaction/slash/search/lyrics.js b/commands/interaction/slash/search/lyrics.js index 6fb3a11..dc86109 100644 --- a/commands/interaction/slash/search/lyrics.js +++ b/commands/interaction/slash/search/lyrics.js @@ -4,7 +4,7 @@ const { PERMISSION_GROUPS } = require('#constants'); const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed'); const { acknowledge } = require('#utils/interactions'); -const { smallIconPill } = require('#utils/markdown'); +const { smallIconPill, smallPill } = require('#utils/markdown'); const { editOrReply } = require('#utils/message') const { STATICS } = require('#utils/statics') @@ -15,13 +15,14 @@ const META_FIELDS = { "Released": "note" } -function renderMetadata(metadata){ +function renderMetadata(track){ + let metadata = track.metadata const pills = [] for(const m of metadata){ if(!META_FIELDS[m.id]) continue; - pills.push(smallIconPill(META_FIELDS[m.id], `${m.id}: ${m.value}`)) + pills.push(`${smallIconPill(META_FIELDS[m.id], `${m.id}`)} ${smallPill(m.value)}`) } - return pills.join(' ') + return pills.join('\n'); } // These have to be synced with the backend (search_service/endpoints/lyrics). @@ -63,13 +64,14 @@ function createLyricsPage(context, search, fields){ let em = createEmbed("default", context, { author: { iconUrl: search.body.track.artist_cover, - name: `${search.body.track.title} by ${search.body.track.artist}` + name: `${search.body.track.title}` }, + description: `-# Song by ${search.body.track.artist}`, fields: fields, footer: renderLyricsFooter(context, search.body.lyrics_provider) }) if(search.body.track.cover) em.thumbnail = { url: search.body.track.cover } - if(search.body.track.metadata.length) em.description = renderMetadata(search.body.track.metadata) + if(search.body.track.metadata.length) em.description += `\n\n${renderMetadata(search.body.track)}` return em; } @@ -136,7 +138,7 @@ module.exports = { }); }catch(e){ if(e.response?.body?.status && e.response.body.status == 2 && e.response.body.message) return editOrReply(context, createEmbed("error", context, e.response.body.message)) - console.log(JSON.stringify(e.raw)) + console.log(JSON.stringify(e.raw) || e) return editOrReply(context, createEmbed("error", context, `Something went wrong.`)) } }, diff --git a/commands/message/search/lyrics.js b/commands/message/search/lyrics.js index 275bf61..65b59d4 100644 --- a/commands/message/search/lyrics.js +++ b/commands/message/search/lyrics.js @@ -4,22 +4,23 @@ const { PERMISSION_GROUPS } = require('#constants'); const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed'); const { acknowledge } = require('#utils/interactions'); -const { smallIconPill } = require('#utils/markdown'); +const { smallIconPill, smallPill } = require('#utils/markdown'); const { editOrReply } = require('#utils/message') -const { STATICS } = require('#utils/statics') +const { STATICS } = require('#utils/statics'); const META_FIELDS = { "Album": "stat_videos", "Released": "note" } -function renderMetadata(metadata){ +function renderMetadata(track){ + let metadata = track.metadata const pills = [] for(const m of metadata){ if(!META_FIELDS[m.id]) continue; - pills.push(smallIconPill(META_FIELDS[m.id], `${m.id}: ${m.value}`)) + pills.push(`${smallIconPill(META_FIELDS[m.id], `${m.id}`)} ${smallPill(m.value)}`) } - return pills.join(' ') + return pills.join('\n'); } // These have to be synced with the backend (search_service/endpoints/lyrics). @@ -61,13 +62,14 @@ function createLyricsPage(context, search, fields){ let em = createEmbed("default", context, { author: { iconUrl: search.body.track.artist_cover, - name: `${search.body.track.title} by ${search.body.track.artist}` + name: `${search.body.track.title}` }, + description: `-# Song by ${search.body.track.artist}`, fields: fields, footer: renderLyricsFooter(context, search.body.lyrics_provider) - }) - if(search.body.track.cover) em.thumbnail = { url: search.body.track.cover } - if(search.body.track.metadata.length) em.description = renderMetadata(search.body.track.metadata) + }); + if(search.body.track.cover) em.thumbnail = { url: search.body.track.cover }; + if(search.body.track.metadata.length) em.description += `\n\n${renderMetadata(search.body.track)}`; return em; }