diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8196045a..63a3ee18 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,7 +1,11 @@
# CHANGE LOG
-## main(v0.9.1)
+## v0.10.0
+
+- feat: 支持 User 查看收件箱,`/user_api/mails` 接口, 支持 `address` 和 `keyword` 过滤
+
+## v0.9.1
- feat: |UI| support google ads
- feat: |UI| 使用 shadow DOM 防止样式污染
diff --git a/frontend/package.json b/frontend/package.json
index bd8684ca..3e9d397c 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -1,6 +1,6 @@
{
"name": "cloudflare_temp_email",
- "version": "0.9.1",
+ "version": "0.10.9",
"private": true,
"type": "module",
"scripts": {
@@ -40,13 +40,13 @@
"@vicons/material": "^0.13.0",
"@vitejs/plugin-vue": "^5.2.3",
"unplugin-auto-import": "^19.1.2",
- "unplugin-vue-components": "^28.4.1",
- "vite": "^6.2.6",
+ "unplugin-vue-components": "^28.5.0",
+ "vite": "^6.3.2",
"vite-plugin-pwa": "^1.0.0",
"vite-plugin-top-level-await": "^1.5.0",
"vite-plugin-wasm": "^3.4.1",
"workbox-build": "^7.3.0",
"workbox-window": "^7.3.0",
- "wrangler": "^4.10.0"
+ "wrangler": "^4.13.0"
}
}
diff --git a/frontend/pnpm-lock.yaml b/frontend/pnpm-lock.yaml
index 55e0d8c3..82e825bf 100644
--- a/frontend/pnpm-lock.yaml
+++ b/frontend/pnpm-lock.yaml
@@ -62,25 +62,25 @@ importers:
version: 0.13.0
'@vitejs/plugin-vue':
specifier: ^5.2.3
- version: 5.2.3(vite@6.2.6(@types/node@22.10.5)(terser@5.39.0))(vue@3.5.13(typescript@5.4.5))
+ version: 5.2.3(vite@6.3.2(@types/node@22.10.5)(terser@5.39.0))(vue@3.5.13(typescript@5.4.5))
unplugin-auto-import:
specifier: ^19.1.2
version: 19.1.2(@vueuse/core@12.8.2(typescript@5.4.5))
unplugin-vue-components:
- specifier: ^28.4.1
- version: 28.4.1(@babel/parser@7.27.0)(vue@3.5.13(typescript@5.4.5))
+ specifier: ^28.5.0
+ version: 28.5.0(@babel/parser@7.27.0)(vue@3.5.13(typescript@5.4.5))
vite:
- specifier: ^6.2.6
- version: 6.2.6(@types/node@22.10.5)(terser@5.39.0)
+ specifier: ^6.3.2
+ version: 6.3.2(@types/node@22.10.5)(terser@5.39.0)
vite-plugin-pwa:
specifier: ^1.0.0
- version: 1.0.0(vite@6.2.6(@types/node@22.10.5)(terser@5.39.0))(workbox-build@7.3.0)(workbox-window@7.3.0)
+ version: 1.0.0(vite@6.3.2(@types/node@22.10.5)(terser@5.39.0))(workbox-build@7.3.0)(workbox-window@7.3.0)
vite-plugin-top-level-await:
specifier: ^1.5.0
- version: 1.5.0(rollup@2.79.2)(vite@6.2.6(@types/node@22.10.5)(terser@5.39.0))
+ version: 1.5.0(rollup@2.79.2)(vite@6.3.2(@types/node@22.10.5)(terser@5.39.0))
vite-plugin-wasm:
specifier: ^3.4.1
- version: 3.4.1(vite@6.2.6(@types/node@22.10.5)(terser@5.39.0))
+ version: 3.4.1(vite@6.3.2(@types/node@22.10.5)(terser@5.39.0))
workbox-build:
specifier: ^7.3.0
version: 7.3.0
@@ -88,8 +88,8 @@ importers:
specifier: ^7.3.0
version: 7.3.0
wrangler:
- specifier: ^4.10.0
- version: 4.10.0
+ specifier: ^4.13.0
+ version: 4.13.0
packages:
@@ -601,32 +601,32 @@ packages:
workerd:
optional: true
- '@cloudflare/workerd-darwin-64@1.20250409.0':
- resolution: {integrity: sha512-smA9yq77xsdQ1NMLhFz3JZxMHGd01lg0bE+X3dTFmIUs+hHskJ+HJ/IkMFInkCCeEFlUkoL4yO7ilaU/fin/xA==}
+ '@cloudflare/workerd-darwin-64@1.20250422.0':
+ resolution: {integrity: sha512-2FWl8TLpC4Knuyw8GmNgUSoJCNJNNGJ7Xv90j2n8FiXR5Clp9jSpm2ovK8RP9P751yX1/iIp8e7QufR/XDB6ow==}
engines: {node: '>=16'}
cpu: [x64]
os: [darwin]
- '@cloudflare/workerd-darwin-arm64@1.20250409.0':
- resolution: {integrity: sha512-oLVcf+Y5Qun8JHcy1VcR/YnbA5U2ne0czh3XNhDqdHZFK8+vKeC7MnVPX+kEqQA3+uLcMM1/FsIDU1U4Na0h1g==}
+ '@cloudflare/workerd-darwin-arm64@1.20250422.0':
+ resolution: {integrity: sha512-GY3W74ivqxsYldacEbMtcSbG7LsS9hPo5UybKIw4RO9GzP7UC5WGnPfuI4PE2SnJOnw7nwSrBLuhGRPe/QQHkQ==}
engines: {node: '>=16'}
cpu: [arm64]
os: [darwin]
- '@cloudflare/workerd-linux-64@1.20250409.0':
- resolution: {integrity: sha512-D31B4kdC3a0RD5yfpdIa89//kGHbYsYihZmejm1k4S4NHOho3MUDHAEh4aHtafQNXbZdydGHlSyiVYjTdQ9ILQ==}
+ '@cloudflare/workerd-linux-64@1.20250422.0':
+ resolution: {integrity: sha512-mtNkEygKtlRq9pMRlm9J4nX4uVHU1AtJ3mSkdNwPwhisTpo989O5Zd0SH9CYwAk8+NmlZsXELpODUVQxQ7FJgw==}
engines: {node: '>=16'}
cpu: [x64]
os: [linux]
- '@cloudflare/workerd-linux-arm64@1.20250409.0':
- resolution: {integrity: sha512-Sr59P0TREayil5OQ7kcbjuIn6L6OTSRLI91LKu0D8vi1hss2q9FUwBcwxg0+Yd/x+ty/x7IISiAK5QBkAMeITQ==}
+ '@cloudflare/workerd-linux-arm64@1.20250422.0':
+ resolution: {integrity: sha512-ILlW4/kAoFJvSryrr/QJsiHBdMTf/fjUrIM0hxeuQue8zIEvAVqM1tzpUh8bPJT6AQEbk5ziwkfucA939Z6Tnw==}
engines: {node: '>=16'}
cpu: [arm64]
os: [linux]
- '@cloudflare/workerd-windows-64@1.20250409.0':
- resolution: {integrity: sha512-dK9I8zBX5rR7MtaaP2AhICQTEw3PVzHcsltN8o46w7JsbYlMvFOj27FfYH5dhs3IahgmIfw2e572QXW2o/dbpg==}
+ '@cloudflare/workerd-windows-64@1.20250422.0':
+ resolution: {integrity: sha512-O2f6f7oxU/oaWX/3/5d/9qvzNSKsw72RsQFjpew2va7KwnnUciI2LnbYR6KYOqRGYrEoiMJxpWPQaYaFVj8t1w==}
engines: {node: '>=16'}
cpu: [x64]
os: [win32]
@@ -645,29 +645,23 @@ packages:
peerDependencies:
vue: ^3.0.11
- '@emnapi/runtime@1.4.1':
- resolution: {integrity: sha512-LMshMVP0ZhACNjQNYXiU1iZJ6QCcv0lUdPDPugqGvCGXt5xtRVBPdtA0qU12pEXZzpWAhWlZYptfdAFq10DOVQ==}
+ '@emnapi/runtime@1.4.3':
+ resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==}
'@emotion/hash@0.8.0':
resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==}
- '@esbuild/aix-ppc64@0.24.2':
- resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==}
- engines: {node: '>=18'}
- cpu: [ppc64]
- os: [aix]
-
'@esbuild/aix-ppc64@0.25.2':
resolution: {integrity: sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [aix]
- '@esbuild/android-arm64@0.24.2':
- resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==}
+ '@esbuild/aix-ppc64@0.25.3':
+ resolution: {integrity: sha512-W8bFfPA8DowP8l//sxjJLSLkD8iEjMc7cBVyP+u4cEv9sM7mdUCkgsj+t0n/BWPFtv7WWCN5Yzj0N6FJNUUqBQ==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [android]
+ cpu: [ppc64]
+ os: [aix]
'@esbuild/android-arm64@0.25.2':
resolution: {integrity: sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==}
@@ -675,10 +669,10 @@ packages:
cpu: [arm64]
os: [android]
- '@esbuild/android-arm@0.24.2':
- resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==}
+ '@esbuild/android-arm64@0.25.3':
+ resolution: {integrity: sha512-XelR6MzjlZuBM4f5z2IQHK6LkK34Cvv6Rj2EntER3lwCBFdg6h2lKbtRjpTTsdEjD/WSe1q8UyPBXP1x3i/wYQ==}
engines: {node: '>=18'}
- cpu: [arm]
+ cpu: [arm64]
os: [android]
'@esbuild/android-arm@0.25.2':
@@ -687,10 +681,10 @@ packages:
cpu: [arm]
os: [android]
- '@esbuild/android-x64@0.24.2':
- resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==}
+ '@esbuild/android-arm@0.25.3':
+ resolution: {integrity: sha512-PuwVXbnP87Tcff5I9ngV0lmiSu40xw1At6i3GsU77U7cjDDB4s0X2cyFuBiDa1SBk9DnvWwnGvVaGBqoFWPb7A==}
engines: {node: '>=18'}
- cpu: [x64]
+ cpu: [arm]
os: [android]
'@esbuild/android-x64@0.25.2':
@@ -699,11 +693,11 @@ packages:
cpu: [x64]
os: [android]
- '@esbuild/darwin-arm64@0.24.2':
- resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==}
+ '@esbuild/android-x64@0.25.3':
+ resolution: {integrity: sha512-ogtTpYHT/g1GWS/zKM0cc/tIebFjm1F9Aw1boQ2Y0eUQ+J89d0jFY//s9ei9jVIlkYi8AfOjiixcLJSGNSOAdQ==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [darwin]
+ cpu: [x64]
+ os: [android]
'@esbuild/darwin-arm64@0.25.2':
resolution: {integrity: sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==}
@@ -711,10 +705,10 @@ packages:
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-x64@0.24.2':
- resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==}
+ '@esbuild/darwin-arm64@0.25.3':
+ resolution: {integrity: sha512-eESK5yfPNTqpAmDfFWNsOhmIOaQA59tAcF/EfYvo5/QWQCzXn5iUSOnqt3ra3UdzBv073ykTtmeLJZGt3HhA+w==}
engines: {node: '>=18'}
- cpu: [x64]
+ cpu: [arm64]
os: [darwin]
'@esbuild/darwin-x64@0.25.2':
@@ -723,11 +717,11 @@ packages:
cpu: [x64]
os: [darwin]
- '@esbuild/freebsd-arm64@0.24.2':
- resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==}
+ '@esbuild/darwin-x64@0.25.3':
+ resolution: {integrity: sha512-Kd8glo7sIZtwOLcPbW0yLpKmBNWMANZhrC1r6K++uDR2zyzb6AeOYtI6udbtabmQpFaxJ8uduXMAo1gs5ozz8A==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [freebsd]
+ cpu: [x64]
+ os: [darwin]
'@esbuild/freebsd-arm64@0.25.2':
resolution: {integrity: sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==}
@@ -735,10 +729,10 @@ packages:
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.24.2':
- resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==}
+ '@esbuild/freebsd-arm64@0.25.3':
+ resolution: {integrity: sha512-EJiyS70BYybOBpJth3M0KLOus0n+RRMKTYzhYhFeMwp7e/RaajXvP+BWlmEXNk6uk+KAu46j/kaQzr6au+JcIw==}
engines: {node: '>=18'}
- cpu: [x64]
+ cpu: [arm64]
os: [freebsd]
'@esbuild/freebsd-x64@0.25.2':
@@ -747,11 +741,11 @@ packages:
cpu: [x64]
os: [freebsd]
- '@esbuild/linux-arm64@0.24.2':
- resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==}
+ '@esbuild/freebsd-x64@0.25.3':
+ resolution: {integrity: sha512-Q+wSjaLpGxYf7zC0kL0nDlhsfuFkoN+EXrx2KSB33RhinWzejOd6AvgmP5JbkgXKmjhmpfgKZq24pneodYqE8Q==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [linux]
+ cpu: [x64]
+ os: [freebsd]
'@esbuild/linux-arm64@0.25.2':
resolution: {integrity: sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==}
@@ -759,10 +753,10 @@ packages:
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm@0.24.2':
- resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==}
+ '@esbuild/linux-arm64@0.25.3':
+ resolution: {integrity: sha512-xCUgnNYhRD5bb1C1nqrDV1PfkwgbswTTBRbAd8aH5PhYzikdf/ddtsYyMXFfGSsb/6t6QaPSzxtbfAZr9uox4A==}
engines: {node: '>=18'}
- cpu: [arm]
+ cpu: [arm64]
os: [linux]
'@esbuild/linux-arm@0.25.2':
@@ -771,10 +765,10 @@ packages:
cpu: [arm]
os: [linux]
- '@esbuild/linux-ia32@0.24.2':
- resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==}
+ '@esbuild/linux-arm@0.25.3':
+ resolution: {integrity: sha512-dUOVmAUzuHy2ZOKIHIKHCm58HKzFqd+puLaS424h6I85GlSDRZIA5ycBixb3mFgM0Jdh+ZOSB6KptX30DD8YOQ==}
engines: {node: '>=18'}
- cpu: [ia32]
+ cpu: [arm]
os: [linux]
'@esbuild/linux-ia32@0.25.2':
@@ -783,10 +777,10 @@ packages:
cpu: [ia32]
os: [linux]
- '@esbuild/linux-loong64@0.24.2':
- resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==}
+ '@esbuild/linux-ia32@0.25.3':
+ resolution: {integrity: sha512-yplPOpczHOO4jTYKmuYuANI3WhvIPSVANGcNUeMlxH4twz/TeXuzEP41tGKNGWJjuMhotpGabeFYGAOU2ummBw==}
engines: {node: '>=18'}
- cpu: [loong64]
+ cpu: [ia32]
os: [linux]
'@esbuild/linux-loong64@0.25.2':
@@ -795,10 +789,10 @@ packages:
cpu: [loong64]
os: [linux]
- '@esbuild/linux-mips64el@0.24.2':
- resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==}
+ '@esbuild/linux-loong64@0.25.3':
+ resolution: {integrity: sha512-P4BLP5/fjyihmXCELRGrLd793q/lBtKMQl8ARGpDxgzgIKJDRJ/u4r1A/HgpBpKpKZelGct2PGI4T+axcedf6g==}
engines: {node: '>=18'}
- cpu: [mips64el]
+ cpu: [loong64]
os: [linux]
'@esbuild/linux-mips64el@0.25.2':
@@ -807,10 +801,10 @@ packages:
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-ppc64@0.24.2':
- resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==}
+ '@esbuild/linux-mips64el@0.25.3':
+ resolution: {integrity: sha512-eRAOV2ODpu6P5divMEMa26RRqb2yUoYsuQQOuFUexUoQndm4MdpXXDBbUoKIc0iPa4aCO7gIhtnYomkn2x+bag==}
engines: {node: '>=18'}
- cpu: [ppc64]
+ cpu: [mips64el]
os: [linux]
'@esbuild/linux-ppc64@0.25.2':
@@ -819,10 +813,10 @@ packages:
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-riscv64@0.24.2':
- resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==}
+ '@esbuild/linux-ppc64@0.25.3':
+ resolution: {integrity: sha512-ZC4jV2p7VbzTlnl8nZKLcBkfzIf4Yad1SJM4ZMKYnJqZFD4rTI+pBG65u8ev4jk3/MPwY9DvGn50wi3uhdaghg==}
engines: {node: '>=18'}
- cpu: [riscv64]
+ cpu: [ppc64]
os: [linux]
'@esbuild/linux-riscv64@0.25.2':
@@ -831,10 +825,10 @@ packages:
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-s390x@0.24.2':
- resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==}
+ '@esbuild/linux-riscv64@0.25.3':
+ resolution: {integrity: sha512-LDDODcFzNtECTrUUbVCs6j9/bDVqy7DDRsuIXJg6so+mFksgwG7ZVnTruYi5V+z3eE5y+BJZw7VvUadkbfg7QA==}
engines: {node: '>=18'}
- cpu: [s390x]
+ cpu: [riscv64]
os: [linux]
'@esbuild/linux-s390x@0.25.2':
@@ -843,10 +837,10 @@ packages:
cpu: [s390x]
os: [linux]
- '@esbuild/linux-x64@0.24.2':
- resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==}
+ '@esbuild/linux-s390x@0.25.3':
+ resolution: {integrity: sha512-s+w/NOY2k0yC2p9SLen+ymflgcpRkvwwa02fqmAwhBRI3SC12uiS10edHHXlVWwfAagYSY5UpmT/zISXPMW3tQ==}
engines: {node: '>=18'}
- cpu: [x64]
+ cpu: [s390x]
os: [linux]
'@esbuild/linux-x64@0.25.2':
@@ -855,11 +849,11 @@ packages:
cpu: [x64]
os: [linux]
- '@esbuild/netbsd-arm64@0.24.2':
- resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==}
+ '@esbuild/linux-x64@0.25.3':
+ resolution: {integrity: sha512-nQHDz4pXjSDC6UfOE1Fw9Q8d6GCAd9KdvMZpfVGWSJztYCarRgSDfOVBY5xwhQXseiyxapkiSJi/5/ja8mRFFA==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [netbsd]
+ cpu: [x64]
+ os: [linux]
'@esbuild/netbsd-arm64@0.25.2':
resolution: {integrity: sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==}
@@ -867,10 +861,10 @@ packages:
cpu: [arm64]
os: [netbsd]
- '@esbuild/netbsd-x64@0.24.2':
- resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==}
+ '@esbuild/netbsd-arm64@0.25.3':
+ resolution: {integrity: sha512-1QaLtOWq0mzK6tzzp0jRN3eccmN3hezey7mhLnzC6oNlJoUJz4nym5ZD7mDnS/LZQgkrhEbEiTn515lPeLpgWA==}
engines: {node: '>=18'}
- cpu: [x64]
+ cpu: [arm64]
os: [netbsd]
'@esbuild/netbsd-x64@0.25.2':
@@ -879,11 +873,11 @@ packages:
cpu: [x64]
os: [netbsd]
- '@esbuild/openbsd-arm64@0.24.2':
- resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==}
+ '@esbuild/netbsd-x64@0.25.3':
+ resolution: {integrity: sha512-i5Hm68HXHdgv8wkrt+10Bc50zM0/eonPb/a/OFVfB6Qvpiirco5gBA5bz7S2SHuU+Y4LWn/zehzNX14Sp4r27g==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [openbsd]
+ cpu: [x64]
+ os: [netbsd]
'@esbuild/openbsd-arm64@0.25.2':
resolution: {integrity: sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==}
@@ -891,10 +885,10 @@ packages:
cpu: [arm64]
os: [openbsd]
- '@esbuild/openbsd-x64@0.24.2':
- resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==}
+ '@esbuild/openbsd-arm64@0.25.3':
+ resolution: {integrity: sha512-zGAVApJEYTbOC6H/3QBr2mq3upG/LBEXr85/pTtKiv2IXcgKV0RT0QA/hSXZqSvLEpXeIxah7LczB4lkiYhTAQ==}
engines: {node: '>=18'}
- cpu: [x64]
+ cpu: [arm64]
os: [openbsd]
'@esbuild/openbsd-x64@0.25.2':
@@ -903,11 +897,11 @@ packages:
cpu: [x64]
os: [openbsd]
- '@esbuild/sunos-x64@0.24.2':
- resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==}
+ '@esbuild/openbsd-x64@0.25.3':
+ resolution: {integrity: sha512-fpqctI45NnCIDKBH5AXQBsD0NDPbEFczK98hk/aa6HJxbl+UtLkJV2+Bvy5hLSLk3LHmqt0NTkKNso1A9y1a4w==}
engines: {node: '>=18'}
cpu: [x64]
- os: [sunos]
+ os: [openbsd]
'@esbuild/sunos-x64@0.25.2':
resolution: {integrity: sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==}
@@ -915,11 +909,11 @@ packages:
cpu: [x64]
os: [sunos]
- '@esbuild/win32-arm64@0.24.2':
- resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==}
+ '@esbuild/sunos-x64@0.25.3':
+ resolution: {integrity: sha512-ROJhm7d8bk9dMCUZjkS8fgzsPAZEjtRJqCAmVgB0gMrvG7hfmPmz9k1rwO4jSiblFjYmNvbECL9uhaPzONMfgA==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [win32]
+ cpu: [x64]
+ os: [sunos]
'@esbuild/win32-arm64@0.25.2':
resolution: {integrity: sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==}
@@ -927,10 +921,10 @@ packages:
cpu: [arm64]
os: [win32]
- '@esbuild/win32-ia32@0.24.2':
- resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==}
+ '@esbuild/win32-arm64@0.25.3':
+ resolution: {integrity: sha512-YWcow8peiHpNBiIXHwaswPnAXLsLVygFwCB3A7Bh5jRkIBFWHGmNQ48AlX4xDvQNoMZlPYzjVOQDYEzWCqufMQ==}
engines: {node: '>=18'}
- cpu: [ia32]
+ cpu: [arm64]
os: [win32]
'@esbuild/win32-ia32@0.25.2':
@@ -939,10 +933,10 @@ packages:
cpu: [ia32]
os: [win32]
- '@esbuild/win32-x64@0.24.2':
- resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==}
+ '@esbuild/win32-ia32@0.25.3':
+ resolution: {integrity: sha512-qspTZOIGoXVS4DpNqUYUs9UxVb04khS1Degaw/MnfMe7goQ3lTfQ13Vw4qY/Nj0979BGvMRpAYbs/BAxEvU8ew==}
engines: {node: '>=18'}
- cpu: [x64]
+ cpu: [ia32]
os: [win32]
'@esbuild/win32-x64@0.25.2':
@@ -951,6 +945,12 @@ packages:
cpu: [x64]
os: [win32]
+ '@esbuild/win32-x64@0.25.3':
+ resolution: {integrity: sha512-ICgUR+kPimx0vvRzf+N/7L7tVSQeE3BYY+NhHRHXS1kBuPO7z2+7ea2HbhDyZdTephgvNvKrlDDKUexuCVBVvg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+
'@fastify/busboy@2.1.1':
resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==}
engines: {node: '>=14'}
@@ -1266,68 +1266,68 @@ packages:
'@surma/rollup-plugin-off-main-thread@2.2.3':
resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==}
- '@swc/core-darwin-arm64@1.11.20':
- resolution: {integrity: sha512-Sc06h6pwMhQagU7vz92b7wwQTIibTiqRE4y/XjkvurSbjSarrtSZR4OKkrdNwUkSy1HlQE4NhKQf7tmLeQ7PhQ==}
+ '@swc/core-darwin-arm64@1.11.22':
+ resolution: {integrity: sha512-upSiFQfo1TE2QM3+KpBcp5SrOdKKjoc+oUoD1mmBDU2Wv4Bjjv16Z2I5ADvIqMV+b87AhYW+4Qu6iVrQD7j96Q==}
engines: {node: '>=10'}
cpu: [arm64]
os: [darwin]
- '@swc/core-darwin-x64@1.11.20':
- resolution: {integrity: sha512-kHANJrgbqaGzUyTectNfLyhnHAeDGGVSRXYyPVAx6x0nuLOnRhKbuSyZY42UEN1IgHauaADCzcd+HiiMv/rgRw==}
+ '@swc/core-darwin-x64@1.11.22':
+ resolution: {integrity: sha512-8PEuF/gxIMJVK21DjuCOtzdqstn2DqnxVhpAYfXEtm3WmMqLIOIZBypF/xafAozyaHws4aB/5xmz8/7rPsjavw==}
engines: {node: '>=10'}
cpu: [x64]
os: [darwin]
- '@swc/core-linux-arm-gnueabihf@1.11.20':
- resolution: {integrity: sha512-FXllEBeAwU6FNIZzo+u1LmHGaHzwAKzz7tWRkUOqBKjKr20Ot4KGS3xlz2qgV2NESFHAisdHja2P2rcQWqtZRg==}
+ '@swc/core-linux-arm-gnueabihf@1.11.22':
+ resolution: {integrity: sha512-NIPTXvqtn9e7oQHgdaxM9Z/anHoXC3Fg4ZAgw5rSGa1OlnKKupt5sdfJamNggSi+eAtyoFcyfkgqHnfe2u63HA==}
engines: {node: '>=10'}
cpu: [arm]
os: [linux]
- '@swc/core-linux-arm64-gnu@1.11.20':
- resolution: {integrity: sha512-OsYMFyJzUM0K8a97tu6KxZaCob3vr+UknVqHO09QwechX+rdX4euWm7Lte4d1B+7SBfokhw7ghLZsNTQfRw9pA==}
+ '@swc/core-linux-arm64-gnu@1.11.22':
+ resolution: {integrity: sha512-xZ+bgS60c5r8kAeYsLNjJJhhQNkXdidQ277pUabSlu5GjR0CkQUPQ+L9hFeHf8DITEqpPBPRiAiiJsWq5eqMBg==}
engines: {node: '>=10'}
cpu: [arm64]
os: [linux]
- '@swc/core-linux-arm64-musl@1.11.20':
- resolution: {integrity: sha512-fbSWOQ5ZZ7sWodoC6GnzV9RhbImdxoH8b14K1tnHCWJXolzTH40/4JKf/koJ3r24nm1PtsqX9OUxRsOXYAy5dg==}
+ '@swc/core-linux-arm64-musl@1.11.22':
+ resolution: {integrity: sha512-JhrP/q5VqQl2eJR0xKYIkKTPjgf8CRsAmRnjJA2PtZhfQ543YbYvUqxyXSRyBOxdyX8JwzuAxIPEAlKlT7PPuQ==}
engines: {node: '>=10'}
cpu: [arm64]
os: [linux]
- '@swc/core-linux-x64-gnu@1.11.20':
- resolution: {integrity: sha512-OFU53idbY8KA1RkNzZBi0FpoRPSn/anv4N7ZzGZGk664UoFwMbSL+XHGocJzhV9G/VNGH7bMBmgoVWk72nn5hw==}
+ '@swc/core-linux-x64-gnu@1.11.22':
+ resolution: {integrity: sha512-htmAVL+U01gk9GyziVUP0UWYaUQBgrsiP7Ytf6uDffrySyn/FclUS3MDPocNydqYsOpj3OpNKPxkaHK+F+X5fg==}
engines: {node: '>=10'}
cpu: [x64]
os: [linux]
- '@swc/core-linux-x64-musl@1.11.20':
- resolution: {integrity: sha512-GZbqXEc09nIarkGMXc2P4Hf2ONb1vre22X7Se9CCeU/QtWYRU/H1a2TFnYgBKzNVOH65Dd/XYXcuy+tM1aw1iw==}
+ '@swc/core-linux-x64-musl@1.11.22':
+ resolution: {integrity: sha512-PL0VHbduWPX+ANoyOzr58jBiL2VnD0xGSFwPy7NRZ1Pr6SNWm4jw3x2u6RjLArGhS5EcWp64BSk9ZxqmTV3FEg==}
engines: {node: '>=10'}
cpu: [x64]
os: [linux]
- '@swc/core-win32-arm64-msvc@1.11.20':
- resolution: {integrity: sha512-i0H2MeK8krEd/YeiGz0GHtNL9wSGfAPXiouh8aRNV/u+w4vPaaRqnXwv/yzAW+D2vPpKJBhOwmNFFzdgTJ5mWw==}
+ '@swc/core-win32-arm64-msvc@1.11.22':
+ resolution: {integrity: sha512-moJvFhhTVGoMeEThtdF7hQog80Q00CS06v5uB+32VRuv+I31+4WPRyGlTWHO+oY4rReNcXut/mlDHPH7p0LdFg==}
engines: {node: '>=10'}
cpu: [arm64]
os: [win32]
- '@swc/core-win32-ia32-msvc@1.11.20':
- resolution: {integrity: sha512-/7e3X7EGO8uOvAUP+YKJTdoR2JR5vdiewDOnDS9FFXj8yr9x6/oDFLd92Sp9NglF+aXuqAo33IfH2OTz1MR+Ww==}
+ '@swc/core-win32-ia32-msvc@1.11.22':
+ resolution: {integrity: sha512-/jnsPJJz89F1aKHIb5ScHkwyzBciz2AjEq2m9tDvQdIdVufdJ4SpEDEN9FqsRNRLcBHjtbLs6bnboA+B+pRFXw==}
engines: {node: '>=10'}
cpu: [ia32]
os: [win32]
- '@swc/core-win32-x64-msvc@1.11.20':
- resolution: {integrity: sha512-rcZpt5uiVNTs/Se+CYBoaDphafFJcsqXo3DNmfkJZoDZUb4PZqxu61p4Qa+lvFDQlRragrlLRpGQM9qnLNd4iQ==}
+ '@swc/core-win32-x64-msvc@1.11.22':
+ resolution: {integrity: sha512-lc93Y8Mku7LCFGqIxJ91coXZp2HeoDcFZSHCL90Wttg5xhk5xVM9uUCP+OdQsSsEixLF34h5DbT9ObzP8rAdRw==}
engines: {node: '>=10'}
cpu: [x64]
os: [win32]
- '@swc/core@1.11.20':
- resolution: {integrity: sha512-2F0+bQs7+pwbudsxRffLdfpGCQX4Ih5k88f7LqTfj2oC7aTrv7FssduOvcAvfVY/InZmyYEblKl1rqg8bvzrZQ==}
+ '@swc/core@1.11.22':
+ resolution: {integrity: sha512-mjPYbqq8XjwqSE0hEPT9CzaJDyxql97LgK4iyvYlwVSQhdN1uK0DBG4eP9PxYzCS2MUGAXB34WFLegdUj5HGpg==}
engines: {node: '>=10'}
peerDependencies:
'@swc/helpers': '>=0.5.17'
@@ -1661,8 +1661,8 @@ packages:
resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==}
engines: {node: '>= 0.4'}
- caniuse-lite@1.0.30001713:
- resolution: {integrity: sha512-wCIWIg+A4Xr7NfhTuHdX+/FKh3+Op3LBbSp2N5Pfx6T/LhdQy3GTyoTg48BReaW/MyMNZAkTadsBtai3ldWK0Q==}
+ caniuse-lite@1.0.30001715:
+ resolution: {integrity: sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw==}
chalk@4.1.2:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
@@ -1796,8 +1796,8 @@ packages:
delegate@3.2.0:
resolution: {integrity: sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==}
- detect-libc@2.0.3:
- resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==}
+ detect-libc@2.0.4:
+ resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==}
engines: {node: '>=8'}
dom7@3.0.0:
@@ -1812,8 +1812,8 @@ packages:
engines: {node: '>=0.10.0'}
hasBin: true
- electron-to-chromium@1.5.136:
- resolution: {integrity: sha512-kL4+wUTD7RSA5FHx5YwWtjDnEEkIIikFgWHR4P6fqjw1PPLlqYkxeOb++wAauAssat0YClCy8Y3C5SxgSkjibQ==}
+ electron-to-chromium@1.5.140:
+ resolution: {integrity: sha512-o82Rj+ONp4Ip7Cl1r7lrqx/pXhbp/lh9DpKcMNscFJdh8ebyRofnc7Sh01B4jx403RI0oqTBvlZ7OBIZLMr2+Q==}
entities@4.5.0:
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
@@ -1854,13 +1854,13 @@ packages:
resolution: {integrity: sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==}
engines: {node: '>=0.12'}
- esbuild@0.24.2:
- resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==}
+ esbuild@0.25.2:
+ resolution: {integrity: sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==}
engines: {node: '>=18'}
hasBin: true
- esbuild@0.25.2:
- resolution: {integrity: sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==}
+ esbuild@0.25.3:
+ resolution: {integrity: sha512-qKA6Pvai73+M2FtftpNKRxJ78GIjmFXFxd/1DVBqGo/qNhLSfv+G12n9pNoWdytJC8U00TrViOwpjT0zgqQS8Q==}
engines: {node: '>=18'}
hasBin: true
@@ -1899,8 +1899,8 @@ packages:
resolution: {integrity: sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==}
engines: {node: '>=6'}
- exsolve@1.0.4:
- resolution: {integrity: sha512-xsZH6PXaER4XoV+NiT7JHp1bJodJVT+cxeSH1G0f0tlT0lJqYuHUP3bUx2HtfTDvOagMINYp8rsqusxud3RXhw==}
+ exsolve@1.0.5:
+ resolution: {integrity: sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==}
ext@1.7.0:
resolution: {integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==}
@@ -1914,8 +1914,8 @@ packages:
fast-uri@3.0.6:
resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==}
- fdir@6.4.3:
- resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==}
+ fdir@6.4.4:
+ resolution: {integrity: sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==}
peerDependencies:
picomatch: ^3 || ^4
peerDependenciesMeta:
@@ -2329,8 +2329,8 @@ packages:
engines: {node: '>=10.0.0'}
hasBin: true
- miniflare@4.20250409.0:
- resolution: {integrity: sha512-Hu02dYZvFR+MyrI57O6rSrOUTofcO9EIvcodgq2SAHzAeWSJw2E0oq9lylOrcckFwPMcwxUAb/cQN1LIoCyySw==}
+ miniflare@4.20250422.0:
+ resolution: {integrity: sha512-3frXK9EZEWQkHMDyppeIbUKwd7OQkNOm2gBtQQzjQ4gtzQmh+yxkyJiiylf+fGbz86djQTLKKQdQ1FC4yM3AMg==}
engines: {node: '>=18.0.0'}
hasBin: true
@@ -2716,8 +2716,8 @@ packages:
tiny-warning@1.0.3:
resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==}
- tinyglobby@0.2.12:
- resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==}
+ tinyglobby@0.2.13:
+ resolution: {integrity: sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==}
engines: {node: '>=12.0.0'}
to-regex-range@5.0.1:
@@ -2825,8 +2825,8 @@ packages:
resolution: {integrity: sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA==}
engines: {node: '>=18.12.0'}
- unplugin-vue-components@28.4.1:
- resolution: {integrity: sha512-niGSc0vJD9ueAnsqcfAldmtpkppZ09B6p2G1dL7X5S8KPdgbk1P+txPwaaDCe7N+eZh2VG1aAypLXkuJs3OSUg==}
+ unplugin-vue-components@28.5.0:
+ resolution: {integrity: sha512-o7fMKU/uI8NiP+E0W62zoduuguWqB0obTfHFtbr1AP2uo2lhUPnPttWUE92yesdiYfo9/0hxIrj38FMc1eaySg==}
engines: {node: '>=14'}
peerDependencies:
'@babel/parser': ^7.15.8
@@ -2886,8 +2886,8 @@ packages:
peerDependencies:
vite: ^2 || ^3 || ^4 || ^5 || ^6
- vite@6.2.6:
- resolution: {integrity: sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw==}
+ vite@6.3.2:
+ resolution: {integrity: sha512-ZSvGOXKGceizRQIZSz7TGJ0pS3QLlVY/9hwxVh17W3re67je1RKYzFHivZ/t0tubU78Vkyb9WnHPENSBCzbckg==}
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
hasBin: true
peerDependencies:
@@ -3035,17 +3035,17 @@ packages:
workbox-window@7.3.0:
resolution: {integrity: sha512-qW8PDy16OV1UBaUNGlTVcepzrlzyzNW/ZJvFQQs2j2TzGsg6IKjcpZC1RSquqQnTOafl5pCj5bGfAHlCjOOjdA==}
- workerd@1.20250409.0:
- resolution: {integrity: sha512-hqjX9swiHvrkOI3jlH9lrZsZRRv9lddUwcMe8Ua76jnyQz+brybWznNjHu8U5oswwcrFwvky1A4CcLjcLY31gQ==}
+ workerd@1.20250422.0:
+ resolution: {integrity: sha512-q3ws6MIa9GJQqq1Q52qoD7vCx1203fjKNPmtRV1vvplrsfYphjr5pOAnZGUODFB1BnsDWypr71Luy7OonT0vug==}
engines: {node: '>=16'}
hasBin: true
- wrangler@4.10.0:
- resolution: {integrity: sha512-fTE4hZ79msEUt8+HEjl/8Q72haCyzPLu4PgrU3L81ysmjrMEdiYfUPqnvCkBUVtJvrDNdctTEimkufT1Y0ipNg==}
+ wrangler@4.13.0:
+ resolution: {integrity: sha512-CVRNL0unLmzhVeUkW+9neZHFITSo7UDROz8VYxi8YhitV9Rr1xMojS1cGjQTaQX8F3nAEsTRJXTwwTZ0JoJm6g==}
engines: {node: '>=18.0.0'}
hasBin: true
peerDependencies:
- '@cloudflare/workers-types': ^4.20250409.0
+ '@cloudflare/workers-types': ^4.20250422.0
peerDependenciesMeta:
'@cloudflare/workers-types':
optional: true
@@ -3734,25 +3734,25 @@ snapshots:
dependencies:
mime: 3.0.0
- '@cloudflare/unenv-preset@2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250409.0)':
+ '@cloudflare/unenv-preset@2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250422.0)':
dependencies:
unenv: 2.0.0-rc.15
optionalDependencies:
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
- '@cloudflare/workerd-darwin-64@1.20250409.0':
+ '@cloudflare/workerd-darwin-64@1.20250422.0':
optional: true
- '@cloudflare/workerd-darwin-arm64@1.20250409.0':
+ '@cloudflare/workerd-darwin-arm64@1.20250422.0':
optional: true
- '@cloudflare/workerd-linux-64@1.20250409.0':
+ '@cloudflare/workerd-linux-64@1.20250422.0':
optional: true
- '@cloudflare/workerd-linux-arm64@1.20250409.0':
+ '@cloudflare/workerd-linux-arm64@1.20250422.0':
optional: true
- '@cloudflare/workerd-windows-64@1.20250409.0':
+ '@cloudflare/workerd-windows-64@1.20250422.0':
optional: true
'@cspotcode/source-map-support@0.8.1':
@@ -3767,163 +3767,163 @@ snapshots:
dependencies:
vue: 3.5.13(typescript@5.4.5)
- '@emnapi/runtime@1.4.1':
+ '@emnapi/runtime@1.4.3':
dependencies:
tslib: 2.8.1
optional: true
'@emotion/hash@0.8.0': {}
- '@esbuild/aix-ppc64@0.24.2':
- optional: true
-
'@esbuild/aix-ppc64@0.25.2':
optional: true
- '@esbuild/android-arm64@0.24.2':
+ '@esbuild/aix-ppc64@0.25.3':
optional: true
'@esbuild/android-arm64@0.25.2':
optional: true
- '@esbuild/android-arm@0.24.2':
+ '@esbuild/android-arm64@0.25.3':
optional: true
'@esbuild/android-arm@0.25.2':
optional: true
- '@esbuild/android-x64@0.24.2':
+ '@esbuild/android-arm@0.25.3':
optional: true
'@esbuild/android-x64@0.25.2':
optional: true
- '@esbuild/darwin-arm64@0.24.2':
+ '@esbuild/android-x64@0.25.3':
optional: true
'@esbuild/darwin-arm64@0.25.2':
optional: true
- '@esbuild/darwin-x64@0.24.2':
+ '@esbuild/darwin-arm64@0.25.3':
optional: true
'@esbuild/darwin-x64@0.25.2':
optional: true
- '@esbuild/freebsd-arm64@0.24.2':
+ '@esbuild/darwin-x64@0.25.3':
optional: true
'@esbuild/freebsd-arm64@0.25.2':
optional: true
- '@esbuild/freebsd-x64@0.24.2':
+ '@esbuild/freebsd-arm64@0.25.3':
optional: true
'@esbuild/freebsd-x64@0.25.2':
optional: true
- '@esbuild/linux-arm64@0.24.2':
+ '@esbuild/freebsd-x64@0.25.3':
optional: true
'@esbuild/linux-arm64@0.25.2':
optional: true
- '@esbuild/linux-arm@0.24.2':
+ '@esbuild/linux-arm64@0.25.3':
optional: true
'@esbuild/linux-arm@0.25.2':
optional: true
- '@esbuild/linux-ia32@0.24.2':
+ '@esbuild/linux-arm@0.25.3':
optional: true
'@esbuild/linux-ia32@0.25.2':
optional: true
- '@esbuild/linux-loong64@0.24.2':
+ '@esbuild/linux-ia32@0.25.3':
optional: true
'@esbuild/linux-loong64@0.25.2':
optional: true
- '@esbuild/linux-mips64el@0.24.2':
+ '@esbuild/linux-loong64@0.25.3':
optional: true
'@esbuild/linux-mips64el@0.25.2':
optional: true
- '@esbuild/linux-ppc64@0.24.2':
+ '@esbuild/linux-mips64el@0.25.3':
optional: true
'@esbuild/linux-ppc64@0.25.2':
optional: true
- '@esbuild/linux-riscv64@0.24.2':
+ '@esbuild/linux-ppc64@0.25.3':
optional: true
'@esbuild/linux-riscv64@0.25.2':
optional: true
- '@esbuild/linux-s390x@0.24.2':
+ '@esbuild/linux-riscv64@0.25.3':
optional: true
'@esbuild/linux-s390x@0.25.2':
optional: true
- '@esbuild/linux-x64@0.24.2':
+ '@esbuild/linux-s390x@0.25.3':
optional: true
'@esbuild/linux-x64@0.25.2':
optional: true
- '@esbuild/netbsd-arm64@0.24.2':
+ '@esbuild/linux-x64@0.25.3':
optional: true
'@esbuild/netbsd-arm64@0.25.2':
optional: true
- '@esbuild/netbsd-x64@0.24.2':
+ '@esbuild/netbsd-arm64@0.25.3':
optional: true
'@esbuild/netbsd-x64@0.25.2':
optional: true
- '@esbuild/openbsd-arm64@0.24.2':
+ '@esbuild/netbsd-x64@0.25.3':
optional: true
'@esbuild/openbsd-arm64@0.25.2':
optional: true
- '@esbuild/openbsd-x64@0.24.2':
+ '@esbuild/openbsd-arm64@0.25.3':
optional: true
'@esbuild/openbsd-x64@0.25.2':
optional: true
- '@esbuild/sunos-x64@0.24.2':
+ '@esbuild/openbsd-x64@0.25.3':
optional: true
'@esbuild/sunos-x64@0.25.2':
optional: true
- '@esbuild/win32-arm64@0.24.2':
+ '@esbuild/sunos-x64@0.25.3':
optional: true
'@esbuild/win32-arm64@0.25.2':
optional: true
- '@esbuild/win32-ia32@0.24.2':
+ '@esbuild/win32-arm64@0.25.3':
optional: true
'@esbuild/win32-ia32@0.25.2':
optional: true
- '@esbuild/win32-x64@0.24.2':
+ '@esbuild/win32-ia32@0.25.3':
optional: true
'@esbuild/win32-x64@0.25.2':
optional: true
+ '@esbuild/win32-x64@0.25.3':
+ optional: true
+
'@fastify/busboy@2.1.1': {}
'@img/sharp-darwin-arm64@0.33.5':
@@ -3992,7 +3992,7 @@ snapshots:
'@img/sharp-wasm32@0.33.5':
dependencies:
- '@emnapi/runtime': 1.4.1
+ '@emnapi/runtime': 1.4.3
optional: true
'@img/sharp-win32-ia32@0.33.5':
@@ -4167,51 +4167,51 @@ snapshots:
magic-string: 0.25.9
string.prototype.matchall: 4.0.12
- '@swc/core-darwin-arm64@1.11.20':
+ '@swc/core-darwin-arm64@1.11.22':
optional: true
- '@swc/core-darwin-x64@1.11.20':
+ '@swc/core-darwin-x64@1.11.22':
optional: true
- '@swc/core-linux-arm-gnueabihf@1.11.20':
+ '@swc/core-linux-arm-gnueabihf@1.11.22':
optional: true
- '@swc/core-linux-arm64-gnu@1.11.20':
+ '@swc/core-linux-arm64-gnu@1.11.22':
optional: true
- '@swc/core-linux-arm64-musl@1.11.20':
+ '@swc/core-linux-arm64-musl@1.11.22':
optional: true
- '@swc/core-linux-x64-gnu@1.11.20':
+ '@swc/core-linux-x64-gnu@1.11.22':
optional: true
- '@swc/core-linux-x64-musl@1.11.20':
+ '@swc/core-linux-x64-musl@1.11.22':
optional: true
- '@swc/core-win32-arm64-msvc@1.11.20':
+ '@swc/core-win32-arm64-msvc@1.11.22':
optional: true
- '@swc/core-win32-ia32-msvc@1.11.20':
+ '@swc/core-win32-ia32-msvc@1.11.22':
optional: true
- '@swc/core-win32-x64-msvc@1.11.20':
+ '@swc/core-win32-x64-msvc@1.11.22':
optional: true
- '@swc/core@1.11.20':
+ '@swc/core@1.11.22':
dependencies:
'@swc/counter': 0.1.3
'@swc/types': 0.1.21
optionalDependencies:
- '@swc/core-darwin-arm64': 1.11.20
- '@swc/core-darwin-x64': 1.11.20
- '@swc/core-linux-arm-gnueabihf': 1.11.20
- '@swc/core-linux-arm64-gnu': 1.11.20
- '@swc/core-linux-arm64-musl': 1.11.20
- '@swc/core-linux-x64-gnu': 1.11.20
- '@swc/core-linux-x64-musl': 1.11.20
- '@swc/core-win32-arm64-msvc': 1.11.20
- '@swc/core-win32-ia32-msvc': 1.11.20
- '@swc/core-win32-x64-msvc': 1.11.20
+ '@swc/core-darwin-arm64': 1.11.22
+ '@swc/core-darwin-x64': 1.11.22
+ '@swc/core-linux-arm-gnueabihf': 1.11.22
+ '@swc/core-linux-arm64-gnu': 1.11.22
+ '@swc/core-linux-arm64-musl': 1.11.22
+ '@swc/core-linux-x64-gnu': 1.11.22
+ '@swc/core-linux-x64-musl': 1.11.22
+ '@swc/core-win32-arm64-msvc': 1.11.22
+ '@swc/core-win32-ia32-msvc': 1.11.22
+ '@swc/core-win32-x64-msvc': 1.11.22
'@swc/counter@0.1.3': {}
@@ -4302,9 +4302,9 @@ snapshots:
'@vicons/material@0.13.0': {}
- '@vitejs/plugin-vue@5.2.3(vite@6.2.6(@types/node@22.10.5)(terser@5.39.0))(vue@3.5.13(typescript@5.4.5))':
+ '@vitejs/plugin-vue@5.2.3(vite@6.3.2(@types/node@22.10.5)(terser@5.39.0))(vue@3.5.13(typescript@5.4.5))':
dependencies:
- vite: 6.2.6(@types/node@22.10.5)(terser@5.39.0)
+ vite: 6.3.2(@types/node@22.10.5)(terser@5.39.0)
vue: 3.5.13(typescript@5.4.5)
'@vue/compiler-core@3.5.13':
@@ -4596,8 +4596,8 @@ snapshots:
browserslist@4.24.4:
dependencies:
- caniuse-lite: 1.0.30001713
- electron-to-chromium: 1.5.136
+ caniuse-lite: 1.0.30001715
+ electron-to-chromium: 1.5.140
node-releases: 2.0.19
update-browserslist-db: 1.1.3(browserslist@4.24.4)
@@ -4620,7 +4620,7 @@ snapshots:
call-bind-apply-helpers: 1.0.2
get-intrinsic: 1.3.0
- caniuse-lite@1.0.30001713: {}
+ caniuse-lite@1.0.30001715: {}
chalk@4.1.2:
dependencies:
@@ -4755,7 +4755,7 @@ snapshots:
delegate@3.2.0: {}
- detect-libc@2.0.3:
+ detect-libc@2.0.4:
optional: true
dom7@3.0.0:
@@ -4772,7 +4772,7 @@ snapshots:
dependencies:
jake: 10.9.2
- electron-to-chromium@1.5.136: {}
+ electron-to-chromium@1.5.140: {}
entities@4.5.0: {}
@@ -4869,34 +4869,6 @@ snapshots:
d: 1.0.2
ext: 1.7.0
- esbuild@0.24.2:
- optionalDependencies:
- '@esbuild/aix-ppc64': 0.24.2
- '@esbuild/android-arm': 0.24.2
- '@esbuild/android-arm64': 0.24.2
- '@esbuild/android-x64': 0.24.2
- '@esbuild/darwin-arm64': 0.24.2
- '@esbuild/darwin-x64': 0.24.2
- '@esbuild/freebsd-arm64': 0.24.2
- '@esbuild/freebsd-x64': 0.24.2
- '@esbuild/linux-arm': 0.24.2
- '@esbuild/linux-arm64': 0.24.2
- '@esbuild/linux-ia32': 0.24.2
- '@esbuild/linux-loong64': 0.24.2
- '@esbuild/linux-mips64el': 0.24.2
- '@esbuild/linux-ppc64': 0.24.2
- '@esbuild/linux-riscv64': 0.24.2
- '@esbuild/linux-s390x': 0.24.2
- '@esbuild/linux-x64': 0.24.2
- '@esbuild/netbsd-arm64': 0.24.2
- '@esbuild/netbsd-x64': 0.24.2
- '@esbuild/openbsd-arm64': 0.24.2
- '@esbuild/openbsd-x64': 0.24.2
- '@esbuild/sunos-x64': 0.24.2
- '@esbuild/win32-arm64': 0.24.2
- '@esbuild/win32-ia32': 0.24.2
- '@esbuild/win32-x64': 0.24.2
-
esbuild@0.25.2:
optionalDependencies:
'@esbuild/aix-ppc64': 0.25.2
@@ -4925,6 +4897,34 @@ snapshots:
'@esbuild/win32-ia32': 0.25.2
'@esbuild/win32-x64': 0.25.2
+ esbuild@0.25.3:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.25.3
+ '@esbuild/android-arm': 0.25.3
+ '@esbuild/android-arm64': 0.25.3
+ '@esbuild/android-x64': 0.25.3
+ '@esbuild/darwin-arm64': 0.25.3
+ '@esbuild/darwin-x64': 0.25.3
+ '@esbuild/freebsd-arm64': 0.25.3
+ '@esbuild/freebsd-x64': 0.25.3
+ '@esbuild/linux-arm': 0.25.3
+ '@esbuild/linux-arm64': 0.25.3
+ '@esbuild/linux-ia32': 0.25.3
+ '@esbuild/linux-loong64': 0.25.3
+ '@esbuild/linux-mips64el': 0.25.3
+ '@esbuild/linux-ppc64': 0.25.3
+ '@esbuild/linux-riscv64': 0.25.3
+ '@esbuild/linux-s390x': 0.25.3
+ '@esbuild/linux-x64': 0.25.3
+ '@esbuild/netbsd-arm64': 0.25.3
+ '@esbuild/netbsd-x64': 0.25.3
+ '@esbuild/openbsd-arm64': 0.25.3
+ '@esbuild/openbsd-x64': 0.25.3
+ '@esbuild/sunos-x64': 0.25.3
+ '@esbuild/win32-arm64': 0.25.3
+ '@esbuild/win32-ia32': 0.25.3
+ '@esbuild/win32-x64': 0.25.3
+
escalade@3.2.0: {}
escape-string-regexp@5.0.0: {}
@@ -4955,7 +4955,7 @@ snapshots:
exit-hook@2.2.1: {}
- exsolve@1.0.4: {}
+ exsolve@1.0.5: {}
ext@1.7.0:
dependencies:
@@ -4967,7 +4967,7 @@ snapshots:
fast-uri@3.0.6: {}
- fdir@6.4.3(picomatch@4.0.2):
+ fdir@6.4.4(picomatch@4.0.2):
optionalDependencies:
picomatch: 4.0.2
@@ -5357,7 +5357,7 @@ snapshots:
mime@3.0.0: {}
- miniflare@4.20250409.0:
+ miniflare@4.20250422.0:
dependencies:
'@cspotcode/source-map-support': 0.8.1
acorn: 8.14.0
@@ -5366,7 +5366,7 @@ snapshots:
glob-to-regexp: 0.4.1
stoppable: 1.1.0
undici: 5.29.0
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
ws: 8.18.0
youch: 3.3.4
zod: 3.22.3
@@ -5478,7 +5478,7 @@ snapshots:
pkg-types@2.1.0:
dependencies:
confbox: 0.2.2
- exsolve: 1.0.4
+ exsolve: 1.0.5
pathe: 2.0.3
possible-typed-array-names@1.1.0: {}
@@ -5681,7 +5681,7 @@ snapshots:
sharp@0.33.5:
dependencies:
color: 4.2.3
- detect-libc: 2.0.3
+ detect-libc: 2.0.4
semver: 7.7.1
optionalDependencies:
'@img/sharp-darwin-arm64': 0.33.5
@@ -5858,9 +5858,9 @@ snapshots:
tiny-warning@1.0.3: {}
- tinyglobby@0.2.12:
+ tinyglobby@0.2.13:
dependencies:
- fdir: 6.4.3(picomatch@4.0.2)
+ fdir: 6.4.4(picomatch@4.0.2)
picomatch: 4.0.2
to-regex-range@5.0.1:
@@ -5935,7 +5935,7 @@ snapshots:
unenv@2.0.0-rc.15:
dependencies:
defu: 6.1.4
- exsolve: 1.0.4
+ exsolve: 1.0.5
ohash: 2.0.11
pathe: 2.0.3
ufo: 1.6.1
@@ -5971,7 +5971,7 @@ snapshots:
pkg-types: 2.1.0
scule: 1.3.0
strip-literal: 3.0.0
- tinyglobby: 0.2.12
+ tinyglobby: 0.2.13
unplugin: 2.3.2
unplugin-utils: 0.2.4
@@ -5997,14 +5997,14 @@ snapshots:
pathe: 2.0.3
picomatch: 4.0.2
- unplugin-vue-components@28.4.1(@babel/parser@7.27.0)(vue@3.5.13(typescript@5.4.5)):
+ unplugin-vue-components@28.5.0(@babel/parser@7.27.0)(vue@3.5.13(typescript@5.4.5)):
dependencies:
chokidar: 3.6.0
debug: 4.4.0
local-pkg: 1.1.1
magic-string: 0.30.17
mlly: 1.7.4
- tinyglobby: 0.2.12
+ tinyglobby: 0.2.13
unplugin: 2.3.2
unplugin-utils: 0.2.4
vue: 3.5.13(typescript@5.4.5)
@@ -6036,36 +6036,39 @@ snapshots:
evtd: 0.2.4
vue: 3.5.13(typescript@5.4.5)
- vite-plugin-pwa@1.0.0(vite@6.2.6(@types/node@22.10.5)(terser@5.39.0))(workbox-build@7.3.0)(workbox-window@7.3.0):
+ vite-plugin-pwa@1.0.0(vite@6.3.2(@types/node@22.10.5)(terser@5.39.0))(workbox-build@7.3.0)(workbox-window@7.3.0):
dependencies:
debug: 4.4.0
pretty-bytes: 6.1.1
- tinyglobby: 0.2.12
- vite: 6.2.6(@types/node@22.10.5)(terser@5.39.0)
+ tinyglobby: 0.2.13
+ vite: 6.3.2(@types/node@22.10.5)(terser@5.39.0)
workbox-build: 7.3.0
workbox-window: 7.3.0
transitivePeerDependencies:
- supports-color
- vite-plugin-top-level-await@1.5.0(rollup@2.79.2)(vite@6.2.6(@types/node@22.10.5)(terser@5.39.0)):
+ vite-plugin-top-level-await@1.5.0(rollup@2.79.2)(vite@6.3.2(@types/node@22.10.5)(terser@5.39.0)):
dependencies:
'@rollup/plugin-virtual': 3.0.2(rollup@2.79.2)
- '@swc/core': 1.11.20
+ '@swc/core': 1.11.22
uuid: 10.0.0
- vite: 6.2.6(@types/node@22.10.5)(terser@5.39.0)
+ vite: 6.3.2(@types/node@22.10.5)(terser@5.39.0)
transitivePeerDependencies:
- '@swc/helpers'
- rollup
- vite-plugin-wasm@3.4.1(vite@6.2.6(@types/node@22.10.5)(terser@5.39.0)):
+ vite-plugin-wasm@3.4.1(vite@6.3.2(@types/node@22.10.5)(terser@5.39.0)):
dependencies:
- vite: 6.2.6(@types/node@22.10.5)(terser@5.39.0)
+ vite: 6.3.2(@types/node@22.10.5)(terser@5.39.0)
- vite@6.2.6(@types/node@22.10.5)(terser@5.39.0):
+ vite@6.3.2(@types/node@22.10.5)(terser@5.39.0):
dependencies:
- esbuild: 0.25.2
+ esbuild: 0.25.3
+ fdir: 6.4.4(picomatch@4.0.2)
+ picomatch: 4.0.2
postcss: 8.5.3
rollup: 4.40.0
+ tinyglobby: 0.2.13
optionalDependencies:
'@types/node': 22.10.5
fsevents: 2.3.3
@@ -6279,24 +6282,24 @@ snapshots:
'@types/trusted-types': 2.0.7
workbox-core: 7.3.0
- workerd@1.20250409.0:
+ workerd@1.20250422.0:
optionalDependencies:
- '@cloudflare/workerd-darwin-64': 1.20250409.0
- '@cloudflare/workerd-darwin-arm64': 1.20250409.0
- '@cloudflare/workerd-linux-64': 1.20250409.0
- '@cloudflare/workerd-linux-arm64': 1.20250409.0
- '@cloudflare/workerd-windows-64': 1.20250409.0
+ '@cloudflare/workerd-darwin-64': 1.20250422.0
+ '@cloudflare/workerd-darwin-arm64': 1.20250422.0
+ '@cloudflare/workerd-linux-64': 1.20250422.0
+ '@cloudflare/workerd-linux-arm64': 1.20250422.0
+ '@cloudflare/workerd-windows-64': 1.20250422.0
- wrangler@4.10.0:
+ wrangler@4.13.0:
dependencies:
'@cloudflare/kv-asset-handler': 0.4.0
- '@cloudflare/unenv-preset': 2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250409.0)
+ '@cloudflare/unenv-preset': 2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250422.0)
blake3-wasm: 2.1.5
- esbuild: 0.24.2
- miniflare: 4.20250409.0
+ esbuild: 0.25.2
+ miniflare: 4.20250422.0
path-to-regexp: 6.3.0
unenv: 2.0.0-rc.15
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
optionalDependencies:
fsevents: 2.3.3
sharp: 0.33.5
diff --git a/frontend/src/views/User.vue b/frontend/src/views/User.vue
index 7d3625ff..229f0278 100644
--- a/frontend/src/views/User.vue
+++ b/frontend/src/views/User.vue
@@ -7,6 +7,7 @@ import AddressMangement from './user/AddressManagement.vue';
import UserSettingsPage from './user/UserSettings.vue';
import UserBar from './user/UserBar.vue';
import BindAddress from './user/BindAddress.vue';
+import UserMailBox from './user/UserMailBox.vue';
const {
userTab, globalTabplacement, userSettings
@@ -16,11 +17,13 @@ const { t } = useI18n({
messages: {
en: {
address_management: 'Address Management',
+ user_mail_box_tab: 'Mail Box',
user_settings: 'User Settings',
bind_address: 'Bind Mail Address',
},
zh: {
address_management: '地址管理',
+ user_mail_box_tab: '收件箱',
user_settings: '用户设置',
bind_address: '绑定邮箱地址',
}
@@ -36,6 +39,9 @@ const { t } = useI18n({
+
+
+
diff --git a/frontend/src/views/user/UserMailBox.vue b/frontend/src/views/user/UserMailBox.vue
new file mode 100644
index 00000000..f974aa5d
--- /dev/null
+++ b/frontend/src/views/user/UserMailBox.vue
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+ {{ t('query') }}
+
+
+
+
+
+
diff --git a/pages/package.json b/pages/package.json
index 113e6b29..a5c8a47a 100644
--- a/pages/package.json
+++ b/pages/package.json
@@ -1,6 +1,6 @@
{
"name": "temp-email-pages",
- "version": "0.9.1",
+ "version": "0.10.9",
"description": "",
"main": "index.js",
"scripts": {
@@ -11,6 +11,6 @@
"author": "",
"license": "ISC",
"devDependencies": {
- "wrangler": "^4.10.0"
+ "wrangler": "^4.13.0"
}
}
diff --git a/vitepress-docs/docs/zh/guide/feature/mail-api.md b/vitepress-docs/docs/zh/guide/feature/mail-api.md
index 6aacce2d..d776b22f 100644
--- a/vitepress-docs/docs/zh/guide/feature/mail-api.md
+++ b/vitepress-docs/docs/zh/guide/feature/mail-api.md
@@ -1,6 +1,6 @@
# 查看邮件 API
-## 通过 HTTP API 查看邮件
+## 通过 邮件 API 查看邮件
这是一个 `python` 的例子,使用 `requests` 库查看邮件。
@@ -8,7 +8,7 @@
limit = 10
offset = 0
res = requests.get(
- f"http://localhost:8787/api/mails?limit={limit}&offset={offset}",
+ f"https://<你的worker地址>/api/mails?limit={limit}&offset={offset}",
headers={
"Authorization": f"Bearer {你的JWT密码}",
# "x-custom-auth": "<你的网站密码>", # 如果启用了自定义密码
@@ -16,3 +16,51 @@ res = requests.get(
}
)
```
+
+## admin 邮件 API
+
+支持 `address` filter 和 `keyword` filter
+
+```python
+import requests
+
+url = "https://<你的worker地址>/admin/mails"
+
+querystring = {
+ "limit":"20",
+ "offset":"0",
+ # adress 和 keyword 为可选参数
+ "address":"xxxx@awsl.uk",
+ "keyword":"xxxx"
+}
+
+headers = {"x-admin-auth": "<你的Admin密码>"}
+
+response = requests.get(url, headers=headers, params=querystring)
+
+print(response.json())
+```
+
+## user 邮件 API
+
+支持 `address` filter 和 `keyword` filter
+
+```python
+import requests
+
+url = "https://<你的worker地址>/user_api/mails"
+
+querystring = {
+ "limit":"20",
+ "offset":"0",
+ # adress 和 keyword 为可选参数
+ "address":"xxxx@awsl.uk",
+ "keyword":"xxxx"
+}
+
+headers = {"x-admin-auth": "<你的Admin密码>"}
+
+response = requests.get(url, headers=headers, params=querystring)
+
+print(response.json())
+```
diff --git a/vitepress-docs/package.json b/vitepress-docs/package.json
index bac144bb..8c2c0bd8 100644
--- a/vitepress-docs/package.json
+++ b/vitepress-docs/package.json
@@ -1,12 +1,12 @@
{
"name": "temp-mail-docs",
"private": true,
- "version": "0.9.1",
+ "version": "0.10.9",
"type": "module",
"devDependencies": {
"@types/node": "^22.14.1",
"vitepress": "^1.6.3",
- "wrangler": "^4.10.0"
+ "wrangler": "^4.13.0"
},
"scripts": {
"dev": "vitepress dev docs",
diff --git a/vitepress-docs/pnpm-lock.yaml b/vitepress-docs/pnpm-lock.yaml
index 542df037..d9f766dc 100644
--- a/vitepress-docs/pnpm-lock.yaml
+++ b/vitepress-docs/pnpm-lock.yaml
@@ -17,10 +17,10 @@ importers:
version: 22.14.1
vitepress:
specifier: ^1.6.3
- version: 1.6.3(@algolia/client-search@5.23.3)(@types/node@22.14.1)(postcss@8.5.3)(search-insights@2.13.0)(typescript@5.4.5)
+ version: 1.6.3(@algolia/client-search@5.23.4)(@types/node@22.14.1)(postcss@8.5.3)(search-insights@2.13.0)(typescript@5.4.5)
wrangler:
- specifier: ^4.10.0
- version: 4.10.0
+ specifier: ^4.13.0
+ version: 4.13.0
packages:
@@ -44,56 +44,56 @@ packages:
'@algolia/client-search': '>= 4.9.1 < 6'
algoliasearch: '>= 4.9.1 < 6'
- '@algolia/client-abtesting@5.23.3':
- resolution: {integrity: sha512-yHI0hBwYcNPc+nJoHPTmmlP8pG6nstCEhpHaZQCDwLZhdMtNhd1hliZMCtLgNnvd1yKEgTt/ZDnTSdZLehfKdA==}
+ '@algolia/client-abtesting@5.23.4':
+ resolution: {integrity: sha512-WIMT2Kxy+FFWXWQxIU8QgbTioL+SGE24zhpj0kipG4uQbzXwONaWt7ffaYLjfge3gcGSgJVv+1VlahVckafluQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-analytics@5.23.3':
- resolution: {integrity: sha512-/70Ey+nZm4bRr2DcNrGU251YIn9lDu0g8xeP4jTCyunGRNFZ/d8hQAw9El34pcTpO1QDojJWAi6ywKIrUaks9w==}
+ '@algolia/client-analytics@5.23.4':
+ resolution: {integrity: sha512-4B9gChENsQA9kFmFlb+x3YhBz2Gx3vSsm81FHI1yJ3fn2zlxREHmfrjyqYoMunsU7BybT/o5Nb7ccCbm/vfseA==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-common@5.23.3':
- resolution: {integrity: sha512-fkpbPclIvaiyw3ADKRBCxMZhrNx/8//6DClfWGxeEiTJ0HEEYtHlqE6GjAkEJubz4v1ioCQkhZwMoFfFct2/vQ==}
+ '@algolia/client-common@5.23.4':
+ resolution: {integrity: sha512-bsj0lwU2ytiWLtl7sPunr+oLe+0YJql9FozJln5BnIiqfKOaseSDdV42060vUy+D4373f2XBI009K/rm2IXYMA==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-insights@5.23.3':
- resolution: {integrity: sha512-TXc5Ve6QOCihWCTWY9N56CZxF1iovzpBWBUhQhy6JSiUfX3MXceV3saV+sXHQ1NVt2NKkyUfEspYHBsTrYzIDg==}
+ '@algolia/client-insights@5.23.4':
+ resolution: {integrity: sha512-XSCtAYvJ/hnfDHfRVMbBH0dayR+2ofVZy3jf5qyifjguC6rwxDsSdQvXpT0QFVyG+h8UPGtDhMPoUIng4wIcZA==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-personalization@5.23.3':
- resolution: {integrity: sha512-JlReruxxiw9LB53jF/BmvVV+c0thiWQUHRdgtbVIEusvRaiX1IdpWJSPQExEtBQ7VFg89nP8niCzWtA34ktKSA==}
+ '@algolia/client-personalization@5.23.4':
+ resolution: {integrity: sha512-l/0QvqgRFFOf7BnKSJ3myd1WbDr86ftVaa3PQwlsNh7IpIHmvVcT83Bi5zlORozVGMwaKfyPZo6O48PZELsOeA==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-query-suggestions@5.23.3':
- resolution: {integrity: sha512-GDEExFMXwx0ScE0AZUA4F6ssztdJvGcXUkdWmWyt2hbYz43ukqmlVJqPaYgGmWdjJjvTx+dNF/hcinwWuXbCug==}
+ '@algolia/client-query-suggestions@5.23.4':
+ resolution: {integrity: sha512-TB0htrDgVacVGtPDyENoM6VIeYqR+pMsDovW94dfi2JoaRxfqu/tYmLpvgWcOknP6wLbr8bA+G7t/NiGksNAwQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-search@5.23.3':
- resolution: {integrity: sha512-mwofV6tGo0oHt4BPi+S5eLC3wnhOa4A1OVgPxetTxZuetod+2W4cxKavUW2v/Ma5CABXPLooXX+g9E67umELZw==}
+ '@algolia/client-search@5.23.4':
+ resolution: {integrity: sha512-uBGo6KwUP6z+u6HZWRui8UJClS7fgUIAiYd1prUqCbkzDiCngTOzxaJbEvrdkK0hGCQtnPDiuNhC5MhtVNN4Eg==}
engines: {node: '>= 14.0.0'}
- '@algolia/ingestion@1.23.3':
- resolution: {integrity: sha512-Zxgmi7Hk4lI52YFphzzJekUqWxYxVjY2GrCpOxV+QiojvUi8Ru+knq6REcwLHFSwpwaDh2Th5pOefMpn4EkQCw==}
+ '@algolia/ingestion@1.23.4':
+ resolution: {integrity: sha512-Si6rFuGnSeEUPU9QchYvbknvEIyCRK7nkeaPVQdZpABU7m4V/tsiWdHmjVodtx3h20VZivJdHeQO9XbHxBOcCw==}
engines: {node: '>= 14.0.0'}
- '@algolia/monitoring@1.23.3':
- resolution: {integrity: sha512-zi/IqvsmFW4E5gMaovAE4KRbXQ+LDYpPGG1nHtfuD5u3SSuQ31fT1vX2zqb6PbPTlgJMEmMk91Mbb7fIKmbQUw==}
+ '@algolia/monitoring@1.23.4':
+ resolution: {integrity: sha512-EXGoVVTshraqPJgr5cMd1fq7Jm71Ew6MpGCEaxI5PErBpJAmKdtjRIzs6JOGKHRaWLi+jdbJPYc2y8RN4qcx5Q==}
engines: {node: '>= 14.0.0'}
- '@algolia/recommend@5.23.3':
- resolution: {integrity: sha512-C9TwbT1zGwULLXGSUSB+G7o/30djacPmQcsTHepvT47PVfPr2ISK/5QVtUnjMU84LEP8uNjuPUeM4ZeWVJ2iuQ==}
+ '@algolia/recommend@5.23.4':
+ resolution: {integrity: sha512-1t6glwKVCkjvBNlng2itTf8fwaLSqkL4JaMENgR3WTGR8mmW2akocUy/ZYSQcG4TcR7qu4zW2UMGAwLoWoflgQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/requester-browser-xhr@5.23.3':
- resolution: {integrity: sha512-/7oYeUhYzY0lls7WtkAURM6wy21/Wwmq9GdujW1MpoYVC0ATXXxwCiAfOpYL9xdWxLV0R3wjyD+yZEni+nboKg==}
+ '@algolia/requester-browser-xhr@5.23.4':
+ resolution: {integrity: sha512-UUuizcgc5+VSY8hqzDFVdJ3Wcto03lpbFRGPgW12pHTlUQHUTADtIpIhkLLOZRCjXmCVhtr97Z+eR6LcRYXa3Q==}
engines: {node: '>= 14.0.0'}
- '@algolia/requester-fetch@5.23.3':
- resolution: {integrity: sha512-r/4fKz4t+bSU1KdjRq+swdNvuGfJ0spV8aFTHPtcsF+1ZaN/VqmdXrTe5NkaZLSztFeMqKwZlJIVvE7VuGlFtw==}
+ '@algolia/requester-fetch@5.23.4':
+ resolution: {integrity: sha512-UhDg6elsek6NnV5z4VG1qMwR6vbp+rTMBEnl/v4hUyXQazU+CNdYkl++cpdmLwGI/7nXc28xtZiL90Es3I7viQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/requester-node-http@5.23.3':
- resolution: {integrity: sha512-UZiTNmUBQFPl3tUKuXaDd8BxEC0t0ny86wwW6XgwfM9IQf4PrzuMpvuOGIJMcCGlrNolZDEI0mcbz/tqRdKW7A==}
+ '@algolia/requester-node-http@5.23.4':
+ resolution: {integrity: sha512-jXGzGBRUS0oywQwnaCA6mMDJO7LoC3dYSLsyNfIqxDR4SNGLhtg3je0Y31lc24OA4nYyKAYgVLtjfrpcpsWShg==}
engines: {node: '>= 14.0.0'}
'@babel/helper-string-parser@7.25.9':
@@ -126,32 +126,32 @@ packages:
workerd:
optional: true
- '@cloudflare/workerd-darwin-64@1.20250409.0':
- resolution: {integrity: sha512-smA9yq77xsdQ1NMLhFz3JZxMHGd01lg0bE+X3dTFmIUs+hHskJ+HJ/IkMFInkCCeEFlUkoL4yO7ilaU/fin/xA==}
+ '@cloudflare/workerd-darwin-64@1.20250422.0':
+ resolution: {integrity: sha512-2FWl8TLpC4Knuyw8GmNgUSoJCNJNNGJ7Xv90j2n8FiXR5Clp9jSpm2ovK8RP9P751yX1/iIp8e7QufR/XDB6ow==}
engines: {node: '>=16'}
cpu: [x64]
os: [darwin]
- '@cloudflare/workerd-darwin-arm64@1.20250409.0':
- resolution: {integrity: sha512-oLVcf+Y5Qun8JHcy1VcR/YnbA5U2ne0czh3XNhDqdHZFK8+vKeC7MnVPX+kEqQA3+uLcMM1/FsIDU1U4Na0h1g==}
+ '@cloudflare/workerd-darwin-arm64@1.20250422.0':
+ resolution: {integrity: sha512-GY3W74ivqxsYldacEbMtcSbG7LsS9hPo5UybKIw4RO9GzP7UC5WGnPfuI4PE2SnJOnw7nwSrBLuhGRPe/QQHkQ==}
engines: {node: '>=16'}
cpu: [arm64]
os: [darwin]
- '@cloudflare/workerd-linux-64@1.20250409.0':
- resolution: {integrity: sha512-D31B4kdC3a0RD5yfpdIa89//kGHbYsYihZmejm1k4S4NHOho3MUDHAEh4aHtafQNXbZdydGHlSyiVYjTdQ9ILQ==}
+ '@cloudflare/workerd-linux-64@1.20250422.0':
+ resolution: {integrity: sha512-mtNkEygKtlRq9pMRlm9J4nX4uVHU1AtJ3mSkdNwPwhisTpo989O5Zd0SH9CYwAk8+NmlZsXELpODUVQxQ7FJgw==}
engines: {node: '>=16'}
cpu: [x64]
os: [linux]
- '@cloudflare/workerd-linux-arm64@1.20250409.0':
- resolution: {integrity: sha512-Sr59P0TREayil5OQ7kcbjuIn6L6OTSRLI91LKu0D8vi1hss2q9FUwBcwxg0+Yd/x+ty/x7IISiAK5QBkAMeITQ==}
+ '@cloudflare/workerd-linux-arm64@1.20250422.0':
+ resolution: {integrity: sha512-ILlW4/kAoFJvSryrr/QJsiHBdMTf/fjUrIM0hxeuQue8zIEvAVqM1tzpUh8bPJT6AQEbk5ziwkfucA939Z6Tnw==}
engines: {node: '>=16'}
cpu: [arm64]
os: [linux]
- '@cloudflare/workerd-windows-64@1.20250409.0':
- resolution: {integrity: sha512-dK9I8zBX5rR7MtaaP2AhICQTEw3PVzHcsltN8o46w7JsbYlMvFOj27FfYH5dhs3IahgmIfw2e572QXW2o/dbpg==}
+ '@cloudflare/workerd-windows-64@1.20250422.0':
+ resolution: {integrity: sha512-O2f6f7oxU/oaWX/3/5d/9qvzNSKsw72RsQFjpew2va7KwnnUciI2LnbYR6KYOqRGYrEoiMJxpWPQaYaFVj8t1w==}
engines: {node: '>=16'}
cpu: [x64]
os: [win32]
@@ -183,8 +183,8 @@ packages:
search-insights:
optional: true
- '@emnapi/runtime@1.4.1':
- resolution: {integrity: sha512-LMshMVP0ZhACNjQNYXiU1iZJ6QCcv0lUdPDPugqGvCGXt5xtRVBPdtA0qU12pEXZzpWAhWlZYptfdAFq10DOVQ==}
+ '@emnapi/runtime@1.4.3':
+ resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==}
'@esbuild/aix-ppc64@0.21.5':
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
@@ -192,8 +192,8 @@ packages:
cpu: [ppc64]
os: [aix]
- '@esbuild/aix-ppc64@0.24.2':
- resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==}
+ '@esbuild/aix-ppc64@0.25.2':
+ resolution: {integrity: sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [aix]
@@ -204,8 +204,8 @@ packages:
cpu: [arm64]
os: [android]
- '@esbuild/android-arm64@0.24.2':
- resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==}
+ '@esbuild/android-arm64@0.25.2':
+ resolution: {integrity: sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==}
engines: {node: '>=18'}
cpu: [arm64]
os: [android]
@@ -216,8 +216,8 @@ packages:
cpu: [arm]
os: [android]
- '@esbuild/android-arm@0.24.2':
- resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==}
+ '@esbuild/android-arm@0.25.2':
+ resolution: {integrity: sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==}
engines: {node: '>=18'}
cpu: [arm]
os: [android]
@@ -228,8 +228,8 @@ packages:
cpu: [x64]
os: [android]
- '@esbuild/android-x64@0.24.2':
- resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==}
+ '@esbuild/android-x64@0.25.2':
+ resolution: {integrity: sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==}
engines: {node: '>=18'}
cpu: [x64]
os: [android]
@@ -240,8 +240,8 @@ packages:
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-arm64@0.24.2':
- resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==}
+ '@esbuild/darwin-arm64@0.25.2':
+ resolution: {integrity: sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==}
engines: {node: '>=18'}
cpu: [arm64]
os: [darwin]
@@ -252,8 +252,8 @@ packages:
cpu: [x64]
os: [darwin]
- '@esbuild/darwin-x64@0.24.2':
- resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==}
+ '@esbuild/darwin-x64@0.25.2':
+ resolution: {integrity: sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==}
engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
@@ -264,8 +264,8 @@ packages:
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-arm64@0.24.2':
- resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==}
+ '@esbuild/freebsd-arm64@0.25.2':
+ resolution: {integrity: sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==}
engines: {node: '>=18'}
cpu: [arm64]
os: [freebsd]
@@ -276,8 +276,8 @@ packages:
cpu: [x64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.24.2':
- resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==}
+ '@esbuild/freebsd-x64@0.25.2':
+ resolution: {integrity: sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [freebsd]
@@ -288,8 +288,8 @@ packages:
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm64@0.24.2':
- resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==}
+ '@esbuild/linux-arm64@0.25.2':
+ resolution: {integrity: sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==}
engines: {node: '>=18'}
cpu: [arm64]
os: [linux]
@@ -300,8 +300,8 @@ packages:
cpu: [arm]
os: [linux]
- '@esbuild/linux-arm@0.24.2':
- resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==}
+ '@esbuild/linux-arm@0.25.2':
+ resolution: {integrity: sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==}
engines: {node: '>=18'}
cpu: [arm]
os: [linux]
@@ -312,8 +312,8 @@ packages:
cpu: [ia32]
os: [linux]
- '@esbuild/linux-ia32@0.24.2':
- resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==}
+ '@esbuild/linux-ia32@0.25.2':
+ resolution: {integrity: sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==}
engines: {node: '>=18'}
cpu: [ia32]
os: [linux]
@@ -324,8 +324,8 @@ packages:
cpu: [loong64]
os: [linux]
- '@esbuild/linux-loong64@0.24.2':
- resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==}
+ '@esbuild/linux-loong64@0.25.2':
+ resolution: {integrity: sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==}
engines: {node: '>=18'}
cpu: [loong64]
os: [linux]
@@ -336,8 +336,8 @@ packages:
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-mips64el@0.24.2':
- resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==}
+ '@esbuild/linux-mips64el@0.25.2':
+ resolution: {integrity: sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==}
engines: {node: '>=18'}
cpu: [mips64el]
os: [linux]
@@ -348,8 +348,8 @@ packages:
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-ppc64@0.24.2':
- resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==}
+ '@esbuild/linux-ppc64@0.25.2':
+ resolution: {integrity: sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [linux]
@@ -360,8 +360,8 @@ packages:
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-riscv64@0.24.2':
- resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==}
+ '@esbuild/linux-riscv64@0.25.2':
+ resolution: {integrity: sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==}
engines: {node: '>=18'}
cpu: [riscv64]
os: [linux]
@@ -372,8 +372,8 @@ packages:
cpu: [s390x]
os: [linux]
- '@esbuild/linux-s390x@0.24.2':
- resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==}
+ '@esbuild/linux-s390x@0.25.2':
+ resolution: {integrity: sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==}
engines: {node: '>=18'}
cpu: [s390x]
os: [linux]
@@ -384,14 +384,14 @@ packages:
cpu: [x64]
os: [linux]
- '@esbuild/linux-x64@0.24.2':
- resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==}
+ '@esbuild/linux-x64@0.25.2':
+ resolution: {integrity: sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==}
engines: {node: '>=18'}
cpu: [x64]
os: [linux]
- '@esbuild/netbsd-arm64@0.24.2':
- resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==}
+ '@esbuild/netbsd-arm64@0.25.2':
+ resolution: {integrity: sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==}
engines: {node: '>=18'}
cpu: [arm64]
os: [netbsd]
@@ -402,14 +402,14 @@ packages:
cpu: [x64]
os: [netbsd]
- '@esbuild/netbsd-x64@0.24.2':
- resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==}
+ '@esbuild/netbsd-x64@0.25.2':
+ resolution: {integrity: sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==}
engines: {node: '>=18'}
cpu: [x64]
os: [netbsd]
- '@esbuild/openbsd-arm64@0.24.2':
- resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==}
+ '@esbuild/openbsd-arm64@0.25.2':
+ resolution: {integrity: sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
@@ -420,8 +420,8 @@ packages:
cpu: [x64]
os: [openbsd]
- '@esbuild/openbsd-x64@0.24.2':
- resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==}
+ '@esbuild/openbsd-x64@0.25.2':
+ resolution: {integrity: sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==}
engines: {node: '>=18'}
cpu: [x64]
os: [openbsd]
@@ -432,8 +432,8 @@ packages:
cpu: [x64]
os: [sunos]
- '@esbuild/sunos-x64@0.24.2':
- resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==}
+ '@esbuild/sunos-x64@0.25.2':
+ resolution: {integrity: sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==}
engines: {node: '>=18'}
cpu: [x64]
os: [sunos]
@@ -444,8 +444,8 @@ packages:
cpu: [arm64]
os: [win32]
- '@esbuild/win32-arm64@0.24.2':
- resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==}
+ '@esbuild/win32-arm64@0.25.2':
+ resolution: {integrity: sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==}
engines: {node: '>=18'}
cpu: [arm64]
os: [win32]
@@ -456,8 +456,8 @@ packages:
cpu: [ia32]
os: [win32]
- '@esbuild/win32-ia32@0.24.2':
- resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==}
+ '@esbuild/win32-ia32@0.25.2':
+ resolution: {integrity: sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==}
engines: {node: '>=18'}
cpu: [ia32]
os: [win32]
@@ -468,8 +468,8 @@ packages:
cpu: [x64]
os: [win32]
- '@esbuild/win32-x64@0.24.2':
- resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==}
+ '@esbuild/win32-x64@0.25.2':
+ resolution: {integrity: sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==}
engines: {node: '>=18'}
cpu: [x64]
os: [win32]
@@ -478,8 +478,8 @@ packages:
resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==}
engines: {node: '>=14'}
- '@iconify-json/simple-icons@1.2.31':
- resolution: {integrity: sha512-xBUPtvkcSAiXs9DfVtudhLddQtQYin3I3Ph/W5FNYA0oE6r2hmLB8TgOog9OjOt1Sxn3IB5+4n5+64DMf2xNmQ==}
+ '@iconify-json/simple-icons@1.2.33':
+ resolution: {integrity: sha512-nL5/UmI9x5PQ/AHv6bOaL2pH6twEdEz4pI89efB/K7HFn5etQnxMtGx9DFlOg/sRA2/yFpX8KXvc95CSDv5bJA==}
'@iconify/types@2.0.0':
resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
@@ -772,14 +772,14 @@ packages:
'@vue/compiler-ssr@3.5.13':
resolution: {integrity: sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==}
- '@vue/devtools-api@7.7.2':
- resolution: {integrity: sha512-1syn558KhyN+chO5SjlZIwJ8bV/bQ1nOVTG66t2RbG66ZGekyiYNmRO7X9BJCXQqPsFHlnksqvPhce2qpzxFnA==}
+ '@vue/devtools-api@7.7.5':
+ resolution: {integrity: sha512-HYV3tJGARROq5nlVMJh5KKHk7GU8Au3IrrmNNqr978m0edxgpHgYPDoNUGrvEgIbObz09SQezFR3A1EVmB5WZg==}
- '@vue/devtools-kit@7.7.2':
- resolution: {integrity: sha512-CY0I1JH3Z8PECbn6k3TqM1Bk9ASWxeMtTCvZr7vb+CHi+X/QwQm5F1/fPagraamKMAHVfuuCbdcnNg1A4CYVWQ==}
+ '@vue/devtools-kit@7.7.5':
+ resolution: {integrity: sha512-S9VAVJYVAe4RPx2JZb9ZTEi0lqTySz2CBeF0wHT5D3dkTLnT9yMMGegKNl4b2EIELwLSkcI9bl2qp0/jW+upqA==}
- '@vue/devtools-shared@7.7.2':
- resolution: {integrity: sha512-uBFxnp8gwW2vD6FrJB8JZLUzVb6PNRG0B0jBnHsOH8uKyva2qINY8PTF5Te4QlTbMDqU5K6qtJDr6cNsKWhbOA==}
+ '@vue/devtools-shared@7.7.5':
+ resolution: {integrity: sha512-QBjG72RfpM0DKtpns2RZOxBltO226kOAls9e4Lri6YxS2gWTgL0H+wj1R2K76lxxIeOrqo4+2Ty6RQnzv+WSTQ==}
'@vue/reactivity@3.5.13':
resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==}
@@ -857,15 +857,15 @@ packages:
engines: {node: '>=0.4.0'}
hasBin: true
- algoliasearch@5.23.3:
- resolution: {integrity: sha512-0JlUaY/hl3LrKvbidI5FysEi2ggAlcTHM8AHV2UsrJUXnNo8/lWBfhzc1b7o8bK3YZNiU26JtLyT9exoj5VBgA==}
+ algoliasearch@5.23.4:
+ resolution: {integrity: sha512-QzAKFHl3fm53s44VHrTdEo0TkpL3XVUYQpnZy1r6/EHvMAyIg+O4hwprzlsNmcCHTNyVcF2S13DAUn7XhkC6qg==}
engines: {node: '>= 14.0.0'}
as-table@1.0.55:
resolution: {integrity: sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ==}
- birpc@0.2.19:
- resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==}
+ birpc@2.3.0:
+ resolution: {integrity: sha512-ijbtkn/F3Pvzb6jHypHRyve2QApOCZDR25D/VnkY2G/lBNcXCTsnsCxgY4k4PkVB7zfwzYbY3O9Lcqe3xufS5g==}
blake3-wasm@2.1.5:
resolution: {integrity: sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==}
@@ -920,8 +920,8 @@ packages:
resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
engines: {node: '>=6'}
- detect-libc@2.0.3:
- resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==}
+ detect-libc@2.0.4:
+ resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==}
engines: {node: '>=8'}
devlop@1.1.0:
@@ -939,8 +939,8 @@ packages:
engines: {node: '>=12'}
hasBin: true
- esbuild@0.24.2:
- resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==}
+ esbuild@0.25.2:
+ resolution: {integrity: sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==}
engines: {node: '>=18'}
hasBin: true
@@ -951,8 +951,8 @@ packages:
resolution: {integrity: sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==}
engines: {node: '>=6'}
- exsolve@1.0.4:
- resolution: {integrity: sha512-xsZH6PXaER4XoV+NiT7JHp1bJodJVT+cxeSH1G0f0tlT0lJqYuHUP3bUx2HtfTDvOagMINYp8rsqusxud3RXhw==}
+ exsolve@1.0.5:
+ resolution: {integrity: sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==}
focus-trap@7.6.4:
resolution: {integrity: sha512-xx560wGBk7seZ6y933idtjJQc1l+ck+pI3sKvhKozdBV1dRZoKhkW5xoCaFv9tQiX5RH1xfSxjuNu6g+lmN/gw==}
@@ -1031,8 +1031,8 @@ packages:
engines: {node: '>=10.0.0'}
hasBin: true
- miniflare@4.20250409.0:
- resolution: {integrity: sha512-Hu02dYZvFR+MyrI57O6rSrOUTofcO9EIvcodgq2SAHzAeWSJw2E0oq9lylOrcckFwPMcwxUAb/cQN1LIoCyySw==}
+ miniflare@4.20250422.0:
+ resolution: {integrity: sha512-3frXK9EZEWQkHMDyppeIbUKwd7OQkNOm2gBtQQzjQ4gtzQmh+yxkyJiiylf+fGbz86djQTLKKQdQ1FC4yM3AMg==}
engines: {node: '>=18.0.0'}
hasBin: true
@@ -1266,17 +1266,17 @@ packages:
typescript:
optional: true
- workerd@1.20250409.0:
- resolution: {integrity: sha512-hqjX9swiHvrkOI3jlH9lrZsZRRv9lddUwcMe8Ua76jnyQz+brybWznNjHu8U5oswwcrFwvky1A4CcLjcLY31gQ==}
+ workerd@1.20250422.0:
+ resolution: {integrity: sha512-q3ws6MIa9GJQqq1Q52qoD7vCx1203fjKNPmtRV1vvplrsfYphjr5pOAnZGUODFB1BnsDWypr71Luy7OonT0vug==}
engines: {node: '>=16'}
hasBin: true
- wrangler@4.10.0:
- resolution: {integrity: sha512-fTE4hZ79msEUt8+HEjl/8Q72haCyzPLu4PgrU3L81ysmjrMEdiYfUPqnvCkBUVtJvrDNdctTEimkufT1Y0ipNg==}
+ wrangler@4.13.0:
+ resolution: {integrity: sha512-CVRNL0unLmzhVeUkW+9neZHFITSo7UDROz8VYxi8YhitV9Rr1xMojS1cGjQTaQX8F3nAEsTRJXTwwTZ0JoJm6g==}
engines: {node: '>=18.0.0'}
hasBin: true
peerDependencies:
- '@cloudflare/workers-types': ^4.20250409.0
+ '@cloudflare/workers-types': ^4.20250422.0
peerDependenciesMeta:
'@cloudflare/workers-types':
optional: true
@@ -1304,110 +1304,110 @@ packages:
snapshots:
- '@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)(search-insights@2.13.0)':
+ '@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)(search-insights@2.13.0)':
dependencies:
- '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)(search-insights@2.13.0)
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)
+ '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)(search-insights@2.13.0)
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)
transitivePeerDependencies:
- '@algolia/client-search'
- algoliasearch
- search-insights
- '@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)(search-insights@2.13.0)':
+ '@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)(search-insights@2.13.0)':
dependencies:
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)
search-insights: 2.13.0
transitivePeerDependencies:
- '@algolia/client-search'
- algoliasearch
- '@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)':
+ '@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)':
dependencies:
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)
- '@algolia/client-search': 5.23.3
- algoliasearch: 5.23.3
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)
+ '@algolia/client-search': 5.23.4
+ algoliasearch: 5.23.4
- '@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)':
+ '@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)':
dependencies:
- '@algolia/client-search': 5.23.3
- algoliasearch: 5.23.3
+ '@algolia/client-search': 5.23.4
+ algoliasearch: 5.23.4
- '@algolia/client-abtesting@5.23.3':
+ '@algolia/client-abtesting@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/client-analytics@5.23.3':
+ '@algolia/client-analytics@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/client-common@5.23.3': {}
+ '@algolia/client-common@5.23.4': {}
- '@algolia/client-insights@5.23.3':
+ '@algolia/client-insights@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/client-personalization@5.23.3':
+ '@algolia/client-personalization@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/client-query-suggestions@5.23.3':
+ '@algolia/client-query-suggestions@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/client-search@5.23.3':
+ '@algolia/client-search@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/ingestion@1.23.3':
+ '@algolia/ingestion@1.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/monitoring@1.23.3':
+ '@algolia/monitoring@1.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/recommend@5.23.3':
+ '@algolia/recommend@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-common': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
- '@algolia/requester-browser-xhr@5.23.3':
+ '@algolia/requester-browser-xhr@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
+ '@algolia/client-common': 5.23.4
- '@algolia/requester-fetch@5.23.3':
+ '@algolia/requester-fetch@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
+ '@algolia/client-common': 5.23.4
- '@algolia/requester-node-http@5.23.3':
+ '@algolia/requester-node-http@5.23.4':
dependencies:
- '@algolia/client-common': 5.23.3
+ '@algolia/client-common': 5.23.4
'@babel/helper-string-parser@7.25.9': {}
@@ -1426,25 +1426,25 @@ snapshots:
dependencies:
mime: 3.0.0
- '@cloudflare/unenv-preset@2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250409.0)':
+ '@cloudflare/unenv-preset@2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250422.0)':
dependencies:
unenv: 2.0.0-rc.15
optionalDependencies:
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
- '@cloudflare/workerd-darwin-64@1.20250409.0':
+ '@cloudflare/workerd-darwin-64@1.20250422.0':
optional: true
- '@cloudflare/workerd-darwin-arm64@1.20250409.0':
+ '@cloudflare/workerd-darwin-arm64@1.20250422.0':
optional: true
- '@cloudflare/workerd-linux-64@1.20250409.0':
+ '@cloudflare/workerd-linux-64@1.20250422.0':
optional: true
- '@cloudflare/workerd-linux-arm64@1.20250409.0':
+ '@cloudflare/workerd-linux-arm64@1.20250422.0':
optional: true
- '@cloudflare/workerd-windows-64@1.20250409.0':
+ '@cloudflare/workerd-windows-64@1.20250422.0':
optional: true
'@cspotcode/source-map-support@0.8.1':
@@ -1453,9 +1453,9 @@ snapshots:
'@docsearch/css@3.8.2': {}
- '@docsearch/js@3.8.2(@algolia/client-search@5.23.3)(search-insights@2.13.0)':
+ '@docsearch/js@3.8.2(@algolia/client-search@5.23.4)(search-insights@2.13.0)':
dependencies:
- '@docsearch/react': 3.8.2(@algolia/client-search@5.23.3)(search-insights@2.13.0)
+ '@docsearch/react': 3.8.2(@algolia/client-search@5.23.4)(search-insights@2.13.0)
preact: 10.26.5
transitivePeerDependencies:
- '@algolia/client-search'
@@ -1464,18 +1464,18 @@ snapshots:
- react-dom
- search-insights
- '@docsearch/react@3.8.2(@algolia/client-search@5.23.3)(search-insights@2.13.0)':
+ '@docsearch/react@3.8.2(@algolia/client-search@5.23.4)(search-insights@2.13.0)':
dependencies:
- '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)(search-insights@2.13.0)
- '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.23.3)(algoliasearch@5.23.3)
+ '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)(search-insights@2.13.0)
+ '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.23.4)(algoliasearch@5.23.4)
'@docsearch/css': 3.8.2
- algoliasearch: 5.23.3
+ algoliasearch: 5.23.4
optionalDependencies:
search-insights: 2.13.0
transitivePeerDependencies:
- '@algolia/client-search'
- '@emnapi/runtime@1.4.1':
+ '@emnapi/runtime@1.4.3':
dependencies:
tslib: 2.8.1
optional: true
@@ -1483,150 +1483,150 @@ snapshots:
'@esbuild/aix-ppc64@0.21.5':
optional: true
- '@esbuild/aix-ppc64@0.24.2':
+ '@esbuild/aix-ppc64@0.25.2':
optional: true
'@esbuild/android-arm64@0.21.5':
optional: true
- '@esbuild/android-arm64@0.24.2':
+ '@esbuild/android-arm64@0.25.2':
optional: true
'@esbuild/android-arm@0.21.5':
optional: true
- '@esbuild/android-arm@0.24.2':
+ '@esbuild/android-arm@0.25.2':
optional: true
'@esbuild/android-x64@0.21.5':
optional: true
- '@esbuild/android-x64@0.24.2':
+ '@esbuild/android-x64@0.25.2':
optional: true
'@esbuild/darwin-arm64@0.21.5':
optional: true
- '@esbuild/darwin-arm64@0.24.2':
+ '@esbuild/darwin-arm64@0.25.2':
optional: true
'@esbuild/darwin-x64@0.21.5':
optional: true
- '@esbuild/darwin-x64@0.24.2':
+ '@esbuild/darwin-x64@0.25.2':
optional: true
'@esbuild/freebsd-arm64@0.21.5':
optional: true
- '@esbuild/freebsd-arm64@0.24.2':
+ '@esbuild/freebsd-arm64@0.25.2':
optional: true
'@esbuild/freebsd-x64@0.21.5':
optional: true
- '@esbuild/freebsd-x64@0.24.2':
+ '@esbuild/freebsd-x64@0.25.2':
optional: true
'@esbuild/linux-arm64@0.21.5':
optional: true
- '@esbuild/linux-arm64@0.24.2':
+ '@esbuild/linux-arm64@0.25.2':
optional: true
'@esbuild/linux-arm@0.21.5':
optional: true
- '@esbuild/linux-arm@0.24.2':
+ '@esbuild/linux-arm@0.25.2':
optional: true
'@esbuild/linux-ia32@0.21.5':
optional: true
- '@esbuild/linux-ia32@0.24.2':
+ '@esbuild/linux-ia32@0.25.2':
optional: true
'@esbuild/linux-loong64@0.21.5':
optional: true
- '@esbuild/linux-loong64@0.24.2':
+ '@esbuild/linux-loong64@0.25.2':
optional: true
'@esbuild/linux-mips64el@0.21.5':
optional: true
- '@esbuild/linux-mips64el@0.24.2':
+ '@esbuild/linux-mips64el@0.25.2':
optional: true
'@esbuild/linux-ppc64@0.21.5':
optional: true
- '@esbuild/linux-ppc64@0.24.2':
+ '@esbuild/linux-ppc64@0.25.2':
optional: true
'@esbuild/linux-riscv64@0.21.5':
optional: true
- '@esbuild/linux-riscv64@0.24.2':
+ '@esbuild/linux-riscv64@0.25.2':
optional: true
'@esbuild/linux-s390x@0.21.5':
optional: true
- '@esbuild/linux-s390x@0.24.2':
+ '@esbuild/linux-s390x@0.25.2':
optional: true
'@esbuild/linux-x64@0.21.5':
optional: true
- '@esbuild/linux-x64@0.24.2':
+ '@esbuild/linux-x64@0.25.2':
optional: true
- '@esbuild/netbsd-arm64@0.24.2':
+ '@esbuild/netbsd-arm64@0.25.2':
optional: true
'@esbuild/netbsd-x64@0.21.5':
optional: true
- '@esbuild/netbsd-x64@0.24.2':
+ '@esbuild/netbsd-x64@0.25.2':
optional: true
- '@esbuild/openbsd-arm64@0.24.2':
+ '@esbuild/openbsd-arm64@0.25.2':
optional: true
'@esbuild/openbsd-x64@0.21.5':
optional: true
- '@esbuild/openbsd-x64@0.24.2':
+ '@esbuild/openbsd-x64@0.25.2':
optional: true
'@esbuild/sunos-x64@0.21.5':
optional: true
- '@esbuild/sunos-x64@0.24.2':
+ '@esbuild/sunos-x64@0.25.2':
optional: true
'@esbuild/win32-arm64@0.21.5':
optional: true
- '@esbuild/win32-arm64@0.24.2':
+ '@esbuild/win32-arm64@0.25.2':
optional: true
'@esbuild/win32-ia32@0.21.5':
optional: true
- '@esbuild/win32-ia32@0.24.2':
+ '@esbuild/win32-ia32@0.25.2':
optional: true
'@esbuild/win32-x64@0.21.5':
optional: true
- '@esbuild/win32-x64@0.24.2':
+ '@esbuild/win32-x64@0.25.2':
optional: true
'@fastify/busboy@2.1.1': {}
- '@iconify-json/simple-icons@1.2.31':
+ '@iconify-json/simple-icons@1.2.33':
dependencies:
'@iconify/types': 2.0.0
@@ -1698,7 +1698,7 @@ snapshots:
'@img/sharp-wasm32@0.33.5':
dependencies:
- '@emnapi/runtime': 1.4.1
+ '@emnapi/runtime': 1.4.3
optional: true
'@img/sharp-win32-ia32@0.33.5':
@@ -1880,21 +1880,21 @@ snapshots:
'@vue/compiler-dom': 3.5.13
'@vue/shared': 3.5.13
- '@vue/devtools-api@7.7.2':
+ '@vue/devtools-api@7.7.5':
dependencies:
- '@vue/devtools-kit': 7.7.2
+ '@vue/devtools-kit': 7.7.5
- '@vue/devtools-kit@7.7.2':
+ '@vue/devtools-kit@7.7.5':
dependencies:
- '@vue/devtools-shared': 7.7.2
- birpc: 0.2.19
+ '@vue/devtools-shared': 7.7.5
+ birpc: 2.3.0
hookable: 5.5.3
mitt: 3.0.1
perfect-debounce: 1.0.0
speakingurl: 14.0.1
superjson: 2.2.2
- '@vue/devtools-shared@7.7.2':
+ '@vue/devtools-shared@7.7.5':
dependencies:
rfdc: 1.4.1
@@ -1953,27 +1953,27 @@ snapshots:
acorn@8.14.0: {}
- algoliasearch@5.23.3:
+ algoliasearch@5.23.4:
dependencies:
- '@algolia/client-abtesting': 5.23.3
- '@algolia/client-analytics': 5.23.3
- '@algolia/client-common': 5.23.3
- '@algolia/client-insights': 5.23.3
- '@algolia/client-personalization': 5.23.3
- '@algolia/client-query-suggestions': 5.23.3
- '@algolia/client-search': 5.23.3
- '@algolia/ingestion': 1.23.3
- '@algolia/monitoring': 1.23.3
- '@algolia/recommend': 5.23.3
- '@algolia/requester-browser-xhr': 5.23.3
- '@algolia/requester-fetch': 5.23.3
- '@algolia/requester-node-http': 5.23.3
+ '@algolia/client-abtesting': 5.23.4
+ '@algolia/client-analytics': 5.23.4
+ '@algolia/client-common': 5.23.4
+ '@algolia/client-insights': 5.23.4
+ '@algolia/client-personalization': 5.23.4
+ '@algolia/client-query-suggestions': 5.23.4
+ '@algolia/client-search': 5.23.4
+ '@algolia/ingestion': 1.23.4
+ '@algolia/monitoring': 1.23.4
+ '@algolia/recommend': 5.23.4
+ '@algolia/requester-browser-xhr': 5.23.4
+ '@algolia/requester-fetch': 5.23.4
+ '@algolia/requester-node-http': 5.23.4
as-table@1.0.55:
dependencies:
printable-characters: 1.0.42
- birpc@0.2.19: {}
+ birpc@2.3.0: {}
blake3-wasm@2.1.5: {}
@@ -2021,7 +2021,7 @@ snapshots:
dequal@2.0.3: {}
- detect-libc@2.0.3:
+ detect-libc@2.0.4:
optional: true
devlop@1.1.0:
@@ -2058,39 +2058,39 @@ snapshots:
'@esbuild/win32-ia32': 0.21.5
'@esbuild/win32-x64': 0.21.5
- esbuild@0.24.2:
+ esbuild@0.25.2:
optionalDependencies:
- '@esbuild/aix-ppc64': 0.24.2
- '@esbuild/android-arm': 0.24.2
- '@esbuild/android-arm64': 0.24.2
- '@esbuild/android-x64': 0.24.2
- '@esbuild/darwin-arm64': 0.24.2
- '@esbuild/darwin-x64': 0.24.2
- '@esbuild/freebsd-arm64': 0.24.2
- '@esbuild/freebsd-x64': 0.24.2
- '@esbuild/linux-arm': 0.24.2
- '@esbuild/linux-arm64': 0.24.2
- '@esbuild/linux-ia32': 0.24.2
- '@esbuild/linux-loong64': 0.24.2
- '@esbuild/linux-mips64el': 0.24.2
- '@esbuild/linux-ppc64': 0.24.2
- '@esbuild/linux-riscv64': 0.24.2
- '@esbuild/linux-s390x': 0.24.2
- '@esbuild/linux-x64': 0.24.2
- '@esbuild/netbsd-arm64': 0.24.2
- '@esbuild/netbsd-x64': 0.24.2
- '@esbuild/openbsd-arm64': 0.24.2
- '@esbuild/openbsd-x64': 0.24.2
- '@esbuild/sunos-x64': 0.24.2
- '@esbuild/win32-arm64': 0.24.2
- '@esbuild/win32-ia32': 0.24.2
- '@esbuild/win32-x64': 0.24.2
+ '@esbuild/aix-ppc64': 0.25.2
+ '@esbuild/android-arm': 0.25.2
+ '@esbuild/android-arm64': 0.25.2
+ '@esbuild/android-x64': 0.25.2
+ '@esbuild/darwin-arm64': 0.25.2
+ '@esbuild/darwin-x64': 0.25.2
+ '@esbuild/freebsd-arm64': 0.25.2
+ '@esbuild/freebsd-x64': 0.25.2
+ '@esbuild/linux-arm': 0.25.2
+ '@esbuild/linux-arm64': 0.25.2
+ '@esbuild/linux-ia32': 0.25.2
+ '@esbuild/linux-loong64': 0.25.2
+ '@esbuild/linux-mips64el': 0.25.2
+ '@esbuild/linux-ppc64': 0.25.2
+ '@esbuild/linux-riscv64': 0.25.2
+ '@esbuild/linux-s390x': 0.25.2
+ '@esbuild/linux-x64': 0.25.2
+ '@esbuild/netbsd-arm64': 0.25.2
+ '@esbuild/netbsd-x64': 0.25.2
+ '@esbuild/openbsd-arm64': 0.25.2
+ '@esbuild/openbsd-x64': 0.25.2
+ '@esbuild/sunos-x64': 0.25.2
+ '@esbuild/win32-arm64': 0.25.2
+ '@esbuild/win32-ia32': 0.25.2
+ '@esbuild/win32-x64': 0.25.2
estree-walker@2.0.2: {}
exit-hook@2.2.1: {}
- exsolve@1.0.4: {}
+ exsolve@1.0.5: {}
focus-trap@7.6.4:
dependencies:
@@ -2187,7 +2187,7 @@ snapshots:
mime@3.0.0: {}
- miniflare@4.20250409.0:
+ miniflare@4.20250422.0:
dependencies:
'@cspotcode/source-map-support': 0.8.1
acorn: 8.14.0
@@ -2196,7 +2196,7 @@ snapshots:
glob-to-regexp: 0.4.1
stoppable: 1.1.0
undici: 5.29.0
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
ws: 8.18.0
youch: 3.3.4
zod: 3.22.3
@@ -2304,7 +2304,7 @@ snapshots:
sharp@0.33.5:
dependencies:
color: 4.2.3
- detect-libc: 2.0.3
+ detect-libc: 2.0.4
semver: 7.7.1
optionalDependencies:
'@img/sharp-darwin-arm64': 0.33.5
@@ -2393,7 +2393,7 @@ snapshots:
unenv@2.0.0-rc.15:
dependencies:
defu: 6.1.4
- exsolve: 1.0.4
+ exsolve: 1.0.5
ohash: 2.0.11
pathe: 2.0.3
ufo: 1.6.1
@@ -2442,17 +2442,17 @@ snapshots:
'@types/node': 22.14.1
fsevents: 2.3.3
- vitepress@1.6.3(@algolia/client-search@5.23.3)(@types/node@22.14.1)(postcss@8.5.3)(search-insights@2.13.0)(typescript@5.4.5):
+ vitepress@1.6.3(@algolia/client-search@5.23.4)(@types/node@22.14.1)(postcss@8.5.3)(search-insights@2.13.0)(typescript@5.4.5):
dependencies:
'@docsearch/css': 3.8.2
- '@docsearch/js': 3.8.2(@algolia/client-search@5.23.3)(search-insights@2.13.0)
- '@iconify-json/simple-icons': 1.2.31
+ '@docsearch/js': 3.8.2(@algolia/client-search@5.23.4)(search-insights@2.13.0)
+ '@iconify-json/simple-icons': 1.2.33
'@shikijs/core': 2.5.0
'@shikijs/transformers': 2.5.0
'@shikijs/types': 2.5.0
'@types/markdown-it': 14.1.2
'@vitejs/plugin-vue': 5.2.3(vite@5.4.18(@types/node@22.14.1))(vue@3.5.13(typescript@5.4.5))
- '@vue/devtools-api': 7.7.2
+ '@vue/devtools-api': 7.7.5
'@vue/shared': 3.5.13
'@vueuse/core': 12.8.2(typescript@5.4.5)
'@vueuse/integrations': 12.8.2(focus-trap@7.6.4)(typescript@5.4.5)
@@ -2501,24 +2501,24 @@ snapshots:
optionalDependencies:
typescript: 5.4.5
- workerd@1.20250409.0:
+ workerd@1.20250422.0:
optionalDependencies:
- '@cloudflare/workerd-darwin-64': 1.20250409.0
- '@cloudflare/workerd-darwin-arm64': 1.20250409.0
- '@cloudflare/workerd-linux-64': 1.20250409.0
- '@cloudflare/workerd-linux-arm64': 1.20250409.0
- '@cloudflare/workerd-windows-64': 1.20250409.0
+ '@cloudflare/workerd-darwin-64': 1.20250422.0
+ '@cloudflare/workerd-darwin-arm64': 1.20250422.0
+ '@cloudflare/workerd-linux-64': 1.20250422.0
+ '@cloudflare/workerd-linux-arm64': 1.20250422.0
+ '@cloudflare/workerd-windows-64': 1.20250422.0
- wrangler@4.10.0:
+ wrangler@4.13.0:
dependencies:
'@cloudflare/kv-asset-handler': 0.4.0
- '@cloudflare/unenv-preset': 2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250409.0)
+ '@cloudflare/unenv-preset': 2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250422.0)
blake3-wasm: 2.1.5
- esbuild: 0.24.2
- miniflare: 4.20250409.0
+ esbuild: 0.25.2
+ miniflare: 4.20250422.0
path-to-regexp: 6.3.0
unenv: 2.0.0-rc.15
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
optionalDependencies:
fsevents: 2.3.3
sharp: 0.33.5
diff --git a/worker/package.json b/worker/package.json
index bf249be6..b623a9bc 100644
--- a/worker/package.json
+++ b/worker/package.json
@@ -1,6 +1,6 @@
{
"name": "cloudflare_temp_email",
- "version": "0.9.1",
+ "version": "0.10.9",
"private": true,
"type": "module",
"scripts": {
@@ -11,25 +11,25 @@
"build": "wrangler deploy --dry-run --outdir dist --minify"
},
"devDependencies": {
- "@cloudflare/workers-types": "^4.20250412.0",
+ "@cloudflare/workers-types": "^4.20250423.0",
"@eslint/js": "9.18.0",
"@simplewebauthn/types": "10.0.0",
"eslint": "9.18.0",
"globals": "^15.15.0",
- "typescript-eslint": "^8.29.1",
- "wrangler": "^4.10.0"
+ "typescript-eslint": "^8.31.0",
+ "wrangler": "^4.13.0"
},
"dependencies": {
"@aws-sdk/client-s3": "^3.787.0",
"@aws-sdk/s3-request-presigner": "^3.787.0",
"@simplewebauthn/server": "10.0.1",
- "hono": "^4.7.6",
+ "hono": "^4.7.7",
"jsonpath-plus": "^10.3.0",
"mimetext": "^3.0.27",
"postal-mime": "^2.4.3",
- "resend": "^4.2.0",
+ "resend": "^4.4.0",
"telegraf": "4.16.3",
- "worker-mailer": "^1.1.1"
+ "worker-mailer": "^1.1.3"
},
"pnpm": {
"patchedDependencies": {
diff --git a/worker/pnpm-lock.yaml b/worker/pnpm-lock.yaml
index 72da35ab..0c2b4136 100644
--- a/worker/pnpm-lock.yaml
+++ b/worker/pnpm-lock.yaml
@@ -23,8 +23,8 @@ importers:
specifier: 10.0.1
version: 10.0.1
hono:
- specifier: ^4.7.6
- version: 4.7.6
+ specifier: ^4.7.7
+ version: 4.7.7
jsonpath-plus:
specifier: ^10.3.0
version: 10.3.0
@@ -35,18 +35,18 @@ importers:
specifier: ^2.4.3
version: 2.4.3
resend:
- specifier: ^4.2.0
- version: 4.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ specifier: ^4.4.0
+ version: 4.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
telegraf:
specifier: 4.16.3
version: 4.16.3(patch_hash=7d0a1784bb35f50fee25f26a14017734b9461612c635e71734b59527280c9563)
worker-mailer:
- specifier: ^1.1.1
- version: 1.1.1
+ specifier: ^1.1.3
+ version: 1.1.3
devDependencies:
'@cloudflare/workers-types':
- specifier: ^4.20250412.0
- version: 4.20250412.0
+ specifier: ^4.20250423.0
+ version: 4.20250423.0
'@eslint/js':
specifier: 9.18.0
version: 9.18.0
@@ -60,11 +60,11 @@ importers:
specifier: ^15.15.0
version: 15.15.0
typescript-eslint:
- specifier: ^8.29.1
- version: 8.29.1(eslint@9.18.0)(typescript@5.4.5)
+ specifier: ^8.31.0
+ version: 8.31.0(eslint@9.18.0)(typescript@5.4.5)
wrangler:
- specifier: ^4.10.0
- version: 4.10.0(@cloudflare/workers-types@4.20250412.0)
+ specifier: ^4.13.0
+ version: 4.13.0(@cloudflare/workers-types@4.20250423.0)
packages:
@@ -248,198 +248,198 @@ packages:
workerd:
optional: true
- '@cloudflare/workerd-darwin-64@1.20250409.0':
- resolution: {integrity: sha512-smA9yq77xsdQ1NMLhFz3JZxMHGd01lg0bE+X3dTFmIUs+hHskJ+HJ/IkMFInkCCeEFlUkoL4yO7ilaU/fin/xA==}
+ '@cloudflare/workerd-darwin-64@1.20250422.0':
+ resolution: {integrity: sha512-2FWl8TLpC4Knuyw8GmNgUSoJCNJNNGJ7Xv90j2n8FiXR5Clp9jSpm2ovK8RP9P751yX1/iIp8e7QufR/XDB6ow==}
engines: {node: '>=16'}
cpu: [x64]
os: [darwin]
- '@cloudflare/workerd-darwin-arm64@1.20250409.0':
- resolution: {integrity: sha512-oLVcf+Y5Qun8JHcy1VcR/YnbA5U2ne0czh3XNhDqdHZFK8+vKeC7MnVPX+kEqQA3+uLcMM1/FsIDU1U4Na0h1g==}
+ '@cloudflare/workerd-darwin-arm64@1.20250422.0':
+ resolution: {integrity: sha512-GY3W74ivqxsYldacEbMtcSbG7LsS9hPo5UybKIw4RO9GzP7UC5WGnPfuI4PE2SnJOnw7nwSrBLuhGRPe/QQHkQ==}
engines: {node: '>=16'}
cpu: [arm64]
os: [darwin]
- '@cloudflare/workerd-linux-64@1.20250409.0':
- resolution: {integrity: sha512-D31B4kdC3a0RD5yfpdIa89//kGHbYsYihZmejm1k4S4NHOho3MUDHAEh4aHtafQNXbZdydGHlSyiVYjTdQ9ILQ==}
+ '@cloudflare/workerd-linux-64@1.20250422.0':
+ resolution: {integrity: sha512-mtNkEygKtlRq9pMRlm9J4nX4uVHU1AtJ3mSkdNwPwhisTpo989O5Zd0SH9CYwAk8+NmlZsXELpODUVQxQ7FJgw==}
engines: {node: '>=16'}
cpu: [x64]
os: [linux]
- '@cloudflare/workerd-linux-arm64@1.20250409.0':
- resolution: {integrity: sha512-Sr59P0TREayil5OQ7kcbjuIn6L6OTSRLI91LKu0D8vi1hss2q9FUwBcwxg0+Yd/x+ty/x7IISiAK5QBkAMeITQ==}
+ '@cloudflare/workerd-linux-arm64@1.20250422.0':
+ resolution: {integrity: sha512-ILlW4/kAoFJvSryrr/QJsiHBdMTf/fjUrIM0hxeuQue8zIEvAVqM1tzpUh8bPJT6AQEbk5ziwkfucA939Z6Tnw==}
engines: {node: '>=16'}
cpu: [arm64]
os: [linux]
- '@cloudflare/workerd-windows-64@1.20250409.0':
- resolution: {integrity: sha512-dK9I8zBX5rR7MtaaP2AhICQTEw3PVzHcsltN8o46w7JsbYlMvFOj27FfYH5dhs3IahgmIfw2e572QXW2o/dbpg==}
+ '@cloudflare/workerd-windows-64@1.20250422.0':
+ resolution: {integrity: sha512-O2f6f7oxU/oaWX/3/5d/9qvzNSKsw72RsQFjpew2va7KwnnUciI2LnbYR6KYOqRGYrEoiMJxpWPQaYaFVj8t1w==}
engines: {node: '>=16'}
cpu: [x64]
os: [win32]
- '@cloudflare/workers-types@4.20250412.0':
- resolution: {integrity: sha512-ukQE+TRc5HNkM6VvGfTNC9x54TLQKjdcm624F8Qh1ZRe0iJrW2/j1eYgvJABJPexDousYCR7VzCGteShLcBJYQ==}
+ '@cloudflare/workers-types@4.20250423.0':
+ resolution: {integrity: sha512-uzy7fvgYIs9YCEaPScC+RnZvd+yJJCqLCEe/n/6p2PZTxWbDmiZjtJQiP5Zx6G0p64ZD/0ZRmtALfDZDNYBDHg==}
'@cspotcode/source-map-support@0.8.1':
resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
engines: {node: '>=12'}
- '@emnapi/runtime@1.4.1':
- resolution: {integrity: sha512-LMshMVP0ZhACNjQNYXiU1iZJ6QCcv0lUdPDPugqGvCGXt5xtRVBPdtA0qU12pEXZzpWAhWlZYptfdAFq10DOVQ==}
+ '@emnapi/runtime@1.4.3':
+ resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==}
- '@esbuild/aix-ppc64@0.24.2':
- resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==}
+ '@esbuild/aix-ppc64@0.25.2':
+ resolution: {integrity: sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [aix]
- '@esbuild/android-arm64@0.24.2':
- resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==}
+ '@esbuild/android-arm64@0.25.2':
+ resolution: {integrity: sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==}
engines: {node: '>=18'}
cpu: [arm64]
os: [android]
- '@esbuild/android-arm@0.24.2':
- resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==}
+ '@esbuild/android-arm@0.25.2':
+ resolution: {integrity: sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==}
engines: {node: '>=18'}
cpu: [arm]
os: [android]
- '@esbuild/android-x64@0.24.2':
- resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==}
+ '@esbuild/android-x64@0.25.2':
+ resolution: {integrity: sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==}
engines: {node: '>=18'}
cpu: [x64]
os: [android]
- '@esbuild/darwin-arm64@0.24.2':
- resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==}
+ '@esbuild/darwin-arm64@0.25.2':
+ resolution: {integrity: sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==}
engines: {node: '>=18'}
cpu: [arm64]
os: [darwin]
- '@esbuild/darwin-x64@0.24.2':
- resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==}
+ '@esbuild/darwin-x64@0.25.2':
+ resolution: {integrity: sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==}
engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
- '@esbuild/freebsd-arm64@0.24.2':
- resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==}
+ '@esbuild/freebsd-arm64@0.25.2':
+ resolution: {integrity: sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==}
engines: {node: '>=18'}
cpu: [arm64]
os: [freebsd]
- '@esbuild/freebsd-x64@0.24.2':
- resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==}
+ '@esbuild/freebsd-x64@0.25.2':
+ resolution: {integrity: sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==}
engines: {node: '>=18'}
cpu: [x64]
os: [freebsd]
- '@esbuild/linux-arm64@0.24.2':
- resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==}
+ '@esbuild/linux-arm64@0.25.2':
+ resolution: {integrity: sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==}
engines: {node: '>=18'}
cpu: [arm64]
os: [linux]
- '@esbuild/linux-arm@0.24.2':
- resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==}
+ '@esbuild/linux-arm@0.25.2':
+ resolution: {integrity: sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==}
engines: {node: '>=18'}
cpu: [arm]
os: [linux]
- '@esbuild/linux-ia32@0.24.2':
- resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==}
+ '@esbuild/linux-ia32@0.25.2':
+ resolution: {integrity: sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==}
engines: {node: '>=18'}
cpu: [ia32]
os: [linux]
- '@esbuild/linux-loong64@0.24.2':
- resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==}
+ '@esbuild/linux-loong64@0.25.2':
+ resolution: {integrity: sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==}
engines: {node: '>=18'}
cpu: [loong64]
os: [linux]
- '@esbuild/linux-mips64el@0.24.2':
- resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==}
+ '@esbuild/linux-mips64el@0.25.2':
+ resolution: {integrity: sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==}
engines: {node: '>=18'}
cpu: [mips64el]
os: [linux]
- '@esbuild/linux-ppc64@0.24.2':
- resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==}
+ '@esbuild/linux-ppc64@0.25.2':
+ resolution: {integrity: sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [linux]
- '@esbuild/linux-riscv64@0.24.2':
- resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==}
+ '@esbuild/linux-riscv64@0.25.2':
+ resolution: {integrity: sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==}
engines: {node: '>=18'}
cpu: [riscv64]
os: [linux]
- '@esbuild/linux-s390x@0.24.2':
- resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==}
+ '@esbuild/linux-s390x@0.25.2':
+ resolution: {integrity: sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==}
engines: {node: '>=18'}
cpu: [s390x]
os: [linux]
- '@esbuild/linux-x64@0.24.2':
- resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==}
+ '@esbuild/linux-x64@0.25.2':
+ resolution: {integrity: sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==}
engines: {node: '>=18'}
cpu: [x64]
os: [linux]
- '@esbuild/netbsd-arm64@0.24.2':
- resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==}
+ '@esbuild/netbsd-arm64@0.25.2':
+ resolution: {integrity: sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==}
engines: {node: '>=18'}
cpu: [arm64]
os: [netbsd]
- '@esbuild/netbsd-x64@0.24.2':
- resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==}
+ '@esbuild/netbsd-x64@0.25.2':
+ resolution: {integrity: sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==}
engines: {node: '>=18'}
cpu: [x64]
os: [netbsd]
- '@esbuild/openbsd-arm64@0.24.2':
- resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==}
+ '@esbuild/openbsd-arm64@0.25.2':
+ resolution: {integrity: sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
- '@esbuild/openbsd-x64@0.24.2':
- resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==}
+ '@esbuild/openbsd-x64@0.25.2':
+ resolution: {integrity: sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==}
engines: {node: '>=18'}
cpu: [x64]
os: [openbsd]
- '@esbuild/sunos-x64@0.24.2':
- resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==}
+ '@esbuild/sunos-x64@0.25.2':
+ resolution: {integrity: sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==}
engines: {node: '>=18'}
cpu: [x64]
os: [sunos]
- '@esbuild/win32-arm64@0.24.2':
- resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==}
+ '@esbuild/win32-arm64@0.25.2':
+ resolution: {integrity: sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==}
engines: {node: '>=18'}
cpu: [arm64]
os: [win32]
- '@esbuild/win32-ia32@0.24.2':
- resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==}
+ '@esbuild/win32-ia32@0.25.2':
+ resolution: {integrity: sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==}
engines: {node: '>=18'}
cpu: [ia32]
os: [win32]
- '@esbuild/win32-x64@0.24.2':
- resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==}
+ '@esbuild/win32-x64@0.25.2':
+ resolution: {integrity: sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==}
engines: {node: '>=18'}
cpu: [x64]
os: [win32]
- '@eslint-community/eslint-utils@4.5.1':
- resolution: {integrity: sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==}
+ '@eslint-community/eslint-utils@4.6.1':
+ resolution: {integrity: sha512-KTsJMmobmbrFLe3LDh0PC2FXpcSYJt/MLjlkh/9LEnmKYLSYmT/0EW9JWANjeoemiuZrmogti0tW5Ch+qNUYDw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
@@ -660,8 +660,8 @@ packages:
'@peculiar/asn1-x509@2.3.15':
resolution: {integrity: sha512-0dK5xqTqSLaxv1FHXIcd4Q/BZNuopg+u1l23hT9rOmQ1g4dNtw0g/RnEi+TboB0gOwGtrWn269v27cMgchFIIg==}
- '@react-email/render@1.0.5':
- resolution: {integrity: sha512-CA69HYXPk21HhtAXATIr+9JJwpDNmAFCvdMUjWmeoD1+KhJ9NAxusMRxKNeibdZdslmq3edaeOKGbdQ9qjK8LQ==}
+ '@react-email/render@1.0.6':
+ resolution: {integrity: sha512-zNueW5Wn/4jNC1c5LFgXzbUdv5Lhms+FWjOvWAhal7gx5YVf0q6dPJ0dnR70+ifo59gcMLwCZEaTS9EEuUhKvQ==}
engines: {node: '>=18.0.0'}
peerDependencies:
react: ^18.0 || ^19.0 || ^19.0.0-rc
@@ -898,51 +898,51 @@ packages:
'@types/json-schema@7.0.15':
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
- '@typescript-eslint/eslint-plugin@8.29.1':
- resolution: {integrity: sha512-ba0rr4Wfvg23vERs3eB+P3lfj2E+2g3lhWcCVukUuhtcdUx5lSIFZlGFEBHKr+3zizDa/TvZTptdNHVZWAkSBg==}
+ '@typescript-eslint/eslint-plugin@8.31.0':
+ resolution: {integrity: sha512-evaQJZ/J/S4wisevDvC1KFZkPzRetH8kYZbkgcTRyql3mcKsf+ZFDV1BVWUGTCAW5pQHoqn5gK5b8kn7ou9aFQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
'@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
- '@typescript-eslint/parser@8.29.1':
- resolution: {integrity: sha512-zczrHVEqEaTwh12gWBIJWj8nx+ayDcCJs06yoNMY0kwjMWDM6+kppljY+BxWI06d2Ja+h4+WdufDcwMnnMEWmg==}
+ '@typescript-eslint/parser@8.31.0':
+ resolution: {integrity: sha512-67kYYShjBR0jNI5vsf/c3WG4u+zDnCTHTPqVMQguffaWWFs7artgwKmfwdifl+r6XyM5LYLas/dInj2T0SgJyw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
- '@typescript-eslint/scope-manager@8.29.1':
- resolution: {integrity: sha512-2nggXGX5F3YrsGN08pw4XpMLO1Rgtnn4AzTegC2MDesv6q3QaTU5yU7IbS1tf1IwCR0Hv/1EFygLn9ms6LIpDA==}
+ '@typescript-eslint/scope-manager@8.31.0':
+ resolution: {integrity: sha512-knO8UyF78Nt8O/B64i7TlGXod69ko7z6vJD9uhSlm0qkAbGeRUSudcm0+K/4CrRjrpiHfBCjMWlc08Vav1xwcw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/type-utils@8.29.1':
- resolution: {integrity: sha512-DkDUSDwZVCYN71xA4wzySqqcZsHKic53A4BLqmrWFFpOpNSoxX233lwGu/2135ymTCR04PoKiEEEvN1gFYg4Tw==}
+ '@typescript-eslint/type-utils@8.31.0':
+ resolution: {integrity: sha512-DJ1N1GdjI7IS7uRlzJuEDCgDQix3ZVYVtgeWEyhyn4iaoitpMBX6Ndd488mXSx0xah/cONAkEaYyylDyAeHMHg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
- '@typescript-eslint/types@8.29.1':
- resolution: {integrity: sha512-VT7T1PuJF1hpYC3AGm2rCgJBjHL3nc+A/bhOp9sGMKfi5v0WufsX/sHCFBfNTx2F+zA6qBc/PD0/kLRLjdt8mQ==}
+ '@typescript-eslint/types@8.31.0':
+ resolution: {integrity: sha512-Ch8oSjVyYyJxPQk8pMiP2FFGYatqXQfQIaMp+TpuuLlDachRWpUAeEu1u9B/v/8LToehUIWyiKcA/w5hUFRKuQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/typescript-estree@8.29.1':
- resolution: {integrity: sha512-l1enRoSaUkQxOQnbi0KPUtqeZkSiFlqrx9/3ns2rEDhGKfTa+88RmXqedC1zmVTOWrLc2e6DEJrTA51C9iLH5g==}
+ '@typescript-eslint/typescript-estree@8.31.0':
+ resolution: {integrity: sha512-xLmgn4Yl46xi6aDSZ9KkyfhhtnYI15/CvHbpOy/eR5NWhK/BK8wc709KKwhAR0m4ZKRP7h07bm4BWUYOCuRpQQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <5.9.0'
- '@typescript-eslint/utils@8.29.1':
- resolution: {integrity: sha512-QAkFEbytSaB8wnmB+DflhUPz6CLbFWE2SnSCrRMEa+KnXIzDYbpsn++1HGvnfAsUY44doDXmvRkO5shlM/3UfA==}
+ '@typescript-eslint/utils@8.31.0':
+ resolution: {integrity: sha512-qi6uPLt9cjTFxAb1zGNgTob4x9ur7xC6mHQJ8GwEzGMGE9tYniublmJaowOJ9V2jUzxrltTPfdG2nKlWsq0+Ww==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.9.0'
- '@typescript-eslint/visitor-keys@8.29.1':
- resolution: {integrity: sha512-RGLh5CRaUEf02viP5c1Vh1cMGffQscyHe7HPAzGpfmfflFg1wUz2rYxd+OZqwpeypYvZ8UxSxuIpF++fmOzEcg==}
+ '@typescript-eslint/visitor-keys@8.31.0':
+ resolution: {integrity: sha512-QcGHmlRHWOl93o64ZUMNewCdwKGU6WItOU52H0djgNmn1EOrhVudrDzXz4OycCRSCPwFCDrE2iIt5vmuUdHxuQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
abort-controller@3.0.0:
@@ -1074,8 +1074,8 @@ packages:
defu@6.1.4:
resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
- detect-libc@2.0.3:
- resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==}
+ detect-libc@2.0.4:
+ resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==}
engines: {node: '>=8'}
dom-serializer@2.0.0:
@@ -1095,8 +1095,8 @@ packages:
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
engines: {node: '>=0.12'}
- esbuild@0.24.2:
- resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==}
+ esbuild@0.25.2:
+ resolution: {integrity: sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==}
engines: {node: '>=18'}
hasBin: true
@@ -1154,8 +1154,8 @@ packages:
resolution: {integrity: sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==}
engines: {node: '>=6'}
- exsolve@1.0.4:
- resolution: {integrity: sha512-xsZH6PXaER4XoV+NiT7JHp1bJodJVT+cxeSH1G0f0tlT0lJqYuHUP3bUx2HtfTDvOagMINYp8rsqusxud3RXhw==}
+ exsolve@1.0.5:
+ resolution: {integrity: sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==}
fast-deep-equal@2.0.1:
resolution: {integrity: sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==}
@@ -1233,8 +1233,8 @@ packages:
resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
engines: {node: '>=8'}
- hono@4.7.6:
- resolution: {integrity: sha512-564rVzELU+9BRqqx5k8sT2NFwGD3I3Vifdb6P7CmM6FiarOSY+fDC+6B+k9wcCb86ReoayteZP2ki0cRLN1jbw==}
+ hono@4.7.7:
+ resolution: {integrity: sha512-2PCpQRbN87Crty8/L/7akZN3UyZIAopSoRxCwRbJgUuV1+MHNFHzYFxZTg4v/03cXUm+jce/qa2VSBZpKBm3Qw==}
engines: {node: '>=16.9.0'}
html-to-text@9.0.5:
@@ -1347,8 +1347,8 @@ packages:
mimetext@3.0.27:
resolution: {integrity: sha512-mUhWAsZD1N/K6dbN4+a5Yq78OPnYQw1ubOSMasBntsLQ2S7KVNlvDEA8dwpr4a7PszWMzeslKahAprtwYMgaBA==}
- miniflare@4.20250409.0:
- resolution: {integrity: sha512-Hu02dYZvFR+MyrI57O6rSrOUTofcO9EIvcodgq2SAHzAeWSJw2E0oq9lylOrcckFwPMcwxUAb/cQN1LIoCyySw==}
+ miniflare@4.20250422.0:
+ resolution: {integrity: sha512-3frXK9EZEWQkHMDyppeIbUKwd7OQkNOm2gBtQQzjQ4gtzQmh+yxkyJiiylf+fGbz86djQTLKKQdQ1FC4yM3AMg==}
engines: {node: '>=18.0.0'}
hasBin: true
@@ -1436,8 +1436,8 @@ packages:
resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
engines: {node: '>= 0.8.0'}
- prettier@3.4.2:
- resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==}
+ prettier@3.5.3:
+ resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==}
engines: {node: '>=14'}
hasBin: true
@@ -1473,8 +1473,8 @@ packages:
regenerator-runtime@0.14.1:
resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
- resend@4.2.0:
- resolution: {integrity: sha512-s6ogU+BBYH1H6Zl926cpddtLRAJWeFv5cIKcuHLWk1QYhFTbpFJlhqx31pnN2f0CB075KFSrc1Xf6HG690wzuw==}
+ resend@4.4.0:
+ resolution: {integrity: sha512-SmVI3JCpgPNt4/m3Uy403LjoSeeleUE2X+KwPYQZcw+jiBCFsqL6vdf1r/XuQ7yOjvxYmlI8GD/oIWonFF9t9w==}
engines: {node: '>=18'}
resolve-from@4.0.0:
@@ -1568,8 +1568,8 @@ packages:
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
engines: {node: '>= 0.8.0'}
- typescript-eslint@8.29.1:
- resolution: {integrity: sha512-f8cDkvndhbQMPcysk6CUSGBWV+g1utqdn71P5YKwMumVMOG/5k7cHq0KyG4O52nB0oKS4aN2Tp5+wB4APJGC+w==}
+ typescript-eslint@8.31.0:
+ resolution: {integrity: sha512-u+93F0sB0An8WEAPtwxVhFby573E8ckdjwUUQUj9QA4v8JAvgtoDdIyYR3XFwFHq2W1KJ1AurwJCO+w+Y1ixyQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
@@ -1612,20 +1612,20 @@ packages:
resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
engines: {node: '>=0.10.0'}
- worker-mailer@1.1.1:
- resolution: {integrity: sha512-UPPd48aBMVuAE2j9ha7wDEhBakM23zKBk8wd9lLUhChExPeq8B8cO6C1ur4hMOypmJO7mZ+xTZff1KoCKprvGA==}
+ worker-mailer@1.1.3:
+ resolution: {integrity: sha512-8jkbf843tAV9KMWQESrduMt6LKolYXJ9rmWO0W8ZM3CW0Mb+qaVaktXhqvAo7cLvYnYSxYBS8oJl0pgr75XipQ==}
- workerd@1.20250409.0:
- resolution: {integrity: sha512-hqjX9swiHvrkOI3jlH9lrZsZRRv9lddUwcMe8Ua76jnyQz+brybWznNjHu8U5oswwcrFwvky1A4CcLjcLY31gQ==}
+ workerd@1.20250422.0:
+ resolution: {integrity: sha512-q3ws6MIa9GJQqq1Q52qoD7vCx1203fjKNPmtRV1vvplrsfYphjr5pOAnZGUODFB1BnsDWypr71Luy7OonT0vug==}
engines: {node: '>=16'}
hasBin: true
- wrangler@4.10.0:
- resolution: {integrity: sha512-fTE4hZ79msEUt8+HEjl/8Q72haCyzPLu4PgrU3L81ysmjrMEdiYfUPqnvCkBUVtJvrDNdctTEimkufT1Y0ipNg==}
+ wrangler@4.13.0:
+ resolution: {integrity: sha512-CVRNL0unLmzhVeUkW+9neZHFITSo7UDROz8VYxi8YhitV9Rr1xMojS1cGjQTaQX8F3nAEsTRJXTwwTZ0JoJm6g==}
engines: {node: '>=18.0.0'}
hasBin: true
peerDependencies:
- '@cloudflare/workers-types': ^4.20250409.0
+ '@cloudflare/workers-types': ^4.20250422.0
peerDependenciesMeta:
'@cloudflare/workers-types':
optional: true
@@ -2143,114 +2143,114 @@ snapshots:
dependencies:
mime: 3.0.0
- '@cloudflare/unenv-preset@2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250409.0)':
+ '@cloudflare/unenv-preset@2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250422.0)':
dependencies:
unenv: 2.0.0-rc.15
optionalDependencies:
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
- '@cloudflare/workerd-darwin-64@1.20250409.0':
+ '@cloudflare/workerd-darwin-64@1.20250422.0':
optional: true
- '@cloudflare/workerd-darwin-arm64@1.20250409.0':
+ '@cloudflare/workerd-darwin-arm64@1.20250422.0':
optional: true
- '@cloudflare/workerd-linux-64@1.20250409.0':
+ '@cloudflare/workerd-linux-64@1.20250422.0':
optional: true
- '@cloudflare/workerd-linux-arm64@1.20250409.0':
+ '@cloudflare/workerd-linux-arm64@1.20250422.0':
optional: true
- '@cloudflare/workerd-windows-64@1.20250409.0':
+ '@cloudflare/workerd-windows-64@1.20250422.0':
optional: true
- '@cloudflare/workers-types@4.20250412.0': {}
+ '@cloudflare/workers-types@4.20250423.0': {}
'@cspotcode/source-map-support@0.8.1':
dependencies:
'@jridgewell/trace-mapping': 0.3.9
- '@emnapi/runtime@1.4.1':
+ '@emnapi/runtime@1.4.3':
dependencies:
tslib: 2.8.1
optional: true
- '@esbuild/aix-ppc64@0.24.2':
+ '@esbuild/aix-ppc64@0.25.2':
optional: true
- '@esbuild/android-arm64@0.24.2':
+ '@esbuild/android-arm64@0.25.2':
optional: true
- '@esbuild/android-arm@0.24.2':
+ '@esbuild/android-arm@0.25.2':
optional: true
- '@esbuild/android-x64@0.24.2':
+ '@esbuild/android-x64@0.25.2':
optional: true
- '@esbuild/darwin-arm64@0.24.2':
+ '@esbuild/darwin-arm64@0.25.2':
optional: true
- '@esbuild/darwin-x64@0.24.2':
+ '@esbuild/darwin-x64@0.25.2':
optional: true
- '@esbuild/freebsd-arm64@0.24.2':
+ '@esbuild/freebsd-arm64@0.25.2':
optional: true
- '@esbuild/freebsd-x64@0.24.2':
+ '@esbuild/freebsd-x64@0.25.2':
optional: true
- '@esbuild/linux-arm64@0.24.2':
+ '@esbuild/linux-arm64@0.25.2':
optional: true
- '@esbuild/linux-arm@0.24.2':
+ '@esbuild/linux-arm@0.25.2':
optional: true
- '@esbuild/linux-ia32@0.24.2':
+ '@esbuild/linux-ia32@0.25.2':
optional: true
- '@esbuild/linux-loong64@0.24.2':
+ '@esbuild/linux-loong64@0.25.2':
optional: true
- '@esbuild/linux-mips64el@0.24.2':
+ '@esbuild/linux-mips64el@0.25.2':
optional: true
- '@esbuild/linux-ppc64@0.24.2':
+ '@esbuild/linux-ppc64@0.25.2':
optional: true
- '@esbuild/linux-riscv64@0.24.2':
+ '@esbuild/linux-riscv64@0.25.2':
optional: true
- '@esbuild/linux-s390x@0.24.2':
+ '@esbuild/linux-s390x@0.25.2':
optional: true
- '@esbuild/linux-x64@0.24.2':
+ '@esbuild/linux-x64@0.25.2':
optional: true
- '@esbuild/netbsd-arm64@0.24.2':
+ '@esbuild/netbsd-arm64@0.25.2':
optional: true
- '@esbuild/netbsd-x64@0.24.2':
+ '@esbuild/netbsd-x64@0.25.2':
optional: true
- '@esbuild/openbsd-arm64@0.24.2':
+ '@esbuild/openbsd-arm64@0.25.2':
optional: true
- '@esbuild/openbsd-x64@0.24.2':
+ '@esbuild/openbsd-x64@0.25.2':
optional: true
- '@esbuild/sunos-x64@0.24.2':
+ '@esbuild/sunos-x64@0.25.2':
optional: true
- '@esbuild/win32-arm64@0.24.2':
+ '@esbuild/win32-arm64@0.25.2':
optional: true
- '@esbuild/win32-ia32@0.24.2':
+ '@esbuild/win32-ia32@0.25.2':
optional: true
- '@esbuild/win32-x64@0.24.2':
+ '@esbuild/win32-x64@0.25.2':
optional: true
- '@eslint-community/eslint-utils@4.5.1(eslint@9.18.0)':
+ '@eslint-community/eslint-utils@4.6.1(eslint@9.18.0)':
dependencies:
eslint: 9.18.0
eslint-visitor-keys: 3.4.3
@@ -2379,7 +2379,7 @@ snapshots:
'@img/sharp-wasm32@0.33.5':
dependencies:
- '@emnapi/runtime': 1.4.1
+ '@emnapi/runtime': 1.4.3
optional: true
'@img/sharp-win32-ia32@0.33.5':
@@ -2452,10 +2452,10 @@ snapshots:
pvtsutils: 1.3.6
tslib: 2.8.1
- '@react-email/render@1.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ '@react-email/render@1.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
html-to-text: 9.0.5
- prettier: 3.4.2
+ prettier: 3.5.3
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
react-promise-suspense: 0.3.4
@@ -2818,14 +2818,14 @@ snapshots:
'@types/json-schema@7.0.15': {}
- '@typescript-eslint/eslint-plugin@8.29.1(@typescript-eslint/parser@8.29.1(eslint@9.18.0)(typescript@5.4.5))(eslint@9.18.0)(typescript@5.4.5)':
+ '@typescript-eslint/eslint-plugin@8.31.0(@typescript-eslint/parser@8.31.0(eslint@9.18.0)(typescript@5.4.5))(eslint@9.18.0)(typescript@5.4.5)':
dependencies:
'@eslint-community/regexpp': 4.12.1
- '@typescript-eslint/parser': 8.29.1(eslint@9.18.0)(typescript@5.4.5)
- '@typescript-eslint/scope-manager': 8.29.1
- '@typescript-eslint/type-utils': 8.29.1(eslint@9.18.0)(typescript@5.4.5)
- '@typescript-eslint/utils': 8.29.1(eslint@9.18.0)(typescript@5.4.5)
- '@typescript-eslint/visitor-keys': 8.29.1
+ '@typescript-eslint/parser': 8.31.0(eslint@9.18.0)(typescript@5.4.5)
+ '@typescript-eslint/scope-manager': 8.31.0
+ '@typescript-eslint/type-utils': 8.31.0(eslint@9.18.0)(typescript@5.4.5)
+ '@typescript-eslint/utils': 8.31.0(eslint@9.18.0)(typescript@5.4.5)
+ '@typescript-eslint/visitor-keys': 8.31.0
eslint: 9.18.0
graphemer: 1.4.0
ignore: 5.3.2
@@ -2835,27 +2835,27 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.29.1(eslint@9.18.0)(typescript@5.4.5)':
+ '@typescript-eslint/parser@8.31.0(eslint@9.18.0)(typescript@5.4.5)':
dependencies:
- '@typescript-eslint/scope-manager': 8.29.1
- '@typescript-eslint/types': 8.29.1
- '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.4.5)
- '@typescript-eslint/visitor-keys': 8.29.1
+ '@typescript-eslint/scope-manager': 8.31.0
+ '@typescript-eslint/types': 8.31.0
+ '@typescript-eslint/typescript-estree': 8.31.0(typescript@5.4.5)
+ '@typescript-eslint/visitor-keys': 8.31.0
debug: 4.4.0
eslint: 9.18.0
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/scope-manager@8.29.1':
+ '@typescript-eslint/scope-manager@8.31.0':
dependencies:
- '@typescript-eslint/types': 8.29.1
- '@typescript-eslint/visitor-keys': 8.29.1
+ '@typescript-eslint/types': 8.31.0
+ '@typescript-eslint/visitor-keys': 8.31.0
- '@typescript-eslint/type-utils@8.29.1(eslint@9.18.0)(typescript@5.4.5)':
+ '@typescript-eslint/type-utils@8.31.0(eslint@9.18.0)(typescript@5.4.5)':
dependencies:
- '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.4.5)
- '@typescript-eslint/utils': 8.29.1(eslint@9.18.0)(typescript@5.4.5)
+ '@typescript-eslint/typescript-estree': 8.31.0(typescript@5.4.5)
+ '@typescript-eslint/utils': 8.31.0(eslint@9.18.0)(typescript@5.4.5)
debug: 4.4.0
eslint: 9.18.0
ts-api-utils: 2.1.0(typescript@5.4.5)
@@ -2863,12 +2863,12 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/types@8.29.1': {}
+ '@typescript-eslint/types@8.31.0': {}
- '@typescript-eslint/typescript-estree@8.29.1(typescript@5.4.5)':
+ '@typescript-eslint/typescript-estree@8.31.0(typescript@5.4.5)':
dependencies:
- '@typescript-eslint/types': 8.29.1
- '@typescript-eslint/visitor-keys': 8.29.1
+ '@typescript-eslint/types': 8.31.0
+ '@typescript-eslint/visitor-keys': 8.31.0
debug: 4.4.0
fast-glob: 3.3.3
is-glob: 4.0.3
@@ -2879,20 +2879,20 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/utils@8.29.1(eslint@9.18.0)(typescript@5.4.5)':
+ '@typescript-eslint/utils@8.31.0(eslint@9.18.0)(typescript@5.4.5)':
dependencies:
- '@eslint-community/eslint-utils': 4.5.1(eslint@9.18.0)
- '@typescript-eslint/scope-manager': 8.29.1
- '@typescript-eslint/types': 8.29.1
- '@typescript-eslint/typescript-estree': 8.29.1(typescript@5.4.5)
+ '@eslint-community/eslint-utils': 4.6.1(eslint@9.18.0)
+ '@typescript-eslint/scope-manager': 8.31.0
+ '@typescript-eslint/types': 8.31.0
+ '@typescript-eslint/typescript-estree': 8.31.0(typescript@5.4.5)
eslint: 9.18.0
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/visitor-keys@8.29.1':
+ '@typescript-eslint/visitor-keys@8.31.0':
dependencies:
- '@typescript-eslint/types': 8.29.1
+ '@typescript-eslint/types': 8.31.0
eslint-visitor-keys: 4.2.0
abort-controller@3.0.0:
@@ -3015,7 +3015,7 @@ snapshots:
defu@6.1.4: {}
- detect-libc@2.0.3:
+ detect-libc@2.0.4:
optional: true
dom-serializer@2.0.0:
@@ -3038,33 +3038,33 @@ snapshots:
entities@4.5.0: {}
- esbuild@0.24.2:
+ esbuild@0.25.2:
optionalDependencies:
- '@esbuild/aix-ppc64': 0.24.2
- '@esbuild/android-arm': 0.24.2
- '@esbuild/android-arm64': 0.24.2
- '@esbuild/android-x64': 0.24.2
- '@esbuild/darwin-arm64': 0.24.2
- '@esbuild/darwin-x64': 0.24.2
- '@esbuild/freebsd-arm64': 0.24.2
- '@esbuild/freebsd-x64': 0.24.2
- '@esbuild/linux-arm': 0.24.2
- '@esbuild/linux-arm64': 0.24.2
- '@esbuild/linux-ia32': 0.24.2
- '@esbuild/linux-loong64': 0.24.2
- '@esbuild/linux-mips64el': 0.24.2
- '@esbuild/linux-ppc64': 0.24.2
- '@esbuild/linux-riscv64': 0.24.2
- '@esbuild/linux-s390x': 0.24.2
- '@esbuild/linux-x64': 0.24.2
- '@esbuild/netbsd-arm64': 0.24.2
- '@esbuild/netbsd-x64': 0.24.2
- '@esbuild/openbsd-arm64': 0.24.2
- '@esbuild/openbsd-x64': 0.24.2
- '@esbuild/sunos-x64': 0.24.2
- '@esbuild/win32-arm64': 0.24.2
- '@esbuild/win32-ia32': 0.24.2
- '@esbuild/win32-x64': 0.24.2
+ '@esbuild/aix-ppc64': 0.25.2
+ '@esbuild/android-arm': 0.25.2
+ '@esbuild/android-arm64': 0.25.2
+ '@esbuild/android-x64': 0.25.2
+ '@esbuild/darwin-arm64': 0.25.2
+ '@esbuild/darwin-x64': 0.25.2
+ '@esbuild/freebsd-arm64': 0.25.2
+ '@esbuild/freebsd-x64': 0.25.2
+ '@esbuild/linux-arm': 0.25.2
+ '@esbuild/linux-arm64': 0.25.2
+ '@esbuild/linux-ia32': 0.25.2
+ '@esbuild/linux-loong64': 0.25.2
+ '@esbuild/linux-mips64el': 0.25.2
+ '@esbuild/linux-ppc64': 0.25.2
+ '@esbuild/linux-riscv64': 0.25.2
+ '@esbuild/linux-s390x': 0.25.2
+ '@esbuild/linux-x64': 0.25.2
+ '@esbuild/netbsd-arm64': 0.25.2
+ '@esbuild/netbsd-x64': 0.25.2
+ '@esbuild/openbsd-arm64': 0.25.2
+ '@esbuild/openbsd-x64': 0.25.2
+ '@esbuild/sunos-x64': 0.25.2
+ '@esbuild/win32-arm64': 0.25.2
+ '@esbuild/win32-ia32': 0.25.2
+ '@esbuild/win32-x64': 0.25.2
escape-string-regexp@4.0.0: {}
@@ -3079,7 +3079,7 @@ snapshots:
eslint@9.18.0:
dependencies:
- '@eslint-community/eslint-utils': 4.5.1(eslint@9.18.0)
+ '@eslint-community/eslint-utils': 4.6.1(eslint@9.18.0)
'@eslint-community/regexpp': 4.12.1
'@eslint/config-array': 0.19.2
'@eslint/core': 0.10.0
@@ -3138,7 +3138,7 @@ snapshots:
exit-hook@2.2.1: {}
- exsolve@1.0.4: {}
+ exsolve@1.0.5: {}
fast-deep-equal@2.0.1: {}
@@ -3210,7 +3210,7 @@ snapshots:
has-flag@4.0.0: {}
- hono@4.7.6: {}
+ hono@4.7.7: {}
html-to-text@9.0.5:
dependencies:
@@ -3314,7 +3314,7 @@ snapshots:
js-base64: 3.7.7
mime-types: 2.1.35
- miniflare@4.20250409.0:
+ miniflare@4.20250422.0:
dependencies:
'@cspotcode/source-map-support': 0.8.1
acorn: 8.14.0
@@ -3323,7 +3323,7 @@ snapshots:
glob-to-regexp: 0.4.1
stoppable: 1.1.0
undici: 5.29.0
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
ws: 8.18.0
youch: 3.3.4
zod: 3.22.3
@@ -3397,7 +3397,7 @@ snapshots:
prelude-ls@1.2.1: {}
- prettier@3.4.2: {}
+ prettier@3.5.3: {}
printable-characters@1.0.42: {}
@@ -3427,9 +3427,9 @@ snapshots:
regenerator-runtime@0.14.1: {}
- resend@4.2.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+ resend@4.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
dependencies:
- '@react-email/render': 1.0.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@react-email/render': 1.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
transitivePeerDependencies:
- react
- react-dom
@@ -3461,7 +3461,7 @@ snapshots:
sharp@0.33.5:
dependencies:
color: 4.2.3
- detect-libc: 2.0.3
+ detect-libc: 2.0.4
semver: 7.7.1
optionalDependencies:
'@img/sharp-darwin-arm64': 0.33.5
@@ -3543,11 +3543,11 @@ snapshots:
dependencies:
prelude-ls: 1.2.1
- typescript-eslint@8.29.1(eslint@9.18.0)(typescript@5.4.5):
+ typescript-eslint@8.31.0(eslint@9.18.0)(typescript@5.4.5):
dependencies:
- '@typescript-eslint/eslint-plugin': 8.29.1(@typescript-eslint/parser@8.29.1(eslint@9.18.0)(typescript@5.4.5))(eslint@9.18.0)(typescript@5.4.5)
- '@typescript-eslint/parser': 8.29.1(eslint@9.18.0)(typescript@5.4.5)
- '@typescript-eslint/utils': 8.29.1(eslint@9.18.0)(typescript@5.4.5)
+ '@typescript-eslint/eslint-plugin': 8.31.0(@typescript-eslint/parser@8.31.0(eslint@9.18.0)(typescript@5.4.5))(eslint@9.18.0)(typescript@5.4.5)
+ '@typescript-eslint/parser': 8.31.0(eslint@9.18.0)(typescript@5.4.5)
+ '@typescript-eslint/utils': 8.31.0(eslint@9.18.0)(typescript@5.4.5)
eslint: 9.18.0
typescript: 5.4.5
transitivePeerDependencies:
@@ -3564,7 +3564,7 @@ snapshots:
unenv@2.0.0-rc.15:
dependencies:
defu: 6.1.4
- exsolve: 1.0.4
+ exsolve: 1.0.5
ohash: 2.0.11
pathe: 2.0.3
ufo: 1.6.1
@@ -3588,28 +3588,28 @@ snapshots:
word-wrap@1.2.5: {}
- worker-mailer@1.1.1: {}
+ worker-mailer@1.1.3: {}
- workerd@1.20250409.0:
+ workerd@1.20250422.0:
optionalDependencies:
- '@cloudflare/workerd-darwin-64': 1.20250409.0
- '@cloudflare/workerd-darwin-arm64': 1.20250409.0
- '@cloudflare/workerd-linux-64': 1.20250409.0
- '@cloudflare/workerd-linux-arm64': 1.20250409.0
- '@cloudflare/workerd-windows-64': 1.20250409.0
+ '@cloudflare/workerd-darwin-64': 1.20250422.0
+ '@cloudflare/workerd-darwin-arm64': 1.20250422.0
+ '@cloudflare/workerd-linux-64': 1.20250422.0
+ '@cloudflare/workerd-linux-arm64': 1.20250422.0
+ '@cloudflare/workerd-windows-64': 1.20250422.0
- wrangler@4.10.0(@cloudflare/workers-types@4.20250412.0):
+ wrangler@4.13.0(@cloudflare/workers-types@4.20250423.0):
dependencies:
'@cloudflare/kv-asset-handler': 0.4.0
- '@cloudflare/unenv-preset': 2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250409.0)
+ '@cloudflare/unenv-preset': 2.3.1(unenv@2.0.0-rc.15)(workerd@1.20250422.0)
blake3-wasm: 2.1.5
- esbuild: 0.24.2
- miniflare: 4.20250409.0
+ esbuild: 0.25.2
+ miniflare: 4.20250422.0
path-to-regexp: 6.3.0
unenv: 2.0.0-rc.15
- workerd: 1.20250409.0
+ workerd: 1.20250422.0
optionalDependencies:
- '@cloudflare/workers-types': 4.20250412.0
+ '@cloudflare/workers-types': 4.20250423.0
fsevents: 2.3.3
sharp: 0.33.5
transitivePeerDependencies:
diff --git a/worker/src/admin_api/admin_mail_api.ts b/worker/src/admin_api/admin_mail_api.ts
new file mode 100644
index 00000000..ebd040a2
--- /dev/null
+++ b/worker/src/admin_api/admin_mail_api.ts
@@ -0,0 +1,39 @@
+import { Context } from "hono";
+import { HonoCustomType } from "../types";
+import { handleListQuery } from "../common";
+
+export default {
+ getMails: async (c: Context) => {
+ const { address, limit, offset, keyword } = c.req.query();
+ const addressQuery = address ? `address = ?` : "";
+ const addressParams = address ? [address] : [];
+ const keywordQuery = keyword ? `raw like ?` : "";
+ const keywordParams = keyword ? [`%${keyword}%`] : [];
+ const filterQuerys = [addressQuery, keywordQuery].filter((item) => item).join(" and ");
+ const finalQuery = filterQuerys.length > 0 ? `where ${filterQuerys}` : "";
+ const filterParams = [...addressParams, ...keywordParams]
+ return await handleListQuery(c,
+ `SELECT * FROM raw_mails ${finalQuery}`,
+ `SELECT count(*) as count FROM raw_mails ${finalQuery}`,
+ filterParams, limit, offset
+ );
+ },
+ getUnknowMails: async (c: Context) => {
+ const { limit, offset } = c.req.query();
+ return await handleListQuery(c,
+ `SELECT * FROM raw_mails where address NOT IN (select name from address) `,
+ `SELECT count(*) as count FROM raw_mails`
+ + ` where address NOT IN (select name from address) `,
+ [], limit, offset
+ );
+ },
+ deleteMail: async (c: Context) => {
+ const { id } = c.req.param();
+ const { success } = await c.env.DB.prepare(
+ `DELETE FROM raw_mails WHERE id = ? `
+ ).bind(id).run();
+ return c.json({
+ success: success
+ })
+ }
+}
diff --git a/worker/src/admin_api/admin_user_api.ts b/worker/src/admin_api/admin_user_api.ts
index b6903db5..4ea16d4d 100644
--- a/worker/src/admin_api/admin_user_api.ts
+++ b/worker/src/admin_api/admin_user_api.ts
@@ -6,6 +6,7 @@ import { UserSettings, GeoData, UserInfo } from "../models";
import { handleListQuery } from '../common'
import { HonoCustomType } from '../types';
import UserBindAddressModule from '../user_api/bind_address';
+import i18n from '../i18n';
export default {
getSetting: async (c: Context) => {
@@ -90,7 +91,8 @@ export default {
},
deleteUser: async (c: Context) => {
const { user_id } = c.req.param();
- if (!user_id) return c.text("Invalid user_id", 400);
+ const msgs = i18n.getMessagesbyContext(c);
+ if (!user_id) return c.text(msgs.UserNotFoundMsg, 400);
const { success } = await c.env.DB.prepare(
`DELETE FROM users WHERE id = ?`
).bind(user_id).run();
@@ -105,7 +107,8 @@ export default {
resetPassword: async (c: Context) => {
const { user_id } = c.req.param();
const { password } = await c.req.json();
- if (!user_id) return c.text("Invalid user_id", 400);
+ const msgs = i18n.getMessagesbyContext(c);
+ if (!user_id) return c.text(msgs.UserNotFoundMsg, 400);
try {
checkUserPassword(password);
const { success } = await c.env.DB.prepare(
@@ -159,6 +162,9 @@ export default {
},
getBindedAddresses: async (c: Context) => {
const { user_id } = c.req.param();
- return await UserBindAddressModule.getBindedAddressesById(c, user_id);
+ const results = await UserBindAddressModule.getBindedAddressesById(c, user_id);
+ return c.json({
+ results: results,
+ });
},
}
diff --git a/worker/src/admin_api/index.ts b/worker/src/admin_api/index.ts
index 11b7d637..0a1ac140 100644
--- a/worker/src/admin_api/index.ts
+++ b/worker/src/admin_api/index.ts
@@ -12,6 +12,7 @@ import webhook_settings from './webhook_settings'
import mail_webhook_settings from './mail_webhook_settings'
import oauth2_settings from './oauth2_settings'
import worker_config from './worker_config'
+import admin_mail_api from './admin_mail_api'
import { sendMailbyAdmin } from './send_mail'
export const api = new Hono()
@@ -101,54 +102,10 @@ api.get('/admin/show_password/:id', async (c) => {
})
})
-api.get('/admin/mails', async (c) => {
- const { address, limit, offset, keyword } = c.req.query();
- if (address && keyword) {
- return await handleListQuery(c,
- `SELECT * FROM raw_mails where address = ? and raw like ? `,
- `SELECT count(*) as count FROM raw_mails where address = ? and raw like ? `,
- [address, `%${keyword}%`], limit, offset
- );
- } else if (keyword) {
- return await handleListQuery(c,
- `SELECT * FROM raw_mails where raw like ? `,
- `SELECT count(*) as count FROM raw_mails where raw like ? `,
- [`%${keyword}%`], limit, offset
- );
- } else if (address) {
- return await handleListQuery(c,
- `SELECT * FROM raw_mails where address = ? `,
- `SELECT count(*) as count FROM raw_mails where address = ? `,
- [address], limit, offset
- );
- } else {
- return await handleListQuery(c,
- `SELECT * FROM raw_mails `,
- `SELECT count(*) as count FROM raw_mails `,
- [], limit, offset
- );
- }
-});
-
-api.get('/admin/mails_unknow', async (c) => {
- const { limit, offset } = c.req.query();
- return await handleListQuery(c,
- `SELECT * FROM raw_mails where address NOT IN (select name from address) `,
- `SELECT count(*) as count FROM raw_mails`
- + ` where address NOT IN (select name from address) `,
- [], limit, offset
- );
-});
-
-api.delete('/admin/mails/:id', async (c) => {
- const { id } = c.req.param();
- const { success } = await c.env.DB.prepare(
- `DELETE FROM raw_mails WHERE id = ? `
- ).bind(id).run();
- return c.json({
- success: success
- })
-})
+// mail api
+api.get('/admin/mails', admin_mail_api.getMails);
+api.get('/admin/mails_unknow', admin_mail_api.getUnknowMails);
+api.delete('/admin/mails/:id', admin_mail_api.deleteMail)
api.get('/admin/address_sender', async (c) => {
const { address, limit, offset } = c.req.query();
diff --git a/worker/src/constants.ts b/worker/src/constants.ts
index b5144c3d..a16d3e40 100644
--- a/worker/src/constants.ts
+++ b/worker/src/constants.ts
@@ -1,5 +1,5 @@
export const CONSTANTS = {
- VERSION: 'v' + '0.9.1',
+ VERSION: 'v' + '0.10.9',
// DB settings
ADDRESS_BLOCK_LIST_KEY: 'address_block_list',
diff --git a/worker/src/i18n/index.ts b/worker/src/i18n/index.ts
index 1e39887a..7654edfb 100644
--- a/worker/src/i18n/index.ts
+++ b/worker/src/i18n/index.ts
@@ -1,6 +1,8 @@
import { LocaleMessages } from "./type";
import zh from "./zh";
import en from "./en";
+import { HonoCustomType } from "../types";
+import { Context } from "hono";
export default {
getMessages: (
@@ -10,6 +12,17 @@ export default {
if (locale === "en") return en;
if (locale === "zh") return zh;
+ // fallback language
+ return en;
+ },
+ getMessagesbyContext: (
+ c: Context
+ ): LocaleMessages => {
+ const locale = c.get("lang") || c.env.DEFAULT_LANG;
+ // multi-language support
+ if (locale === "en") return en;
+ if (locale === "zh") return zh;
+
// fallback language
return en;
}
diff --git a/worker/src/user_api/bind_address.ts b/worker/src/user_api/bind_address.ts
index a16989a9..c29ff494 100644
--- a/worker/src/user_api/bind_address.ts
+++ b/worker/src/user_api/bind_address.ts
@@ -6,6 +6,7 @@ import { UserSettings } from "../models";
import { getJsonSetting } from "../utils"
import { CONSTANTS } from "../constants";
import { unbindTelegramByAddress } from '../telegram_api/common';
+import i18n from '../i18n';
const UserBindAddressModule = {
bind: async (c: Context) => {
@@ -102,13 +103,30 @@ const UserBindAddressModule = {
},
getBindedAddresses: async (c: Context) => {
const { user_id } = c.get("userPayload");
- return await UserBindAddressModule.getBindedAddressesById(c, user_id);
+ const results = await UserBindAddressModule.getBindedAddressesById(c, user_id);
+ return c.json({
+ results: results,
+ });
+ },
+ getBindedAddressListById: async (
+ c: Context, user_id: number | string
+ ): Promise => {
+ const bindedAddressList = await UserBindAddressModule.getBindedAddressesById(c, user_id);
+ return bindedAddressList.map((item) => item.name);
},
getBindedAddressesById: async (
c: Context, user_id: number | string
- ) => {
+ ): Promise<{
+ id: number;
+ name: string;
+ mail_count: number;
+ send_count: number;
+ created_at: string;
+ updated_at: string;
+ }[]> => {
+ const msgs = i18n.getMessagesbyContext(c);
if (!user_id) {
- return c.text("No user token", 400)
+ throw new Error(msgs.UserNotFoundMsg);
}
// select binded address
const { results } = await c.env.DB.prepare(
@@ -120,10 +138,15 @@ const UserBindAddressModule = {
+ ` ON ua.address_id = a.id `
+ ` WHERE ua.user_id = ?`
+ ` ORDER BY a.id DESC`
- ).bind(user_id).all();
- return c.json({
- results: results,
- })
+ ).bind(user_id).all<{
+ id: number;
+ name: string;
+ mail_count: number;
+ send_count: number;
+ created_at: string;
+ updated_at: string;
+ }>();
+ return results || [];
},
getBindedAddressJwt: async (c: Context) => {
const { address_id } = c.req.param();
@@ -216,7 +239,7 @@ const UserBindAddressModule = {
throw new Error("Failed to create address")
}
// find new address id
- let new_address_id = await c.env.DB.prepare(
+ const new_address_id = await c.env.DB.prepare(
`SELECT id FROM address WHERE name = ?`
).bind(address).first("id");
if (!new_address_id) {
diff --git a/worker/src/user_api/index.ts b/worker/src/user_api/index.ts
index 5eb441c4..115e423c 100644
--- a/worker/src/user_api/index.ts
+++ b/worker/src/user_api/index.ts
@@ -6,6 +6,7 @@ import user from './user';
import bind_address from './bind_address';
import passkey from './passkey';
import oauth2 from './oauth2';
+import user_mail_api from './user_mail_api';
export const api = new Hono();
@@ -13,6 +14,10 @@ export const api = new Hono();
api.get('/user_api/open_settings', settings.openSettings);
api.get('/user_api/settings', settings.settings);
+// mail api
+api.get('/user_api/mails', user_mail_api.getMails);
+api.delete('/user_api/mails/:id', user_mail_api.deleteMail);
+
// user api
api.post('/user_api/login', user.login);
api.post('/user_api/verify_code', user.verifyCode);
diff --git a/worker/src/user_api/user_mail_api.ts b/worker/src/user_api/user_mail_api.ts
new file mode 100644
index 00000000..0f73cd20
--- /dev/null
+++ b/worker/src/user_api/user_mail_api.ts
@@ -0,0 +1,43 @@
+import { Context } from "hono";
+import { handleListQuery } from "../common";
+import { HonoCustomType } from "../types";
+import UserBindAddressModule from "./bind_address";
+
+export default {
+ getMails: async (c: Context) => {
+ const { user_id } = c.get("userPayload");
+ const { address, limit, offset, keyword } = c.req.query();
+ const bindedAddressList = await UserBindAddressModule.getBindedAddressListById(c, user_id);
+ const addressList = address ? bindedAddressList.filter((item) => item == address) : bindedAddressList;
+ const addressQuery = `address IN (${addressList.map(() => "?").join(",")})`;
+ const addressParams = addressList;
+ const keywordQuery = keyword ? `raw like ?` : "";
+ const keywordParams = keyword ? [`%${keyword}%`] : [];
+
+ // user must have at least one binded address to query mails
+ if (addressList.length <= 0) {
+ return c.json({ results: [], count: 0 });
+ }
+
+ const filterQuerys = [addressQuery, keywordQuery].filter((item) => item).join(" and ");
+ const finalQuery = filterQuerys.length > 0 ? `where ${filterQuerys}` : "";
+ const filterParams = [...addressParams, ...keywordParams]
+ return await handleListQuery(c,
+ `SELECT * FROM raw_mails ${finalQuery}`,
+ `SELECT count(*) as count FROM raw_mails ${finalQuery}`,
+ filterParams, limit, offset
+ );
+ },
+ deleteMail: async (c: Context) => {
+ const { id } = c.req.param();
+ const { user_id } = c.get("userPayload");
+ const bindedAddressList = await UserBindAddressModule.getBindedAddressListById(c, user_id);
+ const { success } = await c.env.DB.prepare(
+ `DELETE FROM raw_mails WHERE id = ?`
+ + ` and address IN (${bindedAddressList.map(() => "?").join(",")})`
+ ).bind(id, ...bindedAddressList).run();
+ return c.json({
+ success: success
+ })
+ }
+}