From 073476b9530890a7f57dd2d68cc4254a0d94e170 Mon Sep 17 00:00:00 2001 From: Awakened-Redstone <40528665+Awakened-Redstone@users.noreply.github.com> Date: Thu, 9 Jan 2025 20:25:34 -0300 Subject: [PATCH] chore: Use a hash to open the modal, and make the filter queries independent of the modal --- apps/frontend/src/pages/[type]/[id].vue | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/apps/frontend/src/pages/[type]/[id].vue b/apps/frontend/src/pages/[type]/[id].vue index a62dbbfd4..350306015 100644 --- a/apps/frontend/src/pages/[type]/[id].vue +++ b/apps/frontend/src/pages/[type]/[id].vue @@ -1247,17 +1247,21 @@ if (!route.name.startsWith("type-id-settings")) { const onUserCollectProject = useClientTry(userCollectProject); +const {version, loader} = route.query; +if (version !== undefined && project.value.game_versions.includes(version)) { + userSelectedGameVersion.value = version; +} +if (loader !== undefined && project.value.loaders.includes(loader)) { + userSelectedPlatform.value = loader; +} + watch(downloadModal, (modal) => { if (!modal) return; - const {version, loader} = route.query; - if (!version && !loader) return; - if (version && !project.value.game_versions.includes(version)) return; - if (loader && !project.value.loaders.includes(loader)) return; - - if (version) userSelectedGameVersion.value = version; - if (loader) userSelectedPlatform.value = loader; - modal.show(); + // route.hash returns everything in the hash string, including the # itself + if (route.hash === "#download") { + modal.show(); + } }) async function setProcessing() {