more bug fixes (#485)

* more bug fixes

* remove console log
This commit is contained in:
Geometrically
2023-08-05 17:43:21 -07:00
committed by GitHub
parent d968ad383c
commit 5f0d44a881
7 changed files with 20 additions and 36 deletions

View File

@@ -543,23 +543,6 @@ pub async fn remove_project(
} }
} }
/// Gets whether project is a managed modrinth pack
#[tracing::instrument]
pub async fn is_managed_modrinth_pack(
profile: &ProfilePathId,
) -> crate::Result<bool> {
if let Some(profile) = get(profile, None).await? {
if let Some(linked_data) = profile.metadata.linked_data {
return Ok(linked_data.project_id.is_some()
&& linked_data.version_id.is_some());
}
Ok(false)
} else {
Err(crate::ErrorKind::UnmanagedProfileError(profile.to_string())
.as_error())
}
}
/// Exports the profile to a Modrinth-formatted .mrpack file /// Exports the profile to a Modrinth-formatted .mrpack file
// Version ID of uploaded version (ie 1.1.5), not the unique identifying ID of the version (nvrqJg44) // Version ID of uploaded version (ie 1.1.5), not the unique identifying ID of the version (nvrqJg44)
#[tracing::instrument(skip_all)] #[tracing::instrument(skip_all)]

View File

@@ -24,7 +24,6 @@ pub fn init<R: tauri::Runtime>() -> tauri::plugin::TauriPlugin<R> {
profile_remove_project, profile_remove_project,
profile_update_managed_modrinth, profile_update_managed_modrinth,
profile_repair_managed_modrinth, profile_repair_managed_modrinth,
profile_is_managed_modrinth,
profile_run, profile_run,
profile_run_wait, profile_run_wait,
profile_run_credentials, profile_run_credentials,
@@ -190,12 +189,6 @@ pub async fn profile_repair_managed_modrinth(
Ok(profile::update::repair_managed_modrinth(&path).await?) Ok(profile::update::repair_managed_modrinth(&path).await?)
} }
// Gets if a profile is managed by Modrinth
#[tauri::command]
pub async fn profile_is_managed_modrinth(path: ProfilePathId) -> Result<bool> {
Ok(profile::is_managed_modrinth_pack(&path).await?)
}
// Exports a profile to a .mrpack file (export_location should end in .mrpack) // Exports a profile to a .mrpack file (export_location should end in .mrpack)
// invoke('profile_export_mrpack') // invoke('profile_export_mrpack')
#[tauri::command] #[tauri::command]

View File

@@ -83,7 +83,7 @@
} }
}, },
"security": { "security": {
"csp": "default-src 'self'; connect-src https://modrinth.com https://*.modrinth.com https://mixpanel.com https://*.mixpanel.com https://*.cloudflare.com; font-src https://cdn-raw.modrinth.com/fonts/inter/; img-src tauri: https: data: blob: 'unsafe-inline' asset: https://asset.localhost; script-src https://*.cloudflare.com; frame-src https://*.cloudflare.com; style-src unsafe-inline" "csp": "default-src 'self'; connect-src https://modrinth.com https://*.modrinth.com https://mixpanel.com https://*.mixpanel.com https://*.cloudflare.com; font-src https://cdn-raw.modrinth.com/fonts/inter/; img-src tauri: https: data: blob: 'unsafe-inline' asset: https://asset.localhost; script-src https://*.cloudflare.com 'self'; frame-src https://*.cloudflare.com 'self'; style-src unsafe-inline 'self'"
}, },
"updater": { "updater": {
"active": true, "active": true,

View File

@@ -110,11 +110,6 @@ export async function update_repair_modrinth(path) {
return await invoke('plugin:profile|profile_repair_managed_modrinth', { path }) return await invoke('plugin:profile|profile_repair_managed_modrinth', { path })
} }
// Gets whether a profile is managed by Modrinth
export async function is_managed_modrinth(path) {
return await invoke('plugin:profile|profile_is_managed_modrinth', { path })
}
// Export a profile to .mrpack // Export a profile to .mrpack
/// included_overrides is an array of paths to override folders to include (ie: 'mods', 'resource_packs') /// included_overrides is an array of paths to override folders to include (ie: 'mods', 'resource_packs')
// Version id is optional (ie: 1.1.5) // Version id is optional (ie: 1.1.5)

View File

@@ -247,7 +247,7 @@ async function refreshSearch() {
} }
} }
if (instanceContext.value) { if (instanceContext.value) {
for (let val of results.value) { for (let val of results.value.hits) {
val.installed = await check_installed(instanceContext.value.path, val.project_id).then( val.installed = await check_installed(instanceContext.value.path, val.project_id).then(
(x) => (val.installed = x) (x) => (val.installed = x)
) )

View File

@@ -10,9 +10,14 @@
v-model="selectedProjectType" v-model="selectedProjectType"
:items="Object.keys(selectableProjectTypes)" :items="Object.keys(selectableProjectTypes)"
/> />
<Button v-if="canUpdatePack" color="secondary" @click="updateModpack"> <Button
v-if="canUpdatePack"
:disabled="updatingModpack"
color="secondary"
@click="updateModpack"
>
<UpdatedIcon /> <UpdatedIcon />
Update modpack {{ updatingModpack ? 'Updating' : 'Update modpack' }}
</Button> </Button>
</div> </div>
<div class="card-row"> <div class="card-row">
@@ -362,7 +367,6 @@ import { useRouter } from 'vue-router'
import { import {
add_project_from_path, add_project_from_path,
get, get,
is_managed_modrinth,
remove_project, remove_project,
toggle_disable_project, toggle_disable_project,
update_all, update_all,
@@ -403,8 +407,14 @@ const props = defineProps({
const projects = ref([]) const projects = ref([])
const selectionMap = ref(new Map()) const selectionMap = ref(new Map())
const showingOptions = ref(false) const showingOptions = ref(false)
const canUpdatePack = ref(await is_managed_modrinth(props.instance.path)) const canUpdatePack = computed(() => {
return (
props.instance.metadata.linked_data &&
props.instance.metadata.linked_data.version_id !== props.instance.modrinth_update_version
)
})
console.log(props.instance)
const initProjects = (initInstance) => { const initProjects = (initInstance) => {
projects.value = [] projects.value = []
if (!initInstance || !initInstance.projects) return if (!initInstance || !initInstance.projects) return
@@ -800,8 +810,11 @@ const handleContentOptionClick = async (args) => {
} }
} }
const updatingModpack = ref(false)
const updateModpack = async () => { const updateModpack = async () => {
updatingModpack.value = true
await update_managed_modrinth(props.instance.path).catch(handleError) await update_managed_modrinth(props.instance.path).catch(handleError)
updatingModpack.value = false
} }
watch(selectAll, () => { watch(selectAll, () => {

View File

@@ -508,7 +508,7 @@ watch(
async () => { async () => {
const editProfile = { const editProfile = {
metadata: { metadata: {
name: title.value.trim().substring(0, 16) ?? 'Instance', name: title.value.trim().substring(0, 32) ?? 'Instance',
groups: groups.value.map((x) => x.trim().substring(0, 32)).filter((x) => x.length > 0), groups: groups.value.map((x) => x.trim().substring(0, 32)).filter((x) => x.length > 0),
loader_version: props.instance.metadata.loader_version, loader_version: props.instance.metadata.loader_version,
linked_data: props.instance.metadata.linked_data, linked_data: props.instance.metadata.linked_data,