import { useIntl } from "react-intl"; import { ProForm, type ProFormInstance, ProFormText, } from "@ant-design/pro-components"; import { message } from "antd"; import { post } from "../../request"; import type { IApiResponseChannel } from "../../api/Channel"; import ChannelTypeSelect from "./ChannelTypeSelect"; import LangSelect from "../general/LangSelect"; import { useRef } from "react"; interface IFormData { name: string; type: string; lang: string; studio: string; } interface IWidget { studio?: string; onSuccess?: Function; } const ChannelCreateWidget = ({ studio, onSuccess }: IWidget) => { const intl = useIntl(); const formRef = useRef(undefined); return ( formRef={formRef} onFinish={async (values: IFormData) => { if (typeof studio === "undefined") { return; } values.studio = studio; const res: IApiResponseChannel = await post(`/v2/channel`, values); if (res.ok) { message.success(intl.formatMessage({ id: "flashes.success" })); if (typeof onSuccess !== "undefined") { onSuccess(); formRef.current?.resetFields(["name"]); } } else { message.error(res.message); } }} > ); }; export default ChannelCreateWidget;