feat: collection delete
Signed-off-by: Sebastian <krupinski01@gmail.com>
This commit is contained in:
@@ -23,6 +23,7 @@ const emit = defineEmits<{
|
||||
select: [folder: CollectionObject]
|
||||
createFolder: [service: ServiceObject, parentFolder: CollectionObject | null]
|
||||
editFolder: [service: ServiceObject, folder: CollectionObject]
|
||||
deleteFolder: [service: ServiceObject, folder: CollectionObject]
|
||||
}>()
|
||||
|
||||
// Page-based navigation state per service account
|
||||
@@ -56,6 +57,10 @@ const getServiceFolders = (service: ServiceObject): CollectionObject[] => {
|
||||
return collectionsStore.collectionsForService(service.provider, service.identifier)
|
||||
}
|
||||
|
||||
const canDeleteFolder = (folder: CollectionObject): boolean => {
|
||||
return !folder.properties.role
|
||||
}
|
||||
|
||||
// Get icon for folder based on role
|
||||
const getFolderIcon = (folder: CollectionObject): string => {
|
||||
switch (folder.properties.role) {
|
||||
@@ -271,6 +276,14 @@ const getCurrentParentFolder = (service: ServiceObject): CollectionObject | null
|
||||
>
|
||||
<v-list-item-title>New Subfolder</v-list-item-title>
|
||||
</v-list-item>
|
||||
<v-list-item
|
||||
v-if="canDeleteFolder(folder)"
|
||||
prepend-icon="mdi-delete"
|
||||
base-color="error"
|
||||
@click="emit('deleteFolder', group.service, folder)"
|
||||
>
|
||||
<v-list-item-title>Delete Folder</v-list-item-title>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</template>
|
||||
@@ -420,6 +433,14 @@ const getCurrentParentFolder = (service: ServiceObject): CollectionObject | null
|
||||
>
|
||||
<v-list-item-title>New Subfolder</v-list-item-title>
|
||||
</v-list-item>
|
||||
<v-list-item
|
||||
v-if="canDeleteFolder(folder)"
|
||||
prepend-icon="mdi-delete"
|
||||
base-color="error"
|
||||
@click="emit('deleteFolder', group.service, folder)"
|
||||
>
|
||||
<v-list-item-title>Delete Folder</v-list-item-title>
|
||||
</v-list-item>
|
||||
</v-list>
|
||||
</v-menu>
|
||||
</template>
|
||||
|
||||
Reference in New Issue
Block a user