Socket
Socket
Sign inDemoInstall

@alufi/lyrics-api

Package Overview
Dependencies
37
Maintainers
2
Versions
13
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.0.7-dev to 0.0.8-dev

.replit

2

package.json
{
"name": "@alufi/lyrics-api",
"version": "0.0.7-dev",
"version": "0.0.8-dev",
"description": "Official Lyrics API wrapper of Alufi Bot",

@@ -5,0 +5,0 @@ "main": "src/index.js",

@@ -6,13 +6,29 @@ const SearchLyrics = require('lyrics-finder');

async function LyricsAPI(song, options=false, title='', thumbnails='', artist='', artistToSearch='', optionalTitle='') {
if (!song) throw new Error('[SongTitle] is not provided!');
if (typeof(song) !== 'string') throw new TypeError('[SongTitle] type must valid String!');
if (typeof(options)!=='boolean') throw new TypeError('[OptionalData] type must valid Boolean! default is false');
const LyricsAPI = async(songTitle, options=false) => {
let title = String;
let thumbnails = String;
let artist = String;
let artistToSearch = String;
let optionalTitle = String;
if (!songTitle) throw new Error('[SongTitle] is not provided!');
if (typeof(songTitle) !== 'string') throw new TypeError('[SongTitle] Type must valid String!');
if (typeof(options)!=='boolean') throw new TypeError('[OptionalData] Type must valid Boolean! default is false');
await Api.initalize();
const music = await Api.search(song,'song');
const mdata = music.content[0];
const yt = await YtsrData(song, { safeSearch: true, limit: 1 });
let music = await Api.search(songTitle, 'song');
let mdata = music.content[0];
let mtest = await Api.search(songTitle, 'video');
mtest = mtest.content[0];
if (!mdata) {
try {
mdata = yt.data[0];
mdata.artist = new Object();
} catch(Error) { throw Error; };
}
let yt = await YtsrData(songTitle, { safeSearch: true, limit: 1 });
title = mdata.name;

@@ -29,5 +45,11 @@ title = mathString(title);

}
if (!songTitle.toLowerCase().includes(artist.toLowerCase().split(',')[0])) {
artist = '';
mdata = yt.data[0];
artistToSearch = '';
}
thumbnails = await (async(url)=>{
url = await YtsrData(title,{ safeSearch:true, limit: 1});
url = await YtsrData(title, { safeSearch:true, limit: 1 });
url = url.data[0].thumbnail;

@@ -40,26 +62,29 @@ return url;

try { return new Promise(async(result, reject) => {
const ping = await Date.now()
let lyrics = await SearchLyrics(artistToSearch, title);
if (!lyrics) {
lyrics = await SearchLyrics('', optionalTitle);
if (!lyrics) reject(new Error("Could not find the lyrics!"));
thumbnails = mathThumb(yt.data[0].thumbnail);
}
try {
return new Promise(async(result, reject) => {
let create = await Date.now()
let lyrics = null;
lyrics = await SearchLyrics(artistToSearch, title);
if (!lyrics) {
title = optionalTitle;
artist = '';
lyrics = await SearchLyrics('', title);
if (!lyrics) reject(new Error("Could not find the lyrics!"));
thumbnails = mathThumb(yt.data[0].thumbnail);
}
if (options) {
return result({
data: {
title,
artist,
thumbnails,
lyrics,
},
response: `${Date.now()-ping} ms`,
});
} else
return result(lyrics);
}); } catch(Error) {
if (options) {
return result({
data: { title, artist, thumbnails, lyrics, },
response: `${Date.now()-create} ms`,
});
} else
return result(lyrics);
});
} catch(Error) {
reject(new Error('[OriginAPIError] '+Error.message));
}
};
};

@@ -66,0 +91,0 @@

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc