import React, { useState, useCallback, useEffect } from "react"; import { ITeamFormData } from "services/entities/teams"; import Modal from "components/Modal"; import Button from "components/buttons/Button"; import InfoBanner from "components/InfoBanner/InfoBanner"; // @ts-ignore import InputField from "components/forms/fields/InputField"; const baseClass = "create-team-modal"; interface ICreateTeamModalProps { onCancel: () => void; onSubmit: (formData: ITeamFormData) => void; backendValidators: { [key: string]: string }; isUpdatingTeams: boolean; } const CreateTeamModal = ({ onCancel, onSubmit, backendValidators, isUpdatingTeams, }: ICreateTeamModalProps): JSX.Element => { const [name, setName] = useState(""); const [errors, setErrors] = useState<{ [key: string]: string }>( backendValidators ); useEffect(() => { setErrors(backendValidators); }, [backendValidators]); const onInputChange = useCallback( (value: string) => { setName(value); setErrors({}); }, [setName] ); const onFormSubmit = useCallback( (evt) => { evt.preventDefault(); onSubmit({ name, }); }, [onSubmit, name] ); return (
To organize your hosts, create a team, like “Workstations,” “Servers,” or “Servers (canary)”.
); }; export default CreateTeamModal;