feat: update docs (#569)

This commit is contained in:
Dream Hunter
2025-01-22 23:14:38 +08:00
committed by GitHub
parent 37614ce6fa
commit 095951ab45
21 changed files with 607 additions and 540 deletions

View File

@@ -31,9 +31,9 @@
## [查看部署文档](https://temp-mail-docs.awsl.uk)
[![Deploy to Cloudflare Workers](https://deploy.workers.cloudflare.com/button)](https://deploy.workers.cloudflare.com/?url=https://github.com/dreamhunter2333/cloudflare_temp_email)
[![Deploy to Cloudflare Workers](https://deploy.workers.cloudflare.com/button)](https://temp-mail-docs.awsl.uk/zh/guide/actions/github-action.html)
[Github Action 部署文档](https://temp-mail-docs.awsl.uk/zh/guide/github-action.html)
[Github Action 部署文档](https://temp-mail-docs.awsl.uk/zh/guide/actions/github-action.html)
[English Docs](https://temp-mail-docs.awsl.uk/en/)

View File

@@ -21,7 +21,7 @@
"dependencies": {
"@simplewebauthn/browser": "10.0.0",
"@unhead/vue": "^1.11.18",
"@vueuse/core": "^12.4.0",
"@vueuse/core": "^12.5.0",
"@wangeditor/editor": "^5.1.23",
"@wangeditor/editor-for-vue": "^5.1.12",
"axios": "^1.7.9",
@@ -41,12 +41,12 @@
"@vitejs/plugin-vue": "^5.2.1",
"unplugin-auto-import": "^19.0.0",
"unplugin-vue-components": "^28.0.0",
"vite": "^6.0.7",
"vite": "^6.0.11",
"vite-plugin-pwa": "^0.21.1",
"vite-plugin-top-level-await": "^1.4.4",
"vite-plugin-wasm": "^3.4.1",
"workbox-build": "^7.3.0",
"workbox-window": "^7.3.0",
"wrangler": "^3.103.2"
"wrangler": "^3.104.0"
}
}

188
frontend/pnpm-lock.yaml generated
View File

@@ -15,8 +15,8 @@ importers:
specifier: ^1.11.18
version: 1.11.18(vue@3.5.13(typescript@5.4.5))
'@vueuse/core':
specifier: ^12.4.0
version: 12.4.0(typescript@5.4.5)
specifier: ^12.5.0
version: 12.5.0(typescript@5.4.5)
'@wangeditor/editor':
specifier: ^5.1.23
version: 5.1.23
@@ -62,25 +62,25 @@ importers:
version: 0.13.0
'@vitejs/plugin-vue':
specifier: ^5.2.1
version: 5.2.1(vite@6.0.7(@types/node@22.10.5)(terser@5.37.0))(vue@3.5.13(typescript@5.4.5))
version: 5.2.1(vite@6.0.11(@types/node@22.10.5)(terser@5.37.0))(vue@3.5.13(typescript@5.4.5))
unplugin-auto-import:
specifier: ^19.0.0
version: 19.0.0(@vueuse/core@12.4.0(typescript@5.4.5))(rollup@2.79.2)
version: 19.0.0(@vueuse/core@12.5.0(typescript@5.4.5))(rollup@2.79.2)
unplugin-vue-components:
specifier: ^28.0.0
version: 28.0.0(@babel/parser@7.26.5)(rollup@2.79.2)(vue@3.5.13(typescript@5.4.5))
vite:
specifier: ^6.0.7
version: 6.0.7(@types/node@22.10.5)(terser@5.37.0)
specifier: ^6.0.11
version: 6.0.11(@types/node@22.10.5)(terser@5.37.0)
vite-plugin-pwa:
specifier: ^0.21.1
version: 0.21.1(vite@6.0.7(@types/node@22.10.5)(terser@5.37.0))(workbox-build@7.3.0)(workbox-window@7.3.0)
version: 0.21.1(vite@6.0.11(@types/node@22.10.5)(terser@5.37.0))(workbox-build@7.3.0)(workbox-window@7.3.0)
vite-plugin-top-level-await:
specifier: ^1.4.4
version: 1.4.4(rollup@2.79.2)(vite@6.0.7(@types/node@22.10.5)(terser@5.37.0))
version: 1.4.4(rollup@2.79.2)(vite@6.0.11(@types/node@22.10.5)(terser@5.37.0))
vite-plugin-wasm:
specifier: ^3.4.1
version: 3.4.1(vite@6.0.7(@types/node@22.10.5)(terser@5.37.0))
version: 3.4.1(vite@6.0.11(@types/node@22.10.5)(terser@5.37.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: ^3.103.2
version: 3.103.2
specifier: ^3.104.0
version: 3.104.0
packages:
@@ -1151,68 +1151,68 @@ packages:
'@surma/rollup-plugin-off-main-thread@2.2.3':
resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==}
'@swc/core-darwin-arm64@1.10.8':
resolution: {integrity: sha512-FtacTu9zS5YuepujQqujveNw8BQ8ESJ+pN1Z7C+WrKCHlCl+5dh0n6gMAlEj+3iRvY6UAYqkzTVeiX/bOMoJKA==}
'@swc/core-darwin-arm64@1.10.9':
resolution: {integrity: sha512-XTHLtijFervv2B+i1ngM993umhSj9K1IeMomvU/Db84Asjur2XmD4KXt9QPnGDRFgv2kLSjZ+DDL25Qk0f4r+w==}
engines: {node: '>=10'}
cpu: [arm64]
os: [darwin]
'@swc/core-darwin-x64@1.10.8':
resolution: {integrity: sha512-nfk+iq7EKQwADaCERzZLSi9ovzjJcqDWaO4e2ztyCNaLFi6fP1m6+ij21aki5KAd8AXoY4fue4Mo2fuYbesX9Q==}
'@swc/core-darwin-x64@1.10.9':
resolution: {integrity: sha512-bi3el9/FV/la8HIsolSjeDar+tM7m9AmSF1w7X6ZByW2qgc4Z1tmq0A4M4H9aH3TfHesZbfq8hgaNtc2/VtzzQ==}
engines: {node: '>=10'}
cpu: [x64]
os: [darwin]
'@swc/core-linux-arm-gnueabihf@1.10.8':
resolution: {integrity: sha512-CL2zfbnrEc6nIiWbgshOz0mjn/zY8JcYqO12vGcTxmZOrh0n+mmHN2ejX91pYWQnQDtbhCmFTaEndExFpA7Gww==}
'@swc/core-linux-arm-gnueabihf@1.10.9':
resolution: {integrity: sha512-xsLHV02S+RTDuI+UJBkA2muNk/s0ETRpoc1K/gNt0i8BqTurPYkrvGDDALN9+leiUPydHvZi9P1qdExbgUJnXw==}
engines: {node: '>=10'}
cpu: [arm]
os: [linux]
'@swc/core-linux-arm64-gnu@1.10.8':
resolution: {integrity: sha512-quS8F18DDScW3B7qnbWkz95abZ5p0xp/W8N498NAAls/YQj4jQIlf8WlAWoxVVjY/SmSus5kN5tuwhHD8t0NPw==}
'@swc/core-linux-arm64-gnu@1.10.9':
resolution: {integrity: sha512-41hJgPoGhIa12U6Tud+yLF/m64YA3mGut3TmBEkj2R7rdJdE0mljdtR0tf4J2RoQaWZPPi0DBSqGdROiAEx9dg==}
engines: {node: '>=10'}
cpu: [arm64]
os: [linux]
'@swc/core-linux-arm64-musl@1.10.8':
resolution: {integrity: sha512-wI0Hny8fHbBK/OjJ7eFYP0uDKiCMMMr5OBWGKMRRUvWs2zlGeJQZbwUeCnWuLLXzDfL+feMfh5TieYlqKTTtRw==}
'@swc/core-linux-arm64-musl@1.10.9':
resolution: {integrity: sha512-DUMRhl49b9r7bLg9oNzCdW4lLcDJKrRBn87Iq5APPvixsm1auGnsVQycGkQcDDKvVllxIFSbmCYzjagx3l8Hnw==}
engines: {node: '>=10'}
cpu: [arm64]
os: [linux]
'@swc/core-linux-x64-gnu@1.10.8':
resolution: {integrity: sha512-24FCRUFO8gzPP2eu3soHTm3lk+ktcsIhdM2DTOlXGA+2TBYFWgAZX/yZV+eeRrtIZYSr4OcOWsNWnQ5Ma4budA==}
'@swc/core-linux-x64-gnu@1.10.9':
resolution: {integrity: sha512-xW0y88vQvmzYo3Gn7yFnY03TfHMwuca4aFH3ZmhwDNOYHmTOi6fmhAkg/13F/NrwjMYO+GnF5uJTjdjb3B6tdQ==}
engines: {node: '>=10'}
cpu: [x64]
os: [linux]
'@swc/core-linux-x64-musl@1.10.8':
resolution: {integrity: sha512-mBo7M/FmUhoWpUG17MLbS98iRA7t6ThxQBWDJZd322whkN1GqrvumYm2wvvjmoMTeDOPwAL3hIIa5H+Q4vb1zA==}
'@swc/core-linux-x64-musl@1.10.9':
resolution: {integrity: sha512-jYs32BEx+CPVuxN6NdsWEpdehjnmAag25jyJzwjQx+NCGYwHEV3bT5y8TX4eFhaVB1rafmqJOlYQPs4+MSyGCg==}
engines: {node: '>=10'}
cpu: [x64]
os: [linux]
'@swc/core-win32-arm64-msvc@1.10.8':
resolution: {integrity: sha512-rXJ9y77JZZXoZkgFR0mObKa3TethRBJ6Exs/pwhScl9pz4qsfxhj/bQbEu1g1i/ihmd0l+IKZwGSC7Ibh3HA2Q==}
'@swc/core-win32-arm64-msvc@1.10.9':
resolution: {integrity: sha512-Uhh5T3Fq3Nyom96Bm3ACBNASH3iqNc76in7ewZz8PooUqeTIO8aZpsghnncjctRNE9T819/8btpiFIhHo3sKtg==}
engines: {node: '>=10'}
cpu: [arm64]
os: [win32]
'@swc/core-win32-ia32-msvc@1.10.8':
resolution: {integrity: sha512-n6ekYFJEBPvTpRIqJiu6EHXVzVnuCtDTpFnn/0KVGJI1yQHriGVEovnb/+qyLh8Rwx2AZM9qgZVgMhVtfcFQJg==}
'@swc/core-win32-ia32-msvc@1.10.9':
resolution: {integrity: sha512-bD5BpbojEsDfrAvT+1qjQPf5RCKLg4UL+3Uwm019+ZR02hd8qO538BlOnQdOqRqccu+75DF6aRglQ7AJ24Cs0Q==}
engines: {node: '>=10'}
cpu: [ia32]
os: [win32]
'@swc/core-win32-x64-msvc@1.10.8':
resolution: {integrity: sha512-vplXxtH/lFc/epELnAyvdCvqlDJrM+OKtkphYcbPqq50g/dEZYZ8FYHU5Df9Uo19UooWSo1LaxPk4R7n6i1Axw==}
'@swc/core-win32-x64-msvc@1.10.9':
resolution: {integrity: sha512-NwkuUNeBBQnAaXVvcGw8Zr6RR8kylyjFUnlYZZ3G0QkQZ4rYLXYTafAmiRjrfzgVb0LcMF/sBzJvGOk7SwtIDg==}
engines: {node: '>=10'}
cpu: [x64]
os: [win32]
'@swc/core@1.10.8':
resolution: {integrity: sha512-I3G+n9qbHNu6KNraaAG1+Z1S1x5S7MGRA6OEppT8Pt3Z9uD5a/kYAGU33eXy7zY+BoKuKA2X1H0r4vSimAgU8w==}
'@swc/core@1.10.9':
resolution: {integrity: sha512-MQ97YSXu2oibzm7wi4GNa7hhndjLuVt/lmO2sq53+P37oZmyg/JQ/IYYtSiC6UGK3+cHoiVAykrK+glxLjJbag==}
engines: {node: '>=10'}
peerDependencies:
'@swc/helpers': '*'
@@ -1335,14 +1335,14 @@ packages:
'@vue/shared@3.5.13':
resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==}
'@vueuse/core@12.4.0':
resolution: {integrity: sha512-XnjQYcJwCsyXyIafyA6SvyN/OBtfPnjvJmbxNxQjCcyWD198urwm5TYvIUUyAxEAN0K7HJggOgT15cOlWFyLeA==}
'@vueuse/core@12.5.0':
resolution: {integrity: sha512-GVyH1iYqNANwcahAx8JBm6awaNgvR/SwZ1fjr10b8l1HIgDp82ngNbfzJUgOgWEoxjL+URAggnlilAEXwCOZtg==}
'@vueuse/metadata@12.4.0':
resolution: {integrity: sha512-AhPuHs/qtYrKHUlEoNO6zCXufu8OgbR8S/n2oMw1OQuBQJ3+HOLQ+EpvXs+feOlZMa0p8QVvDWNlmcJJY8rW2g==}
'@vueuse/metadata@12.5.0':
resolution: {integrity: sha512-Ui7Lo2a7AxrMAXRF+fAp9QsXuwTeeZ8fIB9wsLHqzq9MQk+2gMYE2IGJW48VMJ8ecvCB3z3GsGLKLbSasQ5Qlg==}
'@vueuse/shared@12.4.0':
resolution: {integrity: sha512-9yLgbHVIF12OSCojnjTIoZL1+UA10+O4E1aD6Hpfo/DKVm5o3SZIwz6CupqGy3+IcKI8d6Jnl26EQj/YucnW0Q==}
'@vueuse/shared@12.5.0':
resolution: {integrity: sha512-vMpcL1lStUU6O+kdj6YdHDixh0odjPAUM15uJ9f7MY781jcYkIwFA4iv2EfoIPO6vBmvutI1HxxAwmf0cx5ISQ==}
'@wangeditor/basic-modules@1.1.7':
resolution: {integrity: sha512-cY9CPkLJaqF05STqfpZKWG4LpxTMeGSIIF1fHvfm/mz+JXatCagjdkbxdikOuKYlxDdeqvOeBmsUBItufDLXZg==}
@@ -1677,8 +1677,8 @@ packages:
engines: {node: '>=0.10.0'}
hasBin: true
electron-to-chromium@1.5.83:
resolution: {integrity: sha512-LcUDPqSt+V0QmI47XLzZrz5OqILSMGsPFkDYus22rIbgorSvBYEFqq854ltTmUdHkY92FSdAAvsh4jWEULMdfQ==}
electron-to-chromium@1.5.84:
resolution: {integrity: sha512-I+DQ8xgafao9Ha6y0qjHHvpZ9OfyA1qKlkHkjywxzniORU2awxyz7f/iVJcULmrF2yrM3nHQf+iDjJtbbexd/g==}
entities@4.5.0:
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
@@ -1784,8 +1784,8 @@ packages:
fast-json-stable-stringify@2.1.0:
resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
fast-uri@3.0.5:
resolution: {integrity: sha512-5JnBCWpFlMo0a3ciDy/JckMzzv1U9coZrIhedq+HXxxUfDTAiS0LA8OKVao4G9BxmCVck/jtA5r3KAtRWEyD8Q==}
fast-uri@3.0.6:
resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==}
fastq@1.18.0:
resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==}
@@ -2667,8 +2667,8 @@ packages:
resolution: {integrity: sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==}
engines: {node: '>=14.0'}
unenv-nightly@2.0.0-20250109-100802-88ad671:
resolution: {integrity: sha512-Uij6gODNNNNsNBoDlnaMvZI99I6YlVJLRfYH8AOLMlbFrW7k2w872v9VLuIdch2vF8QBeSC4EftIh5sG4ibzdA==}
unenv@2.0.0-rc.0:
resolution: {integrity: sha512-H0kl2w8jFL/FAk0xvjVing4bS3jd//mbg1QChDnn58l9Sc5RtduaKmLAL8n+eBw5jJo8ZjYV7CrEGage5LAOZQ==}
unhead@1.11.18:
resolution: {integrity: sha512-TWgGUoZMpYe2yJwY6jZ0/9kpQT18ygr2h5lI6cUXdfD9UzDc0ytM9jGaleSYkj9guJWXkk7izYBnzJvxl8mRvQ==}
@@ -2777,8 +2777,8 @@ packages:
peerDependencies:
vite: ^2 || ^3 || ^4 || ^5 || ^6
vite@6.0.7:
resolution: {integrity: sha512-RDt8r/7qx9940f8FcOIAH9PTViRrghKaK2K1jY3RaAURrEUbm9Du1mJ72G+jlhtG3WwodnfzY8ORQZbBavZEAQ==}
vite@6.0.11:
resolution: {integrity: sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==}
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
hasBin: true
peerDependencies:
@@ -2931,8 +2931,8 @@ packages:
engines: {node: '>=16'}
hasBin: true
wrangler@3.103.2:
resolution: {integrity: sha512-eYcnubPhPBU1QMZYTam+vfCLpaQx+x1EWA6nFbLhid1eqNDAk1dNwNlbo+ZryrOHDEX3XlOxn2Z3Fx8vVv3hKw==}
wrangler@3.104.0:
resolution: {integrity: sha512-txxgkKZwPQrX1PDgY+ATWnnx4GSeNxUrnBumudWPRmXG0JdLzCf09R+723slMMT1m+CKQXU1KvuUHc/GxTnTyA==}
engines: {node: '>=16.17.0'}
hasBin: true
peerDependencies:
@@ -3984,51 +3984,51 @@ snapshots:
magic-string: 0.25.9
string.prototype.matchall: 4.0.12
'@swc/core-darwin-arm64@1.10.8':
'@swc/core-darwin-arm64@1.10.9':
optional: true
'@swc/core-darwin-x64@1.10.8':
'@swc/core-darwin-x64@1.10.9':
optional: true
'@swc/core-linux-arm-gnueabihf@1.10.8':
'@swc/core-linux-arm-gnueabihf@1.10.9':
optional: true
'@swc/core-linux-arm64-gnu@1.10.8':
'@swc/core-linux-arm64-gnu@1.10.9':
optional: true
'@swc/core-linux-arm64-musl@1.10.8':
'@swc/core-linux-arm64-musl@1.10.9':
optional: true
'@swc/core-linux-x64-gnu@1.10.8':
'@swc/core-linux-x64-gnu@1.10.9':
optional: true
'@swc/core-linux-x64-musl@1.10.8':
'@swc/core-linux-x64-musl@1.10.9':
optional: true
'@swc/core-win32-arm64-msvc@1.10.8':
'@swc/core-win32-arm64-msvc@1.10.9':
optional: true
'@swc/core-win32-ia32-msvc@1.10.8':
'@swc/core-win32-ia32-msvc@1.10.9':
optional: true
'@swc/core-win32-x64-msvc@1.10.8':
'@swc/core-win32-x64-msvc@1.10.9':
optional: true
'@swc/core@1.10.8':
'@swc/core@1.10.9':
dependencies:
'@swc/counter': 0.1.3
'@swc/types': 0.1.17
optionalDependencies:
'@swc/core-darwin-arm64': 1.10.8
'@swc/core-darwin-x64': 1.10.8
'@swc/core-linux-arm-gnueabihf': 1.10.8
'@swc/core-linux-arm64-gnu': 1.10.8
'@swc/core-linux-arm64-musl': 1.10.8
'@swc/core-linux-x64-gnu': 1.10.8
'@swc/core-linux-x64-musl': 1.10.8
'@swc/core-win32-arm64-msvc': 1.10.8
'@swc/core-win32-ia32-msvc': 1.10.8
'@swc/core-win32-x64-msvc': 1.10.8
'@swc/core-darwin-arm64': 1.10.9
'@swc/core-darwin-x64': 1.10.9
'@swc/core-linux-arm-gnueabihf': 1.10.9
'@swc/core-linux-arm64-gnu': 1.10.9
'@swc/core-linux-arm64-musl': 1.10.9
'@swc/core-linux-x64-gnu': 1.10.9
'@swc/core-linux-x64-musl': 1.10.9
'@swc/core-win32-arm64-msvc': 1.10.9
'@swc/core-win32-ia32-msvc': 1.10.9
'@swc/core-win32-x64-msvc': 1.10.9
'@swc/counter@0.1.3': {}
@@ -4119,9 +4119,9 @@ snapshots:
'@vicons/material@0.13.0': {}
'@vitejs/plugin-vue@5.2.1(vite@6.0.7(@types/node@22.10.5)(terser@5.37.0))(vue@3.5.13(typescript@5.4.5))':
'@vitejs/plugin-vue@5.2.1(vite@6.0.11(@types/node@22.10.5)(terser@5.37.0))(vue@3.5.13(typescript@5.4.5))':
dependencies:
vite: 6.0.7(@types/node@22.10.5)(terser@5.37.0)
vite: 6.0.11(@types/node@22.10.5)(terser@5.37.0)
vue: 3.5.13(typescript@5.4.5)
'@vue/compiler-core@3.5.13':
@@ -4180,18 +4180,18 @@ snapshots:
'@vue/shared@3.5.13': {}
'@vueuse/core@12.4.0(typescript@5.4.5)':
'@vueuse/core@12.5.0(typescript@5.4.5)':
dependencies:
'@types/web-bluetooth': 0.0.20
'@vueuse/metadata': 12.4.0
'@vueuse/shared': 12.4.0(typescript@5.4.5)
'@vueuse/metadata': 12.5.0
'@vueuse/shared': 12.5.0(typescript@5.4.5)
vue: 3.5.13(typescript@5.4.5)
transitivePeerDependencies:
- typescript
'@vueuse/metadata@12.4.0': {}
'@vueuse/metadata@12.5.0': {}
'@vueuse/shared@12.4.0(typescript@5.4.5)':
'@vueuse/shared@12.5.0(typescript@5.4.5)':
dependencies:
vue: 3.5.13(typescript@5.4.5)
transitivePeerDependencies:
@@ -4314,7 +4314,7 @@ snapshots:
ajv@8.17.1:
dependencies:
fast-deep-equal: 3.1.3
fast-uri: 3.0.5
fast-uri: 3.0.6
json-schema-traverse: 1.0.0
require-from-string: 2.0.2
@@ -4412,7 +4412,7 @@ snapshots:
browserslist@4.24.4:
dependencies:
caniuse-lite: 1.0.30001695
electron-to-chromium: 1.5.83
electron-to-chromium: 1.5.84
node-releases: 2.0.19
update-browserslist-db: 1.1.2(browserslist@4.24.4)
@@ -4577,7 +4577,7 @@ snapshots:
dependencies:
jake: 10.9.2
electron-to-chromium@1.5.83: {}
electron-to-chromium@1.5.84: {}
entities@4.5.0: {}
@@ -4777,7 +4777,7 @@ snapshots:
fast-json-stable-stringify@2.1.0: {}
fast-uri@3.0.5: {}
fast-uri@3.0.6: {}
fastq@1.18.0:
dependencies:
@@ -5739,7 +5739,7 @@ snapshots:
dependencies:
'@fastify/busboy': 2.1.1
unenv-nightly@2.0.0-20250109-100802-88ad671:
unenv@2.0.0-rc.0:
dependencies:
defu: 6.1.4
mlly: 1.7.4
@@ -5790,7 +5790,7 @@ snapshots:
universalify@2.0.1: {}
unplugin-auto-import@19.0.0(@vueuse/core@12.4.0(typescript@5.4.5))(rollup@2.79.2):
unplugin-auto-import@19.0.0(@vueuse/core@12.5.0(typescript@5.4.5))(rollup@2.79.2):
dependencies:
'@antfu/utils': 0.7.10
'@rollup/pluginutils': 5.1.4(rollup@2.79.2)
@@ -5800,7 +5800,7 @@ snapshots:
unimport: 3.14.6(rollup@2.79.2)
unplugin: 2.1.2
optionalDependencies:
'@vueuse/core': 12.4.0(typescript@5.4.5)
'@vueuse/core': 12.5.0(typescript@5.4.5)
transitivePeerDependencies:
- rollup
@@ -5850,32 +5850,32 @@ snapshots:
evtd: 0.2.4
vue: 3.5.13(typescript@5.4.5)
vite-plugin-pwa@0.21.1(vite@6.0.7(@types/node@22.10.5)(terser@5.37.0))(workbox-build@7.3.0)(workbox-window@7.3.0):
vite-plugin-pwa@0.21.1(vite@6.0.11(@types/node@22.10.5)(terser@5.37.0))(workbox-build@7.3.0)(workbox-window@7.3.0):
dependencies:
debug: 4.4.0
pretty-bytes: 6.1.1
tinyglobby: 0.2.10
vite: 6.0.7(@types/node@22.10.5)(terser@5.37.0)
vite: 6.0.11(@types/node@22.10.5)(terser@5.37.0)
workbox-build: 7.3.0
workbox-window: 7.3.0
transitivePeerDependencies:
- supports-color
vite-plugin-top-level-await@1.4.4(rollup@2.79.2)(vite@6.0.7(@types/node@22.10.5)(terser@5.37.0)):
vite-plugin-top-level-await@1.4.4(rollup@2.79.2)(vite@6.0.11(@types/node@22.10.5)(terser@5.37.0)):
dependencies:
'@rollup/plugin-virtual': 3.0.2(rollup@2.79.2)
'@swc/core': 1.10.8
'@swc/core': 1.10.9
uuid: 10.0.0
vite: 6.0.7(@types/node@22.10.5)(terser@5.37.0)
vite: 6.0.11(@types/node@22.10.5)(terser@5.37.0)
transitivePeerDependencies:
- '@swc/helpers'
- rollup
vite-plugin-wasm@3.4.1(vite@6.0.7(@types/node@22.10.5)(terser@5.37.0)):
vite-plugin-wasm@3.4.1(vite@6.0.11(@types/node@22.10.5)(terser@5.37.0)):
dependencies:
vite: 6.0.7(@types/node@22.10.5)(terser@5.37.0)
vite: 6.0.11(@types/node@22.10.5)(terser@5.37.0)
vite@6.0.7(@types/node@22.10.5)(terser@5.37.0):
vite@6.0.11(@types/node@22.10.5)(terser@5.37.0):
dependencies:
esbuild: 0.24.2
postcss: 8.5.1
@@ -6100,7 +6100,7 @@ snapshots:
'@cloudflare/workerd-linux-arm64': 1.20241230.0
'@cloudflare/workerd-windows-64': 1.20241230.0
wrangler@3.103.2:
wrangler@3.104.0:
dependencies:
'@cloudflare/kv-asset-handler': 0.3.4
'@esbuild-plugins/node-globals-polyfill': 0.2.3(esbuild@0.17.19)
@@ -6109,7 +6109,7 @@ snapshots:
esbuild: 0.17.19
miniflare: 3.20241230.2
path-to-regexp: 6.3.0
unenv: unenv-nightly@2.0.0-20250109-100802-88ad671
unenv: 2.0.0-rc.0
workerd: 1.20241230.0
optionalDependencies:
fsevents: 2.3.3

View File

@@ -11,6 +11,6 @@
"author": "",
"license": "ISC",
"devDependencies": {
"wrangler": "^3.103.2"
"wrangler": "^3.104.0"
}
}

View File

@@ -119,15 +119,20 @@ function sidebarGuide(): DefaultTheme.SidebarItem[] {
},
{
text: '通过 Github Actions 部署',
collapsed: false,
collapsed: true,
items: [
{ text: '通过 Github Actions 部署', link: 'github-action' },
{ text: 'D1 数据库', link: 'actions/d1' },
{ text: 'Github Actions 配置', link: 'actions/github-action' },
{ text: '配置邮件转发', link: 'email-routing.md' },
{ text: '配置发送邮件', link: 'config-send-mail' },
{ text: '自动更新配置', link: 'actions/auto-update' },
]
},
{
text: '常见问题',
text: '通用',
collapsed: false,
items: [
{ text: 'worker变量说明', link: 'worker-vars' },
{ text: '常见问题', link: 'common-issues' },
]
},

View File

@@ -77,13 +77,13 @@ compatibility_flags = [ "nodejs_compat" ]
# TITLE = "Custom Title" # The title of the site
PREFIX = "tmp" # The mailbox name prefix to be processed
# (min, max) length of the adderss, if not set, the default is (1, 30)
# MIN_ADDRESS_LEN = 1
# MAX_ADDRESS_LEN = 30
# ANNOUNCEMENT = "Custom Announcement"
# address check REGEX, if not set, will not check
# ADDRESS_CHECK_REGEX = "^(?!.*admin).*"
# address name replace REGEX, if not set, the default is [^a-z0-9]
# ADDRESS_REGEX = "[^a-z0-9]"
# MIN_ADDRESS_LEN = 1
# MAX_ADDRESS_LEN = 30
# If you want your site to be private, uncomment below and change your password
# PASSWORDS = ["123", "456"]
# admin console password, if not configured, access to the console is not allowed

View File

@@ -0,0 +1,10 @@
# Github Actions 部署如何配置自动更新
::: warning 注意
有问题请通过 `Github Issues` 反馈,感谢。
自动更新不会执行 D1 数据库的 sql 文件,当数据库 schema 变动时,需要手动执行。
:::
1. 打开仓库的 `Actions` 页面,找到 `Upstream Sync`,点击 `enable workflow` 启用 `workflow`
2. 如果 `Upstream Sync` 运行失败,到仓库主页点击 `Sync` 手动同步即可
3. 修改 `Upstream Sync``schedule` 配置可自定义更新间隔,参考 [cron 表达式](https://crontab.guru/)

View File

@@ -0,0 +1,3 @@
# 初始化/更新 D1 数据库
参考 [命令行更新 d1](/zh/guide/cli/d1) 或者 [用户界面更新 d1](/zh/guide/ui/d1)

View File

@@ -1,16 +1,13 @@
# 通过 Github Actions 部署
::: warning 注意
目前只支持 worker 和 pages 的部署D1 数据库以及 Email 部分请参考 [UI/CLI 部署](/)
目前只支持 worker 和 pages 的部署。
有问题请通过 `Github Issues` 反馈,感谢。
自动更新不会执行 sql 文件,需要手动执行。
:::
[![Deploy to Cloudflare Workers](https://deploy.workers.cloudflare.com/button)](https://deploy.workers.cloudflare.com/?url=https://github.com/dreamhunter2333/cloudflare_temp_email)
## 部署步骤
1. 点击按钮 fork 本仓库 或者直接 fork 本仓库
1. 在 GitHub fork 本仓库
2. 打开仓库的 `Actions` 页面,找到 `Deploy Backend Production``Deploy Frontend`,点击 `enable workflow` 启用 `workflow`

View File

@@ -22,6 +22,9 @@ wrangler kv:namespace create DEV
## 修改 `wrangler.toml` 配置文件
> [!NOTE] 注意
> 更多变量的配置请查看 [worker变量说明](/zh/guide/worker-vars)
```toml
name = "cloudflare_temp_email"
main = "src/worker.ts"
@@ -43,94 +46,20 @@ compatibility_flags = [ "nodejs_compat" ]
# ]
[vars]
# TITLE = "Custom Title" # 自定义网站标题
PREFIX = "tmp" # 要处理的邮箱名称前缀,不需要后缀可配置为空字符串
# (min, max) adderss的长度如果不设置默认为(1, 30)
# ANNOUNCEMENT = "Custom Announcement" # 自定义公告
# address name 的正则表达式, 只用于检查,符合条件将通过检查
# ADDRESS_CHECK_REGEX = "^(?!.*admin).*"
# address name 替换非法符号的正则表达式, 不在其中的符号将被替换,如果不设置,默认为 [^a-z0-9], 需谨慎使用, 有些符号可能导致无法收件
# ADDRESS_REGEX = "[^a-z0-9]"
# MIN_ADDRESS_LEN = 1
# MAX_ADDRESS_LEN = 30
# 如果你想要你的网站私有,取消下面的注释,并修改密码
# PASSWORDS = ["123", "456"]
# 邮箱名称前缀,不需要后缀可配置为空字符串或者不配置
PREFIX = "tmp"
# 用于临时邮箱的所有域名, 支持多个域名
DOMAINS = ["xxx.xxx1" , "xxx.xxx2"]
# 用于生成 jwt 的密钥, jwt 用于给用户登录以及鉴权
JWT_SECRET = "xxx"
# admin 控制台密码, 不配置则不允许访问控制台
# ADMIN_PASSWORDS = ["123", "456"]
# 警告: 管理员控制台没有密码或用户检查
# DISABLE_ADMIN_PASSWORD_CHECK = false
# admin 联系方式,不配置则不显示,可配置任意字符串
# ADMIN_CONTACT = "xx@xx.xxx"
# DEFAULT_DOMAINS = ["xxx.xxx1" , "xxx.xxx2"] # 默认用户可用的域名(未登录或未分配角色的用户)
DOMAINS = ["xxx.xxx1" , "xxx.xxx2"] # 你的域名, 支持多个域名
# 对于中文域名,可以使用 DOMAIN_LABELS 显示域名的中文展示名称
# DOMAIN_LABELS = ["中文.xxx", "xxx.xxx2"]
# 新用户默认角色, 仅在启用邮件验证时有效
# USER_DEFAULT_ROLE = "vip"
# admin 角色配置, 如果用户角色等于 ADMIN_USER_ROLE 则可以访问 admin 控制台
# ADMIN_USER_ROLE = "admin" # the role which can access admin panel
# 用户角色配置, 如果 domains 为空将使用 default_domains
# 如果 prefix 为 null 将使用默认前缀, 如果 prefix 为空字符串将不使用前缀
# USER_ROLES = [
# { domains = ["xxx.xxx1" , "xxx.xxx2"], role = "vip", prefix = "vip" },
# { domains = ["xxx.xxx1" , "xxx.xxx2"], role = "admin", prefix = "" },
# ]
JWT_SECRET = "xxx" # 用于生成 jwt 的密钥, jwt 用于给用户登录以及鉴权
BLACK_LIST = "" # 黑名单,用于过滤发件人,逗号分隔
# 是否允许用户创建邮件, 不配置则不允许
ENABLE_USER_CREATE_EMAIL = true
# 禁用匿名用户创建邮箱,如果设置为 true则用户只能在登录后创建邮箱地址
# DISABLE_ANONYMOUS_USER_CREATE_EMAIL = true
# 允许用户删除邮件, 不配置则不允许
ENABLE_USER_DELETE_EMAIL = true
# 允许自动回复邮件
ENABLE_AUTO_REPLY = false
# 是否启用 webhook
# ENABLE_WEBHOOK = true
# 前端界面页脚文本
# COPYRIGHT = "Dream Hunter"
# DISABLE_SHOW_GITHUB = true # 是否显示 GitHub 链接
# 默认发送邮件余额,如果不设置,将为 0
# DEFAULT_SEND_BALANCE = 1
# NO_LIMIT_SEND_ROLE = "vip" # 可以无限发送邮件的角色
# Turnstile 人机验证配置
# CF_TURNSTILE_SITE_KEY = ""
# CF_TURNSTILE_SECRET_KEY = ""
# telegram bot 最多绑定邮箱数量
# TG_MAX_ADDRESS = 5
# telegram BOT_INFO预定义的 BOT_INFO 可以降低 webhook 的延迟
# TG_BOT_INFO = "{}"
# 全局转发地址列表,如果不配置则不启用,启用后所有邮件都会转发到列表中的地址
# FORWARD_ADDRESS_LIST = ["xxx@xxx.com"]
# 前端地址,用于发送 webhook 的邮件 url
# FRONTEND_URL = "https://xxxx.xxx"
# 是否启用垃圾邮件检查,默认任何一项存在配置且不通过则被判定为垃圾邮件
# ENABLE_CHECK_JUNK_MAIL = false
# 垃圾邮件检查配置, 任何一项 存在 且 不通过 则被判定为垃圾邮件
# JUNK_MAIL_CHECK_LIST = = ["spf", "dkim", "dmarc"]
# 垃圾邮件检查配置, 任何一项 不存在 或者 不通过 则被判定为垃圾邮件
# JUNK_MAIL_FORCE_PASS_LIST = ["spf", "dkim", "dmarc"]
# 如果附件大小超过 2MB则删除附件邮件可能由于解析而丢失一些信息
# REMOVE_EXCEED_SIZE_ATTACHMENT = true
# 移除所有附件,邮件可能由于解析而丢失一些信息
# REMOVE_ALL_ATTACHMENT = true
# 是否开启其他 worker 处理邮件
# ENABLE_ANOTHER_WORKER = false
# 其他 worker 处理邮件的配置,可以配置多个其他 worker。
# 通过关键词筛选,调用对应绑定的 worker 的方法(默认方法名为 rpcEmail
# keywords必填否则 worker 将不会被触发
#ANOTHER_WORKER_LIST ="""
#[
# {
# "binding":"AUTH_INBOX",
# "method":"rpcEmail",
# "keywords":[
# "验证码","激活码","激活链接","确认链接","验证邮箱","确认邮件","账号激活","邮件验证","账户确认","安全码","认证码","安全验证","登陆码","确认码","启用账户","激活账户","账号验证","注册确认",
# "account","activation","verify","verification","activate","confirmation","email","code","validate","registration","login","code","expire","confirm"
# ]
# }
#]
#"""
# D1 数据库的名称和 ID 可以在 cloudflare 控制台查看
[[d1_databases]]

View File

@@ -1,13 +1,16 @@
# 快速开始
- 良好的网络环境
- cloudflare 账号
## 开始之前
打开 [cloudflare控制台](https://dash.cloudflare.com/)
需要 `良好的网络环境``cloudflare 账号` 打开 [cloudflare控制台](https://dash.cloudflare.com/)
查看通过 [命令行部署](/zh/guide/cli/pre-requisite) 或者 [用户界面部署](/zh/guide/ui/d1)
选择下面三种方式之一进行部署
## 网友提供的详细的小白教程
- [通过命令行部署](/zh/guide/cli/pre-requisite)
- [通过用户界面部署](/zh/guide/ui/d1)
- [通过Github Actions 部署](/zh/guide/actions/github-action)
### 也可以参考网友提供的详细的小白教程
- [【教程】小白也能看懂的自建Cloudflare临时邮箱教程域名邮箱](https://linux.do/t/topic/316819/1)
@@ -22,14 +25,18 @@
然后参考下面的文档使用 `CLI` 或者 `UI` 覆盖部署之前的 `worker``pages` 即可
CLI 部署
### CLI 部署
- [命令行更新 d1](/zh/guide/cli/d1)
- [命令行部署 worker](/zh/guide/cli/worker)
- [命令行部署 pages](/zh/guide/cli/worker)
UI 部署
### UI 部署
- [用户界面更新 d1](/zh/guide/ui/d1)
- [用户界面部署 worker](/zh/guide/ui/worker)
- [用户界面部署 pages](/zh/guide/ui/pages)
### Github Actions 部署
- [Github Actions 部署如何配置自动更新](/zh/guide/actions/auto-update)

View File

@@ -35,7 +35,10 @@
![worker-var](/ui_install/worker-var.png)
7. 以下是 `Settings` -> `Variables`必须配置的变量列表
7. 以下是 `Settings` -> `Variables`建议配置的变量列表
> [!NOTE] 注意
> 更多变量的配置请查看 [worker变量说明](/zh/guide/worker-vars)
| 变量名 | 说明 | 示例 |
| -------------------------- | ------------------------------------------ | ------------------------------------ |
@@ -78,3 +81,8 @@
> 如果不需要 Telegram Bot, 可跳过此步骤
请先创建一个 Telegram Bot然后获取 `token`,然后执行下面的命令,将 `token` 添加到 `Variables` 中, Name: `TELEGRAM_BOT_TOKEN`
12. 如果你想要使用 admin 页面中的定时任务清理邮件,需要到 `Settings` -> `Triggers` -> `Cron Triggers` 中添加定时任务.
> [!NOTE]
> 选择 `cron` 表达式,输入 `0 0 * * *`(此表达式表示每天午夜运行),点击 `Add` 增加。请根据您的需求调整此表达式。

View File

@@ -0,0 +1,126 @@
# Worker 变量说明
## 必填变量
| 变量名 | 类型 | 说明 | 示例 |
| -------------------------- | ----------- | ------------------------------------------ | ------------------------------------ |
| `DOMAINS` | JSON | 用于临时邮箱的所有域名, 支持多个域名 | `["awsl.uk", "dreamhunter2333.xyz"]` |
| `JWT_SECRET` | 文本/Secret | 用于生成 jwt 的密钥, jwt 用于登录以及鉴权 | `xxx` |
| `ADMIN_PASSWORDS` | JSON | admin 控制台密码, 不配置则不允许访问控制台 | `["123", "456"]` |
| `ENABLE_USER_CREATE_EMAIL` | 文本/JSON | 是否允许用户创建邮箱, 不配置则不允许 | `true` |
| `ENABLE_USER_DELETE_EMAIL` | 文本/JSON | 是否允许用户删除邮件, 不配置则不允许 | `true` |
## 后台相关变量
| 变量名 | 类型 | 说明 | 示例 |
| ------------------------------ | --------- | ------------------------------------ | ---------------- |
| `PASSWORDS` | JSON | 网站私有密码, 配置后需要密码才能访问 | `["123", "456"]` |
| `DISABLE_ADMIN_PASSWORD_CHECK` | 文本/JSON | 警告: 管理员控制台没有密码或用户检查 | `false` |
## 邮箱相关变量
| 变量名 | 类型 | 说明 | 示例 |
| ---------------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- |
| `PREFIX` | 文本 | 要处理的邮箱名称前缀,不需要后缀可不配置 | `tmp` |
| `MIN_ADDRESS_LEN` | 数字 | address 的最小长度 | `1` |
| `MAX_ADDRESS_LEN` | 数字 | address 的最大长度 | `30` |
| `ADDRESS_CHECK_REGEX` | 文本 | address name 的正则表达式, 只用于检查 | `^(?!.*admin).*` |
| `ADDRESS_REGEX` | 文本 | address name 替换非法符号的正则表达式, 不在其中的符号将被替换,如果不设置,默认为 [^a-z0-9], 需谨慎使用, 有些符号可能导致无法收件 | `[^a-z0-9]` |
| `DEFAULT_DOMAINS` | JSON | 默认用户可用的域名(未登录或未分配角色的用户) | `["awsl.uk", "dreamhunter2333.xyz"]` |
| `DOMAIN_LABELS` | JSON | 对于中文域名,可以使用 DOMAIN_LABELS 显示域名的中文展示名称 | `["中文.awsl.uk", "dreamhunter2333.xyz"]` |
| `ENABLE_AUTO_REPLY` | 文本/JSON | 允许自动回复邮件 | `true` |
| `DEFAULT_SEND_BALANCE` | 文本/JSON | 默认发送邮件余额,如果不设置,将为 0 | `1` |
## 接受邮件相关变量
| 变量名 | 类型 | 说明 | 示例 |
| ------------------------------- | --------- | -------------------------------------------------------------------------- | -------------------------- |
| `BLACK_LIST` | 文本 | 黑名单,用于过滤发件人,逗号分隔 | `gov.cn,edu.cn` |
| `ENABLE_CHECK_JUNK_MAIL` | 文本/JSON | 是否启用垃圾邮件检查,配合下列两个列表使用 | `false` |
| `JUNK_MAIL_CHECK_LIST` | JSON | 垃圾邮件检查配置, 任何一项 `存在``不通过` 则被判定为垃圾邮件 | `["spf", "dkim", "dmarc"]` |
| `JUNK_MAIL_FORCE_PASS_LIST` | JSON | 垃圾邮件检查配置, 任何一项 `不存在` 或者 `不通过` 则被判定为垃圾邮件 | `["spf", "dkim", "dmarc"]` |
| `FORWARD_ADDRESS_LIST` | JSON | 全局转发地址列表,如果不配置则不启用,启用后所有邮件都会转发到列表中的地址 | `["xxx@xxx.com"]` |
| `REMOVE_EXCEED_SIZE_ATTACHMENT` | 文本/JSON | 如果附件大小超过 2MB则删除附件邮件可能由于解析而丢失一些信息 | `true` |
| `REMOVE_ALL_ATTACHMENT` | 文本/JSON | 移除所有附件,邮件可能由于解析而丢失一些信息 | `true` |
> [!NOTE]
> 移除附件功能需要解析邮件,免费版 CPU 有限,可能会导致大邮件解析超时
>
> 如果你想解析邮件能力更强
>
> 参考 [配置 worker 使用 wasm 解析邮件](/zh/guide/feature/mail_parser_wasm_worker)
## webhook 相关变量
| 变量名 | 类型 | 说明 | 示例 |
| ---------------- | --------- | ------------------------------------- | ------------------ |
| `ENABLE_WEBHOOK` | 文本/JSON | 是否启用 webhook | `true` |
| `FRONTEND_URL` | 文本 | 前端地址,用于发送 webhook 的邮件 url | `https://xxxx.xxx` |
> [!NOTE]
> webhook 功能需要解析邮件,免费版 CPU 有限,可能会导致大邮件解析超时
>
> 如果你想解析邮件能力更强
>
> 参考 [配置 worker 使用 wasm 解析邮件](/zh/guide/feature/mail_parser_wasm_worker)
## 用户相关变量
| 变量名 | 类型 | 说明 | 示例 |
| ------------------------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `USER_DEFAULT_ROLE` | 文本 | 新用户默认角色, 仅在启用邮件验证时有效 | `vip` |
| `ADMIN_USER_ROLE` | 文本 | admin 角色配置, 如果用户角色等于 ADMIN_USER_ROLE 则可以访问 admin 控制台 | `admin` |
| `USER_ROLES` | JSON | - 用户角色配置, 如果 `domains` 为空将使用 `DEFAULT_DOMAINS` <br/> - 如果 prefix 为 null 将使用默认前缀, 如果 prefix 为空字符串将不使用前缀 | `[{ domains = ["awsl.uk", "dreamhunter2333.xyz"], role = "vip", prefix = "vip" }, { domains = ["awsl.uk", "dreamhunter2333.xyz"], role = "admin", prefix = "" }]` |
| `DISABLE_ANONYMOUS_USER_CREATE_EMAIL` | 文本/JSON | 禁用匿名用户创建邮箱,如果设置为 true则用户只能在登录后创建邮箱地址 | `true` |
| `NO_LIMIT_SEND_ROLE` | 文本 | 可以无限发送邮件的角色 | `vip` |
## 网页相关变量
| 变量名 | 类型 | 说明 | 示例 |
| ------------------------- | ----------- | ------------------------------------------------ | --------------------- |
| `TITLE` | 文本 | 自定义前端页面网站标题,支持 html | `Custom Title` |
| `ANNOUNCEMENT` | 文本 | 自定义前端页面公告,支持 html | `Custom Announcement` |
| `COPYRIGHT` | 文本 | 自定义前端界面页脚文本,支持 html | `Dream Hunter` |
| `ADMIN_CONTACT` | 文本 | admin 联系方式,可配置任意字符串, 不配置则不显示 | `xxx@gmail.com` |
| `DISABLE_SHOW_GITHUB` | 文本/JSON | 是否显示 GitHub 链接 | `true` |
| `CF_TURNSTILE_SITE_KEY` | 文本/Secret | Turnstile 人机验证配置 | `xxx` |
| `CF_TURNSTILE_SECRET_KEY` | 文本/Secret | Turnstile 人机验证配置 | `xxx` |
## Telegram Bot 相关变量
| 变量名 | 类型 | 说明 | 示例 |
| ---------------- | ---- | ---------------------------------------------------------------------- | ---- |
| `TG_MAX_ADDRESS` | 数字 | telegram bot 最多绑定邮箱数量 | `5` |
| `TG_BOT_INFO` | 文本 | 可不配置telegram BOT_INFO预定义的 BOT_INFO 可以降低 webhook 的延迟 | `{}` |
> [!NOTE]
> Telegram 功能需要解析邮件,免费版 CPU 有限,可能会导致大邮件解析超时
>
> 如果你想解析邮件能力更强
>
> 参考 [配置 worker 使用 wasm 解析邮件](/zh/guide/feature/mail_parser_wasm_worker)
## 其他变量
| 变量名 | 类型 | 说明 | 示例 |
| ----------------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
| `ENABLE_ANOTHER_WORKER` | 文本/JSON | 是否开启其他 worker 处理邮件 | `false` |
| `ANOTHER_WORKER_LIST` | JSON | - 其他 worker 处理邮件的配置,可以配置多个其他 worker <br/> - 通过关键词筛选,调用对应绑定的 worker 的方法(默认方法名为 rpcEmail<br/> - keywords必填否则 worker 将不会被触发 | 见下方 |
> [!NOTE]
> `ANOTHER_WORKER_LIST` 的配置示例
>
> ```toml
> #ANOTHER_WORKER_LIST ="""
> #[
> # {
> # "binding":"AUTH_INBOX",
> # "method":"rpcEmail",
> # "keywords":[
> # "验证码","激活码","激活链接","确认链接","验证邮箱","确认邮件","账号激活","邮件验证","账户确认","安全码","认证码","安全验证","登陆码","确认码","启用账户","激活账户","账号验证","注册确认",
> # "account","activation","verify","verification","activate","confirmation","email","code","validate","registration","login","code","expire","confirm"
> # ]
> # }
> #]
> #
> ```

View File

@@ -5,8 +5,8 @@
"type": "module",
"devDependencies": {
"@types/node": "^22.10.7",
"vitepress": "^1.5.0",
"wrangler": "^3.103.2"
"vitepress": "^1.6.2",
"wrangler": "^3.104.0"
},
"scripts": {
"dev": "vitepress dev docs",

View File

@@ -16,84 +16,84 @@ importers:
specifier: ^22.10.7
version: 22.10.7
vitepress:
specifier: ^1.5.0
version: 1.5.0(@algolia/client-search@5.19.0)(@types/node@22.10.7)(postcss@8.5.1)(search-insights@2.13.0)(typescript@5.4.5)
specifier: ^1.6.2
version: 1.6.2(@algolia/client-search@5.20.0)(@types/node@22.10.7)(postcss@8.5.1)(search-insights@2.13.0)(typescript@5.4.5)
wrangler:
specifier: ^3.103.2
version: 3.103.2
specifier: ^3.104.0
version: 3.104.0
packages:
'@algolia/autocomplete-core@1.17.7':
resolution: {integrity: sha512-BjiPOW6ks90UKl7TwMv7oNQMnzU+t/wk9mgIDi6b1tXpUek7MW0lbNOUHpvam9pe3lVCf4xPFT+lK7s+e+fs7Q==}
'@algolia/autocomplete-core@1.17.9':
resolution: {integrity: sha512-O7BxrpLDPJWWHv/DLA9DRFWs+iY1uOJZkqUwjS5HSZAGcl0hIVCQ97LTLewiZmZ402JYUrun+8NqFP+hCknlbQ==}
'@algolia/autocomplete-plugin-algolia-insights@1.17.7':
resolution: {integrity: sha512-Jca5Ude6yUOuyzjnz57og7Et3aXjbwCSDf/8onLHSQgw1qW3ALl9mrMWaXb5FmPVkV3EtkD2F/+NkT6VHyPu9A==}
'@algolia/autocomplete-plugin-algolia-insights@1.17.9':
resolution: {integrity: sha512-u1fEHkCbWF92DBeB/KHeMacsjsoI0wFhjZtlCq2ddZbAehshbZST6Hs0Avkc0s+4UyBGbMDnSuXHLuvRWK5iDQ==}
peerDependencies:
search-insights: '>= 1 < 3'
'@algolia/autocomplete-preset-algolia@1.17.7':
resolution: {integrity: sha512-ggOQ950+nwbWROq2MOCIL71RE0DdQZsceqrg32UqnhDz8FlO9rL8ONHNsI2R1MH0tkgVIDKI/D0sMiUchsFdWA==}
'@algolia/autocomplete-preset-algolia@1.17.9':
resolution: {integrity: sha512-Na1OuceSJeg8j7ZWn5ssMu/Ax3amtOwk76u4h5J4eK2Nx2KB5qt0Z4cOapCsxot9VcEN11ADV5aUSlQF4RhGjQ==}
peerDependencies:
'@algolia/client-search': '>= 4.9.1 < 6'
algoliasearch: '>= 4.9.1 < 6'
'@algolia/autocomplete-shared@1.17.7':
resolution: {integrity: sha512-o/1Vurr42U/qskRSuhBH+VKxMvkkUVTLU6WZQr+L5lGZZLYWyhdzWjW0iGXY7EkwRTjBqvN2EsR81yCTGV/kmg==}
'@algolia/autocomplete-shared@1.17.9':
resolution: {integrity: sha512-iDf05JDQ7I0b7JEA/9IektxN/80a2MZ1ToohfmNS3rfeuQnIKI3IJlIafD0xu4StbtQTghx9T3Maa97ytkXenQ==}
peerDependencies:
'@algolia/client-search': '>= 4.9.1 < 6'
algoliasearch: '>= 4.9.1 < 6'
'@algolia/client-abtesting@5.19.0':
resolution: {integrity: sha512-dMHwy2+nBL0SnIsC1iHvkBao64h4z+roGelOz11cxrDBrAdASxLxmfVMop8gmodQ2yZSacX0Rzevtxa+9SqxCw==}
'@algolia/client-abtesting@5.20.0':
resolution: {integrity: sha512-YaEoNc1Xf2Yk6oCfXXkZ4+dIPLulCx8Ivqj0OsdkHWnsI3aOJChY5qsfyHhDBNSOhqn2ilgHWxSfyZrjxBcAww==}
engines: {node: '>= 14.0.0'}
'@algolia/client-analytics@5.19.0':
resolution: {integrity: sha512-CDW4RwnCHzU10upPJqS6N6YwDpDHno7w6/qXT9KPbPbt8szIIzCHrva4O9KIfx1OhdsHzfGSI5hMAiOOYl4DEQ==}
'@algolia/client-analytics@5.20.0':
resolution: {integrity: sha512-CIT9ni0+5sYwqehw+t5cesjho3ugKQjPVy/iPiJvtJX4g8Cdb6je6SPt2uX72cf2ISiXCAX9U3cY0nN0efnRDw==}
engines: {node: '>= 14.0.0'}
'@algolia/client-common@5.19.0':
resolution: {integrity: sha512-2ERRbICHXvtj5kfFpY5r8qu9pJII/NAHsdgUXnUitQFwPdPL7wXiupcvZJC7DSntOnE8AE0lM7oDsPhrJfj5nQ==}
'@algolia/client-common@5.20.0':
resolution: {integrity: sha512-iSTFT3IU8KNpbAHcBUJw2HUrPnMXeXLyGajmCL7gIzWOsYM4GabZDHXOFx93WGiXMti1dymz8k8R+bfHv1YZmA==}
engines: {node: '>= 14.0.0'}
'@algolia/client-insights@5.19.0':
resolution: {integrity: sha512-xPOiGjo6I9mfjdJO7Y+p035aWePcbsItizIp+qVyfkfZiGgD+TbNxM12g7QhFAHIkx/mlYaocxPY/TmwPzTe+A==}
'@algolia/client-insights@5.20.0':
resolution: {integrity: sha512-w9RIojD45z1csvW1vZmAko82fqE/Dm+Ovsy2ElTsjFDB0HMAiLh2FO86hMHbEXDPz6GhHKgGNmBRiRP8dDPgJg==}
engines: {node: '>= 14.0.0'}
'@algolia/client-personalization@5.19.0':
resolution: {integrity: sha512-B9eoce/fk8NLboGje+pMr72pw+PV7c5Z01On477heTZ7jkxoZ4X92dobeGuEQop61cJ93Gaevd1of4mBr4hu2A==}
'@algolia/client-personalization@5.20.0':
resolution: {integrity: sha512-p/hftHhrbiHaEcxubYOzqVV4gUqYWLpTwK+nl2xN3eTrSW9SNuFlAvUBFqPXSVBqc6J5XL9dNKn3y8OA1KElSQ==}
engines: {node: '>= 14.0.0'}
'@algolia/client-query-suggestions@5.19.0':
resolution: {integrity: sha512-6fcP8d4S8XRDtVogrDvmSM6g5g6DndLc0pEm1GCKe9/ZkAzCmM3ZmW1wFYYPxdjMeifWy1vVEDMJK7sbE4W7MA==}
'@algolia/client-query-suggestions@5.20.0':
resolution: {integrity: sha512-m4aAuis5vZi7P4gTfiEs6YPrk/9hNTESj3gEmGFgfJw3hO2ubdS4jSId1URd6dGdt0ax2QuapXufcrN58hPUcw==}
engines: {node: '>= 14.0.0'}
'@algolia/client-search@5.19.0':
resolution: {integrity: sha512-Ctg3xXD/1VtcwmkulR5+cKGOMj4r0wC49Y/KZdGQcqpydKn+e86F6l3tb3utLJQVq4lpEJud6kdRykFgcNsp8Q==}
'@algolia/client-search@5.20.0':
resolution: {integrity: sha512-KL1zWTzrlN4MSiaK1ea560iCA/UewMbS4ZsLQRPoDTWyrbDKVbztkPwwv764LAqgXk0fvkNZvJ3IelcK7DqhjQ==}
engines: {node: '>= 14.0.0'}
'@algolia/ingestion@1.19.0':
resolution: {integrity: sha512-LO7w1MDV+ZLESwfPmXkp+KLeYeFrYEgtbCZG6buWjddhYraPQ9MuQWLhLLiaMlKxZ/sZvFTcZYuyI6Jx4WBhcg==}
'@algolia/ingestion@1.20.0':
resolution: {integrity: sha512-shj2lTdzl9un4XJblrgqg54DoK6JeKFO8K8qInMu4XhE2JuB8De6PUuXAQwiRigZupbI0xq8aM0LKdc9+qiLQA==}
engines: {node: '>= 14.0.0'}
'@algolia/monitoring@1.19.0':
resolution: {integrity: sha512-Mg4uoS0aIKeTpu6iv6O0Hj81s8UHagi5TLm9k2mLIib4vmMtX7WgIAHAcFIaqIZp5D6s5EVy1BaDOoZ7buuJHA==}
'@algolia/monitoring@1.20.0':
resolution: {integrity: sha512-aF9blPwOhKtWvkjyyXh9P5peqmhCA1XxLBRgItT+K6pbT0q4hBDQrCid+pQZJYy4HFUKjB/NDDwyzFhj/rwKhw==}
engines: {node: '>= 14.0.0'}
'@algolia/recommend@5.19.0':
resolution: {integrity: sha512-PbgrMTbUPlmwfJsxjFhal4XqZO2kpBNRjemLVTkUiti4w/+kzcYO4Hg5zaBgVqPwvFDNQ8JS4SS3TBBem88u+g==}
'@algolia/recommend@5.20.0':
resolution: {integrity: sha512-T6B/WPdZR3b89/F9Vvk6QCbt/wrLAtrGoL8z4qPXDFApQ8MuTFWbleN/4rHn6APWO3ps+BUePIEbue2rY5MlRw==}
engines: {node: '>= 14.0.0'}
'@algolia/requester-browser-xhr@5.19.0':
resolution: {integrity: sha512-GfnhnQBT23mW/VMNs7m1qyEyZzhZz093aY2x8p0era96MMyNv8+FxGek5pjVX0b57tmSCZPf4EqNCpkGcGsmbw==}
'@algolia/requester-browser-xhr@5.20.0':
resolution: {integrity: sha512-t6//lXsq8E85JMenHrI6mhViipUT5riNhEfCcvtRsTV+KIBpC6Od18eK864dmBhoc5MubM0f+sGpKOqJIlBSCg==}
engines: {node: '>= 14.0.0'}
'@algolia/requester-fetch@5.19.0':
resolution: {integrity: sha512-oyTt8ZJ4T4fYvW5avAnuEc6Laedcme9fAFryMD9ndUTIUe/P0kn3BuGcCLFjN3FDmdrETHSFkgPPf1hGy3sLCw==}
'@algolia/requester-fetch@5.20.0':
resolution: {integrity: sha512-FHxYGqRY+6bgjKsK4aUsTAg6xMs2S21elPe4Y50GB0Y041ihvw41Vlwy2QS6K9ldoftX4JvXodbKTcmuQxywdQ==}
engines: {node: '>= 14.0.0'}
'@algolia/requester-node-http@5.19.0':
resolution: {integrity: sha512-p6t8ue0XZNjcRiqNkb5QAM0qQRAKsCiebZ6n9JjWA+p8fWf8BvnhO55y2fO28g3GW0Imj7PrAuyBuxq8aDVQwQ==}
'@algolia/requester-node-http@5.20.0':
resolution: {integrity: sha512-kmtQClq/w3vtPteDSPvaW9SPZL/xrIgMrxZyAgsFwrJk0vJxqyC5/hwHmrCraDnStnGSADnLpBf4SpZnwnkwWw==}
engines: {node: '>= 14.0.0'}
'@babel/helper-string-parser@7.25.9':
@@ -151,14 +151,14 @@ packages:
resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
engines: {node: '>=12'}
'@docsearch/css@3.8.2':
resolution: {integrity: sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==}
'@docsearch/css@3.8.3':
resolution: {integrity: sha512-1nELpMV40JDLJ6rpVVFX48R1jsBFIQ6RnEQDsLFGmzOjPWTOMlZqUcXcvRx8VmYV/TqnS1l784Ofz+ZEb+wEOQ==}
'@docsearch/js@3.8.2':
resolution: {integrity: sha512-Q5wY66qHn0SwA7Taa0aDbHiJvaFJLOJyHmooQ7y8hlwwQLQ/5WwCcoX0g7ii04Qi2DJlHsd0XXzJ8Ypw9+9YmQ==}
'@docsearch/js@3.8.3':
resolution: {integrity: sha512-CQsX1zeoPJIWxN3IGoDSWOqzRc0JsOE9Bclegf9llwjYN2rzzJF93zagGcT3uI3tF31oCqTuUOVGW/mVFb7arw==}
'@docsearch/react@3.8.2':
resolution: {integrity: sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==}
'@docsearch/react@3.8.3':
resolution: {integrity: sha512-6UNrg88K7lJWmuS6zFPL/xgL+n326qXqZ7Ybyy4E8P/6Rcblk3GE8RXxeol4Pd5pFpKMhOhBhzABKKwHtbJCIg==}
peerDependencies:
'@types/react': '>= 16.8.0 < 19.0.0'
react: '>= 16.8.0 < 19.0.0'
@@ -458,8 +458,8 @@ packages:
resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==}
engines: {node: '>=14'}
'@iconify-json/simple-icons@1.2.20':
resolution: {integrity: sha512-WlQ95zrdxxizrFt2HtkfYjyWatLfE8Z7BKOkew9quG5S5AKYVxF1PkTtOs8LDWShce1DpvxKWQne4W5DQyEGZg==}
'@iconify-json/simple-icons@1.2.21':
resolution: {integrity: sha512-aqbIuVshMZ2fNEhm25//9DoKudboXF3CpoEQJJlHl9gVSVNOTr4cgaCIZvgSEYmys2HHEfmhcpoZIhoEFZS8SQ==}
'@iconify/types@2.0.0':
resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
@@ -569,26 +569,26 @@ packages:
cpu: [x64]
os: [win32]
'@shikijs/core@1.27.2':
resolution: {integrity: sha512-ns1dokDr0KE1lQ9mWd4rqaBkhSApk0qGCK1+lOqwnkQSkVZ08UGqXj1Ef8dAcTMZNFkN6PSNjkL5TYNX7pyPbQ==}
'@shikijs/core@2.1.0':
resolution: {integrity: sha512-v795KDmvs+4oV0XD05YLzfDMe9ISBgNjtFxP4PAEv5DqyeghO1/TwDqs9ca5/E6fuO95IcAcWqR6cCX9TnqLZA==}
'@shikijs/engine-javascript@1.27.2':
resolution: {integrity: sha512-0JB7U5vJc16NShBdxv9hSSJYSKX79+32O7F4oXIxJLdYfomyFvx4B982ackUI9ftO9T3WwagkiiD3nOxOOLiGA==}
'@shikijs/engine-javascript@2.1.0':
resolution: {integrity: sha512-cgIUdAliOsoaa0rJz/z+jvhrpRd+fVAoixVFEVxUq5FA+tHgBZAIfVJSgJNVRj2hs/wZ1+4hMe82eKAThVh0nQ==}
'@shikijs/engine-oniguruma@1.27.2':
resolution: {integrity: sha512-FZYKD1KN7srvpkz4lbGLOYWlyDU4Rd+2RtuKfABTkafAPOFr+J6umfIwY/TzOQqfNtWjL7SAwPAO0dcOraRLaQ==}
'@shikijs/engine-oniguruma@2.1.0':
resolution: {integrity: sha512-Ujik33wEDqgqY2WpjRDUBECGcKPv3eGGkoXPujIXvokLaRmGky8NisSk8lHUGeSFxo/Cz5sgFej9sJmA9yeepg==}
'@shikijs/langs@1.27.2':
resolution: {integrity: sha512-MSrknKL0DbeXvhtSigMLIzjPOOQfvK7fsbcRv2NUUB0EvuTTomY8/U+lAkczYrXY2+dygKOapJKk8ScFYbtoNw==}
'@shikijs/langs@2.1.0':
resolution: {integrity: sha512-Jn0gS4rPgerMDPj1ydjgFzZr5fAIoMYz4k7ZT3LJxWWBWA6lokK0pumUwVtb+MzXtlpjxOaQejLprmLbvMZyww==}
'@shikijs/themes@1.27.2':
resolution: {integrity: sha512-Yw/uV7EijjWavIIZLoWneTAohcbBqEKj6XMX1bfMqO3llqTKsyXukPp1evf8qPqzUHY7ibauqEaQchhfi857mg==}
'@shikijs/themes@2.1.0':
resolution: {integrity: sha512-oS2mU6+bz+8TKutsjBxBA7Z3vrQk21RCmADLpnu8cy3tZD6Rw0FKqDyXNtwX52BuIDKHxZNmRlTdG3vtcYv3NQ==}
'@shikijs/transformers@1.27.2':
resolution: {integrity: sha512-BJFeXP9/zlYidJocv2ShkOvXI22fepS2oK/vItfCbCcuJ0783eWgEn6/mMrXmk+p+Twu49ntDVQe665uy6RPWw==}
'@shikijs/transformers@2.1.0':
resolution: {integrity: sha512-3sfvh6OKUVkT5wZFU1xxiq1qqNIuCwUY3yOb9ZGm19y80UZ/eoroLE2orGNzfivyTxR93GfXXZC/ghPR0/SBow==}
'@shikijs/types@1.27.2':
resolution: {integrity: sha512-DM9OWUyjmdYdnKDpaGB/GEn9XkToyK1tqxuqbmc5PV+5K8WjjwfygL3+cIvbkSw2v1ySwHDgqATq/+98pJ4Kyg==}
'@shikijs/types@2.1.0':
resolution: {integrity: sha512-OFOdHA6VEVbiQvepJ8yqicC6VmBrKxFFhM2EsHHrZESqLVAXOSeRDiuSYV185lIgp15TVic5vYBYNhTsk1xHLg==}
'@shikijs/vscode-textmate@10.0.1':
resolution: {integrity: sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==}
@@ -668,11 +668,11 @@ packages:
'@vue/shared@3.5.13':
resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==}
'@vueuse/core@11.3.0':
resolution: {integrity: sha512-7OC4Rl1f9G8IT6rUfi9JrKiXy4bfmHhZ5x2Ceojy0jnd3mHNEvV4JaRygH362ror6/NZ+Nl+n13LPzGiPN8cKA==}
'@vueuse/core@12.5.0':
resolution: {integrity: sha512-GVyH1iYqNANwcahAx8JBm6awaNgvR/SwZ1fjr10b8l1HIgDp82ngNbfzJUgOgWEoxjL+URAggnlilAEXwCOZtg==}
'@vueuse/integrations@11.3.0':
resolution: {integrity: sha512-5fzRl0apQWrDezmobchoiGTkGw238VWESxZHazfhP3RM7pDSiyXy18QbfYkILoYNTd23HPAfQTJpkUc5QbkwTw==}
'@vueuse/integrations@12.5.0':
resolution: {integrity: sha512-HYLt8M6mjUfcoUOzyBcX2RjpfapIwHPBmQJtTmXOQW845Y/Osu9VuTJ5kPvnmWJ6IUa05WpblfOwZ+P0G4iZsQ==}
peerDependencies:
async-validator: ^4
axios: ^1
@@ -712,11 +712,11 @@ packages:
universal-cookie:
optional: true
'@vueuse/metadata@11.3.0':
resolution: {integrity: sha512-pwDnDspTqtTo2HwfLw4Rp6yywuuBdYnPYDq+mO38ZYKGebCUQC/nVj/PXSiK9HX5otxLz8Fn7ECPbjiRz2CC3g==}
'@vueuse/metadata@12.5.0':
resolution: {integrity: sha512-Ui7Lo2a7AxrMAXRF+fAp9QsXuwTeeZ8fIB9wsLHqzq9MQk+2gMYE2IGJW48VMJ8ecvCB3z3GsGLKLbSasQ5Qlg==}
'@vueuse/shared@11.3.0':
resolution: {integrity: sha512-P8gSSWQeucH5821ek2mn/ciCk+MS/zoRKqdQIM3bHq6p7GXDAJLmnRRKmF5F65sAVJIfzQlwR3aDzwCn10s8hA==}
'@vueuse/shared@12.5.0':
resolution: {integrity: sha512-vMpcL1lStUU6O+kdj6YdHDixh0odjPAUM15uJ9f7MY781jcYkIwFA4iv2EfoIPO6vBmvutI1HxxAwmf0cx5ISQ==}
acorn-walk@8.3.4:
resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==}
@@ -727,8 +727,8 @@ packages:
engines: {node: '>=0.4.0'}
hasBin: true
algoliasearch@5.19.0:
resolution: {integrity: sha512-zrLtGhC63z3sVLDDKGW+SlCRN9eJHFTgdEmoAOpsVh6wgGL1GgTTDou7tpCBjevzgIvi3AIyDAQO3Xjbg5eqZg==}
algoliasearch@5.20.0:
resolution: {integrity: sha512-groO71Fvi5SWpxjI9Ia+chy0QBwT61mg6yxJV27f5YFf+Mw+STT75K6SHySpP8Co5LsCrtsbCH5dJZSRtkSKaQ==}
engines: {node: '>= 14.0.0'}
as-table@1.0.55:
@@ -931,8 +931,8 @@ packages:
ohash@1.1.4:
resolution: {integrity: sha512-FlDryZAahJmEF3VR3w1KogSEdWX3WhA5GPakFx4J81kEAiHyLMpdLLElS8n8dfNadMgAne/MywcvmogzscVt4g==}
oniguruma-to-es@2.2.0:
resolution: {integrity: sha512-EEsso27ri0sf+t4uRFEj5C5gvXQj0d0w1Y2qq06b+hDLBnvzO1rWTwEW4C7ytan6nhg4WPwE26eLoiPhHUbvKg==}
oniguruma-to-es@2.3.0:
resolution: {integrity: sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==}
pako@1.0.11:
resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
@@ -1010,8 +1010,8 @@ packages:
setimmediate@1.0.5:
resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
shiki@1.27.2:
resolution: {integrity: sha512-QtA1C41oEVixKog+V8I3ia7jjGls7oCZ8Yul8vdHrVBga5uPoyTtMvFF4lMMXIyAZo5A5QbXq91bot2vA6Q+eQ==}
shiki@2.1.0:
resolution: {integrity: sha512-yvKPdNGLXZv7WC4bl7JBbU3CEcUxnBanvMez8MG3gZXKpClGL4bHqFyLhTx+2zUvbjClUANs/S22HXb7aeOgmA==}
source-map-js@1.2.1:
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
@@ -1073,8 +1073,8 @@ packages:
resolution: {integrity: sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==}
engines: {node: '>=14.0'}
unenv-nightly@2.0.0-20250109-100802-88ad671:
resolution: {integrity: sha512-Uij6gODNNNNsNBoDlnaMvZI99I6YlVJLRfYH8AOLMlbFrW7k2w872v9VLuIdch2vF8QBeSC4EftIh5sG4ibzdA==}
unenv@2.0.0-rc.0:
resolution: {integrity: sha512-H0kl2w8jFL/FAk0xvjVing4bS3jd//mbg1QChDnn58l9Sc5RtduaKmLAL8n+eBw5jJo8ZjYV7CrEGage5LAOZQ==}
unist-util-is@6.0.0:
resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
@@ -1100,8 +1100,8 @@ packages:
vfile@6.0.3:
resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==}
vite@5.4.11:
resolution: {integrity: sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==}
vite@5.4.14:
resolution: {integrity: sha512-EK5cY7Q1D8JNhSaPKVK4pwBFvaTmZxEnoKXLG/U9gmdDcihQGNzFlgIvaxezFR4glP1LsuiedwMBqCXH3wZccA==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
peerDependencies:
@@ -1131,8 +1131,8 @@ packages:
terser:
optional: true
vitepress@1.5.0:
resolution: {integrity: sha512-q4Q/G2zjvynvizdB3/bupdYkCJe2umSAMv9Ju4d92E6/NXJ59z70xB0q5p/4lpRyAwflDsbwy1mLV9Q5+nlB+g==}
vitepress@1.6.2:
resolution: {integrity: sha512-pKAgner8wqetwyL6VyjhJnrw/Kwc8hNlwaS/efUlEBhQsRiCvjIsKqjWyjyUMa6u39ktMle16nYAUOcZ6MhV6Q==}
hasBin: true
peerDependencies:
markdown-it-mathjax3: ^4
@@ -1143,17 +1143,6 @@ packages:
postcss:
optional: true
vue-demi@0.14.10:
resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==}
engines: {node: '>=12'}
hasBin: true
peerDependencies:
'@vue/composition-api': ^1.0.0-rc.1
vue: ^3.0.0-0 || ^2.6.0
peerDependenciesMeta:
'@vue/composition-api':
optional: true
vue@3.5.13:
resolution: {integrity: sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==}
peerDependencies:
@@ -1167,8 +1156,8 @@ packages:
engines: {node: '>=16'}
hasBin: true
wrangler@3.103.2:
resolution: {integrity: sha512-eYcnubPhPBU1QMZYTam+vfCLpaQx+x1EWA6nFbLhid1eqNDAk1dNwNlbo+ZryrOHDEX3XlOxn2Z3Fx8vVv3hKw==}
wrangler@3.104.0:
resolution: {integrity: sha512-txxgkKZwPQrX1PDgY+ATWnnx4GSeNxUrnBumudWPRmXG0JdLzCf09R+723slMMT1m+CKQXU1KvuUHc/GxTnTyA==}
engines: {node: '>=16.17.0'}
hasBin: true
peerDependencies:
@@ -1200,110 +1189,110 @@ packages:
snapshots:
'@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)(search-insights@2.13.0)':
'@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)(search-insights@2.13.0)':
dependencies:
'@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)(search-insights@2.13.0)
'@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)
'@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)(search-insights@2.13.0)
'@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)
transitivePeerDependencies:
- '@algolia/client-search'
- algoliasearch
- search-insights
'@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)(search-insights@2.13.0)':
'@algolia/autocomplete-plugin-algolia-insights@1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)(search-insights@2.13.0)':
dependencies:
'@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)
'@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)
search-insights: 2.13.0
transitivePeerDependencies:
- '@algolia/client-search'
- algoliasearch
'@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)':
'@algolia/autocomplete-preset-algolia@1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)':
dependencies:
'@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)
'@algolia/client-search': 5.19.0
algoliasearch: 5.19.0
'@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)
'@algolia/client-search': 5.20.0
algoliasearch: 5.20.0
'@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)':
'@algolia/autocomplete-shared@1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)':
dependencies:
'@algolia/client-search': 5.19.0
algoliasearch: 5.19.0
'@algolia/client-search': 5.20.0
algoliasearch: 5.20.0
'@algolia/client-abtesting@5.19.0':
'@algolia/client-abtesting@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/client-analytics@5.19.0':
'@algolia/client-analytics@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/client-common@5.19.0': {}
'@algolia/client-common@5.20.0': {}
'@algolia/client-insights@5.19.0':
'@algolia/client-insights@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/client-personalization@5.19.0':
'@algolia/client-personalization@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/client-query-suggestions@5.19.0':
'@algolia/client-query-suggestions@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/client-search@5.19.0':
'@algolia/client-search@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/ingestion@1.19.0':
'@algolia/ingestion@1.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/monitoring@1.19.0':
'@algolia/monitoring@1.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/recommend@5.19.0':
'@algolia/recommend@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
'@algolia/requester-browser-xhr@5.19.0':
'@algolia/requester-browser-xhr@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-fetch@5.19.0':
'@algolia/requester-fetch@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/client-common': 5.20.0
'@algolia/requester-node-http@5.19.0':
'@algolia/requester-node-http@5.20.0':
dependencies:
'@algolia/client-common': 5.19.0
'@algolia/client-common': 5.20.0
'@babel/helper-string-parser@7.25.9': {}
@@ -1341,11 +1330,11 @@ snapshots:
dependencies:
'@jridgewell/trace-mapping': 0.3.9
'@docsearch/css@3.8.2': {}
'@docsearch/css@3.8.3': {}
'@docsearch/js@3.8.2(@algolia/client-search@5.19.0)(search-insights@2.13.0)':
'@docsearch/js@3.8.3(@algolia/client-search@5.20.0)(search-insights@2.13.0)':
dependencies:
'@docsearch/react': 3.8.2(@algolia/client-search@5.19.0)(search-insights@2.13.0)
'@docsearch/react': 3.8.3(@algolia/client-search@5.20.0)(search-insights@2.13.0)
preact: 10.25.4
transitivePeerDependencies:
- '@algolia/client-search'
@@ -1354,12 +1343,12 @@ snapshots:
- react-dom
- search-insights
'@docsearch/react@3.8.2(@algolia/client-search@5.19.0)(search-insights@2.13.0)':
'@docsearch/react@3.8.3(@algolia/client-search@5.20.0)(search-insights@2.13.0)':
dependencies:
'@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)(search-insights@2.13.0)
'@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)
'@docsearch/css': 3.8.2
algoliasearch: 5.19.0
'@algolia/autocomplete-core': 1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)(search-insights@2.13.0)
'@algolia/autocomplete-preset-algolia': 1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)
'@docsearch/css': 3.8.3
algoliasearch: 5.20.0
optionalDependencies:
search-insights: 2.13.0
transitivePeerDependencies:
@@ -1512,7 +1501,7 @@ snapshots:
'@fastify/busboy@2.1.1': {}
'@iconify-json/simple-icons@1.2.20':
'@iconify-json/simple-icons@1.2.21':
dependencies:
'@iconify/types': 2.0.0
@@ -1584,39 +1573,40 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.31.0':
optional: true
'@shikijs/core@1.27.2':
'@shikijs/core@2.1.0':
dependencies:
'@shikijs/engine-javascript': 1.27.2
'@shikijs/engine-oniguruma': 1.27.2
'@shikijs/types': 1.27.2
'@shikijs/engine-javascript': 2.1.0
'@shikijs/engine-oniguruma': 2.1.0
'@shikijs/types': 2.1.0
'@shikijs/vscode-textmate': 10.0.1
'@types/hast': 3.0.4
hast-util-to-html: 9.0.4
'@shikijs/engine-javascript@1.27.2':
'@shikijs/engine-javascript@2.1.0':
dependencies:
'@shikijs/types': 1.27.2
'@shikijs/types': 2.1.0
'@shikijs/vscode-textmate': 10.0.1
oniguruma-to-es: 2.2.0
oniguruma-to-es: 2.3.0
'@shikijs/engine-oniguruma@1.27.2':
'@shikijs/engine-oniguruma@2.1.0':
dependencies:
'@shikijs/types': 1.27.2
'@shikijs/types': 2.1.0
'@shikijs/vscode-textmate': 10.0.1
'@shikijs/langs@1.27.2':
'@shikijs/langs@2.1.0':
dependencies:
'@shikijs/types': 1.27.2
'@shikijs/types': 2.1.0
'@shikijs/themes@1.27.2':
'@shikijs/themes@2.1.0':
dependencies:
'@shikijs/types': 1.27.2
'@shikijs/types': 2.1.0
'@shikijs/transformers@1.27.2':
'@shikijs/transformers@2.1.0':
dependencies:
shiki: 1.27.2
'@shikijs/core': 2.1.0
'@shikijs/types': 2.1.0
'@shikijs/types@1.27.2':
'@shikijs/types@2.1.0':
dependencies:
'@shikijs/vscode-textmate': 10.0.1
'@types/hast': 3.0.4
@@ -1652,9 +1642,9 @@ snapshots:
'@ungap/structured-clone@1.2.1': {}
'@vitejs/plugin-vue@5.2.1(vite@5.4.11(@types/node@22.10.7))(vue@3.5.13(typescript@5.4.5))':
'@vitejs/plugin-vue@5.2.1(vite@5.4.14(@types/node@22.10.7))(vue@3.5.13(typescript@5.4.5))':
dependencies:
vite: 5.4.11(@types/node@22.10.7)
vite: 5.4.14(@types/node@22.10.7)
vue: 3.5.13(typescript@5.4.5)
'@vue/compiler-core@3.5.13':
@@ -1729,35 +1719,32 @@ snapshots:
'@vue/shared@3.5.13': {}
'@vueuse/core@11.3.0(vue@3.5.13(typescript@5.4.5))':
'@vueuse/core@12.5.0(typescript@5.4.5)':
dependencies:
'@types/web-bluetooth': 0.0.20
'@vueuse/metadata': 11.3.0
'@vueuse/shared': 11.3.0(vue@3.5.13(typescript@5.4.5))
vue-demi: 0.14.10(vue@3.5.13(typescript@5.4.5))
'@vueuse/metadata': 12.5.0
'@vueuse/shared': 12.5.0(typescript@5.4.5)
vue: 3.5.13(typescript@5.4.5)
transitivePeerDependencies:
- '@vue/composition-api'
- vue
- typescript
'@vueuse/integrations@11.3.0(focus-trap@7.6.4)(vue@3.5.13(typescript@5.4.5))':
'@vueuse/integrations@12.5.0(focus-trap@7.6.4)(typescript@5.4.5)':
dependencies:
'@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.4.5))
'@vueuse/shared': 11.3.0(vue@3.5.13(typescript@5.4.5))
vue-demi: 0.14.10(vue@3.5.13(typescript@5.4.5))
'@vueuse/core': 12.5.0(typescript@5.4.5)
'@vueuse/shared': 12.5.0(typescript@5.4.5)
vue: 3.5.13(typescript@5.4.5)
optionalDependencies:
focus-trap: 7.6.4
transitivePeerDependencies:
- '@vue/composition-api'
- vue
- typescript
'@vueuse/metadata@11.3.0': {}
'@vueuse/metadata@12.5.0': {}
'@vueuse/shared@11.3.0(vue@3.5.13(typescript@5.4.5))':
'@vueuse/shared@12.5.0(typescript@5.4.5)':
dependencies:
vue-demi: 0.14.10(vue@3.5.13(typescript@5.4.5))
vue: 3.5.13(typescript@5.4.5)
transitivePeerDependencies:
- '@vue/composition-api'
- vue
- typescript
acorn-walk@8.3.4:
dependencies:
@@ -1765,21 +1752,21 @@ snapshots:
acorn@8.14.0: {}
algoliasearch@5.19.0:
algoliasearch@5.20.0:
dependencies:
'@algolia/client-abtesting': 5.19.0
'@algolia/client-analytics': 5.19.0
'@algolia/client-common': 5.19.0
'@algolia/client-insights': 5.19.0
'@algolia/client-personalization': 5.19.0
'@algolia/client-query-suggestions': 5.19.0
'@algolia/client-search': 5.19.0
'@algolia/ingestion': 1.19.0
'@algolia/monitoring': 1.19.0
'@algolia/recommend': 5.19.0
'@algolia/requester-browser-xhr': 5.19.0
'@algolia/requester-fetch': 5.19.0
'@algolia/requester-node-http': 5.19.0
'@algolia/client-abtesting': 5.20.0
'@algolia/client-analytics': 5.20.0
'@algolia/client-common': 5.20.0
'@algolia/client-insights': 5.20.0
'@algolia/client-personalization': 5.20.0
'@algolia/client-query-suggestions': 5.20.0
'@algolia/client-search': 5.20.0
'@algolia/ingestion': 1.20.0
'@algolia/monitoring': 1.20.0
'@algolia/recommend': 5.20.0
'@algolia/requester-browser-xhr': 5.20.0
'@algolia/requester-fetch': 5.20.0
'@algolia/requester-node-http': 5.20.0
as-table@1.0.55:
dependencies:
@@ -2027,7 +2014,7 @@ snapshots:
ohash@1.1.4: {}
oniguruma-to-es@2.2.0:
oniguruma-to-es@2.3.0:
dependencies:
emoji-regex-xs: 1.0.0
regex: 5.1.1
@@ -2133,14 +2120,14 @@ snapshots:
setimmediate@1.0.5: {}
shiki@1.27.2:
shiki@2.1.0:
dependencies:
'@shikijs/core': 1.27.2
'@shikijs/engine-javascript': 1.27.2
'@shikijs/engine-oniguruma': 1.27.2
'@shikijs/langs': 1.27.2
'@shikijs/themes': 1.27.2
'@shikijs/types': 1.27.2
'@shikijs/core': 2.1.0
'@shikijs/engine-javascript': 2.1.0
'@shikijs/engine-oniguruma': 2.1.0
'@shikijs/langs': 2.1.0
'@shikijs/themes': 2.1.0
'@shikijs/types': 2.1.0
'@shikijs/vscode-textmate': 10.0.1
'@types/hast': 3.0.4
@@ -2191,7 +2178,7 @@ snapshots:
dependencies:
'@fastify/busboy': 2.1.1
unenv-nightly@2.0.0-20250109-100802-88ad671:
unenv@2.0.0-rc.0:
dependencies:
defu: 6.1.4
mlly: 1.7.4
@@ -2234,7 +2221,7 @@ snapshots:
'@types/unist': 3.0.3
vfile-message: 4.0.2
vite@5.4.11(@types/node@22.10.7):
vite@5.4.14(@types/node@22.10.7):
dependencies:
esbuild: 0.21.5
postcss: 8.5.1
@@ -2243,25 +2230,25 @@ snapshots:
'@types/node': 22.10.7
fsevents: 2.3.3
vitepress@1.5.0(@algolia/client-search@5.19.0)(@types/node@22.10.7)(postcss@8.5.1)(search-insights@2.13.0)(typescript@5.4.5):
vitepress@1.6.2(@algolia/client-search@5.20.0)(@types/node@22.10.7)(postcss@8.5.1)(search-insights@2.13.0)(typescript@5.4.5):
dependencies:
'@docsearch/css': 3.8.2
'@docsearch/js': 3.8.2(@algolia/client-search@5.19.0)(search-insights@2.13.0)
'@iconify-json/simple-icons': 1.2.20
'@shikijs/core': 1.27.2
'@shikijs/transformers': 1.27.2
'@shikijs/types': 1.27.2
'@docsearch/css': 3.8.3
'@docsearch/js': 3.8.3(@algolia/client-search@5.20.0)(search-insights@2.13.0)
'@iconify-json/simple-icons': 1.2.21
'@shikijs/core': 2.1.0
'@shikijs/transformers': 2.1.0
'@shikijs/types': 2.1.0
'@types/markdown-it': 14.1.2
'@vitejs/plugin-vue': 5.2.1(vite@5.4.11(@types/node@22.10.7))(vue@3.5.13(typescript@5.4.5))
'@vitejs/plugin-vue': 5.2.1(vite@5.4.14(@types/node@22.10.7))(vue@3.5.13(typescript@5.4.5))
'@vue/devtools-api': 7.7.0
'@vue/shared': 3.5.13
'@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.4.5))
'@vueuse/integrations': 11.3.0(focus-trap@7.6.4)(vue@3.5.13(typescript@5.4.5))
'@vueuse/core': 12.5.0(typescript@5.4.5)
'@vueuse/integrations': 12.5.0(focus-trap@7.6.4)(typescript@5.4.5)
focus-trap: 7.6.4
mark.js: 8.11.1
minisearch: 7.1.1
shiki: 1.27.2
vite: 5.4.11(@types/node@22.10.7)
shiki: 2.1.0
vite: 5.4.14(@types/node@22.10.7)
vue: 3.5.13(typescript@5.4.5)
optionalDependencies:
postcss: 8.5.1
@@ -2269,7 +2256,6 @@ snapshots:
- '@algolia/client-search'
- '@types/node'
- '@types/react'
- '@vue/composition-api'
- async-validator
- axios
- change-case
@@ -2293,10 +2279,6 @@ snapshots:
- typescript
- universal-cookie
vue-demi@0.14.10(vue@3.5.13(typescript@5.4.5)):
dependencies:
vue: 3.5.13(typescript@5.4.5)
vue@3.5.13(typescript@5.4.5):
dependencies:
'@vue/compiler-dom': 3.5.13
@@ -2315,7 +2297,7 @@ snapshots:
'@cloudflare/workerd-linux-arm64': 1.20241230.0
'@cloudflare/workerd-windows-64': 1.20241230.0
wrangler@3.103.2:
wrangler@3.104.0:
dependencies:
'@cloudflare/kv-asset-handler': 0.3.4
'@esbuild-plugins/node-globals-polyfill': 0.2.3(esbuild@0.17.19)
@@ -2324,7 +2306,7 @@ snapshots:
esbuild: 0.17.19
miniflare: 3.20241230.2
path-to-regexp: 6.3.0
unenv: unenv-nightly@2.0.0-20250109-100802-88ad671
unenv: 2.0.0-rc.0
workerd: 1.20241230.0
optionalDependencies:
fsevents: 2.3.3

View File

@@ -11,17 +11,17 @@
"build": "wrangler deploy --dry-run --outdir dist --minify"
},
"devDependencies": {
"@cloudflare/workers-types": "^4.20250109.0",
"@cloudflare/workers-types": "^4.20250121.0",
"@eslint/js": "9.18.0",
"@simplewebauthn/types": "10.0.0",
"eslint": "9.18.0",
"globals": "^15.14.0",
"typescript-eslint": "^8.20.0",
"wrangler": "^3.103.2"
"typescript-eslint": "^8.21.0",
"wrangler": "^3.104.0"
},
"dependencies": {
"@aws-sdk/client-s3": "^3.731.1",
"@aws-sdk/s3-request-presigner": "^3.731.1",
"@aws-sdk/client-s3": "^3.732.0",
"@aws-sdk/s3-request-presigner": "^3.732.0",
"@simplewebauthn/server": "10.0.1",
"hono": "^4.6.17",
"mimetext": "^3.0.27",

160
worker/pnpm-lock.yaml generated
View File

@@ -14,11 +14,11 @@ importers:
.:
dependencies:
'@aws-sdk/client-s3':
specifier: ^3.731.1
version: 3.731.1
specifier: ^3.732.0
version: 3.732.0
'@aws-sdk/s3-request-presigner':
specifier: ^3.731.1
version: 3.731.1
specifier: ^3.732.0
version: 3.732.0
'@simplewebauthn/server':
specifier: 10.0.1
version: 10.0.1
@@ -39,8 +39,8 @@ importers:
version: 4.16.3(patch_hash=7d0a1784bb35f50fee25f26a14017734b9461612c635e71734b59527280c9563)
devDependencies:
'@cloudflare/workers-types':
specifier: ^4.20250109.0
version: 4.20250109.0
specifier: ^4.20250121.0
version: 4.20250121.0
'@eslint/js':
specifier: 9.18.0
version: 9.18.0
@@ -54,11 +54,11 @@ importers:
specifier: ^15.14.0
version: 15.14.0
typescript-eslint:
specifier: ^8.20.0
version: 8.20.0(eslint@9.18.0)(typescript@5.4.5)
specifier: ^8.21.0
version: 8.21.0(eslint@9.18.0)(typescript@5.4.5)
wrangler:
specifier: ^3.103.2
version: 3.103.2(@cloudflare/workers-types@4.20250109.0)
specifier: ^3.104.0
version: 3.104.0(@cloudflare/workers-types@4.20250121.0)
packages:
@@ -85,8 +85,8 @@ packages:
'@aws-crypto/util@5.2.0':
resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==}
'@aws-sdk/client-s3@3.731.1':
resolution: {integrity: sha512-Ab2PA/8Th6JkurCkxnQJZHPE/JnnSsX/XHQzirkQb+JpKOyWMRC/YZUBfAaiwhxqX65RHgklrwil+UbFl4TtAQ==}
'@aws-sdk/client-s3@3.732.0':
resolution: {integrity: sha512-ITPcG40qdiLXZRvNQ8V3u4yB16afcdIabdRBN6Blba31rk0MfeBGWwah0+lLSTFo1ZIrIQvBl6PAQ7mO0mkKLg==}
engines: {node: '>=18.0.0'}
'@aws-sdk/client-sso@3.731.0':
@@ -133,8 +133,8 @@ packages:
resolution: {integrity: sha512-oY4nsY/mb5O5eZCzIuWpyvzO45Bi6UBtE48IaJsoyVctagA1l8hB66aczH9M1NHNjvbS4Beu1agwh3Nyb1eJug==}
engines: {node: '>=18.0.0'}
'@aws-sdk/middleware-flexible-checksums@3.731.0':
resolution: {integrity: sha512-LMs/rndovYjYSntSYyPE/PIl4iHNiquaU0lpDqpQc9iTgQcNbjdriSUWpibgu1jXlGBpBYCqttNkxmEThbbWxA==}
'@aws-sdk/middleware-flexible-checksums@3.732.0':
resolution: {integrity: sha512-MIbF6cYWg5noRO1kRZNC0vewj6qzSYL/BGNlPxRQcqb6egUiGrhPEi8Y/qqweB7MlBHsqSO5YNPwH/Py8ToSVw==}
engines: {node: '>=18.0.0'}
'@aws-sdk/middleware-host-header@3.731.0':
@@ -173,8 +173,8 @@ packages:
resolution: {integrity: sha512-XlDpRNkDVHF59f07JmkuAidEv//m3hT6/JL85h0l3+zrpaRWhf8n8lVUyAPNq35ZujK8AcorYM+93u7hdWsliQ==}
engines: {node: '>=18.0.0'}
'@aws-sdk/s3-request-presigner@3.731.1':
resolution: {integrity: sha512-GdG0pXkcTgBpenouB834FoCHyLaivV2rGQn7OEQBiT8SBaTxSackZ6tGlJQAlzZQkiQfE/NePUJU7DczJZZvrg==}
'@aws-sdk/s3-request-presigner@3.732.0':
resolution: {integrity: sha512-aIzl8UDZp1fNS6haLKmyHcLXg1vWhu9Yimz/9W1xElGB3XZc0LsTlp57yVTmx9ROYo3kAh+Z6RhF73bESTOmjA==}
engines: {node: '>=18.0.0'}
'@aws-sdk/signature-v4-multi-region@3.731.0':
@@ -263,8 +263,8 @@ packages:
cpu: [x64]
os: [win32]
'@cloudflare/workers-types@4.20250109.0':
resolution: {integrity: sha512-Y1zgSaEOOevl9ORpzgMcm4j535p3nK2lrblHHvYM2yxR50SBKGh+wvkRFAIxWRfjUGZEU+Fp6923EGioDBbobA==}
'@cloudflare/workers-types@4.20250121.0':
resolution: {integrity: sha512-2bBosmudcwvUOKzuCL/Jum18LDh3QoU0QnTNMXIgcVwuq3LaNzyZnOW14bFXPhLU/84ZjNO3zO5R/U11Zgag2Q==}
'@cspotcode/source-map-support@0.8.1':
resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
@@ -762,51 +762,51 @@ packages:
'@types/json-schema@7.0.15':
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
'@typescript-eslint/eslint-plugin@8.20.0':
resolution: {integrity: sha512-naduuphVw5StFfqp4Gq4WhIBE2gN1GEmMUExpJYknZJdRnc+2gDzB8Z3+5+/Kv33hPQRDGzQO/0opHE72lZZ6A==}
'@typescript-eslint/eslint-plugin@8.21.0':
resolution: {integrity: sha512-eTH+UOR4I7WbdQnG4Z48ebIA6Bgi7WO8HvFEneeYBxG8qCOYgTOFPSg6ek9ITIDvGjDQzWHcoWHCDO2biByNzA==}
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.8.0'
'@typescript-eslint/parser@8.20.0':
resolution: {integrity: sha512-gKXG7A5HMyjDIedBi6bUrDcun8GIjnI8qOwVLiY3rx6T/sHP/19XLJOnIq/FgQvWLHja5JN/LSE7eklNBr612g==}
'@typescript-eslint/parser@8.21.0':
resolution: {integrity: sha512-Wy+/sdEH9kI3w9civgACwabHbKl+qIOu0uFZ9IMKzX3Jpv9og0ZBJrZExGrPpFAY7rWsXuxs5e7CPPP17A4eYA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.8.0'
'@typescript-eslint/scope-manager@8.20.0':
resolution: {integrity: sha512-J7+VkpeGzhOt3FeG1+SzhiMj9NzGD/M6KoGn9f4dbz3YzK9hvbhVTmLj/HiTp9DazIzJ8B4XcM80LrR9Dm1rJw==}
'@typescript-eslint/scope-manager@8.21.0':
resolution: {integrity: sha512-G3IBKz0/0IPfdeGRMbp+4rbjfSSdnGkXsM/pFZA8zM9t9klXDnB/YnKOBQ0GoPmoROa4bCq2NeHgJa5ydsQ4mA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/type-utils@8.20.0':
resolution: {integrity: sha512-bPC+j71GGvA7rVNAHAtOjbVXbLN5PkwqMvy1cwGeaxUoRQXVuKCebRoLzm+IPW/NtFFpstn1ummSIasD5t60GA==}
'@typescript-eslint/type-utils@8.21.0':
resolution: {integrity: sha512-95OsL6J2BtzoBxHicoXHxgk3z+9P3BEcQTpBKriqiYzLKnM2DeSqs+sndMKdamU8FosiadQFT3D+BSL9EKnAJQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.8.0'
'@typescript-eslint/types@8.20.0':
resolution: {integrity: sha512-cqaMiY72CkP+2xZRrFt3ExRBu0WmVitN/rYPZErA80mHjHx/Svgp8yfbzkJmDoQ/whcytOPO9/IZXnOc+wigRA==}
'@typescript-eslint/types@8.21.0':
resolution: {integrity: sha512-PAL6LUuQwotLW2a8VsySDBwYMm129vFm4tMVlylzdoTybTHaAi0oBp7Ac6LhSrHHOdLM3efH+nAR6hAWoMF89A==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/typescript-estree@8.20.0':
resolution: {integrity: sha512-Y7ncuy78bJqHI35NwzWol8E0X7XkRVS4K4P4TCyzWkOJih5NDvtoRDW4Ba9YJJoB2igm9yXDdYI/+fkiiAxPzA==}
'@typescript-eslint/typescript-estree@8.21.0':
resolution: {integrity: sha512-x+aeKh/AjAArSauz0GiQZsjT8ciadNMHdkUSwBB9Z6PrKc/4knM4g3UfHml6oDJmKC88a6//cdxnO/+P2LkMcg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <5.8.0'
'@typescript-eslint/utils@8.20.0':
resolution: {integrity: sha512-dq70RUw6UK9ei7vxc4KQtBRk7qkHZv447OUZ6RPQMQl71I3NZxQJX/f32Smr+iqWrB02pHKn2yAdHBb0KNrRMA==}
'@typescript-eslint/utils@8.21.0':
resolution: {integrity: sha512-xcXBfcq0Kaxgj7dwejMbFyq7IOHgpNMtVuDveK7w3ZGwG9owKzhALVwKpTF2yrZmEwl9SWdetf3fxNzJQaVuxw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.8.0'
'@typescript-eslint/visitor-keys@8.20.0':
resolution: {integrity: sha512-v/BpkeeYAsPkKCkR8BDwcno0llhzWVqPOamQrAEMdpZav2Y9OVjd9dwJyBLJWwf335B5DmlifECIkZRJCaGaHA==}
'@typescript-eslint/visitor-keys@8.21.0':
resolution: {integrity: sha512-BkLMNpdV6prozk8LlyK/SOoWLmUFi+ZD+pcqti9ILCbVvHGk1ui1g4jJOc2WDLaeExz2qWwojxlPce5PljcT3w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
abbrev@2.0.0:
@@ -1534,8 +1534,8 @@ packages:
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
engines: {node: '>= 0.8.0'}
typescript-eslint@8.20.0:
resolution: {integrity: sha512-Kxz2QRFsgbWj6Xcftlw3Dd154b3cEPFqQC+qMZrMypSijPd4UanKKvoKDrJ4o8AIfZFKAF+7sMaEIR8mTElozA==}
typescript-eslint@8.21.0:
resolution: {integrity: sha512-txEKYY4XMKwPXxNkN8+AxAdX6iIJAPiJbHE/FpQccs/sxw8Lf26kqwC3cn0xkHlW8kEbLhkhCsjWuMveaY9Rxw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
@@ -1553,8 +1553,8 @@ packages:
resolution: {integrity: sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==}
engines: {node: '>=14.0'}
unenv-nightly@2.0.0-20250109-100802-88ad671:
resolution: {integrity: sha512-Uij6gODNNNNsNBoDlnaMvZI99I6YlVJLRfYH8AOLMlbFrW7k2w872v9VLuIdch2vF8QBeSC4EftIh5sG4ibzdA==}
unenv@2.0.0-rc.0:
resolution: {integrity: sha512-H0kl2w8jFL/FAk0xvjVing4bS3jd//mbg1QChDnn58l9Sc5RtduaKmLAL8n+eBw5jJo8ZjYV7CrEGage5LAOZQ==}
uri-js@4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
@@ -1583,8 +1583,8 @@ packages:
engines: {node: '>=16'}
hasBin: true
wrangler@3.103.2:
resolution: {integrity: sha512-eYcnubPhPBU1QMZYTam+vfCLpaQx+x1EWA6nFbLhid1eqNDAk1dNwNlbo+ZryrOHDEX3XlOxn2Z3Fx8vVv3hKw==}
wrangler@3.104.0:
resolution: {integrity: sha512-txxgkKZwPQrX1PDgY+ATWnnx4GSeNxUrnBumudWPRmXG0JdLzCf09R+723slMMT1m+CKQXU1KvuUHc/GxTnTyA==}
engines: {node: '>=16.17.0'}
hasBin: true
peerDependencies:
@@ -1672,7 +1672,7 @@ snapshots:
'@smithy/util-utf8': 2.3.0
tslib: 2.8.1
'@aws-sdk/client-s3@3.731.1':
'@aws-sdk/client-s3@3.732.0':
dependencies:
'@aws-crypto/sha1-browser': 5.2.0
'@aws-crypto/sha256-browser': 5.2.0
@@ -1681,7 +1681,7 @@ snapshots:
'@aws-sdk/credential-provider-node': 3.731.1
'@aws-sdk/middleware-bucket-endpoint': 3.731.0
'@aws-sdk/middleware-expect-continue': 3.731.0
'@aws-sdk/middleware-flexible-checksums': 3.731.0
'@aws-sdk/middleware-flexible-checksums': 3.732.0
'@aws-sdk/middleware-host-header': 3.731.0
'@aws-sdk/middleware-location-constraint': 3.731.0
'@aws-sdk/middleware-logger': 3.731.0
@@ -1896,7 +1896,7 @@ snapshots:
'@smithy/types': 4.1.0
tslib: 2.8.1
'@aws-sdk/middleware-flexible-checksums@3.731.0':
'@aws-sdk/middleware-flexible-checksums@3.732.0':
dependencies:
'@aws-crypto/crc32': 5.2.0
'@aws-crypto/crc32c': 5.2.0
@@ -2023,7 +2023,7 @@ snapshots:
'@smithy/util-middleware': 4.0.1
tslib: 2.8.1
'@aws-sdk/s3-request-presigner@3.731.1':
'@aws-sdk/s3-request-presigner@3.732.0':
dependencies:
'@aws-sdk/signature-v4-multi-region': 3.731.0
'@aws-sdk/types': 3.731.0
@@ -2129,7 +2129,7 @@ snapshots:
'@cloudflare/workerd-windows-64@1.20241230.0':
optional: true
'@cloudflare/workers-types@4.20250109.0': {}
'@cloudflare/workers-types@4.20250121.0': {}
'@cspotcode/source-map-support@0.8.1':
dependencies:
@@ -2706,14 +2706,14 @@ snapshots:
'@types/json-schema@7.0.15': {}
'@typescript-eslint/eslint-plugin@8.20.0(@typescript-eslint/parser@8.20.0(eslint@9.18.0)(typescript@5.4.5))(eslint@9.18.0)(typescript@5.4.5)':
'@typescript-eslint/eslint-plugin@8.21.0(@typescript-eslint/parser@8.21.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.20.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/scope-manager': 8.20.0
'@typescript-eslint/type-utils': 8.20.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/utils': 8.20.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 8.20.0
'@typescript-eslint/parser': 8.21.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/scope-manager': 8.21.0
'@typescript-eslint/type-utils': 8.21.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/utils': 8.21.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 8.21.0
eslint: 9.18.0
graphemer: 1.4.0
ignore: 5.3.2
@@ -2723,27 +2723,27 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/parser@8.20.0(eslint@9.18.0)(typescript@5.4.5)':
'@typescript-eslint/parser@8.21.0(eslint@9.18.0)(typescript@5.4.5)':
dependencies:
'@typescript-eslint/scope-manager': 8.20.0
'@typescript-eslint/types': 8.20.0
'@typescript-eslint/typescript-estree': 8.20.0(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 8.20.0
'@typescript-eslint/scope-manager': 8.21.0
'@typescript-eslint/types': 8.21.0
'@typescript-eslint/typescript-estree': 8.21.0(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 8.21.0
debug: 4.4.0
eslint: 9.18.0
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
'@typescript-eslint/scope-manager@8.20.0':
'@typescript-eslint/scope-manager@8.21.0':
dependencies:
'@typescript-eslint/types': 8.20.0
'@typescript-eslint/visitor-keys': 8.20.0
'@typescript-eslint/types': 8.21.0
'@typescript-eslint/visitor-keys': 8.21.0
'@typescript-eslint/type-utils@8.20.0(eslint@9.18.0)(typescript@5.4.5)':
'@typescript-eslint/type-utils@8.21.0(eslint@9.18.0)(typescript@5.4.5)':
dependencies:
'@typescript-eslint/typescript-estree': 8.20.0(typescript@5.4.5)
'@typescript-eslint/utils': 8.20.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/typescript-estree': 8.21.0(typescript@5.4.5)
'@typescript-eslint/utils': 8.21.0(eslint@9.18.0)(typescript@5.4.5)
debug: 4.4.0
eslint: 9.18.0
ts-api-utils: 2.0.0(typescript@5.4.5)
@@ -2751,12 +2751,12 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/types@8.20.0': {}
'@typescript-eslint/types@8.21.0': {}
'@typescript-eslint/typescript-estree@8.20.0(typescript@5.4.5)':
'@typescript-eslint/typescript-estree@8.21.0(typescript@5.4.5)':
dependencies:
'@typescript-eslint/types': 8.20.0
'@typescript-eslint/visitor-keys': 8.20.0
'@typescript-eslint/types': 8.21.0
'@typescript-eslint/visitor-keys': 8.21.0
debug: 4.4.0
fast-glob: 3.3.3
is-glob: 4.0.3
@@ -2767,20 +2767,20 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/utils@8.20.0(eslint@9.18.0)(typescript@5.4.5)':
'@typescript-eslint/utils@8.21.0(eslint@9.18.0)(typescript@5.4.5)':
dependencies:
'@eslint-community/eslint-utils': 4.4.1(eslint@9.18.0)
'@typescript-eslint/scope-manager': 8.20.0
'@typescript-eslint/types': 8.20.0
'@typescript-eslint/typescript-estree': 8.20.0(typescript@5.4.5)
'@typescript-eslint/scope-manager': 8.21.0
'@typescript-eslint/types': 8.21.0
'@typescript-eslint/typescript-estree': 8.21.0(typescript@5.4.5)
eslint: 9.18.0
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
'@typescript-eslint/visitor-keys@8.20.0':
'@typescript-eslint/visitor-keys@8.21.0':
dependencies:
'@typescript-eslint/types': 8.20.0
'@typescript-eslint/types': 8.21.0
eslint-visitor-keys: 4.2.0
abbrev@2.0.0: {}
@@ -3519,11 +3519,11 @@ snapshots:
dependencies:
prelude-ls: 1.2.1
typescript-eslint@8.20.0(eslint@9.18.0)(typescript@5.4.5):
typescript-eslint@8.21.0(eslint@9.18.0)(typescript@5.4.5):
dependencies:
'@typescript-eslint/eslint-plugin': 8.20.0(@typescript-eslint/parser@8.20.0(eslint@9.18.0)(typescript@5.4.5))(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/parser': 8.20.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/utils': 8.20.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/eslint-plugin': 8.21.0(@typescript-eslint/parser@8.21.0(eslint@9.18.0)(typescript@5.4.5))(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/parser': 8.21.0(eslint@9.18.0)(typescript@5.4.5)
'@typescript-eslint/utils': 8.21.0(eslint@9.18.0)(typescript@5.4.5)
eslint: 9.18.0
typescript: 5.4.5
transitivePeerDependencies:
@@ -3537,7 +3537,7 @@ snapshots:
dependencies:
'@fastify/busboy': 2.1.1
unenv-nightly@2.0.0-20250109-100802-88ad671:
unenv@2.0.0-rc.0:
dependencies:
defu: 6.1.4
mlly: 1.7.4
@@ -3572,7 +3572,7 @@ snapshots:
'@cloudflare/workerd-linux-arm64': 1.20241230.0
'@cloudflare/workerd-windows-64': 1.20241230.0
wrangler@3.103.2(@cloudflare/workers-types@4.20250109.0):
wrangler@3.104.0(@cloudflare/workers-types@4.20250121.0):
dependencies:
'@cloudflare/kv-asset-handler': 0.3.4
'@esbuild-plugins/node-globals-polyfill': 0.2.3(esbuild@0.17.19)
@@ -3581,10 +3581,10 @@ snapshots:
esbuild: 0.17.19
miniflare: 3.20241230.2
path-to-regexp: 6.3.0
unenv: unenv-nightly@2.0.0-20250109-100802-88ad671
unenv: 2.0.0-rc.0
workerd: 1.20241230.0
optionalDependencies:
'@cloudflare/workers-types': 4.20250109.0
'@cloudflare/workers-types': 4.20250121.0
fsevents: 2.3.3
transitivePeerDependencies:
- bufferutil

View File

@@ -13,7 +13,7 @@ export default {
"HAS_ADMIN_PASSWORDS": getAdminPasswords(c).length,
"ANNOUNCEMENT": getStringValue(c.env.ANNOUNCEMENT),
"PREFIX": c.env.PREFIX,
"PREFIX": getStringValue(c.env.PREFIX),
"ADDRESS_CHECK_REGEX": getStringValue(c.env.ADDRESS_CHECK_REGEX),
"ADDRESS_REGEX": getStringValue(c.env.ADDRESS_REGEX),
"MIN_ADDRESS_LEN": getIntValue(c.env.MIN_ADDRESS_LEN, 1),

View File

@@ -18,7 +18,7 @@ api.get('/open_api/settings', async (c) => {
return c.json({
"title": c.env.TITLE,
"announcement": getStringValue(c.env.ANNOUNCEMENT),
"prefix": c.env.PREFIX,
"prefix": getStringValue(c.env.PREFIX),
"addressRegex": getStringValue(c.env.ADDRESS_REGEX),
"minAddressLen": getIntValue(c.env.MIN_ADDRESS_LEN, 1),
"maxAddressLen": getIntValue(c.env.MAX_ADDRESS_LEN, 30),

View File

@@ -321,13 +321,13 @@ export const commonGetUserRole = async (
export const getAddressPrefix = async (c: Context<HonoCustomType>): Promise<string | undefined> => {
const user = c.get("userPayload");
if (!user) {
return c.env.PREFIX;
return getStringValue(c.env.PREFIX);
}
const user_role = await commonGetUserRole(c, user.user_id);
if (typeof user_role?.prefix === "string") {
return user_role.prefix;
}
return c.env.PREFIX;
return getStringValue(c.env.PREFIX);
}
export const getAllowDomains = async (c: Context<HonoCustomType>): Promise<string[]> => {

View File

@@ -85,9 +85,9 @@ ENABLE_AUTO_REPLY = false
# remove all attachment, mail maybe mising some information due to parsing
# REMOVE_ALL_ATTACHMENT = true
# Calling other woker to process email
#ENABLE_ANOTHER_WORKER = false
#ANOTHER_WORKER_LIST ="""
#[
# ENABLE_ANOTHER_WORKER = false
# ANOTHER_WORKER_LIST = """
# [
# {
# "binding":"AUTH_INBOX",
# "method":"rpcEmail",
@@ -96,8 +96,8 @@ ENABLE_AUTO_REPLY = false
# "account","activation","verify","verification","activate","confirmation","email","code","validate","registration","login","code","expire","confirm"
# ]
# }
#]
#"""
# ]
# """
[[d1_databases]]
binding = "DB"