mirror of
https://github.com/lone-cloud/gerbil
synced 2026-06-04 04:04:44 -07:00
fallback to the first available backend when switching kcpp binaries and the current backend is unsupported
This commit is contained in:
parent
1f7bf6f6f5
commit
f390fc5bd4
1 changed files with 20 additions and 1 deletions
|
|
@ -44,6 +44,21 @@ export const BackendSelector = () => {
|
||||||
return cleanup;
|
return cleanup;
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (availableBackends.length > 0 && backend) {
|
||||||
|
const isBackendAvailable = availableBackends.some(
|
||||||
|
(b) => b.value === backend && !b.disabled
|
||||||
|
);
|
||||||
|
|
||||||
|
if (!isBackendAvailable) {
|
||||||
|
const fallbackBackend = availableBackends.find((b) => !b.disabled);
|
||||||
|
if (fallbackBackend) {
|
||||||
|
handleBackendChange(fallbackBackend.value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, [availableBackends, backend, handleBackendChange]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<Group justify="space-between" align="flex-start" mb="xs">
|
<Group justify="space-between" align="flex-start" mb="xs">
|
||||||
|
|
@ -58,7 +73,11 @@ export const BackendSelector = () => {
|
||||||
placeholder={
|
placeholder={
|
||||||
isLoadingBackends ? 'Loading backends...' : 'Select backend'
|
isLoadingBackends ? 'Loading backends...' : 'Select backend'
|
||||||
}
|
}
|
||||||
value={backend}
|
value={
|
||||||
|
availableBackends.some((b) => b.value === backend && !b.disabled)
|
||||||
|
? backend
|
||||||
|
: null
|
||||||
|
}
|
||||||
onChange={(value) => {
|
onChange={(value) => {
|
||||||
if (value) {
|
if (value) {
|
||||||
handleBackendChange(value);
|
handleBackendChange(value);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue