diff --git a/src/app/components/dashboard/dashboard.ts b/src/app/components/dashboard/dashboard.ts
index 453e81f..ccd9b38 100644
--- a/src/app/components/dashboard/dashboard.ts
+++ b/src/app/components/dashboard/dashboard.ts
@@ -25,6 +25,41 @@ export class Dashboard implements OnInit {
});
}
+ editWorkspace(workspace: Workspace) {
+ const updatedName = window.prompt('Edit workspace name', workspace.name)?.trim();
+ if (!updatedName) {
+ return;
+ }
+
+ const updatedDescriptionInput = window.prompt('Edit workspace description', workspace.description ?? '');
+ if (updatedDescriptionInput === null) {
+ return;
+ }
+
+ const updatedDescription = updatedDescriptionInput.trim();
+
+ this.workspaceService.updateWorkspace(workspace.id, updatedName, updatedDescription).subscribe(updatedWorkspace => {
+ if (!updatedWorkspace) {
+ return;
+ }
+ this.workspaces = this.workspaces.map(ws => ws.id === updatedWorkspace.id ? updatedWorkspace : ws);
+ });
+ }
+
+ deleteWorkspace(workspace: Workspace) {
+ const confirmed = window.confirm(`Delete workspace "${workspace.name}"?`);
+ if (!confirmed) {
+ return;
+ }
+
+ this.workspaceService.deleteWorkspace(workspace.id).subscribe(deleted => {
+ if (!deleted) {
+ return;
+ }
+ this.workspaces = this.workspaces.filter(ws => ws.id !== workspace.id);
+ });
+ }
+
logout() {
this.authService.logout();
this.router.navigate(['/login']);
diff --git a/src/app/components/workspace/create-workspace.css b/src/app/components/workspace/create-workspace.css
index e8cdb50..4de2a73 100644
--- a/src/app/components/workspace/create-workspace.css
+++ b/src/app/components/workspace/create-workspace.css
@@ -28,10 +28,13 @@ label {
font-weight: 600;
}
-input {
+input,
+textarea {
padding: 10px 12px;
border: 1px solid #d0d7de;
border-radius: 6px;
+ font: inherit;
+ resize: vertical;
}
.actions {
diff --git a/src/app/components/workspace/create-workspace.html b/src/app/components/workspace/create-workspace.html
index a02bd2e..b7725db 100644
--- a/src/app/components/workspace/create-workspace.html
+++ b/src/app/components/workspace/create-workspace.html
@@ -14,6 +14,16 @@ Create Workspace
placeholder="e.g. Product Team"
/>
+
+
+