fix: 启用启动器更新并修复初始化竞态
Axolotl desktop CI / guardrails (push) Has been cancelled
Axolotl desktop CI / desktop (macos-latest) (push) Has been cancelled
Axolotl desktop CI / desktop (ubuntu-latest) (push) Has been cancelled
Axolotl desktop CI / desktop (windows-latest) (push) Has been cancelled
Axolotl desktop CI / website (push) Has been cancelled
Repository checks / typos (push) Has been cancelled
Repository checks / tombi (push) Has been cancelled
Rust checks / shear (push) Has been cancelled
Sync source to CNB / Sync Git ref (push) Has been cancelled
Axolotl desktop CI / guardrails (push) Has been cancelled
Axolotl desktop CI / desktop (macos-latest) (push) Has been cancelled
Axolotl desktop CI / desktop (ubuntu-latest) (push) Has been cancelled
Axolotl desktop CI / desktop (windows-latest) (push) Has been cancelled
Axolotl desktop CI / website (push) Has been cancelled
Repository checks / typos (push) Has been cancelled
Repository checks / tombi (push) Has been cancelled
Rust checks / shear (push) Has been cancelled
Sync source to CNB / Sync Git ref (push) Has been cancelled
This commit is contained in:
1 parent
2359b80250
commit
d2a319a4d5
45 files changed
+235
-178
No files matched your search
@@ -12,13 +12,13 @@ import {
|
||||
import { getVersion } from '@tauri-apps/api/app'
|
||||
import { invoke } from '@tauri-apps/api/core'
|
||||
import { fetch as tauriFetch } from '@tauri-apps/plugin-http'
|
||||
import { inject, nextTick, ref, watch } from 'vue'
|
||||
import { nextTick, ref, watch } from 'vue'
|
||||
|
||||
import UpdateAnnouncementHistory from '@/components/ui/announcement/UpdateAnnouncementHistory.vue'
|
||||
import {
|
||||
betaDatabaseExists,
|
||||
copyReleaseDatabaseToBeta,
|
||||
copyDatabaseBetweenChannels,
|
||||
copyReleaseDatabaseToBeta,
|
||||
getCurrentAppDatabasePath,
|
||||
getUpdateChannel,
|
||||
getUpdatePreferences,
|
||||
@@ -446,11 +446,14 @@ async function confirmDatabaseOperation() {
|
||||
}),
|
||||
})
|
||||
} catch (error) {
|
||||
const detail = error instanceof Error ? error.message : String(error)
|
||||
handleError(
|
||||
new Error(
|
||||
targetChannel === activeChannel
|
||||
? formatMessage(messages.databaseOperationActiveTarget)
|
||||
: formatMessage(messages.databaseOperationFailed),
|
||||
`${
|
||||
targetChannel === activeChannel
|
||||
? formatMessage(messages.databaseOperationActiveTarget)
|
||||
: formatMessage(messages.databaseOperationFailed)
|
||||
}: ${detail}`,
|
||||
),
|
||||
)
|
||||
} finally {
|
||||
@@ -468,7 +471,7 @@ function cancelDatabaseOperation() {
|
||||
<div class="flex flex-col gap-6">
|
||||
<SettingsSection :title="formatMessage(messages.title)">
|
||||
<div class="update-channel-panel">
|
||||
<p id="settings-target-updates-channel" class="m-0 text-sm leading-[1.45] text-secondary">
|
||||
<p id="settings-target-updates-source" class="m-0 text-sm leading-[1.45] text-secondary">
|
||||
{{ formatMessage(messages.description) }}
|
||||
</p>
|
||||
<div
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { defineMessage, type MessageDescriptor } from '@modrinth/ui'
|
||||
import type { MessageDescriptor } from '@modrinth/ui'
|
||||
|
||||
export type SettingsCategoryId =
|
||||
| 'interface'
|
||||
@@ -28,100 +28,100 @@ export interface SettingsCategoryDefinition {
|
||||
export const settingsCategoryDefinitions: SettingsCategoryDefinition[] = [
|
||||
{
|
||||
id: 'interface',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'app.settings.tabs.interface',
|
||||
defaultMessage: 'Interface & appearance',
|
||||
}),
|
||||
},
|
||||
group: 'launcher',
|
||||
onboardingId: 'settings-tab-interface',
|
||||
},
|
||||
{
|
||||
id: 'home-navigation',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'app.settings.tabs.home-navigation',
|
||||
defaultMessage: 'Home & navigation',
|
||||
}),
|
||||
},
|
||||
group: 'launcher',
|
||||
onboardingId: 'settings-tab-home-navigation',
|
||||
},
|
||||
{
|
||||
id: 'language-translation',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'app.settings.tabs.language-translation',
|
||||
defaultMessage: 'Language & translation',
|
||||
}),
|
||||
},
|
||||
group: 'launcher',
|
||||
onboardingId: 'settings-tab-language-translation',
|
||||
},
|
||||
{
|
||||
id: 'ai',
|
||||
name: defineMessage({ id: 'app.settings.tabs.ai', defaultMessage: 'AI' }),
|
||||
name: { id: 'app.settings.tabs.ai', defaultMessage: 'AI' },
|
||||
group: 'launcher',
|
||||
flushContent: true,
|
||||
onboardingId: 'settings-tab-ai',
|
||||
},
|
||||
{
|
||||
id: 'java-performance',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'app.settings.tabs.java-performance',
|
||||
defaultMessage: 'Java & performance',
|
||||
}),
|
||||
},
|
||||
group: 'game',
|
||||
onboardingId: 'settings-tab-java-performance',
|
||||
},
|
||||
{
|
||||
id: 'launch-defaults',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'app.settings.tabs.launch-defaults',
|
||||
defaultMessage: 'Launch & instance defaults',
|
||||
}),
|
||||
},
|
||||
group: 'game',
|
||||
onboardingId: 'settings-tab-launch-defaults',
|
||||
},
|
||||
{
|
||||
id: 'content-downloads',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'app.settings.tabs.content-downloads',
|
||||
defaultMessage: 'Content & downloads',
|
||||
}),
|
||||
},
|
||||
group: 'game',
|
||||
onboardingId: 'settings-tab-content-downloads',
|
||||
},
|
||||
{
|
||||
id: 'network-multiplayer',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'app.settings.tabs.network-multiplayer',
|
||||
defaultMessage: 'Network & multiplayer',
|
||||
}),
|
||||
},
|
||||
group: 'game',
|
||||
onboardingId: 'settings-tab-network-multiplayer',
|
||||
},
|
||||
{
|
||||
id: 'storage-backups',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'app.settings.tabs.storage-backups',
|
||||
defaultMessage: 'Storage & backups',
|
||||
}),
|
||||
},
|
||||
group: 'data-privacy',
|
||||
onboardingId: 'settings-tab-storage-backups',
|
||||
},
|
||||
{
|
||||
id: 'updates',
|
||||
name: defineMessage({ id: 'app.settings.tabs.updates', defaultMessage: 'Updates' }),
|
||||
name: { id: 'app.settings.tabs.updates', defaultMessage: 'Updates' },
|
||||
group: 'support',
|
||||
onboardingId: 'settings-tab-updates',
|
||||
},
|
||||
{
|
||||
id: 'about',
|
||||
name: defineMessage({ id: 'app.settings.tabs.about', defaultMessage: 'About' }),
|
||||
name: { id: 'app.settings.tabs.about', defaultMessage: 'About' },
|
||||
group: 'support',
|
||||
},
|
||||
{
|
||||
id: 'feature-flags',
|
||||
name: defineMessage({
|
||||
name: {
|
||||
id: 'settings.feature-flags.title',
|
||||
defaultMessage: 'Feature flags',
|
||||
}),
|
||||
},
|
||||
group: 'developer',
|
||||
developerOnly: true,
|
||||
},
|
||||
|
||||
@@ -15,7 +15,8 @@ import {
|
||||
UsersIcon,
|
||||
} from '@modrinth/assets'
|
||||
import { commonMessages, defineMessages, type MessageDescriptor } from '@modrinth/ui'
|
||||
import { defineAsyncComponent, type Component } from 'vue'
|
||||
import { type Component, defineAsyncComponent } from 'vue'
|
||||
|
||||
import {
|
||||
getVisibleSettingsCategoryDefinitions,
|
||||
type SettingsCategoryDefinition,
|
||||
|
||||
Reference in new issue
Block a user