您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 

67 行
2.2 KiB

  1. "use client";
  2. import Stack from "@mui/material/Stack";
  3. import Box from "@mui/material/Box";
  4. import Card from "@mui/material/Card";
  5. import CardContent from "@mui/material/CardContent";
  6. import Grid from "@mui/material/Grid";
  7. import TextField from "@mui/material/TextField";
  8. import Typography from "@mui/material/Typography";
  9. import { useTranslation } from "react-i18next";
  10. import CardActions from "@mui/material/CardActions";
  11. import RestartAlt from "@mui/icons-material/RestartAlt";
  12. import Button from "@mui/material/Button";
  13. import { Controller, useFormContext } from "react-hook-form";
  14. import { FormControl, InputLabel, MenuItem, Select } from "@mui/material";
  15. import { useCallback } from "react";
  16. import { CreateTeamInputs } from "@/app/api/team/actions";
  17. const TeamInfo: React.FC = (
  18. ) => {
  19. const { t } = useTranslation();
  20. const {
  21. register,
  22. formState: { errors, defaultValues },
  23. control,
  24. reset,
  25. resetField,
  26. setValue,
  27. } = useFormContext<CreateTeamInputs>();
  28. const resetTeam = useCallback(() => {
  29. console.log(defaultValues);
  30. if (defaultValues !== undefined) {
  31. resetField("description");
  32. }
  33. }, [defaultValues]);
  34. return (
  35. <>
  36. <Card sx={{ display: "block" }}>
  37. <CardContent component={Stack} spacing={4}>
  38. <Box>
  39. <Typography variant="overline" display="block" marginBlockEnd={1}>
  40. {t("Team Info")}
  41. </Typography>
  42. <Grid container spacing={2} columns={{ xs: 6, sm: 12 }}>
  43. <Grid item xs={12}>
  44. <TextField
  45. label={t("Team Description")}
  46. fullWidth
  47. multiline
  48. rows={4}
  49. {...register("description", {
  50. required: true,
  51. })}
  52. error={Boolean(errors.description)}
  53. helperText={Boolean(errors.description) && (errors.description?.message ? t(errors.description.message) : t("Please input correct description"))}
  54. />
  55. </Grid>
  56. </Grid>
  57. </Box>
  58. </CardContent>
  59. </Card>
  60. </>
  61. );
  62. };
  63. export default TeamInfo;