@haex-space/vault-sdk 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1426,6 +1426,14 @@ declare class MailAPI {
1426
1426
  fetchEnvelopesAsync(imap: ImapConfig, mailbox: string, range: FetchRange): Promise<MessageEnvelope[]>;
1427
1427
  /** Fetch a full message (envelope + body + attachment metadata) by UID. */
1428
1428
  fetchMessageAsync(imap: ImapConfig, mailbox: string, uid: number): Promise<MailMessage>;
1429
+ /**
1430
+ * Fetch a single attachment's raw bytes by its `partIndex` (from the
1431
+ * `attachments` array of a fetched `MailMessage`), returned as a
1432
+ * standard-alphabet base64 string. The base64 form drops straight into
1433
+ * `OutgoingAttachment.data` when forwarding, and decodes to bytes for
1434
+ * viewing or downloading.
1435
+ */
1436
+ fetchAttachmentAsync(imap: ImapConfig, mailbox: string, uid: number, partIndex: number): Promise<string>;
1429
1437
  /**
1430
1438
  * Set or unset IMAP flags. Use `flags=["\\Seen"]` + `add=true` to
1431
1439
  * mark messages as read; `add=false` removes the flag(s).
@@ -1426,6 +1426,14 @@ declare class MailAPI {
1426
1426
  fetchEnvelopesAsync(imap: ImapConfig, mailbox: string, range: FetchRange): Promise<MessageEnvelope[]>;
1427
1427
  /** Fetch a full message (envelope + body + attachment metadata) by UID. */
1428
1428
  fetchMessageAsync(imap: ImapConfig, mailbox: string, uid: number): Promise<MailMessage>;
1429
+ /**
1430
+ * Fetch a single attachment's raw bytes by its `partIndex` (from the
1431
+ * `attachments` array of a fetched `MailMessage`), returned as a
1432
+ * standard-alphabet base64 string. The base64 form drops straight into
1433
+ * `OutgoingAttachment.data` when forwarding, and decodes to bytes for
1434
+ * viewing or downloading.
1435
+ */
1436
+ fetchAttachmentAsync(imap: ImapConfig, mailbox: string, uid: number, partIndex: number): Promise<string>;
1429
1437
  /**
1430
1438
  * Set or unset IMAP flags. Use `flags=["\\Seen"]` + `add=true` to
1431
1439
  * mark messages as read; `add=false` removes the flag(s).
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { H as HaexVaultSdk } from './client-BW3ayV19.mjs';
2
- export { A as AuthorizedClient, B as BlockedClient, C as ConnectionSecurity, D as DatabaseAPI, a as DecryptedSpace, b as DeepLink, c as Device, d as DeviceInfo, e as DeviceType, f as DirEntry, E as ExternalAuthDecision, g as ExternalConnection, h as ExternalConnectionErrorCode, i as ExternalConnectionState, j as ExternalRequest, k as ExternalRequestEvent, l as ExternalRequestHandler, m as ExternalRequestPayload, n as ExternalResponse, F as FileStat, o as FilesystemAPI, I as ImapConfig, K as KnownPath, p as KnownPaths, L as LOCALSEND_EVENTS, q as LocalSendAPI, r as LocalSendEvent, s as LocalSendFileInfo, t as LocalSendSettings, M as MailAPI, u as MailAccount, v as MailAddress, w as MailAttachment, x as MailFetchRange, y as MailMessage, z as MailboxInfo, G as MessageEnvelope, N as NotificationAction, J as NotificationClickEvent, O as NotificationOptions, P as NotificationsAPI, Q as OutgoingAttachment, R as OutgoingMessage, T as PasswordInput, U as PasswordItemFull, V as PasswordItemSummary, W as PasswordKeyValue, X as PasswordKeyValueInput, Y as PasswordsAPI, Z as PendingAuthorization, _ as PendingTransfer, $ as PermissionsAPI, a0 as RemoteAddBackendRequest, a1 as RemoteS3Config, a2 as RemoteS3PublicConfig, a3 as RemoteStorageAPI, a4 as RemoteStorageBackendInfo, a5 as RemoteStorageObjectInfo, a6 as RemoteUpdateBackendRequest, a7 as RequestedExtension, a8 as SelectFileOptions, a9 as SelectFolderOptions, aa as ServerInfo, ab as ServerStatus, ac as SessionAuthorization, ad as SharedSpace, ae as ShellAPI, af as ShellCreateOptions, ag as ShellCreateResponse, ah as ShellExitEvent, ai as ShellOutputEvent, aj as SmtpConfig, ak as SpaceAccessTokenInfo, al as SpaceAssignment, am as SpaceInvite, an as SpaceKeyGrantInfo, ao as SpaceMemberInfo, ap as SpacesAPI, aq as SyncBackendInfo, ar as TransferDirection, as as TransferProgress, at as TransferState, au as WebAPI, av as canExternalClientSendRequests, aw as isExternalClientConnected } from './client-BW3ayV19.mjs';
1
+ import { H as HaexVaultSdk } from './client-C9FyPkqp.mjs';
2
+ export { A as AuthorizedClient, B as BlockedClient, C as ConnectionSecurity, D as DatabaseAPI, a as DecryptedSpace, b as DeepLink, c as Device, d as DeviceInfo, e as DeviceType, f as DirEntry, E as ExternalAuthDecision, g as ExternalConnection, h as ExternalConnectionErrorCode, i as ExternalConnectionState, j as ExternalRequest, k as ExternalRequestEvent, l as ExternalRequestHandler, m as ExternalRequestPayload, n as ExternalResponse, F as FileStat, o as FilesystemAPI, I as ImapConfig, K as KnownPath, p as KnownPaths, L as LOCALSEND_EVENTS, q as LocalSendAPI, r as LocalSendEvent, s as LocalSendFileInfo, t as LocalSendSettings, M as MailAPI, u as MailAccount, v as MailAddress, w as MailAttachment, x as MailFetchRange, y as MailMessage, z as MailboxInfo, G as MessageEnvelope, N as NotificationAction, J as NotificationClickEvent, O as NotificationOptions, P as NotificationsAPI, Q as OutgoingAttachment, R as OutgoingMessage, T as PasswordInput, U as PasswordItemFull, V as PasswordItemSummary, W as PasswordKeyValue, X as PasswordKeyValueInput, Y as PasswordsAPI, Z as PendingAuthorization, _ as PendingTransfer, $ as PermissionsAPI, a0 as RemoteAddBackendRequest, a1 as RemoteS3Config, a2 as RemoteS3PublicConfig, a3 as RemoteStorageAPI, a4 as RemoteStorageBackendInfo, a5 as RemoteStorageObjectInfo, a6 as RemoteUpdateBackendRequest, a7 as RequestedExtension, a8 as SelectFileOptions, a9 as SelectFolderOptions, aa as ServerInfo, ab as ServerStatus, ac as SessionAuthorization, ad as SharedSpace, ae as ShellAPI, af as ShellCreateOptions, ag as ShellCreateResponse, ah as ShellExitEvent, ai as ShellOutputEvent, aj as SmtpConfig, ak as SpaceAccessTokenInfo, al as SpaceAssignment, am as SpaceInvite, an as SpaceKeyGrantInfo, ao as SpaceMemberInfo, ap as SpacesAPI, aq as SyncBackendInfo, ar as TransferDirection, as as TransferProgress, at as TransferState, au as WebAPI, av as canExternalClientSendRequests, aw as isExternalClientConnected } from './client-C9FyPkqp.mjs';
3
3
  import { E as ExtensionManifest, h as SignedClaimPresentation, H as HaexHubConfig } from './types-fHuxbqa4.mjs';
4
4
  export { A as ApplicationContext, C as ClaimRequirement, i as ContextChangedEvent, j as DEFAULT_TIMEOUT, k as DatabaseColumnInfo, l as DatabaseExecuteParams, m as DatabasePermission, g as DatabasePermissionRequest, n as DatabaseQueryParams, D as DatabaseQueryResult, o as DatabaseTableInfo, c as EXTERNAL_EVENTS, p as ErrorCode, f as EventCallback, a as ExtensionInfo, q as ExtensionRuntimeMode, r as ExternalEvent, F as FileChangeEvent, s as FileChangePayload, t as FileChangeType, u as FilteredSyncTablesResult, v as HAEXTENSION_EVENTS, b as HaexHubEvent, w as HaexHubRequest, x as HaexHubResponse, y as HaexVaultSdkError, z as HaextensionEvent, I as IdentityClaim, B as ManifestI18nEntry, N as NOTIFICATION_EVENTS, G as NotificationEvent, J as PermissionDeniedError, K as PermissionErrorBase, L as PermissionErrorCode, O as PermissionPromptError, P as PermissionResponse, Q as PermissionStatus, R as SHELL_EVENTS, T as SearchQuery, U as SearchRequestEvent, S as SearchResult, V as ShellEvent, X as SyncTablesUpdatedEvent, Y as TABLE_SEPARATOR, W as WebRequestOptions, e as WebResponse, Z as getTableName, _ as isPermissionDeniedError, $ as isPermissionError, a0 as isPermissionPromptError } from './types-fHuxbqa4.mjs';
5
5
  export { H as HaextensionConfig } from './config-D_HXjsEV.mjs';
@@ -122,6 +122,8 @@ declare const MAIL_COMMANDS: {
122
122
  readonly fetchEnvelopes: "extension_mail_fetch_envelopes";
123
123
  /** Full message fetch (envelope + body + attachment metadata) */
124
124
  readonly fetchMessage: "extension_mail_fetch_message";
125
+ /** Fetch a single attachment's bytes (base64) by part index */
126
+ readonly fetchAttachment: "extension_mail_fetch_attachment";
125
127
  /** Set or unset IMAP flags on a UID set */
126
128
  readonly setFlags: "extension_mail_set_flags";
127
129
  /** MOVE messages between mailboxes (COPY+EXPUNGE fallback) */
@@ -785,6 +787,7 @@ declare const TAURI_COMMANDS: {
785
787
  readonly listMailboxes: "extension_mail_list_mailboxes";
786
788
  readonly fetchEnvelopes: "extension_mail_fetch_envelopes";
787
789
  readonly fetchMessage: "extension_mail_fetch_message";
790
+ readonly fetchAttachment: "extension_mail_fetch_attachment";
788
791
  readonly setFlags: "extension_mail_set_flags";
789
792
  readonly moveMessages: "extension_mail_move_messages";
790
793
  readonly appendMessage: "extension_mail_append_message";
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { H as HaexVaultSdk } from './client-Cm23j1wm.js';
2
- export { A as AuthorizedClient, B as BlockedClient, C as ConnectionSecurity, D as DatabaseAPI, a as DecryptedSpace, b as DeepLink, c as Device, d as DeviceInfo, e as DeviceType, f as DirEntry, E as ExternalAuthDecision, g as ExternalConnection, h as ExternalConnectionErrorCode, i as ExternalConnectionState, j as ExternalRequest, k as ExternalRequestEvent, l as ExternalRequestHandler, m as ExternalRequestPayload, n as ExternalResponse, F as FileStat, o as FilesystemAPI, I as ImapConfig, K as KnownPath, p as KnownPaths, L as LOCALSEND_EVENTS, q as LocalSendAPI, r as LocalSendEvent, s as LocalSendFileInfo, t as LocalSendSettings, M as MailAPI, u as MailAccount, v as MailAddress, w as MailAttachment, x as MailFetchRange, y as MailMessage, z as MailboxInfo, G as MessageEnvelope, N as NotificationAction, J as NotificationClickEvent, O as NotificationOptions, P as NotificationsAPI, Q as OutgoingAttachment, R as OutgoingMessage, T as PasswordInput, U as PasswordItemFull, V as PasswordItemSummary, W as PasswordKeyValue, X as PasswordKeyValueInput, Y as PasswordsAPI, Z as PendingAuthorization, _ as PendingTransfer, $ as PermissionsAPI, a0 as RemoteAddBackendRequest, a1 as RemoteS3Config, a2 as RemoteS3PublicConfig, a3 as RemoteStorageAPI, a4 as RemoteStorageBackendInfo, a5 as RemoteStorageObjectInfo, a6 as RemoteUpdateBackendRequest, a7 as RequestedExtension, a8 as SelectFileOptions, a9 as SelectFolderOptions, aa as ServerInfo, ab as ServerStatus, ac as SessionAuthorization, ad as SharedSpace, ae as ShellAPI, af as ShellCreateOptions, ag as ShellCreateResponse, ah as ShellExitEvent, ai as ShellOutputEvent, aj as SmtpConfig, ak as SpaceAccessTokenInfo, al as SpaceAssignment, am as SpaceInvite, an as SpaceKeyGrantInfo, ao as SpaceMemberInfo, ap as SpacesAPI, aq as SyncBackendInfo, ar as TransferDirection, as as TransferProgress, at as TransferState, au as WebAPI, av as canExternalClientSendRequests, aw as isExternalClientConnected } from './client-Cm23j1wm.js';
1
+ import { H as HaexVaultSdk } from './client--_QYySP0.js';
2
+ export { A as AuthorizedClient, B as BlockedClient, C as ConnectionSecurity, D as DatabaseAPI, a as DecryptedSpace, b as DeepLink, c as Device, d as DeviceInfo, e as DeviceType, f as DirEntry, E as ExternalAuthDecision, g as ExternalConnection, h as ExternalConnectionErrorCode, i as ExternalConnectionState, j as ExternalRequest, k as ExternalRequestEvent, l as ExternalRequestHandler, m as ExternalRequestPayload, n as ExternalResponse, F as FileStat, o as FilesystemAPI, I as ImapConfig, K as KnownPath, p as KnownPaths, L as LOCALSEND_EVENTS, q as LocalSendAPI, r as LocalSendEvent, s as LocalSendFileInfo, t as LocalSendSettings, M as MailAPI, u as MailAccount, v as MailAddress, w as MailAttachment, x as MailFetchRange, y as MailMessage, z as MailboxInfo, G as MessageEnvelope, N as NotificationAction, J as NotificationClickEvent, O as NotificationOptions, P as NotificationsAPI, Q as OutgoingAttachment, R as OutgoingMessage, T as PasswordInput, U as PasswordItemFull, V as PasswordItemSummary, W as PasswordKeyValue, X as PasswordKeyValueInput, Y as PasswordsAPI, Z as PendingAuthorization, _ as PendingTransfer, $ as PermissionsAPI, a0 as RemoteAddBackendRequest, a1 as RemoteS3Config, a2 as RemoteS3PublicConfig, a3 as RemoteStorageAPI, a4 as RemoteStorageBackendInfo, a5 as RemoteStorageObjectInfo, a6 as RemoteUpdateBackendRequest, a7 as RequestedExtension, a8 as SelectFileOptions, a9 as SelectFolderOptions, aa as ServerInfo, ab as ServerStatus, ac as SessionAuthorization, ad as SharedSpace, ae as ShellAPI, af as ShellCreateOptions, ag as ShellCreateResponse, ah as ShellExitEvent, ai as ShellOutputEvent, aj as SmtpConfig, ak as SpaceAccessTokenInfo, al as SpaceAssignment, am as SpaceInvite, an as SpaceKeyGrantInfo, ao as SpaceMemberInfo, ap as SpacesAPI, aq as SyncBackendInfo, ar as TransferDirection, as as TransferProgress, at as TransferState, au as WebAPI, av as canExternalClientSendRequests, aw as isExternalClientConnected } from './client--_QYySP0.js';
3
3
  import { E as ExtensionManifest, h as SignedClaimPresentation, H as HaexHubConfig } from './types-fHuxbqa4.js';
4
4
  export { A as ApplicationContext, C as ClaimRequirement, i as ContextChangedEvent, j as DEFAULT_TIMEOUT, k as DatabaseColumnInfo, l as DatabaseExecuteParams, m as DatabasePermission, g as DatabasePermissionRequest, n as DatabaseQueryParams, D as DatabaseQueryResult, o as DatabaseTableInfo, c as EXTERNAL_EVENTS, p as ErrorCode, f as EventCallback, a as ExtensionInfo, q as ExtensionRuntimeMode, r as ExternalEvent, F as FileChangeEvent, s as FileChangePayload, t as FileChangeType, u as FilteredSyncTablesResult, v as HAEXTENSION_EVENTS, b as HaexHubEvent, w as HaexHubRequest, x as HaexHubResponse, y as HaexVaultSdkError, z as HaextensionEvent, I as IdentityClaim, B as ManifestI18nEntry, N as NOTIFICATION_EVENTS, G as NotificationEvent, J as PermissionDeniedError, K as PermissionErrorBase, L as PermissionErrorCode, O as PermissionPromptError, P as PermissionResponse, Q as PermissionStatus, R as SHELL_EVENTS, T as SearchQuery, U as SearchRequestEvent, S as SearchResult, V as ShellEvent, X as SyncTablesUpdatedEvent, Y as TABLE_SEPARATOR, W as WebRequestOptions, e as WebResponse, Z as getTableName, _ as isPermissionDeniedError, $ as isPermissionError, a0 as isPermissionPromptError } from './types-fHuxbqa4.js';
5
5
  export { H as HaextensionConfig } from './config-D_HXjsEV.js';
@@ -122,6 +122,8 @@ declare const MAIL_COMMANDS: {
122
122
  readonly fetchEnvelopes: "extension_mail_fetch_envelopes";
123
123
  /** Full message fetch (envelope + body + attachment metadata) */
124
124
  readonly fetchMessage: "extension_mail_fetch_message";
125
+ /** Fetch a single attachment's bytes (base64) by part index */
126
+ readonly fetchAttachment: "extension_mail_fetch_attachment";
125
127
  /** Set or unset IMAP flags on a UID set */
126
128
  readonly setFlags: "extension_mail_set_flags";
127
129
  /** MOVE messages between mailboxes (COPY+EXPUNGE fallback) */
@@ -785,6 +787,7 @@ declare const TAURI_COMMANDS: {
785
787
  readonly listMailboxes: "extension_mail_list_mailboxes";
786
788
  readonly fetchEnvelopes: "extension_mail_fetch_envelopes";
787
789
  readonly fetchMessage: "extension_mail_fetch_message";
790
+ readonly fetchAttachment: "extension_mail_fetch_attachment";
788
791
  readonly setFlags: "extension_mail_set_flags";
789
792
  readonly moveMessages: "extension_mail_move_messages";
790
793
  readonly appendMessage: "extension_mail_append_message";
package/dist/index.js CHANGED
@@ -1079,6 +1079,8 @@ var MAIL_COMMANDS = {
1079
1079
  fetchEnvelopes: "extension_mail_fetch_envelopes",
1080
1080
  /** Full message fetch (envelope + body + attachment metadata) */
1081
1081
  fetchMessage: "extension_mail_fetch_message",
1082
+ /** Fetch a single attachment's bytes (base64) by part index */
1083
+ fetchAttachment: "extension_mail_fetch_attachment",
1082
1084
  /** Set or unset IMAP flags on a UID set */
1083
1085
  setFlags: "extension_mail_set_flags",
1084
1086
  /** MOVE messages between mailboxes (COPY+EXPUNGE fallback) */
@@ -2145,6 +2147,21 @@ var MailAPI = class {
2145
2147
  uid
2146
2148
  });
2147
2149
  }
2150
+ /**
2151
+ * Fetch a single attachment's raw bytes by its `partIndex` (from the
2152
+ * `attachments` array of a fetched `MailMessage`), returned as a
2153
+ * standard-alphabet base64 string. The base64 form drops straight into
2154
+ * `OutgoingAttachment.data` when forwarding, and decodes to bytes for
2155
+ * viewing or downloading.
2156
+ */
2157
+ async fetchAttachmentAsync(imap, mailbox, uid, partIndex) {
2158
+ return this.client.request(MAIL_COMMANDS.fetchAttachment, {
2159
+ imap,
2160
+ mailbox,
2161
+ uid,
2162
+ partIndex
2163
+ });
2164
+ }
2148
2165
  /**
2149
2166
  * Set or unset IMAP flags. Use `flags=["\\Seen"]` + `add=true` to
2150
2167
  * mark messages as read; `add=false` removes the flag(s).