-
{
projects.value = []
@@ -776,6 +800,10 @@ const handleContentOptionClick = async (args) => {
}
}
+const updateModpack = async () => {
+ await update_managed_modrinth(props.instance.path).catch(handleError)
+}
+
watch(selectAll, () => {
for (const [key, value] of Array.from(selectionMap.value)) {
if (value !== selectAll.value) {
@@ -791,6 +819,7 @@ const unlisten = await listen('tauri://file-drop', async (event) => {
}
initProjects(await get(props.instance.path).catch(handleError))
})
+
onUnmounted(() => {
unlisten()
})
@@ -827,6 +856,26 @@ onUnmounted(() => {
}
}
+.static {
+ .table-row {
+ grid-template-areas: 'manage name version';
+ grid-template-columns: 4.25rem 1fr 1fr;
+ }
+
+ .name-cell {
+ grid-area: name;
+ }
+
+ .version {
+ grid-area: version;
+ }
+
+ .manage {
+ justify-content: center;
+ grid-area: manage;
+ }
+}
+
.table-cell {
align-items: center;
}
diff --git a/theseus_gui/src/pages/instance/Options.vue b/theseus_gui/src/pages/instance/Options.vue
index 6f1e38fe3..3c208f0c4 100644
--- a/theseus_gui/src/pages/instance/Options.vue
+++ b/theseus_gui/src/pages/instance/Options.vue
@@ -85,7 +85,14 @@
-
+
+
+
+ Unpair
+
-
Repair
-
+
-
Reinstall
-
+
-
-
Delete
-
+
@@ -361,6 +378,7 @@ import {
HammerIcon,
DownloadIcon,
ModalConfirm,
+ Button,
} from 'omorphia'
import { Multiselect } from 'vue-multiselect'
import { useRouter } from 'vue-router'
@@ -465,6 +483,8 @@ const hooks = ref(props.instance.hooks ?? globalSettings.hooks)
const fullscreenSetting = ref(!!props.instance.fullscreen)
+const unlinkModpack = ref(false)
+
watch(
[
title,
@@ -483,6 +503,7 @@ watch(
fullscreenSetting,
overrideHooks,
hooks,
+ unlinkModpack,
],
async () => {
const editProfile = {
@@ -537,6 +558,10 @@ watch(
editProfile.hooks = hooks.value
}
+ if (unlinkModpack.value) {
+ editProfile.metadata.linked_data = null
+ }
+
await edit(props.instance.path, editProfile)
},
{ deep: true }
@@ -544,6 +569,10 @@ watch(
const repairing = ref(false)
+async function unpairProfile() {
+ unlinkModpack.value = true
+}
+
async function repairProfile() {
repairing.value = true
await install(props.instance.path).catch(handleError)