fix: mail-parser-wasm parsedEmailContext cache (#560)

This commit is contained in:
Dream Hunter
2025-01-18 13:26:09 +08:00
committed by GitHub
parent 3870727a08
commit 7b1c4cc72a
2 changed files with 9 additions and 6 deletions
+6 -4
View File
@@ -1,8 +1,8 @@
diff --git a/worker/src/common.ts b/worker/src/common.ts diff --git a/worker/src/common.ts b/worker/src/common.ts
index 8b63e8f..6a7c844 100644 index bd9bcc9..e7e2748 100644
--- a/worker/src/common.ts --- a/worker/src/common.ts
+++ b/worker/src/common.ts +++ b/worker/src/common.ts
@@ -273,22 +273,22 @@ export const commonParseMail = async (parsedEmailContext: ParsedEmailContext): P @@ -273,23 +273,23 @@ export const commonParseMail = async (parsedEmailContext: ParsedEmailContext): P
} }
const raw_mail = parsedEmailContext.rawEmail; const raw_mail = parsedEmailContext.rawEmail;
// TODO: WASM parse email // TODO: WASM parse email
@@ -12,7 +12,7 @@ index 8b63e8f..6a7c844 100644
+ const { parse_message_wrapper } = await import('mail-parser-wasm-worker'); + const { parse_message_wrapper } = await import('mail-parser-wasm-worker');
- // const parsedEmail = parse_message_wrapper(raw_mail); - // const parsedEmail = parse_message_wrapper(raw_mail);
- // return { - // parsedEmailContext.parsedEmail = {
- // sender: parsedEmail.sender || "", - // sender: parsedEmail.sender || "",
- // subject: parsedEmail.subject || "", - // subject: parsedEmail.subject || "",
- // text: parsedEmail.text || "", - // text: parsedEmail.text || "",
@@ -21,11 +21,12 @@ index 8b63e8f..6a7c844 100644
- // ) || [], - // ) || [],
- // html: parsedEmail.body_html || "", - // html: parsedEmail.body_html || "",
- // }; - // };
- // return parsedEmailContext.parsedEmail;
- // } catch (e) { - // } catch (e) {
- // console.error("Failed use mail-parser-wasm-worker to parse email", e); - // console.error("Failed use mail-parser-wasm-worker to parse email", e);
- // } - // }
+ const parsedEmail = parse_message_wrapper(raw_mail); + const parsedEmail = parse_message_wrapper(raw_mail);
+ return { + parsedEmailContext.parsedEmail = {
+ sender: parsedEmail.sender || "", + sender: parsedEmail.sender || "",
+ subject: parsedEmail.subject || "", + subject: parsedEmail.subject || "",
+ text: parsedEmail.text || "", + text: parsedEmail.text || "",
@@ -34,6 +35,7 @@ index 8b63e8f..6a7c844 100644
+ ) || [], + ) || [],
+ html: parsedEmail.body_html || "", + html: parsedEmail.body_html || "",
+ }; + };
+ return parsedEmailContext.parsedEmail;
+ } catch (e) { + } catch (e) {
+ console.error("Failed use mail-parser-wasm-worker to parse email", e); + console.error("Failed use mail-parser-wasm-worker to parse email", e);
+ } + }
+2 -1
View File
@@ -277,7 +277,7 @@ export const commonParseMail = async (parsedEmailContext: ParsedEmailContext): P
// const { parse_message_wrapper } = await import('mail-parser-wasm-worker'); // const { parse_message_wrapper } = await import('mail-parser-wasm-worker');
// const parsedEmail = parse_message_wrapper(raw_mail); // const parsedEmail = parse_message_wrapper(raw_mail);
// return { // parsedEmailContext.parsedEmail = {
// sender: parsedEmail.sender || "", // sender: parsedEmail.sender || "",
// subject: parsedEmail.subject || "", // subject: parsedEmail.subject || "",
// text: parsedEmail.text || "", // text: parsedEmail.text || "",
@@ -286,6 +286,7 @@ export const commonParseMail = async (parsedEmailContext: ParsedEmailContext): P
// ) || [], // ) || [],
// html: parsedEmail.body_html || "", // html: parsedEmail.body_html || "",
// }; // };
// return parsedEmailContext.parsedEmail;
// } catch (e) { // } catch (e) {
// console.error("Failed use mail-parser-wasm-worker to parse email", e); // console.error("Failed use mail-parser-wasm-worker to parse email", e);
// } // }