[Desktop] Use fallback mirrors for China users (#2424)

This commit is contained in:
Chenlei Hu
2025-02-05 10:51:32 -05:00
committed by GitHub
parent 0af4768dd2
commit 6b64b74f6c
3 changed files with 66 additions and 2 deletions

View File

@@ -41,11 +41,12 @@ import {
} from '@comfyorg/comfyui-electron-types'
import Divider from 'primevue/divider'
import Panel from 'primevue/panel'
import { ModelRef, computed, ref } from 'vue'
import { ModelRef, computed, onMounted, ref } from 'vue'
import MirrorItem from '@/components/install/mirror/MirrorItem.vue'
import { PYPI_MIRROR, PYTHON_MIRROR, UVMirror } from '@/constants/uvMirrors'
import { t } from '@/i18n'
import { isInChina } from '@/utils/networkUtil'
import { ValidationState, mergeValidationStates } from '@/utils/validationUtil'
const showMirrorInputs = ref(false)
@@ -101,4 +102,13 @@ const validationStateTooltip = computed(() => {
return t('install.settings.checkingMirrors')
}
})
onMounted(async () => {
// Check if user is in China and set fallback mirrors directly
if (await isInChina()) {
for (const [item, modelValue] of mirrors.value) {
modelValue.value = item.fallbackMirror
}
}
})
</script>

View File

@@ -22,6 +22,7 @@
<script setup lang="ts">
import { computed, onMounted, ref, watch } from 'vue'
import UrlInput from '@/components/common/UrlInput.vue'
import { UVMirror } from '@/constants/uvMirrors'
import { normalizeI18nKey } from '@/utils/formatUtil'
import { checkMirrorReachable } from '@/utils/networkUtil'
@@ -43,7 +44,10 @@ const normalizedSettingId = computed(() => {
})
onMounted(() => {
modelValue.value = item.mirror
// Set mirror value if not already set
if (!modelValue.value) {
modelValue.value = item.mirror
}
})
watch(validationState, (newState) => {