import React, { useContext } from "react"; import { Modal, Form, Select, InputNumber, Switch } from "antd"; import { ControlContext, useRoles } from "@clusterio/web_ui"; import * as messages from "../../messages"; export default function RoleMappingForm({ open, setOpen, initial }: any) { const control = useContext(ControlContext); const plugin = control.plugins.get("exp_groups") as any; const [groups] = plugin.useGroups(); const [roles] = useRoles(); const [form] = Form.useForm(); function submit(values: any) { const record = new messages.RoleMappingRecord( initial?.id, new Set(values.roleIds), values.groupId, values.priority, values.enabled, ); if (initial) { control.send(new messages.RoleMappingUpdateRequest(record)); } else { control.send(new messages.RoleMappingCreateRequest( values.roleIds, values.groupId, values.priority, values.enabled, )); } setOpen(false); } return setOpen(false)} onOk={() => form.submit()} >
; }