import { useTranslation } from "react-i18next"; import { Alert, Form, type FormInstance, Input, Select } from "antd"; import { createSchemaFieldRule } from "antd-zod"; import { z } from "zod"; import { validDomainName } from "@/utils/validators"; type DeployNodeConfigFormUniCloudWebHostConfigFieldValues = Nullish<{ spaceProvider: string; spaceId: string; domain: string; }>; export type DeployNodeConfigFormUniCloudWebHostConfigProps = { form: FormInstance; formName: string; disabled?: boolean; initialValues?: DeployNodeConfigFormUniCloudWebHostConfigFieldValues; onValuesChange?: (values: DeployNodeConfigFormUniCloudWebHostConfigFieldValues) => void; }; const initFormModel = (): DeployNodeConfigFormUniCloudWebHostConfigFieldValues => { return { spaceProvider: "tencent", spaceId: "", domain: "", }; }; const DeployNodeConfigFormUniCloudWebHostConfig = ({ form: formInst, formName, disabled, initialValues, onValuesChange, }: DeployNodeConfigFormUniCloudWebHostConfigProps) => { const { t } = useTranslation(); const formSchema = z.object({ spaceProvider: z.string().trim().nonempty(t("workflow_node.deploy.form.unicloud_webhost_space_provider.placeholder")), spaceId: z.string().trim().nonempty(t("workflow_node.deploy.form.unicloud_webhost_space_id.placeholder")), domain: z.string().refine((v) => validDomainName(v), t("common.errmsg.domain_invalid")), }); const formRule = createSchemaFieldRule(formSchema); const handleFormChange = (_: unknown, values: z.infer) => { onValuesChange?.(values); }; return (
} />
); }; export default DeployNodeConfigFormUniCloudWebHostConfig;