feat: add calendar view with Bangumi.tv schedule integration

Add weekly broadcast schedule page showing subscribed anime grouped by
day-of-week. Backend fetches air_weekday from Bangumi.tv calendar API
and matches titles. Frontend displays responsive grid (desktop) and
vertical list (mobile). Edit popup moved to parent layout to fix
KeepAlive conflicts, and restyled with purple theme.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
EstrellaXD
2026-01-23 17:51:19 +01:00
parent b3be217e4f
commit 2a757e8f2c
15 changed files with 1147 additions and 20 deletions

View File

@@ -13,6 +13,7 @@ export const apiBangumi = {
...bangumi,
filter: bangumi.filter.split(','),
rss_link: bangumi.rss_link.split(','),
air_weekday: bangumi.air_weekday ?? null,
}));
return result;
},
@@ -30,6 +31,7 @@ export const apiBangumi = {
...data,
filter: data.filter.split(','),
rss_link: data.rss_link.split(','),
air_weekday: data.air_weekday ?? null,
};
return result;
},
@@ -134,4 +136,14 @@ export const apiBangumi = {
);
return data;
},
/**
* 从 Bangumi.tv 刷新放送日历数据
*/
async refreshCalendar() {
const { data } = await axios.get<ApiSuccess>(
'api/v1/bangumi/refresh/calendar'
);
return data;
},
};