@nocobase/app-plugin-mail 1.0.0-beta.20 → 1.0.0-beta.21
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.
- package/CHANGELOG.md +26 -0
- package/dist/client/components/mail-conversation-view.d.ts +1 -0
- package/dist/client/components/mail-conversation-view.d.ts.map +1 -1
- package/dist/client/components/mail-conversation-view.js +10 -3
- package/dist/client/components/mail-conversation-view.js.map +1 -1
- package/dist/client/locales/de-DE.d.ts.map +1 -1
- package/dist/client/locales/de-DE.js +4 -0
- package/dist/client/locales/de-DE.js.map +1 -1
- package/dist/client/locales/en-US.d.ts +4 -0
- package/dist/client/locales/en-US.d.ts.map +1 -1
- package/dist/client/locales/en-US.js +4 -0
- package/dist/client/locales/en-US.js.map +1 -1
- package/dist/client/locales/es-ES.d.ts.map +1 -1
- package/dist/client/locales/es-ES.js +4 -0
- package/dist/client/locales/es-ES.js.map +1 -1
- package/dist/client/locales/fr-FR.d.ts.map +1 -1
- package/dist/client/locales/fr-FR.js +4 -0
- package/dist/client/locales/fr-FR.js.map +1 -1
- package/dist/client/locales/id-ID.d.ts.map +1 -1
- package/dist/client/locales/id-ID.js +4 -0
- package/dist/client/locales/id-ID.js.map +1 -1
- package/dist/client/locales/ja-JP.d.ts.map +1 -1
- package/dist/client/locales/ja-JP.js +4 -0
- package/dist/client/locales/ja-JP.js.map +1 -1
- package/dist/client/locales/pt-BR.d.ts.map +1 -1
- package/dist/client/locales/pt-BR.js +4 -0
- package/dist/client/locales/pt-BR.js.map +1 -1
- package/dist/client/locales/vi-VN.d.ts.map +1 -1
- package/dist/client/locales/vi-VN.js +4 -0
- package/dist/client/locales/vi-VN.js.map +1 -1
- package/dist/client/locales/zh-CN.d.ts.map +1 -1
- package/dist/client/locales/zh-CN.js +4 -0
- package/dist/client/locales/zh-CN.js.map +1 -1
- package/dist/client/locales/zh-TW.d.ts.map +1 -1
- package/dist/client/locales/zh-TW.js +4 -0
- package/dist/client/locales/zh-TW.js.map +1 -1
- package/dist/client/mail-client.d.ts +3 -1
- package/dist/client/mail-client.d.ts.map +1 -1
- package/dist/client/mail-client.js +2 -2
- package/dist/client/mail-client.js.map +1 -1
- package/dist/client/pages/mail-workspace-page.d.ts.map +1 -1
- package/dist/client/pages/mail-workspace-page.js +52 -7
- package/dist/client/pages/mail-workspace-page.js.map +1 -1
- package/dist/server/adapters/imap-smtp/adapter.d.ts +13 -3
- package/dist/server/adapters/imap-smtp/adapter.d.ts.map +1 -1
- package/dist/server/adapters/imap-smtp/adapter.js +234 -2
- package/dist/server/adapters/imap-smtp/adapter.js.map +1 -1
- package/dist/server/adapters/imap-smtp/constants.js +1 -1
- package/dist/server/adapters/imap-smtp/constants.js.map +1 -1
- package/dist/server/adapters/imap-smtp/types.d.ts +21 -2
- package/dist/server/adapters/imap-smtp/types.d.ts.map +1 -1
- package/dist/server/locales/de-DE.d.ts.map +1 -1
- package/dist/server/locales/de-DE.js +6 -0
- package/dist/server/locales/de-DE.js.map +1 -1
- package/dist/server/locales/en-US.d.ts +6 -0
- package/dist/server/locales/en-US.d.ts.map +1 -1
- package/dist/server/locales/en-US.js +6 -0
- package/dist/server/locales/en-US.js.map +1 -1
- package/dist/server/locales/es-ES.d.ts.map +1 -1
- package/dist/server/locales/es-ES.js +6 -0
- package/dist/server/locales/es-ES.js.map +1 -1
- package/dist/server/locales/fr-FR.d.ts.map +1 -1
- package/dist/server/locales/fr-FR.js +6 -0
- package/dist/server/locales/fr-FR.js.map +1 -1
- package/dist/server/locales/id-ID.d.ts.map +1 -1
- package/dist/server/locales/id-ID.js +6 -0
- package/dist/server/locales/id-ID.js.map +1 -1
- package/dist/server/locales/ja-JP.d.ts.map +1 -1
- package/dist/server/locales/ja-JP.js +6 -0
- package/dist/server/locales/ja-JP.js.map +1 -1
- package/dist/server/locales/pt-BR.d.ts.map +1 -1
- package/dist/server/locales/pt-BR.js +6 -0
- package/dist/server/locales/pt-BR.js.map +1 -1
- package/dist/server/locales/vi-VN.d.ts.map +1 -1
- package/dist/server/locales/vi-VN.js +6 -0
- package/dist/server/locales/vi-VN.js.map +1 -1
- package/dist/server/locales/zh-CN.d.ts.map +1 -1
- package/dist/server/locales/zh-CN.js +6 -0
- package/dist/server/locales/zh-CN.js.map +1 -1
- package/dist/server/locales/zh-TW.d.ts.map +1 -1
- package/dist/server/locales/zh-TW.js +6 -0
- package/dist/server/locales/zh-TW.js.map +1 -1
- package/dist/server/operations/message-mutations.d.ts +2 -1
- package/dist/server/operations/message-mutations.d.ts.map +1 -1
- package/dist/server/operations/message-mutations.js +28 -0
- package/dist/server/operations/message-mutations.js.map +1 -1
- package/dist/server/routes/api.d.ts.map +1 -1
- package/dist/server/routes/api.js +20 -6
- package/dist/server/routes/api.js.map +1 -1
- package/dist/server/routes/schemas.d.ts +2 -0
- package/dist/server/routes/schemas.d.ts.map +1 -1
- package/dist/server/routes/schemas.js +5 -1
- package/dist/server/routes/schemas.js.map +1 -1
- package/dist/server/services/management.d.ts +1 -1
- package/dist/server/services/management.d.ts.map +1 -1
- package/dist/server/services/management.js.map +1 -1
- package/dist/server/store/message-writes.d.ts.map +1 -1
- package/dist/server/store/message-writes.js +26 -3
- package/dist/server/store/message-writes.js.map +1 -1
- package/dist/server/store/messages.d.ts.map +1 -1
- package/dist/server/store/messages.js +32 -0
- package/dist/server/store/messages.js.map +1 -1
- package/dist/server/store/scheduled-drafts.d.ts.map +1 -1
- package/dist/server/store/scheduled-drafts.js +27 -2
- package/dist/server/store/scheduled-drafts.js.map +1 -1
- package/dist/server/store/sync.d.ts.map +1 -1
- package/dist/server/store/sync.js +319 -2
- package/dist/server/store/sync.js.map +1 -1
- package/dist/shared/mail.d.ts +2 -0
- package/dist/shared/mail.d.ts.map +1 -1
- package/dist/shared/mail.js.map +1 -1
- package/package.json +7 -7
- package/skills/nocobase-app-plugin-mail/references/http-api.md +10 -0
- package/skills/nocobase-app-plugin-mail/references/synchronization-and-diagnostics.md +6 -0
|
@@ -134,13 +134,50 @@ export default function MailWorkspacePage({ title, description, accountsHref, he
|
|
|
134
134
|
? syncableAccounts.length > 0
|
|
135
135
|
: Boolean(currentAccount?.status === 'active' &&
|
|
136
136
|
currentProviderCapabilities?.incrementalSync);
|
|
137
|
+
const imapSourceFolder = (message) => foldersByAccountId
|
|
138
|
+
.get(message.accountId)
|
|
139
|
+
?.find((folder) => folder.providerFolderId === folderId &&
|
|
140
|
+
(!folderAccountId || folderAccountId === message.accountId) &&
|
|
141
|
+
message.folderIds.includes(folder.providerFolderId));
|
|
142
|
+
const isImapMessage = (message) => accounts.find((account) => account.id === message.accountId)?.provider
|
|
143
|
+
.type === 'imap-smtp';
|
|
144
|
+
const inTrash = (message) => isImapMessage(message)
|
|
145
|
+
? imapSourceFolder(message)?.type === 'trash'
|
|
146
|
+
: isMessageInTrash(message, foldersByAccountId);
|
|
147
|
+
const deleteDisabledReason = (message) => {
|
|
148
|
+
if (message.scheduledSend)
|
|
149
|
+
return t('workspace.imapScheduled', {
|
|
150
|
+
defaultValue: 'Cancel the scheduled delivery before deleting this draft.',
|
|
151
|
+
});
|
|
152
|
+
if (message.providerMessageId?.startsWith('local-draft:'))
|
|
153
|
+
return undefined;
|
|
154
|
+
if (isImapMessage(message)) {
|
|
155
|
+
if (!imapSourceFolder(message))
|
|
156
|
+
return t('workspace.imapSourceRequired', {
|
|
157
|
+
defaultValue: 'Open the source folder before moving or deleting this message.',
|
|
158
|
+
});
|
|
159
|
+
if (!inTrash(message) &&
|
|
160
|
+
!foldersByAccountId
|
|
161
|
+
.get(message.accountId)
|
|
162
|
+
?.some((folder) => folder.type === 'trash'))
|
|
163
|
+
return t('workspace.imapTrashMissing', {
|
|
164
|
+
defaultValue: 'This account has no Trash folder. Use your mail client.',
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
if (!selectedMessageProviderCapabilities?.moveMessage && !inTrash(message))
|
|
168
|
+
return t('workspace.deleteUnsupported', {
|
|
169
|
+
defaultValue: 'This account does not support deletion. Use your mail client.',
|
|
170
|
+
});
|
|
171
|
+
return undefined;
|
|
172
|
+
};
|
|
137
173
|
const selectedMessageCanMove = Boolean(selectedMessageAccount?.status === 'active' &&
|
|
138
174
|
selectedMessageProviderCapabilities?.moveMessage &&
|
|
175
|
+
(!selected || !isImapMessage(selected) || imapSourceFolder(selected)) &&
|
|
139
176
|
[...(foldersByAccountId.get(selected?.accountId ?? '') ?? [])].some((folder) => folder.type === 'archive'));
|
|
140
177
|
const selectedMessageCanDraft = Boolean(selectedMessageAccount?.status === 'active' &&
|
|
141
178
|
selectedMessageProviderCapabilities?.send);
|
|
142
179
|
const selectedMessageCanUseLabels = selectedMessageAccount?.status === 'active';
|
|
143
|
-
const selectedMessageInTrash = Boolean(selected &&
|
|
180
|
+
const selectedMessageInTrash = Boolean(selected && inTrash(selected));
|
|
144
181
|
const loadAccounts = useCallback((clearError = true) => {
|
|
145
182
|
setLoadingAccounts(true);
|
|
146
183
|
if (clearError)
|
|
@@ -483,14 +520,18 @@ export default function MailWorkspacePage({ title, description, accountsHref, he
|
|
|
483
520
|
});
|
|
484
521
|
};
|
|
485
522
|
const deleteWorkspaceMessage = (message) => {
|
|
486
|
-
const permanently =
|
|
523
|
+
const permanently = inTrash(message);
|
|
487
524
|
if (permanently &&
|
|
488
525
|
!window.confirm(t('workspace.permanentlyDeleteConfirm', {
|
|
489
526
|
defaultValue: 'Permanently delete this message? This action cannot be undone.',
|
|
490
527
|
}))) {
|
|
491
528
|
return;
|
|
492
529
|
}
|
|
493
|
-
mutateMessage(
|
|
530
|
+
mutateMessage(isImapMessage(message)
|
|
531
|
+
? mail.deleteMessage(message.accountId, message.id, permanently, {
|
|
532
|
+
sourceProviderFolderId: imapSourceFolder(message)?.providerFolderId,
|
|
533
|
+
})
|
|
534
|
+
: mail.deleteMessage(message.accountId, message.id, permanently), true);
|
|
494
535
|
};
|
|
495
536
|
const syncing = Object.values(syncRuns).some(isActiveSyncRun);
|
|
496
537
|
const accountNames = useMemo(() => new Map(accounts.map((account) => [account.id, account.address])), [accounts]);
|
|
@@ -677,14 +718,18 @@ export default function MailWorkspacePage({ title, description, accountsHref, he
|
|
|
677
718
|
accountId: message.accountId,
|
|
678
719
|
messageId: message.id,
|
|
679
720
|
providerFolderId: archive.providerFolderId,
|
|
721
|
+
...(isImapMessage(message)
|
|
722
|
+
? {
|
|
723
|
+
sourceProviderFolderId: imapSourceFolder(message)
|
|
724
|
+
?.providerFolderId,
|
|
725
|
+
}
|
|
726
|
+
: {}),
|
|
680
727
|
}), true);
|
|
681
728
|
}
|
|
682
729
|
: undefined,
|
|
683
730
|
delete: (message) => deleteWorkspaceMessage(message),
|
|
684
|
-
canDelete: (message) =>
|
|
685
|
-
|
|
686
|
-
isMessageInTrash(message, foldersByAccountId) ||
|
|
687
|
-
message.providerMessageId.startsWith('local-draft:'))),
|
|
731
|
+
canDelete: (message) => !deleteDisabledReason(message),
|
|
732
|
+
deleteDisabledReason,
|
|
688
733
|
downloadAttachment: (message, attachment) => {
|
|
689
734
|
void downloadAttachment(mail, message, attachment).catch((cause) => setError(mailErrorMessage(cause, t('workspace.downloadFailed', {
|
|
690
735
|
defaultValue: 'Unable to download attachment.',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail-workspace-page.js","sourceRoot":"","sources":["../../../client/pages/mail-workspace-page.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mail-workspace-page.js","sourceRoot":"","sources":["../../../client/pages/mail-workspace-page.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ImapFlow } from 'imapflow';
|
|
2
2
|
import type { MailAttachmentContent, MailProviderResult, MailSyncCursor } from '../../../shared/mail.js';
|
|
3
|
-
import type { MailProviderAdapter, MailProviderAccount, MailProviderContext, MailProviderFolderPage, MailProviderListChangesInput, MailProviderListFoldersInput, MailProviderListMessagesInput, MailProviderMessagePage, MailProviderSendInput, MailProviderSendResult, NormalizedMailMessage } from '../../contracts/provider.js';
|
|
4
|
-
import type { ImapOperationSnapshot, ImapLocationPersistence, ImapSmtpCredential } from './types.js';
|
|
3
|
+
import type { MailProviderAdapter, MailProviderMoveResult, MailProviderAccount, MailProviderContext, MailProviderFolderPage, MailProviderListChangesInput, MailProviderListFoldersInput, MailProviderListMessagesInput, MailProviderMessagePage, MailProviderSendInput, MailProviderSendResult, NormalizedMailMessage } from '../../contracts/provider.js';
|
|
4
|
+
import type { ImapOperationSnapshot, ImapLocationPersistence, ImapLocationTuple, ImapSmtpCredential } from './types.js';
|
|
5
5
|
import type { MailSyncStepCommit } from '../../contracts/persistence.js';
|
|
6
6
|
import type { MailSyncRun } from '../../../shared/mail.js';
|
|
7
7
|
import type { ImapSmtpMailProviderConfig } from './config.js';
|
|
@@ -31,9 +31,13 @@ export declare class ImapSmtpAdapter implements MailProviderAdapter {
|
|
|
31
31
|
readonly imap: typeof createImapClient;
|
|
32
32
|
readonly smtp: typeof createSmtpTransport;
|
|
33
33
|
readonly expungeUid: typeof expungeUid;
|
|
34
|
+
readonly transferUid?: typeof transferUid;
|
|
34
35
|
}, operation?: ImapOperationSnapshot | undefined);
|
|
35
36
|
forSync(run: MailSyncRun): ImapSmtpAdapter;
|
|
36
|
-
forMessage(messageId: string, providerMessageId: string, operation: 'flags' | 'delete'
|
|
37
|
+
forMessage(messageId: string, providerMessageId: string, operation: 'flags' | 'delete' | 'move', move?: {
|
|
38
|
+
readonly sourceProviderFolderId?: string;
|
|
39
|
+
readonly destinationProviderFolderId: string;
|
|
40
|
+
}): Promise<ImapSmtpAdapter>;
|
|
37
41
|
/** True when this instance records message copies in the account's location table. */
|
|
38
42
|
get persistsLocations(): boolean;
|
|
39
43
|
/** Commit a sync step together with the location evidence this instance gathered for it. */
|
|
@@ -52,6 +56,10 @@ export declare class ImapSmtpAdapter implements MailProviderAdapter {
|
|
|
52
56
|
sendMessage(input: MailProviderSendInput): Promise<MailProviderSendResult>;
|
|
53
57
|
setRead(providerMessageId: string, read: boolean, signal?: AbortSignal): Promise<MailProviderResult<void>>;
|
|
54
58
|
setStarred(providerMessageId: string, starred: boolean, signal?: AbortSignal): Promise<MailProviderResult<void>>;
|
|
59
|
+
/** Move only the bound copy; fixed UID primitives never choose a global EXPUNGE. */
|
|
60
|
+
moveMessage(providerMessageId: string, providerFolderId: string, signal?: AbortSignal): Promise<MailProviderResult<MailProviderMoveResult>>;
|
|
61
|
+
private fetchMoveDestination;
|
|
62
|
+
private moveAttachments;
|
|
55
63
|
deleteMessage(providerMessageId: string, permanently: boolean, signal?: AbortSignal): Promise<MailProviderResult<void>>;
|
|
56
64
|
close(): Promise<void>;
|
|
57
65
|
private updateFlags;
|
|
@@ -93,5 +101,7 @@ export declare class ImapSmtpAdapter implements MailProviderAdapter {
|
|
|
93
101
|
}
|
|
94
102
|
/** ImapFlow 2.2.10's command primitive keeps the verb explicitly scoped to a UID. */
|
|
95
103
|
declare function expungeUid(client: ImapFlow, uid: number): Promise<void>;
|
|
104
|
+
/** Parse only the exact one-UID mapping requested by this operation. Never infer a destination UID. */
|
|
105
|
+
declare function transferUid(client: ImapFlow, uid: number, folder: string, native: boolean): Promise<ImapLocationTuple | undefined>;
|
|
96
106
|
export {};
|
|
97
107
|
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../server/adapters/imap-smtp/adapter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../server/adapters/imap-smtp/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { encodePath } from 'imapflow/lib/tools.js';
|
|
2
|
+
import { MailError, mailFailedPrecondition } from '../../services/errors.js';
|
|
1
3
|
import MailComposer from 'nodemailer/lib/mail-composer/index.js';
|
|
2
4
|
import { randomUUID } from 'node:crypto';
|
|
3
5
|
import { simpleParser } from 'mailparser';
|
|
@@ -40,6 +42,7 @@ export class ImapSmtpAdapter {
|
|
|
40
42
|
imap: createImapClient,
|
|
41
43
|
smtp: createSmtpTransport,
|
|
42
44
|
expungeUid,
|
|
45
|
+
transferUid,
|
|
43
46
|
}), operation) {
|
|
44
47
|
this.context = context;
|
|
45
48
|
this.config = config;
|
|
@@ -79,10 +82,10 @@ export class ImapSmtpAdapter {
|
|
|
79
82
|
throw new Error('The IMAP sync account changed.');
|
|
80
83
|
return new ImapSmtpAdapter(this.context, this.config, this.account, this.credential, this.locations, run, this.protocol);
|
|
81
84
|
}
|
|
82
|
-
async forMessage(messageId, providerMessageId, operation) {
|
|
85
|
+
async forMessage(messageId, providerMessageId, operation, move) {
|
|
83
86
|
if (!this.locations)
|
|
84
87
|
throw new Error('IMAP location persistence is not configured.');
|
|
85
|
-
const bound = await this.locations.bindMessage(messageId, providerMessageId, operation);
|
|
88
|
+
const bound = await this.locations.bindMessage(messageId, providerMessageId, operation, move);
|
|
86
89
|
return new ImapSmtpAdapter(this.context, this.config, this.account, this.credential, bound.persistence, undefined, this.protocol, bound.snapshot);
|
|
87
90
|
}
|
|
88
91
|
/** True when this instance records message copies in the account's location table. */
|
|
@@ -645,6 +648,180 @@ export class ImapSmtpAdapter {
|
|
|
645
648
|
? this.updateCopyFlags(providerMessageId, '\\Flagged', starred, signal)
|
|
646
649
|
: this.updateFlags(providerMessageId, '\\Flagged', starred, signal);
|
|
647
650
|
}
|
|
651
|
+
/** Move only the bound copy; fixed UID primitives never choose a global EXPUNGE. */
|
|
652
|
+
async moveMessage(providerMessageId, providerFolderId, signal) {
|
|
653
|
+
if (!this.locations ||
|
|
654
|
+
this.operation?.operation !== 'move' ||
|
|
655
|
+
this.operation.providerMessageId !== providerMessageId ||
|
|
656
|
+
this.operation.destinationProviderFolderId !== providerFolderId)
|
|
657
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_SOURCE_REQUIRED', 'A move requires a bound source folder.');
|
|
658
|
+
let state;
|
|
659
|
+
let remoteStarted = false;
|
|
660
|
+
try {
|
|
661
|
+
throwIfAborted(signal);
|
|
662
|
+
const client = await this.imap();
|
|
663
|
+
if (!client.capabilities.has('MOVE') &&
|
|
664
|
+
!client.capabilities.has('UIDPLUS'))
|
|
665
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_UNSUPPORTED', 'This server cannot safely move messages. Use your mail client.');
|
|
666
|
+
const folders = await this.listMailboxes();
|
|
667
|
+
if (!folders.some((folder) => folder.path === providerFolderId && !folder.flags.has('\\Noselect')))
|
|
668
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_LOCATION_CHANGED', 'The selected destination is no longer a selectable folder. Synchronize the mailbox.');
|
|
669
|
+
const destinationMailbox = await client.mailboxOpen(providerFolderId, {
|
|
670
|
+
readOnly: false,
|
|
671
|
+
});
|
|
672
|
+
if (destinationMailbox.readOnly)
|
|
673
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_NOT_WRITABLE', 'The selected destination is read-only.');
|
|
674
|
+
state = await this.locations.beginMove();
|
|
675
|
+
const source = await this.openCopy(state.source, { flags: true, size: true, bodyStructure: true }, false);
|
|
676
|
+
if (client.mailbox && client.mailbox.readOnly)
|
|
677
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_NOT_WRITABLE', 'The selected source is read-only.');
|
|
678
|
+
if (source && !(source.flags instanceof Set))
|
|
679
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_LOCATION_CHANGED', 'The server did not report source flags.');
|
|
680
|
+
if (!source && !state.destination)
|
|
681
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_LOCATION_CHANGED', 'The selected source changed. Synchronize and open its source folder again.');
|
|
682
|
+
if (client.mailbox &&
|
|
683
|
+
!client.mailbox.readOnly &&
|
|
684
|
+
client.mailbox.permanentFlags &&
|
|
685
|
+
!client.mailbox.permanentFlags.has('\\Deleted') &&
|
|
686
|
+
!client.mailbox.permanentFlags.has('\\*') &&
|
|
687
|
+
!state.destination)
|
|
688
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_NOT_WRITABLE', 'The selected source does not allow deletion flags.');
|
|
689
|
+
if (source?.flags?.has('\\Deleted') && !state.destination)
|
|
690
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_LOCATION_CHANGED', 'The selected source already has an external deletion flag.');
|
|
691
|
+
if (state.source.folder === providerFolderId && source) {
|
|
692
|
+
await this.locations.releaseMove(state);
|
|
693
|
+
state = undefined;
|
|
694
|
+
return { ok: true, value: { providerMessageId } };
|
|
695
|
+
}
|
|
696
|
+
const resumed = Boolean(state.destination);
|
|
697
|
+
// A persisted mapping is resumed without ever issuing another COPY or MOVE.
|
|
698
|
+
if (!state.destination) {
|
|
699
|
+
throwIfAborted(signal);
|
|
700
|
+
if (!client.capabilities.has('MOVE') &&
|
|
701
|
+
!client.capabilities.has('UIDPLUS'))
|
|
702
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_UNSUPPORTED', 'This server no longer has a safe move path.');
|
|
703
|
+
remoteStarted = true;
|
|
704
|
+
const native = client.capabilities.has('MOVE');
|
|
705
|
+
const tuple = await (this.protocol.transferUid ?? transferUid)(client, state.source.uid, providerFolderId, native);
|
|
706
|
+
if (!tuple ||
|
|
707
|
+
tuple.uidValidity !== String(destinationMailbox.uidValidity))
|
|
708
|
+
throw new Error('The server did not supply a valid destination mapping.');
|
|
709
|
+
const destination = await this.fetchMoveDestination(tuple, providerMessageId);
|
|
710
|
+
if (!destination ||
|
|
711
|
+
!source ||
|
|
712
|
+
destination.size !== source.size ||
|
|
713
|
+
JSON.stringify(destination.bodyStructure) !==
|
|
714
|
+
JSON.stringify(source.bodyStructure) ||
|
|
715
|
+
destination.envelope?.messageId !== source.envelope?.messageId ||
|
|
716
|
+
(source.emailId && destination.emailId !== source.emailId))
|
|
717
|
+
throw new Error('The mapped destination does not match the selected source.');
|
|
718
|
+
state = await this.locations.rememberMoveDestination(state, {
|
|
719
|
+
...tuple,
|
|
720
|
+
locationId: randomUUID(),
|
|
721
|
+
providerMessageId,
|
|
722
|
+
source: this.operation.source,
|
|
723
|
+
read: destination.flags?.has('\\Seen') ?? false,
|
|
724
|
+
starred: destination.flags?.has('\\Flagged') ?? false,
|
|
725
|
+
receivedAt: destination.internalDate
|
|
726
|
+
? toIsoDate(destination.internalDate)
|
|
727
|
+
: undefined,
|
|
728
|
+
});
|
|
729
|
+
// Native MOVE has already removed the source. Do not run COPY after any native failure.
|
|
730
|
+
if (native) {
|
|
731
|
+
await client.mailboxOpen(state.source.folder, { readOnly: false });
|
|
732
|
+
if (!client.mailbox ||
|
|
733
|
+
String(client.mailbox.uidValidity) !== state.source.uidValidity)
|
|
734
|
+
throw new Error('The source generation changed after MOVE.');
|
|
735
|
+
const remaining = await client.search({ uid: String(state.source.uid) }, { uid: true });
|
|
736
|
+
if (!Array.isArray(remaining) || remaining.includes(state.source.uid))
|
|
737
|
+
throw new Error('The source is still present after MOVE.');
|
|
738
|
+
const id = await this.locations.commitMoved(state, this.moveAttachments(state.destination, destination), {
|
|
739
|
+
read: destination.flags.has('\\Seen'),
|
|
740
|
+
starred: destination.flags.has('\\Flagged'),
|
|
741
|
+
});
|
|
742
|
+
return { ok: true, value: { providerMessageId: id } };
|
|
743
|
+
}
|
|
744
|
+
}
|
|
745
|
+
const destination = await this.fetchMoveDestination(state.destination, providerMessageId);
|
|
746
|
+
if (!destination)
|
|
747
|
+
throw new Error('The confirmed destination changed.');
|
|
748
|
+
throwIfAborted(signal);
|
|
749
|
+
const current = await this.openCopy(state.source, { flags: true, size: true, bodyStructure: true }, false);
|
|
750
|
+
if (current) {
|
|
751
|
+
if (client.mailbox && client.mailbox.readOnly)
|
|
752
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_NOT_WRITABLE', 'The selected source is read-only.');
|
|
753
|
+
if (!client.capabilities.has('UIDPLUS'))
|
|
754
|
+
throw new Error('UIDPLUS became unavailable before source cleanup.');
|
|
755
|
+
remoteStarted = true;
|
|
756
|
+
if (!current.flags?.has('\\Deleted')) {
|
|
757
|
+
if (!(await client.messageFlagsAdd(String(state.source.uid), ['\\Deleted'], { uid: true })))
|
|
758
|
+
throw new Error('The server did not confirm the source deletion flag.');
|
|
759
|
+
}
|
|
760
|
+
else if (!resumed)
|
|
761
|
+
throw new Error('The source acquired an external deletion flag.');
|
|
762
|
+
if (!client.capabilities.has('UIDPLUS'))
|
|
763
|
+
throw new Error('UIDPLUS became unavailable after STORE.');
|
|
764
|
+
await this.protocol.expungeUid(client, state.source.uid);
|
|
765
|
+
}
|
|
766
|
+
// An absent UID is safe only in the same generation, including explicit partial-copy recovery.
|
|
767
|
+
if (!client.mailbox ||
|
|
768
|
+
String(client.mailbox.uidValidity) !== state.source.uidValidity)
|
|
769
|
+
throw new Error('The source generation changed before cleanup was confirmed.');
|
|
770
|
+
const remaining = await client.search({ uid: String(state.source.uid) }, { uid: true });
|
|
771
|
+
if (!Array.isArray(remaining) || remaining.includes(state.source.uid))
|
|
772
|
+
throw new Error('The source removal was not confirmed.');
|
|
773
|
+
const id = await this.locations.commitMoved(state, this.moveAttachments(state.destination, destination), {
|
|
774
|
+
read: destination.flags.has('\\Seen'),
|
|
775
|
+
starred: destination.flags.has('\\Flagged'),
|
|
776
|
+
});
|
|
777
|
+
return { ok: true, value: { providerMessageId: id } };
|
|
778
|
+
}
|
|
779
|
+
catch (error) {
|
|
780
|
+
if (error.imapCopyRejected &&
|
|
781
|
+
!state?.destination)
|
|
782
|
+
remoteStarted = false;
|
|
783
|
+
if (state && !state.destination && !remoteStarted)
|
|
784
|
+
await this.locations.releaseMove(state);
|
|
785
|
+
if (state && (remoteStarted || state.destination))
|
|
786
|
+
throw mailFailedPrecondition('MAIL_IMAP_MOVE_OUTCOME_UNKNOWN', 'The move is incomplete or its result is unknown. Verify the mailbox before retrying.');
|
|
787
|
+
if (error instanceof MailError)
|
|
788
|
+
throw error;
|
|
789
|
+
return { ok: false, error: classifyError(error, 'IMAP_MOVE_MESSAGE') };
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
async fetchMoveDestination(tuple, providerMessageId) {
|
|
793
|
+
const client = await this.imap();
|
|
794
|
+
const selected = await client.mailboxOpen(tuple.folder, { readOnly: true });
|
|
795
|
+
if (String(selected.uidValidity) !== tuple.uidValidity)
|
|
796
|
+
return undefined;
|
|
797
|
+
const result = await client.fetchOne(tuple.uid, {
|
|
798
|
+
uid: true,
|
|
799
|
+
flags: true,
|
|
800
|
+
envelope: true,
|
|
801
|
+
bodyStructure: true,
|
|
802
|
+
size: true,
|
|
803
|
+
internalDate: true,
|
|
804
|
+
}, { uid: true });
|
|
805
|
+
if (!result ||
|
|
806
|
+
result.uid !== tuple.uid ||
|
|
807
|
+
!(result.flags instanceof Set) ||
|
|
808
|
+
result.flags.has('\\Deleted'))
|
|
809
|
+
return undefined;
|
|
810
|
+
const source = this.operation.source;
|
|
811
|
+
if ((source === 'objectid' || source === 'x-gm-msgid') &&
|
|
812
|
+
result.emailId !== providerMessageId)
|
|
813
|
+
return undefined;
|
|
814
|
+
if (source === 'rfc-message-id' &&
|
|
815
|
+
result.envelope?.messageId !== providerMessageId)
|
|
816
|
+
return undefined;
|
|
817
|
+
return result;
|
|
818
|
+
}
|
|
819
|
+
moveAttachments(tuple, message) {
|
|
820
|
+
const parts = attachmentParts(message.bodyStructure);
|
|
821
|
+
if (!parts)
|
|
822
|
+
throw new Error('The destination attachment structure is missing.');
|
|
823
|
+
return parts.map((part, index) => attachmentMetadata(tuple.folder, tuple.uidValidity, tuple.uid, part, index));
|
|
824
|
+
}
|
|
648
825
|
async deleteMessage(providerMessageId, permanently, signal) {
|
|
649
826
|
if ((this.locations && !this.operation) ||
|
|
650
827
|
(this.operation &&
|
|
@@ -1409,4 +1586,59 @@ async function expungeUid(client, uid) {
|
|
|
1409
1586
|
]);
|
|
1410
1587
|
response.next();
|
|
1411
1588
|
}
|
|
1589
|
+
/** Parse only the exact one-UID mapping requested by this operation. Never infer a destination UID. */
|
|
1590
|
+
async function transferUid(client, uid, folder, native) {
|
|
1591
|
+
const connection = client;
|
|
1592
|
+
let mapping;
|
|
1593
|
+
let invalid = false;
|
|
1594
|
+
const parse = (response) => {
|
|
1595
|
+
const section = response.attributes?.[0]?.section;
|
|
1596
|
+
if (section?.[0]?.value !== 'COPYUID')
|
|
1597
|
+
return;
|
|
1598
|
+
const single = (value) => {
|
|
1599
|
+
if (typeof value !== 'string' ||
|
|
1600
|
+
!/^[1-9]\d{0,9}(?::[1-9]\d{0,9})?$/.test(value))
|
|
1601
|
+
return undefined;
|
|
1602
|
+
const [first, last = first] = value.split(':').map(Number);
|
|
1603
|
+
return first === last && first <= 0xffffffff ? first : undefined;
|
|
1604
|
+
};
|
|
1605
|
+
const validityValue = section[1]?.value;
|
|
1606
|
+
const validity = typeof validityValue === 'string' && /^[1-9]\d{0,9}$/.test(validityValue)
|
|
1607
|
+
? single(validityValue)
|
|
1608
|
+
: undefined;
|
|
1609
|
+
const source = single(section[2]?.value);
|
|
1610
|
+
const destination = single(section[3]?.value);
|
|
1611
|
+
if (!validity || source !== uid || !destination) {
|
|
1612
|
+
invalid = true;
|
|
1613
|
+
return;
|
|
1614
|
+
}
|
|
1615
|
+
const tuple = { folder, uidValidity: String(validity), uid: destination };
|
|
1616
|
+
if (mapping && tupleKey(mapping) !== tupleKey(tuple))
|
|
1617
|
+
invalid = true;
|
|
1618
|
+
mapping = tuple;
|
|
1619
|
+
};
|
|
1620
|
+
// No library-level MOVE/COPY emulation can run through this fixed command primitive.
|
|
1621
|
+
let result;
|
|
1622
|
+
try {
|
|
1623
|
+
result = await connection.exec(native ? 'UID MOVE' : 'UID COPY', [
|
|
1624
|
+
{ type: 'SEQUENCE', value: String(uid) },
|
|
1625
|
+
{ type: 'ATOM', value: encodePath(client, folder) },
|
|
1626
|
+
], {
|
|
1627
|
+
untagged: {
|
|
1628
|
+
OK: async (response) => {
|
|
1629
|
+
parse(response);
|
|
1630
|
+
},
|
|
1631
|
+
},
|
|
1632
|
+
});
|
|
1633
|
+
}
|
|
1634
|
+
catch (error) {
|
|
1635
|
+
const failure = error;
|
|
1636
|
+
if (!native && ['NO', 'BAD'].includes(failure.responseStatus ?? ''))
|
|
1637
|
+
failure.imapCopyRejected = true;
|
|
1638
|
+
throw error;
|
|
1639
|
+
}
|
|
1640
|
+
result.next();
|
|
1641
|
+
parse(result.response);
|
|
1642
|
+
return invalid ? undefined : mapping;
|
|
1643
|
+
}
|
|
1412
1644
|
//# sourceMappingURL=adapter.js.map
|