Update release.ts

This commit is contained in:
2025-05-21 18:29:15 +05:00
committed by GitHub
parent bf195dcbe3
commit 3dc3e4147e

View File

@@ -5,7 +5,7 @@ const baseHeaders = {
"Accept": "application/json", "Accept": "application/json",
}; };
// Взвешенное среднее из scores_stats // Взвешенное среднее из rates_scores_stats
function calculateWeightedScore(stats) { function calculateWeightedScore(stats) {
if (!stats?.length) return null; if (!stats?.length) return null;
@@ -25,7 +25,7 @@ function calculateWeightedScore(stats) {
// Получение данных с Shikimori // Получение данных с Shikimori
async function getShikimoriData(search, year) { async function getShikimoriData(search, year) {
if (!search) { if (!search) {
return { score: "N/A", weightedScore: "N/A", characters: [] }; return { weightedScore: "N/A", characters: [] };
} }
const animeUrl = `https://shikimori.one/api/animes?search=${encodeURIComponent(search)}&limit=1${year ? `&year=${year}` : ""}`; const animeUrl = `https://shikimori.one/api/animes?search=${encodeURIComponent(search)}&limit=1${year ? `&year=${year}` : ""}`;
@@ -36,14 +36,14 @@ async function getShikimoriData(search, year) {
const anime = animeData?.[0]; const anime = animeData?.[0];
if (!anime || !anime.id) { if (!anime || !anime.id) {
return { score: "N/A", weightedScore: "N/A", characters: [] }; return { weightedScore: "N/A", characters: [] };
} }
// Взвешенный рейтинг из scores_stats // Взвешенный рейтинг из rates_scores_stats
const statsUrl = `https://shikimori.one/api/animes/${anime.id}`; const statsUrl = `https://shikimori.one/api/animes/${anime.id}`;
const statsRes = await fetch(statsUrl, { headers: baseHeaders }); const statsRes = await fetch(statsUrl, { headers: baseHeaders });
const statsData = await statsRes.json(); const statsData = await statsRes.json();
const weightedScore = calculateWeightedScore(statsData.scores_stats) || "N/A"; const weightedScore = calculateWeightedScore(statsData.rates_scores_stats) || "N/A";
// Главные персонажи // Главные персонажи
const rolesUrl = `https://shikimori.one/api/animes/${anime.id}/roles`; const rolesUrl = `https://shikimori.one/api/animes/${anime.id}/roles`;
@@ -59,12 +59,11 @@ async function getShikimoriData(search, year) {
})); }));
return { return {
score: anime.score || "N/A",
weightedScore, weightedScore,
characters: mainCharacters, characters: mainCharacters,
}; };
} catch { } catch {
return { score: "N/A", weightedScore: "N/A", characters: [] }; return { weightedScore: "N/A", characters: [] };
} }
} }
@@ -106,7 +105,6 @@ async function getReleaseFromAnixart(releaseId, token = "") {
try { try {
const shikiData = await getShikimoriData(title, year); const shikiData = await getShikimoriData(title, year);
const shikiScore = shikiData.score || "N/A";
const shikiWeighted = shikiData.weightedScore || "N/A"; const shikiWeighted = shikiData.weightedScore || "N/A";
const characters = shikiData.characters.length const characters = shikiData.characters.length
? shikiData.characters.map((c) => `<a href="${c.url}">${c.name}</a>`).join(", ") ? shikiData.characters.map((c) => `<a href="${c.url}">${c.name}</a>`).join(", ")
@@ -115,13 +113,11 @@ async function getReleaseFromAnixart(releaseId, token = "") {
const malScore = await getMALScore(title); const malScore = await getMALScore(title);
noteExtra = noteExtra =
`<b>Shikimori (официальный):</b> ${shikiScore}<br>` +
`<b>Shikimori (взвешенный):</b> ${shikiWeighted}<br>` + `<b>Shikimori (взвешенный):</b> ${shikiWeighted}<br>` +
`<b>MyAnimeList:</b> ${malScore}<br>` + `<b>MyAnimeList:</b> ${malScore}<br>` +
`<b>Главные персонажи:</b> ${characters}<br>`; `<b>Главные персонажи:</b> ${characters}<br>`;
} catch { } catch {
noteExtra = noteExtra =
`<b>Shikimori (официальный):</b> N/A<br>` +
`<b>Shikimori (взвешенный):</b> N/A<br>` + `<b>Shikimori (взвешенный):</b> N/A<br>` +
`<b>MyAnimeList:</b> N/A<br>` + `<b>MyAnimeList:</b> N/A<br>` +
`<b>Главные персонажи:</b> N/A<br>`; `<b>Главные персонажи:</b> N/A<br>`;