diff --git a/apps/platform/src/components/dashboard/project/createProjectDialogue/index.tsx b/apps/platform/src/components/dashboard/project/createProjectDialogue/index.tsx index a3c27af0b..8014385ad 100644 --- a/apps/platform/src/components/dashboard/project/createProjectDialogue/index.tsx +++ b/apps/platform/src/components/dashboard/project/createProjectDialogue/index.tsx @@ -1,6 +1,6 @@ import type { CreateProjectRequest } from '@keyshade/schema' import { toast } from 'sonner' -import { useCallback, useMemo, useState } from 'react' +import { useCallback, useEffect, useMemo, useRef, useState } from 'react' import { useAtom, useAtomValue } from 'jotai' import { AddSVG } from '@public/svg/shared' import { Button } from '@/components/ui/button' @@ -32,6 +32,7 @@ import { import { useHttp } from '@/hooks/use-http' export default function CreateProjectDialogue(): JSX.Element { + const privateKeyWarningRef = useRef(null) const [projects, setProjects] = useAtom(projectsOfWorkspaceAtom) const [isCreateProjectDialogOpen, setIsCreateProjectDialogOpen] = useAtom( createProjectOpenAtom @@ -110,10 +111,21 @@ export default function CreateProjectDialogue(): JSX.Element { ]) const toggleDialog = useCallback( - () => setIsCreateProjectDialogOpen((prev) => !prev), - [setIsCreateProjectDialogOpen] + () => { + setIsCreateProjectDialogOpen((prev) => !prev) + if (!isCreateProjectDialogOpen) { + setNewProjectData((prev) => ({ ...prev, storePrivateKey: false })) // Reset switch state + } + }, + [isCreateProjectDialogOpen, setIsCreateProjectDialogOpen] ) + useEffect(() => { + if (newProjectData.storePrivateKey && privateKeyWarningRef.current) { + privateKeyWarningRef.current.scrollIntoView({ behavior: 'smooth' }) + } + }, [newProjectData.storePrivateKey]) + return ( )} - -
+ +
- Create Projects + Create Project - + Create your new project
-
-
+
+
{/* NAME */} -
+