From 0e3cb5425b0c19e3b50ced0d7c6345da168be9ed Mon Sep 17 00:00:00 2001 From: Colin Toft Date: Sat, 12 Apr 2025 21:31:10 -0400 Subject: [PATCH 1/2] Organize components into folders --- src/components/{ => absences}/AbsenceBox.tsx | 0 .../{ => absences}/ExportAbsencesButton.tsx | 0 .../{ => absences/declare}/AdminTeacherFields.tsx | 2 +- .../{ => absences/declare}/ConfirmAbsenceModal.tsx | 0 .../{ => absences/declare}/DateOfAbsence.tsx | 2 +- .../{ => absences/declare}/DeclareAbsenceForm.tsx | 4 ++-- .../{ => absences/details}/AbsenceDetails.tsx | 2 +- .../{ => absences/details}/AbsenceFillThanks.tsx | 0 .../{ => absences/details}/AbsenceStatusTag.tsx | 0 .../{ => absences/details}/EditableNotes.tsx | 0 .../{ => absences/details}/LessonPlanView.tsx | 2 +- .../{ => absences/edit}/ConfirmEditModal.tsx | 0 .../{ => absences/edit}/EditAbsenceForm.tsx | 8 ++++---- src/components/{ => calendar}/CalendarIcon.tsx | 0 src/components/{ => calendar}/CalendarTabs.tsx | 0 src/components/{ => calendar}/MiniCalendar.tsx | 0 .../{ => calendar/header}/AdminTeacherToggle.tsx | 0 .../{ => calendar/header}/CalendarHeader.tsx | 2 +- .../sidebar}/AbsenceStatusAccordion.tsx | 0 src/components/{ => calendar/sidebar}/Accordion.tsx | 0 .../{ => calendar/sidebar}/ArchivedAccordion.tsx | 0 .../{ => calendar/sidebar}/CalendarSidebar.tsx | 4 ++-- .../{ => calendar/sidebar}/LocationAccordion.tsx | 0 .../{ => calendar/sidebar}/SubjectAccordion.tsx | 0 .../{ => dashboard/header}/DashboardHeader.tsx | 6 +++--- .../{ => dashboard/header}/YearDropdown.tsx | 0 .../{ => dashboard/stats}/DualColourBar.tsx | 0 .../{ => dashboard/stats}/MonthlyAbsencesCard.tsx | 2 +- .../{ => dashboard/stats}/TotalAbsencesCard.tsx | 2 +- .../{ => dashboard/system_options}/EntityTable.tsx | 2 +- .../system_options}/LocationsTable.tsx | 0 .../{ => dashboard/system_options}/SubjectsTable.tsx | 0 .../SystemChangesConfirmationDialog.tsx | 0 .../system_options}/SystemOptionsModal.tsx | 2 +- .../system_options}/SystemSettings.tsx | 0 .../system_options}/UnsavedChangesDialog.tsx | 0 .../user_management}/EditableRoleCell.tsx | 0 .../user_management}/EditableSubscriptionsCell.tsx | 0 .../{ => dashboard/user_management}/FilterPopup.tsx | 0 .../{ => dashboard/user_management}/OperatorMenu.tsx | 0 .../user_management}/UserManagementCard.tsx | 0 .../user_management}/UserManagementTable.tsx | 0 .../{ => ui/branding}/SistemaLogoColour.tsx | 0 .../{ => ui/feedback}/CircularProgress.tsx | 0 src/components/{ => ui/feedback}/CustomTooltip.tsx | 0 src/components/{ => ui/input}/FileUpload.tsx | 0 src/components/{ => ui/input}/InputDropdown.tsx | 0 src/components/{ => ui/input}/SearchDropdown.tsx | 0 src/components/{ => ui/profile}/ProfileMenu.tsx | 0 src/components/{ => ui/profile}/SignInButton.tsx | 0 src/components/{ => ui/profile}/SignOutButton.tsx | 0 src/pages/calendar.tsx | 12 ++++++------ src/pages/dashboard.tsx | 8 ++++---- src/pages/index.tsx | 4 ++-- 54 files changed, 32 insertions(+), 32 deletions(-) rename src/components/{ => absences}/AbsenceBox.tsx (100%) rename src/components/{ => absences}/ExportAbsencesButton.tsx (100%) rename src/components/{ => absences/declare}/AdminTeacherFields.tsx (97%) rename src/components/{ => absences/declare}/ConfirmAbsenceModal.tsx (100%) rename src/components/{ => absences/declare}/DateOfAbsence.tsx (97%) rename src/components/{ => absences/declare}/DeclareAbsenceForm.tsx (98%) rename src/components/{ => absences/details}/AbsenceDetails.tsx (99%) rename src/components/{ => absences/details}/AbsenceFillThanks.tsx (100%) rename src/components/{ => absences/details}/AbsenceStatusTag.tsx (100%) rename src/components/{ => absences/details}/EditableNotes.tsx (100%) rename src/components/{ => absences/details}/LessonPlanView.tsx (99%) rename src/components/{ => absences/edit}/ConfirmEditModal.tsx (100%) rename src/components/{ => absences/edit}/EditAbsenceForm.tsx (97%) rename src/components/{ => calendar}/CalendarIcon.tsx (100%) rename src/components/{ => calendar}/CalendarTabs.tsx (100%) rename src/components/{ => calendar}/MiniCalendar.tsx (100%) rename src/components/{ => calendar/header}/AdminTeacherToggle.tsx (100%) rename src/components/{ => calendar/header}/CalendarHeader.tsx (98%) rename src/components/{ => calendar/sidebar}/AbsenceStatusAccordion.tsx (100%) rename src/components/{ => calendar/sidebar}/Accordion.tsx (100%) rename src/components/{ => calendar/sidebar}/ArchivedAccordion.tsx (100%) rename src/components/{ => calendar/sidebar}/CalendarSidebar.tsx (97%) rename src/components/{ => calendar/sidebar}/LocationAccordion.tsx (100%) rename src/components/{ => calendar/sidebar}/SubjectAccordion.tsx (100%) rename src/components/{ => dashboard/header}/DashboardHeader.tsx (94%) rename src/components/{ => dashboard/header}/YearDropdown.tsx (100%) rename src/components/{ => dashboard/stats}/DualColourBar.tsx (100%) rename src/components/{ => dashboard/stats}/MonthlyAbsencesCard.tsx (98%) rename src/components/{ => dashboard/stats}/TotalAbsencesCard.tsx (97%) rename src/components/{ => dashboard/system_options}/EntityTable.tsx (99%) rename src/components/{ => dashboard/system_options}/LocationsTable.tsx (100%) rename src/components/{ => dashboard/system_options}/SubjectsTable.tsx (100%) rename src/components/{ => dashboard/system_options}/SystemChangesConfirmationDialog.tsx (100%) rename src/components/{ => dashboard/system_options}/SystemOptionsModal.tsx (99%) rename src/components/{ => dashboard/system_options}/SystemSettings.tsx (100%) rename src/components/{ => dashboard/system_options}/UnsavedChangesDialog.tsx (100%) rename src/components/{ => dashboard/user_management}/EditableRoleCell.tsx (100%) rename src/components/{ => dashboard/user_management}/EditableSubscriptionsCell.tsx (100%) rename src/components/{ => dashboard/user_management}/FilterPopup.tsx (100%) rename src/components/{ => dashboard/user_management}/OperatorMenu.tsx (100%) rename src/components/{ => dashboard/user_management}/UserManagementCard.tsx (100%) rename src/components/{ => dashboard/user_management}/UserManagementTable.tsx (100%) rename src/components/{ => ui/branding}/SistemaLogoColour.tsx (100%) rename src/components/{ => ui/feedback}/CircularProgress.tsx (100%) rename src/components/{ => ui/feedback}/CustomTooltip.tsx (100%) rename src/components/{ => ui/input}/FileUpload.tsx (100%) rename src/components/{ => ui/input}/InputDropdown.tsx (100%) rename src/components/{ => ui/input}/SearchDropdown.tsx (100%) rename src/components/{ => ui/profile}/ProfileMenu.tsx (100%) rename src/components/{ => ui/profile}/SignInButton.tsx (100%) rename src/components/{ => ui/profile}/SignOutButton.tsx (100%) diff --git a/src/components/AbsenceBox.tsx b/src/components/absences/AbsenceBox.tsx similarity index 100% rename from src/components/AbsenceBox.tsx rename to src/components/absences/AbsenceBox.tsx diff --git a/src/components/ExportAbsencesButton.tsx b/src/components/absences/ExportAbsencesButton.tsx similarity index 100% rename from src/components/ExportAbsencesButton.tsx rename to src/components/absences/ExportAbsencesButton.tsx diff --git a/src/components/AdminTeacherFields.tsx b/src/components/absences/declare/AdminTeacherFields.tsx similarity index 97% rename from src/components/AdminTeacherFields.tsx rename to src/components/absences/declare/AdminTeacherFields.tsx index 628fc872..4ebae3bc 100644 --- a/src/components/AdminTeacherFields.tsx +++ b/src/components/absences/declare/AdminTeacherFields.tsx @@ -4,7 +4,7 @@ import { FormLabel, Text, } from '@chakra-ui/react'; -import { SearchDropdown } from './SearchDropdown'; +import { SearchDropdown } from '../../ui/input/SearchDropdown'; interface AdminTeacherFieldsProps { formData: { diff --git a/src/components/ConfirmAbsenceModal.tsx b/src/components/absences/declare/ConfirmAbsenceModal.tsx similarity index 100% rename from src/components/ConfirmAbsenceModal.tsx rename to src/components/absences/declare/ConfirmAbsenceModal.tsx diff --git a/src/components/DateOfAbsence.tsx b/src/components/absences/declare/DateOfAbsence.tsx similarity index 97% rename from src/components/DateOfAbsence.tsx rename to src/components/absences/declare/DateOfAbsence.tsx index 172fae62..11769c05 100644 --- a/src/components/DateOfAbsence.tsx +++ b/src/components/absences/declare/DateOfAbsence.tsx @@ -10,7 +10,7 @@ import { Text, } from '@chakra-ui/react'; import React, { useCallback, useEffect, useState } from 'react'; -import MiniCalendar from './MiniCalendar'; +import MiniCalendar from '../../calendar/MiniCalendar'; interface DateOfAbsenceProps { dateValue: Date; diff --git a/src/components/DeclareAbsenceForm.tsx b/src/components/absences/declare/DeclareAbsenceForm.tsx similarity index 98% rename from src/components/DeclareAbsenceForm.tsx rename to src/components/absences/declare/DeclareAbsenceForm.tsx index b6c83ac9..6f8503e8 100644 --- a/src/components/DeclareAbsenceForm.tsx +++ b/src/components/absences/declare/DeclareAbsenceForm.tsx @@ -19,8 +19,8 @@ import { useState } from 'react'; import { AdminTeacherFields } from './AdminTeacherFields'; import { ConfirmAbsenceModal } from './ConfirmAbsenceModal'; import { DateOfAbsence } from './DateOfAbsence'; -import { FileUpload } from './FileUpload'; -import { InputDropdown } from './InputDropdown'; +import { FileUpload } from '../../ui/input/FileUpload'; +import { InputDropdown } from '../../ui/input/InputDropdown'; interface DeclareAbsenceFormProps { onClose?: () => void; diff --git a/src/components/AbsenceDetails.tsx b/src/components/absences/details/AbsenceDetails.tsx similarity index 99% rename from src/components/AbsenceDetails.tsx rename to src/components/absences/details/AbsenceDetails.tsx index 97e98e67..ce08786d 100644 --- a/src/components/AbsenceDetails.tsx +++ b/src/components/absences/details/AbsenceDetails.tsx @@ -24,7 +24,7 @@ import { IoEyeOutline } from 'react-icons/io5'; import AbsenceFillThanks from './AbsenceFillThanks'; import AbsenceStatusTag from './AbsenceStatusTag'; import EditableNotes from './EditableNotes'; -import EditAbsenceForm from './EditAbsenceForm'; +import EditAbsenceForm from '../edit/EditAbsenceForm'; import LessonPlanView from './LessonPlanView'; interface AbsenceDetailsProps { diff --git a/src/components/AbsenceFillThanks.tsx b/src/components/absences/details/AbsenceFillThanks.tsx similarity index 100% rename from src/components/AbsenceFillThanks.tsx rename to src/components/absences/details/AbsenceFillThanks.tsx diff --git a/src/components/AbsenceStatusTag.tsx b/src/components/absences/details/AbsenceStatusTag.tsx similarity index 100% rename from src/components/AbsenceStatusTag.tsx rename to src/components/absences/details/AbsenceStatusTag.tsx diff --git a/src/components/EditableNotes.tsx b/src/components/absences/details/EditableNotes.tsx similarity index 100% rename from src/components/EditableNotes.tsx rename to src/components/absences/details/EditableNotes.tsx diff --git a/src/components/LessonPlanView.tsx b/src/components/absences/details/LessonPlanView.tsx similarity index 99% rename from src/components/LessonPlanView.tsx rename to src/components/absences/details/LessonPlanView.tsx index 614492b9..69a9324b 100644 --- a/src/components/LessonPlanView.tsx +++ b/src/components/absences/details/LessonPlanView.tsx @@ -13,7 +13,7 @@ import { LessonPlanFile } from '@utils/types'; import { uploadFile } from '@utils/uploadFile'; import { useEffect, useRef, useState } from 'react'; import { FiFileText } from 'react-icons/fi'; -import { FileUpload } from './FileUpload'; +import { FileUpload } from '../../ui/input/FileUpload'; const formatFileSize = (sizeInBytes: number) => { if (sizeInBytes === 0) return '0 B'; diff --git a/src/components/ConfirmEditModal.tsx b/src/components/absences/edit/ConfirmEditModal.tsx similarity index 100% rename from src/components/ConfirmEditModal.tsx rename to src/components/absences/edit/ConfirmEditModal.tsx diff --git a/src/components/EditAbsenceForm.tsx b/src/components/absences/edit/EditAbsenceForm.tsx similarity index 97% rename from src/components/EditAbsenceForm.tsx rename to src/components/absences/edit/EditAbsenceForm.tsx index 86e83635..eec6fb82 100644 --- a/src/components/EditAbsenceForm.tsx +++ b/src/components/absences/edit/EditAbsenceForm.tsx @@ -17,11 +17,11 @@ import { submitAbsence } from '@utils/submitAbsence'; import { EventDetails } from '@utils/types'; import { validateAbsenceForm } from '@utils/validateAbsenceForm'; import { useState } from 'react'; -import { AdminTeacherFields } from './AdminTeacherFields'; +import { AdminTeacherFields } from '../declare/AdminTeacherFields'; import { ConfirmEditModal } from './ConfirmEditModal'; -import { DateOfAbsence } from './DateOfAbsence'; -import { FileUpload } from './FileUpload'; -import { InputDropdown } from './InputDropdown'; +import { DateOfAbsence } from '../declare/DateOfAbsence'; +import { FileUpload } from '../../ui/input/FileUpload'; +import { InputDropdown } from '../../ui/input/InputDropdown'; interface EditAbsenceFormProps { onClose?: () => void; diff --git a/src/components/CalendarIcon.tsx b/src/components/calendar/CalendarIcon.tsx similarity index 100% rename from src/components/CalendarIcon.tsx rename to src/components/calendar/CalendarIcon.tsx diff --git a/src/components/CalendarTabs.tsx b/src/components/calendar/CalendarTabs.tsx similarity index 100% rename from src/components/CalendarTabs.tsx rename to src/components/calendar/CalendarTabs.tsx diff --git a/src/components/MiniCalendar.tsx b/src/components/calendar/MiniCalendar.tsx similarity index 100% rename from src/components/MiniCalendar.tsx rename to src/components/calendar/MiniCalendar.tsx diff --git a/src/components/AdminTeacherToggle.tsx b/src/components/calendar/header/AdminTeacherToggle.tsx similarity index 100% rename from src/components/AdminTeacherToggle.tsx rename to src/components/calendar/header/AdminTeacherToggle.tsx diff --git a/src/components/CalendarHeader.tsx b/src/components/calendar/header/CalendarHeader.tsx similarity index 98% rename from src/components/CalendarHeader.tsx rename to src/components/calendar/header/CalendarHeader.tsx index d9e6b350..a266246a 100644 --- a/src/components/CalendarHeader.tsx +++ b/src/components/calendar/header/CalendarHeader.tsx @@ -13,7 +13,7 @@ import { useRouter } from 'next/navigation'; import { useCallback, useEffect, useState } from 'react'; import { IoChevronBack, IoChevronForward, IoStatsChart } from 'react-icons/io5'; import { AdminTeacherToggle } from './AdminTeacherToggle'; -import ProfileMenu from './ProfileMenu'; +import ProfileMenu from '../../ui/profile/ProfileMenu'; interface CalendarHeaderProps { currentMonthYear: string; diff --git a/src/components/AbsenceStatusAccordion.tsx b/src/components/calendar/sidebar/AbsenceStatusAccordion.tsx similarity index 100% rename from src/components/AbsenceStatusAccordion.tsx rename to src/components/calendar/sidebar/AbsenceStatusAccordion.tsx diff --git a/src/components/Accordion.tsx b/src/components/calendar/sidebar/Accordion.tsx similarity index 100% rename from src/components/Accordion.tsx rename to src/components/calendar/sidebar/Accordion.tsx diff --git a/src/components/ArchivedAccordion.tsx b/src/components/calendar/sidebar/ArchivedAccordion.tsx similarity index 100% rename from src/components/ArchivedAccordion.tsx rename to src/components/calendar/sidebar/ArchivedAccordion.tsx diff --git a/src/components/CalendarSidebar.tsx b/src/components/calendar/sidebar/CalendarSidebar.tsx similarity index 97% rename from src/components/CalendarSidebar.tsx rename to src/components/calendar/sidebar/CalendarSidebar.tsx index a51961fd..3a6ffd98 100644 --- a/src/components/CalendarSidebar.tsx +++ b/src/components/calendar/sidebar/CalendarSidebar.tsx @@ -1,11 +1,11 @@ import { AddIcon } from '@chakra-ui/icons'; import { Box, Button, Flex, HStack, useTheme } from '@chakra-ui/react'; import React, { useCallback, useEffect, useState } from 'react'; -import { TacetLogo } from '../components/SistemaLogoColour'; +import { TacetLogo } from '../../ui/branding/SistemaLogoColour'; import AbsenceStatusAccordion from './AbsenceStatusAccordion'; import ArchivedAccordion from './ArchivedAccordion'; import LocationAccordion from './LocationAccordion'; -import MiniCalendar from './MiniCalendar'; +import MiniCalendar from '../MiniCalendar'; import SubjectAccordion from './SubjectAccordion'; interface CalendarSidebarProps { diff --git a/src/components/LocationAccordion.tsx b/src/components/calendar/sidebar/LocationAccordion.tsx similarity index 100% rename from src/components/LocationAccordion.tsx rename to src/components/calendar/sidebar/LocationAccordion.tsx diff --git a/src/components/SubjectAccordion.tsx b/src/components/calendar/sidebar/SubjectAccordion.tsx similarity index 100% rename from src/components/SubjectAccordion.tsx rename to src/components/calendar/sidebar/SubjectAccordion.tsx diff --git a/src/components/DashboardHeader.tsx b/src/components/dashboard/header/DashboardHeader.tsx similarity index 94% rename from src/components/DashboardHeader.tsx rename to src/components/dashboard/header/DashboardHeader.tsx index 18523b9e..d974eeed 100644 --- a/src/components/DashboardHeader.tsx +++ b/src/components/dashboard/header/DashboardHeader.tsx @@ -11,9 +11,9 @@ import { UserData } from '@utils/types'; import { useRouter } from 'next/navigation'; import { useCallback, useEffect, useState } from 'react'; import { IoChevronBack, IoSettingsOutline } from 'react-icons/io5'; -import ExportAbsencesButton from './ExportAbsencesButton'; -import ProfileMenu from './ProfileMenu'; -import SystemOptionsModal from './SystemOptionsModal'; +import ExportAbsencesButton from '../../absences/ExportAbsencesButton'; +import ProfileMenu from '../../ui/profile/ProfileMenu'; +import SystemOptionsModal from '../../dashboard/system_options/SystemOptionsModal'; import YearDropdown from './YearDropdown'; interface DashboardHeaderProps { diff --git a/src/components/YearDropdown.tsx b/src/components/dashboard/header/YearDropdown.tsx similarity index 100% rename from src/components/YearDropdown.tsx rename to src/components/dashboard/header/YearDropdown.tsx diff --git a/src/components/DualColourBar.tsx b/src/components/dashboard/stats/DualColourBar.tsx similarity index 100% rename from src/components/DualColourBar.tsx rename to src/components/dashboard/stats/DualColourBar.tsx diff --git a/src/components/MonthlyAbsencesCard.tsx b/src/components/dashboard/stats/MonthlyAbsencesCard.tsx similarity index 98% rename from src/components/MonthlyAbsencesCard.tsx rename to src/components/dashboard/stats/MonthlyAbsencesCard.tsx index 8fca4238..61dd27ee 100644 --- a/src/components/MonthlyAbsencesCard.tsx +++ b/src/components/dashboard/stats/MonthlyAbsencesCard.tsx @@ -20,7 +20,7 @@ import { XAxis, YAxis, } from 'recharts'; -import { CustomTooltip } from './CustomTooltip'; +import { CustomTooltip } from '../../ui/feedback/CustomTooltip'; import DualColorBar from './DualColourBar'; export default function MonthlyAbsencesCard({ diff --git a/src/components/TotalAbsencesCard.tsx b/src/components/dashboard/stats/TotalAbsencesCard.tsx similarity index 97% rename from src/components/TotalAbsencesCard.tsx rename to src/components/dashboard/stats/TotalAbsencesCard.tsx index d1bfe50d..757625d6 100644 --- a/src/components/TotalAbsencesCard.tsx +++ b/src/components/dashboard/stats/TotalAbsencesCard.tsx @@ -10,7 +10,7 @@ import { VStack, } from '@chakra-ui/react'; -import CircularProgress from './CircularProgress'; +import CircularProgress from '../../ui/feedback/CircularProgress'; interface TotalAbsencesProps { width: string; diff --git a/src/components/EntityTable.tsx b/src/components/dashboard/system_options/EntityTable.tsx similarity index 99% rename from src/components/EntityTable.tsx rename to src/components/dashboard/system_options/EntityTable.tsx index 823a3189..e3ca8dc9 100644 --- a/src/components/EntityTable.tsx +++ b/src/components/dashboard/system_options/EntityTable.tsx @@ -27,7 +27,7 @@ import { IoEllipsisHorizontal, } from 'react-icons/io5'; import { LuInfo } from 'react-icons/lu'; -import AbsenceBox from './AbsenceBox'; +import AbsenceBox from '../../absences/AbsenceBox'; export interface EntityTableItem { id: number; diff --git a/src/components/LocationsTable.tsx b/src/components/dashboard/system_options/LocationsTable.tsx similarity index 100% rename from src/components/LocationsTable.tsx rename to src/components/dashboard/system_options/LocationsTable.tsx diff --git a/src/components/SubjectsTable.tsx b/src/components/dashboard/system_options/SubjectsTable.tsx similarity index 100% rename from src/components/SubjectsTable.tsx rename to src/components/dashboard/system_options/SubjectsTable.tsx diff --git a/src/components/SystemChangesConfirmationDialog.tsx b/src/components/dashboard/system_options/SystemChangesConfirmationDialog.tsx similarity index 100% rename from src/components/SystemChangesConfirmationDialog.tsx rename to src/components/dashboard/system_options/SystemChangesConfirmationDialog.tsx diff --git a/src/components/SystemOptionsModal.tsx b/src/components/dashboard/system_options/SystemOptionsModal.tsx similarity index 99% rename from src/components/SystemOptionsModal.tsx rename to src/components/dashboard/system_options/SystemOptionsModal.tsx index 9ab6a008..b580ea7d 100644 --- a/src/components/SystemOptionsModal.tsx +++ b/src/components/dashboard/system_options/SystemOptionsModal.tsx @@ -20,7 +20,7 @@ import { import { Location, SubjectAPI } from '@utils/types'; import React, { useCallback, useEffect, useState } from 'react'; import { IoCloseOutline, IoSettingsOutline } from 'react-icons/io5'; -import { useChangeManagement } from '../../hooks/useChangeManagement'; +import { useChangeManagement } from '../../../../hooks/useChangeManagement'; import LocationsTable from './LocationsTable'; import SubjectsTable from './SubjectsTable'; import SystemChangesConfirmationDialog from './SystemChangesConfirmationDialog'; diff --git a/src/components/SystemSettings.tsx b/src/components/dashboard/system_options/SystemSettings.tsx similarity index 100% rename from src/components/SystemSettings.tsx rename to src/components/dashboard/system_options/SystemSettings.tsx diff --git a/src/components/UnsavedChangesDialog.tsx b/src/components/dashboard/system_options/UnsavedChangesDialog.tsx similarity index 100% rename from src/components/UnsavedChangesDialog.tsx rename to src/components/dashboard/system_options/UnsavedChangesDialog.tsx diff --git a/src/components/EditableRoleCell.tsx b/src/components/dashboard/user_management/EditableRoleCell.tsx similarity index 100% rename from src/components/EditableRoleCell.tsx rename to src/components/dashboard/user_management/EditableRoleCell.tsx diff --git a/src/components/EditableSubscriptionsCell.tsx b/src/components/dashboard/user_management/EditableSubscriptionsCell.tsx similarity index 100% rename from src/components/EditableSubscriptionsCell.tsx rename to src/components/dashboard/user_management/EditableSubscriptionsCell.tsx diff --git a/src/components/FilterPopup.tsx b/src/components/dashboard/user_management/FilterPopup.tsx similarity index 100% rename from src/components/FilterPopup.tsx rename to src/components/dashboard/user_management/FilterPopup.tsx diff --git a/src/components/OperatorMenu.tsx b/src/components/dashboard/user_management/OperatorMenu.tsx similarity index 100% rename from src/components/OperatorMenu.tsx rename to src/components/dashboard/user_management/OperatorMenu.tsx diff --git a/src/components/UserManagementCard.tsx b/src/components/dashboard/user_management/UserManagementCard.tsx similarity index 100% rename from src/components/UserManagementCard.tsx rename to src/components/dashboard/user_management/UserManagementCard.tsx diff --git a/src/components/UserManagementTable.tsx b/src/components/dashboard/user_management/UserManagementTable.tsx similarity index 100% rename from src/components/UserManagementTable.tsx rename to src/components/dashboard/user_management/UserManagementTable.tsx diff --git a/src/components/SistemaLogoColour.tsx b/src/components/ui/branding/SistemaLogoColour.tsx similarity index 100% rename from src/components/SistemaLogoColour.tsx rename to src/components/ui/branding/SistemaLogoColour.tsx diff --git a/src/components/CircularProgress.tsx b/src/components/ui/feedback/CircularProgress.tsx similarity index 100% rename from src/components/CircularProgress.tsx rename to src/components/ui/feedback/CircularProgress.tsx diff --git a/src/components/CustomTooltip.tsx b/src/components/ui/feedback/CustomTooltip.tsx similarity index 100% rename from src/components/CustomTooltip.tsx rename to src/components/ui/feedback/CustomTooltip.tsx diff --git a/src/components/FileUpload.tsx b/src/components/ui/input/FileUpload.tsx similarity index 100% rename from src/components/FileUpload.tsx rename to src/components/ui/input/FileUpload.tsx diff --git a/src/components/InputDropdown.tsx b/src/components/ui/input/InputDropdown.tsx similarity index 100% rename from src/components/InputDropdown.tsx rename to src/components/ui/input/InputDropdown.tsx diff --git a/src/components/SearchDropdown.tsx b/src/components/ui/input/SearchDropdown.tsx similarity index 100% rename from src/components/SearchDropdown.tsx rename to src/components/ui/input/SearchDropdown.tsx diff --git a/src/components/ProfileMenu.tsx b/src/components/ui/profile/ProfileMenu.tsx similarity index 100% rename from src/components/ProfileMenu.tsx rename to src/components/ui/profile/ProfileMenu.tsx diff --git a/src/components/SignInButton.tsx b/src/components/ui/profile/SignInButton.tsx similarity index 100% rename from src/components/SignInButton.tsx rename to src/components/ui/profile/SignInButton.tsx diff --git a/src/components/SignOutButton.tsx b/src/components/ui/profile/SignOutButton.tsx similarity index 100% rename from src/components/SignOutButton.tsx rename to src/components/ui/profile/SignOutButton.tsx diff --git a/src/pages/calendar.tsx b/src/pages/calendar.tsx index fb947ff9..d4223c62 100644 --- a/src/pages/calendar.tsx +++ b/src/pages/calendar.tsx @@ -26,12 +26,12 @@ import { getDayCellClassNames } from '@utils/getDayCellClassNames'; import { EventDetails } from '@utils/types'; import { useRouter, useSearchParams } from 'next/navigation'; import React, { useCallback, useEffect, useRef, useState } from 'react'; -import AbsenceBox from '../components/AbsenceBox'; -import AbsenceDetails from '../components/AbsenceDetails'; -import CalendarHeader from '../components/CalendarHeader'; -import CalendarSidebar from '../components/CalendarSidebar'; -import { CalendarTabs } from '../components/CalendarTabs'; -import DeclareAbsenceForm from '../components/DeclareAbsenceForm'; +import AbsenceBox from '../components/absences/AbsenceBox'; +import AbsenceDetails from '../components/absences/details/AbsenceDetails'; +import CalendarHeader from '../components/calendar/header/CalendarHeader'; +import CalendarSidebar from '../components/calendar/sidebar/CalendarSidebar'; +import { CalendarTabs } from '../components/calendar/CalendarTabs'; +import DeclareAbsenceForm from '../components/absences/declare/DeclareAbsenceForm'; const Calendar: React.FC = () => { const { refetchUserData, ...userData } = useUserData(); diff --git a/src/pages/dashboard.tsx b/src/pages/dashboard.tsx index 5d6c26dd..9fc70788 100644 --- a/src/pages/dashboard.tsx +++ b/src/pages/dashboard.tsx @@ -3,10 +3,10 @@ import { useUserData } from '@hooks/useUserData'; import { Role, YearlyAbsenceData } from '@utils/types'; import { useRouter } from 'next/navigation'; import { useEffect, useState, useCallback, useRef } from 'react'; -import DashboardHeader from '../components/DashboardHeader'; -import MonthlyAbsencesCard from '../components/MonthlyAbsencesCard'; -import TotalAbsencesCard from '../components/TotalAbsencesCard'; -import UserManagementCard from '../components/UserManagementCard'; +import DashboardHeader from '../components/dashboard/header/DashboardHeader'; +import MonthlyAbsencesCard from '../components/dashboard/stats/MonthlyAbsencesCard'; +import TotalAbsencesCard from '../components/dashboard/stats/TotalAbsencesCard'; +import UserManagementCard from '../components/dashboard/user_management/UserManagementCard'; export default function DashboardPage() { const theme = useTheme(); const userData = useUserData(); diff --git a/src/pages/index.tsx b/src/pages/index.tsx index f02a8efa..44413a89 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -2,8 +2,8 @@ import { Box, Flex, Text } from '@chakra-ui/react'; import { useSession } from 'next-auth/react'; import { useRouter } from 'next/navigation'; import { useEffect } from 'react'; -import { SignInButton } from '../components/SignInButton'; -import { TacetLogo } from '../components/SistemaLogoColour'; +import { SignInButton } from '../components/ui/profile/SignInButton'; +import { TacetLogo } from '../components/ui/branding/SistemaLogoColour'; export default function Index(): JSX.Element | null { const { data: session, status } = useSession(); From 7d0b8dded07da0e28f7cd58b57c86e283a0fd515 Mon Sep 17 00:00:00 2001 From: Colin Toft Date: Sat, 12 Apr 2025 21:54:55 -0400 Subject: [PATCH 2/2] Fix oopsie in the hook --- hooks/useUserFiltering.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hooks/useUserFiltering.ts b/hooks/useUserFiltering.ts index 45ea8de9..2bba4f2f 100644 --- a/hooks/useUserFiltering.ts +++ b/hooks/useUserFiltering.ts @@ -1,6 +1,6 @@ import { FilterOptions, UserAPI } from '@utils/types'; import { useMemo } from 'react'; -import { NO_EMAIL_TAGS } from '../src/components/FilterPopup'; +import { NO_EMAIL_TAGS } from '../src/components/dashboard/user_management/FilterPopup'; const useUserFiltering = ( users: UserAPI[],