新增同步 helpers(synced-options / synced-packs / game-options),在 instance helper 中补充同步类型与 API。新增实例设置「同步」标签页(SyncSettings)及 SyncSource / SyncedPacks / servers / command-history 四个弹窗,并把 CheckCircleButton、TeleportOverflowMenu 从 ui 包导出。同步相关的 en-US / zh-CN 文案已补齐(各 62 条)。game-settings-modal 留待下一轮。
This commit is contained in:
1 parent
f7380f1590
commit
83ee962c16
14 files changed
+2238
-1
No files matched your search
@@ -0,0 +1,61 @@
|
||||
import { queryOptions } from '@tanstack/vue-query'
|
||||
|
||||
import { list_game_options_sync_sources } from './game-options'
|
||||
import {
|
||||
get_command_history,
|
||||
get_global_synced_options,
|
||||
get_initialized_synced_options,
|
||||
list_synced_servers,
|
||||
} from './instance'
|
||||
import type { GameInstance } from './types'
|
||||
|
||||
export const syncedOptionsKeys = {
|
||||
global: ['global-synced-options'] as const,
|
||||
initialized: ['initialized-synced-options'] as const,
|
||||
gameSources: ['game-options-sync-sources'] as const,
|
||||
set: ['global-synced-options', 'set'] as const,
|
||||
servers: ['synced-servers', 'list'] as const,
|
||||
commandHistory: ['synced-options', 'command-history'] as const,
|
||||
}
|
||||
|
||||
export function globalSyncedOptionsQueryOptions() {
|
||||
return queryOptions({
|
||||
queryKey: syncedOptionsKeys.global,
|
||||
queryFn: get_global_synced_options,
|
||||
})
|
||||
}
|
||||
|
||||
export function initializedSyncedOptionsQueryOptions() {
|
||||
return queryOptions({
|
||||
queryKey: syncedOptionsKeys.initialized,
|
||||
queryFn: get_initialized_synced_options,
|
||||
})
|
||||
}
|
||||
|
||||
export function gameOptionsSyncSourcesQueryOptions() {
|
||||
return queryOptions({
|
||||
queryKey: syncedOptionsKeys.gameSources,
|
||||
queryFn: list_game_options_sync_sources,
|
||||
staleTime: 0,
|
||||
})
|
||||
}
|
||||
|
||||
export function syncedServersQueryOptions() {
|
||||
return queryOptions({
|
||||
queryKey: syncedOptionsKeys.servers,
|
||||
queryFn: list_synced_servers,
|
||||
})
|
||||
}
|
||||
|
||||
export function commandHistoryQueryOptions() {
|
||||
return queryOptions({
|
||||
queryKey: syncedOptionsKeys.commandHistory,
|
||||
queryFn: get_command_history,
|
||||
})
|
||||
}
|
||||
|
||||
export function canSourceMultiplayerServers(instance: GameInstance): boolean {
|
||||
return !['server_project', 'server_project_modpack', 'modrinth_hosting'].includes(
|
||||
instance.link?.type ?? '',
|
||||
)
|
||||
}
|
||||
Reference in new issue
Block a user