import { useTranslation } from "react-i18next"; import { Form, Input, type FormInstance } from "antd"; import { createSchemaFieldRule } from "antd-zod"; import { z } from "zod"; import { useAntdForm } from "@/hooks"; import { type WebhookAccessConfig } from "@/domain/access"; type AccessEditFormWebhookConfigFieldValues = Partial; export type AccessEditFormWebhookConfigProps = { form: FormInstance; formName: string; disabled?: boolean; initialValues?: AccessEditFormWebhookConfigFieldValues; onValuesChange?: (values: AccessEditFormWebhookConfigFieldValues) => void; }; const initFormModel = (): AccessEditFormWebhookConfigFieldValues => { return { url: "", }; }; const AccessEditFormWebhookConfig = ({ form, formName, disabled, initialValues, onValuesChange }: AccessEditFormWebhookConfigProps) => { const { t } = useTranslation(); const formSchema = z.object({ url: z.string({ message: t("access.form.webhook_url.placeholder") }).url(t("common.errmsg.url_invalid")), }); const formRule = createSchemaFieldRule(formSchema); const { form: formInst, formProps } = useAntdForm>({ form: form, initialValues: initialValues ?? initFormModel(), }); const handleFormChange = (_: unknown, values: z.infer) => { onValuesChange?.(values as AccessEditFormWebhookConfigFieldValues); }; return (
); }; export default AccessEditFormWebhookConfig;