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() { - + Delete + + + 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 @@ + + + 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; } }