mirror of
https://github.com/Grasscutters/Cultivation.git
synced 2025-12-15 16:44:43 +01:00
get ALL mods at once
This commit is contained in:
@@ -15,11 +15,11 @@ pub async fn get_download_links(mod_id: String) -> String {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[tauri::command]
|
#[tauri::command]
|
||||||
pub async fn list_submissions(mode: String) -> String {
|
pub async fn list_submissions(mode: String, page: String) -> String {
|
||||||
let res = web::query(
|
let res = web::query(
|
||||||
format!(
|
format!(
|
||||||
"{}/apiv9/Util/Game/Submissions?_idGameRow=8552&_nPage=1&_nPerpage=50&_sMode={}",
|
"{}/apiv9/Util/Game/Submissions?_idGameRow=8552&_nPage={}&_nPerpage=50&_sMode={}",
|
||||||
SITE_URL, mode
|
SITE_URL, page, mode
|
||||||
)
|
)
|
||||||
.as_str(),
|
.as_str(),
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -118,13 +118,30 @@ interface ModDownload {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export async function getMods(mode: string) {
|
export async function getMods(mode: string) {
|
||||||
const resp = JSON.parse(
|
let modList: GamebananaResponse[] = []
|
||||||
await invoke('list_submissions', {
|
let hadMods = true
|
||||||
mode,
|
let page = 1
|
||||||
})
|
|
||||||
)
|
|
||||||
|
|
||||||
return formatGamebananaData(resp)
|
while (hadMods) {
|
||||||
|
const resp = JSON.parse(
|
||||||
|
await invoke('list_submissions', {
|
||||||
|
mode,
|
||||||
|
page: '' + page,
|
||||||
|
})
|
||||||
|
)
|
||||||
|
|
||||||
|
if (resp.length === 0) hadMods = false
|
||||||
|
|
||||||
|
modList = [...modList, ...resp]
|
||||||
|
page++
|
||||||
|
|
||||||
|
console.log(page)
|
||||||
|
console.log(resp)
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log(modList)
|
||||||
|
|
||||||
|
return formatGamebananaData(modList)
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function formatGamebananaData(obj: GamebananaResponse[]) {
|
export async function formatGamebananaData(obj: GamebananaResponse[]) {
|
||||||
|
|||||||
Reference in New Issue
Block a user