diff --git a/frontend/src/components/CreateBoard/SubTeamsTab/TeamSubTeamsConfigurations.tsx b/frontend/src/components/CreateBoard/SubTeamsTab/TeamSubTeamsConfigurations.tsx index b4d8624c4..e9b2abb92 100644 --- a/frontend/src/components/CreateBoard/SubTeamsTab/TeamSubTeamsConfigurations.tsx +++ b/frontend/src/components/CreateBoard/SubTeamsTab/TeamSubTeamsConfigurations.tsx @@ -30,6 +30,7 @@ const TeamSubTeamsConfigurations: React.FC = () => { const setBoardData = useSetRecoilState(createBoardDataState); const setToastState = useSetRecoilState(toastState); const [haveError, setHaveError] = useRecoilState(createBoardError); + const MIN_MEMBERS = 4; /** * States @@ -52,13 +53,13 @@ const TeamSubTeamsConfigurations: React.FC = () => { * If no, redirect to previous router and show a toastr */ useEffect(() => { - if (data && !data[0]) { + if ((data && !data[0]) || team?.users.length < MIN_MEMBERS) { setHaveError(true); } else if (data && data[0]) { setTeam(data[0]); setBoardData((prev) => ({ ...prev, board: { ...prev.board, team: data[0]._id } })); } - }, [data, setBoardData, setHaveError, setToastState]); + }, [data, setBoardData, setHaveError, setToastState, team?.users.length]); /** * Use Effect to validate if staheolders return data diff --git a/frontend/src/hooks/useCreateBoard.tsx b/frontend/src/hooks/useCreateBoard.tsx index dbe4d8f7f..3aa5f4bb2 100644 --- a/frontend/src/hooks/useCreateBoard.tsx +++ b/frontend/src/hooks/useCreateBoard.tsx @@ -15,6 +15,7 @@ const useCreateBoard = (team: Team, stakeHolders: string[]) => { const { board } = createBoardData; const minTeams = 2; + const MIN_MEMBERS = 4; // const now = new Date(); // const last3Months = new Date().setMonth(now.getMonth() - 3); @@ -57,9 +58,10 @@ const useCreateBoard = (team: Team, stakeHolders: string[]) => { const generateSubBoards = useCallback( (maxTeams: number, splitedUsers: BoardUserToAdd[][], subBoards: BoardToAdd[]) => { - if (splitedUsers) { + if (splitedUsers && team.users.length >= MIN_MEMBERS) { new Array(maxTeams).fill(0).forEach((_, i) => { const newBoard = generateSubBoard(i + 1); + console.log(splitedUsers); splitedUsers[i][Math.floor(Math.random() * splitedUsers[i].length)].role = BoardUserRoles.RESPONSIBLE; newBoard.users = splitedUsers[i];