feat: navbar buttons depended on selected project

This commit is contained in:
2025-10-05 19:54:02 +04:00
parent b35961329e
commit 665625557d
15 changed files with 233 additions and 145 deletions

View File

@ -0,0 +1,39 @@
import { modals } from "@mantine/modals";
import { useProjectsContext } from "@/app/deals/contexts/ProjectsContext";
import { useDrawersContext } from "@/drawers/DrawersContext";
const useProjectActions = () => {
const { selectedProject, projectsCrud } = useProjectsContext();
const { openDrawer } = useDrawersContext();
const onCreateClick = () => {
modals.openContextModal({
modal: "enterNameModal",
title: "Создание проекта",
withCloseButton: true,
innerProps: {
onChange: projectsCrud.onCreate,
},
});
};
const onChangeClick = () => {
if (!selectedProject) return;
openDrawer({
key: "projectEditorDrawer",
props: {
value: selectedProject,
onChange: value => projectsCrud.onUpdate(value.id, value),
onDelete: projectsCrud.onDelete,
},
});
};
return {
onCreateClick,
onChangeClick,
};
};
export default useProjectActions;