// @flow import React from "react"; import { translate } from "react-i18next"; import { Checkbox, InputField } from "../../components/forms"; import TypeSelector from "./TypeSelector"; import type { Permission } from "../types/Permissions"; import { SubmitButton } from "../../components/buttons"; type Props = { t: string => string, createPermission: (permission: Permission) => void, loading: boolean }; type State = { name: string, type: string, groupPermission: boolean }; class CreatePermissionForm extends React.Component { constructor(props: Props) { super(props); this.state = { name: "", type: "READ", groupPermission: false }; } render() { const { t, loading } = this.props; const { name, type, groupPermission } = this.state; return (

{t("add-permission.add-permission-heading")}

{t("permission.name")}
{t("permission.group-permission")}
{t("permission.type")}
); } submit = () => { this.props.createPermission({ name: this.state.name, type: this.state.type, groupPermission: this.state.groupPermission }); }; handleTypeChange = (type: string) => { this.setState({ type: type }); }; handleNameChange = (name: string) => { this.setState({ name: name }); }; handleGroupPermissionChange = (groupPermission: boolean) => { this.setState({ groupPermission: groupPermission }); }; } export default translate("permissions")(CreatePermissionForm);