feat(script-favorite): add favorite API wrappers to epicScript.js

- toggleFavoriteScript: POST /epicScript/favorite/toggle
- getFavoriteScriptPage: GET /epicScript/favorite/page
- checkFavoriteScript: GET /epicScript/favorite/check
- Added to default export object
This commit is contained in:
2026-07-19 21:48:00 +08:00
parent 74fa304cd9
commit 50f1bdba38
+37 -1
View File
@@ -198,6 +198,39 @@ export const transformListToFrontend = (backendList) => {
return backendList.map(transformToFrontendFormat)
}
/**
* 切换剧本收藏状态(收藏/取消收藏)
* @param {string} scriptId 剧本ID
* @returns {Promise<{success: boolean, isFavorited: boolean}>}
*/
export const toggleFavoriteScript = async (scriptId) => {
const res = await post('/epicScript/favorite/toggle', { scriptId })
return {
success: true,
isFavorited: res.data?.isFavorited ?? false,
favoriteTime: res.data?.favoriteTime ?? null
}
}
/**
* 获取收藏剧本列表
* @param {number} current 当前页
* @param {number} size 每页大小
*/
export const getFavoriteScriptPage = async (current = 1, size = 10) => {
return get('/epicScript/favorite/page', { current, size })
}
/**
* 检查剧本是否已收藏
* @param {string} scriptId 剧本ID
* @returns {Promise<boolean>}
*/
export const checkFavoriteScript = async (scriptId) => {
const res = await get('/epicScript/favorite/check', { scriptId })
return res.data?.isFavorited ?? false
}
export default {
getScriptList,
getScriptPage,
@@ -212,5 +245,8 @@ export default {
buildCharacterInfo,
buildLifeEventsSummary,
transformToFrontendFormat,
transformListToFrontend
transformListToFrontend,
toggleFavoriteScript,
getFavoriteScriptPage,
checkFavoriteScript,
}