···88import { getTurnstileToken } from "@/utils/turnstile";
991010// Thanks Nemo for this API
1111-const THE_INTRO_DB_BASE_URL = "https://api.theintrodb.org";
1111+const THE_INTRO_DB_BASE_URL = "https://api.theintrodb.org/v1";
1212const FED_SKIPS_BASE_URL = "https://fed-skips.pstream.mov";
1313// const VELORA_BASE_URL = "https://veloratv.ru/api/intro-end/confirmed";
1414const INTRODB_BASE_URL = "https://api.introdb.app/intro";
···3131 if (!meta?.tmdbId) return null;
32323333 try {
3434- let apiUrl = `${THE_INTRO_DB_BASE_URL}?tmdb_id=${meta.tmdbId}`;
3434+ let apiUrl = `${THE_INTRO_DB_BASE_URL}/intro?tmdb_id=${meta.tmdbId}`;
3535 if (
3636 meta.type !== "movie" &&
3737 meta.season?.number &&
···143143 // Reset source
144144 currentSkipTimeSource = null;
145145146146- // If user has febbox key, prioritize Fed-skips (better quality)
146146+ // Try TheIntroDB API first (supports both movies and TV shows)
147147+ const theIntroDBTime = await fetchTheIntroDBTime();
148148+ if (theIntroDBTime !== null) {
149149+ currentSkipTimeSource = "theintrodb";
150150+ setSkiptime(theIntroDBTime);
151151+ return;
152152+ }
153153+154154+ // Fall back to Fed-skips if TheIntroDB doesn't have anything
147155 // Note: Fed-skips only supports TV shows, not movies
148156 if (febboxKey && meta?.type !== "movie") {
149157 const fedSkipsTime = await fetchFedSkipsTime();
···154162 }
155163 }
156164157157- // Try TheIntroDB API (supports both movies and TV shows)
158158- const theIntroDBTime = await fetchTheIntroDBTime();
159159- if (theIntroDBTime !== null) {
160160- currentSkipTimeSource = "theintrodb";
161161- setSkiptime(theIntroDBTime);
162162- return;
163163- }
164164-165165- // Fall back to IntroDB API (TV shows only, available to all users)
165165+ // Last resort: Fall back to IntroDB API (TV shows only, available to all users)
166166 const introDBTime = await fetchIntroDBTime();
167167 if (introDBTime !== null) {
168168 currentSkipTimeSource = "introdb";