fix: backend version list

This commit is contained in:
jialin
2026-02-03 16:05:43 +08:00
parent 9e7f2261f3
commit cb5413c2ce
+12 -8
View File
@@ -9,7 +9,6 @@ import styled from 'styled-components';
import { backendTipsList } from '../config'; import { backendTipsList } from '../config';
import { backendOptionsMap } from '../config/backend-parameters'; import { backendOptionsMap } from '../config/backend-parameters';
import { useFormContext } from '../config/form-context'; import { useFormContext } from '../config/form-context';
import { BackendOption } from '../config/types';
const CaretDownWrapper = styled.span` const CaretDownWrapper = styled.span`
display: flex; display: flex;
@@ -28,12 +27,15 @@ const BackendFields: React.FC = () => {
const navigate = useNavigate(); const navigate = useNavigate();
const { getRuleMessage } = useAppUtils(); const { getRuleMessage } = useAppUtils();
const form = Form.useFormInstance(); const form = Form.useFormInstance();
const { action, onValuesChange, backendOptions, onBackendChange } = const {
useFormContext(); action,
onValuesChange,
backendOptions,
flatBackendOptions,
onBackendChange
} = useFormContext();
const backend = Form.useWatch('backend', form); const backend = Form.useWatch('backend', form);
const [showDeprecated, setShowDeprecated] = React.useState<boolean>(false); const [showDeprecated, setShowDeprecated] = React.useState<boolean>(false);
const [selectedBackend, setSelectedBackend] =
React.useState<BackendOption | null>(null);
const handleBackendVersionOnChange = (value: any, option: any) => { const handleBackendVersionOnChange = (value: any, option: any) => {
if (Object.keys(option.data.env || {}).length > 0) { if (Object.keys(option.data.env || {}).length > 0) {
@@ -56,6 +58,10 @@ const BackendFields: React.FC = () => {
}; };
} }
const selectedBackend = flatBackendOptions.find(
(item) => item.value === backend
);
const versions = selectedBackend?.versions || []; const versions = selectedBackend?.versions || [];
// if it's a custom backend, // if it's a custom backend,
@@ -87,7 +93,7 @@ const BackendFields: React.FC = () => {
custom: customVersions, custom: customVersions,
deprecated: deprecatedVersions deprecated: deprecatedVersions
}; };
}, [backend, selectedBackend, intl]); }, [backend, flatBackendOptions, intl]);
const backendVersionLabelRender = (option: any) => { const backendVersionLabelRender = (option: any) => {
return option.title; return option.title;
@@ -114,7 +120,6 @@ const BackendFields: React.FC = () => {
}; };
const handleOnBackendChange = (value: any, option: any) => { const handleOnBackendChange = (value: any, option: any) => {
console.log('Selected backend value:', value, option);
form.setFieldsValue({ form.setFieldsValue({
backend: value backend: value
}); });
@@ -122,7 +127,6 @@ const BackendFields: React.FC = () => {
...(option.default_env || {}) ...(option.default_env || {})
}); });
onBackendChange?.(value, option); onBackendChange?.(value, option);
setSelectedBackend(option);
}; };
const renderDeprecatedVersionOptions = (values: any[]) => { const renderDeprecatedVersionOptions = (values: any[]) => {