refactor: clean up event methods

Signed-off-by: Sebastian <krupinski01@gmail.com>
This commit is contained in:
2026-05-17 17:52:16 -04:00
parent 7853a21288
commit 5a58c3c7ac
5 changed files with 160 additions and 210 deletions

View File

@@ -82,7 +82,7 @@ export const useMailStore = defineStore('mailStore', () => {
void loadFoldersForService(service,{ selectInbox: true })
})
} catch (error) {
console.error('[Mail] Failed to initialize:', error)
console.error('[Mail][Operations] Failed to initialize:', error)
} finally {
loading.value = false
}
@@ -124,10 +124,7 @@ export const useMailStore = defineStore('mailStore', () => {
} catch (error) {
const message = error instanceof Error ? error.message : 'Failed to load folders'
_setServiceFolderError(service.provider, service.identifier, message)
console.error(
`[Mail] Failed to load folders for ${service.provider}:${String(service.identifier)}:`,
error,
)
console.error(`[Mail][Operations] Failed to load folders for ${service.provider}:${String(service.identifier)}:`, error)
_updateSyncSources()
return {}
} finally {
@@ -313,13 +310,13 @@ export const useMailStore = defineStore('mailStore', () => {
try {
service = await servicesStore.serviceByIdentifier(identifier, true)
} catch (error) {
console.error(`[Mail] Failed to retrieve service ${identifier}:`, error)
console.error(`[Mail][Operations] Failed to retrieve service ${identifier}:`, error)
throw error
}
if (!service) {
const message = `Service ${identifier} not found`
console.error(`[Mail] ${message}`)
console.error(`[Mail][Operations] ${message}`)
throw new Error(message)
}
@@ -333,7 +330,7 @@ export const useMailStore = defineStore('mailStore', () => {
try {
await entitiesStore.list([folder.identifier])
} catch (error) {
console.error('[Mail] Failed to load messages:', error)
console.error('[Mail][Operations] Failed to load messages:', error)
}
_updateSyncSources()
@@ -376,7 +373,7 @@ export const useMailStore = defineStore('mailStore', () => {
return draft
} catch (error) {
console.error('[Mail] Failed to save draft:', error)
console.error('[Mail][Operations] Failed to save draft:', error)
throw error
} finally {
composerSaving.value = false
@@ -414,7 +411,7 @@ export const useMailStore = defineStore('mailStore', () => {
try {
await entitiesStore.delete([composerDraftIdentifier.value])
} catch (error) {
console.error('[Mail] Failed to delete draft after send:', error)
console.error('[Mail][Operations] Failed to delete draft after send:', error)
}
}
@@ -423,7 +420,7 @@ export const useMailStore = defineStore('mailStore', () => {
return response
} catch (error) {
const messageText = error instanceof Error ? error.message : 'Failed to send message'
console.error('[Mail] Failed to send message:', error)
console.error('[Mail][Operations] Failed to send message:', error)
notify(messageText, 'error')
throw error
} finally {
@@ -431,11 +428,7 @@ export const useMailStore = defineStore('mailStore', () => {
}
}
async function createFolder(
service: ServiceObject,
label: string,
parentFolder: CollectionObject | null = null,
): Promise<CollectionObject> {
async function createFolder(service: ServiceObject, label: string, parentFolder: CollectionObject | null = null): Promise<CollectionObject> {
if (service.identifier === null) {
throw new Error('Cannot create folder for a service without an identifier')
}
@@ -574,7 +567,7 @@ export const useMailStore = defineStore('mailStore', () => {
await collectionsStore.fetch(sourceCollections)
} catch (error) {
const messageText = error instanceof Error ? error.message : 'Failed to move messages'
console.error('[Mail] Failed to move messages:', error)
console.error('[Mail][Operations] Failed to move messages:', error)
notify(messageText, 'error')
throw error
} finally {
@@ -609,7 +602,7 @@ export const useMailStore = defineStore('mailStore', () => {
}
} catch (error) {
const messageText = error instanceof Error ? error.message : 'Failed to delete messages'
console.error('[Mail] Failed to delete messages:', error)
console.error('[Mail][Operations] Failed to delete messages:', error)
notify(messageText, 'error')
throw error
} finally {

View File

@@ -106,7 +106,7 @@ export const useMailUiStore = defineStore('mailUiStore', () => {
watch(
() => mailStore.currentMessages,
() => {
reconcileSelection()
messageSelectionReconcile()
},
)
@@ -208,16 +208,11 @@ export const useMailUiStore = defineStore('mailUiStore', () => {
composeVisible.value = false
}
async function afterSent() {
closeCompose()
await mailStore.reloadSelectedFolder()
}
function clearSelection() {
function messageSelectionClear() {
setSelectionList([])
}
function activateSelectionMode(message?: EntityObject) {
function messageSelectionModeActivate(message?: EntityObject) {
selectionMode.value = true
if (!message) {
@@ -231,12 +226,12 @@ export const useMailUiStore = defineStore('mailUiStore', () => {
}
}
function deactivateSelectionMode() {
function messageSelectionModeDeactivate() {
selectionMode.value = false
clearSelection()
messageSelectionClear()
}
function toggleMessageSelection(message: EntityObject) {
function messageSelectionToggleOne(message: EntityObject) {
const identifier = message.identifier
selectionMode.value = true
@@ -249,14 +244,18 @@ export const useMailUiStore = defineStore('mailUiStore', () => {
setSelectionList([...selectionList.value, identifier])
}
function selectAllCurrentMessages() {
function messageSelectionToggleAll(value: boolean) {
selectionMode.value = true
setSelectionList(mailStore.currentMessages.map(message => message.identifier))
if (value) {
setSelectionList(mailStore.currentMessages.map(message => message.identifier))
} else {
setSelectionList([])
}
}
function reconcileSelection() {
function messageSelectionReconcile() {
if (!mailStore.selectedFolder) {
clearSelection()
messageSelectionClear()
return
}
@@ -318,7 +317,7 @@ export const useMailUiStore = defineStore('mailUiStore', () => {
async function confirmMoveMessages(targetIdentifier: Parameters<typeof mailStore.moveMessages>[0]) {
await mailStore.moveMessages(targetIdentifier, moveMessagesDialogCandidates.value ?? [])
deactivateSelectionMode()
messageSelectionModeDeactivate()
closeMoveMessagesDialog()
}
@@ -507,11 +506,11 @@ export const useMailUiStore = defineStore('mailUiStore', () => {
openCompose,
closeCompose,
afterSent,
activateSelectionMode,
deactivateSelectionMode,
toggleMessageSelection,
selectAllCurrentMessages,
clearSelection,
messageSelectionModeActivate,
messageSelectionModeDeactivate,
messageSelectionToggleOne,
messageSelectionToggleAll,
messageSelectionClear,
validateCreateFolderName,
validateRenameFolderName,
openMoveMessagesDialog,