diff --git a/frontend/src/presentation/components/QuestionCard.tsx b/frontend/src/presentation/components/QuestionCard.tsx deleted file mode 100644 index b0377ae6dd..0000000000 --- a/frontend/src/presentation/components/QuestionCard.tsx +++ /dev/null @@ -1,51 +0,0 @@ -// QuestionCard.tsx - -import React from "react"; -import { Card, Tag } from "antd"; -import { Question } from "../../domain/entities/Question"; -import styles from "./QuestionCard.module.css"; -import { getDifficultyColor } from "presentation/utils/QuestionUtils"; - -interface QuestionCardProps { - question: Question; - isSelected: boolean; - onClick: () => void; - isNarrow: boolean; -} - -export const QuestionCard: React.FC = ({ - question, - isSelected, - onClick, - isNarrow, -}) => { - return ( - -
-

{question.title}

-
- -
- - {question.difficulty} - -
- {question.categories.map((category) => ( - - {category.name} - - ))} -
-
-
- ); -}; diff --git a/frontend/src/presentation/components/AuthLogo.module.css b/frontend/src/presentation/components/auth/AuthLogo.module.css similarity index 100% rename from frontend/src/presentation/components/AuthLogo.module.css rename to frontend/src/presentation/components/auth/AuthLogo.module.css diff --git a/frontend/src/presentation/components/AuthLogo.tsx b/frontend/src/presentation/components/auth/AuthLogo.tsx similarity index 60% rename from frontend/src/presentation/components/AuthLogo.tsx rename to frontend/src/presentation/components/auth/AuthLogo.tsx index 50363b2347..3905a86421 100644 --- a/frontend/src/presentation/components/AuthLogo.tsx +++ b/frontend/src/presentation/components/auth/AuthLogo.tsx @@ -1,13 +1,13 @@ -import styles from './AuthLogo.module.css'; +import styles from "./AuthLogo.module.css"; import { Card } from "antd"; -import PeerPrepLogo from '../../assets/images/PeerPrepLogo.png'; -import { useLocation } from 'react-router-dom'; -import { MESSAGES } from 'presentation/utils/constants'; -import { SignInSignUpButton } from './buttons/SignInSignUpButton'; +import PeerPrepLogo from "../../../assets/images/PeerPrepLogo.png" +import { useLocation } from "react-router-dom"; +import { MESSAGES } from "presentation/utils/constants"; +import { SignInSignUpButton } from "../common/buttons/SignInSignUpButton"; export const AuthLogo: React.FC = () => { const location = useLocation(); - const isRegister = location.pathname.includes('register'); + const isRegister = location.pathname.includes("register"); return (
@@ -15,13 +15,13 @@ export const AuthLogo: React.FC = () => {
PeerPrep Logo
- +
-

{isRegister ? MESSAGES.SIGN_IN_PROMPT : MESSAGES.SIGN_UP_PROMPT}

+

{isRegister ? MESSAGES.SIGN_IN_PROMPT : MESSAGES.SIGN_UP_PROMPT}

); -}; \ No newline at end of file +}; diff --git a/frontend/src/presentation/components/LoginForm/LoginForm.module.css b/frontend/src/presentation/components/auth/LoginForm/LoginForm.module.css similarity index 100% rename from frontend/src/presentation/components/LoginForm/LoginForm.module.css rename to frontend/src/presentation/components/auth/LoginForm/LoginForm.module.css diff --git a/frontend/src/presentation/components/LoginForm/LoginForm.tsx b/frontend/src/presentation/components/auth/LoginForm/LoginForm.tsx similarity index 100% rename from frontend/src/presentation/components/LoginForm/LoginForm.tsx rename to frontend/src/presentation/components/auth/LoginForm/LoginForm.tsx diff --git a/frontend/src/presentation/components/SignUpForm/SignUpForm.module.css b/frontend/src/presentation/components/auth/SignUpForm/SignUpForm.module.css similarity index 100% rename from frontend/src/presentation/components/SignUpForm/SignUpForm.module.css rename to frontend/src/presentation/components/auth/SignUpForm/SignUpForm.module.css diff --git a/frontend/src/presentation/components/SignUpForm/SignUpForm.tsx b/frontend/src/presentation/components/auth/SignUpForm/SignUpForm.tsx similarity index 97% rename from frontend/src/presentation/components/SignUpForm/SignUpForm.tsx rename to frontend/src/presentation/components/auth/SignUpForm/SignUpForm.tsx index ee09e28440..91c337bf1c 100644 --- a/frontend/src/presentation/components/SignUpForm/SignUpForm.tsx +++ b/frontend/src/presentation/components/auth/SignUpForm/SignUpForm.tsx @@ -9,7 +9,7 @@ import { useForm } from "antd/es/form/Form"; import { IUserRegisterInput } from "domain/users/IUser"; import { toast } from "react-toastify"; import { getEqualityValidator, getPasswordStrengthValidator, validateMessages } from "presentation/utils/formUtils"; -import { PasswordInputLabel } from "../common/PasswordInputLabel/PasswordInputLabel"; +import { PasswordInputLabel } from "presentation/components/common/PasswordInputLabel/PasswordInputLabel"; export const SignUpForm: React.FC = () => { const [form] = useForm(); diff --git a/frontend/src/presentation/components/SearchBar.module.css b/frontend/src/presentation/components/common/SearchBar.module.css similarity index 100% rename from frontend/src/presentation/components/SearchBar.module.css rename to frontend/src/presentation/components/common/SearchBar.module.css diff --git a/frontend/src/presentation/components/SearchBar.tsx b/frontend/src/presentation/components/common/SearchBar.tsx similarity index 100% rename from frontend/src/presentation/components/SearchBar.tsx rename to frontend/src/presentation/components/common/SearchBar.tsx diff --git a/frontend/src/presentation/components/buttons/AddQuestionButton.module.css b/frontend/src/presentation/components/common/buttons/AddQuestionButton.module.css similarity index 100% rename from frontend/src/presentation/components/buttons/AddQuestionButton.module.css rename to frontend/src/presentation/components/common/buttons/AddQuestionButton.module.css diff --git a/frontend/src/presentation/components/buttons/AddQuestionButton.tsx b/frontend/src/presentation/components/common/buttons/AddQuestionButton.tsx similarity index 100% rename from frontend/src/presentation/components/buttons/AddQuestionButton.tsx rename to frontend/src/presentation/components/common/buttons/AddQuestionButton.tsx diff --git a/frontend/src/presentation/components/buttons/FindPeerButton.module.css b/frontend/src/presentation/components/common/buttons/FindPeerButton.module.css similarity index 100% rename from frontend/src/presentation/components/buttons/FindPeerButton.module.css rename to frontend/src/presentation/components/common/buttons/FindPeerButton.module.css diff --git a/frontend/src/presentation/components/buttons/FindPeerButton.tsx b/frontend/src/presentation/components/common/buttons/FindPeerButton.tsx similarity index 100% rename from frontend/src/presentation/components/buttons/FindPeerButton.tsx rename to frontend/src/presentation/components/common/buttons/FindPeerButton.tsx diff --git a/frontend/src/presentation/components/buttons/MatchingFloatingButton.tsx b/frontend/src/presentation/components/common/buttons/MatchingFloatingButton.tsx similarity index 100% rename from frontend/src/presentation/components/buttons/MatchingFloatingButton.tsx rename to frontend/src/presentation/components/common/buttons/MatchingFloatingButton.tsx diff --git a/frontend/src/presentation/components/buttons/SignInSignUpButton.module.css b/frontend/src/presentation/components/common/buttons/SignInSignUpButton.module.css similarity index 100% rename from frontend/src/presentation/components/buttons/SignInSignUpButton.module.css rename to frontend/src/presentation/components/common/buttons/SignInSignUpButton.module.css diff --git a/frontend/src/presentation/components/buttons/SignInSignUpButton.tsx b/frontend/src/presentation/components/common/buttons/SignInSignUpButton.tsx similarity index 100% rename from frontend/src/presentation/components/buttons/SignInSignUpButton.tsx rename to frontend/src/presentation/components/common/buttons/SignInSignUpButton.tsx diff --git a/frontend/src/presentation/components/buttons/ToggleButton.module.css b/frontend/src/presentation/components/common/buttons/ToggleButton.module.css similarity index 100% rename from frontend/src/presentation/components/buttons/ToggleButton.module.css rename to frontend/src/presentation/components/common/buttons/ToggleButton.module.css diff --git a/frontend/src/presentation/components/buttons/ToggleButton.tsx b/frontend/src/presentation/components/common/buttons/ToggleButton.tsx similarity index 100% rename from frontend/src/presentation/components/buttons/ToggleButton.tsx rename to frontend/src/presentation/components/common/buttons/ToggleButton.tsx diff --git a/frontend/src/presentation/components/cards/UserCard.module.css b/frontend/src/presentation/components/common/cards/UserCard.module.css similarity index 100% rename from frontend/src/presentation/components/cards/UserCard.module.css rename to frontend/src/presentation/components/common/cards/UserCard.module.css diff --git a/frontend/src/presentation/components/cards/UserCard.tsx b/frontend/src/presentation/components/common/cards/UserCard.tsx similarity index 100% rename from frontend/src/presentation/components/cards/UserCard.tsx rename to frontend/src/presentation/components/common/cards/UserCard.tsx diff --git a/frontend/src/presentation/components/modals/MatchingModal.module.css b/frontend/src/presentation/components/common/modals/MatchingModal.module.css similarity index 100% rename from frontend/src/presentation/components/modals/MatchingModal.module.css rename to frontend/src/presentation/components/common/modals/MatchingModal.module.css diff --git a/frontend/src/presentation/components/modals/MatchingModal.tsx b/frontend/src/presentation/components/common/modals/MatchingModal.tsx similarity index 100% rename from frontend/src/presentation/components/modals/MatchingModal.tsx rename to frontend/src/presentation/components/common/modals/MatchingModal.tsx diff --git a/frontend/src/presentation/components/LandingComponent.module.css b/frontend/src/presentation/components/home/LandingComponent.module.css similarity index 100% rename from frontend/src/presentation/components/LandingComponent.module.css rename to frontend/src/presentation/components/home/LandingComponent.module.css diff --git a/frontend/src/presentation/components/LandingComponent.tsx b/frontend/src/presentation/components/home/LandingComponent.tsx similarity index 90% rename from frontend/src/presentation/components/LandingComponent.tsx rename to frontend/src/presentation/components/home/LandingComponent.tsx index 8efc71e652..ec8e3c2aed 100644 --- a/frontend/src/presentation/components/LandingComponent.tsx +++ b/frontend/src/presentation/components/home/LandingComponent.tsx @@ -1,9 +1,9 @@ import React from "react"; import { Card } from "antd"; import styles from "./LandingComponent.module.css"; -import { AddQuestionButton } from "./buttons/AddQuestionButton"; +import { AddQuestionButton } from "../common/buttons/AddQuestionButton"; import { LANDING_CARD_TEXT } from "presentation/utils/constants"; -import { UserCard } from "./cards/UserCard"; +import { UserCard } from "../common/cards/UserCard"; interface LandingComponentProps { onAddQuestion?: () => void; diff --git a/frontend/src/presentation/components/ProfileContainer.module.css b/frontend/src/presentation/components/home/ProfileContainer.module.css similarity index 100% rename from frontend/src/presentation/components/ProfileContainer.module.css rename to frontend/src/presentation/components/home/ProfileContainer.module.css diff --git a/frontend/src/presentation/components/ProfileContainer.tsx b/frontend/src/presentation/components/home/ProfileContainer.tsx similarity index 93% rename from frontend/src/presentation/components/ProfileContainer.tsx rename to frontend/src/presentation/components/home/ProfileContainer.tsx index 25442021d4..4472feea6b 100644 --- a/frontend/src/presentation/components/ProfileContainer.tsx +++ b/frontend/src/presentation/components/home/ProfileContainer.tsx @@ -1,12 +1,12 @@ import styles from "./ProfileContainer.module.css"; import React, { useState } from "react"; -import SampleProfilePicture from "../../assets/images/sample-profile-picture.jpg"; +import SampleProfilePicture from "../../../assets/images/sample-profile-picture.jpg"; import { EditOutlined, MailOutlined, UnorderedListOutlined, UserOutlined } from "@ant-design/icons"; import { useAuth } from "domain/context/AuthContext"; import { Modal } from "antd"; -import { UpdateProfileForm } from "./UpdateProfileForm/UpdateProfileForm"; +import { UpdateProfileForm } from "../users/UpdateProfileForm/UpdateProfileForm"; import { Link } from "react-router-dom"; -import { DeleteUserForm } from "./DeleteUserForm/DeleteUserForm"; +import { DeleteUserForm } from "../users/DeleteUserForm/DeleteUserForm"; export const ProfileContainer: React.FC = () => { const { user, isUserAdmin } = useAuth(); diff --git a/frontend/src/presentation/components/RecentAttemptsTable.module.css b/frontend/src/presentation/components/home/RecentAttemptsTable.module.css similarity index 100% rename from frontend/src/presentation/components/RecentAttemptsTable.module.css rename to frontend/src/presentation/components/home/RecentAttemptsTable.module.css diff --git a/frontend/src/presentation/components/RecentAttemptsTable.tsx b/frontend/src/presentation/components/home/RecentAttemptsTable.tsx similarity index 99% rename from frontend/src/presentation/components/RecentAttemptsTable.tsx rename to frontend/src/presentation/components/home/RecentAttemptsTable.tsx index a74bd3a86e..35cf064886 100644 --- a/frontend/src/presentation/components/RecentAttemptsTable.tsx +++ b/frontend/src/presentation/components/home/RecentAttemptsTable.tsx @@ -5,7 +5,7 @@ import type { ColumnsType } from 'antd/es/table'; import styles from "./RecentAttemptsTable.module.css"; import { HistoryEntry } from "domain/entities/HistoryEntry"; import { historyUseCases } from "domain/usecases/HistoryUseCases"; -import { ReactMarkdown } from "./common/ReactMarkdown"; +import { ReactMarkdown } from "../common/ReactMarkdown"; import TabPane from "antd/es/tabs/TabPane"; import { useNavigate } from "react-router-dom"; import { EyeOutlined, TeamOutlined } from "@ant-design/icons"; diff --git a/frontend/src/presentation/components/CategoriesDropdown.tsx b/frontend/src/presentation/components/questions/Category/CategoriesDropdown.tsx similarity index 100% rename from frontend/src/presentation/components/CategoriesDropdown.tsx rename to frontend/src/presentation/components/questions/Category/CategoriesDropdown.tsx diff --git a/frontend/src/presentation/components/Category/CategoryFilter.module.css b/frontend/src/presentation/components/questions/Category/CategoryFilter.module.css similarity index 100% rename from frontend/src/presentation/components/Category/CategoryFilter.module.css rename to frontend/src/presentation/components/questions/Category/CategoryFilter.module.css diff --git a/frontend/src/presentation/components/Category/CategoryFilter.tsx b/frontend/src/presentation/components/questions/Category/CategoryFilter.tsx similarity index 100% rename from frontend/src/presentation/components/Category/CategoryFilter.tsx rename to frontend/src/presentation/components/questions/Category/CategoryFilter.tsx diff --git a/frontend/src/presentation/components/SelectedCategories.module.css b/frontend/src/presentation/components/questions/Category/SelectedCategories.module.css similarity index 100% rename from frontend/src/presentation/components/SelectedCategories.module.css rename to frontend/src/presentation/components/questions/Category/SelectedCategories.module.css diff --git a/frontend/src/presentation/components/SelectedCategories.tsx b/frontend/src/presentation/components/questions/Category/SelectedCategories.tsx similarity index 100% rename from frontend/src/presentation/components/SelectedCategories.tsx rename to frontend/src/presentation/components/questions/Category/SelectedCategories.tsx diff --git a/frontend/src/presentation/components/EditQuestionForm/EditQuestionForm.tsx b/frontend/src/presentation/components/questions/EditQuestionForm/EditQuestionForm.tsx similarity index 99% rename from frontend/src/presentation/components/EditQuestionForm/EditQuestionForm.tsx rename to frontend/src/presentation/components/questions/EditQuestionForm/EditQuestionForm.tsx index b5fbc43299..628e8b2fef 100644 --- a/frontend/src/presentation/components/EditQuestionForm/EditQuestionForm.tsx +++ b/frontend/src/presentation/components/questions/EditQuestionForm/EditQuestionForm.tsx @@ -11,7 +11,7 @@ import { toast } from "react-toastify"; import { Category } from "domain/entities/Category"; import { questionUseCases } from "domain/usecases/QuestionUseCases"; import { difficultyOptions } from "presentation/utils/QuestionUtils"; -import { ReactMarkdown } from "../common/ReactMarkdown"; +import { ReactMarkdown } from "presentation/components/common/ReactMarkdown"; import axios from "axios"; import { validateMessages } from "presentation/utils/formUtils"; diff --git a/frontend/src/presentation/components/NewQuestionForm/NewQuestionForm.module.css b/frontend/src/presentation/components/questions/NewQuestionForm/NewQuestionForm.module.css similarity index 100% rename from frontend/src/presentation/components/NewQuestionForm/NewQuestionForm.module.css rename to frontend/src/presentation/components/questions/NewQuestionForm/NewQuestionForm.module.css diff --git a/frontend/src/presentation/components/NewQuestionForm/NewQuestionForm.tsx b/frontend/src/presentation/components/questions/NewQuestionForm/NewQuestionForm.tsx similarity index 98% rename from frontend/src/presentation/components/NewQuestionForm/NewQuestionForm.tsx rename to frontend/src/presentation/components/questions/NewQuestionForm/NewQuestionForm.tsx index b8beeeafd8..8c1705412f 100644 --- a/frontend/src/presentation/components/NewQuestionForm/NewQuestionForm.tsx +++ b/frontend/src/presentation/components/questions/NewQuestionForm/NewQuestionForm.tsx @@ -10,7 +10,7 @@ import { toast } from "react-toastify"; import { categoryUseCases } from "domain/usecases/CategoryUseCases"; import { Category } from "domain/entities/Category"; import { Question } from "domain/entities/Question"; -import { ReactMarkdown } from "../common/ReactMarkdown"; +import { ReactMarkdown } from "presentation/components/common/ReactMarkdown"; import axios from "axios"; import { validateMessages } from "presentation/utils/formUtils"; @@ -23,7 +23,7 @@ export const NewQuestionForm: React.FC = ({ onSubmit }) => const [categoryOptions, setCategoryOptions] = useState<{ value: string; label: string }[]>([]); const [categories, setCategories] = useState([]); const [loadingCategories, setLoadingCategories] = useState(false); - const [description, setDescription] = useState(initialQuestionInput?.description) + const [description, setDescription] = useState(initialQuestionInput?.description); const { FIELD_TITLE, FIELD_DIFFICULTY, FIELD_DESCRIPTION, FIELD_CATEGORIES, FIELD_URL } = QUESTION_FORM_FIELDS; diff --git a/frontend/src/presentation/components/QuestionDetail.module.css b/frontend/src/presentation/components/questions/QuestionDetail/QuestionDetail.module.css similarity index 100% rename from frontend/src/presentation/components/QuestionDetail.module.css rename to frontend/src/presentation/components/questions/QuestionDetail/QuestionDetail.module.css diff --git a/frontend/src/presentation/components/QuestionDetail.tsx b/frontend/src/presentation/components/questions/QuestionDetail/QuestionDetail.tsx similarity index 94% rename from frontend/src/presentation/components/QuestionDetail.tsx rename to frontend/src/presentation/components/questions/QuestionDetail/QuestionDetail.tsx index 4e134d207a..1ce4aa2c46 100644 --- a/frontend/src/presentation/components/QuestionDetail.tsx +++ b/frontend/src/presentation/components/questions/QuestionDetail/QuestionDetail.tsx @@ -1,16 +1,16 @@ // QuestionDetail.tsx import React, { useState } from "react"; import { Tag, Divider, Modal, Button, Card } from "antd"; -import { Question } from "../../domain/entities/Question"; -import { getDifficultyColor } from "../utils/QuestionUtils"; +import { Question } from "../../../../domain/entities/Question"; +import { getDifficultyColor } from "presentation/utils/QuestionUtils"; import styles from "./QuestionDetail.module.css"; -import { EditQuestionForm } from "./EditQuestionForm/EditQuestionForm"; -import { ReactMarkdown } from "./common/ReactMarkdown"; +import { EditQuestionForm } from "../EditQuestionForm/EditQuestionForm"; +import { ReactMarkdown } from "presentation/components/common/ReactMarkdown"; import { DeleteOutlined, EditOutlined, PlayCircleOutlined } from "@ant-design/icons"; import { questionUseCases } from "domain/usecases/QuestionUseCases"; import { toast } from "react-toastify"; import axios from "axios"; -import { UserCard } from "./cards/UserCard"; +import { UserCard } from "presentation/components/common/cards/UserCard"; interface QuestionDetailProps { question: Question; @@ -39,8 +39,6 @@ export const QuestionDetail: React.FC = ({ onEdit?.(updatedQuestion); }; - - const handleDeleteQuestion = async () => { try { await questionUseCases.deleteQuestion(question._id); diff --git a/frontend/src/presentation/components/QuestionCard.module.css b/frontend/src/presentation/components/questions/QuestionList/QuestionCard.module.css similarity index 100% rename from frontend/src/presentation/components/QuestionCard.module.css rename to frontend/src/presentation/components/questions/QuestionList/QuestionCard.module.css diff --git a/frontend/src/presentation/components/questions/QuestionList/QuestionCard.tsx b/frontend/src/presentation/components/questions/QuestionList/QuestionCard.tsx new file mode 100644 index 0000000000..0ba9075228 --- /dev/null +++ b/frontend/src/presentation/components/questions/QuestionList/QuestionCard.tsx @@ -0,0 +1,41 @@ +// QuestionCard.tsx + +import React from "react"; +import { Card, Tag } from "antd"; +import { Question } from "../../../../domain/entities/Question"; +import styles from "./QuestionCard.module.css"; +import { getDifficultyColor } from "presentation/utils/QuestionUtils"; + +interface QuestionCardProps { + question: Question; + isSelected: boolean; + onClick: () => void; + isNarrow: boolean; +} + +export const QuestionCard: React.FC = ({ question, isSelected, onClick, isNarrow }) => { + return ( + +
+

{question.title}

+
+ +
+ + {question.difficulty} + +
+ {question.categories.map((category) => ( + + {category.name} + + ))} +
+
+
+ ); +}; diff --git a/frontend/src/presentation/components/QuestionFilters.module.css b/frontend/src/presentation/components/questions/QuestionList/QuestionFilters.module.css similarity index 100% rename from frontend/src/presentation/components/QuestionFilters.module.css rename to frontend/src/presentation/components/questions/QuestionList/QuestionFilters.module.css diff --git a/frontend/src/presentation/components/QuestionFilters.tsx b/frontend/src/presentation/components/questions/QuestionList/QuestionFilters.tsx similarity index 98% rename from frontend/src/presentation/components/QuestionFilters.tsx rename to frontend/src/presentation/components/questions/QuestionList/QuestionFilters.tsx index 57f05cd0b2..8f5fefb873 100644 --- a/frontend/src/presentation/components/QuestionFilters.tsx +++ b/frontend/src/presentation/components/questions/QuestionList/QuestionFilters.tsx @@ -3,10 +3,10 @@ import { Dropdown, Button, Select, message } from "antd"; import { DownOutlined } from "@ant-design/icons"; import styles from "./QuestionFilters.module.css"; import { difficultyOptions } from "presentation/utils/QuestionUtils"; -import { CategoryFilter } from "./Category/CategoryFilter"; +import { CategoryFilter } from "../Category/CategoryFilter"; import { categoryUseCases } from "domain/usecases/CategoryUseCases"; import { Category } from "domain/entities/Category"; -import { SearchBar } from "./SearchBar"; +import { SearchBar } from "../../common/SearchBar"; interface QuestionFiltersProps { onFiltersChange?: (filters: { diff --git a/frontend/src/presentation/components/QuestionList.module.css b/frontend/src/presentation/components/questions/QuestionList/QuestionList.module.css similarity index 100% rename from frontend/src/presentation/components/QuestionList.module.css rename to frontend/src/presentation/components/questions/QuestionList/QuestionList.module.css diff --git a/frontend/src/presentation/components/QuestionList.tsx b/frontend/src/presentation/components/questions/QuestionList/QuestionList.tsx similarity index 98% rename from frontend/src/presentation/components/QuestionList.tsx rename to frontend/src/presentation/components/questions/QuestionList/QuestionList.tsx index 199a83174d..1b607e596d 100644 --- a/frontend/src/presentation/components/QuestionList.tsx +++ b/frontend/src/presentation/components/questions/QuestionList/QuestionList.tsx @@ -1,6 +1,6 @@ import React, { useState, useEffect } from "react"; import { List, Spin, Alert } from "antd"; -import { Question } from "../../domain/entities/Question"; +import { Question } from "../../../../domain/entities/Question"; import { QuestionCard } from "./QuestionCard"; import { QuestionFilters } from "./QuestionFilters"; import { Category } from "domain/entities/Category"; diff --git a/frontend/src/presentation/components/CodeEditor/CodeActionButtons.module.css b/frontend/src/presentation/components/room/codeeditor/CodeActionButtons.module.css similarity index 100% rename from frontend/src/presentation/components/CodeEditor/CodeActionButtons.module.css rename to frontend/src/presentation/components/room/codeeditor/CodeActionButtons.module.css diff --git a/frontend/src/presentation/components/CodeEditor/CodeActionButtons.tsx b/frontend/src/presentation/components/room/codeeditor/CodeActionButtons.tsx similarity index 100% rename from frontend/src/presentation/components/CodeEditor/CodeActionButtons.tsx rename to frontend/src/presentation/components/room/codeeditor/CodeActionButtons.tsx diff --git a/frontend/src/presentation/components/CodeEditor/CodeEditor.module.css b/frontend/src/presentation/components/room/codeeditor/CodeEditor.module.css similarity index 100% rename from frontend/src/presentation/components/CodeEditor/CodeEditor.module.css rename to frontend/src/presentation/components/room/codeeditor/CodeEditor.module.css diff --git a/frontend/src/presentation/components/CodeEditor/CodeEditor.tsx b/frontend/src/presentation/components/room/codeeditor/CodeEditor.tsx similarity index 100% rename from frontend/src/presentation/components/CodeEditor/CodeEditor.tsx rename to frontend/src/presentation/components/room/codeeditor/CodeEditor.tsx diff --git a/frontend/src/presentation/components/CodeEditor/LanguageSelector.tsx b/frontend/src/presentation/components/room/codeeditor/LanguageSelector.tsx similarity index 100% rename from frontend/src/presentation/components/CodeEditor/LanguageSelector.tsx rename to frontend/src/presentation/components/room/codeeditor/LanguageSelector.tsx diff --git a/frontend/src/presentation/components/CodeEditor/LeaveButton.module.css b/frontend/src/presentation/components/room/codeeditor/LeaveButton.module.css similarity index 100% rename from frontend/src/presentation/components/CodeEditor/LeaveButton.module.css rename to frontend/src/presentation/components/room/codeeditor/LeaveButton.module.css diff --git a/frontend/src/presentation/components/CodeEditor/LeaveButton.tsx b/frontend/src/presentation/components/room/codeeditor/LeaveButton.tsx similarity index 100% rename from frontend/src/presentation/components/CodeEditor/LeaveButton.tsx rename to frontend/src/presentation/components/room/codeeditor/LeaveButton.tsx diff --git a/frontend/src/presentation/components/CodeEditor/SubmitButton.tsx b/frontend/src/presentation/components/room/codeeditor/SubmitButton.tsx similarity index 100% rename from frontend/src/presentation/components/CodeEditor/SubmitButton.tsx rename to frontend/src/presentation/components/room/codeeditor/SubmitButton.tsx diff --git a/frontend/src/presentation/components/CodeEditor/OutputBox.module.css b/frontend/src/presentation/components/room/output/OutputBox.module.css similarity index 100% rename from frontend/src/presentation/components/CodeEditor/OutputBox.module.css rename to frontend/src/presentation/components/room/output/OutputBox.module.css diff --git a/frontend/src/presentation/components/CodeEditor/OutputBox.tsx b/frontend/src/presentation/components/room/output/OutputBox.tsx similarity index 100% rename from frontend/src/presentation/components/CodeEditor/OutputBox.tsx rename to frontend/src/presentation/components/room/output/OutputBox.tsx diff --git a/frontend/src/presentation/components/DeleteUserForm/DeleteUserForm.module.css b/frontend/src/presentation/components/users/DeleteUserForm/DeleteUserForm.module.css similarity index 100% rename from frontend/src/presentation/components/DeleteUserForm/DeleteUserForm.module.css rename to frontend/src/presentation/components/users/DeleteUserForm/DeleteUserForm.module.css diff --git a/frontend/src/presentation/components/DeleteUserForm/DeleteUserForm.tsx b/frontend/src/presentation/components/users/DeleteUserForm/DeleteUserForm.tsx similarity index 100% rename from frontend/src/presentation/components/DeleteUserForm/DeleteUserForm.tsx rename to frontend/src/presentation/components/users/DeleteUserForm/DeleteUserForm.tsx diff --git a/frontend/src/presentation/components/UpdateProfileForm/UpdateProfileForm.module.css b/frontend/src/presentation/components/users/UpdateProfileForm/UpdateProfileForm.module.css similarity index 100% rename from frontend/src/presentation/components/UpdateProfileForm/UpdateProfileForm.module.css rename to frontend/src/presentation/components/users/UpdateProfileForm/UpdateProfileForm.module.css diff --git a/frontend/src/presentation/components/UpdateProfileForm/UpdateProfileForm.tsx b/frontend/src/presentation/components/users/UpdateProfileForm/UpdateProfileForm.tsx similarity index 97% rename from frontend/src/presentation/components/UpdateProfileForm/UpdateProfileForm.tsx rename to frontend/src/presentation/components/users/UpdateProfileForm/UpdateProfileForm.tsx index 4a8b3135e5..e90c5b33c3 100644 --- a/frontend/src/presentation/components/UpdateProfileForm/UpdateProfileForm.tsx +++ b/frontend/src/presentation/components/users/UpdateProfileForm/UpdateProfileForm.tsx @@ -10,7 +10,7 @@ import { handleError } from "presentation/utils/errorHandler"; import { useForm } from "antd/es/form/Form"; import { IUserUpdateInput } from "domain/users/IUser"; import { getEqualityValidator, getPasswordStrengthValidator, validateMessages } from "presentation/utils/formUtils"; -import { PasswordInputLabel } from "../common/PasswordInputLabel/PasswordInputLabel"; +import { PasswordInputLabel } from "presentation/components/common/PasswordInputLabel/PasswordInputLabel"; interface UpdateProfileFormProps { user: User; diff --git a/frontend/src/presentation/components/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm.module.css b/frontend/src/presentation/components/users/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm.module.css similarity index 100% rename from frontend/src/presentation/components/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm.module.css rename to frontend/src/presentation/components/users/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm.module.css diff --git a/frontend/src/presentation/components/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm.tsx b/frontend/src/presentation/components/users/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm.tsx similarity index 100% rename from frontend/src/presentation/components/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm.tsx rename to frontend/src/presentation/components/users/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm.tsx diff --git a/frontend/src/presentation/pages/QuestionSelection.tsx b/frontend/src/presentation/pages/QuestionSelection.tsx deleted file mode 100644 index 03595b2db8..0000000000 --- a/frontend/src/presentation/pages/QuestionSelection.tsx +++ /dev/null @@ -1,112 +0,0 @@ -import React, { useState, useEffect } from "react"; -import { Row, Col, Breadcrumb, Spin, Button } from "antd"; -import { QuestionList } from "../components/QuestionList"; -import { QuestionDetail } from "../components/QuestionDetail"; -import { LandingComponent } from "../components/LandingComponent"; -import { Question } from "../../domain/entities/Question"; -import { questionUseCases } from "../../domain/usecases/QuestionUseCases"; -import styles from "./QuestionManagement.module.css"; -import { ROUTES, ERRORS } from "presentation/utils/constants"; -import { handleError } from "presentation/utils/errorHandler"; -import { useParams, useSearchParams } from "react-router-dom"; - -const QuestionSelection: React.FC = () => { - const [questions, setQuestions] = useState([]); - const [isLoading, setIsLoading] = useState(true); - const [error, setError] = useState(null); - - const [searchParams, setSearchParams] = useSearchParams(); - const selectedQuestionCode = searchParams.get("code"); - - const selectedQuestion: Question | undefined = questions.find((q) => q.code.toString() === selectedQuestionCode); - const { roomId, matchUserId } = useParams<{ roomId: string; matchUserId: string }>(); // Correct params destructuring - - useEffect(() => { - console.log("Room ID:", roomId); - console.log("matchUserId ID:", matchUserId); // Logs matchUserId correctly - }, [roomId, matchUserId]); // Added matchUserId as a dependency - - useEffect(() => { - const fetchQuestions = async () => { - setIsLoading(true); - try { - const fetchedQuestions = await questionUseCases.getAllQuestions(); - setQuestions(fetchedQuestions); - } catch (err) { - setError(handleError(err, ERRORS.FAILED_TO_LOAD_QUESTIONS)); - } finally { - setIsLoading(false); - } - }; - fetchQuestions(); - }, []); - - const handleSelectQuestion = (question: Question) => { - setSearchParams({ code: question.code }); - }; - - const handleBreadcrumbClick = (item: string) => () => { - if (item === ROUTES.QUESTIONS) { - setSearchParams({}); - } - }; - - const renderBreadcrumb = () => { - const breadcrumbItems = [ - { - title: ( - - ) - } - ]; - - if (selectedQuestion) { - breadcrumbItems.push({ - title: ( - - ) - }); - } - - return ( -
- -
- ); - }; - - return ( -
- {renderBreadcrumb()} -
- - - - - - {isLoading ? ( - - ) : selectedQuestion ? ( - - ) : ( - - )} - - -
-
- ); -}; - -export default QuestionSelection; diff --git a/frontend/src/presentation/pages/QuestionManagement.module.css b/frontend/src/presentation/pages/admin/questions/QuestionManagement.module.css similarity index 100% rename from frontend/src/presentation/pages/QuestionManagement.module.css rename to frontend/src/presentation/pages/admin/questions/QuestionManagement.module.css diff --git a/frontend/src/presentation/pages/QuestionManagement.tsx b/frontend/src/presentation/pages/admin/questions/QuestionManagement.tsx similarity index 90% rename from frontend/src/presentation/pages/QuestionManagement.tsx rename to frontend/src/presentation/pages/admin/questions/QuestionManagement.tsx index 310c6c2e1f..f97d145961 100644 --- a/frontend/src/presentation/pages/QuestionManagement.tsx +++ b/frontend/src/presentation/pages/admin/questions/QuestionManagement.tsx @@ -1,16 +1,16 @@ import React, { useState, useEffect } from "react"; import { Row, Col, Breadcrumb, Button, Modal, Spin } from "antd"; -import { QuestionList } from "../components/QuestionList"; -import { QuestionDetail } from "../components/QuestionDetail"; -import { LandingComponent } from "../components/LandingComponent"; -import { NewQuestionForm } from "../components/NewQuestionForm/NewQuestionForm"; -import { Question } from "../../domain/entities/Question"; +import { QuestionList } from "../../../components/questions/QuestionList/QuestionList"; +import { QuestionDetail } from "presentation/components/questions/QuestionDetail/QuestionDetail"; +import { LandingComponent } from "../../../components/home/LandingComponent"; +import { NewQuestionForm } from "presentation/components/questions/NewQuestionForm/NewQuestionForm"; +import { Question } from "../../../../domain/entities/Question"; import { QUESTIONS_PAGE_TEXT } from "presentation/utils/constants"; -import { questionUseCases } from "../../domain/usecases/QuestionUseCases"; +import { questionUseCases } from "../../../../domain/usecases/QuestionUseCases"; import styles from "./QuestionManagement.module.css"; import { ROUTES, ERRORS } from "presentation/utils/constants"; import { handleError } from "presentation/utils/errorHandler"; -import { AddQuestionButton } from "presentation/components/buttons/AddQuestionButton"; +import { AddQuestionButton } from "presentation/components/common/buttons/AddQuestionButton"; import { useSearchParams } from "react-router-dom"; const QuestionManagement: React.FC = () => { diff --git a/frontend/src/presentation/pages/UserManagement..module.css b/frontend/src/presentation/pages/admin/users/UserManagement..module.css similarity index 100% rename from frontend/src/presentation/pages/UserManagement..module.css rename to frontend/src/presentation/pages/admin/users/UserManagement..module.css diff --git a/frontend/src/presentation/pages/UserManagement.tsx b/frontend/src/presentation/pages/admin/users/UserManagement.tsx similarity index 94% rename from frontend/src/presentation/pages/UserManagement.tsx rename to frontend/src/presentation/pages/admin/users/UserManagement.tsx index 3f9e41d8ad..38dcbedac2 100644 --- a/frontend/src/presentation/pages/UserManagement.tsx +++ b/frontend/src/presentation/pages/admin/users/UserManagement.tsx @@ -4,11 +4,11 @@ import { useEffect, useMemo, useState } from "react"; import { EditOutlined, DeleteOutlined, CrownFilled, CrownOutlined } from "@ant-design/icons"; import styles from "./UserManagement..module.css"; import { Modal } from "antd"; -import { UpdateProfileForm } from "presentation/components/UpdateProfileForm/UpdateProfileForm"; -import { DeleteUserForm } from "presentation/components/DeleteUserForm/DeleteUserForm"; -import { UpdateUserPrivilegeForm } from "presentation/components/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm"; +import { UpdateProfileForm } from "presentation/components/users/UpdateProfileForm/UpdateProfileForm"; +import { DeleteUserForm } from "presentation/components/users/DeleteUserForm/DeleteUserForm"; +import { UpdateUserPrivilegeForm } from "presentation/components/users/UpdateUserPrivilegeForm/UpdateUserPrivilegeForm"; import { useAuth } from "domain/context/AuthContext"; -import { SearchBar } from "presentation/components/SearchBar"; +import { SearchBar } from "presentation/components/common/SearchBar"; export const UserManagement: React.FC<{}> = () => { const [users, setUsers] = useState([]); diff --git a/frontend/src/presentation/pages/ForgotPasswordPage.module.css b/frontend/src/presentation/pages/auth/ForgotPasswordPage.module.css similarity index 100% rename from frontend/src/presentation/pages/ForgotPasswordPage.module.css rename to frontend/src/presentation/pages/auth/ForgotPasswordPage.module.css diff --git a/frontend/src/presentation/pages/ForgotPasswordPage.tsx b/frontend/src/presentation/pages/auth/ForgotPasswordPage.tsx similarity index 100% rename from frontend/src/presentation/pages/ForgotPasswordPage.tsx rename to frontend/src/presentation/pages/auth/ForgotPasswordPage.tsx diff --git a/frontend/src/presentation/pages/LoginPage.module.css b/frontend/src/presentation/pages/auth/LoginPage.module.css similarity index 100% rename from frontend/src/presentation/pages/LoginPage.module.css rename to frontend/src/presentation/pages/auth/LoginPage.module.css diff --git a/frontend/src/presentation/pages/LoginPage.tsx b/frontend/src/presentation/pages/auth/LoginPage.tsx similarity index 85% rename from frontend/src/presentation/pages/LoginPage.tsx rename to frontend/src/presentation/pages/auth/LoginPage.tsx index 3389765ff7..9c93fd2435 100644 --- a/frontend/src/presentation/pages/LoginPage.tsx +++ b/frontend/src/presentation/pages/auth/LoginPage.tsx @@ -1,8 +1,8 @@ import styles from "./LoginPage.module.css"; import { Col, Row } from "antd"; import { useAuth } from "domain/context/AuthContext"; -import { AuthLogo } from "presentation/components/AuthLogo"; -import { LoginForm } from "presentation/components/LoginForm/LoginForm"; +import { AuthLogo } from "presentation/components/auth/AuthLogo"; +import { LoginForm } from "presentation/components/auth/LoginForm/LoginForm"; import { Navigate } from "react-router-dom"; const LoginPage: React.FC = () => { diff --git a/frontend/src/presentation/pages/RegisterPage.module.css b/frontend/src/presentation/pages/auth/RegisterPage.module.css similarity index 100% rename from frontend/src/presentation/pages/RegisterPage.module.css rename to frontend/src/presentation/pages/auth/RegisterPage.module.css diff --git a/frontend/src/presentation/pages/RegisterPage.tsx b/frontend/src/presentation/pages/auth/RegisterPage.tsx similarity index 66% rename from frontend/src/presentation/pages/RegisterPage.tsx rename to frontend/src/presentation/pages/auth/RegisterPage.tsx index 8e2c974f56..e81a3a1527 100644 --- a/frontend/src/presentation/pages/RegisterPage.tsx +++ b/frontend/src/presentation/pages/auth/RegisterPage.tsx @@ -1,7 +1,7 @@ -import styles from './RegisterPage.module.css'; -import { Col, Row } from 'antd'; -import { AuthLogo } from 'presentation/components/AuthLogo'; -import { SignUpForm } from 'presentation/components/SignUpForm/SignUpForm'; +import styles from "./RegisterPage.module.css"; +import { Col, Row } from "antd"; +import { AuthLogo } from "presentation/components/auth/AuthLogo"; +import { SignUpForm } from "presentation/components/auth/SignUpForm/SignUpForm"; const RegisterPage: React.FC = () => { return ( @@ -20,4 +20,4 @@ const RegisterPage: React.FC = () => { ); }; -export default RegisterPage; \ No newline at end of file +export default RegisterPage; diff --git a/frontend/src/presentation/pages/ResetPasswordPage.module.css b/frontend/src/presentation/pages/auth/ResetPasswordPage.module.css similarity index 100% rename from frontend/src/presentation/pages/ResetPasswordPage.module.css rename to frontend/src/presentation/pages/auth/ResetPasswordPage.module.css diff --git a/frontend/src/presentation/pages/ResetPasswordPage.tsx b/frontend/src/presentation/pages/auth/ResetPasswordPage.tsx similarity index 100% rename from frontend/src/presentation/pages/ResetPasswordPage.tsx rename to frontend/src/presentation/pages/auth/ResetPasswordPage.tsx diff --git a/frontend/src/presentation/pages/HomePage.module.css b/frontend/src/presentation/pages/home/HomePage.module.css similarity index 100% rename from frontend/src/presentation/pages/HomePage.module.css rename to frontend/src/presentation/pages/home/HomePage.module.css diff --git a/frontend/src/presentation/pages/HomePage.tsx b/frontend/src/presentation/pages/home/HomePage.tsx similarity index 86% rename from frontend/src/presentation/pages/HomePage.tsx rename to frontend/src/presentation/pages/home/HomePage.tsx index 7843cd9613..04b803f4da 100644 --- a/frontend/src/presentation/pages/HomePage.tsx +++ b/frontend/src/presentation/pages/home/HomePage.tsx @@ -1,11 +1,11 @@ import React, { useState, useCallback } from "react"; import styles from "./HomePage.module.css"; -import { FindPeerButton } from "presentation/components/buttons/FindPeerButton"; -import { ProfileContainer } from "presentation/components/ProfileContainer"; -import { RecentAttemptsTable } from "presentation/components/RecentAttemptsTable"; -import { QuestionFilters } from "presentation/components/QuestionFilters"; -import { SelectedCategories } from "presentation/components/SelectedCategories"; -import { MatchingModal } from "presentation/components/modals/MatchingModal"; +import { FindPeerButton } from "presentation/components/common/buttons/FindPeerButton"; +import { ProfileContainer } from "presentation/components/home/ProfileContainer"; +import { RecentAttemptsTable } from "presentation/components/home/RecentAttemptsTable"; +import { QuestionFilters } from "presentation/components/questions/QuestionList/QuestionFilters"; +import { SelectedCategories } from "presentation/components/questions/Category/SelectedCategories"; +import { MatchingModal } from "presentation/components/common/modals/MatchingModal"; import { Tooltip, message } from "antd"; import { InfoCircleOutlined } from "@ant-design/icons"; import { Category } from "domain/entities/Category"; diff --git a/frontend/src/presentation/pages/layout/Layout.tsx b/frontend/src/presentation/pages/layout/Layout.tsx index bd9582ea3f..7ecb5c8e62 100644 --- a/frontend/src/presentation/pages/layout/Layout.tsx +++ b/frontend/src/presentation/pages/layout/Layout.tsx @@ -3,7 +3,7 @@ import { Layout as AntLayout } from "antd"; import { Link, useLocation, useNavigate } from "react-router-dom"; import styles from "./Layout.module.css"; import PeerPrepLogo from "../../../assets/images/PeerPrepLogo.png"; -import MatchingFloatingButton from "../../components/buttons/MatchingFloatingButton"; +import MatchingFloatingButton from "../../components/common/buttons/MatchingFloatingButton"; import { ArrowLeftOutlined, LogoutOutlined } from "@ant-design/icons"; import { useAuth } from "domain/context/AuthContext"; diff --git a/frontend/src/presentation/pages/CollaborationRoomPage.module.css b/frontend/src/presentation/pages/room/CollaborationRoomPage.module.css similarity index 100% rename from frontend/src/presentation/pages/CollaborationRoomPage.module.css rename to frontend/src/presentation/pages/room/CollaborationRoomPage.module.css diff --git a/frontend/src/presentation/pages/CollaborationRoomPage.tsx b/frontend/src/presentation/pages/room/CollaborationRoomPage.tsx similarity index 88% rename from frontend/src/presentation/pages/CollaborationRoomPage.tsx rename to frontend/src/presentation/pages/room/CollaborationRoomPage.tsx index 8e1e320258..12188d33dd 100644 --- a/frontend/src/presentation/pages/CollaborationRoomPage.tsx +++ b/frontend/src/presentation/pages/room/CollaborationRoomPage.tsx @@ -1,18 +1,18 @@ import React, { useState, useEffect } from "react"; import styles from "./CollaborationRoomPage.module.css"; -import CodeEditor from "../../presentation/components/CodeEditor/CodeEditor"; -import { QuestionDetail } from "../../presentation/components/QuestionDetail"; +import CodeEditor from "../../components/room/codeeditor/CodeEditor"; +import { QuestionDetail } from "presentation/components/questions/QuestionDetail/QuestionDetail"; import { useLocation, useParams } from "react-router-dom"; import { useResizable } from "react-resizable-layout"; -import NotFound from "./NotFound"; -import { OutputBox } from "../../presentation/components/CodeEditor/OutputBox"; -import ToggleButton from "../../presentation/components/buttons/ToggleButton"; -import ChatFrame from "../../presentation/components/iframe/ChatFrame"; -import { Question } from "../../domain/entities/Question"; -import { questionUseCases } from "../../domain/usecases/QuestionUseCases"; -import { roomUseCases } from "../../domain/usecases/RoomUseCases"; -import { Room } from "../../domain/entities/Room"; -import { useAuth } from "../../domain/context/AuthContext"; +import NotFound from "../NotFound"; +import { OutputBox } from "../../components/room/output/OutputBox"; +import ToggleButton from "../../components/common/buttons/ToggleButton"; +import ChatFrame from "../../components/iframe/ChatFrame"; +import { Question } from "../../../domain/entities/Question"; +import { questionUseCases } from "../../../domain/usecases/QuestionUseCases"; +import { roomUseCases } from "../../../domain/usecases/RoomUseCases"; +import { Room } from "../../../domain/entities/Room"; +import { useAuth } from "../../../domain/context/AuthContext"; import { Spin } from "antd"; import { toast } from "react-toastify"; diff --git a/frontend/src/presentation/routes/AppRoutes.tsx b/frontend/src/presentation/routes/AppRoutes.tsx index ca8a5b75de..4a3b2dbaa0 100644 --- a/frontend/src/presentation/routes/AppRoutes.tsx +++ b/frontend/src/presentation/routes/AppRoutes.tsx @@ -1,20 +1,19 @@ import React from "react"; import { Routes, Route } from "react-router-dom"; import Layout from "presentation/pages/layout/Layout"; -import QuestionManagement from "presentation/pages/QuestionManagement"; -import QuestionPage from "presentation/pages/QuestionSelection"; +import QuestionManagement from "presentation/pages/admin/questions/QuestionManagement"; import NotFound from "presentation/pages/NotFound"; -import RegisterPage from "presentation/pages/RegisterPage"; -import LoginPage from "presentation/pages/LoginPage"; -import HomePage from "presentation/pages/HomePage"; +import RegisterPage from "presentation/pages/auth/RegisterPage"; +import LoginPage from "presentation/pages/auth/LoginPage"; +import HomePage from "presentation/pages/home/HomePage"; import { ProtectedRoute } from "presentation/pages/ProtectedRoute"; import { AdminProtectedRoute } from "presentation/pages/AdminProtectedRoute"; import { MatchmakingProvider } from "domain/context/MatchmakingContext"; -import { UserManagement } from "presentation/pages/UserManagement"; -import CollaborationRoomPage from "presentation/pages/CollaborationRoomPage"; +import { UserManagement } from "presentation/pages/admin/users/UserManagement"; +import CollaborationRoomPage from "presentation/pages/room/CollaborationRoomPage"; import { CollaborationProvider } from "domain/context/CollaborationContext"; -import { ForgotPasswordPage } from "presentation/pages/ForgotPasswordPage"; -import { ResetPasswordPage } from "presentation/pages/ResetPasswordPage"; +import { ForgotPasswordPage } from "presentation/pages/auth/ForgotPasswordPage"; +import { ResetPasswordPage } from "presentation/pages/auth/ResetPasswordPage"; const AppRoutes: React.FC = () => { return ( @@ -25,7 +24,6 @@ const AppRoutes: React.FC = () => { } /> } /> } /> - } /> }>