fix: change logic when selecting filters in Worlds.vue (#6548)

This commit is contained in:
Calum H.
2026-06-29 14:38:37 +00:00
committed by GitHub
parent b09c26f616
commit 4a972bca73
@@ -618,10 +618,7 @@ const filterOptions = computed(() => {
const hasSingleplayer = dedupedWorlds.value.some((x) => x.type === 'singleplayer') const hasSingleplayer = dedupedWorlds.value.some((x) => x.type === 'singleplayer')
const hasServer = dedupedWorlds.value.some((x) => x.type === 'server') const hasServer = dedupedWorlds.value.some((x) => x.type === 'server')
const hasStatusFilter = if (hasSingleplayer && hasServer) {
selectedFilters.value.includes('online') || selectedFilters.value.includes('offline')
if (hasSingleplayer && hasServer && !hasStatusFilter) {
options.push({ id: 'singleplayer', label: formatMessage(commonMessages.singleplayerLabel) }) options.push({ id: 'singleplayer', label: formatMessage(commonMessages.singleplayerLabel) })
} }
@@ -633,7 +630,6 @@ const filterOptions = computed(() => {
options.push({ id: 'vanilla', label: formatMessage(messages.vanillaFilter) }) options.push({ id: 'vanilla', label: formatMessage(messages.vanillaFilter) })
options.push({ id: 'modded', label: formatMessage(messages.moddedFilter) }) options.push({ id: 'modded', label: formatMessage(messages.moddedFilter) })
} }
if (!selectedFilters.value.includes('singleplayer')) {
const hasOnline = servers.some((x) => !!serverData.value[x.address]?.status) const hasOnline = servers.some((x) => !!serverData.value[x.address]?.status)
const hasOffline = servers.some((x) => !serverData.value[x.address]?.status) const hasOffline = servers.some((x) => !serverData.value[x.address]?.status)
if (hasOnline && hasOffline) { if (hasOnline && hasOffline) {
@@ -641,7 +637,6 @@ const filterOptions = computed(() => {
options.push({ id: 'offline', label: formatMessage(messages.offlineFilter) }) options.push({ id: 'offline', label: formatMessage(messages.offlineFilter) })
} }
} }
}
return options return options
}) })