diff --git a/web/app/components/probeshell/main-config-card.tsx b/web/app/components/probeshell/main-config-card.tsx index a8374d5e..46cf0c3b 100644 --- a/web/app/components/probeshell/main-config-card.tsx +++ b/web/app/components/probeshell/main-config-card.tsx @@ -9,6 +9,7 @@ import { useTranslation } from "react-i18next"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { Field, FieldContent, FieldError, FieldLabel } from "@/components/ui/field"; import { Input } from "@/components/ui/input"; +import { Label } from "@/components/ui/label"; import { Select, SelectContent, @@ -17,7 +18,7 @@ import { SelectValue, } from "@/components/ui/select"; import { Separator } from "@/components/ui/separator"; -import { SwitchField } from "@/components/ui/switch-field"; +import { Switch } from "@/components/ui/switch"; import { Tooltip, TooltipContent, TooltipTrigger } from "@/components/ui/tooltip"; // Hoisted static JSX to avoid recreation on each render (rendering-hoist-jsx) @@ -209,35 +210,99 @@ export default function MainConfigCard({ form, servers }: MainConfigCardProps) { /> )}
- ( +
+ + + + + + + +

{t("common:debug.description")}

+
+
+
+ )} /> - ( +
+ + + + + + + +

{t("common:byPassJavaModule.description")}

+
+
+
+ )} /> - ( +
+ + + + + + + +

{t("common:lambdaSuffix.description")}

+
+
+
+ )} /> - ( +
+ + + + + + + +

{t("common:shrink.description")}

+
+
+
+ )} /> - ( +
+ + + + + + + +

{t("common:staticInitialize.description")}

+
+
+
+ )} />
{isBodyMethod && needParam && ( diff --git a/web/app/components/ui/switch-field.tsx b/web/app/components/ui/switch-field.tsx deleted file mode 100644 index c49f4690..00000000 --- a/web/app/components/ui/switch-field.tsx +++ /dev/null @@ -1,45 +0,0 @@ -import { InfoIcon } from "lucide-react"; -import { memo } from "react"; -import { type Control, Controller, type FieldValues, type Path } from "react-hook-form"; - -import { Label } from "@/components/ui/label"; -import { Switch } from "@/components/ui/switch"; -import { Tooltip, TooltipContent, TooltipTrigger } from "@/components/ui/tooltip"; - -// Hoisted static JSX to avoid recreation on each render -const infoIcon = ; - -interface SwitchFieldProps { - readonly name: Path; - readonly label: string; - readonly description: string; - readonly control: Control; -} - -function SwitchFieldInner({ - name, - label, - description, - control, -}: SwitchFieldProps) { - return ( - ( -
- - - - {infoIcon} - -

{description}

-
-
-
- )} - /> - ); -} - -export const SwitchField = memo(SwitchFieldInner) as typeof SwitchFieldInner; diff --git a/web/app/routes/probeshell.tsx b/web/app/routes/probeshell.tsx index c419a0c2..b96ad00e 100644 --- a/web/app/routes/probeshell.tsx +++ b/web/app/routes/probeshell.tsx @@ -53,6 +53,9 @@ export default function ProbeShellGenerator() { reqParamName: "", seconds: 5, sleepServer: "Tomcat", + debug: false, + byPassJavaModule: false, + lambdaSuffix: false, shrink: true, staticInitialize: true, },