Revert "Rip out auto-downloading deps"

This reverts commit ba0ccdbb11.
This commit is contained in:
Wyvest 2025-12-26 00:25:01 +09:00
parent 6cea998f08
commit 14f9256a61
3 changed files with 31 additions and 3 deletions

View file

@ -10,6 +10,14 @@ export function DownloadModButton({ cluster, file }: { cluster: ClusterModel; fi
const download = useCommandMut(async () => {
if ('Managed' in file.kind) {
const [pkg, version] = file.kind.Managed;
if (version.dependencies.length > 0)
for (const dependency of version.dependencies)
if (dependency.dependency_type === "required") {
const slug = dependency.project_id ?? '';
const versions = await bindings.core.getPackageVersions(pkg.provider, slug, cluster.mc_version, cluster.mc_loader, 0, 1);
await bindings.core.downloadPackage(pkg.provider, slug, versions.items[0].version_id, cluster.id, null);
}
await bindings.core.downloadPackage(pkg.provider, pkg.id, version.version_id, cluster.id, null);
}
else {

View file

@ -135,6 +135,14 @@ export function ModCard({ file, cluster }: ModCardProps) {
const download = useCommandMut(async () => {
if ('Managed' in kind) {
const [pkg, version] = kind.Managed;
if (version.dependencies.length > 0)
for (const dependency of version.dependencies)
if (dependency.dependency_type === "required") {
const slug = dependency.project_id ?? '';
const versions = await bindings.core.getPackageVersions(pkg.provider, slug, cluster.mc_version, cluster.mc_loader, 0, 1);
await bindings.core.downloadPackage(pkg.provider, slug, versions.items[0].version_id, cluster.id, null);
}
await bindings.core.downloadPackage(pkg.provider, pkg.id, version.version_id, cluster.id, null);
}
else {

View file

@ -111,10 +111,22 @@ function DownloadingMods({ mods, setOpen, nextPath }: { mods: ModDataArray; setO
const [downloadedMods, setDownloadedMods] = useState(0);
const [modName, setModName] = useState<string | null>(null);
const download = useCommandMut(async (mod: ModData) => {
if (isManagedMod(mod))
if (isManagedMod(mod)) {
if (mod.dependencies.length > 0)
for (const dependency of mod.dependencies) {
const cluster = await bindings.core.getClusterById(mod.clusterId);
if (!cluster)
continue;
if (dependency.dependency_type === "required") {
const slug = dependency.project_id ?? '';
const versions = await bindings.core.getPackageVersions(mod.provider, slug, cluster.mc_version, cluster.mc_loader, 0, 1);
if (versions.items.length !== 0)
await bindings.core.downloadPackage(mod.provider, slug, versions.items[0].version_id, cluster.id, null);
}
}
await bindings.core.downloadPackage(mod.provider, mod.id, mod.versionId, mod.clusterId, true);
else
await bindings.core.downloadExternalPackage(mod.package, mod.clusterId, null, null);
}
else { await bindings.core.downloadExternalPackage(mod.package, mod.clusterId, null, null); }
});
const { setting } = useSettings();