diff --git a/frontend/src/pages/ProjectDetails.tsx b/frontend/src/pages/ProjectDetails.tsx index 7470f4de2..556c93dc9 100644 --- a/frontend/src/pages/ProjectDetails.tsx +++ b/frontend/src/pages/ProjectDetails.tsx @@ -28,31 +28,38 @@ const ProjectDetailsPage = () => { useEffect(() => { const fetchProjectData = async () => { setIsLoading(true) - const { hits } = await fetchAlgoliaData('projects', projectKey, 1, projectKey) - if (hits && hits.length > 0) { - setProject(hits[0]) + try { + const { hits } = await fetchAlgoliaData('projects', projectKey, 1, projectKey) + if (hits && hits.length > 0) { + setProject(hits[0]) + } + } catch (error) { + return error + } finally { + setIsLoading(false) } - setIsLoading(false) } fetchProjectData() }, [projectKey]) - if (isLoading) + if (isLoading) { return (
) + } - if (!project) + if (!project) { return ( ) + } return (
@@ -62,18 +69,14 @@ const ProjectDetailsPage = () => { Inactive )}

{project.description}

+

Summary

{project.summary}

+
-
-

Project Details

- -

{project.summary}

-
-
- +

Type: {project.type[0].toUpperCase() + project.type.slice(1)}

@@ -96,6 +99,7 @@ const ProjectDetailsPage = () => {

+ { />
+
@@ -131,7 +136,7 @@ const ProjectDetailsPage = () => { `https://github.com/OWASP/${issue.repository.key}/issues/${issue.number}` } target="_blank" - rel="none" + rel="noopener noreferrer" className="text-[#1d7bd7] hover:underline dark:text-sky-600" > {issue.title} @@ -141,13 +146,13 @@ const ProjectDetailsPage = () => { {issue.author.name} {issue.author.name} @@ -164,10 +169,8 @@ const ProjectDetailsPage = () => { ) : (

No recent issues.

)} -
-
-

Recent Releases

+ {project.releases && project.releases.length > 0 ? (