disable Stable loader version type if there are no stable loader versions available (#6114)

* disable Stable loader version if there are no stable loader versions

* deselect stable if stable is disabled
This commit is contained in:
simonLeary42
2026-05-16 13:07:00 -04:00
committed by GitHub
parent b72bc18a6b
commit 8dd1490c8a
@@ -93,6 +93,8 @@
v-if="!isPaperLike"
v-model="loaderVersionType"
:items="loaderVersionTypeItems"
:disabled-items="loaderVersionTypeDisabledItems"
:disabled-tooltip="'No such versions available'"
:format-label="formatLoaderVersionTypeLabel"
/>
<div v-if="isPaperLike || loaderVersionType === 'other'">
@@ -296,6 +298,11 @@ const tags = injectTags()
const loaderVersionTypeItems: LoaderVersionType[] = ['stable', 'latest', 'other']
const loaderVersionTypeDisabledItems = computed<LoaderVersionType[]>(() => {
const noStableVersions = !loaderVersionsData.value.some((v: LoaderVersionEntry) => v.stable)
return noStableVersions ? ['stable'] : []
})
const isPaperLike = computed(
() => selectedLoader.value === 'paper' || selectedLoader.value === 'purpur',
)
@@ -565,6 +572,13 @@ function autoSelectLoaderVersion() {
'first:',
loaderVersionsData.value[0]?.id,
)
if (
loaderVersionType.value === 'stable' &&
loaderVersionTypeDisabledItems.value.includes('stable')
) {
debug("'stable' loader version type is disabled, switching to 'latest'...")
loaderVersionType.value = 'latest'
}
if (loaderVersionType.value === 'stable') {
const stable = loaderVersionsData.value.find((v) => v.stable)
selectedLoaderVersion.value = stable?.id ?? loaderVersionsData.value[0]?.id ?? null