aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/app/api/spotify-lrc/route.ts54
1 files changed, 0 insertions, 54 deletions
diff --git a/src/app/api/spotify-lrc/route.ts b/src/app/api/spotify-lrc/route.ts
deleted file mode 100644
index 793f393..0000000
--- a/src/app/api/spotify-lrc/route.ts
+++ /dev/null
@@ -1,54 +0,0 @@
-import { NextRequest, NextResponse } from 'next/server'
-
-const spotifyLyricsAPIURL = 'https://spotify-lyric-api-984e7b4face0.herokuapp.com/'
-
-interface Line{
- timeTag: string;
- words: string;
-}
-
-interface SpotifyLyricAPIResponse {
- error: boolean;
- syncType: string;
- usage?: string
- lines?: Line[];
-}
-
-function extractSpotifyId(url: string | null) {
- if (!url) {
- return url;
- }
- const spotifyUrlPattern = /https:\/\/open\.spotify\.com\/track\/([a-zA-Z0-9]+)/;
- const match = spotifyUrlPattern.exec(url);
- if (match && match[1]) {
- return match[1];
- } else {
- return url;
-}
-}
-
-function convertLinesToLrc(lines: Line[] | undefined) {
- if (!lines) {
- return '';
- }
- let lrc = '';
- for (const line of lines) {
- lrc += `[${line['timeTag']}]${line['words']}\n`;
- console.log(lrc);
- }
- return lrc;
-}
-
-export const runtime = 'edge';
-export async function GET(request: NextRequest) {
- const searchParams = request.nextUrl.searchParams
- const q = searchParams.get('q');
- const url = `${spotifyLyricsAPIURL}?trackid=${extractSpotifyId(q)}&format=lrc`
-const response = await fetch(url);
-if (!response.ok) {
- throw new Error(`HTTP error! status: ${response.status}`);
-}
-const data: SpotifyLyricAPIResponse = await response.json();
- const lrcString = convertLinesToLrc(data.lines);
- return NextResponse.json({ message: lrcString })
-}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage