diff --git a/frontend/src/views/Content.vue b/frontend/src/views/Content.vue
index 2ab8ad76..7f0cfb34 100644
--- a/frontend/src/views/Content.vue
+++ b/frontend/src/views/Content.vue
@@ -157,6 +157,9 @@ onMounted(async () => {
ID: {{ row.id }}
+
+ {{ row.created_at }}
+
FROM: {{ row.source }}
@@ -172,6 +175,9 @@ onMounted(async () => {
ID: {{ curMail.id }}
+
+ {{ curMail.created_at }}
+
FROM: {{ curMail.source }}
@@ -212,6 +218,9 @@ onMounted(async () => {
ID: {{ row.id }}
+
+ {{ row.created_at }}
+
FROM: {{ row.source }}
@@ -227,6 +236,9 @@ onMounted(async () => {
ID: {{ curMail.id }}
+
+ {{ curMail.created_at }}
+
FROM: {{ curMail.source }}
diff --git a/frontend/src/views/Settings.vue b/frontend/src/views/Settings.vue
index 2c3308de..4bda8ab2 100644
--- a/frontend/src/views/Settings.vue
+++ b/frontend/src/views/Settings.vue
@@ -1,5 +1,5 @@
-
+
- {{ t("settings") }}
- {{ t('save') }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+ {{ t('save') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/worker/package.json b/worker/package.json
index 5a93d7cd..553b7be5 100644
--- a/worker/package.json
+++ b/worker/package.json
@@ -8,12 +8,12 @@
"start": "wrangler dev"
},
"devDependencies": {
- "wrangler": "^3.20.0"
+ "wrangler": "^3.41.0"
},
"dependencies": {
- "hono": "^3.11.7",
- "mailparser": "^3.6.5",
- "mimetext": "^3.0.16",
+ "hono": "^4.1.7",
+ "mailparser": "3.6.5",
+ "mimetext": "^3.0.24",
"postal-mime": "^1.1.0"
},
"pnpm": {
diff --git a/worker/pnpm-lock.yaml b/worker/pnpm-lock.yaml
index 3dbe40cd..a7868eac 100644
--- a/worker/pnpm-lock.yaml
+++ b/worker/pnpm-lock.yaml
@@ -11,48 +11,48 @@ patchedDependencies:
dependencies:
hono:
- specifier: ^3.11.7
- version: 3.11.7
+ specifier: ^4.1.7
+ version: 4.1.7
mailparser:
- specifier: ^3.6.5
+ specifier: 3.6.5
version: 3.6.5(patch_hash=ykuld7ytssxm3j6t6ehwmtonk4)
mimetext:
- specifier: ^3.0.16
- version: 3.0.16
+ specifier: ^3.0.24
+ version: 3.0.24
postal-mime:
specifier: ^1.1.0
version: 1.1.0
devDependencies:
wrangler:
- specifier: ^3.20.0
- version: 3.20.0
+ specifier: ^3.41.0
+ version: 3.41.0
packages:
- /@babel/runtime-corejs3@7.23.6:
- resolution: {integrity: sha512-Djs/ZTAnpyj0nyg7p1J6oiE/tZ9G2stqAFlLGZynrW+F3k2w2jGK2mLOBxzYIOcZYA89+c3d3wXKpYLcpwcU6w==}
+ /@babel/runtime-corejs3@7.24.1:
+ resolution: {integrity: sha512-T9ko/35G+Bkl+win48GduaPlhSlOjjE5s1TeiEcD+QpxlLQnoEfb/nO/T+TQqkm+ipFwORn+rB8w14iJ/uD0bg==}
engines: {node: '>=6.9.0'}
dependencies:
- core-js-pure: 3.34.0
+ core-js-pure: 3.36.1
regenerator-runtime: 0.14.1
dev: false
- /@babel/runtime@7.23.6:
- resolution: {integrity: sha512-zHd0eUrf5GZoOWVCXp6koAKQTfZV07eit6bGPmJgnZdnSAvvZee6zniW2XMF7Cmc4ISOOnPy3QaSiIJGJkVEDQ==}
+ /@babel/runtime@7.24.1:
+ resolution: {integrity: sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ==}
engines: {node: '>=6.9.0'}
dependencies:
regenerator-runtime: 0.14.1
dev: false
- /@cloudflare/kv-asset-handler@0.2.0:
- resolution: {integrity: sha512-MVbXLbTcAotOPUj0pAMhVtJ+3/kFkwJqc5qNOleOZTv6QkZZABDMS21dSrSlVswEHwrpWC03e4fWytjqKvuE2A==}
+ /@cloudflare/kv-asset-handler@0.3.1:
+ resolution: {integrity: sha512-lKN2XCfKCmpKb86a1tl4GIwsJYDy9TGuwjhDELLmpKygQhw8X2xR4dusgpC5Tg7q1pB96Eb0rBo81kxSILQMwA==}
dependencies:
mime: 3.0.0
dev: true
- /@cloudflare/workerd-darwin-64@1.20231030.0:
- resolution: {integrity: sha512-J4PQ9utPxLya9yHdMMx3AZeC5M/6FxcoYw6jo9jbDDFTy+a4Gslqf4Im9We3aeOEdPXa3tgQHVQOSelJSZLhIw==}
+ /@cloudflare/workerd-darwin-64@1.20240320.1:
+ resolution: {integrity: sha512-ioG5k2M17xyiAlK/k3L21NZLMVeSHMjwlmGtZyCyzSLL5/zGINcgZ5yPLV0UuWiysw07/6Jjzm5Sx94hzMVybg==}
engines: {node: '>=16'}
cpu: [x64]
os: [darwin]
@@ -60,8 +60,8 @@ packages:
dev: true
optional: true
- /@cloudflare/workerd-darwin-arm64@1.20231030.0:
- resolution: {integrity: sha512-WSJJjm11Del4hSneiNB7wTXGtBXI4QMCH9l5qf4iT5PAW8cESGcCmdHtWDWDtGAAGcvmLT04KNvmum92vRKKQQ==}
+ /@cloudflare/workerd-darwin-arm64@1.20240320.1:
+ resolution: {integrity: sha512-Ga6RDdnFEIsN4WuWsaP9bLGvK9K7pEIVoSIgmw6vweVlD8UK/a2MPGrsF1ogwdeCTCOMY8wUh9poL/Yu48IPpg==}
engines: {node: '>=16'}
cpu: [arm64]
os: [darwin]
@@ -69,8 +69,8 @@ packages:
dev: true
optional: true
- /@cloudflare/workerd-linux-64@1.20231030.0:
- resolution: {integrity: sha512-2HUeRTvoCC17fxE0qdBeR7J9dO8j4A8ZbdcvY8pZxdk+zERU6+N03RTbk/dQMU488PwiDvcC3zZqS4gwLfVT8g==}
+ /@cloudflare/workerd-linux-64@1.20240320.1:
+ resolution: {integrity: sha512-KFof5H8eU0NXv+pUAU7Lk/OLtOmfsioTJqu0v6kPL7QsTGsgzj5sEQNcQ8DONSze549Yflu5W00qpA2cPz9eWQ==}
engines: {node: '>=16'}
cpu: [x64]
os: [linux]
@@ -78,8 +78,8 @@ packages:
dev: true
optional: true
- /@cloudflare/workerd-linux-arm64@1.20231030.0:
- resolution: {integrity: sha512-4/GK5zHh+9JbUI6Z5xTCM0ZmpKKHk7vu9thmHjUxtz+o8Ne9DoD7DlDvXQWgMF6XGaTubDWyp3ttn+Qv8jDFuQ==}
+ /@cloudflare/workerd-linux-arm64@1.20240320.1:
+ resolution: {integrity: sha512-t+kGc6dGdkKvVMGcHCPhlCsUZF5dj8xbAFvLB7DAJ8T79ys30rmY2Lu/C8vKlhjH9TJhbzgKmPaJ0wC/K4euvw==}
engines: {node: '>=16'}
cpu: [arm64]
os: [linux]
@@ -87,8 +87,8 @@ packages:
dev: true
optional: true
- /@cloudflare/workerd-windows-64@1.20231030.0:
- resolution: {integrity: sha512-fb/Jgj8Yqy3PO1jLhk7mTrHMkR8jklpbQFud6rL/aMAn5d6MQbaSrYOCjzkKGp0Zng8D2LIzSl+Fc0C9Sggxjg==}
+ /@cloudflare/workerd-windows-64@1.20240320.1:
+ resolution: {integrity: sha512-9xDylCOsuzWqGuANkuUByiJ5RHeMqgw37FiI7rn8I6zdGAc/alOB9B4Bh7B73WC2uEpFL+XCEjcHZ6NmsO4NaQ==}
engines: {node: '>=16'}
cpu: [x64]
os: [win32]
@@ -96,6 +96,13 @@ packages:
dev: true
optional: true
+ /@cspotcode/source-map-support@0.8.1:
+ resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
+ engines: {node: '>=12'}
+ dependencies:
+ '@jridgewell/trace-mapping': 0.3.9
+ dev: true
+
/@esbuild-plugins/node-globals-polyfill@0.2.3(esbuild@0.17.19):
resolution: {integrity: sha512-r3MIryXDeXDOZh7ih1l/yE9ZLORCd5e8vWg02azWRGj5SPTuoh69A2AIyn0Z31V/kHBfZ4HgWJ+OK3GTTwLmnw==}
peerDependencies:
@@ -312,11 +319,27 @@ packages:
dev: true
optional: true
- /@fastify/busboy@2.1.0:
- resolution: {integrity: sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==}
+ /@fastify/busboy@2.1.1:
+ resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==}
engines: {node: '>=14'}
dev: true
+ /@jridgewell/resolve-uri@3.1.2:
+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+ engines: {node: '>=6.0.0'}
+ dev: true
+
+ /@jridgewell/sourcemap-codec@1.4.15:
+ resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
+ dev: true
+
+ /@jridgewell/trace-mapping@0.3.9:
+ resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.2
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: true
+
/@selderee/plugin-htmlparser2@0.11.0:
resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==}
dependencies:
@@ -324,37 +347,25 @@ packages:
selderee: 0.11.0
dev: false
- /@tsconfig/esm@1.0.5:
- resolution: {integrity: sha512-JzoZ0h299JRLPfV5VBsMq1TuMy+OmU9bdV/7NcjfRojL0eIcA1k5ESrtjWrDwJRJnk9B0QmgR0rq04LERbdfWw==}
- deprecated: this package has been deprecated
- dev: false
-
- /@tsconfig/node18@2.0.1:
- resolution: {integrity: sha512-UqdfvuJK0SArA2CxhKWwwAWfnVSXiYe63bVpMutc27vpngCntGUZQETO24pEJ46zU6XM+7SpqYoMgcO3bM11Ew==}
- dev: false
-
- /@tsconfig/strictest@2.0.2:
- resolution: {integrity: sha512-jt4jIsWKvUvuY6adJnQJlb/UR7DdjC8CjHI/OaSQruj2yX9/K6+KOvDt/vD6udqos/FUk5Op66CvYT7TBLYO5Q==}
- dev: false
-
- /@types/node-forge@1.3.10:
- resolution: {integrity: sha512-y6PJDYN4xYBxwd22l+OVH35N+1fCYWiuC3aiP2SlXVE6Lo7SS+rSx9r89hLxrP4pn6n1lBGhHJ12pj3F3Mpttw==}
+ /@types/node-forge@1.3.11:
+ resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==}
dependencies:
- '@types/node': 20.10.4
+ '@types/node': 20.12.2
dev: true
- /@types/node@20.10.4:
- resolution: {integrity: sha512-D08YG6rr8X90YB56tSIuBaddy/UXAA9RKJoFvrsnogAum/0pmjkgi4+2nx96A330FmioegBWmEYQ+syqCFaveg==}
+ /@types/node@20.12.2:
+ resolution: {integrity: sha512-zQ0NYO87hyN6Xrclcqp7f8ZbXNbRfoGWNcMvHTPQp9UUrwI0mI7XBz+cu7/W6/VClYo2g63B0cjull/srU7LgQ==}
dependencies:
undici-types: 5.26.5
+ dev: true
- /acorn-walk@8.3.1:
- resolution: {integrity: sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw==}
+ /acorn-walk@8.3.2:
+ resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==}
engines: {node: '>=0.4.0'}
dev: true
- /acorn@8.11.2:
- resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==}
+ /acorn@8.11.3:
+ resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==}
engines: {node: '>=0.4.0'}
hasBin: true
dev: true
@@ -373,8 +384,8 @@ packages:
printable-characters: 1.0.42
dev: true
- /binary-extensions@2.2.0:
- resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
+ /binary-extensions@2.3.0:
+ resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
engines: {node: '>=8'}
dev: true
@@ -389,10 +400,6 @@ packages:
fill-range: 7.0.1
dev: true
- /buffer-from@1.1.2:
- resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
- dev: true
-
/capnp-ts@0.7.0:
resolution: {integrity: sha512-XKxXAC3HVPv7r674zP0VC3RTXz+/JKhfyw94ljvF80yynK6VkTnqE3jMuN8b3dUVmmc43TjyxjW4KTsmB3c86g==}
dependencies:
@@ -402,8 +409,8 @@ packages:
- supports-color
dev: true
- /chokidar@3.5.3:
- resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
+ /chokidar@3.6.0:
+ resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
engines: {node: '>= 8.10.0'}
dependencies:
anymatch: 3.1.3
@@ -422,8 +429,8 @@ packages:
engines: {node: '>= 0.6'}
dev: true
- /core-js-pure@3.34.0:
- resolution: {integrity: sha512-pmhivkYXkymswFfbXsANmBAewXx86UBfmagP+w0wkK06kLsLlTK5oQmsURPivzMkIBQiYq2cjamcZExIwlFQIg==}
+ /core-js-pure@3.36.1:
+ resolution: {integrity: sha512-NXCvHvSVYSrewP0L5OhltzXeWFJLo2AL2TYnj6iLV3Bw8mM62wAQMNgUCRI6EBu6hVVpbCxmOPlxh1Ikw2PfUA==}
requiresBuild: true
dev: false
@@ -544,6 +551,10 @@ packages:
dev: true
optional: true
+ /function-bind@1.1.2:
+ resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+ dev: true
+
/get-source@2.0.12:
resolution: {integrity: sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==}
dependencies:
@@ -562,13 +573,20 @@ packages:
resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
dev: true
+ /hasown@2.0.2:
+ resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ function-bind: 1.1.2
+ dev: true
+
/he@1.2.0:
resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
hasBin: true
dev: false
- /hono@3.11.7:
- resolution: {integrity: sha512-TcfAq7IdipF+9coxnuzYlSSBXbm9mTyWjjagLCv/2ampboNcKJdi+XCK5G48mHQtpI5+9Rj3J4FfcGgw9vzIww==}
+ /hono@4.1.7:
+ resolution: {integrity: sha512-Qa9/OM64d3we/COpxpJNT8p2IEvXbvRzp2eX4wf48eDvqoU3pBrnbY6zAF2rK878GxkkfCo6yipZXNsPiTrBMQ==}
engines: {node: '>=16.0.0'}
dev: false
@@ -603,7 +621,13 @@ packages:
resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
engines: {node: '>=8'}
dependencies:
- binary-extensions: 2.2.0
+ binary-extensions: 2.3.0
+ dev: true
+
+ /is-core-module@2.13.1:
+ resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
+ dependencies:
+ hasown: 2.0.2
dev: true
/is-extglob@2.1.1:
@@ -623,8 +647,8 @@ packages:
engines: {node: '>=0.12.0'}
dev: true
- /js-base64@3.7.5:
- resolution: {integrity: sha512-3MEt5DTINKqfScXKfJFrRbxkrnk2AxPWGBL/ycjz4dK8iqiSJ06UxD8jh8xuh6p10TX4t2+7FsBYVxxQbMg+qA==}
+ /js-base64@3.7.7:
+ resolution: {integrity: sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==}
dev: false
/leac@0.6.0:
@@ -710,34 +734,30 @@ packages:
hasBin: true
dev: true
- /mimetext@3.0.16:
- resolution: {integrity: sha512-uqtsQ2eNEpqoLUBSGSF6Y9eSbbNNeiknv7M6k5nzcs7M0uWtSjqWINYe6ZY/CowxnVDtNFSX+k9K6IicPboNBg==}
+ /mimetext@3.0.24:
+ resolution: {integrity: sha512-UdG1KVfcxeEfo6el91lzFG2WLLTm8DxSK/rosxx5H2Pjla50+DSsjTgr9BRAfAkbQWaxvzcaTO+bHK5ZrdKdfA==}
dependencies:
- '@babel/runtime': 7.23.6
- '@babel/runtime-corejs3': 7.23.6
- '@tsconfig/esm': 1.0.5
- '@tsconfig/node18': 2.0.1
- '@tsconfig/strictest': 2.0.2
- '@types/node': 20.10.4
- js-base64: 3.7.5
+ '@babel/runtime': 7.24.1
+ '@babel/runtime-corejs3': 7.24.1
+ js-base64: 3.7.7
mime-types: 2.1.35
dev: false
- /miniflare@3.20231030.4:
- resolution: {integrity: sha512-7MBz0ArLuDop1WJGZC6tFgN6c5MRyDOIlxbm3yp0TRBpvDS/KsTuWCQcCjsxN4QQ5zvL3JTkuIZbQzRRw/j6ow==}
+ /miniflare@3.20240320.1:
+ resolution: {integrity: sha512-MoHhT+XaFPQtplNIkJc5NtWOi5u/7VkmBUWyyxDH7ehHk4xRT2PDkMCvVOUIcaqbHNIBzigyoYegdYmZcYtdCg==}
engines: {node: '>=16.13'}
hasBin: true
dependencies:
- acorn: 8.11.2
- acorn-walk: 8.3.1
+ '@cspotcode/source-map-support': 0.8.1
+ acorn: 8.11.3
+ acorn-walk: 8.3.2
capnp-ts: 0.7.0
exit-hook: 2.2.1
glob-to-regexp: 0.4.1
- source-map-support: 0.5.21
stoppable: 1.1.0
- undici: 5.28.2
- workerd: 1.20231030.0
- ws: 8.15.1
+ undici: 5.28.3
+ workerd: 1.20240320.1
+ ws: 8.16.0
youch: 3.3.3
zod: 3.22.4
transitivePeerDependencies:
@@ -783,6 +803,10 @@ packages:
peberminta: 0.9.0
dev: false
+ /path-parse@1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+ dev: true
+
/path-to-regexp@6.2.1:
resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==}
dev: true
@@ -820,6 +844,15 @@ packages:
engines: {node: '>=10'}
dev: true
+ /resolve@1.22.8:
+ resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
+ hasBin: true
+ dependencies:
+ is-core-module: 2.13.1
+ path-parse: 1.0.7
+ supports-preserve-symlinks-flag: 1.0.0
+ dev: true
+
/rollup-plugin-inject@3.0.2:
resolution: {integrity: sha512-ptg9PQwzs3orn4jkgXJ74bfs5vYz1NCZlSQMBUA0wKcGp5i5pA1AO3fOUEte8enhGUC+iapTCzEWw2jEFFUO/w==}
deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-inject.
@@ -855,17 +888,10 @@ packages:
resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==}
engines: {node: '>=10'}
dependencies:
- '@types/node-forge': 1.3.10
+ '@types/node-forge': 1.3.11
node-forge: 1.3.1
dev: true
- /source-map-support@0.5.21:
- resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
- dependencies:
- buffer-from: 1.1.2
- source-map: 0.6.1
- dev: true
-
/source-map@0.6.1:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
@@ -888,6 +914,11 @@ packages:
engines: {node: '>=4', npm: '>=6'}
dev: true
+ /supports-preserve-symlinks-flag@1.0.0:
+ resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
/tlds@1.240.0:
resolution: {integrity: sha512-1OYJQenswGZSOdRw7Bql5Qu7uf75b+F3HFBXbqnG/ifHa0fev1XcG+3pJf3pA/KC6RtHQzfKgIf1vkMlMG7mtQ==}
hasBin: true
@@ -910,45 +941,51 @@ packages:
/undici-types@5.26.5:
resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
-
- /undici@5.28.2:
- resolution: {integrity: sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==}
- engines: {node: '>=14.0'}
- dependencies:
- '@fastify/busboy': 2.1.0
dev: true
- /workerd@1.20231030.0:
- resolution: {integrity: sha512-+FSW+d31f8RrjHanFf/R9A+Z0csf3OtsvzdPmAKuwuZm/5HrBv83cvG9fFeTxl7/nI6irUUXIRF9xcj/NomQzQ==}
+ /undici@5.28.3:
+ resolution: {integrity: sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==}
+ engines: {node: '>=14.0'}
+ dependencies:
+ '@fastify/busboy': 2.1.1
+ dev: true
+
+ /workerd@1.20240320.1:
+ resolution: {integrity: sha512-nuavAGGjh0qqM6RF5zxTHyUwEqdLCHchodbrpbh/xlJpFGnJVY5C1YgSi2S9aLkJJoa0/25Ta/+EzXEbApA/3w==}
engines: {node: '>=16'}
hasBin: true
requiresBuild: true
optionalDependencies:
- '@cloudflare/workerd-darwin-64': 1.20231030.0
- '@cloudflare/workerd-darwin-arm64': 1.20231030.0
- '@cloudflare/workerd-linux-64': 1.20231030.0
- '@cloudflare/workerd-linux-arm64': 1.20231030.0
- '@cloudflare/workerd-windows-64': 1.20231030.0
+ '@cloudflare/workerd-darwin-64': 1.20240320.1
+ '@cloudflare/workerd-darwin-arm64': 1.20240320.1
+ '@cloudflare/workerd-linux-64': 1.20240320.1
+ '@cloudflare/workerd-linux-arm64': 1.20240320.1
+ '@cloudflare/workerd-windows-64': 1.20240320.1
dev: true
- /wrangler@3.20.0:
- resolution: {integrity: sha512-7mg25zJByhBmrfG+CbImSid7JNd5lxGovLA167ndtE8Yrqd3TUukrGWL8o0RCQIm0FUcgl2nCzWArJDShlZVKA==}
+ /wrangler@3.41.0:
+ resolution: {integrity: sha512-iPFHF+88ZchnoZaQnq69Qkcpt0/LwkD44FzTxHWGzuBiNFwWwaNZ5zJ1G7Ga4nyipwcgtj+ykGlB/Amdgmut7w==}
engines: {node: '>=16.17.0'}
hasBin: true
+ peerDependencies:
+ '@cloudflare/workers-types': ^4.20240320.1
+ peerDependenciesMeta:
+ '@cloudflare/workers-types':
+ optional: true
dependencies:
- '@cloudflare/kv-asset-handler': 0.2.0
+ '@cloudflare/kv-asset-handler': 0.3.1
'@esbuild-plugins/node-globals-polyfill': 0.2.3(esbuild@0.17.19)
'@esbuild-plugins/node-modules-polyfill': 0.2.2(esbuild@0.17.19)
blake3-wasm: 2.1.5
- chokidar: 3.5.3
+ chokidar: 3.6.0
esbuild: 0.17.19
- miniflare: 3.20231030.4
+ miniflare: 3.20240320.1
nanoid: 3.3.7
path-to-regexp: 6.2.1
+ resolve: 1.22.8
resolve.exports: 2.0.2
selfsigned: 2.4.1
source-map: 0.6.1
- source-map-support: 0.5.21
xxhash-wasm: 1.0.2
optionalDependencies:
fsevents: 2.3.3
@@ -958,8 +995,8 @@ packages:
- utf-8-validate
dev: true
- /ws@8.15.1:
- resolution: {integrity: sha512-W5OZiCjXEmk0yZ66ZN82beM5Sz7l7coYxpRkzS+p9PP+ToQry8szKh+61eNktr7EA9DOwvFGhfC605jDHbP6QQ==}
+ /ws@8.16.0:
+ resolution: {integrity: sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==}
engines: {node: '>=10.0.0'}
peerDependencies:
bufferutil: ^4.0.1
diff --git a/worker/src/router.js b/worker/src/router.js
index fb3ba3da..63ce1580 100644
--- a/worker/src/router.js
+++ b/worker/src/router.js
@@ -16,7 +16,7 @@ api.get('/api/mails', async (c) => {
return c.text("Invalid offset", 400)
}
const { results } = await c.env.DB.prepare(
- `SELECT id, source, subject, message, message_id FROM mails where address = ? order by id desc limit ? offset ?`
+ `SELECT id, source, subject, message, message_id, created_at FROM mails where address = ? order by id desc limit ? offset ?`
).bind(address, limit, offset).all();
let count = 0;
if (offset == 0) {
@@ -28,7 +28,6 @@ api.get('/api/mails', async (c) => {
// add attachments
let attachmentResults = [];
const message_ids = results.map((r) => r.message_id).filter((r) => r);
- console.log("message_ids", message_ids.map((id) => `'${id}'`).join(","));
if (message_ids && message_ids.length > 0) {
const { results: innerAttachmentResults } = await c.env.DB.prepare(
`SELECT id, message_id FROM attachments where message_id in (${message_ids.map((id) => `'${id}'`).join(",")})`