react-native-email-imap-smtp 0.3.25 → 0.3.27
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/lib/module/web.js +40 -2
- package/lib/module/web.js.map +1 -1
- package/lib/typescript/src/web.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/web.ts +45 -2
package/lib/module/web.js
CHANGED
|
@@ -113,6 +113,42 @@ function arrayBufferToBase64(buf) {
|
|
|
113
113
|
}
|
|
114
114
|
return btoa(binary);
|
|
115
115
|
}
|
|
116
|
+
|
|
117
|
+
/** base64 → ArrayBuffer(服务器经 JSON 传输附件时为 base64 字符串,需解码回二进制)。
|
|
118
|
+
* 宽松解析:去除空白、兼容 URL-safe(-→+,_→/)、容忍杂散字符、补足缺失 padding。
|
|
119
|
+
* Node 的 Buffer 解码是宽松的,而浏览器 atob 是严格的,这里对齐两者行为;
|
|
120
|
+
* 仍无法解码时降级为空 ArrayBuffer 并告警,避免整个下载流程崩溃。 */
|
|
121
|
+
function base64ToArrayBuffer(base64) {
|
|
122
|
+
let cleaned = base64.replace(/\s+/g, '').replace(/-/g, '+').replace(/_/g, '/');
|
|
123
|
+
// 去掉字母表以外的杂散字符(与 Node Buffer 的宽松解码一致)
|
|
124
|
+
cleaned = cleaned.replace(/[^A-Za-z0-9+/=]/g, '');
|
|
125
|
+
// 补足缺失的 padding
|
|
126
|
+
const mod = cleaned.length % 4;
|
|
127
|
+
if (mod === 2) cleaned += '==';else if (mod === 3) cleaned += '=';
|
|
128
|
+
try {
|
|
129
|
+
const binary = atob(cleaned);
|
|
130
|
+
const bytes = new Uint8Array(binary.length);
|
|
131
|
+
for (let i = 0; i < binary.length; i++) {
|
|
132
|
+
bytes[i] = binary.charCodeAt(i);
|
|
133
|
+
}
|
|
134
|
+
return bytes.buffer;
|
|
135
|
+
} catch (e) {
|
|
136
|
+
console.warn('[web.ts] base64ToArrayBuffer: 附件数据无法解码,已降级为空 ArrayBuffer。前64字符=', base64.slice(0, 64), e);
|
|
137
|
+
return new ArrayBuffer(0);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/** 归一化服务器返回的附件:若 data 是 base64 字符串则解码为 ArrayBuffer */
|
|
142
|
+
function normalizeAttachment(att) {
|
|
143
|
+
const data = att.data;
|
|
144
|
+
if (typeof data === 'string') {
|
|
145
|
+
return {
|
|
146
|
+
...att,
|
|
147
|
+
data: base64ToArrayBuffer(data)
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
return att;
|
|
151
|
+
}
|
|
116
152
|
async function apiPost(path, body, errorMessage) {
|
|
117
153
|
await checkProxyOrThrow();
|
|
118
154
|
const controller = new AbortController();
|
|
@@ -264,17 +300,19 @@ export async function imapExpunge() {
|
|
|
264
300
|
});
|
|
265
301
|
}
|
|
266
302
|
export async function imapFetchAttachments(uid, partId) {
|
|
267
|
-
|
|
303
|
+
const result = await apiPost('/api/imap/fetchAttachment', {
|
|
268
304
|
sessionId: getImapSessionId(),
|
|
269
305
|
uid,
|
|
270
306
|
partId
|
|
271
307
|
});
|
|
308
|
+
return result ? normalizeAttachment(result) : null;
|
|
272
309
|
}
|
|
273
310
|
export async function imapFetchAllAttachments(uid) {
|
|
274
|
-
|
|
311
|
+
const result = await apiPost('/api/imap/fetchAllAttachments', {
|
|
275
312
|
sessionId: getImapSessionId(),
|
|
276
313
|
uid
|
|
277
314
|
});
|
|
315
|
+
return result.map(normalizeAttachment);
|
|
278
316
|
}
|
|
279
317
|
export async function imapIdle(callback) {
|
|
280
318
|
const sid = getImapSessionId();
|
package/lib/module/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_PROXY_URL","API_TIMEOUT","PROXY_URL","_ws","setProxyUrl","url","replace","getProxyUrl","ImapNotConnectedError","Error","constructor","name","SmtpNotConnectedError","_imapSessionId","_smtpSessionId","_proxyChecked","checkProxyOrThrow","res","fetch","signal","AbortController","ok","getImapSessionId","getSmtpSessionId","extractSession","result","success","sessionId","extractSmtpSession","arrayBufferToBase64","buf","bytes","Uint8Array","binary","i","length","String","fromCharCode","btoa","apiPost","path","body","errorMessage","controller","timer","setTimeout","abort","method","headers","JSON","stringify","text","catch","status","statusText","json","clearTimeout","imapConnect","config","imapDisconnect","sid","imapListMailboxes","imapSelectMailbox","mailbox","readOnly","imapRefreshMailbox","imapFetchFolders","imapCreateFolder","folderName","imapDeleteFolder","imapRenameFolder","oldName","newName","imapSubscribeFolder","imapUnsubscribeFolder","imapFetchEmails","options","imapFetchEmailByUID","uid","imapSearchEmails","criteria","imapMarkAsRead","uids","silent","imapMarkAsFlagged","flagged","imapMoveEmails","destinationMailbox","imapCopyEmails","imapDeleteEmails","imapExpunge","imapFetchAttachments","partId","imapFetchAllAttachments","imapIdle","callback","readyState","WebSocket","OPEN","onclose","onerror","close","wsUrl","ws","onmessage","event","data","parse","type","imapStopIdle","imapGetQuota","root","imapAppendMessage","rawMimeData","flags","smtpConnect","smtpDisconnect","smtpSendMail","processedOptions","from","to","cc","bcc","replyTo","subject","textBody","htmlBody","priority","inReplyTo","references","readReceiptTo","charset","encoding","attachments","map","att","filename","mimeType","isInline","contentId","disposition","ArrayBuffer","smtpVerifyConnection"],"sourceRoot":"..\\..\\src","sources":["web.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAsBA;;AAEA,MAAMA,iBAAiB,GAAG,uBAAuB;AACjD;AACA,MAAMC,WAAW,GAAG,KAAK;AAEzB,IAAIC,SAAS,GAAGF,iBAAiB;AACjC,IAAIG,GAAqB,GAAG,IAAI;AAEhC,OAAO,SAASC,WAAWA,CAACC,GAAW,EAAQ;EAC7CH,SAAS,GAAGG,GAAG,CAACC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;AACrC;AAEA,OAAO,SAASC,WAAWA,CAAA,EAAW;EACpC,OAAOL,SAAS;AAClB;;AAEA;;AAEA,OAAO,MAAMM,qBAAqB,SAASC,KAAK,CAAC;EAC/CC,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,6CAA6C,CAAC;IACpD,IAAI,CAACC,IAAI,GAAG,uBAAuB;EACrC;AACF;AAEA,OAAO,MAAMC,qBAAqB,SAASH,KAAK,CAAC;EAC/CC,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,6CAA6C,CAAC;IACpD,IAAI,CAACC,IAAI,GAAG,uBAAuB;EACrC;AACF;AAOA,IAAIE,cAA6B,GAAG,IAAI;AACxC,IAAIC,cAA6B,GAAG,IAAI;AACxC,IAAIC,aAAa,GAAG,KAAK;;AAEzB;AACA,eAAeC,iBAAiBA,CAAA,EAAkB;EAChD,IAAID,aAAa,EAAE;EACnBA,aAAa,GAAG,IAAI;EAEpB,IAAI;IACF,MAAME,GAAG,GAAG,MAAMC,KAAK,CAAC,GAAGhB,SAAS,aAAa,EAAE;MACjDiB,MAAM,EAAE,IAAIC,eAAe,CAAC,CAAC,CAACD;IAChC,CAAC,CAAC;IACF,IAAIF,GAAG,CAACI,EAAE,EAAE;EACd,CAAC,CAAC,MAAM;IACN;EAAA;EAGFN,aAAa,GAAG,KAAK,CAAC,CAAC;EACvB,MAAM,IAAIN,KAAK,CACb;AACJ;AACA;AACA;AACA;AACA;AACA,IAAI,oCAAoC;AACxC;AACA;AACA;AACA,IAAI,uCAAuC;AAC3C;AACA;AACA,IAAI,oBAAoB;AACxB;AACA;AACA,IAAI,oBAAoB;AACxB;AACA;AACA,CACE,CAAC;AACH;AAEA,SAASa,gBAAgBA,CAAA,EAAW;EAClC,IAAI,CAACT,cAAc,EAAE,MAAM,IAAIL,qBAAqB,CAAC,CAAC;EACtD,OAAOK,cAAc;AACvB;AAEA,SAASU,gBAAgBA,CAAA,EAAW;EAClC,IAAI,CAACT,cAAc,EAAE,MAAM,IAAIF,qBAAqB,CAAC,CAAC;EACtD,OAAOE,cAAc;AACvB;AAEA,SAASU,cAAcA,CAA0BC,MAAS,EAAK;EAC7D,IAAIA,MAAM,CAACC,OAAO,IAAID,MAAM,CAACE,SAAS,EAAE;IACtCd,cAAc,GAAGY,MAAM,CAACE,SAAS;EACnC;EACA,OAAOF,MAAM;AACf;AAEA,SAASG,kBAAkBA,CAA0BH,MAAS,EAAK;EACjE,IAAIA,MAAM,CAACC,OAAO,IAAID,MAAM,CAACE,SAAS,EAAE;IACtCb,cAAc,GAAGW,MAAM,CAACE,SAAS;EACnC;EACA,OAAOF,MAAM;AACf;;AAEA;AACA,SAASI,mBAAmBA,CAACC,GAAgB,EAAU;EACrD,MAAMC,KAAK,GAAG,IAAIC,UAAU,CAACF,GAAG,CAAC;EACjC,IAAIG,MAAM,GAAG,EAAE;EACf,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;IACrCD,MAAM,IAAIG,MAAM,CAACC,YAAY,CAACN,KAAK,CAACG,CAAC,CAAE,CAAC;EAC1C;EACA,OAAOI,IAAI,CAACL,MAAM,CAAC;AACrB;AAEA,eAAeM,OAAOA,CACpBC,IAAY,EACZC,IAAS,EACTC,YAAqB,EACT;EACZ,MAAM1B,iBAAiB,CAAC,CAAC;EAEzB,MAAM2B,UAAU,GAAG,IAAIvB,eAAe,CAAC,CAAC;EACxC,MAAMwB,KAAK,GAAGC,UAAU,CAAC,MAAMF,UAAU,CAACG,KAAK,CAAC,CAAC,EAAE7C,WAAW,CAAC;EAE/D,IAAI;IACF,MAAMI,GAAG,GAAG,GAAGH,SAAS,GAAGsC,IAAI,EAAE;IACjC,MAAMvB,GAAG,GAAG,MAAMC,KAAK,CAACb,GAAG,EAAE;MAC3B0C,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QAAE,cAAc,EAAE;MAAmB,CAAC;MAC/CP,IAAI,EAAEQ,IAAI,CAACC,SAAS,CAACT,IAAI,CAAC;MAC1BtB,MAAM,EAAEwB,UAAU,CAACxB;IACrB,CAAC,CAAC;IAEF,IAAI,CAACF,GAAG,CAACI,EAAE,EAAE;MACX,MAAM8B,IAAI,GAAG,MAAMlC,GAAG,CAACkC,IAAI,CAAC,CAAC,CAACC,KAAK,CAAC,MAAM,EAAE,CAAC;MAC7C,MAAM,IAAI3C,KAAK,CACbiC,YAAY,IAAI,QAAQzB,GAAG,CAACoC,MAAM,KAAKF,IAAI,IAAIlC,GAAG,CAACqC,UAAU,EAC/D,CAAC;IACH;IAEA,OAAOrC,GAAG,CAACsC,IAAI,CAAC,CAAC;EACnB,CAAC,SAAS;IACRC,YAAY,CAACZ,KAAK,CAAC;EACrB;AACF;;AAEA;;AAEA,OAAO,eAAea,WAAWA,CAC/BC,MAAkB,EACa;EAC/B7C,cAAc,GAAG,IAAI;EACrB,MAAMY,MAAM,GAAG,MAAMc,OAAO,CAC1B,mBAAmB,EACnBmB,MAAM,EACN,wBACF,CAAC;EACD,OAAOlC,cAAc,CAACC,MAAM,CAAC;AAC/B;AAEA,OAAO,eAAekC,cAAcA,CAAA,EAAkB;EACpD,MAAMC,GAAG,GAAG/C,cAAc;EAC1BA,cAAc,GAAG,IAAI;EACrB,IAAI+C,GAAG,EAAE;IACP,MAAMrB,OAAO,CAAC,sBAAsB,EAAE;MAAEZ,SAAS,EAAEiC;IAAI,CAAC,CAAC,CAACR,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;EAC3E;AACF;AAEA,OAAO,eAAeS,iBAAiBA,CAAA,EAAuB;EAC5D,OAAOtB,OAAO,CAAY,yBAAyB,EAAE;IACnDZ,SAAS,EAAEL,gBAAgB,CAAC;EAC9B,CAAC,CAAC;AACJ;AAEA,OAAO,eAAewC,iBAAiBA,CACrCC,OAAe,EACfC,QAAkB,EACM;EACxB,OAAOzB,OAAO,CAAgB,yBAAyB,EAAE;IACvDZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7ByC,OAAO;IACPC,QAAQ,EAAEA,QAAQ,IAAI;EACxB,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,kBAAkBA,CAAA,EAA2B;EACjE,OAAO1B,OAAO,CAAgB,0BAA0B,EAAE;IACxDZ,SAAS,EAAEL,gBAAgB,CAAC;EAC9B,CAAC,CAAC;AACJ;AAEA,OAAO,eAAe4C,gBAAgBA,CAAA,EAAsB;EAC1D,OAAO3B,OAAO,CAAW,wBAAwB,EAAE;IACjDZ,SAAS,EAAEL,gBAAgB,CAAC;EAC9B,CAAC,CAAC;AACJ;AAEA,OAAO,eAAe6C,gBAAgBA,CAACC,UAAkB,EAAiB;EACxE,MAAM7B,OAAO,CAAC,wBAAwB,EAAE;IACtCZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B8C;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,gBAAgBA,CAACD,UAAkB,EAAiB;EACxE,MAAM7B,OAAO,CAAC,wBAAwB,EAAE;IACtCZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B8C;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeE,gBAAgBA,CACpCC,OAAe,EACfC,OAAe,EACA;EACf,MAAMjC,OAAO,CAAC,wBAAwB,EAAE;IACtCZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7BiD,OAAO;IACPC;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,mBAAmBA,CAACL,UAAkB,EAAiB;EAC3E,MAAM7B,OAAO,CAAC,2BAA2B,EAAE;IACzCZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B8C;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeM,qBAAqBA,CAACN,UAAkB,EAAiB;EAC7E,MAAM7B,OAAO,CAAC,6BAA6B,EAAE;IAC3CZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B8C;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeO,eAAeA,CACnCC,OAA2B,EACT;EAClB,OAAOrC,OAAO,CAAU,uBAAuB,EAAE;IAC/CZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7BsD;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,mBAAmBA,CAACC,GAAW,EAAyB;EAC5E,OAAOvC,OAAO,CAAe,2BAA2B,EAAE;IACxDZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7BwD;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,gBAAgBA,CACpCC,QAAwB,EACN;EAClB,OAAOzC,OAAO,CAAU,wBAAwB,EAAE;IAChDZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B0D;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,cAAcA,CAClCC,IAAc,EACdC,MAAgB,EACD;EACf,MAAM5C,OAAO,CAAC,sBAAsB,EAAE;IACpCZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B4D,IAAI;IACJC,MAAM,EAAEA,MAAM,IAAI;EACpB,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,iBAAiBA,CACrCF,IAAc,EACdG,OAAgB,EACD;EACf,MAAM9C,OAAO,CAAC,yBAAyB,EAAE;IACvCZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B4D,IAAI;IACJG;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,cAAcA,CAClCJ,IAAc,EACdK,kBAA0B,EACX;EACf,MAAMhD,OAAO,CAAC,sBAAsB,EAAE;IACpCZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B4D,IAAI;IACJK;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,cAAcA,CAClCN,IAAc,EACdK,kBAA0B,EACX;EACf,MAAMhD,OAAO,CAAC,sBAAsB,EAAE;IACpCZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B4D,IAAI;IACJK;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeE,gBAAgBA,CAACP,IAAc,EAAwB;EAC3E,OAAO3C,OAAO,CAAc,wBAAwB,EAAE;IACpDZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7B4D;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeQ,WAAWA,CAAA,EAAkB;EACjD,MAAMnD,OAAO,CAAC,mBAAmB,EAAE;IACjCZ,SAAS,EAAEL,gBAAgB,CAAC;EAC9B,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeqE,oBAAoBA,CACxCb,GAAW,EACXc,MAAc,EACc;EAC5B,OAAOrD,OAAO,CAAoB,2BAA2B,EAAE;IAC7DZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7BwD,GAAG;IACHc;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,uBAAuBA,CAC3Cf,GAAW,EACY;EACvB,OAAOvC,OAAO,CAAe,+BAA+B,EAAE;IAC5DZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7BwD;EACF,CAAC,CAAC;AACJ;AAEA,OAAO,eAAegB,QAAQA,CAC5BC,QAAkD,EACnC;EACf,MAAMnC,GAAG,GAAGtC,gBAAgB,CAAC,CAAC;;EAE9B;EACA,MAAMiB,OAAO,CAAC,gBAAgB,EAAE;IAAEZ,SAAS,EAAEiC;EAAI,CAAC,CAAC;;EAEnD;EACA,IAAI,CAACzD,GAAG,IAAIA,GAAG,CAAC6F,UAAU,KAAKC,SAAS,CAACC,IAAI,EAAE;IAC7C;IACA,IAAI/F,GAAG,EAAE;MACPA,GAAG,CAACgG,OAAO,GAAG,IAAI;MAClBhG,GAAG,CAACiG,OAAO,GAAG,IAAI;MAClBjG,GAAG,CAACkG,KAAK,CAAC,CAAC;IACb;IAEA,MAAMC,KAAK,GAAGpG,SAAS,CAACI,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC;IAC9C,MAAMiG,EAAE,GAAG,IAAIN,SAAS,CACtB,GAAGK,KAAK,iBAAiB1C,GAAG,EAC9B,CAAyB;IAEzB2C,EAAE,CAACJ,OAAO,GAAG,MAAM;MACjBhG,GAAG,GAAG,IAAI;IACZ,CAAC;IAEDoG,EAAE,CAACH,OAAO,GAAG,MAAM;MACjBjG,GAAG,GAAG,IAAI;IACZ,CAAC;IAEDA,GAAG,GAAGoG,EAAE;EACV;;EAEA;EACApG,GAAG,CAACqG,SAAS,GAAIC,KAAK,IAAK;IACzB,IAAI;MACF,MAAMC,IAAI,GAAGzD,IAAI,CAAC0D,KAAK,CAACF,KAAK,CAACC,IAAc,CAAC;MAC7C,IAAIA,IAAI,CAACE,IAAI,KAAK,WAAW,EAAE;MAC/Bb,QAAQ,CAACW,IAAwB,CAAC;IACpC,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ,CAAC;AACH;AAEA,OAAO,eAAeG,YAAYA,CAAA,EAAkB;EAClD,MAAMjD,GAAG,GAAG/C,cAAc;EAC1B,IAAI+C,GAAG,EAAE;IACP,MAAMrB,OAAO,CAAC,oBAAoB,EAAE;MAAEZ,SAAS,EAAEiC;IAAI,CAAC,CAAC,CAACR,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;EACzE;EACA,IAAIjD,GAAG,EAAE;IACPA,GAAG,CAACkG,KAAK,CAAC,CAAC;IACXlG,GAAG,GAAG,IAAI;EACZ;AACF;AAEA,OAAO,eAAe2G,YAAYA,CAACC,IAAa,EAAsB;EACpE,OAAOxE,OAAO,CAAY,oBAAoB,EAAE;IAC9CZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7ByF,IAAI,EAAEA,IAAI,IAAI;EAChB,CAAC,CAAC;AACJ;AAEA,OAAO,eAAeC,iBAAiBA,CACrCjD,OAAe,EACfkD,WAAwB,EACxBC,KAAgB,EACO;EACvB,OAAO3E,OAAO,CAAe,yBAAyB,EAAE;IACtDZ,SAAS,EAAEL,gBAAgB,CAAC,CAAC;IAC7ByC,OAAO;IACPkD,WAAW,EAAEpF,mBAAmB,CAACoF,WAAW,CAAC;IAC7CC,KAAK,EAAEA,KAAK,IAAI;EAClB,CAAC,CAAC;AACJ;;AAEA;;AAEA,OAAO,eAAeC,WAAWA,CAC/BzD,MAAkB,EACa;EAC/B5C,cAAc,GAAG,IAAI;EACrB,MAAMW,MAAM,GAAG,MAAMc,OAAO,CAC1B,mBAAmB,EACnBmB,MAAM,EACN,wBACF,CAAC;EACD,OAAO9B,kBAAkB,CAACH,MAAM,CAAC;AACnC;AAEA,OAAO,eAAe2F,cAAcA,CAAA,EAAkB;EACpD,MAAMxD,GAAG,GAAG9C,cAAc;EAC1BA,cAAc,GAAG,IAAI;EACrB,IAAI8C,GAAG,EAAE;IACP,MAAMrB,OAAO,CAAC,sBAAsB,EAAE;MAAEZ,SAAS,EAAEiC;IAAI,CAAC,CAAC,CAACR,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;EAC3E;AACF;AAEA,OAAO,eAAeiE,YAAYA,CAChCzC,OAAwB,EACC;EACzB;EACA,MAAM0C,gBAAqB,GAAG;IAC5BC,IAAI,EAAE3C,OAAO,CAAC2C,IAAI;IAClBC,EAAE,EAAE5C,OAAO,CAAC4C,EAAE;IACdC,EAAE,EAAE7C,OAAO,CAAC6C,EAAE;IACdC,GAAG,EAAE9C,OAAO,CAAC8C,GAAG;IAChBC,OAAO,EAAE/C,OAAO,CAAC+C,OAAO;IACxBC,OAAO,EAAEhD,OAAO,CAACgD,OAAO;IACxBC,QAAQ,EAAEjD,OAAO,CAACiD,QAAQ;IAC1BC,QAAQ,EAAElD,OAAO,CAACkD,QAAQ;IAC1BC,QAAQ,EAAEnD,OAAO,CAACmD,QAAQ;IAC1B/E,OAAO,EAAE4B,OAAO,CAAC5B,OAAO;IACxBgF,SAAS,EAAEpD,OAAO,CAACoD,SAAS;IAC5BC,UAAU,EAAErD,OAAO,CAACqD,UAAU;IAC9BC,aAAa,EAAEtD,OAAO,CAACsD,aAAa;IACpCC,OAAO,EAAEvD,OAAO,CAACuD,OAAO;IACxBC,QAAQ,EAAExD,OAAO,CAACwD;EACpB,CAAC;EAED,IAAIxD,OAAO,CAACyD,WAAW,IAAIzD,OAAO,CAACyD,WAAW,CAAClG,MAAM,GAAG,CAAC,EAAE;IACzDmF,gBAAgB,CAACe,WAAW,GAAGzD,OAAO,CAACyD,WAAW,CAACC,GAAG,CAAEC,GAAG,KAAM;MAC/DC,QAAQ,EAAED,GAAG,CAACC,QAAQ;MACtBC,QAAQ,EAAEF,GAAG,CAACE,QAAQ;MACtBC,QAAQ,EAAEH,GAAG,CAACG,QAAQ;MACtBC,SAAS,EAAEJ,GAAG,CAACI,SAAS;MACxBC,WAAW,EAAGL,GAAG,CAASK,WAAW;MACrClC,IAAI,EACF6B,GAAG,CAAC7B,IAAI,YAAYmC,WAAW,GAC3BhH,mBAAmB,CAAC0G,GAAG,CAAC7B,IAAI,CAAC,GAC7B6B,GAAG,CAAC7B;IACZ,CAAC,CAAC,CAAC;EACL;EAEA,OAAOnE,OAAO,CAAiB,oBAAoB,EAAE;IACnDZ,SAAS,EAAEJ,gBAAgB,CAAC,CAAC;IAC7BqD,OAAO,EAAE0C;EACX,CAAC,CAAC;AACJ;AAEA,OAAO,eAAewB,oBAAoBA,CAAA,EAAqB;EAC7D,MAAMrH,MAAM,GAAG,MAAMc,OAAO,CAC1B,4BAA4B,EAC5B;IAAEZ,SAAS,EAAEJ,gBAAgB,CAAC;EAAE,CAClC,CAAC;EACD,OAAOE,MAAM,CAACC,OAAO;AACvB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DEFAULT_PROXY_URL","API_TIMEOUT","PROXY_URL","_ws","setProxyUrl","url","replace","getProxyUrl","ImapNotConnectedError","Error","constructor","name","SmtpNotConnectedError","_imapSessionId","_smtpSessionId","_proxyChecked","checkProxyOrThrow","res","fetch","signal","AbortController","ok","getImapSessionId","getSmtpSessionId","extractSession","result","success","sessionId","extractSmtpSession","arrayBufferToBase64","buf","bytes","Uint8Array","binary","i","length","String","fromCharCode","btoa","base64ToArrayBuffer","base64","cleaned","mod","atob","charCodeAt","buffer","e","console","warn","slice","ArrayBuffer","normalizeAttachment","att","data","apiPost","path","body","errorMessage","controller","timer","setTimeout","abort","method","headers","JSON","stringify","text","catch","status","statusText","json","clearTimeout","imapConnect","config","imapDisconnect","sid","imapListMailboxes","imapSelectMailbox","mailbox","readOnly","imapRefreshMailbox","imapFetchFolders","imapCreateFolder","folderName","imapDeleteFolder","imapRenameFolder","oldName","newName","imapSubscribeFolder","imapUnsubscribeFolder","imapFetchEmails","options","imapFetchEmailByUID","uid","imapSearchEmails","criteria","imapMarkAsRead","uids","silent","imapMarkAsFlagged","flagged","imapMoveEmails","destinationMailbox","imapCopyEmails","imapDeleteEmails","imapExpunge","imapFetchAttachments","partId","imapFetchAllAttachments","map","imapIdle","callback","readyState","WebSocket","OPEN","onclose","onerror","close","wsUrl","ws","onmessage","event","parse","type","imapStopIdle","imapGetQuota","root","imapAppendMessage","rawMimeData","flags","smtpConnect","smtpDisconnect","smtpSendMail","processedOptions","from","to","cc","bcc","replyTo","subject","textBody","htmlBody","priority","inReplyTo","references","readReceiptTo","charset","encoding","attachments","filename","mimeType","isInline","contentId","disposition","smtpVerifyConnection"],"sourceRoot":"..\\..\\src","sources":["web.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../../src/web.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,oBAAoB,EACpB,oBAAoB,EACpB,OAAO,EACP,aAAa,EACb,MAAM,EACN,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,eAAe,EACf,cAAc,EACf,MAAM,SAAS,CAAC;AAWjB,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE7C;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAID,qBAAa,qBAAsB,SAAQ,KAAK;;CAK/C;AAED,qBAAa,qBAAsB,SAAQ,KAAK;;CAK/C;
|
|
1
|
+
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../../src/web.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/web.ts
CHANGED
|
@@ -150,6 +150,47 @@ function arrayBufferToBase64(buf: ArrayBuffer): string {
|
|
|
150
150
|
return btoa(binary);
|
|
151
151
|
}
|
|
152
152
|
|
|
153
|
+
/** base64 → ArrayBuffer(服务器经 JSON 传输附件时为 base64 字符串,需解码回二进制)。
|
|
154
|
+
* 宽松解析:去除空白、兼容 URL-safe(-→+,_→/)、容忍杂散字符、补足缺失 padding。
|
|
155
|
+
* Node 的 Buffer 解码是宽松的,而浏览器 atob 是严格的,这里对齐两者行为;
|
|
156
|
+
* 仍无法解码时降级为空 ArrayBuffer 并告警,避免整个下载流程崩溃。 */
|
|
157
|
+
function base64ToArrayBuffer(base64: string): ArrayBuffer {
|
|
158
|
+
let cleaned = base64
|
|
159
|
+
.replace(/\s+/g, '')
|
|
160
|
+
.replace(/-/g, '+')
|
|
161
|
+
.replace(/_/g, '/');
|
|
162
|
+
// 去掉字母表以外的杂散字符(与 Node Buffer 的宽松解码一致)
|
|
163
|
+
cleaned = cleaned.replace(/[^A-Za-z0-9+/=]/g, '');
|
|
164
|
+
// 补足缺失的 padding
|
|
165
|
+
const mod = cleaned.length % 4;
|
|
166
|
+
if (mod === 2) cleaned += '==';
|
|
167
|
+
else if (mod === 3) cleaned += '=';
|
|
168
|
+
try {
|
|
169
|
+
const binary = atob(cleaned);
|
|
170
|
+
const bytes = new Uint8Array(binary.length);
|
|
171
|
+
for (let i = 0; i < binary.length; i++) {
|
|
172
|
+
bytes[i] = binary.charCodeAt(i);
|
|
173
|
+
}
|
|
174
|
+
return bytes.buffer;
|
|
175
|
+
} catch (e) {
|
|
176
|
+
console.warn(
|
|
177
|
+
'[web.ts] base64ToArrayBuffer: 附件数据无法解码,已降级为空 ArrayBuffer。前64字符=',
|
|
178
|
+
base64.slice(0, 64),
|
|
179
|
+
e,
|
|
180
|
+
);
|
|
181
|
+
return new ArrayBuffer(0);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
/** 归一化服务器返回的附件:若 data 是 base64 字符串则解码为 ArrayBuffer */
|
|
186
|
+
function normalizeAttachment(att: Attachment): Attachment {
|
|
187
|
+
const data = att.data as unknown;
|
|
188
|
+
if (typeof data === 'string') {
|
|
189
|
+
return { ...att, data: base64ToArrayBuffer(data) };
|
|
190
|
+
}
|
|
191
|
+
return att;
|
|
192
|
+
}
|
|
193
|
+
|
|
153
194
|
async function apiPost<T>(
|
|
154
195
|
path: string,
|
|
155
196
|
body: any,
|
|
@@ -358,20 +399,22 @@ export async function imapFetchAttachments(
|
|
|
358
399
|
uid: number,
|
|
359
400
|
partId: string
|
|
360
401
|
): Promise<Attachment | null> {
|
|
361
|
-
|
|
402
|
+
const result = await apiPost<Attachment | null>('/api/imap/fetchAttachment', {
|
|
362
403
|
sessionId: getImapSessionId(),
|
|
363
404
|
uid,
|
|
364
405
|
partId,
|
|
365
406
|
});
|
|
407
|
+
return result ? normalizeAttachment(result) : null;
|
|
366
408
|
}
|
|
367
409
|
|
|
368
410
|
export async function imapFetchAllAttachments(
|
|
369
411
|
uid: number
|
|
370
412
|
): Promise<Attachment[]> {
|
|
371
|
-
|
|
413
|
+
const result = await apiPost<Attachment[]>('/api/imap/fetchAllAttachments', {
|
|
372
414
|
sessionId: getImapSessionId(),
|
|
373
415
|
uid,
|
|
374
416
|
});
|
|
417
|
+
return result.map(normalizeAttachment);
|
|
375
418
|
}
|
|
376
419
|
|
|
377
420
|
export async function imapIdle(
|