diff --git a/frontend/components/DirectoryEntry.vue b/frontend/components/DirectoryEntry.vue
index fd51771..59083f7 100644
--- a/frontend/components/DirectoryEntry.vue
+++ b/frontend/components/DirectoryEntry.vue
@@ -18,11 +18,11 @@ const { entry, disabled } = defineProps<{
const deleting = ref(false);
-async function submitDelete() {
+async function submitDelete(force: boolean = false) {
deleting.value = true;
if (entry.fileType === 'directory') {
- await deleteWarrenDirectory(warrenRoute.value, entry.name);
+ await deleteWarrenDirectory(warrenRoute.value, entry.name, force);
} else {
await deleteWarrenFile(warrenRoute.value, entry.name);
}
@@ -56,10 +56,20 @@ async function submitDelete() {
-
+ submitDelete(false)">
Delete
+ submitDelete(true)"
+ >
+
+ Force delete
+
diff --git a/frontend/components/DirectoryListContextMenu.vue b/frontend/components/DirectoryListContextMenu.vue
new file mode 100644
index 0000000..90b99b4
--- /dev/null
+++ b/frontend/components/DirectoryListContextMenu.vue
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+ Create directory
+
+
+
+
diff --git a/frontend/components/actions/CreateDirectoryDialog.vue b/frontend/components/actions/CreateDirectoryDialog.vue
index 124b1c5..560c394 100644
--- a/frontend/components/actions/CreateDirectoryDialog.vue
+++ b/frontend/components/actions/CreateDirectoryDialog.vue
@@ -11,9 +11,9 @@ import {
import { createDirectory } from '~/lib/api/warrens';
const warrenRoute = useWarrenRoute();
+const dialog = useCreateDirectoryDialog();
const creating = ref(false);
-const open = ref(false);
const directoryName = ref('');
async function submit() {
@@ -28,13 +28,13 @@ async function submit() {
if (success) {
directoryName.value = '';
- open.value = false;
+ dialog.open = false;
}
}
-