refactor: simplify server options

This commit is contained in:
ReaJason
2025-08-13 23:53:40 +08:00
parent 89ee25fd1a
commit d8851ba83e
31 changed files with 171 additions and 508 deletions
+8
View File
@@ -6,6 +6,7 @@ import { ShellToolType } from "./shell";
export const formSchema = yup.object({
server: yup.string().required().min(1),
serverVersion: yup.string().required().min(1),
targetJdkVersion: yup.string().optional(),
debug: yup.boolean().optional(),
bypassJavaModule: yup.boolean().optional(),
@@ -59,6 +60,7 @@ export const useYupValidationResolver = (validationSchema: yup.ObjectSchema<any>
const urlPattern: keyof FormSchema = "urlPattern";
const shellClassBase64: keyof FormSchema = "shellClassBase64";
const serverVersion: keyof FormSchema = "serverVersion";
const errors = {} as any;
if (urlPatternIsNeeded(values?.shellType) && isInvalidUrl(values?.urlPattern)) {
@@ -73,6 +75,12 @@ export const useYupValidationResolver = (validationSchema: yup.ObjectSchema<any>
message: t("tips.customShellClass"),
};
}
if (values.server === "TongWeb" && values.shellType === "Valve" && values.serverVersion === "unknown") {
errors[serverVersion] = {
type: "custom",
message: t("tips.serverVersion"),
};
}
return {
values,
+1
View File
@@ -1,5 +1,6 @@
export interface ShellConfig {
server: string;
serverVersion: string;
shellTool: string;
shellType: string;
targetJreVersion?: string;