launch and manage windows terminal instances with raycast
raycast raycast-extension

implement aliases #1

closed opened by woof.monster targeting main from feature/alias

an attempt to add support for profile aliases, very work in progress and has a lot of issues.

(these do not have any effect in the actual windows terminal or show them in root search)

Labels
new-feature
branch

None yet.

assignee

None yet.

Participants 1
AT URI
at://did:plc:fhg4ndnjwmxfkarwaqml7kyo/sh.tangled.repo.pull/3mdlerif4nc22
+3567
Diff #0
+14
.gitignore
··· 1 + # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 + 3 + # dependencies 4 + /node_modules 5 + 6 + # Raycast specific files 7 + raycast-env.d.ts 8 + .raycast-swift-build 9 + .swiftpm 10 + compiled_raycast_swift 11 + compiled_raycast_rust 12 + 13 + # misc 14 + .DS_Store
+4
.prettierrc
··· 1 + { 2 + "printWidth": 120, 3 + "singleQuote": false 4 + }
+4
.zed/settings.json
··· 1 + { 2 + "tab_size": 2, 3 + "hard_tabs": false 4 + }
+22
CHANGELOG.md
··· 1 + # Windows Terminal Changelog 2 + 3 + ## [Features and Fixes] - {PR_MERGE_DATE} 4 + 5 + - Add ability to filter profiles by source 6 + - [REGRESSION] Selecting a specific source, then selecting all sources does 7 + not make the selection jump to the top 8 + - [NOTIMPLEMENTED] Add ability to create aliases of profiles 9 + - Add support for new tab menu folders (including nested) 10 + - Add support for profiles generated by Visual Studio 11 + - Add better handling for profiles that run elevated by default 12 + - Add support for Windows Terminal preview releases 13 + 14 + ## [Quality of Life Enhancements and Fixes] - {PR_MERGE_DATE} 15 + 16 + - Fixed an bug where profiles won't start due to the main window closing early 17 + - Added handling of more WSL profiles 18 + - Added handling of SSH profiles 19 + 20 + ## [Added Windows Terminal] - {PR_MERGE_DATE} 21 + 22 + Initial version code
assets/extension-icon.png

This is a binary file and will not be displayed.

+16
eslint.config.js
··· 1 + const { defineConfig } = require("eslint/config"); 2 + const raycastConfig = require("@raycast/eslint-config"); 3 + 4 + module.exports = defineConfig([ 5 + ...raycastConfig, 6 + { 7 + rules: { 8 + "@raycast/prefer-title-case": [ 9 + "warn", 10 + { 11 + extraFixedCaseWords: ["settings.json"], 12 + }, 13 + ], 14 + }, 15 + }, 16 + ]);
metadata/windows-terminal-1.png

This is a binary file and will not be displayed.

+2948
package-lock.json
··· 1 + { 2 + "name": "windows-terminal", 3 + "lockfileVersion": 3, 4 + "requires": true, 5 + "packages": { 6 + "": { 7 + "name": "windows-terminal", 8 + "license": "MIT", 9 + "dependencies": { 10 + "@raycast/api": "^1.103.0", 11 + "@raycast/utils": "^2.2.1" 12 + }, 13 + "devDependencies": { 14 + "@raycast/eslint-config": "^2.1.1", 15 + "@types/node": "22.13.10", 16 + "@types/react": "19.0.10", 17 + "eslint": "^9.22.0", 18 + "prettier": "^3.5.3", 19 + "typescript": "^5.8.2" 20 + } 21 + }, 22 + "node_modules/@esbuild/aix-ppc64": { 23 + "version": "0.25.12", 24 + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", 25 + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", 26 + "cpu": [ 27 + "ppc64" 28 + ], 29 + "license": "MIT", 30 + "optional": true, 31 + "os": [ 32 + "aix" 33 + ], 34 + "engines": { 35 + "node": ">=18" 36 + } 37 + }, 38 + "node_modules/@esbuild/android-arm": { 39 + "version": "0.25.12", 40 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", 41 + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", 42 + "cpu": [ 43 + "arm" 44 + ], 45 + "license": "MIT", 46 + "optional": true, 47 + "os": [ 48 + "android" 49 + ], 50 + "engines": { 51 + "node": ">=18" 52 + } 53 + }, 54 + "node_modules/@esbuild/android-arm64": { 55 + "version": "0.25.12", 56 + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", 57 + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", 58 + "cpu": [ 59 + "arm64" 60 + ], 61 + "license": "MIT", 62 + "optional": true, 63 + "os": [ 64 + "android" 65 + ], 66 + "engines": { 67 + "node": ">=18" 68 + } 69 + }, 70 + "node_modules/@esbuild/android-x64": { 71 + "version": "0.25.12", 72 + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", 73 + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", 74 + "cpu": [ 75 + "x64" 76 + ], 77 + "license": "MIT", 78 + "optional": true, 79 + "os": [ 80 + "android" 81 + ], 82 + "engines": { 83 + "node": ">=18" 84 + } 85 + }, 86 + "node_modules/@esbuild/darwin-arm64": { 87 + "version": "0.25.12", 88 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", 89 + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", 90 + "cpu": [ 91 + "arm64" 92 + ], 93 + "license": "MIT", 94 + "optional": true, 95 + "os": [ 96 + "darwin" 97 + ], 98 + "engines": { 99 + "node": ">=18" 100 + } 101 + }, 102 + "node_modules/@esbuild/darwin-x64": { 103 + "version": "0.25.12", 104 + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", 105 + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", 106 + "cpu": [ 107 + "x64" 108 + ], 109 + "license": "MIT", 110 + "optional": true, 111 + "os": [ 112 + "darwin" 113 + ], 114 + "engines": { 115 + "node": ">=18" 116 + } 117 + }, 118 + "node_modules/@esbuild/freebsd-arm64": { 119 + "version": "0.25.12", 120 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", 121 + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", 122 + "cpu": [ 123 + "arm64" 124 + ], 125 + "license": "MIT", 126 + "optional": true, 127 + "os": [ 128 + "freebsd" 129 + ], 130 + "engines": { 131 + "node": ">=18" 132 + } 133 + }, 134 + "node_modules/@esbuild/freebsd-x64": { 135 + "version": "0.25.12", 136 + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", 137 + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", 138 + "cpu": [ 139 + "x64" 140 + ], 141 + "license": "MIT", 142 + "optional": true, 143 + "os": [ 144 + "freebsd" 145 + ], 146 + "engines": { 147 + "node": ">=18" 148 + } 149 + }, 150 + "node_modules/@esbuild/linux-arm": { 151 + "version": "0.25.12", 152 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", 153 + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", 154 + "cpu": [ 155 + "arm" 156 + ], 157 + "license": "MIT", 158 + "optional": true, 159 + "os": [ 160 + "linux" 161 + ], 162 + "engines": { 163 + "node": ">=18" 164 + } 165 + }, 166 + "node_modules/@esbuild/linux-arm64": { 167 + "version": "0.25.12", 168 + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", 169 + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", 170 + "cpu": [ 171 + "arm64" 172 + ], 173 + "license": "MIT", 174 + "optional": true, 175 + "os": [ 176 + "linux" 177 + ], 178 + "engines": { 179 + "node": ">=18" 180 + } 181 + }, 182 + "node_modules/@esbuild/linux-ia32": { 183 + "version": "0.25.12", 184 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", 185 + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", 186 + "cpu": [ 187 + "ia32" 188 + ], 189 + "license": "MIT", 190 + "optional": true, 191 + "os": [ 192 + "linux" 193 + ], 194 + "engines": { 195 + "node": ">=18" 196 + } 197 + }, 198 + "node_modules/@esbuild/linux-loong64": { 199 + "version": "0.25.12", 200 + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", 201 + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", 202 + "cpu": [ 203 + "loong64" 204 + ], 205 + "license": "MIT", 206 + "optional": true, 207 + "os": [ 208 + "linux" 209 + ], 210 + "engines": { 211 + "node": ">=18" 212 + } 213 + }, 214 + "node_modules/@esbuild/linux-mips64el": { 215 + "version": "0.25.12", 216 + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", 217 + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", 218 + "cpu": [ 219 + "mips64el" 220 + ], 221 + "license": "MIT", 222 + "optional": true, 223 + "os": [ 224 + "linux" 225 + ], 226 + "engines": { 227 + "node": ">=18" 228 + } 229 + }, 230 + "node_modules/@esbuild/linux-ppc64": { 231 + "version": "0.25.12", 232 + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", 233 + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", 234 + "cpu": [ 235 + "ppc64" 236 + ], 237 + "license": "MIT", 238 + "optional": true, 239 + "os": [ 240 + "linux" 241 + ], 242 + "engines": { 243 + "node": ">=18" 244 + } 245 + }, 246 + "node_modules/@esbuild/linux-riscv64": { 247 + "version": "0.25.12", 248 + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", 249 + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", 250 + "cpu": [ 251 + "riscv64" 252 + ], 253 + "license": "MIT", 254 + "optional": true, 255 + "os": [ 256 + "linux" 257 + ], 258 + "engines": { 259 + "node": ">=18" 260 + } 261 + }, 262 + "node_modules/@esbuild/linux-s390x": { 263 + "version": "0.25.12", 264 + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", 265 + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", 266 + "cpu": [ 267 + "s390x" 268 + ], 269 + "license": "MIT", 270 + "optional": true, 271 + "os": [ 272 + "linux" 273 + ], 274 + "engines": { 275 + "node": ">=18" 276 + } 277 + }, 278 + "node_modules/@esbuild/linux-x64": { 279 + "version": "0.25.12", 280 + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", 281 + "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", 282 + "cpu": [ 283 + "x64" 284 + ], 285 + "license": "MIT", 286 + "optional": true, 287 + "os": [ 288 + "linux" 289 + ], 290 + "engines": { 291 + "node": ">=18" 292 + } 293 + }, 294 + "node_modules/@esbuild/netbsd-arm64": { 295 + "version": "0.25.12", 296 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", 297 + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", 298 + "cpu": [ 299 + "arm64" 300 + ], 301 + "license": "MIT", 302 + "optional": true, 303 + "os": [ 304 + "netbsd" 305 + ], 306 + "engines": { 307 + "node": ">=18" 308 + } 309 + }, 310 + "node_modules/@esbuild/netbsd-x64": { 311 + "version": "0.25.12", 312 + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", 313 + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", 314 + "cpu": [ 315 + "x64" 316 + ], 317 + "license": "MIT", 318 + "optional": true, 319 + "os": [ 320 + "netbsd" 321 + ], 322 + "engines": { 323 + "node": ">=18" 324 + } 325 + }, 326 + "node_modules/@esbuild/openbsd-arm64": { 327 + "version": "0.25.12", 328 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", 329 + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", 330 + "cpu": [ 331 + "arm64" 332 + ], 333 + "license": "MIT", 334 + "optional": true, 335 + "os": [ 336 + "openbsd" 337 + ], 338 + "engines": { 339 + "node": ">=18" 340 + } 341 + }, 342 + "node_modules/@esbuild/openbsd-x64": { 343 + "version": "0.25.12", 344 + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", 345 + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", 346 + "cpu": [ 347 + "x64" 348 + ], 349 + "license": "MIT", 350 + "optional": true, 351 + "os": [ 352 + "openbsd" 353 + ], 354 + "engines": { 355 + "node": ">=18" 356 + } 357 + }, 358 + "node_modules/@esbuild/openharmony-arm64": { 359 + "version": "0.25.12", 360 + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", 361 + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", 362 + "cpu": [ 363 + "arm64" 364 + ], 365 + "license": "MIT", 366 + "optional": true, 367 + "os": [ 368 + "openharmony" 369 + ], 370 + "engines": { 371 + "node": ">=18" 372 + } 373 + }, 374 + "node_modules/@esbuild/sunos-x64": { 375 + "version": "0.25.12", 376 + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", 377 + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", 378 + "cpu": [ 379 + "x64" 380 + ], 381 + "license": "MIT", 382 + "optional": true, 383 + "os": [ 384 + "sunos" 385 + ], 386 + "engines": { 387 + "node": ">=18" 388 + } 389 + }, 390 + "node_modules/@esbuild/win32-arm64": { 391 + "version": "0.25.12", 392 + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", 393 + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", 394 + "cpu": [ 395 + "arm64" 396 + ], 397 + "license": "MIT", 398 + "optional": true, 399 + "os": [ 400 + "win32" 401 + ], 402 + "engines": { 403 + "node": ">=18" 404 + } 405 + }, 406 + "node_modules/@esbuild/win32-ia32": { 407 + "version": "0.25.12", 408 + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", 409 + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", 410 + "cpu": [ 411 + "ia32" 412 + ], 413 + "license": "MIT", 414 + "optional": true, 415 + "os": [ 416 + "win32" 417 + ], 418 + "engines": { 419 + "node": ">=18" 420 + } 421 + }, 422 + "node_modules/@esbuild/win32-x64": { 423 + "version": "0.25.12", 424 + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", 425 + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", 426 + "cpu": [ 427 + "x64" 428 + ], 429 + "license": "MIT", 430 + "optional": true, 431 + "os": [ 432 + "win32" 433 + ], 434 + "engines": { 435 + "node": ">=18" 436 + } 437 + }, 438 + "node_modules/@eslint-community/eslint-utils": { 439 + "version": "4.9.1", 440 + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", 441 + "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", 442 + "dev": true, 443 + "license": "MIT", 444 + "dependencies": { 445 + "eslint-visitor-keys": "^3.4.3" 446 + }, 447 + "engines": { 448 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 449 + }, 450 + "funding": { 451 + "url": "https://opencollective.com/eslint" 452 + }, 453 + "peerDependencies": { 454 + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" 455 + } 456 + }, 457 + "node_modules/@eslint-community/regexpp": { 458 + "version": "4.12.2", 459 + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", 460 + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", 461 + "dev": true, 462 + "license": "MIT", 463 + "engines": { 464 + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" 465 + } 466 + }, 467 + "node_modules/@eslint/config-array": { 468 + "version": "0.21.1", 469 + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", 470 + "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", 471 + "dev": true, 472 + "license": "Apache-2.0", 473 + "dependencies": { 474 + "@eslint/object-schema": "^2.1.7", 475 + "debug": "^4.3.1", 476 + "minimatch": "^3.1.2" 477 + }, 478 + "engines": { 479 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 480 + } 481 + }, 482 + "node_modules/@eslint/config-array/node_modules/brace-expansion": { 483 + "version": "1.1.12", 484 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", 485 + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", 486 + "dev": true, 487 + "license": "MIT", 488 + "dependencies": { 489 + "balanced-match": "^1.0.0", 490 + "concat-map": "0.0.1" 491 + } 492 + }, 493 + "node_modules/@eslint/config-array/node_modules/minimatch": { 494 + "version": "3.1.2", 495 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 496 + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 497 + "dev": true, 498 + "license": "ISC", 499 + "dependencies": { 500 + "brace-expansion": "^1.1.7" 501 + }, 502 + "engines": { 503 + "node": "*" 504 + } 505 + }, 506 + "node_modules/@eslint/config-helpers": { 507 + "version": "0.4.2", 508 + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", 509 + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", 510 + "dev": true, 511 + "license": "Apache-2.0", 512 + "dependencies": { 513 + "@eslint/core": "^0.17.0" 514 + }, 515 + "engines": { 516 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 517 + } 518 + }, 519 + "node_modules/@eslint/core": { 520 + "version": "0.17.0", 521 + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", 522 + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", 523 + "dev": true, 524 + "license": "Apache-2.0", 525 + "dependencies": { 526 + "@types/json-schema": "^7.0.15" 527 + }, 528 + "engines": { 529 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 530 + } 531 + }, 532 + "node_modules/@eslint/eslintrc": { 533 + "version": "3.3.3", 534 + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", 535 + "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", 536 + "dev": true, 537 + "license": "MIT", 538 + "dependencies": { 539 + "ajv": "^6.12.4", 540 + "debug": "^4.3.2", 541 + "espree": "^10.0.1", 542 + "globals": "^14.0.0", 543 + "ignore": "^5.2.0", 544 + "import-fresh": "^3.2.1", 545 + "js-yaml": "^4.1.1", 546 + "minimatch": "^3.1.2", 547 + "strip-json-comments": "^3.1.1" 548 + }, 549 + "engines": { 550 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 551 + }, 552 + "funding": { 553 + "url": "https://opencollective.com/eslint" 554 + } 555 + }, 556 + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { 557 + "version": "1.1.12", 558 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", 559 + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", 560 + "dev": true, 561 + "license": "MIT", 562 + "dependencies": { 563 + "balanced-match": "^1.0.0", 564 + "concat-map": "0.0.1" 565 + } 566 + }, 567 + "node_modules/@eslint/eslintrc/node_modules/globals": { 568 + "version": "14.0.0", 569 + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", 570 + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", 571 + "dev": true, 572 + "license": "MIT", 573 + "engines": { 574 + "node": ">=18" 575 + }, 576 + "funding": { 577 + "url": "https://github.com/sponsors/sindresorhus" 578 + } 579 + }, 580 + "node_modules/@eslint/eslintrc/node_modules/minimatch": { 581 + "version": "3.1.2", 582 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 583 + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 584 + "dev": true, 585 + "license": "ISC", 586 + "dependencies": { 587 + "brace-expansion": "^1.1.7" 588 + }, 589 + "engines": { 590 + "node": "*" 591 + } 592 + }, 593 + "node_modules/@eslint/js": { 594 + "version": "9.39.2", 595 + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", 596 + "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", 597 + "dev": true, 598 + "license": "MIT", 599 + "engines": { 600 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 601 + }, 602 + "funding": { 603 + "url": "https://eslint.org/donate" 604 + } 605 + }, 606 + "node_modules/@eslint/object-schema": { 607 + "version": "2.1.7", 608 + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", 609 + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", 610 + "dev": true, 611 + "license": "Apache-2.0", 612 + "engines": { 613 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 614 + } 615 + }, 616 + "node_modules/@eslint/plugin-kit": { 617 + "version": "0.4.1", 618 + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", 619 + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", 620 + "dev": true, 621 + "license": "Apache-2.0", 622 + "dependencies": { 623 + "@eslint/core": "^0.17.0", 624 + "levn": "^0.4.1" 625 + }, 626 + "engines": { 627 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 628 + } 629 + }, 630 + "node_modules/@humanfs/core": { 631 + "version": "0.19.1", 632 + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", 633 + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", 634 + "dev": true, 635 + "license": "Apache-2.0", 636 + "engines": { 637 + "node": ">=18.18.0" 638 + } 639 + }, 640 + "node_modules/@humanfs/node": { 641 + "version": "0.16.7", 642 + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", 643 + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", 644 + "dev": true, 645 + "license": "Apache-2.0", 646 + "dependencies": { 647 + "@humanfs/core": "^0.19.1", 648 + "@humanwhocodes/retry": "^0.4.0" 649 + }, 650 + "engines": { 651 + "node": ">=18.18.0" 652 + } 653 + }, 654 + "node_modules/@humanwhocodes/module-importer": { 655 + "version": "1.0.1", 656 + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", 657 + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", 658 + "dev": true, 659 + "license": "Apache-2.0", 660 + "engines": { 661 + "node": ">=12.22" 662 + }, 663 + "funding": { 664 + "type": "github", 665 + "url": "https://github.com/sponsors/nzakas" 666 + } 667 + }, 668 + "node_modules/@humanwhocodes/retry": { 669 + "version": "0.4.3", 670 + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", 671 + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", 672 + "dev": true, 673 + "license": "Apache-2.0", 674 + "engines": { 675 + "node": ">=18.18" 676 + }, 677 + "funding": { 678 + "type": "github", 679 + "url": "https://github.com/sponsors/nzakas" 680 + } 681 + }, 682 + "node_modules/@inquirer/ansi": { 683 + "version": "1.0.2", 684 + "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-1.0.2.tgz", 685 + "integrity": "sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==", 686 + "license": "MIT", 687 + "engines": { 688 + "node": ">=18" 689 + } 690 + }, 691 + "node_modules/@inquirer/checkbox": { 692 + "version": "4.3.2", 693 + "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.3.2.tgz", 694 + "integrity": "sha512-VXukHf0RR1doGe6Sm4F0Em7SWYLTHSsbGfJdS9Ja2bX5/D5uwVOEjr07cncLROdBvmnvCATYEWlHqYmXv2IlQA==", 695 + "license": "MIT", 696 + "dependencies": { 697 + "@inquirer/ansi": "^1.0.2", 698 + "@inquirer/core": "^10.3.2", 699 + "@inquirer/figures": "^1.0.15", 700 + "@inquirer/type": "^3.0.10", 701 + "yoctocolors-cjs": "^2.1.3" 702 + }, 703 + "engines": { 704 + "node": ">=18" 705 + }, 706 + "peerDependencies": { 707 + "@types/node": ">=18" 708 + }, 709 + "peerDependenciesMeta": { 710 + "@types/node": { 711 + "optional": true 712 + } 713 + } 714 + }, 715 + "node_modules/@inquirer/confirm": { 716 + "version": "5.1.21", 717 + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.21.tgz", 718 + "integrity": "sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==", 719 + "license": "MIT", 720 + "dependencies": { 721 + "@inquirer/core": "^10.3.2", 722 + "@inquirer/type": "^3.0.10" 723 + }, 724 + "engines": { 725 + "node": ">=18" 726 + }, 727 + "peerDependencies": { 728 + "@types/node": ">=18" 729 + }, 730 + "peerDependenciesMeta": { 731 + "@types/node": { 732 + "optional": true 733 + } 734 + } 735 + }, 736 + "node_modules/@inquirer/core": { 737 + "version": "10.3.2", 738 + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.3.2.tgz", 739 + "integrity": "sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==", 740 + "license": "MIT", 741 + "dependencies": { 742 + "@inquirer/ansi": "^1.0.2", 743 + "@inquirer/figures": "^1.0.15", 744 + "@inquirer/type": "^3.0.10", 745 + "cli-width": "^4.1.0", 746 + "mute-stream": "^2.0.0", 747 + "signal-exit": "^4.1.0", 748 + "wrap-ansi": "^6.2.0", 749 + "yoctocolors-cjs": "^2.1.3" 750 + }, 751 + "engines": { 752 + "node": ">=18" 753 + }, 754 + "peerDependencies": { 755 + "@types/node": ">=18" 756 + }, 757 + "peerDependenciesMeta": { 758 + "@types/node": { 759 + "optional": true 760 + } 761 + } 762 + }, 763 + "node_modules/@inquirer/core/node_modules/wrap-ansi": { 764 + "version": "6.2.0", 765 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", 766 + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", 767 + "license": "MIT", 768 + "dependencies": { 769 + "ansi-styles": "^4.0.0", 770 + "string-width": "^4.1.0", 771 + "strip-ansi": "^6.0.0" 772 + }, 773 + "engines": { 774 + "node": ">=8" 775 + } 776 + }, 777 + "node_modules/@inquirer/editor": { 778 + "version": "4.2.23", 779 + "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.2.23.tgz", 780 + "integrity": "sha512-aLSROkEwirotxZ1pBaP8tugXRFCxW94gwrQLxXfrZsKkfjOYC1aRvAZuhpJOb5cu4IBTJdsCigUlf2iCOu4ZDQ==", 781 + "license": "MIT", 782 + "dependencies": { 783 + "@inquirer/core": "^10.3.2", 784 + "@inquirer/external-editor": "^1.0.3", 785 + "@inquirer/type": "^3.0.10" 786 + }, 787 + "engines": { 788 + "node": ">=18" 789 + }, 790 + "peerDependencies": { 791 + "@types/node": ">=18" 792 + }, 793 + "peerDependenciesMeta": { 794 + "@types/node": { 795 + "optional": true 796 + } 797 + } 798 + }, 799 + "node_modules/@inquirer/expand": { 800 + "version": "4.0.23", 801 + "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-4.0.23.tgz", 802 + "integrity": "sha512-nRzdOyFYnpeYTTR2qFwEVmIWypzdAx/sIkCMeTNTcflFOovfqUk+HcFhQQVBftAh9gmGrpFj6QcGEqrDMDOiew==", 803 + "license": "MIT", 804 + "dependencies": { 805 + "@inquirer/core": "^10.3.2", 806 + "@inquirer/type": "^3.0.10", 807 + "yoctocolors-cjs": "^2.1.3" 808 + }, 809 + "engines": { 810 + "node": ">=18" 811 + }, 812 + "peerDependencies": { 813 + "@types/node": ">=18" 814 + }, 815 + "peerDependenciesMeta": { 816 + "@types/node": { 817 + "optional": true 818 + } 819 + } 820 + }, 821 + "node_modules/@inquirer/external-editor": { 822 + "version": "1.0.3", 823 + "resolved": "https://registry.npmjs.org/@inquirer/external-editor/-/external-editor-1.0.3.tgz", 824 + "integrity": "sha512-RWbSrDiYmO4LbejWY7ttpxczuwQyZLBUyygsA9Nsv95hpzUWwnNTVQmAq3xuh7vNwCp07UTmE5i11XAEExx4RA==", 825 + "license": "MIT", 826 + "dependencies": { 827 + "chardet": "^2.1.1", 828 + "iconv-lite": "^0.7.0" 829 + }, 830 + "engines": { 831 + "node": ">=18" 832 + }, 833 + "peerDependencies": { 834 + "@types/node": ">=18" 835 + }, 836 + "peerDependenciesMeta": { 837 + "@types/node": { 838 + "optional": true 839 + } 840 + } 841 + }, 842 + "node_modules/@inquirer/figures": { 843 + "version": "1.0.15", 844 + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.15.tgz", 845 + "integrity": "sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==", 846 + "license": "MIT", 847 + "engines": { 848 + "node": ">=18" 849 + } 850 + }, 851 + "node_modules/@inquirer/input": { 852 + "version": "4.3.1", 853 + "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-4.3.1.tgz", 854 + "integrity": "sha512-kN0pAM4yPrLjJ1XJBjDxyfDduXOuQHrBB8aLDMueuwUGn+vNpF7Gq7TvyVxx8u4SHlFFj4trmj+a2cbpG4Jn1g==", 855 + "license": "MIT", 856 + "dependencies": { 857 + "@inquirer/core": "^10.3.2", 858 + "@inquirer/type": "^3.0.10" 859 + }, 860 + "engines": { 861 + "node": ">=18" 862 + }, 863 + "peerDependencies": { 864 + "@types/node": ">=18" 865 + }, 866 + "peerDependenciesMeta": { 867 + "@types/node": { 868 + "optional": true 869 + } 870 + } 871 + }, 872 + "node_modules/@inquirer/number": { 873 + "version": "3.0.23", 874 + "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-3.0.23.tgz", 875 + "integrity": "sha512-5Smv0OK7K0KUzUfYUXDXQc9jrf8OHo4ktlEayFlelCjwMXz0299Y8OrI+lj7i4gCBY15UObk76q0QtxjzFcFcg==", 876 + "license": "MIT", 877 + "dependencies": { 878 + "@inquirer/core": "^10.3.2", 879 + "@inquirer/type": "^3.0.10" 880 + }, 881 + "engines": { 882 + "node": ">=18" 883 + }, 884 + "peerDependencies": { 885 + "@types/node": ">=18" 886 + }, 887 + "peerDependenciesMeta": { 888 + "@types/node": { 889 + "optional": true 890 + } 891 + } 892 + }, 893 + "node_modules/@inquirer/password": { 894 + "version": "4.0.23", 895 + "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-4.0.23.tgz", 896 + "integrity": "sha512-zREJHjhT5vJBMZX/IUbyI9zVtVfOLiTO66MrF/3GFZYZ7T4YILW5MSkEYHceSii/KtRk+4i3RE7E1CUXA2jHcA==", 897 + "license": "MIT", 898 + "dependencies": { 899 + "@inquirer/ansi": "^1.0.2", 900 + "@inquirer/core": "^10.3.2", 901 + "@inquirer/type": "^3.0.10" 902 + }, 903 + "engines": { 904 + "node": ">=18" 905 + }, 906 + "peerDependencies": { 907 + "@types/node": ">=18" 908 + }, 909 + "peerDependenciesMeta": { 910 + "@types/node": { 911 + "optional": true 912 + } 913 + } 914 + }, 915 + "node_modules/@inquirer/prompts": { 916 + "version": "7.10.1", 917 + "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-7.10.1.tgz", 918 + "integrity": "sha512-Dx/y9bCQcXLI5ooQ5KyvA4FTgeo2jYj/7plWfV5Ak5wDPKQZgudKez2ixyfz7tKXzcJciTxqLeK7R9HItwiByg==", 919 + "license": "MIT", 920 + "dependencies": { 921 + "@inquirer/checkbox": "^4.3.2", 922 + "@inquirer/confirm": "^5.1.21", 923 + "@inquirer/editor": "^4.2.23", 924 + "@inquirer/expand": "^4.0.23", 925 + "@inquirer/input": "^4.3.1", 926 + "@inquirer/number": "^3.0.23", 927 + "@inquirer/password": "^4.0.23", 928 + "@inquirer/rawlist": "^4.1.11", 929 + "@inquirer/search": "^3.2.2", 930 + "@inquirer/select": "^4.4.2" 931 + }, 932 + "engines": { 933 + "node": ">=18" 934 + }, 935 + "peerDependencies": { 936 + "@types/node": ">=18" 937 + }, 938 + "peerDependenciesMeta": { 939 + "@types/node": { 940 + "optional": true 941 + } 942 + } 943 + }, 944 + "node_modules/@inquirer/rawlist": { 945 + "version": "4.1.11", 946 + "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-4.1.11.tgz", 947 + "integrity": "sha512-+LLQB8XGr3I5LZN/GuAHo+GpDJegQwuPARLChlMICNdwW7OwV2izlCSCxN6cqpL0sMXmbKbFcItJgdQq5EBXTw==", 948 + "license": "MIT", 949 + "dependencies": { 950 + "@inquirer/core": "^10.3.2", 951 + "@inquirer/type": "^3.0.10", 952 + "yoctocolors-cjs": "^2.1.3" 953 + }, 954 + "engines": { 955 + "node": ">=18" 956 + }, 957 + "peerDependencies": { 958 + "@types/node": ">=18" 959 + }, 960 + "peerDependenciesMeta": { 961 + "@types/node": { 962 + "optional": true 963 + } 964 + } 965 + }, 966 + "node_modules/@inquirer/search": { 967 + "version": "3.2.2", 968 + "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-3.2.2.tgz", 969 + "integrity": "sha512-p2bvRfENXCZdWF/U2BXvnSI9h+tuA8iNqtUKb9UWbmLYCRQxd8WkvwWvYn+3NgYaNwdUkHytJMGG4MMLucI1kA==", 970 + "license": "MIT", 971 + "dependencies": { 972 + "@inquirer/core": "^10.3.2", 973 + "@inquirer/figures": "^1.0.15", 974 + "@inquirer/type": "^3.0.10", 975 + "yoctocolors-cjs": "^2.1.3" 976 + }, 977 + "engines": { 978 + "node": ">=18" 979 + }, 980 + "peerDependencies": { 981 + "@types/node": ">=18" 982 + }, 983 + "peerDependenciesMeta": { 984 + "@types/node": { 985 + "optional": true 986 + } 987 + } 988 + }, 989 + "node_modules/@inquirer/select": { 990 + "version": "4.4.2", 991 + "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-4.4.2.tgz", 992 + "integrity": "sha512-l4xMuJo55MAe+N7Qr4rX90vypFwCajSakx59qe/tMaC1aEHWLyw68wF4o0A4SLAY4E0nd+Vt+EyskeDIqu1M6w==", 993 + "license": "MIT", 994 + "dependencies": { 995 + "@inquirer/ansi": "^1.0.2", 996 + "@inquirer/core": "^10.3.2", 997 + "@inquirer/figures": "^1.0.15", 998 + "@inquirer/type": "^3.0.10", 999 + "yoctocolors-cjs": "^2.1.3" 1000 + }, 1001 + "engines": { 1002 + "node": ">=18" 1003 + }, 1004 + "peerDependencies": { 1005 + "@types/node": ">=18" 1006 + }, 1007 + "peerDependenciesMeta": { 1008 + "@types/node": { 1009 + "optional": true 1010 + } 1011 + } 1012 + }, 1013 + "node_modules/@inquirer/type": { 1014 + "version": "3.0.10", 1015 + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-3.0.10.tgz", 1016 + "integrity": "sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA==", 1017 + "license": "MIT", 1018 + "engines": { 1019 + "node": ">=18" 1020 + }, 1021 + "peerDependencies": { 1022 + "@types/node": ">=18" 1023 + }, 1024 + "peerDependenciesMeta": { 1025 + "@types/node": { 1026 + "optional": true 1027 + } 1028 + } 1029 + }, 1030 + "node_modules/@oclif/core": { 1031 + "version": "4.8.0", 1032 + "resolved": "https://registry.npmjs.org/@oclif/core/-/core-4.8.0.tgz", 1033 + "integrity": "sha512-jteNUQKgJHLHFbbz806aGZqf+RJJ7t4gwF4MYa8fCwCxQ8/klJNWc0MvaJiBebk7Mc+J39mdlsB4XraaCKznFw==", 1034 + "license": "MIT", 1035 + "dependencies": { 1036 + "ansi-escapes": "^4.3.2", 1037 + "ansis": "^3.17.0", 1038 + "clean-stack": "^3.0.1", 1039 + "cli-spinners": "^2.9.2", 1040 + "debug": "^4.4.3", 1041 + "ejs": "^3.1.10", 1042 + "get-package-type": "^0.1.0", 1043 + "indent-string": "^4.0.0", 1044 + "is-wsl": "^2.2.0", 1045 + "lilconfig": "^3.1.3", 1046 + "minimatch": "^9.0.5", 1047 + "semver": "^7.7.3", 1048 + "string-width": "^4.2.3", 1049 + "supports-color": "^8", 1050 + "tinyglobby": "^0.2.14", 1051 + "widest-line": "^3.1.0", 1052 + "wordwrap": "^1.0.0", 1053 + "wrap-ansi": "^7.0.0" 1054 + }, 1055 + "engines": { 1056 + "node": ">=18.0.0" 1057 + } 1058 + }, 1059 + "node_modules/@oclif/plugin-autocomplete": { 1060 + "version": "3.2.39", 1061 + "resolved": "https://registry.npmjs.org/@oclif/plugin-autocomplete/-/plugin-autocomplete-3.2.39.tgz", 1062 + "integrity": "sha512-OwAZNnSpuDjKyhAwoOJkFWxGswPFKBB4hpNIMsj6PUtbKwGBPmD+2wGGPgTsDioVwLmUELSb2bZ+1dxHfvXmvg==", 1063 + "license": "MIT", 1064 + "dependencies": { 1065 + "@oclif/core": "^4", 1066 + "ansis": "^3.16.0", 1067 + "debug": "^4.4.1", 1068 + "ejs": "^3.1.10" 1069 + }, 1070 + "engines": { 1071 + "node": ">=18.0.0" 1072 + } 1073 + }, 1074 + "node_modules/@oclif/plugin-help": { 1075 + "version": "6.2.36", 1076 + "resolved": "https://registry.npmjs.org/@oclif/plugin-help/-/plugin-help-6.2.36.tgz", 1077 + "integrity": "sha512-NBQIg5hEMhvdbi4mSrdqRGl5XJ0bqTAHq6vDCCCDXUcfVtdk3ZJbSxtRVWyVvo9E28vwqu6MZyHOJylevqcHbA==", 1078 + "license": "MIT", 1079 + "dependencies": { 1080 + "@oclif/core": "^4" 1081 + }, 1082 + "engines": { 1083 + "node": ">=18.0.0" 1084 + } 1085 + }, 1086 + "node_modules/@oclif/plugin-not-found": { 1087 + "version": "3.2.73", 1088 + "resolved": "https://registry.npmjs.org/@oclif/plugin-not-found/-/plugin-not-found-3.2.73.tgz", 1089 + "integrity": "sha512-2bQieTGI9XNFe9hKmXQjJmHV5rZw+yn7Rud1+C5uLEo8GaT89KZbiLTJgL35tGILahy/cB6+WAs812wjw7TK6w==", 1090 + "license": "MIT", 1091 + "dependencies": { 1092 + "@inquirer/prompts": "^7.10.1", 1093 + "@oclif/core": "^4.8.0", 1094 + "ansis": "^3.17.0", 1095 + "fast-levenshtein": "^3.0.0" 1096 + }, 1097 + "engines": { 1098 + "node": ">=18.0.0" 1099 + } 1100 + }, 1101 + "node_modules/@raycast/api": { 1102 + "version": "1.104.1", 1103 + "resolved": "https://registry.npmjs.org/@raycast/api/-/api-1.104.1.tgz", 1104 + "integrity": "sha512-5v52JDzAAoCA6/JOoBfsgCXK4fzIY02lvMH0IA3ghuxZuk8i2ID2rtPkTuIAbebpkILADB7gP4yaBphkMLiCJA==", 1105 + "license": "MIT", 1106 + "peer": true, 1107 + "dependencies": { 1108 + "@oclif/core": "^4.5.4", 1109 + "@oclif/plugin-autocomplete": "^3.2.35", 1110 + "@oclif/plugin-help": "^6.2.33", 1111 + "@oclif/plugin-not-found": "^3.2.68", 1112 + "@types/node": "22.13.10", 1113 + "@types/react": "19.0.10", 1114 + "esbuild": "^0.25.10", 1115 + "react": "19.0.0" 1116 + }, 1117 + "bin": { 1118 + "ray": "bin/run.js" 1119 + }, 1120 + "engines": { 1121 + "node": ">=22.14.0" 1122 + }, 1123 + "peerDependencies": { 1124 + "@types/node": "22.13.10", 1125 + "@types/react": "19.0.10", 1126 + "react-devtools": "6.1.1" 1127 + }, 1128 + "peerDependenciesMeta": { 1129 + "@types/node": { 1130 + "optional": true 1131 + }, 1132 + "@types/react": { 1133 + "optional": true 1134 + }, 1135 + "react-devtools": { 1136 + "optional": true 1137 + } 1138 + } 1139 + }, 1140 + "node_modules/@raycast/eslint-config": { 1141 + "version": "2.1.1", 1142 + "resolved": "https://registry.npmjs.org/@raycast/eslint-config/-/eslint-config-2.1.1.tgz", 1143 + "integrity": "sha512-W0kxF+FJ+BYQn0EKIV739j2ZrHEtjo/LclsoZgUWg3t364Dq75XKcjqYFYx+59/DBaamY0amdajlfuDAf6veAg==", 1144 + "dev": true, 1145 + "license": "MIT", 1146 + "dependencies": { 1147 + "@eslint/js": "^9.36.0", 1148 + "@raycast/eslint-plugin": "^2.1.1", 1149 + "eslint-config-prettier": "^10.1.8", 1150 + "globals": "^16.4.0", 1151 + "typescript-eslint": "^8.45.0" 1152 + }, 1153 + "peerDependencies": { 1154 + "eslint": ">=8.23.0", 1155 + "prettier": ">=2", 1156 + "typescript": ">=4" 1157 + } 1158 + }, 1159 + "node_modules/@raycast/eslint-plugin": { 1160 + "version": "2.1.1", 1161 + "resolved": "https://registry.npmjs.org/@raycast/eslint-plugin/-/eslint-plugin-2.1.1.tgz", 1162 + "integrity": "sha512-r2gs8uIlNp6I2mLOyN/kReGlvigzEeuyQPl4yw7nwLy8Zxjfjhg8txMViaBux8juBWBxbSWq/IfW6ZA50oeOHQ==", 1163 + "dev": true, 1164 + "license": "MIT", 1165 + "dependencies": { 1166 + "@typescript-eslint/utils": "^8.26.1" 1167 + }, 1168 + "peerDependencies": { 1169 + "eslint": ">=8.23.0" 1170 + } 1171 + }, 1172 + "node_modules/@raycast/utils": { 1173 + "version": "2.2.2", 1174 + "resolved": "https://registry.npmjs.org/@raycast/utils/-/utils-2.2.2.tgz", 1175 + "integrity": "sha512-tZcyWCHZvz4L/i1CGEnSZkBoK6wwX1pzlTKjcWWugbrQyG0QCMOxjKJfRC/iNkD+hHaqhMWUj4Y0LNo/NknvFw==", 1176 + "license": "MIT", 1177 + "dependencies": { 1178 + "dequal": "^2.0.3" 1179 + }, 1180 + "peerDependencies": { 1181 + "@raycast/api": ">=1.99.4", 1182 + "react": ">=19.0.0" 1183 + }, 1184 + "peerDependenciesMeta": { 1185 + "react": { 1186 + "optional": true 1187 + } 1188 + } 1189 + }, 1190 + "node_modules/@types/estree": { 1191 + "version": "1.0.8", 1192 + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", 1193 + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", 1194 + "dev": true, 1195 + "license": "MIT" 1196 + }, 1197 + "node_modules/@types/json-schema": { 1198 + "version": "7.0.15", 1199 + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", 1200 + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", 1201 + "dev": true, 1202 + "license": "MIT" 1203 + }, 1204 + "node_modules/@types/node": { 1205 + "version": "22.13.10", 1206 + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.10.tgz", 1207 + "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==", 1208 + "license": "MIT", 1209 + "peer": true, 1210 + "dependencies": { 1211 + "undici-types": "~6.20.0" 1212 + } 1213 + }, 1214 + "node_modules/@types/react": { 1215 + "version": "19.0.10", 1216 + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.0.10.tgz", 1217 + "integrity": "sha512-JuRQ9KXLEjaUNjTWpzuR231Z2WpIwczOkBEIvbHNCzQefFIT0L8IqE6NV6ULLyC1SI/i234JnDoMkfg+RjQj2g==", 1218 + "license": "MIT", 1219 + "dependencies": { 1220 + "csstype": "^3.0.2" 1221 + } 1222 + }, 1223 + "node_modules/@typescript-eslint/eslint-plugin": { 1224 + "version": "8.53.0", 1225 + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.53.0.tgz", 1226 + "integrity": "sha512-eEXsVvLPu8Z4PkFibtuFJLJOTAV/nPdgtSjkGoPpddpFk3/ym2oy97jynY6ic2m6+nc5M8SE1e9v/mHKsulcJg==", 1227 + "dev": true, 1228 + "license": "MIT", 1229 + "dependencies": { 1230 + "@eslint-community/regexpp": "^4.12.2", 1231 + "@typescript-eslint/scope-manager": "8.53.0", 1232 + "@typescript-eslint/type-utils": "8.53.0", 1233 + "@typescript-eslint/utils": "8.53.0", 1234 + "@typescript-eslint/visitor-keys": "8.53.0", 1235 + "ignore": "^7.0.5", 1236 + "natural-compare": "^1.4.0", 1237 + "ts-api-utils": "^2.4.0" 1238 + }, 1239 + "engines": { 1240 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1241 + }, 1242 + "funding": { 1243 + "type": "opencollective", 1244 + "url": "https://opencollective.com/typescript-eslint" 1245 + }, 1246 + "peerDependencies": { 1247 + "@typescript-eslint/parser": "^8.53.0", 1248 + "eslint": "^8.57.0 || ^9.0.0", 1249 + "typescript": ">=4.8.4 <6.0.0" 1250 + } 1251 + }, 1252 + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { 1253 + "version": "7.0.5", 1254 + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", 1255 + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", 1256 + "dev": true, 1257 + "license": "MIT", 1258 + "engines": { 1259 + "node": ">= 4" 1260 + } 1261 + }, 1262 + "node_modules/@typescript-eslint/parser": { 1263 + "version": "8.53.0", 1264 + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.53.0.tgz", 1265 + "integrity": "sha512-npiaib8XzbjtzS2N4HlqPvlpxpmZ14FjSJrteZpPxGUaYPlvhzlzUZ4mZyABo0EFrOWnvyd0Xxroq//hKhtAWg==", 1266 + "dev": true, 1267 + "license": "MIT", 1268 + "peer": true, 1269 + "dependencies": { 1270 + "@typescript-eslint/scope-manager": "8.53.0", 1271 + "@typescript-eslint/types": "8.53.0", 1272 + "@typescript-eslint/typescript-estree": "8.53.0", 1273 + "@typescript-eslint/visitor-keys": "8.53.0", 1274 + "debug": "^4.4.3" 1275 + }, 1276 + "engines": { 1277 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1278 + }, 1279 + "funding": { 1280 + "type": "opencollective", 1281 + "url": "https://opencollective.com/typescript-eslint" 1282 + }, 1283 + "peerDependencies": { 1284 + "eslint": "^8.57.0 || ^9.0.0", 1285 + "typescript": ">=4.8.4 <6.0.0" 1286 + } 1287 + }, 1288 + "node_modules/@typescript-eslint/project-service": { 1289 + "version": "8.53.0", 1290 + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.53.0.tgz", 1291 + "integrity": "sha512-Bl6Gdr7NqkqIP5yP9z1JU///Nmes4Eose6L1HwpuVHwScgDPPuEWbUVhvlZmb8hy0vX9syLk5EGNL700WcBlbg==", 1292 + "dev": true, 1293 + "license": "MIT", 1294 + "dependencies": { 1295 + "@typescript-eslint/tsconfig-utils": "^8.53.0", 1296 + "@typescript-eslint/types": "^8.53.0", 1297 + "debug": "^4.4.3" 1298 + }, 1299 + "engines": { 1300 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1301 + }, 1302 + "funding": { 1303 + "type": "opencollective", 1304 + "url": "https://opencollective.com/typescript-eslint" 1305 + }, 1306 + "peerDependencies": { 1307 + "typescript": ">=4.8.4 <6.0.0" 1308 + } 1309 + }, 1310 + "node_modules/@typescript-eslint/scope-manager": { 1311 + "version": "8.53.0", 1312 + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.53.0.tgz", 1313 + "integrity": "sha512-kWNj3l01eOGSdVBnfAF2K1BTh06WS0Yet6JUgb9Cmkqaz3Jlu0fdVUjj9UI8gPidBWSMqDIglmEXifSgDT/D0g==", 1314 + "dev": true, 1315 + "license": "MIT", 1316 + "dependencies": { 1317 + "@typescript-eslint/types": "8.53.0", 1318 + "@typescript-eslint/visitor-keys": "8.53.0" 1319 + }, 1320 + "engines": { 1321 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1322 + }, 1323 + "funding": { 1324 + "type": "opencollective", 1325 + "url": "https://opencollective.com/typescript-eslint" 1326 + } 1327 + }, 1328 + "node_modules/@typescript-eslint/tsconfig-utils": { 1329 + "version": "8.53.0", 1330 + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.53.0.tgz", 1331 + "integrity": "sha512-K6Sc0R5GIG6dNoPdOooQ+KtvT5KCKAvTcY8h2rIuul19vxH5OTQk7ArKkd4yTzkw66WnNY0kPPzzcmWA+XRmiA==", 1332 + "dev": true, 1333 + "license": "MIT", 1334 + "engines": { 1335 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1336 + }, 1337 + "funding": { 1338 + "type": "opencollective", 1339 + "url": "https://opencollective.com/typescript-eslint" 1340 + }, 1341 + "peerDependencies": { 1342 + "typescript": ">=4.8.4 <6.0.0" 1343 + } 1344 + }, 1345 + "node_modules/@typescript-eslint/type-utils": { 1346 + "version": "8.53.0", 1347 + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.53.0.tgz", 1348 + "integrity": "sha512-BBAUhlx7g4SmcLhn8cnbxoxtmS7hcq39xKCgiutL3oNx1TaIp+cny51s8ewnKMpVUKQUGb41RAUWZ9kxYdovuw==", 1349 + "dev": true, 1350 + "license": "MIT", 1351 + "dependencies": { 1352 + "@typescript-eslint/types": "8.53.0", 1353 + "@typescript-eslint/typescript-estree": "8.53.0", 1354 + "@typescript-eslint/utils": "8.53.0", 1355 + "debug": "^4.4.3", 1356 + "ts-api-utils": "^2.4.0" 1357 + }, 1358 + "engines": { 1359 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1360 + }, 1361 + "funding": { 1362 + "type": "opencollective", 1363 + "url": "https://opencollective.com/typescript-eslint" 1364 + }, 1365 + "peerDependencies": { 1366 + "eslint": "^8.57.0 || ^9.0.0", 1367 + "typescript": ">=4.8.4 <6.0.0" 1368 + } 1369 + }, 1370 + "node_modules/@typescript-eslint/types": { 1371 + "version": "8.53.0", 1372 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.53.0.tgz", 1373 + "integrity": "sha512-Bmh9KX31Vlxa13+PqPvt4RzKRN1XORYSLlAE+sO1i28NkisGbTtSLFVB3l7PWdHtR3E0mVMuC7JilWJ99m2HxQ==", 1374 + "dev": true, 1375 + "license": "MIT", 1376 + "engines": { 1377 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1378 + }, 1379 + "funding": { 1380 + "type": "opencollective", 1381 + "url": "https://opencollective.com/typescript-eslint" 1382 + } 1383 + }, 1384 + "node_modules/@typescript-eslint/typescript-estree": { 1385 + "version": "8.53.0", 1386 + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.53.0.tgz", 1387 + "integrity": "sha512-pw0c0Gdo7Z4xOG987u3nJ8akL9093yEEKv8QTJ+Bhkghj1xyj8cgPaavlr9rq8h7+s6plUJ4QJYw2gCZodqmGw==", 1388 + "dev": true, 1389 + "license": "MIT", 1390 + "dependencies": { 1391 + "@typescript-eslint/project-service": "8.53.0", 1392 + "@typescript-eslint/tsconfig-utils": "8.53.0", 1393 + "@typescript-eslint/types": "8.53.0", 1394 + "@typescript-eslint/visitor-keys": "8.53.0", 1395 + "debug": "^4.4.3", 1396 + "minimatch": "^9.0.5", 1397 + "semver": "^7.7.3", 1398 + "tinyglobby": "^0.2.15", 1399 + "ts-api-utils": "^2.4.0" 1400 + }, 1401 + "engines": { 1402 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1403 + }, 1404 + "funding": { 1405 + "type": "opencollective", 1406 + "url": "https://opencollective.com/typescript-eslint" 1407 + }, 1408 + "peerDependencies": { 1409 + "typescript": ">=4.8.4 <6.0.0" 1410 + } 1411 + }, 1412 + "node_modules/@typescript-eslint/utils": { 1413 + "version": "8.53.0", 1414 + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.53.0.tgz", 1415 + "integrity": "sha512-XDY4mXTez3Z1iRDI5mbRhH4DFSt46oaIFsLg+Zn97+sYrXACziXSQcSelMybnVZ5pa1P6xYkPr5cMJyunM1ZDA==", 1416 + "dev": true, 1417 + "license": "MIT", 1418 + "dependencies": { 1419 + "@eslint-community/eslint-utils": "^4.9.1", 1420 + "@typescript-eslint/scope-manager": "8.53.0", 1421 + "@typescript-eslint/types": "8.53.0", 1422 + "@typescript-eslint/typescript-estree": "8.53.0" 1423 + }, 1424 + "engines": { 1425 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1426 + }, 1427 + "funding": { 1428 + "type": "opencollective", 1429 + "url": "https://opencollective.com/typescript-eslint" 1430 + }, 1431 + "peerDependencies": { 1432 + "eslint": "^8.57.0 || ^9.0.0", 1433 + "typescript": ">=4.8.4 <6.0.0" 1434 + } 1435 + }, 1436 + "node_modules/@typescript-eslint/visitor-keys": { 1437 + "version": "8.53.0", 1438 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.53.0.tgz", 1439 + "integrity": "sha512-LZ2NqIHFhvFwxG0qZeLL9DvdNAHPGCY5dIRwBhyYeU+LfLhcStE1ImjsuTG/WaVh3XysGaeLW8Rqq7cGkPCFvw==", 1440 + "dev": true, 1441 + "license": "MIT", 1442 + "dependencies": { 1443 + "@typescript-eslint/types": "8.53.0", 1444 + "eslint-visitor-keys": "^4.2.1" 1445 + }, 1446 + "engines": { 1447 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1448 + }, 1449 + "funding": { 1450 + "type": "opencollective", 1451 + "url": "https://opencollective.com/typescript-eslint" 1452 + } 1453 + }, 1454 + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { 1455 + "version": "4.2.1", 1456 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", 1457 + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", 1458 + "dev": true, 1459 + "license": "Apache-2.0", 1460 + "engines": { 1461 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1462 + }, 1463 + "funding": { 1464 + "url": "https://opencollective.com/eslint" 1465 + } 1466 + }, 1467 + "node_modules/acorn": { 1468 + "version": "8.15.0", 1469 + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", 1470 + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", 1471 + "dev": true, 1472 + "license": "MIT", 1473 + "peer": true, 1474 + "bin": { 1475 + "acorn": "bin/acorn" 1476 + }, 1477 + "engines": { 1478 + "node": ">=0.4.0" 1479 + } 1480 + }, 1481 + "node_modules/acorn-jsx": { 1482 + "version": "5.3.2", 1483 + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", 1484 + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", 1485 + "dev": true, 1486 + "license": "MIT", 1487 + "peerDependencies": { 1488 + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" 1489 + } 1490 + }, 1491 + "node_modules/ajv": { 1492 + "version": "6.12.6", 1493 + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 1494 + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 1495 + "dev": true, 1496 + "license": "MIT", 1497 + "dependencies": { 1498 + "fast-deep-equal": "^3.1.1", 1499 + "fast-json-stable-stringify": "^2.0.0", 1500 + "json-schema-traverse": "^0.4.1", 1501 + "uri-js": "^4.2.2" 1502 + }, 1503 + "funding": { 1504 + "type": "github", 1505 + "url": "https://github.com/sponsors/epoberezkin" 1506 + } 1507 + }, 1508 + "node_modules/ansi-escapes": { 1509 + "version": "4.3.2", 1510 + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", 1511 + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", 1512 + "license": "MIT", 1513 + "dependencies": { 1514 + "type-fest": "^0.21.3" 1515 + }, 1516 + "engines": { 1517 + "node": ">=8" 1518 + }, 1519 + "funding": { 1520 + "url": "https://github.com/sponsors/sindresorhus" 1521 + } 1522 + }, 1523 + "node_modules/ansi-regex": { 1524 + "version": "5.0.1", 1525 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 1526 + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 1527 + "license": "MIT", 1528 + "engines": { 1529 + "node": ">=8" 1530 + } 1531 + }, 1532 + "node_modules/ansi-styles": { 1533 + "version": "4.3.0", 1534 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 1535 + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 1536 + "license": "MIT", 1537 + "dependencies": { 1538 + "color-convert": "^2.0.1" 1539 + }, 1540 + "engines": { 1541 + "node": ">=8" 1542 + }, 1543 + "funding": { 1544 + "url": "https://github.com/chalk/ansi-styles?sponsor=1" 1545 + } 1546 + }, 1547 + "node_modules/ansis": { 1548 + "version": "3.17.0", 1549 + "resolved": "https://registry.npmjs.org/ansis/-/ansis-3.17.0.tgz", 1550 + "integrity": "sha512-0qWUglt9JEqLFr3w1I1pbrChn1grhaiAR2ocX1PP/flRmxgtwTzPFFFnfIlD6aMOLQZgSuCRlidD70lvx8yhzg==", 1551 + "license": "ISC", 1552 + "engines": { 1553 + "node": ">=14" 1554 + } 1555 + }, 1556 + "node_modules/argparse": { 1557 + "version": "2.0.1", 1558 + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", 1559 + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", 1560 + "dev": true, 1561 + "license": "Python-2.0" 1562 + }, 1563 + "node_modules/async": { 1564 + "version": "3.2.6", 1565 + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", 1566 + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", 1567 + "license": "MIT" 1568 + }, 1569 + "node_modules/balanced-match": { 1570 + "version": "1.0.2", 1571 + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 1572 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 1573 + "license": "MIT" 1574 + }, 1575 + "node_modules/brace-expansion": { 1576 + "version": "2.0.2", 1577 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 1578 + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 1579 + "license": "MIT", 1580 + "dependencies": { 1581 + "balanced-match": "^1.0.0" 1582 + } 1583 + }, 1584 + "node_modules/callsites": { 1585 + "version": "3.1.0", 1586 + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", 1587 + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 1588 + "dev": true, 1589 + "license": "MIT", 1590 + "engines": { 1591 + "node": ">=6" 1592 + } 1593 + }, 1594 + "node_modules/chalk": { 1595 + "version": "4.1.2", 1596 + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 1597 + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 1598 + "dev": true, 1599 + "license": "MIT", 1600 + "dependencies": { 1601 + "ansi-styles": "^4.1.0", 1602 + "supports-color": "^7.1.0" 1603 + }, 1604 + "engines": { 1605 + "node": ">=10" 1606 + }, 1607 + "funding": { 1608 + "url": "https://github.com/chalk/chalk?sponsor=1" 1609 + } 1610 + }, 1611 + "node_modules/chalk/node_modules/supports-color": { 1612 + "version": "7.2.0", 1613 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 1614 + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 1615 + "dev": true, 1616 + "license": "MIT", 1617 + "dependencies": { 1618 + "has-flag": "^4.0.0" 1619 + }, 1620 + "engines": { 1621 + "node": ">=8" 1622 + } 1623 + }, 1624 + "node_modules/chardet": { 1625 + "version": "2.1.1", 1626 + "resolved": "https://registry.npmjs.org/chardet/-/chardet-2.1.1.tgz", 1627 + "integrity": "sha512-PsezH1rqdV9VvyNhxxOW32/d75r01NY7TQCmOqomRo15ZSOKbpTFVsfjghxo6JloQUCGnH4k1LGu0R4yCLlWQQ==", 1628 + "license": "MIT" 1629 + }, 1630 + "node_modules/clean-stack": { 1631 + "version": "3.0.1", 1632 + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-3.0.1.tgz", 1633 + "integrity": "sha512-lR9wNiMRcVQjSB3a7xXGLuz4cr4wJuuXlaAEbRutGowQTmlp7R72/DOgN21e8jdwblMWl9UOJMJXarX94pzKdg==", 1634 + "license": "MIT", 1635 + "dependencies": { 1636 + "escape-string-regexp": "4.0.0" 1637 + }, 1638 + "engines": { 1639 + "node": ">=10" 1640 + }, 1641 + "funding": { 1642 + "url": "https://github.com/sponsors/sindresorhus" 1643 + } 1644 + }, 1645 + "node_modules/cli-spinners": { 1646 + "version": "2.9.2", 1647 + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", 1648 + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", 1649 + "license": "MIT", 1650 + "engines": { 1651 + "node": ">=6" 1652 + }, 1653 + "funding": { 1654 + "url": "https://github.com/sponsors/sindresorhus" 1655 + } 1656 + }, 1657 + "node_modules/cli-width": { 1658 + "version": "4.1.0", 1659 + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", 1660 + "integrity": "sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==", 1661 + "license": "ISC", 1662 + "engines": { 1663 + "node": ">= 12" 1664 + } 1665 + }, 1666 + "node_modules/color-convert": { 1667 + "version": "2.0.1", 1668 + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 1669 + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 1670 + "license": "MIT", 1671 + "dependencies": { 1672 + "color-name": "~1.1.4" 1673 + }, 1674 + "engines": { 1675 + "node": ">=7.0.0" 1676 + } 1677 + }, 1678 + "node_modules/color-name": { 1679 + "version": "1.1.4", 1680 + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 1681 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 1682 + "license": "MIT" 1683 + }, 1684 + "node_modules/concat-map": { 1685 + "version": "0.0.1", 1686 + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1687 + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", 1688 + "dev": true, 1689 + "license": "MIT" 1690 + }, 1691 + "node_modules/cross-spawn": { 1692 + "version": "7.0.6", 1693 + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", 1694 + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", 1695 + "dev": true, 1696 + "license": "MIT", 1697 + "dependencies": { 1698 + "path-key": "^3.1.0", 1699 + "shebang-command": "^2.0.0", 1700 + "which": "^2.0.1" 1701 + }, 1702 + "engines": { 1703 + "node": ">= 8" 1704 + } 1705 + }, 1706 + "node_modules/csstype": { 1707 + "version": "3.2.3", 1708 + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", 1709 + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", 1710 + "license": "MIT" 1711 + }, 1712 + "node_modules/debug": { 1713 + "version": "4.4.3", 1714 + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", 1715 + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", 1716 + "license": "MIT", 1717 + "dependencies": { 1718 + "ms": "^2.1.3" 1719 + }, 1720 + "engines": { 1721 + "node": ">=6.0" 1722 + }, 1723 + "peerDependenciesMeta": { 1724 + "supports-color": { 1725 + "optional": true 1726 + } 1727 + } 1728 + }, 1729 + "node_modules/deep-is": { 1730 + "version": "0.1.4", 1731 + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", 1732 + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", 1733 + "dev": true, 1734 + "license": "MIT" 1735 + }, 1736 + "node_modules/dequal": { 1737 + "version": "2.0.3", 1738 + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", 1739 + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", 1740 + "license": "MIT", 1741 + "engines": { 1742 + "node": ">=6" 1743 + } 1744 + }, 1745 + "node_modules/ejs": { 1746 + "version": "3.1.10", 1747 + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", 1748 + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", 1749 + "license": "Apache-2.0", 1750 + "dependencies": { 1751 + "jake": "^10.8.5" 1752 + }, 1753 + "bin": { 1754 + "ejs": "bin/cli.js" 1755 + }, 1756 + "engines": { 1757 + "node": ">=0.10.0" 1758 + } 1759 + }, 1760 + "node_modules/emoji-regex": { 1761 + "version": "8.0.0", 1762 + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 1763 + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 1764 + "license": "MIT" 1765 + }, 1766 + "node_modules/esbuild": { 1767 + "version": "0.25.12", 1768 + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", 1769 + "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", 1770 + "hasInstallScript": true, 1771 + "license": "MIT", 1772 + "bin": { 1773 + "esbuild": "bin/esbuild" 1774 + }, 1775 + "engines": { 1776 + "node": ">=18" 1777 + }, 1778 + "optionalDependencies": { 1779 + "@esbuild/aix-ppc64": "0.25.12", 1780 + "@esbuild/android-arm": "0.25.12", 1781 + "@esbuild/android-arm64": "0.25.12", 1782 + "@esbuild/android-x64": "0.25.12", 1783 + "@esbuild/darwin-arm64": "0.25.12", 1784 + "@esbuild/darwin-x64": "0.25.12", 1785 + "@esbuild/freebsd-arm64": "0.25.12", 1786 + "@esbuild/freebsd-x64": "0.25.12", 1787 + "@esbuild/linux-arm": "0.25.12", 1788 + "@esbuild/linux-arm64": "0.25.12", 1789 + "@esbuild/linux-ia32": "0.25.12", 1790 + "@esbuild/linux-loong64": "0.25.12", 1791 + "@esbuild/linux-mips64el": "0.25.12", 1792 + "@esbuild/linux-ppc64": "0.25.12", 1793 + "@esbuild/linux-riscv64": "0.25.12", 1794 + "@esbuild/linux-s390x": "0.25.12", 1795 + "@esbuild/linux-x64": "0.25.12", 1796 + "@esbuild/netbsd-arm64": "0.25.12", 1797 + "@esbuild/netbsd-x64": "0.25.12", 1798 + "@esbuild/openbsd-arm64": "0.25.12", 1799 + "@esbuild/openbsd-x64": "0.25.12", 1800 + "@esbuild/openharmony-arm64": "0.25.12", 1801 + "@esbuild/sunos-x64": "0.25.12", 1802 + "@esbuild/win32-arm64": "0.25.12", 1803 + "@esbuild/win32-ia32": "0.25.12", 1804 + "@esbuild/win32-x64": "0.25.12" 1805 + } 1806 + }, 1807 + "node_modules/escape-string-regexp": { 1808 + "version": "4.0.0", 1809 + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 1810 + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", 1811 + "license": "MIT", 1812 + "engines": { 1813 + "node": ">=10" 1814 + }, 1815 + "funding": { 1816 + "url": "https://github.com/sponsors/sindresorhus" 1817 + } 1818 + }, 1819 + "node_modules/eslint": { 1820 + "version": "9.39.2", 1821 + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz", 1822 + "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", 1823 + "dev": true, 1824 + "license": "MIT", 1825 + "peer": true, 1826 + "dependencies": { 1827 + "@eslint-community/eslint-utils": "^4.8.0", 1828 + "@eslint-community/regexpp": "^4.12.1", 1829 + "@eslint/config-array": "^0.21.1", 1830 + "@eslint/config-helpers": "^0.4.2", 1831 + "@eslint/core": "^0.17.0", 1832 + "@eslint/eslintrc": "^3.3.1", 1833 + "@eslint/js": "9.39.2", 1834 + "@eslint/plugin-kit": "^0.4.1", 1835 + "@humanfs/node": "^0.16.6", 1836 + "@humanwhocodes/module-importer": "^1.0.1", 1837 + "@humanwhocodes/retry": "^0.4.2", 1838 + "@types/estree": "^1.0.6", 1839 + "ajv": "^6.12.4", 1840 + "chalk": "^4.0.0", 1841 + "cross-spawn": "^7.0.6", 1842 + "debug": "^4.3.2", 1843 + "escape-string-regexp": "^4.0.0", 1844 + "eslint-scope": "^8.4.0", 1845 + "eslint-visitor-keys": "^4.2.1", 1846 + "espree": "^10.4.0", 1847 + "esquery": "^1.5.0", 1848 + "esutils": "^2.0.2", 1849 + "fast-deep-equal": "^3.1.3", 1850 + "file-entry-cache": "^8.0.0", 1851 + "find-up": "^5.0.0", 1852 + "glob-parent": "^6.0.2", 1853 + "ignore": "^5.2.0", 1854 + "imurmurhash": "^0.1.4", 1855 + "is-glob": "^4.0.0", 1856 + "json-stable-stringify-without-jsonify": "^1.0.1", 1857 + "lodash.merge": "^4.6.2", 1858 + "minimatch": "^3.1.2", 1859 + "natural-compare": "^1.4.0", 1860 + "optionator": "^0.9.3" 1861 + }, 1862 + "bin": { 1863 + "eslint": "bin/eslint.js" 1864 + }, 1865 + "engines": { 1866 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1867 + }, 1868 + "funding": { 1869 + "url": "https://eslint.org/donate" 1870 + }, 1871 + "peerDependencies": { 1872 + "jiti": "*" 1873 + }, 1874 + "peerDependenciesMeta": { 1875 + "jiti": { 1876 + "optional": true 1877 + } 1878 + } 1879 + }, 1880 + "node_modules/eslint-config-prettier": { 1881 + "version": "10.1.8", 1882 + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.8.tgz", 1883 + "integrity": "sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==", 1884 + "dev": true, 1885 + "license": "MIT", 1886 + "bin": { 1887 + "eslint-config-prettier": "bin/cli.js" 1888 + }, 1889 + "funding": { 1890 + "url": "https://opencollective.com/eslint-config-prettier" 1891 + }, 1892 + "peerDependencies": { 1893 + "eslint": ">=7.0.0" 1894 + } 1895 + }, 1896 + "node_modules/eslint-scope": { 1897 + "version": "8.4.0", 1898 + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", 1899 + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", 1900 + "dev": true, 1901 + "license": "BSD-2-Clause", 1902 + "dependencies": { 1903 + "esrecurse": "^4.3.0", 1904 + "estraverse": "^5.2.0" 1905 + }, 1906 + "engines": { 1907 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1908 + }, 1909 + "funding": { 1910 + "url": "https://opencollective.com/eslint" 1911 + } 1912 + }, 1913 + "node_modules/eslint-visitor-keys": { 1914 + "version": "3.4.3", 1915 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", 1916 + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", 1917 + "dev": true, 1918 + "license": "Apache-2.0", 1919 + "engines": { 1920 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 1921 + }, 1922 + "funding": { 1923 + "url": "https://opencollective.com/eslint" 1924 + } 1925 + }, 1926 + "node_modules/eslint/node_modules/brace-expansion": { 1927 + "version": "1.1.12", 1928 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", 1929 + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", 1930 + "dev": true, 1931 + "license": "MIT", 1932 + "dependencies": { 1933 + "balanced-match": "^1.0.0", 1934 + "concat-map": "0.0.1" 1935 + } 1936 + }, 1937 + "node_modules/eslint/node_modules/eslint-visitor-keys": { 1938 + "version": "4.2.1", 1939 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", 1940 + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", 1941 + "dev": true, 1942 + "license": "Apache-2.0", 1943 + "engines": { 1944 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1945 + }, 1946 + "funding": { 1947 + "url": "https://opencollective.com/eslint" 1948 + } 1949 + }, 1950 + "node_modules/eslint/node_modules/minimatch": { 1951 + "version": "3.1.2", 1952 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 1953 + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 1954 + "dev": true, 1955 + "license": "ISC", 1956 + "dependencies": { 1957 + "brace-expansion": "^1.1.7" 1958 + }, 1959 + "engines": { 1960 + "node": "*" 1961 + } 1962 + }, 1963 + "node_modules/espree": { 1964 + "version": "10.4.0", 1965 + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", 1966 + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", 1967 + "dev": true, 1968 + "license": "BSD-2-Clause", 1969 + "dependencies": { 1970 + "acorn": "^8.15.0", 1971 + "acorn-jsx": "^5.3.2", 1972 + "eslint-visitor-keys": "^4.2.1" 1973 + }, 1974 + "engines": { 1975 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1976 + }, 1977 + "funding": { 1978 + "url": "https://opencollective.com/eslint" 1979 + } 1980 + }, 1981 + "node_modules/espree/node_modules/eslint-visitor-keys": { 1982 + "version": "4.2.1", 1983 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", 1984 + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", 1985 + "dev": true, 1986 + "license": "Apache-2.0", 1987 + "engines": { 1988 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1989 + }, 1990 + "funding": { 1991 + "url": "https://opencollective.com/eslint" 1992 + } 1993 + }, 1994 + "node_modules/esquery": { 1995 + "version": "1.7.0", 1996 + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", 1997 + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", 1998 + "dev": true, 1999 + "license": "BSD-3-Clause", 2000 + "dependencies": { 2001 + "estraverse": "^5.1.0" 2002 + }, 2003 + "engines": { 2004 + "node": ">=0.10" 2005 + } 2006 + }, 2007 + "node_modules/esrecurse": { 2008 + "version": "4.3.0", 2009 + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", 2010 + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", 2011 + "dev": true, 2012 + "license": "BSD-2-Clause", 2013 + "dependencies": { 2014 + "estraverse": "^5.2.0" 2015 + }, 2016 + "engines": { 2017 + "node": ">=4.0" 2018 + } 2019 + }, 2020 + "node_modules/estraverse": { 2021 + "version": "5.3.0", 2022 + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", 2023 + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", 2024 + "dev": true, 2025 + "license": "BSD-2-Clause", 2026 + "engines": { 2027 + "node": ">=4.0" 2028 + } 2029 + }, 2030 + "node_modules/esutils": { 2031 + "version": "2.0.3", 2032 + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 2033 + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 2034 + "dev": true, 2035 + "license": "BSD-2-Clause", 2036 + "engines": { 2037 + "node": ">=0.10.0" 2038 + } 2039 + }, 2040 + "node_modules/fast-deep-equal": { 2041 + "version": "3.1.3", 2042 + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 2043 + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 2044 + "dev": true, 2045 + "license": "MIT" 2046 + }, 2047 + "node_modules/fast-json-stable-stringify": { 2048 + "version": "2.1.0", 2049 + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 2050 + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 2051 + "dev": true, 2052 + "license": "MIT" 2053 + }, 2054 + "node_modules/fast-levenshtein": { 2055 + "version": "3.0.0", 2056 + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-3.0.0.tgz", 2057 + "integrity": "sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ==", 2058 + "license": "MIT", 2059 + "dependencies": { 2060 + "fastest-levenshtein": "^1.0.7" 2061 + } 2062 + }, 2063 + "node_modules/fastest-levenshtein": { 2064 + "version": "1.0.16", 2065 + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", 2066 + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", 2067 + "license": "MIT", 2068 + "engines": { 2069 + "node": ">= 4.9.1" 2070 + } 2071 + }, 2072 + "node_modules/fdir": { 2073 + "version": "6.5.0", 2074 + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", 2075 + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", 2076 + "license": "MIT", 2077 + "engines": { 2078 + "node": ">=12.0.0" 2079 + }, 2080 + "peerDependencies": { 2081 + "picomatch": "^3 || ^4" 2082 + }, 2083 + "peerDependenciesMeta": { 2084 + "picomatch": { 2085 + "optional": true 2086 + } 2087 + } 2088 + }, 2089 + "node_modules/file-entry-cache": { 2090 + "version": "8.0.0", 2091 + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", 2092 + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", 2093 + "dev": true, 2094 + "license": "MIT", 2095 + "dependencies": { 2096 + "flat-cache": "^4.0.0" 2097 + }, 2098 + "engines": { 2099 + "node": ">=16.0.0" 2100 + } 2101 + }, 2102 + "node_modules/filelist": { 2103 + "version": "1.0.4", 2104 + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", 2105 + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", 2106 + "license": "Apache-2.0", 2107 + "dependencies": { 2108 + "minimatch": "^5.0.1" 2109 + } 2110 + }, 2111 + "node_modules/filelist/node_modules/minimatch": { 2112 + "version": "5.1.6", 2113 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", 2114 + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", 2115 + "license": "ISC", 2116 + "dependencies": { 2117 + "brace-expansion": "^2.0.1" 2118 + }, 2119 + "engines": { 2120 + "node": ">=10" 2121 + } 2122 + }, 2123 + "node_modules/find-up": { 2124 + "version": "5.0.0", 2125 + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", 2126 + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", 2127 + "dev": true, 2128 + "license": "MIT", 2129 + "dependencies": { 2130 + "locate-path": "^6.0.0", 2131 + "path-exists": "^4.0.0" 2132 + }, 2133 + "engines": { 2134 + "node": ">=10" 2135 + }, 2136 + "funding": { 2137 + "url": "https://github.com/sponsors/sindresorhus" 2138 + } 2139 + }, 2140 + "node_modules/flat-cache": { 2141 + "version": "4.0.1", 2142 + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", 2143 + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", 2144 + "dev": true, 2145 + "license": "MIT", 2146 + "dependencies": { 2147 + "flatted": "^3.2.9", 2148 + "keyv": "^4.5.4" 2149 + }, 2150 + "engines": { 2151 + "node": ">=16" 2152 + } 2153 + }, 2154 + "node_modules/flatted": { 2155 + "version": "3.3.3", 2156 + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", 2157 + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", 2158 + "dev": true, 2159 + "license": "ISC" 2160 + }, 2161 + "node_modules/get-package-type": { 2162 + "version": "0.1.0", 2163 + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", 2164 + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", 2165 + "license": "MIT", 2166 + "engines": { 2167 + "node": ">=8.0.0" 2168 + } 2169 + }, 2170 + "node_modules/glob-parent": { 2171 + "version": "6.0.2", 2172 + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", 2173 + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 2174 + "dev": true, 2175 + "license": "ISC", 2176 + "dependencies": { 2177 + "is-glob": "^4.0.3" 2178 + }, 2179 + "engines": { 2180 + "node": ">=10.13.0" 2181 + } 2182 + }, 2183 + "node_modules/globals": { 2184 + "version": "16.5.0", 2185 + "resolved": "https://registry.npmjs.org/globals/-/globals-16.5.0.tgz", 2186 + "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==", 2187 + "dev": true, 2188 + "license": "MIT", 2189 + "engines": { 2190 + "node": ">=18" 2191 + }, 2192 + "funding": { 2193 + "url": "https://github.com/sponsors/sindresorhus" 2194 + } 2195 + }, 2196 + "node_modules/has-flag": { 2197 + "version": "4.0.0", 2198 + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 2199 + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 2200 + "license": "MIT", 2201 + "engines": { 2202 + "node": ">=8" 2203 + } 2204 + }, 2205 + "node_modules/iconv-lite": { 2206 + "version": "0.7.2", 2207 + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.2.tgz", 2208 + "integrity": "sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw==", 2209 + "license": "MIT", 2210 + "dependencies": { 2211 + "safer-buffer": ">= 2.1.2 < 3.0.0" 2212 + }, 2213 + "engines": { 2214 + "node": ">=0.10.0" 2215 + }, 2216 + "funding": { 2217 + "type": "opencollective", 2218 + "url": "https://opencollective.com/express" 2219 + } 2220 + }, 2221 + "node_modules/ignore": { 2222 + "version": "5.3.2", 2223 + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", 2224 + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", 2225 + "dev": true, 2226 + "license": "MIT", 2227 + "engines": { 2228 + "node": ">= 4" 2229 + } 2230 + }, 2231 + "node_modules/import-fresh": { 2232 + "version": "3.3.1", 2233 + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", 2234 + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", 2235 + "dev": true, 2236 + "license": "MIT", 2237 + "dependencies": { 2238 + "parent-module": "^1.0.0", 2239 + "resolve-from": "^4.0.0" 2240 + }, 2241 + "engines": { 2242 + "node": ">=6" 2243 + }, 2244 + "funding": { 2245 + "url": "https://github.com/sponsors/sindresorhus" 2246 + } 2247 + }, 2248 + "node_modules/imurmurhash": { 2249 + "version": "0.1.4", 2250 + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 2251 + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", 2252 + "dev": true, 2253 + "license": "MIT", 2254 + "engines": { 2255 + "node": ">=0.8.19" 2256 + } 2257 + }, 2258 + "node_modules/indent-string": { 2259 + "version": "4.0.0", 2260 + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", 2261 + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", 2262 + "license": "MIT", 2263 + "engines": { 2264 + "node": ">=8" 2265 + } 2266 + }, 2267 + "node_modules/is-docker": { 2268 + "version": "2.2.1", 2269 + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", 2270 + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", 2271 + "license": "MIT", 2272 + "bin": { 2273 + "is-docker": "cli.js" 2274 + }, 2275 + "engines": { 2276 + "node": ">=8" 2277 + }, 2278 + "funding": { 2279 + "url": "https://github.com/sponsors/sindresorhus" 2280 + } 2281 + }, 2282 + "node_modules/is-extglob": { 2283 + "version": "2.1.1", 2284 + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 2285 + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 2286 + "dev": true, 2287 + "license": "MIT", 2288 + "engines": { 2289 + "node": ">=0.10.0" 2290 + } 2291 + }, 2292 + "node_modules/is-fullwidth-code-point": { 2293 + "version": "3.0.0", 2294 + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 2295 + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 2296 + "license": "MIT", 2297 + "engines": { 2298 + "node": ">=8" 2299 + } 2300 + }, 2301 + "node_modules/is-glob": { 2302 + "version": "4.0.3", 2303 + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 2304 + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 2305 + "dev": true, 2306 + "license": "MIT", 2307 + "dependencies": { 2308 + "is-extglob": "^2.1.1" 2309 + }, 2310 + "engines": { 2311 + "node": ">=0.10.0" 2312 + } 2313 + }, 2314 + "node_modules/is-wsl": { 2315 + "version": "2.2.0", 2316 + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", 2317 + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", 2318 + "license": "MIT", 2319 + "dependencies": { 2320 + "is-docker": "^2.0.0" 2321 + }, 2322 + "engines": { 2323 + "node": ">=8" 2324 + } 2325 + }, 2326 + "node_modules/isexe": { 2327 + "version": "2.0.0", 2328 + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 2329 + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", 2330 + "dev": true, 2331 + "license": "ISC" 2332 + }, 2333 + "node_modules/jake": { 2334 + "version": "10.9.4", 2335 + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.4.tgz", 2336 + "integrity": "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==", 2337 + "license": "Apache-2.0", 2338 + "dependencies": { 2339 + "async": "^3.2.6", 2340 + "filelist": "^1.0.4", 2341 + "picocolors": "^1.1.1" 2342 + }, 2343 + "bin": { 2344 + "jake": "bin/cli.js" 2345 + }, 2346 + "engines": { 2347 + "node": ">=10" 2348 + } 2349 + }, 2350 + "node_modules/js-yaml": { 2351 + "version": "4.1.1", 2352 + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", 2353 + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", 2354 + "dev": true, 2355 + "license": "MIT", 2356 + "dependencies": { 2357 + "argparse": "^2.0.1" 2358 + }, 2359 + "bin": { 2360 + "js-yaml": "bin/js-yaml.js" 2361 + } 2362 + }, 2363 + "node_modules/json-buffer": { 2364 + "version": "3.0.1", 2365 + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", 2366 + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", 2367 + "dev": true, 2368 + "license": "MIT" 2369 + }, 2370 + "node_modules/json-schema-traverse": { 2371 + "version": "0.4.1", 2372 + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 2373 + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 2374 + "dev": true, 2375 + "license": "MIT" 2376 + }, 2377 + "node_modules/json-stable-stringify-without-jsonify": { 2378 + "version": "1.0.1", 2379 + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 2380 + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", 2381 + "dev": true, 2382 + "license": "MIT" 2383 + }, 2384 + "node_modules/keyv": { 2385 + "version": "4.5.4", 2386 + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", 2387 + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", 2388 + "dev": true, 2389 + "license": "MIT", 2390 + "dependencies": { 2391 + "json-buffer": "3.0.1" 2392 + } 2393 + }, 2394 + "node_modules/levn": { 2395 + "version": "0.4.1", 2396 + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", 2397 + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", 2398 + "dev": true, 2399 + "license": "MIT", 2400 + "dependencies": { 2401 + "prelude-ls": "^1.2.1", 2402 + "type-check": "~0.4.0" 2403 + }, 2404 + "engines": { 2405 + "node": ">= 0.8.0" 2406 + } 2407 + }, 2408 + "node_modules/lilconfig": { 2409 + "version": "3.1.3", 2410 + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", 2411 + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", 2412 + "license": "MIT", 2413 + "engines": { 2414 + "node": ">=14" 2415 + }, 2416 + "funding": { 2417 + "url": "https://github.com/sponsors/antonk52" 2418 + } 2419 + }, 2420 + "node_modules/locate-path": { 2421 + "version": "6.0.0", 2422 + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", 2423 + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", 2424 + "dev": true, 2425 + "license": "MIT", 2426 + "dependencies": { 2427 + "p-locate": "^5.0.0" 2428 + }, 2429 + "engines": { 2430 + "node": ">=10" 2431 + }, 2432 + "funding": { 2433 + "url": "https://github.com/sponsors/sindresorhus" 2434 + } 2435 + }, 2436 + "node_modules/lodash.merge": { 2437 + "version": "4.6.2", 2438 + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", 2439 + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", 2440 + "dev": true, 2441 + "license": "MIT" 2442 + }, 2443 + "node_modules/minimatch": { 2444 + "version": "9.0.5", 2445 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 2446 + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 2447 + "license": "ISC", 2448 + "dependencies": { 2449 + "brace-expansion": "^2.0.1" 2450 + }, 2451 + "engines": { 2452 + "node": ">=16 || 14 >=14.17" 2453 + }, 2454 + "funding": { 2455 + "url": "https://github.com/sponsors/isaacs" 2456 + } 2457 + }, 2458 + "node_modules/ms": { 2459 + "version": "2.1.3", 2460 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 2461 + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", 2462 + "license": "MIT" 2463 + }, 2464 + "node_modules/mute-stream": { 2465 + "version": "2.0.0", 2466 + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-2.0.0.tgz", 2467 + "integrity": "sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==", 2468 + "license": "ISC", 2469 + "engines": { 2470 + "node": "^18.17.0 || >=20.5.0" 2471 + } 2472 + }, 2473 + "node_modules/natural-compare": { 2474 + "version": "1.4.0", 2475 + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 2476 + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", 2477 + "dev": true, 2478 + "license": "MIT" 2479 + }, 2480 + "node_modules/optionator": { 2481 + "version": "0.9.4", 2482 + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", 2483 + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", 2484 + "dev": true, 2485 + "license": "MIT", 2486 + "dependencies": { 2487 + "deep-is": "^0.1.3", 2488 + "fast-levenshtein": "^2.0.6", 2489 + "levn": "^0.4.1", 2490 + "prelude-ls": "^1.2.1", 2491 + "type-check": "^0.4.0", 2492 + "word-wrap": "^1.2.5" 2493 + }, 2494 + "engines": { 2495 + "node": ">= 0.8.0" 2496 + } 2497 + }, 2498 + "node_modules/optionator/node_modules/fast-levenshtein": { 2499 + "version": "2.0.6", 2500 + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 2501 + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", 2502 + "dev": true, 2503 + "license": "MIT" 2504 + }, 2505 + "node_modules/p-limit": { 2506 + "version": "3.1.0", 2507 + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", 2508 + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", 2509 + "dev": true, 2510 + "license": "MIT", 2511 + "dependencies": { 2512 + "yocto-queue": "^0.1.0" 2513 + }, 2514 + "engines": { 2515 + "node": ">=10" 2516 + }, 2517 + "funding": { 2518 + "url": "https://github.com/sponsors/sindresorhus" 2519 + } 2520 + }, 2521 + "node_modules/p-locate": { 2522 + "version": "5.0.0", 2523 + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", 2524 + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", 2525 + "dev": true, 2526 + "license": "MIT", 2527 + "dependencies": { 2528 + "p-limit": "^3.0.2" 2529 + }, 2530 + "engines": { 2531 + "node": ">=10" 2532 + }, 2533 + "funding": { 2534 + "url": "https://github.com/sponsors/sindresorhus" 2535 + } 2536 + }, 2537 + "node_modules/parent-module": { 2538 + "version": "1.0.1", 2539 + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", 2540 + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", 2541 + "dev": true, 2542 + "license": "MIT", 2543 + "dependencies": { 2544 + "callsites": "^3.0.0" 2545 + }, 2546 + "engines": { 2547 + "node": ">=6" 2548 + } 2549 + }, 2550 + "node_modules/path-exists": { 2551 + "version": "4.0.0", 2552 + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", 2553 + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", 2554 + "dev": true, 2555 + "license": "MIT", 2556 + "engines": { 2557 + "node": ">=8" 2558 + } 2559 + }, 2560 + "node_modules/path-key": { 2561 + "version": "3.1.1", 2562 + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 2563 + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 2564 + "dev": true, 2565 + "license": "MIT", 2566 + "engines": { 2567 + "node": ">=8" 2568 + } 2569 + }, 2570 + "node_modules/picocolors": { 2571 + "version": "1.1.1", 2572 + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", 2573 + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", 2574 + "license": "ISC" 2575 + }, 2576 + "node_modules/picomatch": { 2577 + "version": "4.0.3", 2578 + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", 2579 + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", 2580 + "license": "MIT", 2581 + "peer": true, 2582 + "engines": { 2583 + "node": ">=12" 2584 + }, 2585 + "funding": { 2586 + "url": "https://github.com/sponsors/jonschlinkert" 2587 + } 2588 + }, 2589 + "node_modules/prelude-ls": { 2590 + "version": "1.2.1", 2591 + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", 2592 + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", 2593 + "dev": true, 2594 + "license": "MIT", 2595 + "engines": { 2596 + "node": ">= 0.8.0" 2597 + } 2598 + }, 2599 + "node_modules/prettier": { 2600 + "version": "3.7.4", 2601 + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.7.4.tgz", 2602 + "integrity": "sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==", 2603 + "dev": true, 2604 + "license": "MIT", 2605 + "peer": true, 2606 + "bin": { 2607 + "prettier": "bin/prettier.cjs" 2608 + }, 2609 + "engines": { 2610 + "node": ">=14" 2611 + }, 2612 + "funding": { 2613 + "url": "https://github.com/prettier/prettier?sponsor=1" 2614 + } 2615 + }, 2616 + "node_modules/punycode": { 2617 + "version": "2.3.1", 2618 + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", 2619 + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", 2620 + "dev": true, 2621 + "license": "MIT", 2622 + "engines": { 2623 + "node": ">=6" 2624 + } 2625 + }, 2626 + "node_modules/react": { 2627 + "version": "19.0.0", 2628 + "resolved": "https://registry.npmjs.org/react/-/react-19.0.0.tgz", 2629 + "integrity": "sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==", 2630 + "license": "MIT", 2631 + "engines": { 2632 + "node": ">=0.10.0" 2633 + } 2634 + }, 2635 + "node_modules/resolve-from": { 2636 + "version": "4.0.0", 2637 + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", 2638 + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 2639 + "dev": true, 2640 + "license": "MIT", 2641 + "engines": { 2642 + "node": ">=4" 2643 + } 2644 + }, 2645 + "node_modules/safer-buffer": { 2646 + "version": "2.1.2", 2647 + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 2648 + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 2649 + "license": "MIT" 2650 + }, 2651 + "node_modules/semver": { 2652 + "version": "7.7.3", 2653 + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", 2654 + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", 2655 + "license": "ISC", 2656 + "bin": { 2657 + "semver": "bin/semver.js" 2658 + }, 2659 + "engines": { 2660 + "node": ">=10" 2661 + } 2662 + }, 2663 + "node_modules/shebang-command": { 2664 + "version": "2.0.0", 2665 + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 2666 + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 2667 + "dev": true, 2668 + "license": "MIT", 2669 + "dependencies": { 2670 + "shebang-regex": "^3.0.0" 2671 + }, 2672 + "engines": { 2673 + "node": ">=8" 2674 + } 2675 + }, 2676 + "node_modules/shebang-regex": { 2677 + "version": "3.0.0", 2678 + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 2679 + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 2680 + "dev": true, 2681 + "license": "MIT", 2682 + "engines": { 2683 + "node": ">=8" 2684 + } 2685 + }, 2686 + "node_modules/signal-exit": { 2687 + "version": "4.1.0", 2688 + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", 2689 + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", 2690 + "license": "ISC", 2691 + "engines": { 2692 + "node": ">=14" 2693 + }, 2694 + "funding": { 2695 + "url": "https://github.com/sponsors/isaacs" 2696 + } 2697 + }, 2698 + "node_modules/string-width": { 2699 + "version": "4.2.3", 2700 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 2701 + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 2702 + "license": "MIT", 2703 + "dependencies": { 2704 + "emoji-regex": "^8.0.0", 2705 + "is-fullwidth-code-point": "^3.0.0", 2706 + "strip-ansi": "^6.0.1" 2707 + }, 2708 + "engines": { 2709 + "node": ">=8" 2710 + } 2711 + }, 2712 + "node_modules/strip-ansi": { 2713 + "version": "6.0.1", 2714 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 2715 + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 2716 + "license": "MIT", 2717 + "dependencies": { 2718 + "ansi-regex": "^5.0.1" 2719 + }, 2720 + "engines": { 2721 + "node": ">=8" 2722 + } 2723 + }, 2724 + "node_modules/strip-json-comments": { 2725 + "version": "3.1.1", 2726 + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", 2727 + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 2728 + "dev": true, 2729 + "license": "MIT", 2730 + "engines": { 2731 + "node": ">=8" 2732 + }, 2733 + "funding": { 2734 + "url": "https://github.com/sponsors/sindresorhus" 2735 + } 2736 + }, 2737 + "node_modules/supports-color": { 2738 + "version": "8.1.1", 2739 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", 2740 + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", 2741 + "license": "MIT", 2742 + "dependencies": { 2743 + "has-flag": "^4.0.0" 2744 + }, 2745 + "engines": { 2746 + "node": ">=10" 2747 + }, 2748 + "funding": { 2749 + "url": "https://github.com/chalk/supports-color?sponsor=1" 2750 + } 2751 + }, 2752 + "node_modules/tinyglobby": { 2753 + "version": "0.2.15", 2754 + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", 2755 + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", 2756 + "license": "MIT", 2757 + "dependencies": { 2758 + "fdir": "^6.5.0", 2759 + "picomatch": "^4.0.3" 2760 + }, 2761 + "engines": { 2762 + "node": ">=12.0.0" 2763 + }, 2764 + "funding": { 2765 + "url": "https://github.com/sponsors/SuperchupuDev" 2766 + } 2767 + }, 2768 + "node_modules/ts-api-utils": { 2769 + "version": "2.4.0", 2770 + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", 2771 + "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", 2772 + "dev": true, 2773 + "license": "MIT", 2774 + "engines": { 2775 + "node": ">=18.12" 2776 + }, 2777 + "peerDependencies": { 2778 + "typescript": ">=4.8.4" 2779 + } 2780 + }, 2781 + "node_modules/type-check": { 2782 + "version": "0.4.0", 2783 + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", 2784 + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", 2785 + "dev": true, 2786 + "license": "MIT", 2787 + "dependencies": { 2788 + "prelude-ls": "^1.2.1" 2789 + }, 2790 + "engines": { 2791 + "node": ">= 0.8.0" 2792 + } 2793 + }, 2794 + "node_modules/type-fest": { 2795 + "version": "0.21.3", 2796 + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", 2797 + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", 2798 + "license": "(MIT OR CC0-1.0)", 2799 + "engines": { 2800 + "node": ">=10" 2801 + }, 2802 + "funding": { 2803 + "url": "https://github.com/sponsors/sindresorhus" 2804 + } 2805 + }, 2806 + "node_modules/typescript": { 2807 + "version": "5.9.3", 2808 + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", 2809 + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", 2810 + "dev": true, 2811 + "license": "Apache-2.0", 2812 + "peer": true, 2813 + "bin": { 2814 + "tsc": "bin/tsc", 2815 + "tsserver": "bin/tsserver" 2816 + }, 2817 + "engines": { 2818 + "node": ">=14.17" 2819 + } 2820 + }, 2821 + "node_modules/typescript-eslint": { 2822 + "version": "8.53.0", 2823 + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.53.0.tgz", 2824 + "integrity": "sha512-xHURCQNxZ1dsWn0sdOaOfCSQG0HKeqSj9OexIxrz6ypU6wHYOdX2I3D2b8s8wFSsSOYJb+6q283cLiLlkEsBYw==", 2825 + "dev": true, 2826 + "license": "MIT", 2827 + "dependencies": { 2828 + "@typescript-eslint/eslint-plugin": "8.53.0", 2829 + "@typescript-eslint/parser": "8.53.0", 2830 + "@typescript-eslint/typescript-estree": "8.53.0", 2831 + "@typescript-eslint/utils": "8.53.0" 2832 + }, 2833 + "engines": { 2834 + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2835 + }, 2836 + "funding": { 2837 + "type": "opencollective", 2838 + "url": "https://opencollective.com/typescript-eslint" 2839 + }, 2840 + "peerDependencies": { 2841 + "eslint": "^8.57.0 || ^9.0.0", 2842 + "typescript": ">=4.8.4 <6.0.0" 2843 + } 2844 + }, 2845 + "node_modules/undici-types": { 2846 + "version": "6.20.0", 2847 + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", 2848 + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", 2849 + "license": "MIT" 2850 + }, 2851 + "node_modules/uri-js": { 2852 + "version": "4.4.1", 2853 + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", 2854 + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", 2855 + "dev": true, 2856 + "license": "BSD-2-Clause", 2857 + "dependencies": { 2858 + "punycode": "^2.1.0" 2859 + } 2860 + }, 2861 + "node_modules/which": { 2862 + "version": "2.0.2", 2863 + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 2864 + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 2865 + "dev": true, 2866 + "license": "ISC", 2867 + "dependencies": { 2868 + "isexe": "^2.0.0" 2869 + }, 2870 + "bin": { 2871 + "node-which": "bin/node-which" 2872 + }, 2873 + "engines": { 2874 + "node": ">= 8" 2875 + } 2876 + }, 2877 + "node_modules/widest-line": { 2878 + "version": "3.1.0", 2879 + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 2880 + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", 2881 + "license": "MIT", 2882 + "dependencies": { 2883 + "string-width": "^4.0.0" 2884 + }, 2885 + "engines": { 2886 + "node": ">=8" 2887 + } 2888 + }, 2889 + "node_modules/word-wrap": { 2890 + "version": "1.2.5", 2891 + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", 2892 + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", 2893 + "dev": true, 2894 + "license": "MIT", 2895 + "engines": { 2896 + "node": ">=0.10.0" 2897 + } 2898 + }, 2899 + "node_modules/wordwrap": { 2900 + "version": "1.0.0", 2901 + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 2902 + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", 2903 + "license": "MIT" 2904 + }, 2905 + "node_modules/wrap-ansi": { 2906 + "version": "7.0.0", 2907 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 2908 + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 2909 + "license": "MIT", 2910 + "dependencies": { 2911 + "ansi-styles": "^4.0.0", 2912 + "string-width": "^4.1.0", 2913 + "strip-ansi": "^6.0.0" 2914 + }, 2915 + "engines": { 2916 + "node": ">=10" 2917 + }, 2918 + "funding": { 2919 + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 2920 + } 2921 + }, 2922 + "node_modules/yocto-queue": { 2923 + "version": "0.1.0", 2924 + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", 2925 + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", 2926 + "dev": true, 2927 + "license": "MIT", 2928 + "engines": { 2929 + "node": ">=10" 2930 + }, 2931 + "funding": { 2932 + "url": "https://github.com/sponsors/sindresorhus" 2933 + } 2934 + }, 2935 + "node_modules/yoctocolors-cjs": { 2936 + "version": "2.1.3", 2937 + "resolved": "https://registry.npmjs.org/yoctocolors-cjs/-/yoctocolors-cjs-2.1.3.tgz", 2938 + "integrity": "sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==", 2939 + "license": "MIT", 2940 + "engines": { 2941 + "node": ">=18" 2942 + }, 2943 + "funding": { 2944 + "url": "https://github.com/sponsors/sindresorhus" 2945 + } 2946 + } 2947 + } 2948 + }
+64
package.json
··· 1 + { 2 + "$schema": "https://www.raycast.com/schemas/extension.json", 3 + "name": "windows-terminal", 4 + "title": "Windows Terminal", 5 + "description": "Launch and manage Windows Terminal instances", 6 + "icon": "extension-icon.png", 7 + "license": "MIT", 8 + "commands": [ 9 + { 10 + "name": "open-profile", 11 + "title": "Open Profile", 12 + "description": "Creates a new Windows Terminal instance for a profile", 13 + "mode": "view", 14 + "subtitle": "Windows Terminal" 15 + } 16 + ], 17 + "preferences": [ 18 + { 19 + "type": "dropdown", 20 + "name": "release", 21 + "required": false, 22 + "title": "Windows Terminal release", 23 + "description": "Change this if you have switched Windows Terminal releases. (e.g. from stable to preview)", 24 + "data": [ 25 + { 26 + "title": "Stable", 27 + "value": "\\AppData\\Local\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json" 28 + }, 29 + { 30 + "title": "Preview", 31 + "value": "\\AppData\\Local\\Packages\\Microsoft.WindowsTerminalPreview_8wekyb3d8bbwe\\LocalState\\settings.json" 32 + } 33 + ] 34 + } 35 + ], 36 + "dependencies": { 37 + "@raycast/api": "^1.103.0", 38 + "@raycast/utils": "^2.2.1" 39 + }, 40 + "devDependencies": { 41 + "@raycast/eslint-config": "^2.1.1", 42 + "@types/node": "22.13.10", 43 + "@types/react": "19.0.10", 44 + "eslint": "^9.22.0", 45 + "prettier": "^3.5.3", 46 + "typescript": "^5.8.2" 47 + }, 48 + "scripts": { 49 + "dev": "ray develop", 50 + "lint": "ray lint", 51 + "fix-lint": "ray lint --fix", 52 + "build": "ray build", 53 + "publish": "npx @raycast/api@latest publish" 54 + }, 55 + "author": "lunaris", 56 + "platforms": [ 57 + "Windows" 58 + ], 59 + "categories": [ 60 + "Developer Tools", 61 + "Productivity", 62 + "System" 63 + ] 64 + }
+424
src/open-profile.tsx
··· 1 + import { 2 + Action, 3 + ActionPanel, 4 + Form, 5 + Icon, 6 + Keyboard, 7 + List, 8 + LocalStorage, 9 + closeMainWindow, 10 + getPreferenceValues, 11 + showToast, 12 + useNavigation, 13 + } from "@raycast/api"; 14 + import { useForm } from "@raycast/utils"; 15 + import { execFile } from "node:child_process"; 16 + import fs from "node:fs"; 17 + import os from "node:os"; 18 + import { useEffect, useState } from "react"; 19 + import { Preferences } from "./types/preferences"; 20 + import { Profile, WindowsTerminalSettings, Folder, FolderEntry } from "./types/windows-terminal"; 21 + import { getAllProfilePreferences, getProfilePreferences } from "./utils/profile-preferences"; 22 + import React from "react"; 23 + 24 + const preferences = getPreferenceValues<Preferences>(); 25 + const PROFILES = JSON.parse( 26 + fs.readFileSync(`C:\\Users\\${os.userInfo().username}${preferences.release}`, "utf8"), 27 + ) as WindowsTerminalSettings; 28 + 29 + // TEACH ME HOW TO SUSPEND 30 + // ------------------------------------------------------------------------- // 31 + // A component was suspended by an uncached promise. Creating promises inside a 32 + // Client Component or hook is not yet supported, except via a 33 + // Suspense-compatible library or framework. 34 + // ------------------------------------------------------------------------- // 35 + // this does work despite the error, though. 36 + const EditAlias = React.memo(async (props: { profile: Profile }) => { 37 + console.log("INVOK"); 38 + const { pop } = useNavigation(); 39 + const [getAlias, setAlias] = useState<string>(""); 40 + 41 + const { handleSubmit, itemProps, setValue } = useForm<{ alias: string }>({ 42 + async onSubmit(values: { alias: string }) { 43 + await LocalStorage.setItem(props.profile.guid, JSON.stringify({ alias: values.alias })); 44 + pop(); 45 + showToast({ title: `Alias set for ${props.profile.name}` }); 46 + }, 47 + validation: { 48 + alias(value) { 49 + if (!value) { 50 + return "An alias is required"; 51 + } else if (value.length >= 12) { 52 + return "Alias is too long"; 53 + } 54 + }, 55 + }, 56 + }); 57 + 58 + useEffect(() => { 59 + async function load() { 60 + const profile = await getProfilePreferences(props.profile.guid); 61 + setAlias(profile.alias); 62 + // setValue("alias", getAlias); 63 + console.log(getAlias); 64 + } 65 + load(); 66 + }, [props.profile.guid]); 67 + 68 + return ( 69 + <Form 70 + actions={ 71 + <ActionPanel> 72 + <Action.SubmitForm 73 + icon={Icon.Pencil} 74 + title={getAlias ? "Update Alias" : "Set Alias"} 75 + onSubmit={handleSubmit} 76 + /> 77 + {getAlias ? ( 78 + <Action.SubmitForm 79 + icon={Icon.Trash} 80 + title="Delete Alias" 81 + shortcut={Keyboard.Shortcut.Common.Remove} 82 + style={Action.Style.Destructive} 83 + onSubmit={async () => { 84 + await LocalStorage.removeItem(props.profile.guid); 85 + // when the profile preferences gets extended, we will use this instead 86 + // await LocalStorage.setItem(props.profile.guid, JSON.stringify({ alias: "" })); 87 + pop(); 88 + showToast({ title: `Deleted alias for ${props.profile.name}` }); 89 + }} 90 + /> 91 + ) : null} 92 + </ActionPanel> 93 + } 94 + > 95 + <Form.TextField placeholder={`Edit alias for ${props.profile.name}...`} autoFocus={true} {...itemProps.alias} /> 96 + <Form.Description 97 + text={`This will be the new alias for ${props.profile.name}. You will be able to search for this profile in this extension using the alias you have set. This will not sync to Windows Terminal, or make it accessible in root search.`} 98 + /> 99 + </Form> 100 + ); 101 + }); 102 + 103 + function Actions(props: { profile: Profile; alias: string }) { 104 + const { push } = useNavigation(); 105 + return ( 106 + <ActionPanel title={props.profile.name}> 107 + <Action 108 + icon={Icon.PlusSquare} 109 + title="Open in New Tab" 110 + onAction={async () => { 111 + execFile("wt.exe", ["new-tab", "--profile", props.profile.name]); 112 + await closeMainWindow(); 113 + }} 114 + /> 115 + <Action 116 + icon={Icon.PlusTopRightSquare} 117 + title="Open in New Window" 118 + shortcut={{ modifiers: ["ctrl"], key: "enter" }} 119 + onAction={async () => { 120 + execFile("wt.exe", ["--profile", props.profile.name]); 121 + await closeMainWindow(); 122 + }} 123 + /> 124 + {props.profile.elevate ? null : ( 125 + <Action 126 + icon={Icon.Shield} 127 + title="Open as Administrator" 128 + shortcut={{ modifiers: ["ctrl", "shift"], key: "enter" }} 129 + onAction={async () => { 130 + execFile("powershell", [ 131 + "Start-Process", 132 + "wt.exe", 133 + "-ArgumentList", 134 + `"--profile","${props.profile.name}"`, 135 + "-Verb", 136 + "RunAs", 137 + ]); 138 + await closeMainWindow(); 139 + }} 140 + /> 141 + )} 142 + <ActionPanel.Section> 143 + <Action 144 + icon={Icon.TextCursor} 145 + title={props.alias ? "Update Aliasโ€ฆ" : "Set Aliasโ€ฆ"} 146 + shortcut={{ modifiers: ["ctrl", "shift"], key: "," }} 147 + onAction={() => { 148 + push(<EditAlias profile={props.profile} />); 149 + }} 150 + /> 151 + </ActionPanel.Section> 152 + <ActionPanel.Section> 153 + <Action.Open 154 + icon={Icon.Code} 155 + shortcut={Keyboard.Shortcut.Common.Edit} 156 + title="Open settings.json" 157 + target={`C:\\Users\\${os.userInfo().username}${preferences.release}`} 158 + /> 159 + </ActionPanel.Section> 160 + </ActionPanel> 161 + ); 162 + } 163 + 164 + function FolderView(props: { folder: Folder; profiles: Profile[] }) { 165 + return ( 166 + <List searchBarPlaceholder={`Search in ${props.folder.name}...`}> 167 + <List.Section title={props.folder.name}> 168 + {props.folder.entries 169 + .filter((item) => item.type === "profile" || item.type === "folder") 170 + .map((item) => { 171 + switch (item.type) { 172 + case "profile": 173 + return ( 174 + <List.Item 175 + key={item.profile} 176 + title={props.profiles.filter((profile) => profile.guid === item.profile)[0].name} 177 + actions={<Actions profile={props.profiles.filter((profile) => profile.guid === item.profile)[0]} />} 178 + icon={ 179 + props.profiles.filter((profile) => profile.guid === item.profile)[0].source === 180 + "Windows.Terminal.SSH" 181 + ? Icon.Network 182 + : props.profiles.filter((profile) => profile.guid === item.profile)[0].source === 183 + "Windows.Terminal.VisualStudio" 184 + ? Icon.Hammer 185 + : props.profiles.filter((profile) => profile.guid === item.profile)[0].source === 186 + "Windows.Terminal.Wsl" || 187 + props.profiles.filter((profile) => profile.guid === item.profile)[0].source === 188 + "Microsoft.WSL" 189 + ? Icon.HardDrive 190 + : Icon.Terminal 191 + } 192 + /> 193 + ); 194 + case "folder": 195 + return ( 196 + <List.Item 197 + key={item.name} 198 + icon={Icon.Folder} 199 + title={item.name} 200 + accessories={[{ icon: Icon.ChevronRight }]} 201 + actions={ 202 + <ActionPanel title={item.name}> 203 + <Action.Push 204 + icon={Icon.Folder} 205 + title="Open Folder" 206 + target={<FolderView folder={item} profiles={props.profiles} />} 207 + /> 208 + <ActionPanel.Section> 209 + <Action.Open 210 + icon={Icon.Code} 211 + shortcut={Keyboard.Shortcut.Common.Edit} 212 + title="Open settings.json" 213 + target={`C:\\Users\\${os.userInfo().username}${preferences.release}`} 214 + /> 215 + </ActionPanel.Section> 216 + </ActionPanel> 217 + } 218 + /> 219 + ); 220 + } 221 + })} 222 + </List.Section> 223 + </List> 224 + ); 225 + } 226 + 227 + export default function Command() { 228 + const [getFilter, setFilter] = useState("all"); 229 + const [getAliases, setAliases] = useState<{ [key: string]: { alias: string } }>({}); 230 + 231 + useEffect(() => { 232 + async function load() { 233 + const profiles = await getAllProfilePreferences(); 234 + setAliases(profiles); 235 + } 236 + load(); 237 + }, []); 238 + 239 + return ( 240 + <List 241 + searchBarPlaceholder={ 242 + getFilter === "all" 243 + ? "Search all profiles..." 244 + : getFilter === "profiles" 245 + ? "Search profiles..." 246 + : getFilter === "ssh" 247 + ? "Search remote servers..." 248 + : getFilter === "vs" 249 + ? "Search Visual Studio profiles..." 250 + : getFilter === "wsl" 251 + ? "Search Windows Subsystem for Linux profiles..." 252 + : undefined 253 + } 254 + searchBarAccessory={ 255 + <List.Dropdown 256 + id="filter" 257 + tooltip="Filter Profiles" 258 + placeholder="Search sources..." 259 + onChange={(source) => setFilter(source)} 260 + > 261 + <List.Dropdown.Item icon={Icon.AppWindowGrid2x2} title="All" value="all" /> 262 + {PROFILES.newTabMenu.some((item) => item.type === "folder") ? ( 263 + <List.Dropdown.Item icon={Icon.Folder} title="Folders" value="folders" /> 264 + ) : null} 265 + <List.Dropdown.Item icon={Icon.Terminal} title="Profiles" value="profiles" /> 266 + {PROFILES.profiles.list.some((item) => item.source === "Windows.Terminal.SSH") ? ( 267 + <List.Dropdown.Item icon={Icon.Network} title="Remote Servers" value="ssh" /> 268 + ) : null} 269 + {PROFILES.profiles.list.some((item) => item.source === "Windows.Terminal.VisualStudio") ? ( 270 + <List.Dropdown.Item icon={Icon.Hammer} title="Visual Studio" value="vs" /> 271 + ) : null} 272 + {PROFILES.profiles.list.some( 273 + (item) => item.source === "Microsoft.WSL" || item.source === "Windows.Terminal.Wsl", 274 + ) ? ( 275 + <List.Dropdown.Item icon={Icon.HardDrive} title="Windows Subsystem for Linux" value="wsl" /> 276 + ) : null} 277 + </List.Dropdown> 278 + } 279 + > 280 + {getFilter === "folders" || 281 + (getFilter === "all" && PROFILES.newTabMenu.some((item) => item.type === "folder")) ? ( 282 + <List.Section title="Folders"> 283 + {PROFILES.newTabMenu 284 + .filter((item) => item.type === "folder") 285 + .map((item) => { 286 + if ( 287 + (item.inline === "auto" && item.entries?.length === 1) || 288 + (!item.allowEmpty && item.entries?.length === 0) 289 + ) 290 + return; 291 + return ( 292 + <List.Item 293 + key={item.name} 294 + icon={Icon.Folder} 295 + title={item.name} 296 + accessories={[{ icon: Icon.ChevronRight }]} 297 + actions={ 298 + <ActionPanel title={item.name}> 299 + <Action.Push 300 + icon={Icon.Folder} 301 + title="Open Folder" 302 + target={<FolderView folder={item} profiles={PROFILES.profiles.list} />} 303 + /> 304 + <ActionPanel.Section> 305 + <Action.Open 306 + icon={Icon.Code} 307 + shortcut={Keyboard.Shortcut.Common.Edit} 308 + title="Open settings.json" 309 + target={`C:\\Users\\${os.userInfo().username}${preferences.release}`} 310 + /> 311 + </ActionPanel.Section> 312 + </ActionPanel> 313 + } 314 + /> 315 + ); 316 + })} 317 + </List.Section> 318 + ) : null} 319 + 320 + {getFilter === "profiles" || getFilter === "all" ? ( 321 + <List.Section title="Profiles"> 322 + {PROFILES.profiles.list 323 + .filter( 324 + (item) => 325 + item.hidden !== true && 326 + item.source !== "Microsoft.WSL" && 327 + item.source !== "Windows.Terminal.Wsl" && 328 + item.source !== "Windows.Terminal.SSH" && 329 + item.source !== "Windows.Terminal.VisualStudio", 330 + ) 331 + .map((item) => ( 332 + <List.Item 333 + key={item.guid} 334 + icon={ 335 + item.guid === "{b453ae62-4e3d-5e58-b989-0a998ec441b8}" // Azure Cloud Shell 336 + ? Icon.Cloud 337 + : Icon.Terminal 338 + } 339 + title={item.name} 340 + keywords={ 341 + item.guid === "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}" || // Windows PowerShell 1.0 (comes with Windows) 342 + item.guid === "{574e775e-4f2a-5b96-ac1e-a2962a402336}" // Windows Powershell 7.0+ 343 + ? ["pwsh", "ps", "posh", getAliases[item.guid] ? getAliases[item.guid].alias : ""] 344 + : item.guid === "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}" 345 + ? ["cmd", getAliases[item.guid] ? getAliases[item.guid].alias : ""] 346 + : [ 347 + getAliases[item.guid] ? getAliases[item.guid].alias : "" 348 + ] 349 + } 350 + accessories={getAliases[item.guid] ? [{ tag: { value: getAliases[item.guid].alias } }] : undefined} 351 + actions={ 352 + <Actions profile={item} alias={getAliases[item.guid] ? getAliases[item.guid].alias : ""} /> 353 + } 354 + /> 355 + ))} 356 + </List.Section> 357 + ) : null} 358 + {getFilter === "ssh" || 359 + (getFilter === "all" && PROFILES.profiles.list.some((item) => item.source === "Windows.Terminal.SSH")) ? ( 360 + <List.Section title="Remote Servers"> 361 + {PROFILES.profiles.list 362 + .filter((item) => item.hidden !== true && item.source === "Windows.Terminal.SSH") 363 + .map((item) => ( 364 + <List.Item 365 + key={item.guid} 366 + icon={Icon.Network} 367 + title={item.name} 368 + keywords={[getAliases[item.guid] ? getAliases[item.guid].alias : ""]} 369 + accessories={getAliases[item.guid] ? [{ tag: { value: getAliases[item.guid].alias } }] : undefined} 370 + actions={ 371 + <Actions profile={item} alias={getAliases[item.guid] ? getAliases[item.guid].alias : ""} /> 372 + } 373 + /> 374 + ))} 375 + </List.Section> 376 + ) : null} 377 + {getFilter === "vs" || 378 + (getFilter === "all" && 379 + PROFILES.profiles.list.some((item) => item.source === "Windows.Terminal.VisualStudio")) ? ( 380 + <List.Section title="Visual Studio"> 381 + {PROFILES.profiles.list 382 + .filter((item) => item.hidden !== true && item.source === "Windows.Terminal.VisualStudio") 383 + .map((item) => ( 384 + <List.Item 385 + key={item.guid} 386 + icon={Icon.Hammer} 387 + title={item.name} 388 + keywords={[getAliases[item.guid] ? getAliases[item.guid].alias : ""]} 389 + accessories={getAliases[item.guid] ? [{ tag: { value: getAliases[item.guid].alias } }] : undefined} 390 + actions={ 391 + <Actions profile={item} alias={getAliases[item.guid] ? getAliases[item.guid].alias : ""} /> 392 + } 393 + /> 394 + ))} 395 + </List.Section> 396 + ) : null} 397 + {getFilter === "wsl" || 398 + (getFilter === "all" && 399 + PROFILES.profiles.list.some( 400 + (item) => item.source === "Microsoft.WSL" || item.source === "Windows.Terminal.Wsl", 401 + )) ? ( 402 + <List.Section title="Windows Subsystem for Linux"> 403 + {PROFILES.profiles.list 404 + .filter( 405 + (item) => 406 + item.hidden !== true && (item.source === "Microsoft.WSL" || item.source === "Windows.Terminal.Wsl"), 407 + ) 408 + .map((item) => ( 409 + <List.Item 410 + key={item.guid} 411 + icon={Icon.HardDrive} 412 + title={item.name} 413 + keywords={[getAliases[item.guid] ? getAliases[item.guid].alias : ""]} 414 + accessories={getAliases[item.guid] ? [{ tag: { value: getAliases[item.guid].alias } }] : undefined} 415 + actions={ 416 + <Actions profile={item} alias={getAliases[item.guid] ? getAliases[item.guid].alias : ""} /> 417 + } 418 + /> 419 + ))} 420 + </List.Section> 421 + ) : null} 422 + </List> 423 + ); 424 + }
+5
src/types/preferences.ts
··· 1 + export interface Preferences { 2 + release: 3 + | "\\AppData\\Local\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json" 4 + | "\\AppData\\Local\\Packages\\Microsoft.WindowsTerminalPreview_8wekyb3d8bbwe\\LocalState\\settings.json"; 5 + }
+26
src/types/windows-terminal.ts
··· 1 + export interface Profile { 2 + guid: string; 3 + name: string; 4 + hidden?: boolean; 5 + source?: string; 6 + elevate?: boolean; 7 + } 8 + 9 + export interface FolderEntry extends Folder { 10 + profile: string; 11 + } 12 + 13 + export interface Folder { 14 + type: "profile" | "folder" | "remainingProfiles"; 15 + name: string; 16 + inline?: "auto" | "never"; 17 + allowEmpty?: boolean; 18 + entries?: FolderEntry[]; 19 + } 20 + 21 + export interface WindowsTerminalSettings { 22 + profiles: { 23 + list: Profile[]; 24 + }; 25 + newTabMenu: Folder[]; 26 + }
+16
tsconfig.json
··· 1 + { 2 + "$schema": "https://json.schemastore.org/tsconfig", 3 + "include": ["src/**/*", "raycast-env.d.ts"], 4 + "compilerOptions": { 5 + "lib": ["ES2023"], 6 + "module": "commonjs", 7 + "target": "ES2023", 8 + "strict": true, 9 + "isolatedModules": true, 10 + "esModuleInterop": true, 11 + "skipLibCheck": true, 12 + "forceConsistentCasingInFileNames": true, 13 + "jsx": "react-jsx", 14 + "resolveJsonModule": true 15 + } 16 + }
+24
src/utils/profile-preferences.ts
··· 1 + import { LocalStorage } from "@raycast/api"; 2 + 3 + export async function getProfilePreferences(guid: string): Promise<{ alias: string }> { 4 + const profile = await LocalStorage.getItem<string>(guid); 5 + 6 + if (profile === undefined) { 7 + return { 8 + alias: "", 9 + }; 10 + } else { 11 + return JSON.parse(profile); 12 + } 13 + } 14 + 15 + export async function getAllProfilePreferences(): Promise<{ [key: string]: { alias: string } }> { 16 + const profiles = await LocalStorage.allItems<{ [key: string]: string }>(); 17 + const reconstructedProfiles: { [key: string]: { alias: string } } = {}; 18 + 19 + for (const i in profiles) { 20 + reconstructedProfiles[i] = JSON.parse(profiles[i]); 21 + } 22 + 23 + return reconstructedProfiles; 24 + }

History

1 round 1 comment
sign up or login to add to the discussion
woof.monster submitted #0
2 commits
expand
initial commit
aliases proof of concept
expand 1 comment

superseded by #2

closed without merging