fix: fixed redirecting on project select

This commit is contained in:
2025-10-07 11:14:06 +04:00
parent 428a6aca82
commit 820d9b4d33
2 changed files with 15 additions and 14 deletions

View File

@ -1,14 +1,16 @@
"use client";
import React, { useMemo, useState } from "react";
import { useMemo, useState } from "react";
import { usePathname, useRouter } from "next/navigation";
import { ProjectsCrud, useProjectsCrud } from "@/hooks/cruds/useProjectsCrud";
import useProjectsList from "@/hooks/lists/useProjectsList";
import useIsMobile from "@/hooks/utils/useIsMobile";
import { ProjectSchema } from "@/lib/client";
import makeContext from "@/lib/contextFactory/contextFactory";
type ProjectsContextState = {
selectedProject: ProjectSchema | null;
setSelectedProjectId: React.Dispatch<React.SetStateAction<number | null>>;
setSelectedProjectId: (id: number | null) => void;
refetchProjects: () => void;
projects: ProjectSchema[];
projectsCrud: ProjectsCrud;
@ -17,6 +19,9 @@ type ProjectsContextState = {
const useProjectsContextState = (): ProjectsContextState => {
const { projects, refetch: refetchProjects, queryKey } = useProjectsList();
const isMobile = useIsMobile();
const pathname = usePathname();
const router = useRouter();
const [selectedProjectId, setSelectedProjectId] = useState<number | null>(
null
@ -38,11 +43,16 @@ const useProjectsContextState = (): ProjectsContextState => {
const projectsCrud = useProjectsCrud({ queryKey });
const handleSetSelectedProjectId = (id: number | null) => {
if (!isMobile && pathname !== "/deals") router.push("/deals");
setSelectedProjectId(id);
};
return {
projects,
selectedProject,
refetchProjects,
setSelectedProjectId,
setSelectedProjectId: handleSetSelectedProjectId,
projectsCrud,
modulesSet,
};