feat: now user can edit view (#793)

* feat: now user can edit view

* fix: build error
This commit is contained in:
Saheb Giri 2023-04-12 15:33:21 +05:30 committed by GitHub
parent 0f9812cf2c
commit 032ef831b2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 69 additions and 70 deletions

View file

@ -25,8 +25,11 @@ import { IView } from "types";
import type { NextPage } from "next";
const ProjectViews: NextPage = () => {
const [isCreateViewModalOpen, setIsCreateViewModalOpen] = useState(false);
const [selectedView, setSelectedView] = useState<IView | null>(null);
const [createUpdateViewModal, setCreateUpdateViewModal] = useState(false);
const [selectedViewToUpdate, setSelectedViewToUpdate] = useState<IView | null>(null);
const [deleteViewModal, setDeleteViewModal] = useState(false);
const [selectedViewToDelete, setSelectedViewToDelete] = useState<IView | null>(null);
const router = useRouter();
const { workspaceSlug, projectId } = router.query;
@ -45,6 +48,16 @@ const ProjectViews: NextPage = () => {
: null
);
const handleEditView = (view: IView) => {
setSelectedViewToUpdate(view);
setCreateUpdateViewModal(true);
};
const handleDeleteView = (view: IView) => {
setSelectedViewToDelete(view);
setDeleteViewModal(true);
};
return (
<ProjectAuthorizationWrapper
meta={{
@ -73,14 +86,14 @@ const ProjectViews: NextPage = () => {
}
>
<CreateUpdateViewModal
isOpen={isCreateViewModalOpen}
handleClose={() => setIsCreateViewModalOpen(false)}
isOpen={createUpdateViewModal}
handleClose={() => setCreateUpdateViewModal(false)}
data={selectedViewToUpdate}
/>
<DeleteViewModal
isOpen={!!selectedView}
data={selectedView}
onClose={() => setSelectedView(null)}
onSuccess={() => setSelectedView(null)}
isOpen={deleteViewModal}
data={selectedViewToDelete}
setIsOpen={setDeleteViewModal}
/>
{views ? (
views.length > 0 ? (
@ -88,7 +101,12 @@ const ProjectViews: NextPage = () => {
<h3 className="text-3xl font-semibold text-black">Views</h3>
<ul role="list" className="divide-y">
{views.map((view) => (
<SingleViewItem key={view.id} view={view} setSelectedView={setSelectedView} />
<SingleViewItem
key={view.id}
view={view}
handleEditView={() => handleEditView(view)}
handleDeleteView={() => handleDeleteView(view)}
/>
))}
</ul>
</div>