feat: temp fix mega.nz (#103)

This commit is contained in:
Dream Hunter
2024-04-07 21:19:20 +08:00
committed by GitHub
parent 4e4accddee
commit 105d51ff91
6 changed files with 106 additions and 90 deletions
+1
View File
@@ -1 +1,2 @@
dist/ dist/
test/
+6 -5
View File
@@ -2,23 +2,24 @@
"name": "cloudflare_temp_email", "name": "cloudflare_temp_email",
"version": "0.0.0", "version": "0.0.0",
"private": true, "private": true,
"type": "module",
"scripts": { "scripts": {
"dev": "wrangler dev", "dev": "wrangler dev",
"deploy": "wrangler deploy", "deploy": "wrangler deploy",
"start": "wrangler dev" "start": "wrangler dev"
}, },
"devDependencies": { "devDependencies": {
"wrangler": "^3.41.0" "wrangler": "^3.48.0"
}, },
"dependencies": { "dependencies": {
"hono": "^4.1.7", "hono": "^4.2.2",
"mailparser": "3.6.5", "mailparser": "^3.6.9",
"mimetext": "^3.0.24", "mimetext": "^3.0.24",
"postal-mime": "^1.1.0" "postal-mime": "^2.2.1"
}, },
"pnpm": { "pnpm": {
"patchedDependencies": { "patchedDependencies": {
"mailparser@3.6.5": "patches/mailparser@3.6.5.patch" "mailparser@3.6.9": "patches/mailparser@3.6.9.patch"
} }
} }
} }
+87 -73
View File
@@ -5,41 +5,41 @@ settings:
excludeLinksFromLockfile: false excludeLinksFromLockfile: false
patchedDependencies: patchedDependencies:
mailparser@3.6.5: mailparser@3.6.9:
hash: ykuld7ytssxm3j6t6ehwmtonk4 hash: vtv6mupuxeqjidadcgidi322su
path: patches/mailparser@3.6.5.patch path: patches/mailparser@3.6.9.patch
dependencies: dependencies:
hono: hono:
specifier: ^4.1.7 specifier: ^4.2.2
version: 4.1.7 version: 4.2.2
mailparser: mailparser:
specifier: 3.6.5 specifier: ^3.6.9
version: 3.6.5(patch_hash=ykuld7ytssxm3j6t6ehwmtonk4) version: 3.6.9(patch_hash=vtv6mupuxeqjidadcgidi322su)
mimetext: mimetext:
specifier: ^3.0.24 specifier: ^3.0.24
version: 3.0.24 version: 3.0.24
postal-mime: postal-mime:
specifier: ^1.1.0 specifier: ^2.2.1
version: 1.1.0 version: 2.2.1
devDependencies: devDependencies:
wrangler: wrangler:
specifier: ^3.41.0 specifier: ^3.48.0
version: 3.41.0 version: 3.48.0
packages: packages:
/@babel/runtime-corejs3@7.24.1: /@babel/runtime-corejs3@7.24.4:
resolution: {integrity: sha512-T9ko/35G+Bkl+win48GduaPlhSlOjjE5s1TeiEcD+QpxlLQnoEfb/nO/T+TQqkm+ipFwORn+rB8w14iJ/uD0bg==} resolution: {integrity: sha512-VOQOexSilscN24VEY810G/PqtpFvx/z6UqDIjIWbDe2368HhDLkYN5TYwaEz/+eRCUkhJ2WaNLLmQAlxzfWj4w==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
dependencies: dependencies:
core-js-pure: 3.36.1 core-js-pure: 3.36.1
regenerator-runtime: 0.14.1 regenerator-runtime: 0.14.1
dev: false dev: false
/@babel/runtime@7.24.1: /@babel/runtime@7.24.4:
resolution: {integrity: sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ==} resolution: {integrity: sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==}
engines: {node: '>=6.9.0'} engines: {node: '>=6.9.0'}
dependencies: dependencies:
regenerator-runtime: 0.14.1 regenerator-runtime: 0.14.1
@@ -51,8 +51,8 @@ packages:
mime: 3.0.0 mime: 3.0.0
dev: true dev: true
/@cloudflare/workerd-darwin-64@1.20240320.1: /@cloudflare/workerd-darwin-64@1.20240404.0:
resolution: {integrity: sha512-ioG5k2M17xyiAlK/k3L21NZLMVeSHMjwlmGtZyCyzSLL5/zGINcgZ5yPLV0UuWiysw07/6Jjzm5Sx94hzMVybg==} resolution: {integrity: sha512-rc/ov3I9GwgKRtUnkShNW3TIoZEPHzExrMRNlHq1VpXQRBSchHdMw8meMn54+oqgxW1AKLmPWj/c0A7EnYAsIw==}
engines: {node: '>=16'} engines: {node: '>=16'}
cpu: [x64] cpu: [x64]
os: [darwin] os: [darwin]
@@ -60,8 +60,8 @@ packages:
dev: true dev: true
optional: true optional: true
/@cloudflare/workerd-darwin-arm64@1.20240320.1: /@cloudflare/workerd-darwin-arm64@1.20240404.0:
resolution: {integrity: sha512-Ga6RDdnFEIsN4WuWsaP9bLGvK9K7pEIVoSIgmw6vweVlD8UK/a2MPGrsF1ogwdeCTCOMY8wUh9poL/Yu48IPpg==} resolution: {integrity: sha512-V9oPjeC2PYBCoAYnjbO2bsjT7PtzxfUHnh780FUi1r59Hwxd7FNlojwsIidA0nS/1WV5UKeJusIdrYlQbsketA==}
engines: {node: '>=16'} engines: {node: '>=16'}
cpu: [arm64] cpu: [arm64]
os: [darwin] os: [darwin]
@@ -69,8 +69,8 @@ packages:
dev: true dev: true
optional: true optional: true
/@cloudflare/workerd-linux-64@1.20240320.1: /@cloudflare/workerd-linux-64@1.20240404.0:
resolution: {integrity: sha512-KFof5H8eU0NXv+pUAU7Lk/OLtOmfsioTJqu0v6kPL7QsTGsgzj5sEQNcQ8DONSze549Yflu5W00qpA2cPz9eWQ==} resolution: {integrity: sha512-ndO7q6G2X8uYd5byGFzow4SWPqINQcmJ7pKKATNa+9vh/YMO0of2ihPntnm9uv577l8nRiAwRkHbnsWoEI33qQ==}
engines: {node: '>=16'} engines: {node: '>=16'}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
@@ -78,8 +78,8 @@ packages:
dev: true dev: true
optional: true optional: true
/@cloudflare/workerd-linux-arm64@1.20240320.1: /@cloudflare/workerd-linux-arm64@1.20240404.0:
resolution: {integrity: sha512-t+kGc6dGdkKvVMGcHCPhlCsUZF5dj8xbAFvLB7DAJ8T79ys30rmY2Lu/C8vKlhjH9TJhbzgKmPaJ0wC/K4euvw==} resolution: {integrity: sha512-hto5pjKYFqFu2Rvxnh84TzgDwalBRXQSwOVHltcgqo48en9TJDCN48ZtLj2G7QTGUOMW88h+nqdbj8+P7S/GXQ==}
engines: {node: '>=16'} engines: {node: '>=16'}
cpu: [arm64] cpu: [arm64]
os: [linux] os: [linux]
@@ -87,8 +87,8 @@ packages:
dev: true dev: true
optional: true optional: true
/@cloudflare/workerd-windows-64@1.20240320.1: /@cloudflare/workerd-windows-64@1.20240404.0:
resolution: {integrity: sha512-9xDylCOsuzWqGuANkuUByiJ5RHeMqgw37FiI7rn8I6zdGAc/alOB9B4Bh7B73WC2uEpFL+XCEjcHZ6NmsO4NaQ==} resolution: {integrity: sha512-DpCLvNkOeFinKGJwv9qbyT7RLZ1168dhPx85IHSqAYVWZIszNSmNOkEDqklvoJoab01AqETrrEhwBdmjCA7qfA==}
engines: {node: '>=16'} engines: {node: '>=16'}
cpu: [x64] cpu: [x64]
os: [win32] os: [win32]
@@ -350,11 +350,11 @@ packages:
/@types/node-forge@1.3.11: /@types/node-forge@1.3.11:
resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==} resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==}
dependencies: dependencies:
'@types/node': 20.12.2 '@types/node': 20.12.5
dev: true dev: true
/@types/node@20.12.2: /@types/node@20.12.5:
resolution: {integrity: sha512-zQ0NYO87hyN6Xrclcqp7f8ZbXNbRfoGWNcMvHTPQp9UUrwI0mI7XBz+cu7/W6/VClYo2g63B0cjull/srU7LgQ==} resolution: {integrity: sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==}
dependencies: dependencies:
undici-types: 5.26.5 undici-types: 5.26.5
dev: true dev: true
@@ -585,8 +585,8 @@ packages:
hasBin: true hasBin: true
dev: false dev: false
/hono@4.1.7: /hono@4.2.2:
resolution: {integrity: sha512-Qa9/OM64d3we/COpxpJNT8p2IEvXbvRzp2eX4wf48eDvqoU3pBrnbY6zAF2rK878GxkkfCo6yipZXNsPiTrBMQ==} resolution: {integrity: sha512-mDmjBHF6uBNN3TASdAbDCFsN9FLbrlgXyFZkhLEkU7hUgk0+T9hcsUrL/nho4qV+Xk0RDHx7gop4Q1gelZZVRw==}
engines: {node: '>=16.0.0'} engines: {node: '>=16.0.0'}
dev: false dev: false
@@ -659,6 +659,10 @@ packages:
resolution: {integrity: sha512-l+nePcPbIG1fNlqMzrh68MLkX/gTxk/+vdvAb388Ssi7UuUN31MI44w4Yf33mM3Cm4xDfw48mdf3rkdHszLNew==} resolution: {integrity: sha512-l+nePcPbIG1fNlqMzrh68MLkX/gTxk/+vdvAb388Ssi7UuUN31MI44w4Yf33mM3Cm4xDfw48mdf3rkdHszLNew==}
dev: false dev: false
/libbase64@1.3.0:
resolution: {integrity: sha512-GgOXd0Eo6phYgh0DJtjQ2tO8dc0IVINtZJeARPeiIJqge+HdsWSuaDTe8ztQ7j/cONByDZ3zeB325AHiv5O0dg==}
dev: false
/libmime@5.2.0: /libmime@5.2.0:
resolution: {integrity: sha512-X2U5Wx0YmK0rXFbk67ASMeqYIkZ6E5vY7pNWRKtnNzqjvdYYG8xtPDpCnuUEnPU9vlgNev+JoSrcaKSUaNvfsw==} resolution: {integrity: sha512-X2U5Wx0YmK0rXFbk67ASMeqYIkZ6E5vY7pNWRKtnNzqjvdYYG8xtPDpCnuUEnPU9vlgNev+JoSrcaKSUaNvfsw==}
dependencies: dependencies:
@@ -668,23 +672,27 @@ packages:
libqp: 2.0.1 libqp: 2.0.1
dev: false dev: false
/libmime@5.2.1: /libmime@5.3.4:
resolution: {integrity: sha512-A0z9O4+5q+ZTj7QwNe/Juy1KARNb4WaviO4mYeFC4b8dBT2EEqK2pkM+GC8MVnkOjqhl5nYQxRgnPYRRTNmuSQ==} resolution: {integrity: sha512-TsqPdercr6DHrnoQx1F0nS2Y4yPT+fWuOjEP2rqzvV77hMYWomTe/rpm0u9JORQ/FavEXybAGcBJsQbLr9+hjA==}
dependencies: dependencies:
encoding-japanese: 2.0.0 encoding-japanese: 2.0.0
iconv-lite: 0.6.3 iconv-lite: 0.6.3
libbase64: 1.2.1 libbase64: 1.3.0
libqp: 2.0.1 libqp: 2.1.0
dev: false dev: false
/libqp@2.0.1: /libqp@2.0.1:
resolution: {integrity: sha512-Ka0eC5LkF3IPNQHJmYBWljJsw0UvM6j+QdKRbWyCdTmYwvIDE6a7bCm0UkTAL/K+3KXK5qXT/ClcInU01OpdLg==} resolution: {integrity: sha512-Ka0eC5LkF3IPNQHJmYBWljJsw0UvM6j+QdKRbWyCdTmYwvIDE6a7bCm0UkTAL/K+3KXK5qXT/ClcInU01OpdLg==}
dev: false dev: false
/linkify-it@4.0.1: /libqp@2.1.0:
resolution: {integrity: sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==} resolution: {integrity: sha512-O6O6/fsG5jiUVbvdgT7YX3xY3uIadR6wEZ7+vy9u7PKHAlSEB6blvC1o5pHBjgsi95Uo0aiBBdkyFecj6jtb7A==}
dev: false
/linkify-it@5.0.0:
resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==}
dependencies: dependencies:
uc.micro: 1.0.6 uc.micro: 2.1.0
dev: false dev: false
/magic-string@0.25.9: /magic-string@0.25.9:
@@ -693,18 +701,19 @@ packages:
sourcemap-codec: 1.4.8 sourcemap-codec: 1.4.8
dev: true dev: true
/mailparser@3.6.5(patch_hash=ykuld7ytssxm3j6t6ehwmtonk4): /mailparser@3.6.9(patch_hash=vtv6mupuxeqjidadcgidi322su):
resolution: {integrity: sha512-nteTpF0Khm5JLOnt4sigmzNdUH/6mO7PZ4KEnvxf4mckyXYFFhrtAWZzbq/V5aQMH+049gA7ZjfLdh+QiX2Uqg==} resolution: {integrity: sha512-1fIDZlgN1NnuzmTSEUxkaViquXYkw5NbQehVc+kz55QRy98QgLdTtRSKv289Jy4NrCiDchRx6zAijB4HrPsvkA==}
dependencies: dependencies:
encoding-japanese: 2.0.0 encoding-japanese: 2.0.0
he: 1.2.0 he: 1.2.0
html-to-text: 9.0.5 html-to-text: 9.0.5
iconv-lite: 0.6.3 iconv-lite: 0.6.3
libmime: 5.2.1 libmime: 5.3.4
linkify-it: 4.0.1 linkify-it: 5.0.0
mailsplit: 5.4.0 mailsplit: 5.4.0
nodemailer: 6.9.3 nodemailer: 6.9.11
tlds: 1.240.0 punycode: 2.3.1
tlds: 1.250.0
dev: false dev: false
patched: true patched: true
@@ -737,14 +746,14 @@ packages:
/mimetext@3.0.24: /mimetext@3.0.24:
resolution: {integrity: sha512-UdG1KVfcxeEfo6el91lzFG2WLLTm8DxSK/rosxx5H2Pjla50+DSsjTgr9BRAfAkbQWaxvzcaTO+bHK5ZrdKdfA==} resolution: {integrity: sha512-UdG1KVfcxeEfo6el91lzFG2WLLTm8DxSK/rosxx5H2Pjla50+DSsjTgr9BRAfAkbQWaxvzcaTO+bHK5ZrdKdfA==}
dependencies: dependencies:
'@babel/runtime': 7.24.1 '@babel/runtime': 7.24.4
'@babel/runtime-corejs3': 7.24.1 '@babel/runtime-corejs3': 7.24.4
js-base64: 3.7.7 js-base64: 3.7.7
mime-types: 2.1.35 mime-types: 2.1.35
dev: false dev: false
/miniflare@3.20240320.1: /miniflare@3.20240404.0:
resolution: {integrity: sha512-MoHhT+XaFPQtplNIkJc5NtWOi5u/7VkmBUWyyxDH7ehHk4xRT2PDkMCvVOUIcaqbHNIBzigyoYegdYmZcYtdCg==} resolution: {integrity: sha512-+FOTcztPMW3akmucX4vE0PWMNvP4JBwl4s9ieA84fcOaDtTbtfU1rHXpcacj16klpUpvSnD6xd8Sjsn6SJXPfg==}
engines: {node: '>=16.13'} engines: {node: '>=16.13'}
hasBin: true hasBin: true
dependencies: dependencies:
@@ -755,8 +764,8 @@ packages:
exit-hook: 2.2.1 exit-hook: 2.2.1
glob-to-regexp: 0.4.1 glob-to-regexp: 0.4.1
stoppable: 1.1.0 stoppable: 1.1.0
undici: 5.28.3 undici: 5.28.4
workerd: 1.20240320.1 workerd: 1.20240404.0
ws: 8.16.0 ws: 8.16.0
youch: 3.3.3 youch: 3.3.3
zod: 3.22.4 zod: 3.22.4
@@ -786,8 +795,8 @@ packages:
engines: {node: '>= 6.13.0'} engines: {node: '>= 6.13.0'}
dev: true dev: true
/nodemailer@6.9.3: /nodemailer@6.9.11:
resolution: {integrity: sha512-fy9v3NgTzBngrMFkDsKEj0r02U7jm6XfC3b52eoNV+GCrGj+s8pt5OqhiJdWKuw51zCTdiNR/IUD1z33LIIGpg==} resolution: {integrity: sha512-UiAkgiERuG94kl/3bKfE8o10epvDnl0vokNEtZDPTq9BWzIl6EFT9336SbIT4oaTBD8NmmUTLsQyXHV82eXSWg==}
engines: {node: '>=6.0.0'} engines: {node: '>=6.0.0'}
dev: false dev: false
@@ -807,8 +816,8 @@ packages:
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
dev: true dev: true
/path-to-regexp@6.2.1: /path-to-regexp@6.2.2:
resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==}
dev: true dev: true
/peberminta@0.9.0: /peberminta@0.9.0:
@@ -820,14 +829,19 @@ packages:
engines: {node: '>=8.6'} engines: {node: '>=8.6'}
dev: true dev: true
/postal-mime@1.1.0: /postal-mime@2.2.1:
resolution: {integrity: sha512-IyYhoZpCq/I9l9om5soJ5Ch5vsS76EGu/tn7mHQGiAEmIKf2uvr3TdiYTB56FmD5bOm78eYjCPryM+0GuJcMJg==} resolution: {integrity: sha512-YqGeFmiKXUxv32hOy2t47VX67mYydC47CTCc7+HKd3xlNKPDhivnO/ZovN3iWXxvyyL2TRTxusuuq3etWeCKsw==}
dev: false dev: false
/printable-characters@1.0.42: /printable-characters@1.0.42:
resolution: {integrity: sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==} resolution: {integrity: sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==}
dev: true dev: true
/punycode@2.3.1:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
dev: false
/readdirp@3.6.0: /readdirp@3.6.0:
resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
engines: {node: '>=8.10.0'} engines: {node: '>=8.10.0'}
@@ -919,8 +933,8 @@ packages:
engines: {node: '>= 0.4'} engines: {node: '>= 0.4'}
dev: true dev: true
/tlds@1.240.0: /tlds@1.250.0:
resolution: {integrity: sha512-1OYJQenswGZSOdRw7Bql5Qu7uf75b+F3HFBXbqnG/ifHa0fev1XcG+3pJf3pA/KC6RtHQzfKgIf1vkMlMG7mtQ==} resolution: {integrity: sha512-rWsBfFCWKrjM/o2Q1TTUeYQv6tHSd/umUutDjVs6taTuEgRDIreVYIBgWRWW4ot7jp6n0UVUuxhTLWBtUmPu/w==}
hasBin: true hasBin: true
dev: false dev: false
@@ -935,40 +949,40 @@ packages:
resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
dev: true dev: true
/uc.micro@1.0.6: /uc.micro@2.1.0:
resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==} resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==}
dev: false dev: false
/undici-types@5.26.5: /undici-types@5.26.5:
resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
dev: true dev: true
/undici@5.28.3: /undici@5.28.4:
resolution: {integrity: sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==} resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==}
engines: {node: '>=14.0'} engines: {node: '>=14.0'}
dependencies: dependencies:
'@fastify/busboy': 2.1.1 '@fastify/busboy': 2.1.1
dev: true dev: true
/workerd@1.20240320.1: /workerd@1.20240404.0:
resolution: {integrity: sha512-nuavAGGjh0qqM6RF5zxTHyUwEqdLCHchodbrpbh/xlJpFGnJVY5C1YgSi2S9aLkJJoa0/25Ta/+EzXEbApA/3w==} resolution: {integrity: sha512-U4tfnvBcPMsv7pmRGuF0J5UnoZi6tbc64tXNfyijI74r6w6Vlb2+a6eibdQL8g0g46+4vjuTKME9G5RvSvdc8g==}
engines: {node: '>=16'} engines: {node: '>=16'}
hasBin: true hasBin: true
requiresBuild: true requiresBuild: true
optionalDependencies: optionalDependencies:
'@cloudflare/workerd-darwin-64': 1.20240320.1 '@cloudflare/workerd-darwin-64': 1.20240404.0
'@cloudflare/workerd-darwin-arm64': 1.20240320.1 '@cloudflare/workerd-darwin-arm64': 1.20240404.0
'@cloudflare/workerd-linux-64': 1.20240320.1 '@cloudflare/workerd-linux-64': 1.20240404.0
'@cloudflare/workerd-linux-arm64': 1.20240320.1 '@cloudflare/workerd-linux-arm64': 1.20240404.0
'@cloudflare/workerd-windows-64': 1.20240320.1 '@cloudflare/workerd-windows-64': 1.20240404.0
dev: true dev: true
/wrangler@3.41.0: /wrangler@3.48.0:
resolution: {integrity: sha512-iPFHF+88ZchnoZaQnq69Qkcpt0/LwkD44FzTxHWGzuBiNFwWwaNZ5zJ1G7Ga4nyipwcgtj+ykGlB/Amdgmut7w==} resolution: {integrity: sha512-Wv7JS6FyX1j9HkaM6WL3fmTzBMAYc4hPSyZCuxuH55hkJDX/7ts+YAgsaN1U8rKoDrV3FVSgBfI9TyqP9iuM8Q==}
engines: {node: '>=16.17.0'} engines: {node: '>=16.17.0'}
hasBin: true hasBin: true
peerDependencies: peerDependencies:
'@cloudflare/workers-types': ^4.20240320.1 '@cloudflare/workers-types': ^4.20240404.0
peerDependenciesMeta: peerDependenciesMeta:
'@cloudflare/workers-types': '@cloudflare/workers-types':
optional: true optional: true
@@ -979,9 +993,9 @@ packages:
blake3-wasm: 2.1.5 blake3-wasm: 2.1.5
chokidar: 3.6.0 chokidar: 3.6.0
esbuild: 0.17.19 esbuild: 0.17.19
miniflare: 3.20240320.1 miniflare: 3.20240404.0
nanoid: 3.3.7 nanoid: 3.3.7
path-to-regexp: 6.2.1 path-to-regexp: 6.2.2
resolve: 1.22.8 resolve: 1.22.8
resolve.exports: 2.0.2 resolve.exports: 2.0.2
selfsigned: 2.4.1 selfsigned: 2.4.1
+11 -10
View File
@@ -1,8 +1,7 @@
import { createMimeMessage } from "mimetext"; import { createMimeMessage } from "mimetext";
import { EmailMessage } from "cloudflare:email"; import { EmailMessage } from "cloudflare:email";
import { simpleParser } from 'mailparser';
const PostalMime = require("postal-mime"); import PostalMime from 'postal-mime';
const simpleParser = require('mailparser').simpleParser;
global.setImmediate = (callback) => callback(); global.setImmediate = (callback) => callback();
async function email(message, env, ctx) { async function email(message, env, ctx) {
@@ -22,20 +21,22 @@ async function email(message, env, ctx) {
} }
rawEmail += decoder.decode(value); rawEmail += decoder.decode(value);
} }
const message_id = message.headers.get("Message-ID");
let parsedEmail = {}; let parsedEmail = {};
try { // todo fix this
parsedEmail = await simpleParser(rawEmail) if (!message.from.endsWith("@mega.nz")) {
} catch (error) { try {
console.log(error) parsedEmail = await simpleParser(rawEmail)
} catch (error) {
console.log(error)
}
} }
if (!parsedEmail.html && !parsedEmail.textAsHtml && !parsedEmail.text) { if (!parsedEmail.html && !parsedEmail.textAsHtml && !parsedEmail.text) {
console.log("Failed parse email, try postal-mime"); console.log("Failed parse email, try postal-mime");
const parser = new PostalMime.default(); parsedEmail = await PostalMime.parse(rawEmail);
parsedEmail = await parser.parse(rawEmail);
} }
const message_id = message.headers.get("Message-ID");
// process email // process email
const { success } = await env.DB.prepare( const { success } = await env.DB.prepare(
-1
View File
@@ -175,7 +175,6 @@ api.get('/api/new_address', async (c) => {
address_id = await c.env.DB.prepare( address_id = await c.env.DB.prepare(
`SELECT id FROM address where name = ?` `SELECT id FROM address where name = ?`
).bind(name + "@" + domain).first("id"); ).bind(name + "@" + domain).first("id");
address_id = results.id;
} catch (error) { } catch (error) {
console.log(error); console.log(error);
} }