├── .gitignore ├── README.md ├── favicon.ico ├── index.html ├── package-lock.json ├── package.json ├── public └── vite.svg ├── src ├── App.vue ├── assets │ ├── robot.png │ └── screen.png ├── components │ ├── ChatInput.vue │ └── Header.vue ├── main.ts ├── router │ └── index.ts ├── stores │ ├── chat.ts │ └── user.ts ├── style.css ├── views │ ├── ChatView.vue │ └── HomeView.vue └── vite-env.d.ts ├── tsconfig.app.json ├── tsconfig.json ├── tsconfig.node.json └── vite.config.ts /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | .env 15 | .vscode 16 | 17 | # Editor directories and files 18 | .vscode/* 19 | !.vscode/extensions.json 20 | .idea 21 | .DS_Store 22 | *.suo 23 | *.ntvs* 24 | *.njsproj 25 | *.sln 26 | *.sw? 27 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Chat AI UI 2 | 3 | This is the frontend for the Chat AI application. It is a **Vue.js 3** application that uses a custom API to interact with [Stream Chat](https://getstream.io), your own [Neon](https://neon.tech) PostgreSQL database and [Open AI](https://platform.openai.com/). 4 | 5 | 6 | 7 | The Express backend API for this application can be found [here](https://github.com/bradtraversy/chat-ai-api). 8 | 9 | ## Installation 10 | 11 | 1. Clone the repository 12 | 2. Run `npm install` 13 | 3. Create a `.env` file in the root directory and add the following environment variables: 14 | 15 | ``` 16 | VITE_API_URL=http://localhost:5000 17 | ``` 18 | 19 | 4. Run the server with `npm run dev` and open on `http://localhost:3000` 20 | -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bradtraversy/chat-ai-ui/7b5c2b88f32a10c6edee57c32541f1ad19e0b889/favicon.ico -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Chat AI 9 | 10 | 11 |
12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "chat-ai-ui", 3 | "version": "0.0.0", 4 | "lockfileVersion": 3, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "chat-ai-ui", 9 | "version": "0.0.0", 10 | "dependencies": { 11 | "axios": "^1.8.4", 12 | "pinia": "^3.0.1", 13 | "pinia-plugin-persistedstate": "^4.2.0", 14 | "vue": "^3.5.13", 15 | "vue-router": "^4.5.0" 16 | }, 17 | "devDependencies": { 18 | "@tailwindcss/vite": "^4.0.17", 19 | "@vitejs/plugin-vue": "^5.2.1", 20 | "@vue/tsconfig": "^0.7.0", 21 | "tailwindcss": "^4.0.17", 22 | "typescript": "~5.7.2", 23 | "vite": "^6.2.0", 24 | "vue-tsc": "^2.2.4" 25 | } 26 | }, 27 | "node_modules/@babel/helper-string-parser": { 28 | "version": "7.25.9", 29 | "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", 30 | "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", 31 | "license": "MIT", 32 | "engines": { 33 | "node": ">=6.9.0" 34 | } 35 | }, 36 | "node_modules/@babel/helper-validator-identifier": { 37 | "version": "7.25.9", 38 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", 39 | "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", 40 | "license": "MIT", 41 | "engines": { 42 | "node": ">=6.9.0" 43 | } 44 | }, 45 | "node_modules/@babel/parser": { 46 | "version": "7.27.0", 47 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", 48 | "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", 49 | "license": "MIT", 50 | "dependencies": { 51 | "@babel/types": "^7.27.0" 52 | }, 53 | "bin": { 54 | "parser": "bin/babel-parser.js" 55 | }, 56 | "engines": { 57 | "node": ">=6.0.0" 58 | } 59 | }, 60 | "node_modules/@babel/types": { 61 | "version": "7.27.0", 62 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", 63 | "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", 64 | "license": "MIT", 65 | "dependencies": { 66 | "@babel/helper-string-parser": "^7.25.9", 67 | "@babel/helper-validator-identifier": "^7.25.9" 68 | }, 69 | "engines": { 70 | "node": ">=6.9.0" 71 | } 72 | }, 73 | "node_modules/@esbuild/aix-ppc64": { 74 | "version": "0.25.1", 75 | "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.1.tgz", 76 | "integrity": "sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ==", 77 | "cpu": [ 78 | "ppc64" 79 | ], 80 | "dev": true, 81 | "license": "MIT", 82 | "optional": true, 83 | "os": [ 84 | "aix" 85 | ], 86 | "engines": { 87 | "node": ">=18" 88 | } 89 | }, 90 | "node_modules/@esbuild/android-arm": { 91 | "version": "0.25.1", 92 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.1.tgz", 93 | "integrity": "sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q==", 94 | "cpu": [ 95 | "arm" 96 | ], 97 | "dev": true, 98 | "license": "MIT", 99 | "optional": true, 100 | "os": [ 101 | "android" 102 | ], 103 | "engines": { 104 | "node": ">=18" 105 | } 106 | }, 107 | "node_modules/@esbuild/android-arm64": { 108 | "version": "0.25.1", 109 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.1.tgz", 110 | "integrity": "sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA==", 111 | "cpu": [ 112 | "arm64" 113 | ], 114 | "dev": true, 115 | "license": "MIT", 116 | "optional": true, 117 | "os": [ 118 | "android" 119 | ], 120 | "engines": { 121 | "node": ">=18" 122 | } 123 | }, 124 | "node_modules/@esbuild/android-x64": { 125 | "version": "0.25.1", 126 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.1.tgz", 127 | "integrity": "sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw==", 128 | "cpu": [ 129 | "x64" 130 | ], 131 | "dev": true, 132 | "license": "MIT", 133 | "optional": true, 134 | "os": [ 135 | "android" 136 | ], 137 | "engines": { 138 | "node": ">=18" 139 | } 140 | }, 141 | "node_modules/@esbuild/darwin-arm64": { 142 | "version": "0.25.1", 143 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.1.tgz", 144 | "integrity": "sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==", 145 | "cpu": [ 146 | "arm64" 147 | ], 148 | "dev": true, 149 | "license": "MIT", 150 | "optional": true, 151 | "os": [ 152 | "darwin" 153 | ], 154 | "engines": { 155 | "node": ">=18" 156 | } 157 | }, 158 | "node_modules/@esbuild/darwin-x64": { 159 | "version": "0.25.1", 160 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.1.tgz", 161 | "integrity": "sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==", 162 | "cpu": [ 163 | "x64" 164 | ], 165 | "dev": true, 166 | "license": "MIT", 167 | "optional": true, 168 | "os": [ 169 | "darwin" 170 | ], 171 | "engines": { 172 | "node": ">=18" 173 | } 174 | }, 175 | "node_modules/@esbuild/freebsd-arm64": { 176 | "version": "0.25.1", 177 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.1.tgz", 178 | "integrity": "sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A==", 179 | "cpu": [ 180 | "arm64" 181 | ], 182 | "dev": true, 183 | "license": "MIT", 184 | "optional": true, 185 | "os": [ 186 | "freebsd" 187 | ], 188 | "engines": { 189 | "node": ">=18" 190 | } 191 | }, 192 | "node_modules/@esbuild/freebsd-x64": { 193 | "version": "0.25.1", 194 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.1.tgz", 195 | "integrity": "sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww==", 196 | "cpu": [ 197 | "x64" 198 | ], 199 | "dev": true, 200 | "license": "MIT", 201 | "optional": true, 202 | "os": [ 203 | "freebsd" 204 | ], 205 | "engines": { 206 | "node": ">=18" 207 | } 208 | }, 209 | "node_modules/@esbuild/linux-arm": { 210 | "version": "0.25.1", 211 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.1.tgz", 212 | "integrity": "sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ==", 213 | "cpu": [ 214 | "arm" 215 | ], 216 | "dev": true, 217 | "license": "MIT", 218 | "optional": true, 219 | "os": [ 220 | "linux" 221 | ], 222 | "engines": { 223 | "node": ">=18" 224 | } 225 | }, 226 | "node_modules/@esbuild/linux-arm64": { 227 | "version": "0.25.1", 228 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.1.tgz", 229 | "integrity": "sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ==", 230 | "cpu": [ 231 | "arm64" 232 | ], 233 | "dev": true, 234 | "license": "MIT", 235 | "optional": true, 236 | "os": [ 237 | "linux" 238 | ], 239 | "engines": { 240 | "node": ">=18" 241 | } 242 | }, 243 | "node_modules/@esbuild/linux-ia32": { 244 | "version": "0.25.1", 245 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.1.tgz", 246 | "integrity": "sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ==", 247 | "cpu": [ 248 | "ia32" 249 | ], 250 | "dev": true, 251 | "license": "MIT", 252 | "optional": true, 253 | "os": [ 254 | "linux" 255 | ], 256 | "engines": { 257 | "node": ">=18" 258 | } 259 | }, 260 | "node_modules/@esbuild/linux-loong64": { 261 | "version": "0.25.1", 262 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.1.tgz", 263 | "integrity": "sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg==", 264 | "cpu": [ 265 | "loong64" 266 | ], 267 | "dev": true, 268 | "license": "MIT", 269 | "optional": true, 270 | "os": [ 271 | "linux" 272 | ], 273 | "engines": { 274 | "node": ">=18" 275 | } 276 | }, 277 | "node_modules/@esbuild/linux-mips64el": { 278 | "version": "0.25.1", 279 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.1.tgz", 280 | "integrity": "sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg==", 281 | "cpu": [ 282 | "mips64el" 283 | ], 284 | "dev": true, 285 | "license": "MIT", 286 | "optional": true, 287 | "os": [ 288 | "linux" 289 | ], 290 | "engines": { 291 | "node": ">=18" 292 | } 293 | }, 294 | "node_modules/@esbuild/linux-ppc64": { 295 | "version": "0.25.1", 296 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.1.tgz", 297 | "integrity": "sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg==", 298 | "cpu": [ 299 | "ppc64" 300 | ], 301 | "dev": true, 302 | "license": "MIT", 303 | "optional": true, 304 | "os": [ 305 | "linux" 306 | ], 307 | "engines": { 308 | "node": ">=18" 309 | } 310 | }, 311 | "node_modules/@esbuild/linux-riscv64": { 312 | "version": "0.25.1", 313 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.1.tgz", 314 | "integrity": "sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ==", 315 | "cpu": [ 316 | "riscv64" 317 | ], 318 | "dev": true, 319 | "license": "MIT", 320 | "optional": true, 321 | "os": [ 322 | "linux" 323 | ], 324 | "engines": { 325 | "node": ">=18" 326 | } 327 | }, 328 | "node_modules/@esbuild/linux-s390x": { 329 | "version": "0.25.1", 330 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.1.tgz", 331 | "integrity": "sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ==", 332 | "cpu": [ 333 | "s390x" 334 | ], 335 | "dev": true, 336 | "license": "MIT", 337 | "optional": true, 338 | "os": [ 339 | "linux" 340 | ], 341 | "engines": { 342 | "node": ">=18" 343 | } 344 | }, 345 | "node_modules/@esbuild/linux-x64": { 346 | "version": "0.25.1", 347 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.1.tgz", 348 | "integrity": "sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA==", 349 | "cpu": [ 350 | "x64" 351 | ], 352 | "dev": true, 353 | "license": "MIT", 354 | "optional": true, 355 | "os": [ 356 | "linux" 357 | ], 358 | "engines": { 359 | "node": ">=18" 360 | } 361 | }, 362 | "node_modules/@esbuild/netbsd-arm64": { 363 | "version": "0.25.1", 364 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.1.tgz", 365 | "integrity": "sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g==", 366 | "cpu": [ 367 | "arm64" 368 | ], 369 | "dev": true, 370 | "license": "MIT", 371 | "optional": true, 372 | "os": [ 373 | "netbsd" 374 | ], 375 | "engines": { 376 | "node": ">=18" 377 | } 378 | }, 379 | "node_modules/@esbuild/netbsd-x64": { 380 | "version": "0.25.1", 381 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.1.tgz", 382 | "integrity": "sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA==", 383 | "cpu": [ 384 | "x64" 385 | ], 386 | "dev": true, 387 | "license": "MIT", 388 | "optional": true, 389 | "os": [ 390 | "netbsd" 391 | ], 392 | "engines": { 393 | "node": ">=18" 394 | } 395 | }, 396 | "node_modules/@esbuild/openbsd-arm64": { 397 | "version": "0.25.1", 398 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.1.tgz", 399 | "integrity": "sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg==", 400 | "cpu": [ 401 | "arm64" 402 | ], 403 | "dev": true, 404 | "license": "MIT", 405 | "optional": true, 406 | "os": [ 407 | "openbsd" 408 | ], 409 | "engines": { 410 | "node": ">=18" 411 | } 412 | }, 413 | "node_modules/@esbuild/openbsd-x64": { 414 | "version": "0.25.1", 415 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.1.tgz", 416 | "integrity": "sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw==", 417 | "cpu": [ 418 | "x64" 419 | ], 420 | "dev": true, 421 | "license": "MIT", 422 | "optional": true, 423 | "os": [ 424 | "openbsd" 425 | ], 426 | "engines": { 427 | "node": ">=18" 428 | } 429 | }, 430 | "node_modules/@esbuild/sunos-x64": { 431 | "version": "0.25.1", 432 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.1.tgz", 433 | "integrity": "sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg==", 434 | "cpu": [ 435 | "x64" 436 | ], 437 | "dev": true, 438 | "license": "MIT", 439 | "optional": true, 440 | "os": [ 441 | "sunos" 442 | ], 443 | "engines": { 444 | "node": ">=18" 445 | } 446 | }, 447 | "node_modules/@esbuild/win32-arm64": { 448 | "version": "0.25.1", 449 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.1.tgz", 450 | "integrity": "sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ==", 451 | "cpu": [ 452 | "arm64" 453 | ], 454 | "dev": true, 455 | "license": "MIT", 456 | "optional": true, 457 | "os": [ 458 | "win32" 459 | ], 460 | "engines": { 461 | "node": ">=18" 462 | } 463 | }, 464 | "node_modules/@esbuild/win32-ia32": { 465 | "version": "0.25.1", 466 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.1.tgz", 467 | "integrity": "sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A==", 468 | "cpu": [ 469 | "ia32" 470 | ], 471 | "dev": true, 472 | "license": "MIT", 473 | "optional": true, 474 | "os": [ 475 | "win32" 476 | ], 477 | "engines": { 478 | "node": ">=18" 479 | } 480 | }, 481 | "node_modules/@esbuild/win32-x64": { 482 | "version": "0.25.1", 483 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.1.tgz", 484 | "integrity": "sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg==", 485 | "cpu": [ 486 | "x64" 487 | ], 488 | "dev": true, 489 | "license": "MIT", 490 | "optional": true, 491 | "os": [ 492 | "win32" 493 | ], 494 | "engines": { 495 | "node": ">=18" 496 | } 497 | }, 498 | "node_modules/@jridgewell/sourcemap-codec": { 499 | "version": "1.5.0", 500 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", 501 | "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", 502 | "license": "MIT" 503 | }, 504 | "node_modules/@nodelib/fs.scandir": { 505 | "version": "2.1.5", 506 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 507 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 508 | "license": "MIT", 509 | "dependencies": { 510 | "@nodelib/fs.stat": "2.0.5", 511 | "run-parallel": "^1.1.9" 512 | }, 513 | "engines": { 514 | "node": ">= 8" 515 | } 516 | }, 517 | "node_modules/@nodelib/fs.stat": { 518 | "version": "2.0.5", 519 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 520 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 521 | "license": "MIT", 522 | "engines": { 523 | "node": ">= 8" 524 | } 525 | }, 526 | "node_modules/@nodelib/fs.walk": { 527 | "version": "1.2.8", 528 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 529 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 530 | "license": "MIT", 531 | "dependencies": { 532 | "@nodelib/fs.scandir": "2.1.5", 533 | "fastq": "^1.6.0" 534 | }, 535 | "engines": { 536 | "node": ">= 8" 537 | } 538 | }, 539 | "node_modules/@nuxt/kit": { 540 | "version": "3.16.1", 541 | "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.16.1.tgz", 542 | "integrity": "sha512-Perby8hJGUeCWad5oTVXb/Ibvp18ZCUC5PxHHu+acMDmVfnxSo48yqk7qNd09VkTF3LEzoEjNZpmW2ZWN0ry7A==", 543 | "license": "MIT", 544 | "dependencies": { 545 | "c12": "^3.0.2", 546 | "consola": "^3.4.2", 547 | "defu": "^6.1.4", 548 | "destr": "^2.0.3", 549 | "errx": "^0.1.0", 550 | "exsolve": "^1.0.4", 551 | "globby": "^14.1.0", 552 | "ignore": "^7.0.3", 553 | "jiti": "^2.4.2", 554 | "klona": "^2.0.6", 555 | "knitwork": "^1.2.0", 556 | "mlly": "^1.7.4", 557 | "ohash": "^2.0.11", 558 | "pathe": "^2.0.3", 559 | "pkg-types": "^2.1.0", 560 | "scule": "^1.3.0", 561 | "semver": "^7.7.1", 562 | "std-env": "^3.8.1", 563 | "ufo": "^1.5.4", 564 | "unctx": "^2.4.1", 565 | "unimport": "^4.1.2", 566 | "untyped": "^2.0.0" 567 | }, 568 | "engines": { 569 | "node": ">=18.12.0" 570 | } 571 | }, 572 | "node_modules/@rollup/rollup-android-arm-eabi": { 573 | "version": "4.37.0", 574 | "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.37.0.tgz", 575 | "integrity": "sha512-l7StVw6WAa8l3vA1ov80jyetOAEo1FtHvZDbzXDO/02Sq/QVvqlHkYoFwDJPIMj0GKiistsBudfx5tGFnwYWDQ==", 576 | "cpu": [ 577 | "arm" 578 | ], 579 | "dev": true, 580 | "license": "MIT", 581 | "optional": true, 582 | "os": [ 583 | "android" 584 | ] 585 | }, 586 | "node_modules/@rollup/rollup-android-arm64": { 587 | "version": "4.37.0", 588 | "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.37.0.tgz", 589 | "integrity": "sha512-6U3SlVyMxezt8Y+/iEBcbp945uZjJwjZimu76xoG7tO1av9VO691z8PkhzQ85ith2I8R2RddEPeSfcbyPfD4hA==", 590 | "cpu": [ 591 | "arm64" 592 | ], 593 | "dev": true, 594 | "license": "MIT", 595 | "optional": true, 596 | "os": [ 597 | "android" 598 | ] 599 | }, 600 | "node_modules/@rollup/rollup-darwin-arm64": { 601 | "version": "4.37.0", 602 | "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.37.0.tgz", 603 | "integrity": "sha512-+iTQ5YHuGmPt10NTzEyMPbayiNTcOZDWsbxZYR1ZnmLnZxG17ivrPSWFO9j6GalY0+gV3Jtwrrs12DBscxnlYA==", 604 | "cpu": [ 605 | "arm64" 606 | ], 607 | "dev": true, 608 | "license": "MIT", 609 | "optional": true, 610 | "os": [ 611 | "darwin" 612 | ] 613 | }, 614 | "node_modules/@rollup/rollup-darwin-x64": { 615 | "version": "4.37.0", 616 | "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.37.0.tgz", 617 | "integrity": "sha512-m8W2UbxLDcmRKVjgl5J/k4B8d7qX2EcJve3Sut7YGrQoPtCIQGPH5AMzuFvYRWZi0FVS0zEY4c8uttPfX6bwYQ==", 618 | "cpu": [ 619 | "x64" 620 | ], 621 | "dev": true, 622 | "license": "MIT", 623 | "optional": true, 624 | "os": [ 625 | "darwin" 626 | ] 627 | }, 628 | "node_modules/@rollup/rollup-freebsd-arm64": { 629 | "version": "4.37.0", 630 | "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.37.0.tgz", 631 | "integrity": "sha512-FOMXGmH15OmtQWEt174v9P1JqqhlgYge/bUjIbiVD1nI1NeJ30HYT9SJlZMqdo1uQFyt9cz748F1BHghWaDnVA==", 632 | "cpu": [ 633 | "arm64" 634 | ], 635 | "dev": true, 636 | "license": "MIT", 637 | "optional": true, 638 | "os": [ 639 | "freebsd" 640 | ] 641 | }, 642 | "node_modules/@rollup/rollup-freebsd-x64": { 643 | "version": "4.37.0", 644 | "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.37.0.tgz", 645 | "integrity": "sha512-SZMxNttjPKvV14Hjck5t70xS3l63sbVwl98g3FlVVx2YIDmfUIy29jQrsw06ewEYQ8lQSuY9mpAPlmgRD2iSsA==", 646 | "cpu": [ 647 | "x64" 648 | ], 649 | "dev": true, 650 | "license": "MIT", 651 | "optional": true, 652 | "os": [ 653 | "freebsd" 654 | ] 655 | }, 656 | "node_modules/@rollup/rollup-linux-arm-gnueabihf": { 657 | "version": "4.37.0", 658 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.37.0.tgz", 659 | "integrity": "sha512-hhAALKJPidCwZcj+g+iN+38SIOkhK2a9bqtJR+EtyxrKKSt1ynCBeqrQy31z0oWU6thRZzdx53hVgEbRkuI19w==", 660 | "cpu": [ 661 | "arm" 662 | ], 663 | "dev": true, 664 | "license": "MIT", 665 | "optional": true, 666 | "os": [ 667 | "linux" 668 | ] 669 | }, 670 | "node_modules/@rollup/rollup-linux-arm-musleabihf": { 671 | "version": "4.37.0", 672 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.37.0.tgz", 673 | "integrity": "sha512-jUb/kmn/Gd8epbHKEqkRAxq5c2EwRt0DqhSGWjPFxLeFvldFdHQs/n8lQ9x85oAeVb6bHcS8irhTJX2FCOd8Ag==", 674 | "cpu": [ 675 | "arm" 676 | ], 677 | "dev": true, 678 | "license": "MIT", 679 | "optional": true, 680 | "os": [ 681 | "linux" 682 | ] 683 | }, 684 | "node_modules/@rollup/rollup-linux-arm64-gnu": { 685 | "version": "4.37.0", 686 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.37.0.tgz", 687 | "integrity": "sha512-oNrJxcQT9IcbcmKlkF+Yz2tmOxZgG9D9GRq+1OE6XCQwCVwxixYAa38Z8qqPzQvzt1FCfmrHX03E0pWoXm1DqA==", 688 | "cpu": [ 689 | "arm64" 690 | ], 691 | "dev": true, 692 | "license": "MIT", 693 | "optional": true, 694 | "os": [ 695 | "linux" 696 | ] 697 | }, 698 | "node_modules/@rollup/rollup-linux-arm64-musl": { 699 | "version": "4.37.0", 700 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.37.0.tgz", 701 | "integrity": "sha512-pfxLBMls+28Ey2enpX3JvjEjaJMBX5XlPCZNGxj4kdJyHduPBXtxYeb8alo0a7bqOoWZW2uKynhHxF/MWoHaGQ==", 702 | "cpu": [ 703 | "arm64" 704 | ], 705 | "dev": true, 706 | "license": "MIT", 707 | "optional": true, 708 | "os": [ 709 | "linux" 710 | ] 711 | }, 712 | "node_modules/@rollup/rollup-linux-loongarch64-gnu": { 713 | "version": "4.37.0", 714 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.37.0.tgz", 715 | "integrity": "sha512-yCE0NnutTC/7IGUq/PUHmoeZbIwq3KRh02e9SfFh7Vmc1Z7atuJRYWhRME5fKgT8aS20mwi1RyChA23qSyRGpA==", 716 | "cpu": [ 717 | "loong64" 718 | ], 719 | "dev": true, 720 | "license": "MIT", 721 | "optional": true, 722 | "os": [ 723 | "linux" 724 | ] 725 | }, 726 | "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { 727 | "version": "4.37.0", 728 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.37.0.tgz", 729 | "integrity": "sha512-NxcICptHk06E2Lh3a4Pu+2PEdZ6ahNHuK7o6Np9zcWkrBMuv21j10SQDJW3C9Yf/A/P7cutWoC/DptNLVsZ0VQ==", 730 | "cpu": [ 731 | "ppc64" 732 | ], 733 | "dev": true, 734 | "license": "MIT", 735 | "optional": true, 736 | "os": [ 737 | "linux" 738 | ] 739 | }, 740 | "node_modules/@rollup/rollup-linux-riscv64-gnu": { 741 | "version": "4.37.0", 742 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.37.0.tgz", 743 | "integrity": "sha512-PpWwHMPCVpFZLTfLq7EWJWvrmEuLdGn1GMYcm5MV7PaRgwCEYJAwiN94uBuZev0/J/hFIIJCsYw4nLmXA9J7Pw==", 744 | "cpu": [ 745 | "riscv64" 746 | ], 747 | "dev": true, 748 | "license": "MIT", 749 | "optional": true, 750 | "os": [ 751 | "linux" 752 | ] 753 | }, 754 | "node_modules/@rollup/rollup-linux-riscv64-musl": { 755 | "version": "4.37.0", 756 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.37.0.tgz", 757 | "integrity": "sha512-DTNwl6a3CfhGTAOYZ4KtYbdS8b+275LSLqJVJIrPa5/JuIufWWZ/QFvkxp52gpmguN95eujrM68ZG+zVxa8zHA==", 758 | "cpu": [ 759 | "riscv64" 760 | ], 761 | "dev": true, 762 | "license": "MIT", 763 | "optional": true, 764 | "os": [ 765 | "linux" 766 | ] 767 | }, 768 | "node_modules/@rollup/rollup-linux-s390x-gnu": { 769 | "version": "4.37.0", 770 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.37.0.tgz", 771 | "integrity": "sha512-hZDDU5fgWvDdHFuExN1gBOhCuzo/8TMpidfOR+1cPZJflcEzXdCy1LjnklQdW8/Et9sryOPJAKAQRw8Jq7Tg+A==", 772 | "cpu": [ 773 | "s390x" 774 | ], 775 | "dev": true, 776 | "license": "MIT", 777 | "optional": true, 778 | "os": [ 779 | "linux" 780 | ] 781 | }, 782 | "node_modules/@rollup/rollup-linux-x64-gnu": { 783 | "version": "4.37.0", 784 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.37.0.tgz", 785 | "integrity": "sha512-pKivGpgJM5g8dwj0ywBwe/HeVAUSuVVJhUTa/URXjxvoyTT/AxsLTAbkHkDHG7qQxLoW2s3apEIl26uUe08LVQ==", 786 | "cpu": [ 787 | "x64" 788 | ], 789 | "dev": true, 790 | "license": "MIT", 791 | "optional": true, 792 | "os": [ 793 | "linux" 794 | ] 795 | }, 796 | "node_modules/@rollup/rollup-linux-x64-musl": { 797 | "version": "4.37.0", 798 | "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.37.0.tgz", 799 | "integrity": "sha512-E2lPrLKE8sQbY/2bEkVTGDEk4/49UYRVWgj90MY8yPjpnGBQ+Xi1Qnr7b7UIWw1NOggdFQFOLZ8+5CzCiz143w==", 800 | "cpu": [ 801 | "x64" 802 | ], 803 | "dev": true, 804 | "license": "MIT", 805 | "optional": true, 806 | "os": [ 807 | "linux" 808 | ] 809 | }, 810 | "node_modules/@rollup/rollup-win32-arm64-msvc": { 811 | "version": "4.37.0", 812 | "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.37.0.tgz", 813 | "integrity": "sha512-Jm7biMazjNzTU4PrQtr7VS8ibeys9Pn29/1bm4ph7CP2kf21950LgN+BaE2mJ1QujnvOc6p54eWWiVvn05SOBg==", 814 | "cpu": [ 815 | "arm64" 816 | ], 817 | "dev": true, 818 | "license": "MIT", 819 | "optional": true, 820 | "os": [ 821 | "win32" 822 | ] 823 | }, 824 | "node_modules/@rollup/rollup-win32-ia32-msvc": { 825 | "version": "4.37.0", 826 | "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.37.0.tgz", 827 | "integrity": "sha512-e3/1SFm1OjefWICB2Ucstg2dxYDkDTZGDYgwufcbsxTHyqQps1UQf33dFEChBNmeSsTOyrjw2JJq0zbG5GF6RA==", 828 | "cpu": [ 829 | "ia32" 830 | ], 831 | "dev": true, 832 | "license": "MIT", 833 | "optional": true, 834 | "os": [ 835 | "win32" 836 | ] 837 | }, 838 | "node_modules/@rollup/rollup-win32-x64-msvc": { 839 | "version": "4.37.0", 840 | "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.37.0.tgz", 841 | "integrity": "sha512-LWbXUBwn/bcLx2sSsqy7pK5o+Nr+VCoRoAohfJ5C/aBio9nfJmGQqHAhU6pwxV/RmyTk5AqdySma7uwWGlmeuA==", 842 | "cpu": [ 843 | "x64" 844 | ], 845 | "dev": true, 846 | "license": "MIT", 847 | "optional": true, 848 | "os": [ 849 | "win32" 850 | ] 851 | }, 852 | "node_modules/@sindresorhus/merge-streams": { 853 | "version": "2.3.0", 854 | "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", 855 | "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", 856 | "license": "MIT", 857 | "engines": { 858 | "node": ">=18" 859 | }, 860 | "funding": { 861 | "url": "https://github.com/sponsors/sindresorhus" 862 | } 863 | }, 864 | "node_modules/@tailwindcss/node": { 865 | "version": "4.0.17", 866 | "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.0.17.tgz", 867 | "integrity": "sha512-LIdNwcqyY7578VpofXyqjH6f+3fP4nrz7FBLki5HpzqjYfXdF2m/eW18ZfoKePtDGg90Bvvfpov9d2gy5XVCbg==", 868 | "dev": true, 869 | "license": "MIT", 870 | "dependencies": { 871 | "enhanced-resolve": "^5.18.1", 872 | "jiti": "^2.4.2", 873 | "tailwindcss": "4.0.17" 874 | } 875 | }, 876 | "node_modules/@tailwindcss/oxide": { 877 | "version": "4.0.17", 878 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.0.17.tgz", 879 | "integrity": "sha512-B4OaUIRD2uVrULpAD1Yksx2+wNarQr2rQh65nXqaqbLY1jCd8fO+3KLh/+TH4Hzh2NTHQvgxVbPdUDOtLk7vAw==", 880 | "dev": true, 881 | "license": "MIT", 882 | "engines": { 883 | "node": ">= 10" 884 | }, 885 | "optionalDependencies": { 886 | "@tailwindcss/oxide-android-arm64": "4.0.17", 887 | "@tailwindcss/oxide-darwin-arm64": "4.0.17", 888 | "@tailwindcss/oxide-darwin-x64": "4.0.17", 889 | "@tailwindcss/oxide-freebsd-x64": "4.0.17", 890 | "@tailwindcss/oxide-linux-arm-gnueabihf": "4.0.17", 891 | "@tailwindcss/oxide-linux-arm64-gnu": "4.0.17", 892 | "@tailwindcss/oxide-linux-arm64-musl": "4.0.17", 893 | "@tailwindcss/oxide-linux-x64-gnu": "4.0.17", 894 | "@tailwindcss/oxide-linux-x64-musl": "4.0.17", 895 | "@tailwindcss/oxide-win32-arm64-msvc": "4.0.17", 896 | "@tailwindcss/oxide-win32-x64-msvc": "4.0.17" 897 | } 898 | }, 899 | "node_modules/@tailwindcss/oxide-android-arm64": { 900 | "version": "4.0.17", 901 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.0.17.tgz", 902 | "integrity": "sha512-3RfO0ZK64WAhop+EbHeyxGThyDr/fYhxPzDbEQjD2+v7ZhKTb2svTWy+KK+J1PHATus2/CQGAGp7pHY/8M8ugg==", 903 | "cpu": [ 904 | "arm64" 905 | ], 906 | "dev": true, 907 | "license": "MIT", 908 | "optional": true, 909 | "os": [ 910 | "android" 911 | ], 912 | "engines": { 913 | "node": ">= 10" 914 | } 915 | }, 916 | "node_modules/@tailwindcss/oxide-darwin-arm64": { 917 | "version": "4.0.17", 918 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.0.17.tgz", 919 | "integrity": "sha512-e1uayxFQCCDuzTk9s8q7MC5jFN42IY7nzcr5n0Mw/AcUHwD6JaBkXnATkD924ZsHyPDvddnusIEvkgLd2CiREg==", 920 | "cpu": [ 921 | "arm64" 922 | ], 923 | "dev": true, 924 | "license": "MIT", 925 | "optional": true, 926 | "os": [ 927 | "darwin" 928 | ], 929 | "engines": { 930 | "node": ">= 10" 931 | } 932 | }, 933 | "node_modules/@tailwindcss/oxide-darwin-x64": { 934 | "version": "4.0.17", 935 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.0.17.tgz", 936 | "integrity": "sha512-d6z7HSdOKfXQ0HPlVx1jduUf/YtBuCCtEDIEFeBCzgRRtDsUuRtofPqxIVaSCUTOk5+OfRLonje6n9dF6AH8wQ==", 937 | "cpu": [ 938 | "x64" 939 | ], 940 | "dev": true, 941 | "license": "MIT", 942 | "optional": true, 943 | "os": [ 944 | "darwin" 945 | ], 946 | "engines": { 947 | "node": ">= 10" 948 | } 949 | }, 950 | "node_modules/@tailwindcss/oxide-freebsd-x64": { 951 | "version": "4.0.17", 952 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.0.17.tgz", 953 | "integrity": "sha512-EjrVa6lx3wzXz3l5MsdOGtYIsRjgs5Mru6lDv4RuiXpguWeOb3UzGJ7vw7PEzcFadKNvNslEQqoAABeMezprxQ==", 954 | "cpu": [ 955 | "x64" 956 | ], 957 | "dev": true, 958 | "license": "MIT", 959 | "optional": true, 960 | "os": [ 961 | "freebsd" 962 | ], 963 | "engines": { 964 | "node": ">= 10" 965 | } 966 | }, 967 | "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { 968 | "version": "4.0.17", 969 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.0.17.tgz", 970 | "integrity": "sha512-65zXfCOdi8wuaY0Ye6qMR5LAXokHYtrGvo9t/NmxvSZtCCitXV/gzJ/WP5ksXPhff1SV5rov0S+ZIZU+/4eyCQ==", 971 | "cpu": [ 972 | "arm" 973 | ], 974 | "dev": true, 975 | "license": "MIT", 976 | "optional": true, 977 | "os": [ 978 | "linux" 979 | ], 980 | "engines": { 981 | "node": ">= 10" 982 | } 983 | }, 984 | "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { 985 | "version": "4.0.17", 986 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.0.17.tgz", 987 | "integrity": "sha512-+aaq6hJ8ioTdbJV5IA1WjWgLmun4T7eYLTvJIToiXLHy5JzUERRbIZjAcjgK9qXMwnvuu7rqpxzej+hGoEcG5g==", 988 | "cpu": [ 989 | "arm64" 990 | ], 991 | "dev": true, 992 | "license": "MIT", 993 | "optional": true, 994 | "os": [ 995 | "linux" 996 | ], 997 | "engines": { 998 | "node": ">= 10" 999 | } 1000 | }, 1001 | "node_modules/@tailwindcss/oxide-linux-arm64-musl": { 1002 | "version": "4.0.17", 1003 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.0.17.tgz", 1004 | "integrity": "sha512-/FhWgZCdUGAeYHYnZKekiOC0aXFiBIoNCA0bwzkICiMYS5Rtx2KxFfMUXQVnl4uZRblG5ypt5vpPhVaXgGk80w==", 1005 | "cpu": [ 1006 | "arm64" 1007 | ], 1008 | "dev": true, 1009 | "license": "MIT", 1010 | "optional": true, 1011 | "os": [ 1012 | "linux" 1013 | ], 1014 | "engines": { 1015 | "node": ">= 10" 1016 | } 1017 | }, 1018 | "node_modules/@tailwindcss/oxide-linux-x64-gnu": { 1019 | "version": "4.0.17", 1020 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.0.17.tgz", 1021 | "integrity": "sha512-gELJzOHK6GDoIpm/539Golvk+QWZjxQcbkKq9eB2kzNkOvrP0xc5UPgO9bIMNt1M48mO8ZeNenCMGt6tfkvVBg==", 1022 | "cpu": [ 1023 | "x64" 1024 | ], 1025 | "dev": true, 1026 | "license": "MIT", 1027 | "optional": true, 1028 | "os": [ 1029 | "linux" 1030 | ], 1031 | "engines": { 1032 | "node": ">= 10" 1033 | } 1034 | }, 1035 | "node_modules/@tailwindcss/oxide-linux-x64-musl": { 1036 | "version": "4.0.17", 1037 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.0.17.tgz", 1038 | "integrity": "sha512-68NwxcJrZn94IOW4TysMIbYv5AlM6So1luTlbYUDIGnKma1yTFGBRNEJ+SacJ3PZE2rgcTBNRHX1TB4EQ/XEHw==", 1039 | "cpu": [ 1040 | "x64" 1041 | ], 1042 | "dev": true, 1043 | "license": "MIT", 1044 | "optional": true, 1045 | "os": [ 1046 | "linux" 1047 | ], 1048 | "engines": { 1049 | "node": ">= 10" 1050 | } 1051 | }, 1052 | "node_modules/@tailwindcss/oxide-win32-x64-msvc": { 1053 | "version": "4.0.17", 1054 | "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.0.17.tgz", 1055 | "integrity": "sha512-7/DTEvXcoWlqX0dAlcN0zlmcEu9xSermuo7VNGX9tJ3nYMdo735SHvbrHDln1+LYfF6NhJ3hjbpbjkMOAGmkDg==", 1056 | "cpu": [ 1057 | "x64" 1058 | ], 1059 | "dev": true, 1060 | "license": "MIT", 1061 | "optional": true, 1062 | "os": [ 1063 | "win32" 1064 | ], 1065 | "engines": { 1066 | "node": ">= 10" 1067 | } 1068 | }, 1069 | "node_modules/@tailwindcss/vite": { 1070 | "version": "4.0.17", 1071 | "resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.0.17.tgz", 1072 | "integrity": "sha512-HJbBYDlDVg5cvYZzECb6xwc1IDCEM3uJi3hEZp3BjZGCNGJcTsnCpan+z+VMW0zo6gR0U6O6ElqU1OoZ74Dhww==", 1073 | "dev": true, 1074 | "license": "MIT", 1075 | "dependencies": { 1076 | "@tailwindcss/node": "4.0.17", 1077 | "@tailwindcss/oxide": "4.0.17", 1078 | "lightningcss": "1.29.2", 1079 | "tailwindcss": "4.0.17" 1080 | }, 1081 | "peerDependencies": { 1082 | "vite": "^5.2.0 || ^6" 1083 | } 1084 | }, 1085 | "node_modules/@types/estree": { 1086 | "version": "1.0.6", 1087 | "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", 1088 | "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", 1089 | "license": "MIT" 1090 | }, 1091 | "node_modules/@vitejs/plugin-vue": { 1092 | "version": "5.2.3", 1093 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.3.tgz", 1094 | "integrity": "sha512-IYSLEQj4LgZZuoVpdSUCw3dIynTWQgPlaRP6iAvMle4My0HdYwr5g5wQAfwOeHQBmYwEkqF70nRpSilr6PoUDg==", 1095 | "dev": true, 1096 | "license": "MIT", 1097 | "engines": { 1098 | "node": "^18.0.0 || >=20.0.0" 1099 | }, 1100 | "peerDependencies": { 1101 | "vite": "^5.0.0 || ^6.0.0", 1102 | "vue": "^3.2.25" 1103 | } 1104 | }, 1105 | "node_modules/@volar/language-core": { 1106 | "version": "2.4.12", 1107 | "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.12.tgz", 1108 | "integrity": "sha512-RLrFdXEaQBWfSnYGVxvR2WrO6Bub0unkdHYIdC31HzIEqATIuuhRRzYu76iGPZ6OtA4Au1SnW0ZwIqPP217YhA==", 1109 | "dev": true, 1110 | "license": "MIT", 1111 | "dependencies": { 1112 | "@volar/source-map": "2.4.12" 1113 | } 1114 | }, 1115 | "node_modules/@volar/source-map": { 1116 | "version": "2.4.12", 1117 | "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.12.tgz", 1118 | "integrity": "sha512-bUFIKvn2U0AWojOaqf63ER0N/iHIBYZPpNGogfLPQ68F5Eet6FnLlyho7BS0y2HJ1jFhSif7AcuTx1TqsCzRzw==", 1119 | "dev": true, 1120 | "license": "MIT" 1121 | }, 1122 | "node_modules/@volar/typescript": { 1123 | "version": "2.4.12", 1124 | "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.12.tgz", 1125 | "integrity": "sha512-HJB73OTJDgPc80K30wxi3if4fSsZZAOScbj2fcicMuOPoOkcf9NNAINb33o+DzhBdF9xTKC1gnPmIRDous5S0g==", 1126 | "dev": true, 1127 | "license": "MIT", 1128 | "dependencies": { 1129 | "@volar/language-core": "2.4.12", 1130 | "path-browserify": "^1.0.1", 1131 | "vscode-uri": "^3.0.8" 1132 | } 1133 | }, 1134 | "node_modules/@vue/compiler-core": { 1135 | "version": "3.5.13", 1136 | "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz", 1137 | "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==", 1138 | "license": "MIT", 1139 | "dependencies": { 1140 | "@babel/parser": "^7.25.3", 1141 | "@vue/shared": "3.5.13", 1142 | "entities": "^4.5.0", 1143 | "estree-walker": "^2.0.2", 1144 | "source-map-js": "^1.2.0" 1145 | } 1146 | }, 1147 | "node_modules/@vue/compiler-dom": { 1148 | "version": "3.5.13", 1149 | "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz", 1150 | "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==", 1151 | "license": "MIT", 1152 | "dependencies": { 1153 | "@vue/compiler-core": "3.5.13", 1154 | "@vue/shared": "3.5.13" 1155 | } 1156 | }, 1157 | "node_modules/@vue/compiler-sfc": { 1158 | "version": "3.5.13", 1159 | "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.13.tgz", 1160 | "integrity": "sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==", 1161 | "license": "MIT", 1162 | "dependencies": { 1163 | "@babel/parser": "^7.25.3", 1164 | "@vue/compiler-core": "3.5.13", 1165 | "@vue/compiler-dom": "3.5.13", 1166 | "@vue/compiler-ssr": "3.5.13", 1167 | "@vue/shared": "3.5.13", 1168 | "estree-walker": "^2.0.2", 1169 | "magic-string": "^0.30.11", 1170 | "postcss": "^8.4.48", 1171 | "source-map-js": "^1.2.0" 1172 | } 1173 | }, 1174 | "node_modules/@vue/compiler-ssr": { 1175 | "version": "3.5.13", 1176 | "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.13.tgz", 1177 | "integrity": "sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==", 1178 | "license": "MIT", 1179 | "dependencies": { 1180 | "@vue/compiler-dom": "3.5.13", 1181 | "@vue/shared": "3.5.13" 1182 | } 1183 | }, 1184 | "node_modules/@vue/compiler-vue2": { 1185 | "version": "2.7.16", 1186 | "resolved": "https://registry.npmjs.org/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz", 1187 | "integrity": "sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==", 1188 | "dev": true, 1189 | "license": "MIT", 1190 | "dependencies": { 1191 | "de-indent": "^1.0.2", 1192 | "he": "^1.2.0" 1193 | } 1194 | }, 1195 | "node_modules/@vue/devtools-api": { 1196 | "version": "7.7.2", 1197 | "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.7.2.tgz", 1198 | "integrity": "sha512-1syn558KhyN+chO5SjlZIwJ8bV/bQ1nOVTG66t2RbG66ZGekyiYNmRO7X9BJCXQqPsFHlnksqvPhce2qpzxFnA==", 1199 | "license": "MIT", 1200 | "dependencies": { 1201 | "@vue/devtools-kit": "^7.7.2" 1202 | } 1203 | }, 1204 | "node_modules/@vue/devtools-kit": { 1205 | "version": "7.7.2", 1206 | "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.2.tgz", 1207 | "integrity": "sha512-CY0I1JH3Z8PECbn6k3TqM1Bk9ASWxeMtTCvZr7vb+CHi+X/QwQm5F1/fPagraamKMAHVfuuCbdcnNg1A4CYVWQ==", 1208 | "license": "MIT", 1209 | "dependencies": { 1210 | "@vue/devtools-shared": "^7.7.2", 1211 | "birpc": "^0.2.19", 1212 | "hookable": "^5.5.3", 1213 | "mitt": "^3.0.1", 1214 | "perfect-debounce": "^1.0.0", 1215 | "speakingurl": "^14.0.1", 1216 | "superjson": "^2.2.1" 1217 | } 1218 | }, 1219 | "node_modules/@vue/devtools-shared": { 1220 | "version": "7.7.2", 1221 | "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.2.tgz", 1222 | "integrity": "sha512-uBFxnp8gwW2vD6FrJB8JZLUzVb6PNRG0B0jBnHsOH8uKyva2qINY8PTF5Te4QlTbMDqU5K6qtJDr6cNsKWhbOA==", 1223 | "license": "MIT", 1224 | "dependencies": { 1225 | "rfdc": "^1.4.1" 1226 | } 1227 | }, 1228 | "node_modules/@vue/language-core": { 1229 | "version": "2.2.8", 1230 | "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.2.8.tgz", 1231 | "integrity": "sha512-rrzB0wPGBvcwaSNRriVWdNAbHQWSf0NlGqgKHK5mEkXpefjUlVRP62u03KvwZpvKVjRnBIQ/Lwre+Mx9N6juUQ==", 1232 | "dev": true, 1233 | "license": "MIT", 1234 | "dependencies": { 1235 | "@volar/language-core": "~2.4.11", 1236 | "@vue/compiler-dom": "^3.5.0", 1237 | "@vue/compiler-vue2": "^2.7.16", 1238 | "@vue/shared": "^3.5.0", 1239 | "alien-signals": "^1.0.3", 1240 | "minimatch": "^9.0.3", 1241 | "muggle-string": "^0.4.1", 1242 | "path-browserify": "^1.0.1" 1243 | }, 1244 | "peerDependencies": { 1245 | "typescript": "*" 1246 | }, 1247 | "peerDependenciesMeta": { 1248 | "typescript": { 1249 | "optional": true 1250 | } 1251 | } 1252 | }, 1253 | "node_modules/@vue/reactivity": { 1254 | "version": "3.5.13", 1255 | "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.13.tgz", 1256 | "integrity": "sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==", 1257 | "license": "MIT", 1258 | "dependencies": { 1259 | "@vue/shared": "3.5.13" 1260 | } 1261 | }, 1262 | "node_modules/@vue/runtime-core": { 1263 | "version": "3.5.13", 1264 | "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.13.tgz", 1265 | "integrity": "sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==", 1266 | "license": "MIT", 1267 | "dependencies": { 1268 | "@vue/reactivity": "3.5.13", 1269 | "@vue/shared": "3.5.13" 1270 | } 1271 | }, 1272 | "node_modules/@vue/runtime-dom": { 1273 | "version": "3.5.13", 1274 | "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.13.tgz", 1275 | "integrity": "sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==", 1276 | "license": "MIT", 1277 | "dependencies": { 1278 | "@vue/reactivity": "3.5.13", 1279 | "@vue/runtime-core": "3.5.13", 1280 | "@vue/shared": "3.5.13", 1281 | "csstype": "^3.1.3" 1282 | } 1283 | }, 1284 | "node_modules/@vue/server-renderer": { 1285 | "version": "3.5.13", 1286 | "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.13.tgz", 1287 | "integrity": "sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==", 1288 | "license": "MIT", 1289 | "dependencies": { 1290 | "@vue/compiler-ssr": "3.5.13", 1291 | "@vue/shared": "3.5.13" 1292 | }, 1293 | "peerDependencies": { 1294 | "vue": "3.5.13" 1295 | } 1296 | }, 1297 | "node_modules/@vue/shared": { 1298 | "version": "3.5.13", 1299 | "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz", 1300 | "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==", 1301 | "license": "MIT" 1302 | }, 1303 | "node_modules/@vue/tsconfig": { 1304 | "version": "0.7.0", 1305 | "resolved": "https://registry.npmjs.org/@vue/tsconfig/-/tsconfig-0.7.0.tgz", 1306 | "integrity": "sha512-ku2uNz5MaZ9IerPPUyOHzyjhXoX2kVJaVf7hL315DC17vS6IiZRmmCPfggNbU16QTvM80+uYYy3eYJB59WCtvg==", 1307 | "dev": true, 1308 | "license": "MIT", 1309 | "peerDependencies": { 1310 | "typescript": "5.x", 1311 | "vue": "^3.4.0" 1312 | }, 1313 | "peerDependenciesMeta": { 1314 | "typescript": { 1315 | "optional": true 1316 | }, 1317 | "vue": { 1318 | "optional": true 1319 | } 1320 | } 1321 | }, 1322 | "node_modules/acorn": { 1323 | "version": "8.14.1", 1324 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", 1325 | "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", 1326 | "license": "MIT", 1327 | "bin": { 1328 | "acorn": "bin/acorn" 1329 | }, 1330 | "engines": { 1331 | "node": ">=0.4.0" 1332 | } 1333 | }, 1334 | "node_modules/alien-signals": { 1335 | "version": "1.0.9", 1336 | "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-1.0.9.tgz", 1337 | "integrity": "sha512-2dQYgGZHrW4pOYv0BWiw4cH/ElhwmLnQDcj/fdnRRF2OO3YBqgJXSleI1EbbXdQsuC5oCvr6+VKAOEElsmcx4Q==", 1338 | "dev": true, 1339 | "license": "MIT" 1340 | }, 1341 | "node_modules/asynckit": { 1342 | "version": "0.4.0", 1343 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 1344 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", 1345 | "license": "MIT" 1346 | }, 1347 | "node_modules/axios": { 1348 | "version": "1.8.4", 1349 | "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", 1350 | "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", 1351 | "license": "MIT", 1352 | "dependencies": { 1353 | "follow-redirects": "^1.15.6", 1354 | "form-data": "^4.0.0", 1355 | "proxy-from-env": "^1.1.0" 1356 | } 1357 | }, 1358 | "node_modules/balanced-match": { 1359 | "version": "1.0.2", 1360 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 1361 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 1362 | "dev": true, 1363 | "license": "MIT" 1364 | }, 1365 | "node_modules/birpc": { 1366 | "version": "0.2.19", 1367 | "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.19.tgz", 1368 | "integrity": "sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==", 1369 | "license": "MIT", 1370 | "funding": { 1371 | "url": "https://github.com/sponsors/antfu" 1372 | } 1373 | }, 1374 | "node_modules/brace-expansion": { 1375 | "version": "2.0.1", 1376 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", 1377 | "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", 1378 | "dev": true, 1379 | "license": "MIT", 1380 | "dependencies": { 1381 | "balanced-match": "^1.0.0" 1382 | } 1383 | }, 1384 | "node_modules/braces": { 1385 | "version": "3.0.3", 1386 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", 1387 | "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", 1388 | "license": "MIT", 1389 | "dependencies": { 1390 | "fill-range": "^7.1.1" 1391 | }, 1392 | "engines": { 1393 | "node": ">=8" 1394 | } 1395 | }, 1396 | "node_modules/c12": { 1397 | "version": "3.0.2", 1398 | "resolved": "https://registry.npmjs.org/c12/-/c12-3.0.2.tgz", 1399 | "integrity": "sha512-6Tzk1/TNeI3WBPpK0j/Ss4+gPj3PUJYbWl/MWDJBThFvwNGNkXtd7Cz8BJtD4aRwoGHtzQD0SnxamgUiBH0/Nw==", 1400 | "license": "MIT", 1401 | "dependencies": { 1402 | "chokidar": "^4.0.3", 1403 | "confbox": "^0.1.8", 1404 | "defu": "^6.1.4", 1405 | "dotenv": "^16.4.7", 1406 | "exsolve": "^1.0.0", 1407 | "giget": "^2.0.0", 1408 | "jiti": "^2.4.2", 1409 | "ohash": "^2.0.5", 1410 | "pathe": "^2.0.3", 1411 | "perfect-debounce": "^1.0.0", 1412 | "pkg-types": "^2.0.0", 1413 | "rc9": "^2.1.2" 1414 | }, 1415 | "peerDependencies": { 1416 | "magicast": "^0.3.5" 1417 | }, 1418 | "peerDependenciesMeta": { 1419 | "magicast": { 1420 | "optional": true 1421 | } 1422 | } 1423 | }, 1424 | "node_modules/call-bind-apply-helpers": { 1425 | "version": "1.0.2", 1426 | "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", 1427 | "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", 1428 | "license": "MIT", 1429 | "dependencies": { 1430 | "es-errors": "^1.3.0", 1431 | "function-bind": "^1.1.2" 1432 | }, 1433 | "engines": { 1434 | "node": ">= 0.4" 1435 | } 1436 | }, 1437 | "node_modules/chokidar": { 1438 | "version": "4.0.3", 1439 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", 1440 | "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", 1441 | "license": "MIT", 1442 | "dependencies": { 1443 | "readdirp": "^4.0.1" 1444 | }, 1445 | "engines": { 1446 | "node": ">= 14.16.0" 1447 | }, 1448 | "funding": { 1449 | "url": "https://paulmillr.com/funding/" 1450 | } 1451 | }, 1452 | "node_modules/citty": { 1453 | "version": "0.1.6", 1454 | "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.6.tgz", 1455 | "integrity": "sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==", 1456 | "license": "MIT", 1457 | "dependencies": { 1458 | "consola": "^3.2.3" 1459 | } 1460 | }, 1461 | "node_modules/combined-stream": { 1462 | "version": "1.0.8", 1463 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 1464 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 1465 | "license": "MIT", 1466 | "dependencies": { 1467 | "delayed-stream": "~1.0.0" 1468 | }, 1469 | "engines": { 1470 | "node": ">= 0.8" 1471 | } 1472 | }, 1473 | "node_modules/confbox": { 1474 | "version": "0.1.8", 1475 | "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", 1476 | "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", 1477 | "license": "MIT" 1478 | }, 1479 | "node_modules/consola": { 1480 | "version": "3.4.2", 1481 | "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.2.tgz", 1482 | "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", 1483 | "license": "MIT", 1484 | "engines": { 1485 | "node": "^14.18.0 || >=16.10.0" 1486 | } 1487 | }, 1488 | "node_modules/copy-anything": { 1489 | "version": "3.0.5", 1490 | "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz", 1491 | "integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==", 1492 | "license": "MIT", 1493 | "dependencies": { 1494 | "is-what": "^4.1.8" 1495 | }, 1496 | "engines": { 1497 | "node": ">=12.13" 1498 | }, 1499 | "funding": { 1500 | "url": "https://github.com/sponsors/mesqueeb" 1501 | } 1502 | }, 1503 | "node_modules/csstype": { 1504 | "version": "3.1.3", 1505 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", 1506 | "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", 1507 | "license": "MIT" 1508 | }, 1509 | "node_modules/de-indent": { 1510 | "version": "1.0.2", 1511 | "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", 1512 | "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", 1513 | "dev": true, 1514 | "license": "MIT" 1515 | }, 1516 | "node_modules/deep-pick-omit": { 1517 | "version": "1.2.1", 1518 | "resolved": "https://registry.npmjs.org/deep-pick-omit/-/deep-pick-omit-1.2.1.tgz", 1519 | "integrity": "sha512-2J6Kc/m3irCeqVG42T+SaUMesaK7oGWaedGnQQK/+O0gYc+2SP5bKh/KKTE7d7SJ+GCA9UUE1GRzh6oDe0EnGw==", 1520 | "license": "MIT" 1521 | }, 1522 | "node_modules/defu": { 1523 | "version": "6.1.4", 1524 | "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", 1525 | "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==", 1526 | "license": "MIT" 1527 | }, 1528 | "node_modules/delayed-stream": { 1529 | "version": "1.0.0", 1530 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 1531 | "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", 1532 | "license": "MIT", 1533 | "engines": { 1534 | "node": ">=0.4.0" 1535 | } 1536 | }, 1537 | "node_modules/destr": { 1538 | "version": "2.0.3", 1539 | "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.3.tgz", 1540 | "integrity": "sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==", 1541 | "license": "MIT" 1542 | }, 1543 | "node_modules/detect-libc": { 1544 | "version": "2.0.3", 1545 | "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", 1546 | "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", 1547 | "dev": true, 1548 | "license": "Apache-2.0", 1549 | "engines": { 1550 | "node": ">=8" 1551 | } 1552 | }, 1553 | "node_modules/dotenv": { 1554 | "version": "16.4.7", 1555 | "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", 1556 | "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", 1557 | "license": "BSD-2-Clause", 1558 | "engines": { 1559 | "node": ">=12" 1560 | }, 1561 | "funding": { 1562 | "url": "https://dotenvx.com" 1563 | } 1564 | }, 1565 | "node_modules/dunder-proto": { 1566 | "version": "1.0.1", 1567 | "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", 1568 | "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", 1569 | "license": "MIT", 1570 | "dependencies": { 1571 | "call-bind-apply-helpers": "^1.0.1", 1572 | "es-errors": "^1.3.0", 1573 | "gopd": "^1.2.0" 1574 | }, 1575 | "engines": { 1576 | "node": ">= 0.4" 1577 | } 1578 | }, 1579 | "node_modules/enhanced-resolve": { 1580 | "version": "5.18.1", 1581 | "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", 1582 | "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", 1583 | "dev": true, 1584 | "license": "MIT", 1585 | "dependencies": { 1586 | "graceful-fs": "^4.2.4", 1587 | "tapable": "^2.2.0" 1588 | }, 1589 | "engines": { 1590 | "node": ">=10.13.0" 1591 | } 1592 | }, 1593 | "node_modules/entities": { 1594 | "version": "4.5.0", 1595 | "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", 1596 | "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", 1597 | "license": "BSD-2-Clause", 1598 | "engines": { 1599 | "node": ">=0.12" 1600 | }, 1601 | "funding": { 1602 | "url": "https://github.com/fb55/entities?sponsor=1" 1603 | } 1604 | }, 1605 | "node_modules/errx": { 1606 | "version": "0.1.0", 1607 | "resolved": "https://registry.npmjs.org/errx/-/errx-0.1.0.tgz", 1608 | "integrity": "sha512-fZmsRiDNv07K6s2KkKFTiD2aIvECa7++PKyD5NC32tpRw46qZA3sOz+aM+/V9V0GDHxVTKLziveV4JhzBHDp9Q==", 1609 | "license": "MIT" 1610 | }, 1611 | "node_modules/es-define-property": { 1612 | "version": "1.0.1", 1613 | "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", 1614 | "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", 1615 | "license": "MIT", 1616 | "engines": { 1617 | "node": ">= 0.4" 1618 | } 1619 | }, 1620 | "node_modules/es-errors": { 1621 | "version": "1.3.0", 1622 | "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", 1623 | "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", 1624 | "license": "MIT", 1625 | "engines": { 1626 | "node": ">= 0.4" 1627 | } 1628 | }, 1629 | "node_modules/es-object-atoms": { 1630 | "version": "1.1.1", 1631 | "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", 1632 | "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", 1633 | "license": "MIT", 1634 | "dependencies": { 1635 | "es-errors": "^1.3.0" 1636 | }, 1637 | "engines": { 1638 | "node": ">= 0.4" 1639 | } 1640 | }, 1641 | "node_modules/es-set-tostringtag": { 1642 | "version": "2.1.0", 1643 | "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", 1644 | "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", 1645 | "license": "MIT", 1646 | "dependencies": { 1647 | "es-errors": "^1.3.0", 1648 | "get-intrinsic": "^1.2.6", 1649 | "has-tostringtag": "^1.0.2", 1650 | "hasown": "^2.0.2" 1651 | }, 1652 | "engines": { 1653 | "node": ">= 0.4" 1654 | } 1655 | }, 1656 | "node_modules/esbuild": { 1657 | "version": "0.25.1", 1658 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.1.tgz", 1659 | "integrity": "sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ==", 1660 | "dev": true, 1661 | "hasInstallScript": true, 1662 | "license": "MIT", 1663 | "bin": { 1664 | "esbuild": "bin/esbuild" 1665 | }, 1666 | "engines": { 1667 | "node": ">=18" 1668 | }, 1669 | "optionalDependencies": { 1670 | "@esbuild/aix-ppc64": "0.25.1", 1671 | "@esbuild/android-arm": "0.25.1", 1672 | "@esbuild/android-arm64": "0.25.1", 1673 | "@esbuild/android-x64": "0.25.1", 1674 | "@esbuild/darwin-arm64": "0.25.1", 1675 | "@esbuild/darwin-x64": "0.25.1", 1676 | "@esbuild/freebsd-arm64": "0.25.1", 1677 | "@esbuild/freebsd-x64": "0.25.1", 1678 | "@esbuild/linux-arm": "0.25.1", 1679 | "@esbuild/linux-arm64": "0.25.1", 1680 | "@esbuild/linux-ia32": "0.25.1", 1681 | "@esbuild/linux-loong64": "0.25.1", 1682 | "@esbuild/linux-mips64el": "0.25.1", 1683 | "@esbuild/linux-ppc64": "0.25.1", 1684 | "@esbuild/linux-riscv64": "0.25.1", 1685 | "@esbuild/linux-s390x": "0.25.1", 1686 | "@esbuild/linux-x64": "0.25.1", 1687 | "@esbuild/netbsd-arm64": "0.25.1", 1688 | "@esbuild/netbsd-x64": "0.25.1", 1689 | "@esbuild/openbsd-arm64": "0.25.1", 1690 | "@esbuild/openbsd-x64": "0.25.1", 1691 | "@esbuild/sunos-x64": "0.25.1", 1692 | "@esbuild/win32-arm64": "0.25.1", 1693 | "@esbuild/win32-ia32": "0.25.1", 1694 | "@esbuild/win32-x64": "0.25.1" 1695 | } 1696 | }, 1697 | "node_modules/escape-string-regexp": { 1698 | "version": "5.0.0", 1699 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", 1700 | "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", 1701 | "license": "MIT", 1702 | "engines": { 1703 | "node": ">=12" 1704 | }, 1705 | "funding": { 1706 | "url": "https://github.com/sponsors/sindresorhus" 1707 | } 1708 | }, 1709 | "node_modules/estree-walker": { 1710 | "version": "2.0.2", 1711 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", 1712 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", 1713 | "license": "MIT" 1714 | }, 1715 | "node_modules/exsolve": { 1716 | "version": "1.0.4", 1717 | "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.4.tgz", 1718 | "integrity": "sha512-xsZH6PXaER4XoV+NiT7JHp1bJodJVT+cxeSH1G0f0tlT0lJqYuHUP3bUx2HtfTDvOagMINYp8rsqusxud3RXhw==", 1719 | "license": "MIT" 1720 | }, 1721 | "node_modules/fast-glob": { 1722 | "version": "3.3.3", 1723 | "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", 1724 | "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", 1725 | "license": "MIT", 1726 | "dependencies": { 1727 | "@nodelib/fs.stat": "^2.0.2", 1728 | "@nodelib/fs.walk": "^1.2.3", 1729 | "glob-parent": "^5.1.2", 1730 | "merge2": "^1.3.0", 1731 | "micromatch": "^4.0.8" 1732 | }, 1733 | "engines": { 1734 | "node": ">=8.6.0" 1735 | } 1736 | }, 1737 | "node_modules/fastq": { 1738 | "version": "1.19.1", 1739 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", 1740 | "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", 1741 | "license": "ISC", 1742 | "dependencies": { 1743 | "reusify": "^1.0.4" 1744 | } 1745 | }, 1746 | "node_modules/fill-range": { 1747 | "version": "7.1.1", 1748 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", 1749 | "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", 1750 | "license": "MIT", 1751 | "dependencies": { 1752 | "to-regex-range": "^5.0.1" 1753 | }, 1754 | "engines": { 1755 | "node": ">=8" 1756 | } 1757 | }, 1758 | "node_modules/follow-redirects": { 1759 | "version": "1.15.9", 1760 | "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", 1761 | "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", 1762 | "funding": [ 1763 | { 1764 | "type": "individual", 1765 | "url": "https://github.com/sponsors/RubenVerborgh" 1766 | } 1767 | ], 1768 | "license": "MIT", 1769 | "engines": { 1770 | "node": ">=4.0" 1771 | }, 1772 | "peerDependenciesMeta": { 1773 | "debug": { 1774 | "optional": true 1775 | } 1776 | } 1777 | }, 1778 | "node_modules/form-data": { 1779 | "version": "4.0.2", 1780 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.2.tgz", 1781 | "integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==", 1782 | "license": "MIT", 1783 | "dependencies": { 1784 | "asynckit": "^0.4.0", 1785 | "combined-stream": "^1.0.8", 1786 | "es-set-tostringtag": "^2.1.0", 1787 | "mime-types": "^2.1.12" 1788 | }, 1789 | "engines": { 1790 | "node": ">= 6" 1791 | } 1792 | }, 1793 | "node_modules/fsevents": { 1794 | "version": "2.3.3", 1795 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", 1796 | "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", 1797 | "dev": true, 1798 | "hasInstallScript": true, 1799 | "license": "MIT", 1800 | "optional": true, 1801 | "os": [ 1802 | "darwin" 1803 | ], 1804 | "engines": { 1805 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 1806 | } 1807 | }, 1808 | "node_modules/function-bind": { 1809 | "version": "1.1.2", 1810 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", 1811 | "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", 1812 | "license": "MIT", 1813 | "funding": { 1814 | "url": "https://github.com/sponsors/ljharb" 1815 | } 1816 | }, 1817 | "node_modules/get-intrinsic": { 1818 | "version": "1.3.0", 1819 | "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", 1820 | "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", 1821 | "license": "MIT", 1822 | "dependencies": { 1823 | "call-bind-apply-helpers": "^1.0.2", 1824 | "es-define-property": "^1.0.1", 1825 | "es-errors": "^1.3.0", 1826 | "es-object-atoms": "^1.1.1", 1827 | "function-bind": "^1.1.2", 1828 | "get-proto": "^1.0.1", 1829 | "gopd": "^1.2.0", 1830 | "has-symbols": "^1.1.0", 1831 | "hasown": "^2.0.2", 1832 | "math-intrinsics": "^1.1.0" 1833 | }, 1834 | "engines": { 1835 | "node": ">= 0.4" 1836 | }, 1837 | "funding": { 1838 | "url": "https://github.com/sponsors/ljharb" 1839 | } 1840 | }, 1841 | "node_modules/get-proto": { 1842 | "version": "1.0.1", 1843 | "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", 1844 | "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", 1845 | "license": "MIT", 1846 | "dependencies": { 1847 | "dunder-proto": "^1.0.1", 1848 | "es-object-atoms": "^1.0.0" 1849 | }, 1850 | "engines": { 1851 | "node": ">= 0.4" 1852 | } 1853 | }, 1854 | "node_modules/giget": { 1855 | "version": "2.0.0", 1856 | "resolved": "https://registry.npmjs.org/giget/-/giget-2.0.0.tgz", 1857 | "integrity": "sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==", 1858 | "license": "MIT", 1859 | "dependencies": { 1860 | "citty": "^0.1.6", 1861 | "consola": "^3.4.0", 1862 | "defu": "^6.1.4", 1863 | "node-fetch-native": "^1.6.6", 1864 | "nypm": "^0.6.0", 1865 | "pathe": "^2.0.3" 1866 | }, 1867 | "bin": { 1868 | "giget": "dist/cli.mjs" 1869 | } 1870 | }, 1871 | "node_modules/glob-parent": { 1872 | "version": "5.1.2", 1873 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 1874 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 1875 | "license": "ISC", 1876 | "dependencies": { 1877 | "is-glob": "^4.0.1" 1878 | }, 1879 | "engines": { 1880 | "node": ">= 6" 1881 | } 1882 | }, 1883 | "node_modules/globby": { 1884 | "version": "14.1.0", 1885 | "resolved": "https://registry.npmjs.org/globby/-/globby-14.1.0.tgz", 1886 | "integrity": "sha512-0Ia46fDOaT7k4og1PDW4YbodWWr3scS2vAr2lTbsplOt2WkKp0vQbkI9wKis/T5LV/dqPjO3bpS/z6GTJB82LA==", 1887 | "license": "MIT", 1888 | "dependencies": { 1889 | "@sindresorhus/merge-streams": "^2.1.0", 1890 | "fast-glob": "^3.3.3", 1891 | "ignore": "^7.0.3", 1892 | "path-type": "^6.0.0", 1893 | "slash": "^5.1.0", 1894 | "unicorn-magic": "^0.3.0" 1895 | }, 1896 | "engines": { 1897 | "node": ">=18" 1898 | }, 1899 | "funding": { 1900 | "url": "https://github.com/sponsors/sindresorhus" 1901 | } 1902 | }, 1903 | "node_modules/gopd": { 1904 | "version": "1.2.0", 1905 | "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", 1906 | "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", 1907 | "license": "MIT", 1908 | "engines": { 1909 | "node": ">= 0.4" 1910 | }, 1911 | "funding": { 1912 | "url": "https://github.com/sponsors/ljharb" 1913 | } 1914 | }, 1915 | "node_modules/graceful-fs": { 1916 | "version": "4.2.11", 1917 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", 1918 | "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", 1919 | "dev": true, 1920 | "license": "ISC" 1921 | }, 1922 | "node_modules/has-symbols": { 1923 | "version": "1.1.0", 1924 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", 1925 | "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", 1926 | "license": "MIT", 1927 | "engines": { 1928 | "node": ">= 0.4" 1929 | }, 1930 | "funding": { 1931 | "url": "https://github.com/sponsors/ljharb" 1932 | } 1933 | }, 1934 | "node_modules/has-tostringtag": { 1935 | "version": "1.0.2", 1936 | "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", 1937 | "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", 1938 | "license": "MIT", 1939 | "dependencies": { 1940 | "has-symbols": "^1.0.3" 1941 | }, 1942 | "engines": { 1943 | "node": ">= 0.4" 1944 | }, 1945 | "funding": { 1946 | "url": "https://github.com/sponsors/ljharb" 1947 | } 1948 | }, 1949 | "node_modules/hasown": { 1950 | "version": "2.0.2", 1951 | "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", 1952 | "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", 1953 | "license": "MIT", 1954 | "dependencies": { 1955 | "function-bind": "^1.1.2" 1956 | }, 1957 | "engines": { 1958 | "node": ">= 0.4" 1959 | } 1960 | }, 1961 | "node_modules/he": { 1962 | "version": "1.2.0", 1963 | "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", 1964 | "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", 1965 | "dev": true, 1966 | "license": "MIT", 1967 | "bin": { 1968 | "he": "bin/he" 1969 | } 1970 | }, 1971 | "node_modules/hookable": { 1972 | "version": "5.5.3", 1973 | "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", 1974 | "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", 1975 | "license": "MIT" 1976 | }, 1977 | "node_modules/ignore": { 1978 | "version": "7.0.3", 1979 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz", 1980 | "integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==", 1981 | "license": "MIT", 1982 | "engines": { 1983 | "node": ">= 4" 1984 | } 1985 | }, 1986 | "node_modules/is-extglob": { 1987 | "version": "2.1.1", 1988 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1989 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1990 | "license": "MIT", 1991 | "engines": { 1992 | "node": ">=0.10.0" 1993 | } 1994 | }, 1995 | "node_modules/is-glob": { 1996 | "version": "4.0.3", 1997 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 1998 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1999 | "license": "MIT", 2000 | "dependencies": { 2001 | "is-extglob": "^2.1.1" 2002 | }, 2003 | "engines": { 2004 | "node": ">=0.10.0" 2005 | } 2006 | }, 2007 | "node_modules/is-number": { 2008 | "version": "7.0.0", 2009 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 2010 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 2011 | "license": "MIT", 2012 | "engines": { 2013 | "node": ">=0.12.0" 2014 | } 2015 | }, 2016 | "node_modules/is-what": { 2017 | "version": "4.1.16", 2018 | "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz", 2019 | "integrity": "sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==", 2020 | "license": "MIT", 2021 | "engines": { 2022 | "node": ">=12.13" 2023 | }, 2024 | "funding": { 2025 | "url": "https://github.com/sponsors/mesqueeb" 2026 | } 2027 | }, 2028 | "node_modules/jiti": { 2029 | "version": "2.4.2", 2030 | "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", 2031 | "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", 2032 | "license": "MIT", 2033 | "bin": { 2034 | "jiti": "lib/jiti-cli.mjs" 2035 | } 2036 | }, 2037 | "node_modules/js-tokens": { 2038 | "version": "9.0.1", 2039 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", 2040 | "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", 2041 | "license": "MIT" 2042 | }, 2043 | "node_modules/klona": { 2044 | "version": "2.0.6", 2045 | "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", 2046 | "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", 2047 | "license": "MIT", 2048 | "engines": { 2049 | "node": ">= 8" 2050 | } 2051 | }, 2052 | "node_modules/knitwork": { 2053 | "version": "1.2.0", 2054 | "resolved": "https://registry.npmjs.org/knitwork/-/knitwork-1.2.0.tgz", 2055 | "integrity": "sha512-xYSH7AvuQ6nXkq42x0v5S8/Iry+cfulBz/DJQzhIyESdLD7425jXsPy4vn5cCXU+HhRN2kVw51Vd1K6/By4BQg==", 2056 | "license": "MIT" 2057 | }, 2058 | "node_modules/lightningcss": { 2059 | "version": "1.29.2", 2060 | "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.29.2.tgz", 2061 | "integrity": "sha512-6b6gd/RUXKaw5keVdSEtqFVdzWnU5jMxTUjA2bVcMNPLwSQ08Sv/UodBVtETLCn7k4S1Ibxwh7k68IwLZPgKaA==", 2062 | "dev": true, 2063 | "license": "MPL-2.0", 2064 | "dependencies": { 2065 | "detect-libc": "^2.0.3" 2066 | }, 2067 | "engines": { 2068 | "node": ">= 12.0.0" 2069 | }, 2070 | "funding": { 2071 | "type": "opencollective", 2072 | "url": "https://opencollective.com/parcel" 2073 | }, 2074 | "optionalDependencies": { 2075 | "lightningcss-darwin-arm64": "1.29.2", 2076 | "lightningcss-darwin-x64": "1.29.2", 2077 | "lightningcss-freebsd-x64": "1.29.2", 2078 | "lightningcss-linux-arm-gnueabihf": "1.29.2", 2079 | "lightningcss-linux-arm64-gnu": "1.29.2", 2080 | "lightningcss-linux-arm64-musl": "1.29.2", 2081 | "lightningcss-linux-x64-gnu": "1.29.2", 2082 | "lightningcss-linux-x64-musl": "1.29.2", 2083 | "lightningcss-win32-arm64-msvc": "1.29.2", 2084 | "lightningcss-win32-x64-msvc": "1.29.2" 2085 | } 2086 | }, 2087 | "node_modules/lightningcss-darwin-arm64": { 2088 | "version": "1.29.2", 2089 | "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.29.2.tgz", 2090 | "integrity": "sha512-cK/eMabSViKn/PG8U/a7aCorpeKLMlK0bQeNHmdb7qUnBkNPnL+oV5DjJUo0kqWsJUapZsM4jCfYItbqBDvlcA==", 2091 | "cpu": [ 2092 | "arm64" 2093 | ], 2094 | "dev": true, 2095 | "license": "MPL-2.0", 2096 | "optional": true, 2097 | "os": [ 2098 | "darwin" 2099 | ], 2100 | "engines": { 2101 | "node": ">= 12.0.0" 2102 | }, 2103 | "funding": { 2104 | "type": "opencollective", 2105 | "url": "https://opencollective.com/parcel" 2106 | } 2107 | }, 2108 | "node_modules/lightningcss-darwin-x64": { 2109 | "version": "1.29.2", 2110 | "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.29.2.tgz", 2111 | "integrity": "sha512-j5qYxamyQw4kDXX5hnnCKMf3mLlHvG44f24Qyi2965/Ycz829MYqjrVg2H8BidybHBp9kom4D7DR5VqCKDXS0w==", 2112 | "cpu": [ 2113 | "x64" 2114 | ], 2115 | "dev": true, 2116 | "license": "MPL-2.0", 2117 | "optional": true, 2118 | "os": [ 2119 | "darwin" 2120 | ], 2121 | "engines": { 2122 | "node": ">= 12.0.0" 2123 | }, 2124 | "funding": { 2125 | "type": "opencollective", 2126 | "url": "https://opencollective.com/parcel" 2127 | } 2128 | }, 2129 | "node_modules/lightningcss-freebsd-x64": { 2130 | "version": "1.29.2", 2131 | "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.29.2.tgz", 2132 | "integrity": "sha512-wDk7M2tM78Ii8ek9YjnY8MjV5f5JN2qNVO+/0BAGZRvXKtQrBC4/cn4ssQIpKIPP44YXw6gFdpUF+Ps+RGsCwg==", 2133 | "cpu": [ 2134 | "x64" 2135 | ], 2136 | "dev": true, 2137 | "license": "MPL-2.0", 2138 | "optional": true, 2139 | "os": [ 2140 | "freebsd" 2141 | ], 2142 | "engines": { 2143 | "node": ">= 12.0.0" 2144 | }, 2145 | "funding": { 2146 | "type": "opencollective", 2147 | "url": "https://opencollective.com/parcel" 2148 | } 2149 | }, 2150 | "node_modules/lightningcss-linux-arm-gnueabihf": { 2151 | "version": "1.29.2", 2152 | "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.29.2.tgz", 2153 | "integrity": "sha512-IRUrOrAF2Z+KExdExe3Rz7NSTuuJ2HvCGlMKoquK5pjvo2JY4Rybr+NrKnq0U0hZnx5AnGsuFHjGnNT14w26sg==", 2154 | "cpu": [ 2155 | "arm" 2156 | ], 2157 | "dev": true, 2158 | "license": "MPL-2.0", 2159 | "optional": true, 2160 | "os": [ 2161 | "linux" 2162 | ], 2163 | "engines": { 2164 | "node": ">= 12.0.0" 2165 | }, 2166 | "funding": { 2167 | "type": "opencollective", 2168 | "url": "https://opencollective.com/parcel" 2169 | } 2170 | }, 2171 | "node_modules/lightningcss-linux-arm64-gnu": { 2172 | "version": "1.29.2", 2173 | "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.29.2.tgz", 2174 | "integrity": "sha512-KKCpOlmhdjvUTX/mBuaKemp0oeDIBBLFiU5Fnqxh1/DZ4JPZi4evEH7TKoSBFOSOV3J7iEmmBaw/8dpiUvRKlQ==", 2175 | "cpu": [ 2176 | "arm64" 2177 | ], 2178 | "dev": true, 2179 | "license": "MPL-2.0", 2180 | "optional": true, 2181 | "os": [ 2182 | "linux" 2183 | ], 2184 | "engines": { 2185 | "node": ">= 12.0.0" 2186 | }, 2187 | "funding": { 2188 | "type": "opencollective", 2189 | "url": "https://opencollective.com/parcel" 2190 | } 2191 | }, 2192 | "node_modules/lightningcss-linux-arm64-musl": { 2193 | "version": "1.29.2", 2194 | "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.29.2.tgz", 2195 | "integrity": "sha512-Q64eM1bPlOOUgxFmoPUefqzY1yV3ctFPE6d/Vt7WzLW4rKTv7MyYNky+FWxRpLkNASTnKQUaiMJ87zNODIrrKQ==", 2196 | "cpu": [ 2197 | "arm64" 2198 | ], 2199 | "dev": true, 2200 | "license": "MPL-2.0", 2201 | "optional": true, 2202 | "os": [ 2203 | "linux" 2204 | ], 2205 | "engines": { 2206 | "node": ">= 12.0.0" 2207 | }, 2208 | "funding": { 2209 | "type": "opencollective", 2210 | "url": "https://opencollective.com/parcel" 2211 | } 2212 | }, 2213 | "node_modules/lightningcss-linux-x64-gnu": { 2214 | "version": "1.29.2", 2215 | "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.29.2.tgz", 2216 | "integrity": "sha512-0v6idDCPG6epLXtBH/RPkHvYx74CVziHo6TMYga8O2EiQApnUPZsbR9nFNrg2cgBzk1AYqEd95TlrsL7nYABQg==", 2217 | "cpu": [ 2218 | "x64" 2219 | ], 2220 | "dev": true, 2221 | "license": "MPL-2.0", 2222 | "optional": true, 2223 | "os": [ 2224 | "linux" 2225 | ], 2226 | "engines": { 2227 | "node": ">= 12.0.0" 2228 | }, 2229 | "funding": { 2230 | "type": "opencollective", 2231 | "url": "https://opencollective.com/parcel" 2232 | } 2233 | }, 2234 | "node_modules/lightningcss-linux-x64-musl": { 2235 | "version": "1.29.2", 2236 | "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.29.2.tgz", 2237 | "integrity": "sha512-rMpz2yawkgGT8RULc5S4WiZopVMOFWjiItBT7aSfDX4NQav6M44rhn5hjtkKzB+wMTRlLLqxkeYEtQ3dd9696w==", 2238 | "cpu": [ 2239 | "x64" 2240 | ], 2241 | "dev": true, 2242 | "license": "MPL-2.0", 2243 | "optional": true, 2244 | "os": [ 2245 | "linux" 2246 | ], 2247 | "engines": { 2248 | "node": ">= 12.0.0" 2249 | }, 2250 | "funding": { 2251 | "type": "opencollective", 2252 | "url": "https://opencollective.com/parcel" 2253 | } 2254 | }, 2255 | "node_modules/lightningcss-win32-arm64-msvc": { 2256 | "version": "1.29.2", 2257 | "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.29.2.tgz", 2258 | "integrity": "sha512-nL7zRW6evGQqYVu/bKGK+zShyz8OVzsCotFgc7judbt6wnB2KbiKKJwBE4SGoDBQ1O94RjW4asrCjQL4i8Fhbw==", 2259 | "cpu": [ 2260 | "arm64" 2261 | ], 2262 | "dev": true, 2263 | "license": "MPL-2.0", 2264 | "optional": true, 2265 | "os": [ 2266 | "win32" 2267 | ], 2268 | "engines": { 2269 | "node": ">= 12.0.0" 2270 | }, 2271 | "funding": { 2272 | "type": "opencollective", 2273 | "url": "https://opencollective.com/parcel" 2274 | } 2275 | }, 2276 | "node_modules/lightningcss-win32-x64-msvc": { 2277 | "version": "1.29.2", 2278 | "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.29.2.tgz", 2279 | "integrity": "sha512-EdIUW3B2vLuHmv7urfzMI/h2fmlnOQBk1xlsDxkN1tCWKjNFjfLhGxYk8C8mzpSfr+A6jFFIi8fU6LbQGsRWjA==", 2280 | "cpu": [ 2281 | "x64" 2282 | ], 2283 | "dev": true, 2284 | "license": "MPL-2.0", 2285 | "optional": true, 2286 | "os": [ 2287 | "win32" 2288 | ], 2289 | "engines": { 2290 | "node": ">= 12.0.0" 2291 | }, 2292 | "funding": { 2293 | "type": "opencollective", 2294 | "url": "https://opencollective.com/parcel" 2295 | } 2296 | }, 2297 | "node_modules/local-pkg": { 2298 | "version": "1.1.1", 2299 | "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.1.tgz", 2300 | "integrity": "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg==", 2301 | "license": "MIT", 2302 | "dependencies": { 2303 | "mlly": "^1.7.4", 2304 | "pkg-types": "^2.0.1", 2305 | "quansync": "^0.2.8" 2306 | }, 2307 | "engines": { 2308 | "node": ">=14" 2309 | }, 2310 | "funding": { 2311 | "url": "https://github.com/sponsors/antfu" 2312 | } 2313 | }, 2314 | "node_modules/magic-string": { 2315 | "version": "0.30.17", 2316 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", 2317 | "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", 2318 | "license": "MIT", 2319 | "dependencies": { 2320 | "@jridgewell/sourcemap-codec": "^1.5.0" 2321 | } 2322 | }, 2323 | "node_modules/math-intrinsics": { 2324 | "version": "1.1.0", 2325 | "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", 2326 | "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", 2327 | "license": "MIT", 2328 | "engines": { 2329 | "node": ">= 0.4" 2330 | } 2331 | }, 2332 | "node_modules/merge2": { 2333 | "version": "1.4.1", 2334 | "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 2335 | "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 2336 | "license": "MIT", 2337 | "engines": { 2338 | "node": ">= 8" 2339 | } 2340 | }, 2341 | "node_modules/micromatch": { 2342 | "version": "4.0.8", 2343 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", 2344 | "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", 2345 | "license": "MIT", 2346 | "dependencies": { 2347 | "braces": "^3.0.3", 2348 | "picomatch": "^2.3.1" 2349 | }, 2350 | "engines": { 2351 | "node": ">=8.6" 2352 | } 2353 | }, 2354 | "node_modules/mime-db": { 2355 | "version": "1.52.0", 2356 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", 2357 | "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", 2358 | "license": "MIT", 2359 | "engines": { 2360 | "node": ">= 0.6" 2361 | } 2362 | }, 2363 | "node_modules/mime-types": { 2364 | "version": "2.1.35", 2365 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", 2366 | "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", 2367 | "license": "MIT", 2368 | "dependencies": { 2369 | "mime-db": "1.52.0" 2370 | }, 2371 | "engines": { 2372 | "node": ">= 0.6" 2373 | } 2374 | }, 2375 | "node_modules/minimatch": { 2376 | "version": "9.0.5", 2377 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 2378 | "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 2379 | "dev": true, 2380 | "license": "ISC", 2381 | "dependencies": { 2382 | "brace-expansion": "^2.0.1" 2383 | }, 2384 | "engines": { 2385 | "node": ">=16 || 14 >=14.17" 2386 | }, 2387 | "funding": { 2388 | "url": "https://github.com/sponsors/isaacs" 2389 | } 2390 | }, 2391 | "node_modules/mitt": { 2392 | "version": "3.0.1", 2393 | "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", 2394 | "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", 2395 | "license": "MIT" 2396 | }, 2397 | "node_modules/mlly": { 2398 | "version": "1.7.4", 2399 | "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", 2400 | "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", 2401 | "license": "MIT", 2402 | "dependencies": { 2403 | "acorn": "^8.14.0", 2404 | "pathe": "^2.0.1", 2405 | "pkg-types": "^1.3.0", 2406 | "ufo": "^1.5.4" 2407 | } 2408 | }, 2409 | "node_modules/mlly/node_modules/pkg-types": { 2410 | "version": "1.3.1", 2411 | "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", 2412 | "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", 2413 | "license": "MIT", 2414 | "dependencies": { 2415 | "confbox": "^0.1.8", 2416 | "mlly": "^1.7.4", 2417 | "pathe": "^2.0.1" 2418 | } 2419 | }, 2420 | "node_modules/muggle-string": { 2421 | "version": "0.4.1", 2422 | "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", 2423 | "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", 2424 | "dev": true, 2425 | "license": "MIT" 2426 | }, 2427 | "node_modules/nanoid": { 2428 | "version": "3.3.11", 2429 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", 2430 | "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", 2431 | "funding": [ 2432 | { 2433 | "type": "github", 2434 | "url": "https://github.com/sponsors/ai" 2435 | } 2436 | ], 2437 | "license": "MIT", 2438 | "bin": { 2439 | "nanoid": "bin/nanoid.cjs" 2440 | }, 2441 | "engines": { 2442 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 2443 | } 2444 | }, 2445 | "node_modules/node-fetch-native": { 2446 | "version": "1.6.6", 2447 | "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.6.tgz", 2448 | "integrity": "sha512-8Mc2HhqPdlIfedsuZoc3yioPuzp6b+L5jRCRY1QzuWZh2EGJVQrGppC6V6cF0bLdbW0+O2YpqCA25aF/1lvipQ==", 2449 | "license": "MIT" 2450 | }, 2451 | "node_modules/nypm": { 2452 | "version": "0.6.0", 2453 | "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.6.0.tgz", 2454 | "integrity": "sha512-mn8wBFV9G9+UFHIrq+pZ2r2zL4aPau/by3kJb3cM7+5tQHMt6HGQB8FDIeKFYp8o0D2pnH6nVsO88N4AmUxIWg==", 2455 | "license": "MIT", 2456 | "dependencies": { 2457 | "citty": "^0.1.6", 2458 | "consola": "^3.4.0", 2459 | "pathe": "^2.0.3", 2460 | "pkg-types": "^2.0.0", 2461 | "tinyexec": "^0.3.2" 2462 | }, 2463 | "bin": { 2464 | "nypm": "dist/cli.mjs" 2465 | }, 2466 | "engines": { 2467 | "node": "^14.16.0 || >=16.10.0" 2468 | } 2469 | }, 2470 | "node_modules/ohash": { 2471 | "version": "2.0.11", 2472 | "resolved": "https://registry.npmjs.org/ohash/-/ohash-2.0.11.tgz", 2473 | "integrity": "sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==", 2474 | "license": "MIT" 2475 | }, 2476 | "node_modules/path-browserify": { 2477 | "version": "1.0.1", 2478 | "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", 2479 | "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", 2480 | "dev": true, 2481 | "license": "MIT" 2482 | }, 2483 | "node_modules/path-type": { 2484 | "version": "6.0.0", 2485 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-6.0.0.tgz", 2486 | "integrity": "sha512-Vj7sf++t5pBD637NSfkxpHSMfWaeig5+DKWLhcqIYx6mWQz5hdJTGDVMQiJcw1ZYkhs7AazKDGpRVji1LJCZUQ==", 2487 | "license": "MIT", 2488 | "engines": { 2489 | "node": ">=18" 2490 | }, 2491 | "funding": { 2492 | "url": "https://github.com/sponsors/sindresorhus" 2493 | } 2494 | }, 2495 | "node_modules/pathe": { 2496 | "version": "2.0.3", 2497 | "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", 2498 | "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", 2499 | "license": "MIT" 2500 | }, 2501 | "node_modules/perfect-debounce": { 2502 | "version": "1.0.0", 2503 | "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", 2504 | "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", 2505 | "license": "MIT" 2506 | }, 2507 | "node_modules/picocolors": { 2508 | "version": "1.1.1", 2509 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", 2510 | "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", 2511 | "license": "ISC" 2512 | }, 2513 | "node_modules/picomatch": { 2514 | "version": "2.3.1", 2515 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 2516 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 2517 | "license": "MIT", 2518 | "engines": { 2519 | "node": ">=8.6" 2520 | }, 2521 | "funding": { 2522 | "url": "https://github.com/sponsors/jonschlinkert" 2523 | } 2524 | }, 2525 | "node_modules/pinia": { 2526 | "version": "3.0.1", 2527 | "resolved": "https://registry.npmjs.org/pinia/-/pinia-3.0.1.tgz", 2528 | "integrity": "sha512-WXglsDzztOTH6IfcJ99ltYZin2mY8XZCXujkYWVIJlBjqsP6ST7zw+Aarh63E1cDVYeyUcPCxPHzJpEOmzB6Wg==", 2529 | "license": "MIT", 2530 | "dependencies": { 2531 | "@vue/devtools-api": "^7.7.2" 2532 | }, 2533 | "funding": { 2534 | "url": "https://github.com/sponsors/posva" 2535 | }, 2536 | "peerDependencies": { 2537 | "typescript": ">=4.4.4", 2538 | "vue": "^2.7.0 || ^3.5.11" 2539 | }, 2540 | "peerDependenciesMeta": { 2541 | "typescript": { 2542 | "optional": true 2543 | } 2544 | } 2545 | }, 2546 | "node_modules/pinia-plugin-persistedstate": { 2547 | "version": "4.2.0", 2548 | "resolved": "https://registry.npmjs.org/pinia-plugin-persistedstate/-/pinia-plugin-persistedstate-4.2.0.tgz", 2549 | "integrity": "sha512-3buhA7ac+ssbOIx3VRCC8oHkoFwhDM9oHRCjo7nj+O8WUqnW+jRqh7eYT5eS/DNa3H28zp3dYf/nd/Vc8zj8eQ==", 2550 | "license": "MIT", 2551 | "dependencies": { 2552 | "@nuxt/kit": "^3.14.1592", 2553 | "deep-pick-omit": "^1.2.1", 2554 | "defu": "^6.1.4", 2555 | "destr": "^2.0.3" 2556 | }, 2557 | "peerDependencies": { 2558 | "@pinia/nuxt": ">=0.9.0", 2559 | "pinia": ">=2.3.0" 2560 | }, 2561 | "peerDependenciesMeta": { 2562 | "@pinia/nuxt": { 2563 | "optional": true 2564 | }, 2565 | "pinia": { 2566 | "optional": true 2567 | } 2568 | } 2569 | }, 2570 | "node_modules/pkg-types": { 2571 | "version": "2.1.0", 2572 | "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz", 2573 | "integrity": "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==", 2574 | "license": "MIT", 2575 | "dependencies": { 2576 | "confbox": "^0.2.1", 2577 | "exsolve": "^1.0.1", 2578 | "pathe": "^2.0.3" 2579 | } 2580 | }, 2581 | "node_modules/pkg-types/node_modules/confbox": { 2582 | "version": "0.2.1", 2583 | "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.1.tgz", 2584 | "integrity": "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg==", 2585 | "license": "MIT" 2586 | }, 2587 | "node_modules/postcss": { 2588 | "version": "8.5.3", 2589 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", 2590 | "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", 2591 | "funding": [ 2592 | { 2593 | "type": "opencollective", 2594 | "url": "https://opencollective.com/postcss/" 2595 | }, 2596 | { 2597 | "type": "tidelift", 2598 | "url": "https://tidelift.com/funding/github/npm/postcss" 2599 | }, 2600 | { 2601 | "type": "github", 2602 | "url": "https://github.com/sponsors/ai" 2603 | } 2604 | ], 2605 | "license": "MIT", 2606 | "dependencies": { 2607 | "nanoid": "^3.3.8", 2608 | "picocolors": "^1.1.1", 2609 | "source-map-js": "^1.2.1" 2610 | }, 2611 | "engines": { 2612 | "node": "^10 || ^12 || >=14" 2613 | } 2614 | }, 2615 | "node_modules/proxy-from-env": { 2616 | "version": "1.1.0", 2617 | "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", 2618 | "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", 2619 | "license": "MIT" 2620 | }, 2621 | "node_modules/quansync": { 2622 | "version": "0.2.10", 2623 | "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.10.tgz", 2624 | "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==", 2625 | "funding": [ 2626 | { 2627 | "type": "individual", 2628 | "url": "https://github.com/sponsors/antfu" 2629 | }, 2630 | { 2631 | "type": "individual", 2632 | "url": "https://github.com/sponsors/sxzz" 2633 | } 2634 | ], 2635 | "license": "MIT" 2636 | }, 2637 | "node_modules/queue-microtask": { 2638 | "version": "1.2.3", 2639 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 2640 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 2641 | "funding": [ 2642 | { 2643 | "type": "github", 2644 | "url": "https://github.com/sponsors/feross" 2645 | }, 2646 | { 2647 | "type": "patreon", 2648 | "url": "https://www.patreon.com/feross" 2649 | }, 2650 | { 2651 | "type": "consulting", 2652 | "url": "https://feross.org/support" 2653 | } 2654 | ], 2655 | "license": "MIT" 2656 | }, 2657 | "node_modules/rc9": { 2658 | "version": "2.1.2", 2659 | "resolved": "https://registry.npmjs.org/rc9/-/rc9-2.1.2.tgz", 2660 | "integrity": "sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==", 2661 | "license": "MIT", 2662 | "dependencies": { 2663 | "defu": "^6.1.4", 2664 | "destr": "^2.0.3" 2665 | } 2666 | }, 2667 | "node_modules/readdirp": { 2668 | "version": "4.1.2", 2669 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", 2670 | "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", 2671 | "license": "MIT", 2672 | "engines": { 2673 | "node": ">= 14.18.0" 2674 | }, 2675 | "funding": { 2676 | "type": "individual", 2677 | "url": "https://paulmillr.com/funding/" 2678 | } 2679 | }, 2680 | "node_modules/reusify": { 2681 | "version": "1.1.0", 2682 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", 2683 | "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", 2684 | "license": "MIT", 2685 | "engines": { 2686 | "iojs": ">=1.0.0", 2687 | "node": ">=0.10.0" 2688 | } 2689 | }, 2690 | "node_modules/rfdc": { 2691 | "version": "1.4.1", 2692 | "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", 2693 | "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", 2694 | "license": "MIT" 2695 | }, 2696 | "node_modules/rollup": { 2697 | "version": "4.37.0", 2698 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.37.0.tgz", 2699 | "integrity": "sha512-iAtQy/L4QFU+rTJ1YUjXqJOJzuwEghqWzCEYD2FEghT7Gsy1VdABntrO4CLopA5IkflTyqNiLNwPcOJ3S7UKLg==", 2700 | "dev": true, 2701 | "license": "MIT", 2702 | "dependencies": { 2703 | "@types/estree": "1.0.6" 2704 | }, 2705 | "bin": { 2706 | "rollup": "dist/bin/rollup" 2707 | }, 2708 | "engines": { 2709 | "node": ">=18.0.0", 2710 | "npm": ">=8.0.0" 2711 | }, 2712 | "optionalDependencies": { 2713 | "@rollup/rollup-android-arm-eabi": "4.37.0", 2714 | "@rollup/rollup-android-arm64": "4.37.0", 2715 | "@rollup/rollup-darwin-arm64": "4.37.0", 2716 | "@rollup/rollup-darwin-x64": "4.37.0", 2717 | "@rollup/rollup-freebsd-arm64": "4.37.0", 2718 | "@rollup/rollup-freebsd-x64": "4.37.0", 2719 | "@rollup/rollup-linux-arm-gnueabihf": "4.37.0", 2720 | "@rollup/rollup-linux-arm-musleabihf": "4.37.0", 2721 | "@rollup/rollup-linux-arm64-gnu": "4.37.0", 2722 | "@rollup/rollup-linux-arm64-musl": "4.37.0", 2723 | "@rollup/rollup-linux-loongarch64-gnu": "4.37.0", 2724 | "@rollup/rollup-linux-powerpc64le-gnu": "4.37.0", 2725 | "@rollup/rollup-linux-riscv64-gnu": "4.37.0", 2726 | "@rollup/rollup-linux-riscv64-musl": "4.37.0", 2727 | "@rollup/rollup-linux-s390x-gnu": "4.37.0", 2728 | "@rollup/rollup-linux-x64-gnu": "4.37.0", 2729 | "@rollup/rollup-linux-x64-musl": "4.37.0", 2730 | "@rollup/rollup-win32-arm64-msvc": "4.37.0", 2731 | "@rollup/rollup-win32-ia32-msvc": "4.37.0", 2732 | "@rollup/rollup-win32-x64-msvc": "4.37.0", 2733 | "fsevents": "~2.3.2" 2734 | } 2735 | }, 2736 | "node_modules/run-parallel": { 2737 | "version": "1.2.0", 2738 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 2739 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 2740 | "funding": [ 2741 | { 2742 | "type": "github", 2743 | "url": "https://github.com/sponsors/feross" 2744 | }, 2745 | { 2746 | "type": "patreon", 2747 | "url": "https://www.patreon.com/feross" 2748 | }, 2749 | { 2750 | "type": "consulting", 2751 | "url": "https://feross.org/support" 2752 | } 2753 | ], 2754 | "license": "MIT", 2755 | "dependencies": { 2756 | "queue-microtask": "^1.2.2" 2757 | } 2758 | }, 2759 | "node_modules/scule": { 2760 | "version": "1.3.0", 2761 | "resolved": "https://registry.npmjs.org/scule/-/scule-1.3.0.tgz", 2762 | "integrity": "sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==", 2763 | "license": "MIT" 2764 | }, 2765 | "node_modules/semver": { 2766 | "version": "7.7.1", 2767 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", 2768 | "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", 2769 | "license": "ISC", 2770 | "bin": { 2771 | "semver": "bin/semver.js" 2772 | }, 2773 | "engines": { 2774 | "node": ">=10" 2775 | } 2776 | }, 2777 | "node_modules/slash": { 2778 | "version": "5.1.0", 2779 | "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", 2780 | "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", 2781 | "license": "MIT", 2782 | "engines": { 2783 | "node": ">=14.16" 2784 | }, 2785 | "funding": { 2786 | "url": "https://github.com/sponsors/sindresorhus" 2787 | } 2788 | }, 2789 | "node_modules/source-map-js": { 2790 | "version": "1.2.1", 2791 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", 2792 | "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", 2793 | "license": "BSD-3-Clause", 2794 | "engines": { 2795 | "node": ">=0.10.0" 2796 | } 2797 | }, 2798 | "node_modules/speakingurl": { 2799 | "version": "14.0.1", 2800 | "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", 2801 | "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", 2802 | "license": "BSD-3-Clause", 2803 | "engines": { 2804 | "node": ">=0.10.0" 2805 | } 2806 | }, 2807 | "node_modules/std-env": { 2808 | "version": "3.8.1", 2809 | "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.1.tgz", 2810 | "integrity": "sha512-vj5lIj3Mwf9D79hBkltk5qmkFI+biIKWS2IBxEyEU3AX1tUf7AoL8nSazCOiiqQsGKIq01SClsKEzweu34uwvA==", 2811 | "license": "MIT" 2812 | }, 2813 | "node_modules/strip-literal": { 2814 | "version": "3.0.0", 2815 | "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-3.0.0.tgz", 2816 | "integrity": "sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==", 2817 | "license": "MIT", 2818 | "dependencies": { 2819 | "js-tokens": "^9.0.1" 2820 | }, 2821 | "funding": { 2822 | "url": "https://github.com/sponsors/antfu" 2823 | } 2824 | }, 2825 | "node_modules/superjson": { 2826 | "version": "2.2.2", 2827 | "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.2.tgz", 2828 | "integrity": "sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==", 2829 | "license": "MIT", 2830 | "dependencies": { 2831 | "copy-anything": "^3.0.2" 2832 | }, 2833 | "engines": { 2834 | "node": ">=16" 2835 | } 2836 | }, 2837 | "node_modules/tailwindcss": { 2838 | "version": "4.0.17", 2839 | "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.0.17.tgz", 2840 | "integrity": "sha512-OErSiGzRa6rLiOvaipsDZvLMSpsBZ4ysB4f0VKGXUrjw2jfkJRd6kjRKV2+ZmTCNvwtvgdDam5D7w6WXsdLJZw==", 2841 | "dev": true, 2842 | "license": "MIT" 2843 | }, 2844 | "node_modules/tapable": { 2845 | "version": "2.2.1", 2846 | "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", 2847 | "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", 2848 | "dev": true, 2849 | "license": "MIT", 2850 | "engines": { 2851 | "node": ">=6" 2852 | } 2853 | }, 2854 | "node_modules/tinyexec": { 2855 | "version": "0.3.2", 2856 | "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", 2857 | "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==", 2858 | "license": "MIT" 2859 | }, 2860 | "node_modules/tinyglobby": { 2861 | "version": "0.2.12", 2862 | "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", 2863 | "integrity": "sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==", 2864 | "license": "MIT", 2865 | "dependencies": { 2866 | "fdir": "^6.4.3", 2867 | "picomatch": "^4.0.2" 2868 | }, 2869 | "engines": { 2870 | "node": ">=12.0.0" 2871 | }, 2872 | "funding": { 2873 | "url": "https://github.com/sponsors/SuperchupuDev" 2874 | } 2875 | }, 2876 | "node_modules/tinyglobby/node_modules/fdir": { 2877 | "version": "6.4.3", 2878 | "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.3.tgz", 2879 | "integrity": "sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==", 2880 | "license": "MIT", 2881 | "peerDependencies": { 2882 | "picomatch": "^3 || ^4" 2883 | }, 2884 | "peerDependenciesMeta": { 2885 | "picomatch": { 2886 | "optional": true 2887 | } 2888 | } 2889 | }, 2890 | "node_modules/tinyglobby/node_modules/picomatch": { 2891 | "version": "4.0.2", 2892 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", 2893 | "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", 2894 | "license": "MIT", 2895 | "engines": { 2896 | "node": ">=12" 2897 | }, 2898 | "funding": { 2899 | "url": "https://github.com/sponsors/jonschlinkert" 2900 | } 2901 | }, 2902 | "node_modules/to-regex-range": { 2903 | "version": "5.0.1", 2904 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 2905 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 2906 | "license": "MIT", 2907 | "dependencies": { 2908 | "is-number": "^7.0.0" 2909 | }, 2910 | "engines": { 2911 | "node": ">=8.0" 2912 | } 2913 | }, 2914 | "node_modules/typescript": { 2915 | "version": "5.7.3", 2916 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", 2917 | "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", 2918 | "devOptional": true, 2919 | "license": "Apache-2.0", 2920 | "bin": { 2921 | "tsc": "bin/tsc", 2922 | "tsserver": "bin/tsserver" 2923 | }, 2924 | "engines": { 2925 | "node": ">=14.17" 2926 | } 2927 | }, 2928 | "node_modules/ufo": { 2929 | "version": "1.5.4", 2930 | "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz", 2931 | "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==", 2932 | "license": "MIT" 2933 | }, 2934 | "node_modules/unctx": { 2935 | "version": "2.4.1", 2936 | "resolved": "https://registry.npmjs.org/unctx/-/unctx-2.4.1.tgz", 2937 | "integrity": "sha512-AbaYw0Nm4mK4qjhns67C+kgxR2YWiwlDBPzxrN8h8C6VtAdCgditAY5Dezu3IJy4XVqAnbrXt9oQJvsn3fyozg==", 2938 | "license": "MIT", 2939 | "dependencies": { 2940 | "acorn": "^8.14.0", 2941 | "estree-walker": "^3.0.3", 2942 | "magic-string": "^0.30.17", 2943 | "unplugin": "^2.1.0" 2944 | } 2945 | }, 2946 | "node_modules/unctx/node_modules/estree-walker": { 2947 | "version": "3.0.3", 2948 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", 2949 | "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", 2950 | "license": "MIT", 2951 | "dependencies": { 2952 | "@types/estree": "^1.0.0" 2953 | } 2954 | }, 2955 | "node_modules/unicorn-magic": { 2956 | "version": "0.3.0", 2957 | "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz", 2958 | "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==", 2959 | "license": "MIT", 2960 | "engines": { 2961 | "node": ">=18" 2962 | }, 2963 | "funding": { 2964 | "url": "https://github.com/sponsors/sindresorhus" 2965 | } 2966 | }, 2967 | "node_modules/unimport": { 2968 | "version": "4.1.2", 2969 | "resolved": "https://registry.npmjs.org/unimport/-/unimport-4.1.2.tgz", 2970 | "integrity": "sha512-oVUL7PSlyVV3QRhsdcyYEMaDX8HJyS/CnUonEJTYA3//bWO+o/4gG8F7auGWWWkrrxBQBYOO8DKe+C53ktpRXw==", 2971 | "license": "MIT", 2972 | "dependencies": { 2973 | "acorn": "^8.14.0", 2974 | "escape-string-regexp": "^5.0.0", 2975 | "estree-walker": "^3.0.3", 2976 | "local-pkg": "^1.0.0", 2977 | "magic-string": "^0.30.17", 2978 | "mlly": "^1.7.4", 2979 | "pathe": "^2.0.3", 2980 | "picomatch": "^4.0.2", 2981 | "pkg-types": "^1.3.1", 2982 | "scule": "^1.3.0", 2983 | "strip-literal": "^3.0.0", 2984 | "tinyglobby": "^0.2.11", 2985 | "unplugin": "^2.2.0", 2986 | "unplugin-utils": "^0.2.4" 2987 | }, 2988 | "engines": { 2989 | "node": ">=18.12.0" 2990 | } 2991 | }, 2992 | "node_modules/unimport/node_modules/estree-walker": { 2993 | "version": "3.0.3", 2994 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", 2995 | "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", 2996 | "license": "MIT", 2997 | "dependencies": { 2998 | "@types/estree": "^1.0.0" 2999 | } 3000 | }, 3001 | "node_modules/unimport/node_modules/picomatch": { 3002 | "version": "4.0.2", 3003 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", 3004 | "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", 3005 | "license": "MIT", 3006 | "engines": { 3007 | "node": ">=12" 3008 | }, 3009 | "funding": { 3010 | "url": "https://github.com/sponsors/jonschlinkert" 3011 | } 3012 | }, 3013 | "node_modules/unimport/node_modules/pkg-types": { 3014 | "version": "1.3.1", 3015 | "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", 3016 | "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", 3017 | "license": "MIT", 3018 | "dependencies": { 3019 | "confbox": "^0.1.8", 3020 | "mlly": "^1.7.4", 3021 | "pathe": "^2.0.1" 3022 | } 3023 | }, 3024 | "node_modules/unplugin": { 3025 | "version": "2.2.2", 3026 | "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.2.2.tgz", 3027 | "integrity": "sha512-Qp+iiD+qCRnUek+nDoYvtWX7tfnYyXsrOnJ452FRTgOyKmTM7TUJ3l+PLPJOOWPTUyKISKp4isC5JJPSXUjGgw==", 3028 | "license": "MIT", 3029 | "dependencies": { 3030 | "acorn": "^8.14.1", 3031 | "webpack-virtual-modules": "^0.6.2" 3032 | }, 3033 | "engines": { 3034 | "node": ">=18.12.0" 3035 | } 3036 | }, 3037 | "node_modules/unplugin-utils": { 3038 | "version": "0.2.4", 3039 | "resolved": "https://registry.npmjs.org/unplugin-utils/-/unplugin-utils-0.2.4.tgz", 3040 | "integrity": "sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA==", 3041 | "license": "MIT", 3042 | "dependencies": { 3043 | "pathe": "^2.0.2", 3044 | "picomatch": "^4.0.2" 3045 | }, 3046 | "engines": { 3047 | "node": ">=18.12.0" 3048 | }, 3049 | "funding": { 3050 | "url": "https://github.com/sponsors/sxzz" 3051 | } 3052 | }, 3053 | "node_modules/unplugin-utils/node_modules/picomatch": { 3054 | "version": "4.0.2", 3055 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", 3056 | "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", 3057 | "license": "MIT", 3058 | "engines": { 3059 | "node": ">=12" 3060 | }, 3061 | "funding": { 3062 | "url": "https://github.com/sponsors/jonschlinkert" 3063 | } 3064 | }, 3065 | "node_modules/untyped": { 3066 | "version": "2.0.0", 3067 | "resolved": "https://registry.npmjs.org/untyped/-/untyped-2.0.0.tgz", 3068 | "integrity": "sha512-nwNCjxJTjNuLCgFr42fEak5OcLuB3ecca+9ksPFNvtfYSLpjf+iJqSIaSnIile6ZPbKYxI5k2AfXqeopGudK/g==", 3069 | "license": "MIT", 3070 | "dependencies": { 3071 | "citty": "^0.1.6", 3072 | "defu": "^6.1.4", 3073 | "jiti": "^2.4.2", 3074 | "knitwork": "^1.2.0", 3075 | "scule": "^1.3.0" 3076 | }, 3077 | "bin": { 3078 | "untyped": "dist/cli.mjs" 3079 | } 3080 | }, 3081 | "node_modules/vite": { 3082 | "version": "6.2.3", 3083 | "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.3.tgz", 3084 | "integrity": "sha512-IzwM54g4y9JA/xAeBPNaDXiBF8Jsgl3VBQ2YQ/wOY6fyW3xMdSoltIV3Bo59DErdqdE6RxUfv8W69DvUorE4Eg==", 3085 | "dev": true, 3086 | "license": "MIT", 3087 | "dependencies": { 3088 | "esbuild": "^0.25.0", 3089 | "postcss": "^8.5.3", 3090 | "rollup": "^4.30.1" 3091 | }, 3092 | "bin": { 3093 | "vite": "bin/vite.js" 3094 | }, 3095 | "engines": { 3096 | "node": "^18.0.0 || ^20.0.0 || >=22.0.0" 3097 | }, 3098 | "funding": { 3099 | "url": "https://github.com/vitejs/vite?sponsor=1" 3100 | }, 3101 | "optionalDependencies": { 3102 | "fsevents": "~2.3.3" 3103 | }, 3104 | "peerDependencies": { 3105 | "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", 3106 | "jiti": ">=1.21.0", 3107 | "less": "*", 3108 | "lightningcss": "^1.21.0", 3109 | "sass": "*", 3110 | "sass-embedded": "*", 3111 | "stylus": "*", 3112 | "sugarss": "*", 3113 | "terser": "^5.16.0", 3114 | "tsx": "^4.8.1", 3115 | "yaml": "^2.4.2" 3116 | }, 3117 | "peerDependenciesMeta": { 3118 | "@types/node": { 3119 | "optional": true 3120 | }, 3121 | "jiti": { 3122 | "optional": true 3123 | }, 3124 | "less": { 3125 | "optional": true 3126 | }, 3127 | "lightningcss": { 3128 | "optional": true 3129 | }, 3130 | "sass": { 3131 | "optional": true 3132 | }, 3133 | "sass-embedded": { 3134 | "optional": true 3135 | }, 3136 | "stylus": { 3137 | "optional": true 3138 | }, 3139 | "sugarss": { 3140 | "optional": true 3141 | }, 3142 | "terser": { 3143 | "optional": true 3144 | }, 3145 | "tsx": { 3146 | "optional": true 3147 | }, 3148 | "yaml": { 3149 | "optional": true 3150 | } 3151 | } 3152 | }, 3153 | "node_modules/vscode-uri": { 3154 | "version": "3.1.0", 3155 | "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", 3156 | "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", 3157 | "dev": true, 3158 | "license": "MIT" 3159 | }, 3160 | "node_modules/vue": { 3161 | "version": "3.5.13", 3162 | "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz", 3163 | "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==", 3164 | "license": "MIT", 3165 | "dependencies": { 3166 | "@vue/compiler-dom": "3.5.13", 3167 | "@vue/compiler-sfc": "3.5.13", 3168 | "@vue/runtime-dom": "3.5.13", 3169 | "@vue/server-renderer": "3.5.13", 3170 | "@vue/shared": "3.5.13" 3171 | }, 3172 | "peerDependencies": { 3173 | "typescript": "*" 3174 | }, 3175 | "peerDependenciesMeta": { 3176 | "typescript": { 3177 | "optional": true 3178 | } 3179 | } 3180 | }, 3181 | "node_modules/vue-router": { 3182 | "version": "4.5.0", 3183 | "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.5.0.tgz", 3184 | "integrity": "sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==", 3185 | "license": "MIT", 3186 | "dependencies": { 3187 | "@vue/devtools-api": "^6.6.4" 3188 | }, 3189 | "funding": { 3190 | "url": "https://github.com/sponsors/posva" 3191 | }, 3192 | "peerDependencies": { 3193 | "vue": "^3.2.0" 3194 | } 3195 | }, 3196 | "node_modules/vue-router/node_modules/@vue/devtools-api": { 3197 | "version": "6.6.4", 3198 | "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", 3199 | "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", 3200 | "license": "MIT" 3201 | }, 3202 | "node_modules/vue-tsc": { 3203 | "version": "2.2.8", 3204 | "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-2.2.8.tgz", 3205 | "integrity": "sha512-jBYKBNFADTN+L+MdesNX/TB3XuDSyaWynKMDgR+yCSln0GQ9Tfb7JS2lr46s2LiFUT1WsmfWsSvIElyxzOPqcQ==", 3206 | "dev": true, 3207 | "license": "MIT", 3208 | "dependencies": { 3209 | "@volar/typescript": "~2.4.11", 3210 | "@vue/language-core": "2.2.8" 3211 | }, 3212 | "bin": { 3213 | "vue-tsc": "bin/vue-tsc.js" 3214 | }, 3215 | "peerDependencies": { 3216 | "typescript": ">=5.0.0" 3217 | } 3218 | }, 3219 | "node_modules/webpack-virtual-modules": { 3220 | "version": "0.6.2", 3221 | "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz", 3222 | "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==", 3223 | "license": "MIT" 3224 | } 3225 | } 3226 | } 3227 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "chat-ai-ui", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vue-tsc -b && vite build", 9 | "preview": "vite preview" 10 | }, 11 | "dependencies": { 12 | "axios": "^1.8.4", 13 | "pinia": "^3.0.1", 14 | "pinia-plugin-persistedstate": "^4.2.0", 15 | "vue": "^3.5.13", 16 | "vue-router": "^4.5.0" 17 | }, 18 | "devDependencies": { 19 | "@tailwindcss/vite": "^4.0.17", 20 | "@vitejs/plugin-vue": "^5.2.1", 21 | "@vue/tsconfig": "^0.7.0", 22 | "tailwindcss": "^4.0.17", 23 | "typescript": "~5.7.2", 24 | "vite": "^6.2.0", 25 | "vue-tsc": "^2.2.4" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /public/vite.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/App.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | -------------------------------------------------------------------------------- /src/assets/robot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bradtraversy/chat-ai-ui/7b5c2b88f32a10c6edee57c32541f1ad19e0b889/src/assets/robot.png -------------------------------------------------------------------------------- /src/assets/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bradtraversy/chat-ai-ui/7b5c2b88f32a10c6edee57c32541f1ad19e0b889/src/assets/screen.png -------------------------------------------------------------------------------- /src/components/ChatInput.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | 28 | -------------------------------------------------------------------------------- /src/components/Header.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 26 | -------------------------------------------------------------------------------- /src/main.ts: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue'; 2 | import { createPinia } from 'pinia'; 3 | import piniaPluginPersistedState from 'pinia-plugin-persistedstate'; 4 | import { router } from './router'; 5 | import './style.css'; 6 | import App from './App.vue'; 7 | 8 | const pinia = createPinia(); 9 | pinia.use(piniaPluginPersistedState); 10 | 11 | const app = createApp(App); 12 | app.use(router); 13 | app.use(pinia); 14 | app.mount('#app'); 15 | -------------------------------------------------------------------------------- /src/router/index.ts: -------------------------------------------------------------------------------- 1 | import { createRouter, createWebHistory } from 'vue-router'; 2 | import HomeView from '../views/HomeView.vue'; 3 | import ChatView from '../views/ChatView.vue'; 4 | 5 | const routes = [ 6 | { path: '/', component: HomeView }, 7 | { path: '/chat', component: ChatView }, 8 | ]; 9 | 10 | export const router = createRouter({ 11 | history: createWebHistory(), 12 | routes, 13 | }); 14 | -------------------------------------------------------------------------------- /src/stores/chat.ts: -------------------------------------------------------------------------------- 1 | import { defineStore } from 'pinia'; 2 | import { ref } from 'vue'; 3 | import axios from 'axios'; 4 | import { useUserStore } from './user'; 5 | 6 | interface ChatMessage { 7 | message: string; 8 | reply: string; 9 | } 10 | 11 | interface FormattedMessage { 12 | role: 'user' | 'ai'; 13 | content: string; 14 | } 15 | 16 | export const useChatStore = defineStore('chat', () => { 17 | const messages = ref<{ role: string; content: string }[]>([]); 18 | const isLoading = ref(false); 19 | 20 | const userStore = useUserStore(); 21 | 22 | // Load previous chat messages 23 | const loadChatHistory = async () => { 24 | if (!userStore.userId) return; 25 | 26 | try { 27 | const { data } = await axios.post( 28 | `${import.meta.env.VITE_API_URL}/get-messages`, 29 | { 30 | userId: userStore.userId, 31 | } 32 | ); 33 | 34 | messages.value = data.messages 35 | .flatMap((msg: ChatMessage): FormattedMessage[] => [ 36 | { role: 'user', content: msg.message }, 37 | { role: 'ai', content: msg.reply }, 38 | ]) 39 | .filter((msg: FormattedMessage) => msg.content); 40 | } catch (error) { 41 | console.error('Error loading chat history: ', error); 42 | } 43 | }; 44 | 45 | // Send new message to AI 46 | const sendMessage = async (message: string) => { 47 | console.log(123); 48 | if (!message.trim() || !userStore.userId) return; 49 | 50 | messages.value.push({ role: 'user', content: message }); 51 | 52 | isLoading.value = true; 53 | 54 | try { 55 | const { data } = await axios.post( 56 | `${import.meta.env.VITE_API_URL}/chat`, 57 | { 58 | message, 59 | userId: userStore.userId, 60 | } 61 | ); 62 | 63 | messages.value.push({ role: 'ai', content: data.reply }); 64 | } catch (error) { 65 | console.error('Error sending message: ', error); 66 | messages.value.push({ 67 | role: 'ai', 68 | content: 'Error: unable to process request', 69 | }); 70 | } finally { 71 | isLoading.value = false; 72 | } 73 | }; 74 | 75 | return { messages, isLoading, loadChatHistory, sendMessage }; 76 | }); 77 | -------------------------------------------------------------------------------- /src/stores/user.ts: -------------------------------------------------------------------------------- 1 | import { defineStore } from 'pinia'; 2 | 3 | export const useUserStore = defineStore('user', { 4 | state: () => ({ 5 | userId: null as string | null, 6 | name: null as string | null, 7 | }), 8 | actions: { 9 | setUser(data: { userId: string; name: string }) { 10 | this.userId = data.userId; 11 | this.name = data.name; 12 | }, 13 | logout() { 14 | this.userId = null; 15 | this.name = null; 16 | }, 17 | }, 18 | persist: true, // Keep user logged in across page reloads 19 | }); 20 | -------------------------------------------------------------------------------- /src/style.css: -------------------------------------------------------------------------------- 1 | @import 'tailwindcss'; 2 | -------------------------------------------------------------------------------- /src/views/ChatView.vue: -------------------------------------------------------------------------------- 1 | 46 | 47 | 79 | -------------------------------------------------------------------------------- /src/views/HomeView.vue: -------------------------------------------------------------------------------- 1 | 47 | 48 | 81 | -------------------------------------------------------------------------------- /src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /tsconfig.app.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@vue/tsconfig/tsconfig.dom.json", 3 | "compilerOptions": { 4 | "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", 5 | 6 | /* Linting */ 7 | "strict": true, 8 | "noUnusedLocals": true, 9 | "noUnusedParameters": true, 10 | "noFallthroughCasesInSwitch": true, 11 | "noUncheckedSideEffectImports": true 12 | }, 13 | "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue"] 14 | } 15 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "files": [], 3 | "references": [ 4 | { "path": "./tsconfig.app.json" }, 5 | { "path": "./tsconfig.node.json" } 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", 4 | "target": "ES2022", 5 | "lib": ["ES2023"], 6 | "module": "ESNext", 7 | "skipLibCheck": true, 8 | 9 | /* Bundler mode */ 10 | "moduleResolution": "bundler", 11 | "allowImportingTsExtensions": true, 12 | "isolatedModules": true, 13 | "moduleDetection": "force", 14 | "noEmit": true, 15 | 16 | /* Linting */ 17 | "strict": true, 18 | "noUnusedLocals": true, 19 | "noUnusedParameters": true, 20 | "noFallthroughCasesInSwitch": true, 21 | "noUncheckedSideEffectImports": true 22 | }, 23 | "include": ["vite.config.ts"] 24 | } 25 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite'; 2 | import vue from '@vitejs/plugin-vue'; 3 | import tailwindcss from '@tailwindcss/vite'; 4 | 5 | // https://vite.dev/config/ 6 | export default defineConfig({ 7 | plugins: [vue(), tailwindcss()], 8 | }); 9 | --------------------------------------------------------------------------------