feat: download of specific mods

This commit is contained in:
Kentai Radiquum 2025-05-07 00:05:42 +05:00
parent 56569917c1
commit e44a961faa
Signed by: Radiquum
GPG key ID: 858E8EE696525EED
3 changed files with 107 additions and 10 deletions

View file

@ -281,6 +281,24 @@ export default function PackPage() {
setdownloadModalOpen(true);
}
async function downloadMods(mods: string[]) {
if (!packData) return;
fetch(`${DOWNLOAD_ENDPOINT["downloadMods"]}`, {
method: "POST",
body: JSON.stringify({
pack_id: packData._id,
mods: mods,
}),
headers: {
"content-type": "application/json",
accept: "application/json",
},
});
setdownloadModalOpen(true);
}
return (
<div>
{packDataLoading && (
@ -342,6 +360,7 @@ export default function PackPage() {
<ModTable
mods={packData.mods}
updatePack={_getPacksData}
downloadMods={downloadMods}
packID={id}
/>
</div>
@ -386,7 +405,15 @@ export default function PackPage() {
<Button onClick={() => addMod()}>Save</Button>
</ModalFooter>
</Modal>
<Modal show={downloadModalOpen}>
<Modal
show={downloadModalOpen}
dismissible={downloadProgressFile.current == downloadProgressFile.total}
onClose={() => {
if (downloadProgressFile.current == downloadProgressFile.total) {
setdownloadModalOpen(false);
}
}}
>
<ModalHeader>Download progress</ModalHeader>
<ModalBody>
<div className="mb-4">