feat: blobs fetch
Signed-off-by: Sebastian Krupinski <krupinski01@gmail.com>
This commit is contained in:
@@ -8,6 +8,7 @@ import { entityService } from '../services'
|
||||
import { EntityObject, MessageObject } from '../models'
|
||||
import type {
|
||||
EntityBlobSelector,
|
||||
EntityBlobsResponse,
|
||||
EntityDownloadRequest,
|
||||
EntityTransmitRequest,
|
||||
EntityTransmitResponse,
|
||||
@@ -508,6 +509,21 @@ export const useEntitiesStore = defineStore('mailEntitiesStore', () => {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fetch one or more message parts (attachments) inline as Blobs, for preview.
|
||||
*/
|
||||
async function blobs(
|
||||
target: EntityIdentifier,
|
||||
parts: EntityBlobSelector[],
|
||||
): Promise<EntityBlobsResponse> {
|
||||
try {
|
||||
return await entityService.blobs({ target, parts })
|
||||
} catch (error: any) {
|
||||
console.error('[Mail Manager][Store] - Failed to fetch attachment blobs:', error)
|
||||
throw error
|
||||
}
|
||||
}
|
||||
|
||||
// Return public API
|
||||
return {
|
||||
// State (readonly)
|
||||
@@ -530,5 +546,6 @@ export const useEntitiesStore = defineStore('mailEntitiesStore', () => {
|
||||
move,
|
||||
transmit,
|
||||
download,
|
||||
blobs,
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user