https://pvzm.net/ to play [Read-only GitHub mirror] pvzm.net
modded vs pvz plants-vs-zombies plantsvszombies javascript online zombie noads jspvz pvzm game plants plant
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

chore: update package.json with new scripts and dependencies

- Added build script to run the build process.
- Introduced deploy script to build and deploy using wrangler.
- Changed license from ISC to CC-BY-NC-ND-4.0 in package.json.
- Added clean-css, html-minifier-terser, terser, and wrangler as new devDependencies.

Clay 4f0bcbe9 46ef11fb

+1764 -34
+9 -17
.github/workflows/main.yml
··· 8 8 9 9 permissions: 10 10 contents: write 11 - pages: write 12 - id-token: write 11 + deployments: write 13 12 14 13 concurrency: 15 - group: "pages" 14 + group: "cloudflare-pages" 16 15 cancel-in-progress: false 17 16 18 17 jobs: ··· 56 55 git push 57 56 58 57 deploy: 59 - environment: 60 - name: github-pages 61 - url: ${{ steps.deployment.outputs.page_url }} 62 58 runs-on: ubuntu-latest 63 59 needs: version-file-and-lint 64 60 steps: ··· 95 91 html-minifier --collapse-whitespace --remove-comments --remove-optional-tags --remove-redundant-attributes --remove-script-type-attributes --remove-tag-whitespace --use-short-doctype --minify-css true --minify-js true -o "$file.min" "$file" 96 92 mv "$file.min" "$file" 97 93 done 98 - 99 - - name: Setup Pages 100 - uses: actions/configure-pages@v4 101 - 102 - - name: Upload artifact 103 - uses: actions/upload-pages-artifact@v3 94 + 95 + - name: Deploy to Cloudflare Pages (Direct Upload) 96 + uses: cloudflare/wrangler-action@v3 104 97 with: 105 - path: "." 106 - 107 - - name: Deploy to GitHub Pages 108 - id: deployment 109 - uses: actions/deploy-pages@v4 98 + apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} 99 + accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} 100 + command: pages deploy . --project-name=pvzm 101 + gitHubToken: ${{ secrets.GITHUB_TOKEN }}
+1
.gitignore
··· 1 1 ffmpeg* 2 2 node_modules/ 3 + dist/ 3 4 .qodo 4 5 eslint.log
+3 -3
game/iframe.html
··· 2 2 <head> 3 3 <link rel="stylesheet" href="Custom.css" /> 4 4 <meta http-equiv="X-Frame-Options" content="DENY" /> 5 - <title>Plants vs. Zombies MODDED Official</title> 5 + <title>Plants vs. Zombies - MODDED Official</title> 6 6 <link rel="icon" href="https://pvzm.net/game/images/gameicon2.png" type="image/png" /> 7 7 <script> 8 8 window.addEventListener("beforeunload", function (e) { ··· 24 24 <meta property="og:url" content="https://pvzm.net/game/iframe.html" /> 25 25 <meta property="og:site_name" content="ROBLNET13" /> 26 26 <meta property="og:image" content="https://pvzm.net/game/images/gamethumbnail5.png" /> 27 - <meta property="og:image:alt" content="Plants vs. Zombies MODDED" /> 27 + <meta property="og:image:alt" content="Plants vs. Zombies - MODDED" /> 28 28 <meta property="og:image:type" content="image/png" /> 29 29 <meta name="twitter:card" content="summary_large_image" /> 30 30 <meta name="theme-color" content="#ff2200" /> 31 31 <meta name="twitter:title" content="Play Plants vs. Zombies Modded Online" /> 32 - <meta name="twitter:description" content="Play Plants vs. Zombie Modded here for Free - Mod by ROBLNET13 on Github." /> 32 + <meta name="twitter:description" content="Play Plants vs. Zombie Modded here for Free - Mod by ROBlNET13 on Github." /> 33 33 <meta name="twitter:image" content="https://pvzm.net/game/images/gamethumbnail5.png" /> 34 34 <link rel="stylesheet" href="UI.css" /> 35 35 <!-- REMOVE THIS SCRIPT AFTER REFACTOR IS DONE -->
+3 -3
game/index.html
··· 3 3 <head> 4 4 <meta charset="UTF-8" /> 5 5 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 6 - <title>Plants vs. Zombies MODDED Official</title> 6 + <title>Plants vs. Zombies - MODDED Official</title> 7 7 <meta property="og:title" content="Play Plants vs Zombies Modded Online" /> 8 8 <meta 9 9 property="og:description" ··· 12 12 <meta property="og:url" content="https://pvzm.net/game/iframe.html" /> 13 13 <meta property="og:site_name" content="ROBLNET13" /> 14 14 <meta property="og:image" content="https://pvzm.net/game/images/gamethumbnail5.png" /> 15 - <meta property="og:image:alt" content="Plants vs. Zombies MODDED" /> 15 + <meta property="og:image:alt" content="Plants vs. Zombies - MODDED" /> 16 16 <meta property="og:image:type" content="image/png" /> 17 17 <meta name="twitter:card" content="summary_large_image" /> 18 18 <meta name="theme-color" content="#ff2200" /> 19 19 <meta name="twitter:title" content="Play Plants vs. Zombies Modded Online" /> 20 - <meta name="twitter:description" content="Play Plants vs. Zombie Modded here for Free - Mod by ROBLNET13 on Github." /> 20 + <meta name="twitter:description" content="Play Plants vs. Zombie Modded here for Free - Mod by ROBlNET13 on Github." /> 21 21 <meta name="twitter:image" content="https://pvzm.net/game/images/gamethumbnail5.png" /> 22 22 <meta http-equiv="refresh" content="0; url=iframe.html" /> 23 23 </head>
+3 -3
index.html
··· 10 10 content="Play Plants vs Zombies Modded here for Free - A tower defense game created by PopCap Games and released on May 5, 2009. Click to Play now! Mod by ROBLNET13 on Github." 11 11 /> 12 12 <meta property="og:url" content="https://pvzm.net/game/iframe.html" /> 13 - <meta property="og:site_name" content="ROBLNET13" /> 13 + <meta property="og:site_name" content="ROBlNET13" /> 14 14 <meta property="og:image" content="https://pvzm.net/game/images/gamethumbnail5.png" /> 15 - <meta property="og:image:alt" content="Plants vs. Zombies MODDED" /> 15 + <meta property="og:image:alt" content="Plants vs. Zombies - MODDED" /> 16 16 <meta property="og:image:type" content="image/png" /> 17 17 <meta name="twitter:card" content="summary_large_image" /> 18 18 <meta name="theme-color" content="#ff2200" /> 19 19 <meta name="twitter:title" content="Play Plants vs. Zombies Modded Online" /> 20 - <meta name="twitter:description" content="Play Plants vs. Zombie Modded here for Free - Mod by ROBLNET13 on Github." /> 20 + <meta name="twitter:description" content="Play Plants vs. Zombie Modded here for Free - Mod by ROBlNET13 on Github." /> 21 21 <meta name="twitter:image" content="https://pvzm.net/game/images/gamethumbnail5.png" /> 22 22 <meta http-equiv="refresh" content="0; url=game/iframe.html" /> 23 23 </head>
+1736 -5
package-lock.json
··· 7 7 "": { 8 8 "name": "pvz", 9 9 "version": "1.0.0", 10 - "license": "ISC", 10 + "license": "CC-BY-NC-ND-4.0", 11 11 "devDependencies": { 12 12 "@eslint/js": "^9.26.0", 13 + "clean-css": "^5.3.3", 13 14 "eslint": "^9.26.0", 14 15 "eslint-plugin-eqeqeq-fix": "^1.0.3", 15 16 "globals": "^16.0.0", 16 - "prettier": "^3.5.3" 17 + "html-minifier-terser": "^7.2.0", 18 + "prettier": "^3.5.3", 19 + "terser": "^5.31.6", 20 + "wrangler": "^4.54.0" 21 + } 22 + }, 23 + "node_modules/@cloudflare/kv-asset-handler": { 24 + "version": "0.4.1", 25 + "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.4.1.tgz", 26 + "integrity": "sha512-Nu8ahitGFFJztxUml9oD/DLb7Z28C8cd8F46IVQ7y5Btz575pvMY8AqZsXkX7Gds29eCKdMgIHjIvzskHgPSFg==", 27 + "dev": true, 28 + "license": "MIT OR Apache-2.0", 29 + "dependencies": { 30 + "mime": "^3.0.0" 31 + }, 32 + "engines": { 33 + "node": ">=18.0.0" 34 + } 35 + }, 36 + "node_modules/@cloudflare/unenv-preset": { 37 + "version": "2.7.13", 38 + "resolved": "https://registry.npmjs.org/@cloudflare/unenv-preset/-/unenv-preset-2.7.13.tgz", 39 + "integrity": "sha512-NulO1H8R/DzsJguLC0ndMuk4Ufv0KSlN+E54ay9rn9ZCQo0kpAPwwh3LhgpZ96a3Dr6L9LqW57M4CqC34iLOvw==", 40 + "dev": true, 41 + "license": "MIT OR Apache-2.0", 42 + "peerDependencies": { 43 + "unenv": "2.0.0-rc.24", 44 + "workerd": "^1.20251202.0" 45 + }, 46 + "peerDependenciesMeta": { 47 + "workerd": { 48 + "optional": true 49 + } 50 + } 51 + }, 52 + "node_modules/@cloudflare/workerd-darwin-64": { 53 + "version": "1.20251210.0", 54 + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20251210.0.tgz", 55 + "integrity": "sha512-Nn9X1moUDERA9xtFdCQ2XpQXgAS9pOjiCxvOT8sVx9UJLAiBLkfSCGbpsYdarODGybXCpjRlc77Yppuolvt7oQ==", 56 + "cpu": [ 57 + "x64" 58 + ], 59 + "dev": true, 60 + "license": "Apache-2.0", 61 + "optional": true, 62 + "os": [ 63 + "darwin" 64 + ], 65 + "engines": { 66 + "node": ">=16" 67 + } 68 + }, 69 + "node_modules/@cloudflare/workerd-darwin-arm64": { 70 + "version": "1.20251210.0", 71 + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20251210.0.tgz", 72 + "integrity": "sha512-Mg8iYIZQFnbevq/ls9eW/eneWTk/EE13Pej1MwfkY5et0jVpdHnvOLywy/o+QtMJFef1AjsqXGULwAneYyBfHw==", 73 + "cpu": [ 74 + "arm64" 75 + ], 76 + "dev": true, 77 + "license": "Apache-2.0", 78 + "optional": true, 79 + "os": [ 80 + "darwin" 81 + ], 82 + "engines": { 83 + "node": ">=16" 84 + } 85 + }, 86 + "node_modules/@cloudflare/workerd-linux-64": { 87 + "version": "1.20251210.0", 88 + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20251210.0.tgz", 89 + "integrity": "sha512-kjC2fCZhZ2Gkm1biwk2qByAYpGguK5Gf5ic8owzSCUw0FOUfQxTZUT9Lp3gApxsfTLbbnLBrX/xzWjywH9QR4g==", 90 + "cpu": [ 91 + "x64" 92 + ], 93 + "dev": true, 94 + "license": "Apache-2.0", 95 + "optional": true, 96 + "os": [ 97 + "linux" 98 + ], 99 + "engines": { 100 + "node": ">=16" 101 + } 102 + }, 103 + "node_modules/@cloudflare/workerd-linux-arm64": { 104 + "version": "1.20251210.0", 105 + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20251210.0.tgz", 106 + "integrity": "sha512-2IB37nXi7PZVQLa1OCuO7/6pNxqisRSO8DmCQ5x/3sezI5op1vwOxAcb1osAnuVsVN9bbvpw70HJvhKruFJTuA==", 107 + "cpu": [ 108 + "arm64" 109 + ], 110 + "dev": true, 111 + "license": "Apache-2.0", 112 + "optional": true, 113 + "os": [ 114 + "linux" 115 + ], 116 + "engines": { 117 + "node": ">=16" 118 + } 119 + }, 120 + "node_modules/@cloudflare/workerd-windows-64": { 121 + "version": "1.20251210.0", 122 + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20251210.0.tgz", 123 + "integrity": "sha512-Uaz6/9XE+D6E7pCY4OvkCuJHu7HcSDzeGcCGY1HLhojXhHd7yL52c3yfiyJdS8hPatiAa0nn5qSI/42+aTdDSw==", 124 + "cpu": [ 125 + "x64" 126 + ], 127 + "dev": true, 128 + "license": "Apache-2.0", 129 + "optional": true, 130 + "os": [ 131 + "win32" 132 + ], 133 + "engines": { 134 + "node": ">=16" 135 + } 136 + }, 137 + "node_modules/@cspotcode/source-map-support": { 138 + "version": "0.8.1", 139 + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", 140 + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", 141 + "dev": true, 142 + "license": "MIT", 143 + "dependencies": { 144 + "@jridgewell/trace-mapping": "0.3.9" 145 + }, 146 + "engines": { 147 + "node": ">=12" 148 + } 149 + }, 150 + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { 151 + "version": "0.3.9", 152 + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", 153 + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", 154 + "dev": true, 155 + "license": "MIT", 156 + "dependencies": { 157 + "@jridgewell/resolve-uri": "^3.0.3", 158 + "@jridgewell/sourcemap-codec": "^1.4.10" 159 + } 160 + }, 161 + "node_modules/@emnapi/runtime": { 162 + "version": "1.8.0", 163 + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.0.tgz", 164 + "integrity": "sha512-Z82FDl1ByxqPEPrAYYeTQVlx2FSHPe1qwX465c+96IRS3fTdSYRoJcRxg3g2fEG5I69z1dSEWQlNRRr0/677mg==", 165 + "dev": true, 166 + "license": "MIT", 167 + "optional": true, 168 + "dependencies": { 169 + "tslib": "^2.4.0" 170 + } 171 + }, 172 + "node_modules/@esbuild/aix-ppc64": { 173 + "version": "0.27.0", 174 + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.0.tgz", 175 + "integrity": "sha512-KuZrd2hRjz01y5JK9mEBSD3Vj3mbCvemhT466rSuJYeE/hjuBrHfjjcjMdTm/sz7au+++sdbJZJmuBwQLuw68A==", 176 + "cpu": [ 177 + "ppc64" 178 + ], 179 + "dev": true, 180 + "license": "MIT", 181 + "optional": true, 182 + "os": [ 183 + "aix" 184 + ], 185 + "engines": { 186 + "node": ">=18" 187 + } 188 + }, 189 + "node_modules/@esbuild/android-arm": { 190 + "version": "0.27.0", 191 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.0.tgz", 192 + "integrity": "sha512-j67aezrPNYWJEOHUNLPj9maeJte7uSMM6gMoxfPC9hOg8N02JuQi/T7ewumf4tNvJadFkvLZMlAq73b9uwdMyQ==", 193 + "cpu": [ 194 + "arm" 195 + ], 196 + "dev": true, 197 + "license": "MIT", 198 + "optional": true, 199 + "os": [ 200 + "android" 201 + ], 202 + "engines": { 203 + "node": ">=18" 204 + } 205 + }, 206 + "node_modules/@esbuild/android-arm64": { 207 + "version": "0.27.0", 208 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.0.tgz", 209 + "integrity": "sha512-CC3vt4+1xZrs97/PKDkl0yN7w8edvU2vZvAFGD16n9F0Cvniy5qvzRXjfO1l94efczkkQE6g1x0i73Qf5uthOQ==", 210 + "cpu": [ 211 + "arm64" 212 + ], 213 + "dev": true, 214 + "license": "MIT", 215 + "optional": true, 216 + "os": [ 217 + "android" 218 + ], 219 + "engines": { 220 + "node": ">=18" 221 + } 222 + }, 223 + "node_modules/@esbuild/android-x64": { 224 + "version": "0.27.0", 225 + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.0.tgz", 226 + "integrity": "sha512-wurMkF1nmQajBO1+0CJmcN17U4BP6GqNSROP8t0X/Jiw2ltYGLHpEksp9MpoBqkrFR3kv2/te6Sha26k3+yZ9Q==", 227 + "cpu": [ 228 + "x64" 229 + ], 230 + "dev": true, 231 + "license": "MIT", 232 + "optional": true, 233 + "os": [ 234 + "android" 235 + ], 236 + "engines": { 237 + "node": ">=18" 238 + } 239 + }, 240 + "node_modules/@esbuild/darwin-arm64": { 241 + "version": "0.27.0", 242 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.0.tgz", 243 + "integrity": "sha512-uJOQKYCcHhg07DL7i8MzjvS2LaP7W7Pn/7uA0B5S1EnqAirJtbyw4yC5jQ5qcFjHK9l6o/MX9QisBg12kNkdHg==", 244 + "cpu": [ 245 + "arm64" 246 + ], 247 + "dev": true, 248 + "license": "MIT", 249 + "optional": true, 250 + "os": [ 251 + "darwin" 252 + ], 253 + "engines": { 254 + "node": ">=18" 255 + } 256 + }, 257 + "node_modules/@esbuild/darwin-x64": { 258 + "version": "0.27.0", 259 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.0.tgz", 260 + "integrity": "sha512-8mG6arH3yB/4ZXiEnXof5MK72dE6zM9cDvUcPtxhUZsDjESl9JipZYW60C3JGreKCEP+p8P/72r69m4AZGJd5g==", 261 + "cpu": [ 262 + "x64" 263 + ], 264 + "dev": true, 265 + "license": "MIT", 266 + "optional": true, 267 + "os": [ 268 + "darwin" 269 + ], 270 + "engines": { 271 + "node": ">=18" 272 + } 273 + }, 274 + "node_modules/@esbuild/freebsd-arm64": { 275 + "version": "0.27.0", 276 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.0.tgz", 277 + "integrity": "sha512-9FHtyO988CwNMMOE3YIeci+UV+x5Zy8fI2qHNpsEtSF83YPBmE8UWmfYAQg6Ux7Gsmd4FejZqnEUZCMGaNQHQw==", 278 + "cpu": [ 279 + "arm64" 280 + ], 281 + "dev": true, 282 + "license": "MIT", 283 + "optional": true, 284 + "os": [ 285 + "freebsd" 286 + ], 287 + "engines": { 288 + "node": ">=18" 289 + } 290 + }, 291 + "node_modules/@esbuild/freebsd-x64": { 292 + "version": "0.27.0", 293 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.0.tgz", 294 + "integrity": "sha512-zCMeMXI4HS/tXvJz8vWGexpZj2YVtRAihHLk1imZj4efx1BQzN76YFeKqlDr3bUWI26wHwLWPd3rwh6pe4EV7g==", 295 + "cpu": [ 296 + "x64" 297 + ], 298 + "dev": true, 299 + "license": "MIT", 300 + "optional": true, 301 + "os": [ 302 + "freebsd" 303 + ], 304 + "engines": { 305 + "node": ">=18" 306 + } 307 + }, 308 + "node_modules/@esbuild/linux-arm": { 309 + "version": "0.27.0", 310 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.0.tgz", 311 + "integrity": "sha512-t76XLQDpxgmq2cNXKTVEB7O7YMb42atj2Re2Haf45HkaUpjM2J0UuJZDuaGbPbamzZ7bawyGFUkodL+zcE+jvQ==", 312 + "cpu": [ 313 + "arm" 314 + ], 315 + "dev": true, 316 + "license": "MIT", 317 + "optional": true, 318 + "os": [ 319 + "linux" 320 + ], 321 + "engines": { 322 + "node": ">=18" 323 + } 324 + }, 325 + "node_modules/@esbuild/linux-arm64": { 326 + "version": "0.27.0", 327 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.0.tgz", 328 + "integrity": "sha512-AS18v0V+vZiLJyi/4LphvBE+OIX682Pu7ZYNsdUHyUKSoRwdnOsMf6FDekwoAFKej14WAkOef3zAORJgAtXnlQ==", 329 + "cpu": [ 330 + "arm64" 331 + ], 332 + "dev": true, 333 + "license": "MIT", 334 + "optional": true, 335 + "os": [ 336 + "linux" 337 + ], 338 + "engines": { 339 + "node": ">=18" 340 + } 341 + }, 342 + "node_modules/@esbuild/linux-ia32": { 343 + "version": "0.27.0", 344 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.0.tgz", 345 + "integrity": "sha512-Mz1jxqm/kfgKkc/KLHC5qIujMvnnarD9ra1cEcrs7qshTUSksPihGrWHVG5+osAIQ68577Zpww7SGapmzSt4Nw==", 346 + "cpu": [ 347 + "ia32" 348 + ], 349 + "dev": true, 350 + "license": "MIT", 351 + "optional": true, 352 + "os": [ 353 + "linux" 354 + ], 355 + "engines": { 356 + "node": ">=18" 357 + } 358 + }, 359 + "node_modules/@esbuild/linux-loong64": { 360 + "version": "0.27.0", 361 + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.0.tgz", 362 + "integrity": "sha512-QbEREjdJeIreIAbdG2hLU1yXm1uu+LTdzoq1KCo4G4pFOLlvIspBm36QrQOar9LFduavoWX2msNFAAAY9j4BDg==", 363 + "cpu": [ 364 + "loong64" 365 + ], 366 + "dev": true, 367 + "license": "MIT", 368 + "optional": true, 369 + "os": [ 370 + "linux" 371 + ], 372 + "engines": { 373 + "node": ">=18" 374 + } 375 + }, 376 + "node_modules/@esbuild/linux-mips64el": { 377 + "version": "0.27.0", 378 + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.0.tgz", 379 + "integrity": "sha512-sJz3zRNe4tO2wxvDpH/HYJilb6+2YJxo/ZNbVdtFiKDufzWq4JmKAiHy9iGoLjAV7r/W32VgaHGkk35cUXlNOg==", 380 + "cpu": [ 381 + "mips64el" 382 + ], 383 + "dev": true, 384 + "license": "MIT", 385 + "optional": true, 386 + "os": [ 387 + "linux" 388 + ], 389 + "engines": { 390 + "node": ">=18" 391 + } 392 + }, 393 + "node_modules/@esbuild/linux-ppc64": { 394 + "version": "0.27.0", 395 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.0.tgz", 396 + "integrity": "sha512-z9N10FBD0DCS2dmSABDBb5TLAyF1/ydVb+N4pi88T45efQ/w4ohr/F/QYCkxDPnkhkp6AIpIcQKQ8F0ANoA2JA==", 397 + "cpu": [ 398 + "ppc64" 399 + ], 400 + "dev": true, 401 + "license": "MIT", 402 + "optional": true, 403 + "os": [ 404 + "linux" 405 + ], 406 + "engines": { 407 + "node": ">=18" 408 + } 409 + }, 410 + "node_modules/@esbuild/linux-riscv64": { 411 + "version": "0.27.0", 412 + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.0.tgz", 413 + "integrity": "sha512-pQdyAIZ0BWIC5GyvVFn5awDiO14TkT/19FTmFcPdDec94KJ1uZcmFs21Fo8auMXzD4Tt+diXu1LW1gHus9fhFQ==", 414 + "cpu": [ 415 + "riscv64" 416 + ], 417 + "dev": true, 418 + "license": "MIT", 419 + "optional": true, 420 + "os": [ 421 + "linux" 422 + ], 423 + "engines": { 424 + "node": ">=18" 425 + } 426 + }, 427 + "node_modules/@esbuild/linux-s390x": { 428 + "version": "0.27.0", 429 + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.0.tgz", 430 + "integrity": "sha512-hPlRWR4eIDDEci953RI1BLZitgi5uqcsjKMxwYfmi4LcwyWo2IcRP+lThVnKjNtk90pLS8nKdroXYOqW+QQH+w==", 431 + "cpu": [ 432 + "s390x" 433 + ], 434 + "dev": true, 435 + "license": "MIT", 436 + "optional": true, 437 + "os": [ 438 + "linux" 439 + ], 440 + "engines": { 441 + "node": ">=18" 442 + } 443 + }, 444 + "node_modules/@esbuild/linux-x64": { 445 + "version": "0.27.0", 446 + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.0.tgz", 447 + "integrity": "sha512-1hBWx4OUJE2cab++aVZ7pObD6s+DK4mPGpemtnAORBvb5l/g5xFGk0vc0PjSkrDs0XaXj9yyob3d14XqvnQ4gw==", 448 + "cpu": [ 449 + "x64" 450 + ], 451 + "dev": true, 452 + "license": "MIT", 453 + "optional": true, 454 + "os": [ 455 + "linux" 456 + ], 457 + "engines": { 458 + "node": ">=18" 459 + } 460 + }, 461 + "node_modules/@esbuild/netbsd-arm64": { 462 + "version": "0.27.0", 463 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.0.tgz", 464 + "integrity": "sha512-6m0sfQfxfQfy1qRuecMkJlf1cIzTOgyaeXaiVaaki8/v+WB+U4hc6ik15ZW6TAllRlg/WuQXxWj1jx6C+dfy3w==", 465 + "cpu": [ 466 + "arm64" 467 + ], 468 + "dev": true, 469 + "license": "MIT", 470 + "optional": true, 471 + "os": [ 472 + "netbsd" 473 + ], 474 + "engines": { 475 + "node": ">=18" 476 + } 477 + }, 478 + "node_modules/@esbuild/netbsd-x64": { 479 + "version": "0.27.0", 480 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.0.tgz", 481 + "integrity": "sha512-xbbOdfn06FtcJ9d0ShxxvSn2iUsGd/lgPIO2V3VZIPDbEaIj1/3nBBe1AwuEZKXVXkMmpr6LUAgMkLD/4D2PPA==", 482 + "cpu": [ 483 + "x64" 484 + ], 485 + "dev": true, 486 + "license": "MIT", 487 + "optional": true, 488 + "os": [ 489 + "netbsd" 490 + ], 491 + "engines": { 492 + "node": ">=18" 493 + } 494 + }, 495 + "node_modules/@esbuild/openbsd-arm64": { 496 + "version": "0.27.0", 497 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.0.tgz", 498 + "integrity": "sha512-fWgqR8uNbCQ/GGv0yhzttj6sU/9Z5/Sv/VGU3F5OuXK6J6SlriONKrQ7tNlwBrJZXRYk5jUhuWvF7GYzGguBZQ==", 499 + "cpu": [ 500 + "arm64" 501 + ], 502 + "dev": true, 503 + "license": "MIT", 504 + "optional": true, 505 + "os": [ 506 + "openbsd" 507 + ], 508 + "engines": { 509 + "node": ">=18" 510 + } 511 + }, 512 + "node_modules/@esbuild/openbsd-x64": { 513 + "version": "0.27.0", 514 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.0.tgz", 515 + "integrity": "sha512-aCwlRdSNMNxkGGqQajMUza6uXzR/U0dIl1QmLjPtRbLOx3Gy3otfFu/VjATy4yQzo9yFDGTxYDo1FfAD9oRD2A==", 516 + "cpu": [ 517 + "x64" 518 + ], 519 + "dev": true, 520 + "license": "MIT", 521 + "optional": true, 522 + "os": [ 523 + "openbsd" 524 + ], 525 + "engines": { 526 + "node": ">=18" 527 + } 528 + }, 529 + "node_modules/@esbuild/openharmony-arm64": { 530 + "version": "0.27.0", 531 + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.0.tgz", 532 + "integrity": "sha512-nyvsBccxNAsNYz2jVFYwEGuRRomqZ149A39SHWk4hV0jWxKM0hjBPm3AmdxcbHiFLbBSwG6SbpIcUbXjgyECfA==", 533 + "cpu": [ 534 + "arm64" 535 + ], 536 + "dev": true, 537 + "license": "MIT", 538 + "optional": true, 539 + "os": [ 540 + "openharmony" 541 + ], 542 + "engines": { 543 + "node": ">=18" 544 + } 545 + }, 546 + "node_modules/@esbuild/sunos-x64": { 547 + "version": "0.27.0", 548 + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.0.tgz", 549 + "integrity": "sha512-Q1KY1iJafM+UX6CFEL+F4HRTgygmEW568YMqDA5UV97AuZSm21b7SXIrRJDwXWPzr8MGr75fUZPV67FdtMHlHA==", 550 + "cpu": [ 551 + "x64" 552 + ], 553 + "dev": true, 554 + "license": "MIT", 555 + "optional": true, 556 + "os": [ 557 + "sunos" 558 + ], 559 + "engines": { 560 + "node": ">=18" 561 + } 562 + }, 563 + "node_modules/@esbuild/win32-arm64": { 564 + "version": "0.27.0", 565 + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.0.tgz", 566 + "integrity": "sha512-W1eyGNi6d+8kOmZIwi/EDjrL9nxQIQ0MiGqe/AWc6+IaHloxHSGoeRgDRKHFISThLmsewZ5nHFvGFWdBYlgKPg==", 567 + "cpu": [ 568 + "arm64" 569 + ], 570 + "dev": true, 571 + "license": "MIT", 572 + "optional": true, 573 + "os": [ 574 + "win32" 575 + ], 576 + "engines": { 577 + "node": ">=18" 578 + } 579 + }, 580 + "node_modules/@esbuild/win32-ia32": { 581 + "version": "0.27.0", 582 + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.0.tgz", 583 + "integrity": "sha512-30z1aKL9h22kQhilnYkORFYt+3wp7yZsHWus+wSKAJR8JtdfI76LJ4SBdMsCopTR3z/ORqVu5L1vtnHZWVj4cQ==", 584 + "cpu": [ 585 + "ia32" 586 + ], 587 + "dev": true, 588 + "license": "MIT", 589 + "optional": true, 590 + "os": [ 591 + "win32" 592 + ], 593 + "engines": { 594 + "node": ">=18" 595 + } 596 + }, 597 + "node_modules/@esbuild/win32-x64": { 598 + "version": "0.27.0", 599 + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.0.tgz", 600 + "integrity": "sha512-aIitBcjQeyOhMTImhLZmtxfdOcuNRpwlPNmlFKPcHQYPhEssw75Cl1TSXJXpMkzaua9FUetx/4OQKq7eJul5Cg==", 601 + "cpu": [ 602 + "x64" 603 + ], 604 + "dev": true, 605 + "license": "MIT", 606 + "optional": true, 607 + "os": [ 608 + "win32" 609 + ], 610 + "engines": { 611 + "node": ">=18" 17 612 } 18 613 }, 19 614 "node_modules/@eslint-community/eslint-utils": { ··· 233 828 "url": "https://github.com/sponsors/nzakas" 234 829 } 235 830 }, 831 + "node_modules/@img/sharp-darwin-arm64": { 832 + "version": "0.33.5", 833 + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz", 834 + "integrity": "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==", 835 + "cpu": [ 836 + "arm64" 837 + ], 838 + "dev": true, 839 + "license": "Apache-2.0", 840 + "optional": true, 841 + "os": [ 842 + "darwin" 843 + ], 844 + "engines": { 845 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 846 + }, 847 + "funding": { 848 + "url": "https://opencollective.com/libvips" 849 + }, 850 + "optionalDependencies": { 851 + "@img/sharp-libvips-darwin-arm64": "1.0.4" 852 + } 853 + }, 854 + "node_modules/@img/sharp-darwin-x64": { 855 + "version": "0.33.5", 856 + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz", 857 + "integrity": "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==", 858 + "cpu": [ 859 + "x64" 860 + ], 861 + "dev": true, 862 + "license": "Apache-2.0", 863 + "optional": true, 864 + "os": [ 865 + "darwin" 866 + ], 867 + "engines": { 868 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 869 + }, 870 + "funding": { 871 + "url": "https://opencollective.com/libvips" 872 + }, 873 + "optionalDependencies": { 874 + "@img/sharp-libvips-darwin-x64": "1.0.4" 875 + } 876 + }, 877 + "node_modules/@img/sharp-libvips-darwin-arm64": { 878 + "version": "1.0.4", 879 + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz", 880 + "integrity": "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==", 881 + "cpu": [ 882 + "arm64" 883 + ], 884 + "dev": true, 885 + "license": "LGPL-3.0-or-later", 886 + "optional": true, 887 + "os": [ 888 + "darwin" 889 + ], 890 + "funding": { 891 + "url": "https://opencollective.com/libvips" 892 + } 893 + }, 894 + "node_modules/@img/sharp-libvips-darwin-x64": { 895 + "version": "1.0.4", 896 + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz", 897 + "integrity": "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==", 898 + "cpu": [ 899 + "x64" 900 + ], 901 + "dev": true, 902 + "license": "LGPL-3.0-or-later", 903 + "optional": true, 904 + "os": [ 905 + "darwin" 906 + ], 907 + "funding": { 908 + "url": "https://opencollective.com/libvips" 909 + } 910 + }, 911 + "node_modules/@img/sharp-libvips-linux-arm": { 912 + "version": "1.0.5", 913 + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz", 914 + "integrity": "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==", 915 + "cpu": [ 916 + "arm" 917 + ], 918 + "dev": true, 919 + "license": "LGPL-3.0-or-later", 920 + "optional": true, 921 + "os": [ 922 + "linux" 923 + ], 924 + "funding": { 925 + "url": "https://opencollective.com/libvips" 926 + } 927 + }, 928 + "node_modules/@img/sharp-libvips-linux-arm64": { 929 + "version": "1.0.4", 930 + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz", 931 + "integrity": "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==", 932 + "cpu": [ 933 + "arm64" 934 + ], 935 + "dev": true, 936 + "license": "LGPL-3.0-or-later", 937 + "optional": true, 938 + "os": [ 939 + "linux" 940 + ], 941 + "funding": { 942 + "url": "https://opencollective.com/libvips" 943 + } 944 + }, 945 + "node_modules/@img/sharp-libvips-linux-s390x": { 946 + "version": "1.0.4", 947 + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz", 948 + "integrity": "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==", 949 + "cpu": [ 950 + "s390x" 951 + ], 952 + "dev": true, 953 + "license": "LGPL-3.0-or-later", 954 + "optional": true, 955 + "os": [ 956 + "linux" 957 + ], 958 + "funding": { 959 + "url": "https://opencollective.com/libvips" 960 + } 961 + }, 962 + "node_modules/@img/sharp-libvips-linux-x64": { 963 + "version": "1.0.4", 964 + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz", 965 + "integrity": "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==", 966 + "cpu": [ 967 + "x64" 968 + ], 969 + "dev": true, 970 + "license": "LGPL-3.0-or-later", 971 + "optional": true, 972 + "os": [ 973 + "linux" 974 + ], 975 + "funding": { 976 + "url": "https://opencollective.com/libvips" 977 + } 978 + }, 979 + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { 980 + "version": "1.0.4", 981 + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz", 982 + "integrity": "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==", 983 + "cpu": [ 984 + "arm64" 985 + ], 986 + "dev": true, 987 + "license": "LGPL-3.0-or-later", 988 + "optional": true, 989 + "os": [ 990 + "linux" 991 + ], 992 + "funding": { 993 + "url": "https://opencollective.com/libvips" 994 + } 995 + }, 996 + "node_modules/@img/sharp-libvips-linuxmusl-x64": { 997 + "version": "1.0.4", 998 + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz", 999 + "integrity": "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==", 1000 + "cpu": [ 1001 + "x64" 1002 + ], 1003 + "dev": true, 1004 + "license": "LGPL-3.0-or-later", 1005 + "optional": true, 1006 + "os": [ 1007 + "linux" 1008 + ], 1009 + "funding": { 1010 + "url": "https://opencollective.com/libvips" 1011 + } 1012 + }, 1013 + "node_modules/@img/sharp-linux-arm": { 1014 + "version": "0.33.5", 1015 + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz", 1016 + "integrity": "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==", 1017 + "cpu": [ 1018 + "arm" 1019 + ], 1020 + "dev": true, 1021 + "license": "Apache-2.0", 1022 + "optional": true, 1023 + "os": [ 1024 + "linux" 1025 + ], 1026 + "engines": { 1027 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1028 + }, 1029 + "funding": { 1030 + "url": "https://opencollective.com/libvips" 1031 + }, 1032 + "optionalDependencies": { 1033 + "@img/sharp-libvips-linux-arm": "1.0.5" 1034 + } 1035 + }, 1036 + "node_modules/@img/sharp-linux-arm64": { 1037 + "version": "0.33.5", 1038 + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz", 1039 + "integrity": "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==", 1040 + "cpu": [ 1041 + "arm64" 1042 + ], 1043 + "dev": true, 1044 + "license": "Apache-2.0", 1045 + "optional": true, 1046 + "os": [ 1047 + "linux" 1048 + ], 1049 + "engines": { 1050 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1051 + }, 1052 + "funding": { 1053 + "url": "https://opencollective.com/libvips" 1054 + }, 1055 + "optionalDependencies": { 1056 + "@img/sharp-libvips-linux-arm64": "1.0.4" 1057 + } 1058 + }, 1059 + "node_modules/@img/sharp-linux-s390x": { 1060 + "version": "0.33.5", 1061 + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz", 1062 + "integrity": "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==", 1063 + "cpu": [ 1064 + "s390x" 1065 + ], 1066 + "dev": true, 1067 + "license": "Apache-2.0", 1068 + "optional": true, 1069 + "os": [ 1070 + "linux" 1071 + ], 1072 + "engines": { 1073 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1074 + }, 1075 + "funding": { 1076 + "url": "https://opencollective.com/libvips" 1077 + }, 1078 + "optionalDependencies": { 1079 + "@img/sharp-libvips-linux-s390x": "1.0.4" 1080 + } 1081 + }, 1082 + "node_modules/@img/sharp-linux-x64": { 1083 + "version": "0.33.5", 1084 + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz", 1085 + "integrity": "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==", 1086 + "cpu": [ 1087 + "x64" 1088 + ], 1089 + "dev": true, 1090 + "license": "Apache-2.0", 1091 + "optional": true, 1092 + "os": [ 1093 + "linux" 1094 + ], 1095 + "engines": { 1096 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1097 + }, 1098 + "funding": { 1099 + "url": "https://opencollective.com/libvips" 1100 + }, 1101 + "optionalDependencies": { 1102 + "@img/sharp-libvips-linux-x64": "1.0.4" 1103 + } 1104 + }, 1105 + "node_modules/@img/sharp-linuxmusl-arm64": { 1106 + "version": "0.33.5", 1107 + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz", 1108 + "integrity": "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==", 1109 + "cpu": [ 1110 + "arm64" 1111 + ], 1112 + "dev": true, 1113 + "license": "Apache-2.0", 1114 + "optional": true, 1115 + "os": [ 1116 + "linux" 1117 + ], 1118 + "engines": { 1119 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1120 + }, 1121 + "funding": { 1122 + "url": "https://opencollective.com/libvips" 1123 + }, 1124 + "optionalDependencies": { 1125 + "@img/sharp-libvips-linuxmusl-arm64": "1.0.4" 1126 + } 1127 + }, 1128 + "node_modules/@img/sharp-linuxmusl-x64": { 1129 + "version": "0.33.5", 1130 + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz", 1131 + "integrity": "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==", 1132 + "cpu": [ 1133 + "x64" 1134 + ], 1135 + "dev": true, 1136 + "license": "Apache-2.0", 1137 + "optional": true, 1138 + "os": [ 1139 + "linux" 1140 + ], 1141 + "engines": { 1142 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1143 + }, 1144 + "funding": { 1145 + "url": "https://opencollective.com/libvips" 1146 + }, 1147 + "optionalDependencies": { 1148 + "@img/sharp-libvips-linuxmusl-x64": "1.0.4" 1149 + } 1150 + }, 1151 + "node_modules/@img/sharp-wasm32": { 1152 + "version": "0.33.5", 1153 + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz", 1154 + "integrity": "sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==", 1155 + "cpu": [ 1156 + "wasm32" 1157 + ], 1158 + "dev": true, 1159 + "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", 1160 + "optional": true, 1161 + "dependencies": { 1162 + "@emnapi/runtime": "^1.2.0" 1163 + }, 1164 + "engines": { 1165 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1166 + }, 1167 + "funding": { 1168 + "url": "https://opencollective.com/libvips" 1169 + } 1170 + }, 1171 + "node_modules/@img/sharp-win32-ia32": { 1172 + "version": "0.33.5", 1173 + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz", 1174 + "integrity": "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==", 1175 + "cpu": [ 1176 + "ia32" 1177 + ], 1178 + "dev": true, 1179 + "license": "Apache-2.0 AND LGPL-3.0-or-later", 1180 + "optional": true, 1181 + "os": [ 1182 + "win32" 1183 + ], 1184 + "engines": { 1185 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1186 + }, 1187 + "funding": { 1188 + "url": "https://opencollective.com/libvips" 1189 + } 1190 + }, 1191 + "node_modules/@img/sharp-win32-x64": { 1192 + "version": "0.33.5", 1193 + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz", 1194 + "integrity": "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==", 1195 + "cpu": [ 1196 + "x64" 1197 + ], 1198 + "dev": true, 1199 + "license": "Apache-2.0 AND LGPL-3.0-or-later", 1200 + "optional": true, 1201 + "os": [ 1202 + "win32" 1203 + ], 1204 + "engines": { 1205 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 1206 + }, 1207 + "funding": { 1208 + "url": "https://opencollective.com/libvips" 1209 + } 1210 + }, 1211 + "node_modules/@jridgewell/gen-mapping": { 1212 + "version": "0.3.13", 1213 + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", 1214 + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", 1215 + "dev": true, 1216 + "license": "MIT", 1217 + "dependencies": { 1218 + "@jridgewell/sourcemap-codec": "^1.5.0", 1219 + "@jridgewell/trace-mapping": "^0.3.24" 1220 + } 1221 + }, 1222 + "node_modules/@jridgewell/resolve-uri": { 1223 + "version": "3.1.2", 1224 + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", 1225 + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", 1226 + "dev": true, 1227 + "license": "MIT", 1228 + "engines": { 1229 + "node": ">=6.0.0" 1230 + } 1231 + }, 1232 + "node_modules/@jridgewell/source-map": { 1233 + "version": "0.3.11", 1234 + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.11.tgz", 1235 + "integrity": "sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==", 1236 + "dev": true, 1237 + "license": "MIT", 1238 + "dependencies": { 1239 + "@jridgewell/gen-mapping": "^0.3.5", 1240 + "@jridgewell/trace-mapping": "^0.3.25" 1241 + } 1242 + }, 1243 + "node_modules/@jridgewell/sourcemap-codec": { 1244 + "version": "1.5.5", 1245 + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", 1246 + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", 1247 + "dev": true, 1248 + "license": "MIT" 1249 + }, 1250 + "node_modules/@jridgewell/trace-mapping": { 1251 + "version": "0.3.31", 1252 + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", 1253 + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", 1254 + "dev": true, 1255 + "license": "MIT", 1256 + "dependencies": { 1257 + "@jridgewell/resolve-uri": "^3.1.0", 1258 + "@jridgewell/sourcemap-codec": "^1.4.14" 1259 + } 1260 + }, 236 1261 "node_modules/@modelcontextprotocol/sdk": { 237 1262 "version": "1.11.1", 238 1263 "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.11.1.tgz", ··· 255 1280 "node": ">=18" 256 1281 } 257 1282 }, 1283 + "node_modules/@poppinss/colors": { 1284 + "version": "4.1.6", 1285 + "resolved": "https://registry.npmjs.org/@poppinss/colors/-/colors-4.1.6.tgz", 1286 + "integrity": "sha512-H9xkIdFswbS8n1d6vmRd8+c10t2Qe+rZITbbDHHkQixH5+2x1FDGmi/0K+WgWiqQFKPSlIYB7jlH6Kpfn6Fleg==", 1287 + "dev": true, 1288 + "license": "MIT", 1289 + "dependencies": { 1290 + "kleur": "^4.1.5" 1291 + } 1292 + }, 1293 + "node_modules/@poppinss/dumper": { 1294 + "version": "0.6.5", 1295 + "resolved": "https://registry.npmjs.org/@poppinss/dumper/-/dumper-0.6.5.tgz", 1296 + "integrity": "sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==", 1297 + "dev": true, 1298 + "license": "MIT", 1299 + "dependencies": { 1300 + "@poppinss/colors": "^4.1.5", 1301 + "@sindresorhus/is": "^7.0.2", 1302 + "supports-color": "^10.0.0" 1303 + } 1304 + }, 1305 + "node_modules/@poppinss/dumper/node_modules/supports-color": { 1306 + "version": "10.2.2", 1307 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz", 1308 + "integrity": "sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==", 1309 + "dev": true, 1310 + "license": "MIT", 1311 + "engines": { 1312 + "node": ">=18" 1313 + }, 1314 + "funding": { 1315 + "url": "https://github.com/chalk/supports-color?sponsor=1" 1316 + } 1317 + }, 1318 + "node_modules/@poppinss/exception": { 1319 + "version": "1.2.3", 1320 + "resolved": "https://registry.npmjs.org/@poppinss/exception/-/exception-1.2.3.tgz", 1321 + "integrity": "sha512-dCED+QRChTVatE9ibtoaxc+WkdzOSjYTKi/+uacHWIsfodVfpsueo3+DKpgU5Px8qXjgmXkSvhXvSCz3fnP9lw==", 1322 + "dev": true, 1323 + "license": "MIT" 1324 + }, 1325 + "node_modules/@sindresorhus/is": { 1326 + "version": "7.2.0", 1327 + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-7.2.0.tgz", 1328 + "integrity": "sha512-P1Cz1dWaFfR4IR+U13mqqiGsLFf1KbayybWwdd2vfctdV6hDpUkgCY0nKOLLTMSoRd/jJNjtbqzf13K8DCCXQw==", 1329 + "dev": true, 1330 + "license": "MIT", 1331 + "engines": { 1332 + "node": ">=18" 1333 + }, 1334 + "funding": { 1335 + "url": "https://github.com/sindresorhus/is?sponsor=1" 1336 + } 1337 + }, 1338 + "node_modules/@speed-highlight/core": { 1339 + "version": "1.2.14", 1340 + "resolved": "https://registry.npmjs.org/@speed-highlight/core/-/core-1.2.14.tgz", 1341 + "integrity": "sha512-G4ewlBNhUtlLvrJTb88d2mdy2KRijzs4UhnlrOSRT4bmjh/IqNElZa3zkrZ+TC47TwtlDWzVLFADljF1Ijp5hA==", 1342 + "dev": true, 1343 + "license": "CC0-1.0" 1344 + }, 258 1345 "node_modules/@types/estree": { 259 1346 "version": "1.0.7", 260 1347 "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", ··· 284 1371 } 285 1372 }, 286 1373 "node_modules/acorn": { 287 - "version": "8.14.1", 288 - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", 289 - "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", 1374 + "version": "8.15.0", 1375 + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", 1376 + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", 290 1377 "dev": true, 291 1378 "license": "MIT", 1379 + "peer": true, 292 1380 "bin": { 293 1381 "acorn": "bin/acorn" 294 1382 }, ··· 306 1394 "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" 307 1395 } 308 1396 }, 1397 + "node_modules/acorn-walk": { 1398 + "version": "8.3.2", 1399 + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", 1400 + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", 1401 + "dev": true, 1402 + "license": "MIT", 1403 + "engines": { 1404 + "node": ">=0.4.0" 1405 + } 1406 + }, 309 1407 "node_modules/ajv": { 310 1408 "version": "6.12.6", 311 1409 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", ··· 353 1451 "dev": true, 354 1452 "license": "MIT" 355 1453 }, 1454 + "node_modules/blake3-wasm": { 1455 + "version": "2.1.5", 1456 + "resolved": "https://registry.npmjs.org/blake3-wasm/-/blake3-wasm-2.1.5.tgz", 1457 + "integrity": "sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==", 1458 + "dev": true, 1459 + "license": "MIT" 1460 + }, 356 1461 "node_modules/body-parser": { 357 1462 "version": "2.2.0", 358 1463 "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.2.0.tgz", ··· 385 1490 "concat-map": "0.0.1" 386 1491 } 387 1492 }, 1493 + "node_modules/buffer-from": { 1494 + "version": "1.1.2", 1495 + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", 1496 + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", 1497 + "dev": true, 1498 + "license": "MIT" 1499 + }, 388 1500 "node_modules/bytes": { 389 1501 "version": "3.1.2", 390 1502 "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", ··· 436 1548 "node": ">=6" 437 1549 } 438 1550 }, 1551 + "node_modules/camel-case": { 1552 + "version": "4.1.2", 1553 + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", 1554 + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", 1555 + "dev": true, 1556 + "license": "MIT", 1557 + "dependencies": { 1558 + "pascal-case": "^3.1.2", 1559 + "tslib": "^2.0.3" 1560 + } 1561 + }, 439 1562 "node_modules/chalk": { 440 1563 "version": "4.1.2", 441 1564 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", ··· 453 1576 "url": "https://github.com/chalk/chalk?sponsor=1" 454 1577 } 455 1578 }, 1579 + "node_modules/clean-css": { 1580 + "version": "5.3.3", 1581 + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", 1582 + "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", 1583 + "dev": true, 1584 + "license": "MIT", 1585 + "dependencies": { 1586 + "source-map": "~0.6.0" 1587 + }, 1588 + "engines": { 1589 + "node": ">= 10.0" 1590 + } 1591 + }, 1592 + "node_modules/color": { 1593 + "version": "4.2.3", 1594 + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", 1595 + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", 1596 + "dev": true, 1597 + "license": "MIT", 1598 + "dependencies": { 1599 + "color-convert": "^2.0.1", 1600 + "color-string": "^1.9.0" 1601 + }, 1602 + "engines": { 1603 + "node": ">=12.5.0" 1604 + } 1605 + }, 456 1606 "node_modules/color-convert": { 457 1607 "version": "2.0.1", 458 1608 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", ··· 472 1622 "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 473 1623 "dev": true, 474 1624 "license": "MIT" 1625 + }, 1626 + "node_modules/color-string": { 1627 + "version": "1.9.1", 1628 + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", 1629 + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", 1630 + "dev": true, 1631 + "license": "MIT", 1632 + "dependencies": { 1633 + "color-name": "^1.0.0", 1634 + "simple-swizzle": "^0.2.2" 1635 + } 1636 + }, 1637 + "node_modules/commander": { 1638 + "version": "10.0.1", 1639 + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", 1640 + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", 1641 + "dev": true, 1642 + "license": "MIT", 1643 + "engines": { 1644 + "node": ">=14" 1645 + } 475 1646 }, 476 1647 "node_modules/concat-map": { 477 1648 "version": "0.0.1", ··· 587 1758 "node": ">= 0.8" 588 1759 } 589 1760 }, 1761 + "node_modules/detect-libc": { 1762 + "version": "2.1.2", 1763 + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", 1764 + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", 1765 + "dev": true, 1766 + "license": "Apache-2.0", 1767 + "engines": { 1768 + "node": ">=8" 1769 + } 1770 + }, 1771 + "node_modules/dot-case": { 1772 + "version": "3.0.4", 1773 + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", 1774 + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", 1775 + "dev": true, 1776 + "license": "MIT", 1777 + "dependencies": { 1778 + "no-case": "^3.0.4", 1779 + "tslib": "^2.0.3" 1780 + } 1781 + }, 590 1782 "node_modules/dunder-proto": { 591 1783 "version": "1.0.1", 592 1784 "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", ··· 617 1809 "license": "MIT", 618 1810 "engines": { 619 1811 "node": ">= 0.8" 1812 + } 1813 + }, 1814 + "node_modules/entities": { 1815 + "version": "4.5.0", 1816 + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", 1817 + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", 1818 + "dev": true, 1819 + "license": "BSD-2-Clause", 1820 + "engines": { 1821 + "node": ">=0.12" 1822 + }, 1823 + "funding": { 1824 + "url": "https://github.com/fb55/entities?sponsor=1" 1825 + } 1826 + }, 1827 + "node_modules/error-stack-parser-es": { 1828 + "version": "1.0.5", 1829 + "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-1.0.5.tgz", 1830 + "integrity": "sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA==", 1831 + "dev": true, 1832 + "license": "MIT", 1833 + "funding": { 1834 + "url": "https://github.com/sponsors/antfu" 620 1835 } 621 1836 }, 622 1837 "node_modules/es-define-property": { ··· 652 1867 "node": ">= 0.4" 653 1868 } 654 1869 }, 1870 + "node_modules/esbuild": { 1871 + "version": "0.27.0", 1872 + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.0.tgz", 1873 + "integrity": "sha512-jd0f4NHbD6cALCyGElNpGAOtWxSq46l9X/sWB0Nzd5er4Kz2YTm+Vl0qKFT9KUJvD8+fiO8AvoHhFvEatfVixA==", 1874 + "dev": true, 1875 + "hasInstallScript": true, 1876 + "license": "MIT", 1877 + "bin": { 1878 + "esbuild": "bin/esbuild" 1879 + }, 1880 + "engines": { 1881 + "node": ">=18" 1882 + }, 1883 + "optionalDependencies": { 1884 + "@esbuild/aix-ppc64": "0.27.0", 1885 + "@esbuild/android-arm": "0.27.0", 1886 + "@esbuild/android-arm64": "0.27.0", 1887 + "@esbuild/android-x64": "0.27.0", 1888 + "@esbuild/darwin-arm64": "0.27.0", 1889 + "@esbuild/darwin-x64": "0.27.0", 1890 + "@esbuild/freebsd-arm64": "0.27.0", 1891 + "@esbuild/freebsd-x64": "0.27.0", 1892 + "@esbuild/linux-arm": "0.27.0", 1893 + "@esbuild/linux-arm64": "0.27.0", 1894 + "@esbuild/linux-ia32": "0.27.0", 1895 + "@esbuild/linux-loong64": "0.27.0", 1896 + "@esbuild/linux-mips64el": "0.27.0", 1897 + "@esbuild/linux-ppc64": "0.27.0", 1898 + "@esbuild/linux-riscv64": "0.27.0", 1899 + "@esbuild/linux-s390x": "0.27.0", 1900 + "@esbuild/linux-x64": "0.27.0", 1901 + "@esbuild/netbsd-arm64": "0.27.0", 1902 + "@esbuild/netbsd-x64": "0.27.0", 1903 + "@esbuild/openbsd-arm64": "0.27.0", 1904 + "@esbuild/openbsd-x64": "0.27.0", 1905 + "@esbuild/openharmony-arm64": "0.27.0", 1906 + "@esbuild/sunos-x64": "0.27.0", 1907 + "@esbuild/win32-arm64": "0.27.0", 1908 + "@esbuild/win32-ia32": "0.27.0", 1909 + "@esbuild/win32-x64": "0.27.0" 1910 + } 1911 + }, 655 1912 "node_modules/escape-html": { 656 1913 "version": "1.0.3", 657 1914 "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", ··· 678 1935 "integrity": "sha512-Hx0MOjPh6uK9oq9nVsATZKE/Wlbai7KFjfCuw9UHaguDW3x+HF0O5nIi3ud39TWgrTjTO5nHxmL3R1eANinWHQ==", 679 1936 "dev": true, 680 1937 "license": "MIT", 1938 + "peer": true, 681 1939 "dependencies": { 682 1940 "@eslint-community/eslint-utils": "^4.2.0", 683 1941 "@eslint-community/regexpp": "^4.12.1", ··· 869 2127 "node": ">=18.0.0" 870 2128 } 871 2129 }, 2130 + "node_modules/exit-hook": { 2131 + "version": "2.2.1", 2132 + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-2.2.1.tgz", 2133 + "integrity": "sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==", 2134 + "dev": true, 2135 + "license": "MIT", 2136 + "engines": { 2137 + "node": ">=6" 2138 + }, 2139 + "funding": { 2140 + "url": "https://github.com/sponsors/sindresorhus" 2141 + } 2142 + }, 872 2143 "node_modules/express": { 873 2144 "version": "5.1.0", 874 2145 "resolved": "https://registry.npmjs.org/express/-/express-5.1.0.tgz", 875 2146 "integrity": "sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==", 876 2147 "dev": true, 877 2148 "license": "MIT", 2149 + "peer": true, 878 2150 "dependencies": { 879 2151 "accepts": "^2.0.0", 880 2152 "body-parser": "^2.2.0", ··· 1038 2310 "node": ">= 0.8" 1039 2311 } 1040 2312 }, 2313 + "node_modules/fsevents": { 2314 + "version": "2.3.3", 2315 + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", 2316 + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", 2317 + "dev": true, 2318 + "hasInstallScript": true, 2319 + "license": "MIT", 2320 + "optional": true, 2321 + "os": [ 2322 + "darwin" 2323 + ], 2324 + "engines": { 2325 + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 2326 + } 2327 + }, 1041 2328 "node_modules/function-bind": { 1042 2329 "version": "1.1.2", 1043 2330 "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", ··· 1100 2387 "node": ">=10.13.0" 1101 2388 } 1102 2389 }, 2390 + "node_modules/glob-to-regexp": { 2391 + "version": "0.4.1", 2392 + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", 2393 + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", 2394 + "dev": true, 2395 + "license": "BSD-2-Clause" 2396 + }, 1103 2397 "node_modules/globals": { 1104 2398 "version": "16.1.0", 1105 2399 "resolved": "https://registry.npmjs.org/globals/-/globals-16.1.0.tgz", ··· 1162 2456 "node": ">= 0.4" 1163 2457 } 1164 2458 }, 2459 + "node_modules/html-minifier-terser": { 2460 + "version": "7.2.0", 2461 + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz", 2462 + "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==", 2463 + "dev": true, 2464 + "license": "MIT", 2465 + "dependencies": { 2466 + "camel-case": "^4.1.2", 2467 + "clean-css": "~5.3.2", 2468 + "commander": "^10.0.0", 2469 + "entities": "^4.4.0", 2470 + "param-case": "^3.0.4", 2471 + "relateurl": "^0.2.7", 2472 + "terser": "^5.15.1" 2473 + }, 2474 + "bin": { 2475 + "html-minifier-terser": "cli.js" 2476 + }, 2477 + "engines": { 2478 + "node": "^14.13.1 || >=16.0.0" 2479 + } 2480 + }, 1165 2481 "node_modules/http-errors": { 1166 2482 "version": "2.0.0", 1167 2483 "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", ··· 1246 2562 "node": ">= 0.10" 1247 2563 } 1248 2564 }, 2565 + "node_modules/is-arrayish": { 2566 + "version": "0.3.4", 2567 + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.4.tgz", 2568 + "integrity": "sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==", 2569 + "dev": true, 2570 + "license": "MIT" 2571 + }, 1249 2572 "node_modules/is-extglob": { 1250 2573 "version": "2.1.1", 1251 2574 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", ··· 1327 2650 "json-buffer": "3.0.1" 1328 2651 } 1329 2652 }, 2653 + "node_modules/kleur": { 2654 + "version": "4.1.5", 2655 + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", 2656 + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", 2657 + "dev": true, 2658 + "license": "MIT", 2659 + "engines": { 2660 + "node": ">=6" 2661 + } 2662 + }, 1330 2663 "node_modules/levn": { 1331 2664 "version": "0.4.1", 1332 2665 "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", ··· 1364 2697 "dev": true, 1365 2698 "license": "MIT" 1366 2699 }, 2700 + "node_modules/lower-case": { 2701 + "version": "2.0.2", 2702 + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", 2703 + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", 2704 + "dev": true, 2705 + "license": "MIT", 2706 + "dependencies": { 2707 + "tslib": "^2.0.3" 2708 + } 2709 + }, 1367 2710 "node_modules/math-intrinsics": { 1368 2711 "version": "1.1.0", 1369 2712 "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", ··· 1397 2740 "url": "https://github.com/sponsors/sindresorhus" 1398 2741 } 1399 2742 }, 2743 + "node_modules/mime": { 2744 + "version": "3.0.0", 2745 + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", 2746 + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", 2747 + "dev": true, 2748 + "license": "MIT", 2749 + "bin": { 2750 + "mime": "cli.js" 2751 + }, 2752 + "engines": { 2753 + "node": ">=10.0.0" 2754 + } 2755 + }, 1400 2756 "node_modules/mime-db": { 1401 2757 "version": "1.54.0", 1402 2758 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", ··· 1420 2776 "node": ">= 0.6" 1421 2777 } 1422 2778 }, 2779 + "node_modules/miniflare": { 2780 + "version": "4.20251210.0", 2781 + "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-4.20251210.0.tgz", 2782 + "integrity": "sha512-k6kIoXwGVqlPZb0hcn+X7BmnK+8BjIIkusQPY22kCo2RaQJ/LzAjtxHQdGXerlHSnJyQivDQsL6BJHMpQfUFyw==", 2783 + "dev": true, 2784 + "license": "MIT", 2785 + "dependencies": { 2786 + "@cspotcode/source-map-support": "0.8.1", 2787 + "acorn": "8.14.0", 2788 + "acorn-walk": "8.3.2", 2789 + "exit-hook": "2.2.1", 2790 + "glob-to-regexp": "0.4.1", 2791 + "sharp": "^0.33.5", 2792 + "stoppable": "1.1.0", 2793 + "undici": "7.14.0", 2794 + "workerd": "1.20251210.0", 2795 + "ws": "8.18.0", 2796 + "youch": "4.1.0-beta.10", 2797 + "zod": "3.22.3" 2798 + }, 2799 + "bin": { 2800 + "miniflare": "bootstrap.js" 2801 + }, 2802 + "engines": { 2803 + "node": ">=18.0.0" 2804 + } 2805 + }, 2806 + "node_modules/miniflare/node_modules/acorn": { 2807 + "version": "8.14.0", 2808 + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", 2809 + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", 2810 + "dev": true, 2811 + "license": "MIT", 2812 + "bin": { 2813 + "acorn": "bin/acorn" 2814 + }, 2815 + "engines": { 2816 + "node": ">=0.4.0" 2817 + } 2818 + }, 2819 + "node_modules/miniflare/node_modules/zod": { 2820 + "version": "3.22.3", 2821 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.22.3.tgz", 2822 + "integrity": "sha512-EjIevzuJRiRPbVH4mGc8nApb/lVLKVpmUhAaR5R5doKGfAnGJ6Gr3CViAVjP+4FWSxCsybeWQdcgCtbX+7oZug==", 2823 + "dev": true, 2824 + "license": "MIT", 2825 + "funding": { 2826 + "url": "https://github.com/sponsors/colinhacks" 2827 + } 2828 + }, 1423 2829 "node_modules/minimatch": { 1424 2830 "version": "3.1.2", 1425 2831 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ··· 1455 2861 "license": "MIT", 1456 2862 "engines": { 1457 2863 "node": ">= 0.6" 2864 + } 2865 + }, 2866 + "node_modules/no-case": { 2867 + "version": "3.0.4", 2868 + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", 2869 + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", 2870 + "dev": true, 2871 + "license": "MIT", 2872 + "dependencies": { 2873 + "lower-case": "^2.0.2", 2874 + "tslib": "^2.0.3" 1458 2875 } 1459 2876 }, 1460 2877 "node_modules/object-assign": { ··· 1553 2970 "url": "https://github.com/sponsors/sindresorhus" 1554 2971 } 1555 2972 }, 2973 + "node_modules/param-case": { 2974 + "version": "3.0.4", 2975 + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", 2976 + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", 2977 + "dev": true, 2978 + "license": "MIT", 2979 + "dependencies": { 2980 + "dot-case": "^3.0.4", 2981 + "tslib": "^2.0.3" 2982 + } 2983 + }, 1556 2984 "node_modules/parent-module": { 1557 2985 "version": "1.0.1", 1558 2986 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", ··· 1576 3004 "node": ">= 0.8" 1577 3005 } 1578 3006 }, 3007 + "node_modules/pascal-case": { 3008 + "version": "3.1.2", 3009 + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", 3010 + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", 3011 + "dev": true, 3012 + "license": "MIT", 3013 + "dependencies": { 3014 + "no-case": "^3.0.4", 3015 + "tslib": "^2.0.3" 3016 + } 3017 + }, 1579 3018 "node_modules/path-exists": { 1580 3019 "version": "4.0.0", 1581 3020 "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", ··· 1605 3044 "engines": { 1606 3045 "node": ">=16" 1607 3046 } 3047 + }, 3048 + "node_modules/pathe": { 3049 + "version": "2.0.3", 3050 + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", 3051 + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", 3052 + "dev": true, 3053 + "license": "MIT" 1608 3054 }, 1609 3055 "node_modules/pkce-challenge": { 1610 3056 "version": "5.0.0", ··· 1708 3154 "node": ">= 0.8" 1709 3155 } 1710 3156 }, 3157 + "node_modules/relateurl": { 3158 + "version": "0.2.7", 3159 + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", 3160 + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", 3161 + "dev": true, 3162 + "license": "MIT", 3163 + "engines": { 3164 + "node": ">= 0.10" 3165 + } 3166 + }, 1711 3167 "node_modules/resolve-from": { 1712 3168 "version": "4.0.0", 1713 3169 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", ··· 1763 3219 "dev": true, 1764 3220 "license": "MIT" 1765 3221 }, 3222 + "node_modules/semver": { 3223 + "version": "7.7.3", 3224 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", 3225 + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", 3226 + "dev": true, 3227 + "license": "ISC", 3228 + "bin": { 3229 + "semver": "bin/semver.js" 3230 + }, 3231 + "engines": { 3232 + "node": ">=10" 3233 + } 3234 + }, 1766 3235 "node_modules/send": { 1767 3236 "version": "1.2.0", 1768 3237 "resolved": "https://registry.npmjs.org/send/-/send-1.2.0.tgz", ··· 1808 3277 "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", 1809 3278 "dev": true, 1810 3279 "license": "ISC" 3280 + }, 3281 + "node_modules/sharp": { 3282 + "version": "0.33.5", 3283 + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.5.tgz", 3284 + "integrity": "sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==", 3285 + "dev": true, 3286 + "hasInstallScript": true, 3287 + "license": "Apache-2.0", 3288 + "dependencies": { 3289 + "color": "^4.2.3", 3290 + "detect-libc": "^2.0.3", 3291 + "semver": "^7.6.3" 3292 + }, 3293 + "engines": { 3294 + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" 3295 + }, 3296 + "funding": { 3297 + "url": "https://opencollective.com/libvips" 3298 + }, 3299 + "optionalDependencies": { 3300 + "@img/sharp-darwin-arm64": "0.33.5", 3301 + "@img/sharp-darwin-x64": "0.33.5", 3302 + "@img/sharp-libvips-darwin-arm64": "1.0.4", 3303 + "@img/sharp-libvips-darwin-x64": "1.0.4", 3304 + "@img/sharp-libvips-linux-arm": "1.0.5", 3305 + "@img/sharp-libvips-linux-arm64": "1.0.4", 3306 + "@img/sharp-libvips-linux-s390x": "1.0.4", 3307 + "@img/sharp-libvips-linux-x64": "1.0.4", 3308 + "@img/sharp-libvips-linuxmusl-arm64": "1.0.4", 3309 + "@img/sharp-libvips-linuxmusl-x64": "1.0.4", 3310 + "@img/sharp-linux-arm": "0.33.5", 3311 + "@img/sharp-linux-arm64": "0.33.5", 3312 + "@img/sharp-linux-s390x": "0.33.5", 3313 + "@img/sharp-linux-x64": "0.33.5", 3314 + "@img/sharp-linuxmusl-arm64": "0.33.5", 3315 + "@img/sharp-linuxmusl-x64": "0.33.5", 3316 + "@img/sharp-wasm32": "0.33.5", 3317 + "@img/sharp-win32-ia32": "0.33.5", 3318 + "@img/sharp-win32-x64": "0.33.5" 3319 + } 1811 3320 }, 1812 3321 "node_modules/shebang-command": { 1813 3322 "version": "2.0.0", ··· 1908 3417 "url": "https://github.com/sponsors/ljharb" 1909 3418 } 1910 3419 }, 3420 + "node_modules/simple-swizzle": { 3421 + "version": "0.2.4", 3422 + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.4.tgz", 3423 + "integrity": "sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==", 3424 + "dev": true, 3425 + "license": "MIT", 3426 + "dependencies": { 3427 + "is-arrayish": "^0.3.1" 3428 + } 3429 + }, 3430 + "node_modules/source-map": { 3431 + "version": "0.6.1", 3432 + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 3433 + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 3434 + "dev": true, 3435 + "license": "BSD-3-Clause", 3436 + "engines": { 3437 + "node": ">=0.10.0" 3438 + } 3439 + }, 3440 + "node_modules/source-map-support": { 3441 + "version": "0.5.21", 3442 + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", 3443 + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", 3444 + "dev": true, 3445 + "license": "MIT", 3446 + "dependencies": { 3447 + "buffer-from": "^1.0.0", 3448 + "source-map": "^0.6.0" 3449 + } 3450 + }, 1911 3451 "node_modules/statuses": { 1912 3452 "version": "2.0.1", 1913 3453 "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", ··· 1918 3458 "node": ">= 0.8" 1919 3459 } 1920 3460 }, 3461 + "node_modules/stoppable": { 3462 + "version": "1.1.0", 3463 + "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", 3464 + "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==", 3465 + "dev": true, 3466 + "license": "MIT", 3467 + "engines": { 3468 + "node": ">=4", 3469 + "npm": ">=6" 3470 + } 3471 + }, 1921 3472 "node_modules/strip-json-comments": { 1922 3473 "version": "3.1.1", 1923 3474 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", ··· 1944 3495 "node": ">=8" 1945 3496 } 1946 3497 }, 3498 + "node_modules/terser": { 3499 + "version": "5.44.1", 3500 + "resolved": "https://registry.npmjs.org/terser/-/terser-5.44.1.tgz", 3501 + "integrity": "sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==", 3502 + "dev": true, 3503 + "license": "BSD-2-Clause", 3504 + "dependencies": { 3505 + "@jridgewell/source-map": "^0.3.3", 3506 + "acorn": "^8.15.0", 3507 + "commander": "^2.20.0", 3508 + "source-map-support": "~0.5.20" 3509 + }, 3510 + "bin": { 3511 + "terser": "bin/terser" 3512 + }, 3513 + "engines": { 3514 + "node": ">=10" 3515 + } 3516 + }, 3517 + "node_modules/terser/node_modules/commander": { 3518 + "version": "2.20.3", 3519 + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", 3520 + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", 3521 + "dev": true, 3522 + "license": "MIT" 3523 + }, 1947 3524 "node_modules/toidentifier": { 1948 3525 "version": "1.0.1", 1949 3526 "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", ··· 1954 3531 "node": ">=0.6" 1955 3532 } 1956 3533 }, 3534 + "node_modules/tslib": { 3535 + "version": "2.8.1", 3536 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", 3537 + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", 3538 + "dev": true, 3539 + "license": "0BSD" 3540 + }, 1957 3541 "node_modules/type-check": { 1958 3542 "version": "0.4.0", 1959 3543 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", ··· 1982 3566 "node": ">= 0.6" 1983 3567 } 1984 3568 }, 3569 + "node_modules/undici": { 3570 + "version": "7.14.0", 3571 + "resolved": "https://registry.npmjs.org/undici/-/undici-7.14.0.tgz", 3572 + "integrity": "sha512-Vqs8HTzjpQXZeXdpsfChQTlafcMQaaIwnGwLam1wudSSjlJeQ3bw1j+TLPePgrCnCpUXx7Ba5Pdpf5OBih62NQ==", 3573 + "dev": true, 3574 + "license": "MIT", 3575 + "engines": { 3576 + "node": ">=20.18.1" 3577 + } 3578 + }, 3579 + "node_modules/unenv": { 3580 + "version": "2.0.0-rc.24", 3581 + "resolved": "https://registry.npmjs.org/unenv/-/unenv-2.0.0-rc.24.tgz", 3582 + "integrity": "sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw==", 3583 + "dev": true, 3584 + "license": "MIT", 3585 + "peer": true, 3586 + "dependencies": { 3587 + "pathe": "^2.0.3" 3588 + } 3589 + }, 1985 3590 "node_modules/unpipe": { 1986 3591 "version": "1.0.0", 1987 3592 "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", ··· 2038 3643 "node": ">=0.10.0" 2039 3644 } 2040 3645 }, 3646 + "node_modules/workerd": { 3647 + "version": "1.20251210.0", 3648 + "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20251210.0.tgz", 3649 + "integrity": "sha512-9MUUneP1BnRE9XAYi94FXxHmiLGbO75EHQZsgWqSiOXjoXSqJCw8aQbIEPxCy19TclEl/kHUFYce8ST2W+Qpjw==", 3650 + "dev": true, 3651 + "hasInstallScript": true, 3652 + "license": "Apache-2.0", 3653 + "peer": true, 3654 + "bin": { 3655 + "workerd": "bin/workerd" 3656 + }, 3657 + "engines": { 3658 + "node": ">=16" 3659 + }, 3660 + "optionalDependencies": { 3661 + "@cloudflare/workerd-darwin-64": "1.20251210.0", 3662 + "@cloudflare/workerd-darwin-arm64": "1.20251210.0", 3663 + "@cloudflare/workerd-linux-64": "1.20251210.0", 3664 + "@cloudflare/workerd-linux-arm64": "1.20251210.0", 3665 + "@cloudflare/workerd-windows-64": "1.20251210.0" 3666 + } 3667 + }, 3668 + "node_modules/wrangler": { 3669 + "version": "4.54.0", 3670 + "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-4.54.0.tgz", 3671 + "integrity": "sha512-bANFsjDwJLbprYoBK+hUDZsVbUv2SqJd8QvArLIcZk+fPq4h/Ohtj5vkKXD3k0s2bD1DXLk08D+hYmeNH+xC6A==", 3672 + "dev": true, 3673 + "license": "MIT OR Apache-2.0", 3674 + "dependencies": { 3675 + "@cloudflare/kv-asset-handler": "0.4.1", 3676 + "@cloudflare/unenv-preset": "2.7.13", 3677 + "blake3-wasm": "2.1.5", 3678 + "esbuild": "0.27.0", 3679 + "miniflare": "4.20251210.0", 3680 + "path-to-regexp": "6.3.0", 3681 + "unenv": "2.0.0-rc.24", 3682 + "workerd": "1.20251210.0" 3683 + }, 3684 + "bin": { 3685 + "wrangler": "bin/wrangler.js", 3686 + "wrangler2": "bin/wrangler.js" 3687 + }, 3688 + "engines": { 3689 + "node": ">=20.0.0" 3690 + }, 3691 + "optionalDependencies": { 3692 + "fsevents": "~2.3.2" 3693 + }, 3694 + "peerDependencies": { 3695 + "@cloudflare/workers-types": "^4.20251210.0" 3696 + }, 3697 + "peerDependenciesMeta": { 3698 + "@cloudflare/workers-types": { 3699 + "optional": true 3700 + } 3701 + } 3702 + }, 3703 + "node_modules/wrangler/node_modules/path-to-regexp": { 3704 + "version": "6.3.0", 3705 + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", 3706 + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", 3707 + "dev": true, 3708 + "license": "MIT" 3709 + }, 2041 3710 "node_modules/wrappy": { 2042 3711 "version": "1.0.2", 2043 3712 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", ··· 2045 3714 "dev": true, 2046 3715 "license": "ISC" 2047 3716 }, 3717 + "node_modules/ws": { 3718 + "version": "8.18.0", 3719 + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", 3720 + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", 3721 + "dev": true, 3722 + "license": "MIT", 3723 + "engines": { 3724 + "node": ">=10.0.0" 3725 + }, 3726 + "peerDependencies": { 3727 + "bufferutil": "^4.0.1", 3728 + "utf-8-validate": ">=5.0.2" 3729 + }, 3730 + "peerDependenciesMeta": { 3731 + "bufferutil": { 3732 + "optional": true 3733 + }, 3734 + "utf-8-validate": { 3735 + "optional": true 3736 + } 3737 + } 3738 + }, 2048 3739 "node_modules/yocto-queue": { 2049 3740 "version": "0.1.0", 2050 3741 "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", ··· 2058 3749 "url": "https://github.com/sponsors/sindresorhus" 2059 3750 } 2060 3751 }, 3752 + "node_modules/youch": { 3753 + "version": "4.1.0-beta.10", 3754 + "resolved": "https://registry.npmjs.org/youch/-/youch-4.1.0-beta.10.tgz", 3755 + "integrity": "sha512-rLfVLB4FgQneDr0dv1oddCVZmKjcJ6yX6mS4pU82Mq/Dt9a3cLZQ62pDBL4AUO+uVrCvtWz3ZFUL2HFAFJ/BXQ==", 3756 + "dev": true, 3757 + "license": "MIT", 3758 + "dependencies": { 3759 + "@poppinss/colors": "^4.1.5", 3760 + "@poppinss/dumper": "^0.6.4", 3761 + "@speed-highlight/core": "^1.2.7", 3762 + "cookie": "^1.0.2", 3763 + "youch-core": "^0.3.3" 3764 + } 3765 + }, 3766 + "node_modules/youch-core": { 3767 + "version": "0.3.3", 3768 + "resolved": "https://registry.npmjs.org/youch-core/-/youch-core-0.3.3.tgz", 3769 + "integrity": "sha512-ho7XuGjLaJ2hWHoK8yFnsUGy2Y5uDpqSTq1FkHLK4/oqKtyUU1AFbOOxY4IpC9f0fTLjwYbslUz0Po5BpD1wrA==", 3770 + "dev": true, 3771 + "license": "MIT", 3772 + "dependencies": { 3773 + "@poppinss/exception": "^1.2.2", 3774 + "error-stack-parser-es": "^1.0.5" 3775 + } 3776 + }, 3777 + "node_modules/youch/node_modules/cookie": { 3778 + "version": "1.1.1", 3779 + "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz", 3780 + "integrity": "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==", 3781 + "dev": true, 3782 + "license": "MIT", 3783 + "engines": { 3784 + "node": ">=18" 3785 + }, 3786 + "funding": { 3787 + "type": "opencollective", 3788 + "url": "https://opencollective.com/express" 3789 + } 3790 + }, 2061 3791 "node_modules/zod": { 2062 3792 "version": "3.24.4", 2063 3793 "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.4.tgz", 2064 3794 "integrity": "sha512-OdqJE9UDRPwWsrHjLN2F8bPxvwJBK22EHLWtanu0LSYr5YqzsaaW3RMgmjwr8Rypg5k+meEJdSPXJZXE/yqOMg==", 2065 3795 "dev": true, 2066 3796 "license": "MIT", 3797 + "peer": true, 2067 3798 "funding": { 2068 3799 "url": "https://github.com/sponsors/colinhacks" 2069 3800 }
+9 -3
package.json
··· 3 3 "version": "1.0.0", 4 4 "description": "", 5 5 "scripts": { 6 + "build": "node scripts/build.mjs", 6 7 "lint": "eslint .", 7 - "fix": "eslint . --fix" 8 + "fix": "eslint . --fix", 9 + "deploy": "npm run build && wrangler deploy" 8 10 }, 9 11 "keywords": [], 10 12 "author": "", 11 - "license": "ISC", 13 + "license": "CC-BY-NC-ND-4.0", 12 14 "packageManager": "pnpm@10.10.0", 13 15 "devDependencies": { 14 16 "@eslint/js": "^9.26.0", 17 + "clean-css": "^5.3.3", 15 18 "eslint": "^9.26.0", 16 19 "eslint-plugin-eqeqeq-fix": "^1.0.3", 17 20 "globals": "^16.0.0", 18 - "prettier": "^3.5.3" 21 + "html-minifier-terser": "^7.2.0", 22 + "prettier": "^3.5.3", 23 + "terser": "^5.31.6", 24 + "wrangler": "^4.54.0" 19 25 } 20 26 }