@@ -32,10 +32,15 @@ const {
|
||||
loading,
|
||||
selectedFolder,
|
||||
selectedMessage,
|
||||
selectedMessageIds,
|
||||
selectionModeActive,
|
||||
composeMode,
|
||||
composeReplyTo,
|
||||
currentMessages,
|
||||
moveDialogVisible,
|
||||
selectionCount,
|
||||
hasSelection,
|
||||
allCurrentMessagesSelected,
|
||||
} = storeToRefs(mailStore)
|
||||
|
||||
// Complex store/composable objects accessed directly (not simple refs)
|
||||
@@ -50,7 +55,24 @@ onMounted(async () => {
|
||||
// Handlers — thin wrappers that delegate to the store
|
||||
const handleFolderSelect = (folder: CollectionObject) => mailStore.selectFolder(folder)
|
||||
|
||||
const handleMessageSelect = (message: EntityObject) => mailStore.selectMessage(message, isMobile.value)
|
||||
const handleMessageOpen = (message: EntityObject) => mailStore.selectMessage(message, isMobile.value)
|
||||
|
||||
const handleMessageSelectionToggle = (message: EntityObject) => mailStore.toggleMessageSelection(message)
|
||||
|
||||
const handleSelectionModeActivate = (message: EntityObject) => mailStore.activateSelectionMode(message)
|
||||
|
||||
const handleSelectAllToggle = (value: boolean) => {
|
||||
if (value) {
|
||||
mailStore.selectAllCurrentMessages()
|
||||
return
|
||||
}
|
||||
|
||||
mailStore.clearSelection()
|
||||
}
|
||||
|
||||
const handleSelectionClear = () => mailStore.deactivateSelectionMode()
|
||||
|
||||
const handleSelectionMove = () => mailStore.openMoveDialogForSelection()
|
||||
|
||||
const handleCompose = (replyTo?: EntityObject) => mailStore.openCompose(replyTo)
|
||||
|
||||
@@ -65,7 +87,7 @@ const handleDelete = (message: EntityObject) => mailStore.deleteMessage(message)
|
||||
const handleMove = (message: EntityObject) => mailStore.openMoveDialog(message)
|
||||
|
||||
const handleMoveConfirm = async (folder: CollectionObject) => {
|
||||
await mailStore.moveMessage(folder)
|
||||
await mailStore.moveMessages(folder)
|
||||
}
|
||||
|
||||
const handleMoveCancel = () => mailStore.closeMoveDialog()
|
||||
@@ -181,9 +203,19 @@ const handleFolderCreated = (folder: CollectionObject) => mailStore.notify(`Fold
|
||||
<MessageList
|
||||
:messages="currentMessages"
|
||||
:selected-message="selectedMessage"
|
||||
:selected-message-ids="selectedMessageIds"
|
||||
:selection-mode-active="selectionModeActive"
|
||||
:selection-count="selectionCount"
|
||||
:has-selection="hasSelection"
|
||||
:all-current-messages-selected="allCurrentMessagesSelected"
|
||||
:selected-collection="selectedFolder"
|
||||
:loading="loading"
|
||||
@select="handleMessageSelect"
|
||||
@open="handleMessageOpen"
|
||||
@toggle-selection="handleMessageSelectionToggle"
|
||||
@activate-selection-mode="handleSelectionModeActivate"
|
||||
@toggle-select-all="handleSelectAllToggle"
|
||||
@clear-selection="handleSelectionClear"
|
||||
@move-selection="handleSelectionMove"
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user