From f63efb0e12a93ea8a49d820429be00602ee991b0 Mon Sep 17 00:00:00 2001 From: "Kemas M. Aryadary Rasyad" <112590882+aryadary0706@users.noreply.github.com> Date: Thu, 25 Jun 2026 00:35:53 +0700 Subject: [PATCH 1/2] Implementasi Backend pada login, FAQ, Settings Intern, Projects Intern, Home Intern --- src/App.tsx | 51 ++++++----- src/Layout/Header-internify.tsx | 2 +- src/Pages/NotFound.tsx | 0 src/Pages/internify/Breadcumbs.tsx | 4 +- src/Pages/internify/FAQpage.tsx | 81 +++++++++-------- src/Pages/internify/LoginInternify.tsx | 46 +++++++--- src/Pages/internify/SettingsPage.tsx | 90 +++++++++++++++---- src/Pages/internify/intern/ForumTab.tsx | 32 +++++-- src/Pages/internify/intern/HomeInternPage.tsx | 6 +- src/Pages/internify/intern/ParticipantTab.tsx | 69 ++++++++++---- .../internify/intern/ProjectDetailPage.tsx | 18 ++-- src/Pages/internify/intern/ProjectsPage.tsx | 18 +++- .../intern/components/HomeCalendar.tsx | 14 +-- .../intern/components/HomeHeader.tsx | 24 +++-- .../intern/components/HomeProjectList.tsx | 49 ++++++---- .../intern/components/ProjectTaskCard.tsx | 36 ++++---- .../intern/components/ProjectsCard.tsx | 79 ++++++++-------- .../intern/components/SidebarIntern.tsx | 44 +++++---- .../intern/components/TaskTimeline.tsx | 42 ++++++--- .../{HomePage.tsx => HomeMentorPage.tsx} | 0 .../mentor/components/SidebarMentor.tsx | 28 +++--- src/Pages/utils/ProtectedRoute.tsx | 19 ++-- src/hooks/useProjectDetail.ts | 59 ++++++++++++ src/hooks/useProjects.ts | 40 +++++++++ src/index.css | 11 ++- src/{Pages/utils => lib}/api.ts | 1 - src/services/ProjectService.ts | 29 ++++++ src/types/project.types.ts | 70 +++++++++++++++ src/types/task.types.ts | 0 29 files changed, 682 insertions(+), 280 deletions(-) create mode 100644 src/Pages/NotFound.tsx rename src/Pages/internify/mentor/{HomePage.tsx => HomeMentorPage.tsx} (100%) create mode 100644 src/hooks/useProjectDetail.ts create mode 100644 src/hooks/useProjects.ts rename src/{Pages/utils => lib}/api.ts (87%) create mode 100644 src/services/ProjectService.ts create mode 100644 src/types/project.types.ts create mode 100644 src/types/task.types.ts diff --git a/src/App.tsx b/src/App.tsx index 35c8ea7..b70fb6f 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -33,7 +33,7 @@ import { InternLayout, MentorLayout } from "./Pages/Internify/layout"; import ProjectsPage from "./Pages/Internify/intern/ProjectsPage"; import SertificatePage from "./Pages/Internify/intern/SertificatePage"; import ProjectDetailPage from "./Pages/Internify/intern/ProjectDetailPage"; -import HomeMentorPage from "./Pages/Internify/mentor/HomePage"; +import HomeMentorPage from "./Pages/Internify/mentor/HomeMentorPage"; import MentorProjectsPage from "./Pages/Internify/mentor/BaseProjectsPage"; import MentorCertificatePage from "./Pages/Internify/mentor/CertificatePage"; import MentorInternPage from "./Pages/Internify/mentor/InternsPage"; @@ -88,30 +88,37 @@ function App() { } /> - }> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> + {/* Intern only */} + }> + }> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + - }> - } /> - } /> - } /> - } /> - } /> - } /> - }/> - } /> - } /> - } /> + {/* Mentor only */} + }> + }> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + ); diff --git a/src/Layout/Header-internify.tsx b/src/Layout/Header-internify.tsx index f17c057..553e2f7 100644 --- a/src/Layout/Header-internify.tsx +++ b/src/Layout/Header-internify.tsx @@ -9,7 +9,7 @@ export default function Header({ toggleSidebar }: { toggleSidebar: () => void })
diff --git a/src/Pages/NotFound.tsx b/src/Pages/NotFound.tsx new file mode 100644 index 0000000..e69de29 diff --git a/src/Pages/internify/Breadcumbs.tsx b/src/Pages/internify/Breadcumbs.tsx index 8691960..5416ede 100644 --- a/src/Pages/internify/Breadcumbs.tsx +++ b/src/Pages/internify/Breadcumbs.tsx @@ -54,7 +54,7 @@ export default function Breadcrumbs(){ return true; }); return ( -