@@ -1,7 +1,6 @@
|
||||
<script setup lang="ts">
|
||||
import { computed, ref, watch } from 'vue'
|
||||
import { useCollectionsStore } from '@MailManager/stores/collectionsStore'
|
||||
import { useServicesStore } from '@MailManager/stores/servicesStore'
|
||||
import { useMailStore } from '@/stores/mailStore'
|
||||
import type { ServiceObject, CollectionObject } from '@MailManager/models'
|
||||
import FolderSelectionTreeNode from './FolderSelectionTreeNode.vue'
|
||||
@@ -12,6 +11,8 @@ interface Props {
|
||||
title?: string
|
||||
confirmText?: string
|
||||
emptyText?: string
|
||||
service?: ServiceObject | null
|
||||
disabledFolderKeys?: string[]
|
||||
}
|
||||
|
||||
const props = withDefaults(defineProps<Props>(), {
|
||||
@@ -19,6 +20,8 @@ const props = withDefaults(defineProps<Props>(), {
|
||||
title: 'Move To',
|
||||
confirmText: 'Move',
|
||||
emptyText: 'No folders are available.',
|
||||
service: null,
|
||||
disabledFolderKeys: () => [],
|
||||
})
|
||||
|
||||
const emit = defineEmits<{
|
||||
@@ -28,7 +31,6 @@ const emit = defineEmits<{
|
||||
}>()
|
||||
|
||||
const collectionsStore = useCollectionsStore()
|
||||
const servicesStore = useServicesStore()
|
||||
const mailStore = useMailStore()
|
||||
|
||||
const selectedFolderKey = ref<string | null>(null)
|
||||
@@ -50,13 +52,7 @@ interface ServiceGroup {
|
||||
}
|
||||
|
||||
const serviceGroups = computed<ServiceGroup[]>(() => {
|
||||
const context = mailStore.moveDialogService
|
||||
|
||||
if (!context) {
|
||||
return []
|
||||
}
|
||||
|
||||
const service = servicesStore.serviceByIdentifier(mailStore.moveDialogService)
|
||||
const service = props.service ?? mailStore.moveDialogService
|
||||
|
||||
if (!service) {
|
||||
return []
|
||||
@@ -173,6 +169,7 @@ const handleConfirm = () => {
|
||||
:folder="folder"
|
||||
:service="group.service"
|
||||
:selected-folder-key="selectedFolderKey"
|
||||
:disabled-folder-keys="disabledFolderKeys"
|
||||
@select="handleSelect"
|
||||
/>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user