Implement workspace deletion

This commit is contained in:
2024-10-27 21:19:42 +01:00
parent b679af08e7
commit ba4a0dadca
4 changed files with 153 additions and 16 deletions

View File

@@ -2,14 +2,18 @@ import React, { useState } from 'react';
import { Box, Button, Title } from '@mantine/core';
import DeleteWorkspaceModal from '../modals/DeleteWorkspaceModal';
import { useWorkspace } from '../../contexts/WorkspaceContext';
import { useModalContext } from '../../contexts/ModalContext';
const DangerZoneSettings = () => {
const { currentWorkspace } = useWorkspace();
const { currentWorkspace, workspaces, deleteCurrentWorkspace } =
useWorkspace();
const { setSettingsModalVisible } = useModalContext();
const [deleteModalOpened, setDeleteModalOpened] = useState(false);
const handleDelete = () => {
// TODO: Implement delete functionality
const handleDelete = async () => {
await deleteCurrentWorkspace();
setDeleteModalOpened(false);
setSettingsModalVisible(false);
};
return (
@@ -23,6 +27,12 @@ const DangerZoneSettings = () => {
variant="light"
onClick={() => setDeleteModalOpened(true)}
fullWidth
disabled={workspaces.length <= 1}
title={
workspaces.length <= 1
? 'Cannot delete the last workspace'
: 'Delete this workspace'
}
>
Delete Workspace
</Button>