[READ-ONLY] Mirror of https://github.com/FoxxMD/multi-scrobbler. Scrobble plays from multiple sources to multiple clients docs.multi-scrobbler.app
deezer docker jellyfin koito lastfm listenbrainz maloja mopidy mpris music music-assistant plex scrobble self-hosted spotify subsonic tautulli youtube-music
0

Configure Feed

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

add zod packages

FoxxMD (Jul 23, 2026, 8:24 PM UTC) 413bf55d 61a2ff51

+987 -36
+983 -34
package-lock.json
··· 207 207 "tinyexec": "^1.1.1", 208 208 "ts-essentials": "^10.2.0", 209 209 "ts-json-schema-generator": "^2.3.0", 210 - "typescript": "^6.0.3", 210 + "ts-to-zod": "^5.1.0", 211 + "typescript": "^5.9.2", 211 212 "typescript-eslint": "^8.59.3", 212 213 "usehooks-ts": "^3.1.1", 213 214 "vite": "^8.0.12", 214 - "with-local-tmp-dir": "^7.0.1" 215 + "with-local-tmp-dir": "^7.0.1", 216 + "zod": "^4.4.3" 215 217 }, 216 218 "engines": { 217 219 "node": ">=24.14.0", ··· 1371 1373 "typescript": { 1372 1374 "optional": true 1373 1375 } 1376 + } 1377 + }, 1378 + "node_modules/@chakra-ui/cli/node_modules/zod": { 1379 + "version": "3.25.76", 1380 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", 1381 + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", 1382 + "dev": true, 1383 + "license": "MIT", 1384 + "funding": { 1385 + "url": "https://github.com/sponsors/colinhacks" 1374 1386 } 1375 1387 }, 1376 1388 "node_modules/@chakra-ui/react": { ··· 2535 2547 "zod-validation-error": "^2.1.0" 2536 2548 } 2537 2549 }, 2550 + "node_modules/@foxxmd/chromecast-client/node_modules/zod": { 2551 + "version": "3.25.76", 2552 + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", 2553 + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", 2554 + "license": "MIT", 2555 + "funding": { 2556 + "url": "https://github.com/sponsors/colinhacks" 2557 + } 2558 + }, 2559 + "node_modules/@foxxmd/chromecast-client/node_modules/zod-validation-error": { 2560 + "version": "2.1.0", 2561 + "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-2.1.0.tgz", 2562 + "integrity": "sha512-VJh93e2wb4c3tWtGgTa0OF/dTt/zoPCPzXq4V11ZjxmEAFaPi/Zss1xIZdEB5RD8GD00U0/iVXgqkF77RV7pdQ==", 2563 + "license": "MIT", 2564 + "engines": { 2565 + "node": ">=18.0.0" 2566 + }, 2567 + "peerDependencies": { 2568 + "zod": "^3.18.0" 2569 + } 2570 + }, 2538 2571 "node_modules/@foxxmd/get-version": { 2539 2572 "version": "0.0.3", 2540 2573 "resolved": "https://registry.npmjs.org/@foxxmd/get-version/-/get-version-0.0.3.tgz", ··· 3334 3367 "node": ">= 8" 3335 3368 } 3336 3369 }, 3370 + "node_modules/@oclif/core": { 3371 + "version": "4.13.0", 3372 + "resolved": "https://registry.npmjs.org/@oclif/core/-/core-4.13.0.tgz", 3373 + "integrity": "sha512-j3NKgXE3qd0gvSYsCqDLb3VhW5KEg030VQhMnv5c0qNzPp6jBmF7cCDIQG4ROZIOqEfGbUoDDMAAzaC30vV99g==", 3374 + "dev": true, 3375 + "license": "MIT", 3376 + "dependencies": { 3377 + "ansi-escapes": "^4.3.2", 3378 + "ansis": "^3.17.0", 3379 + "clean-stack": "^3.0.1", 3380 + "cli-spinners": "^2.9.2", 3381 + "debug": "^4.4.3", 3382 + "ejs": "^3.1.10", 3383 + "get-package-type": "^0.1.0", 3384 + "indent-string": "^4.0.0", 3385 + "is-wsl": "^2.2.0", 3386 + "lilconfig": "^3.1.3", 3387 + "minimatch": "^10.2.5", 3388 + "semver": "^7.8.1", 3389 + "string-width": "^4.2.3", 3390 + "supports-color": "^8", 3391 + "tinyglobby": "^0.2.17", 3392 + "widest-line": "^3.1.0", 3393 + "wordwrap": "^1.0.0", 3394 + "wrap-ansi": "^7.0.0" 3395 + }, 3396 + "engines": { 3397 + "node": ">=18.0.0" 3398 + } 3399 + }, 3400 + "node_modules/@oclif/core/node_modules/supports-color": { 3401 + "version": "8.1.1", 3402 + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", 3403 + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", 3404 + "dev": true, 3405 + "license": "MIT", 3406 + "dependencies": { 3407 + "has-flag": "^4.0.0" 3408 + }, 3409 + "engines": { 3410 + "node": ">=10" 3411 + }, 3412 + "funding": { 3413 + "url": "https://github.com/chalk/supports-color?sponsor=1" 3414 + } 3415 + }, 3337 3416 "node_modules/@open-draft/deferred-promise": { 3338 3417 "version": "3.0.0", 3339 3418 "resolved": "https://registry.npmjs.org/@open-draft/deferred-promise/-/deferred-promise-3.0.0.tgz", ··· 6922 7001 "url": "https://opencollective.com/typescript-eslint" 6923 7002 } 6924 7003 }, 7004 + "node_modules/@typescript/vfs": { 7005 + "version": "1.6.4", 7006 + "resolved": "https://registry.npmjs.org/@typescript/vfs/-/vfs-1.6.4.tgz", 7007 + "integrity": "sha512-PJFXFS4ZJKiJ9Qiuix6Dz/OwEIqHD7Dme1UwZhTK11vR+5dqW2ACbdndWQexBzCx+CPuMe5WBYQWCsFyGlQLlQ==", 7008 + "dev": true, 7009 + "license": "MIT", 7010 + "dependencies": { 7011 + "debug": "^4.4.3" 7012 + }, 7013 + "peerDependencies": { 7014 + "typescript": "*" 7015 + } 7016 + }, 6925 7017 "node_modules/@ungap/structured-clone": { 6926 7018 "version": "1.3.1", 6927 7019 "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.1.tgz", ··· 8644 8736 "node": ">=6" 8645 8737 } 8646 8738 }, 8739 + "node_modules/ansi-escapes": { 8740 + "version": "4.3.2", 8741 + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", 8742 + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", 8743 + "dev": true, 8744 + "license": "MIT", 8745 + "dependencies": { 8746 + "type-fest": "^0.21.3" 8747 + }, 8748 + "engines": { 8749 + "node": ">=8" 8750 + }, 8751 + "funding": { 8752 + "url": "https://github.com/sponsors/sindresorhus" 8753 + } 8754 + }, 8755 + "node_modules/ansi-escapes/node_modules/type-fest": { 8756 + "version": "0.21.3", 8757 + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", 8758 + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", 8759 + "dev": true, 8760 + "license": "(MIT OR CC0-1.0)", 8761 + "engines": { 8762 + "node": ">=10" 8763 + }, 8764 + "funding": { 8765 + "url": "https://github.com/sponsors/sindresorhus" 8766 + } 8767 + }, 8647 8768 "node_modules/ansi-regex": { 8648 8769 "version": "5.0.1", 8649 8770 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", ··· 8685 8806 "react-dom": "^16.3.2 || ^17.0.0 || ^18.0.0 || ^19.0.0" 8686 8807 } 8687 8808 }, 8809 + "node_modules/ansis": { 8810 + "version": "3.17.0", 8811 + "resolved": "https://registry.npmjs.org/ansis/-/ansis-3.17.0.tgz", 8812 + "integrity": "sha512-0qWUglt9JEqLFr3w1I1pbrChn1grhaiAR2ocX1PP/flRmxgtwTzPFFFnfIlD6aMOLQZgSuCRlidD70lvx8yhzg==", 8813 + "dev": true, 8814 + "license": "ISC", 8815 + "engines": { 8816 + "node": ">=14" 8817 + } 8818 + }, 8688 8819 "node_modules/anymatch": { 8689 8820 "version": "3.1.3", 8690 8821 "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", ··· 8757 8888 "engines": { 8758 8889 "node": ">=4" 8759 8890 } 8891 + }, 8892 + "node_modules/async": { 8893 + "version": "3.2.6", 8894 + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", 8895 + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", 8896 + "dev": true, 8897 + "license": "MIT" 8760 8898 }, 8761 8899 "node_modules/asynckit": { 8762 8900 "version": "0.4.0", ··· 9530 9668 "node": ">=8" 9531 9669 } 9532 9670 }, 9671 + "node_modules/clean-stack": { 9672 + "version": "3.0.1", 9673 + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-3.0.1.tgz", 9674 + "integrity": "sha512-lR9wNiMRcVQjSB3a7xXGLuz4cr4wJuuXlaAEbRutGowQTmlp7R72/DOgN21e8jdwblMWl9UOJMJXarX94pzKdg==", 9675 + "dev": true, 9676 + "license": "MIT", 9677 + "dependencies": { 9678 + "escape-string-regexp": "4.0.0" 9679 + }, 9680 + "engines": { 9681 + "node": ">=10" 9682 + }, 9683 + "funding": { 9684 + "url": "https://github.com/sponsors/sindresorhus" 9685 + } 9686 + }, 9687 + "node_modules/cli-cursor": { 9688 + "version": "5.0.0", 9689 + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", 9690 + "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==", 9691 + "dev": true, 9692 + "license": "MIT", 9693 + "dependencies": { 9694 + "restore-cursor": "^5.0.0" 9695 + }, 9696 + "engines": { 9697 + "node": ">=18" 9698 + }, 9699 + "funding": { 9700 + "url": "https://github.com/sponsors/sindresorhus" 9701 + } 9702 + }, 9703 + "node_modules/cli-spinners": { 9704 + "version": "2.9.2", 9705 + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", 9706 + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", 9707 + "dev": true, 9708 + "license": "MIT", 9709 + "engines": { 9710 + "node": ">=6" 9711 + }, 9712 + "funding": { 9713 + "url": "https://github.com/sponsors/sindresorhus" 9714 + } 9715 + }, 9533 9716 "node_modules/cli-table": { 9534 9717 "version": "0.3.11", 9535 9718 "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz", ··· 9542 9725 "node": ">= 0.2.0" 9543 9726 } 9544 9727 }, 9728 + "node_modules/cli-truncate": { 9729 + "version": "5.2.0", 9730 + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-5.2.0.tgz", 9731 + "integrity": "sha512-xRwvIOMGrfOAnM1JYtqQImuaNtDEv9v6oIYAs4LIHwTiKee8uwvIi363igssOC0O5U04i4AlENs79LQLu9tEMw==", 9732 + "dev": true, 9733 + "license": "MIT", 9734 + "dependencies": { 9735 + "slice-ansi": "^8.0.0", 9736 + "string-width": "^8.2.0" 9737 + }, 9738 + "engines": { 9739 + "node": ">=20" 9740 + }, 9741 + "funding": { 9742 + "url": "https://github.com/sponsors/sindresorhus" 9743 + } 9744 + }, 9745 + "node_modules/cli-truncate/node_modules/string-width": { 9746 + "version": "8.2.2", 9747 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.2.tgz", 9748 + "integrity": "sha512-GaPUh5gfdrYzqeVNZvUfT23vYYxXzKYidUcnMtJg/3rxRV63EFZy3k6xfKlmfeJD0176lnUV/Usr3XcwSvFzpg==", 9749 + "dev": true, 9750 + "license": "MIT", 9751 + "dependencies": { 9752 + "get-east-asian-width": "^1.5.0", 9753 + "strip-ansi": "^7.1.2" 9754 + }, 9755 + "engines": { 9756 + "node": ">=20" 9757 + }, 9758 + "funding": { 9759 + "url": "https://github.com/sponsors/sindresorhus" 9760 + } 9761 + }, 9545 9762 "node_modules/cli-width": { 9546 9763 "version": "4.1.0", 9547 9764 "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", ··· 11040 11257 "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", 11041 11258 "license": "MIT" 11042 11259 }, 11260 + "node_modules/ejs": { 11261 + "version": "3.1.10", 11262 + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", 11263 + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", 11264 + "dev": true, 11265 + "license": "Apache-2.0", 11266 + "dependencies": { 11267 + "jake": "^10.8.5" 11268 + }, 11269 + "bin": { 11270 + "ejs": "bin/cli.js" 11271 + }, 11272 + "engines": { 11273 + "node": ">=0.10.0" 11274 + } 11275 + }, 11043 11276 "node_modules/electron-to-chromium": { 11044 11277 "version": "1.5.392", 11045 11278 "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.392.tgz", ··· 11119 11352 }, 11120 11353 "engines": { 11121 11354 "node": ">=20" 11355 + }, 11356 + "funding": { 11357 + "url": "https://github.com/sponsors/sindresorhus" 11358 + } 11359 + }, 11360 + "node_modules/environment": { 11361 + "version": "1.1.0", 11362 + "resolved": "https://registry.npmjs.org/environment/-/environment-1.1.0.tgz", 11363 + "integrity": "sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==", 11364 + "dev": true, 11365 + "license": "MIT", 11366 + "engines": { 11367 + "node": ">=18" 11122 11368 }, 11123 11369 "funding": { 11124 11370 "url": "https://github.com/sponsors/sindresorhus" ··· 12606 12852 "json-buffer": "3.0.1" 12607 12853 } 12608 12854 }, 12855 + "node_modules/filelist": { 12856 + "version": "1.0.6", 12857 + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.6.tgz", 12858 + "integrity": "sha512-5giy2PkLYY1cP39p17Ech+2xlpTRL9HLspOfEgm0L6CwBXBTgsK5ou0JtzYuepxkaQ/tvhCFIJ5uXo0OrM2DxA==", 12859 + "dev": true, 12860 + "license": "Apache-2.0", 12861 + "dependencies": { 12862 + "minimatch": "^5.0.1" 12863 + } 12864 + }, 12865 + "node_modules/filelist/node_modules/balanced-match": { 12866 + "version": "1.0.2", 12867 + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 12868 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 12869 + "dev": true, 12870 + "license": "MIT" 12871 + }, 12872 + "node_modules/filelist/node_modules/brace-expansion": { 12873 + "version": "2.1.2", 12874 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.2.tgz", 12875 + "integrity": "sha512-w5JZcKgdhDOgOwm8H+KgbosopHMuGcl6qbulwjtz3SM7I7P3yW1eAjzMPLrIE+NQ9vjgANKHWeMHnrT0OXW1oA==", 12876 + "dev": true, 12877 + "license": "MIT", 12878 + "dependencies": { 12879 + "balanced-match": "^1.0.0" 12880 + } 12881 + }, 12882 + "node_modules/filelist/node_modules/minimatch": { 12883 + "version": "5.1.9", 12884 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.9.tgz", 12885 + "integrity": "sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==", 12886 + "dev": true, 12887 + "license": "ISC", 12888 + "dependencies": { 12889 + "brace-expansion": "^2.0.1" 12890 + }, 12891 + "engines": { 12892 + "node": ">=10" 12893 + } 12894 + }, 12609 12895 "node_modules/fill-range": { 12610 12896 "version": "7.1.1", 12611 12897 "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", ··· 12998 13284 "node": "6.* || 8.* || >= 10.*" 12999 13285 } 13000 13286 }, 13287 + "node_modules/get-east-asian-width": { 13288 + "version": "1.6.0", 13289 + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz", 13290 + "integrity": "sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==", 13291 + "dev": true, 13292 + "license": "MIT", 13293 + "engines": { 13294 + "node": ">=18" 13295 + }, 13296 + "funding": { 13297 + "url": "https://github.com/sponsors/sindresorhus" 13298 + } 13299 + }, 13001 13300 "node_modules/get-func-name": { 13002 13301 "version": "2.0.2", 13003 13302 "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", ··· 13030 13329 }, 13031 13330 "funding": { 13032 13331 "url": "https://github.com/sponsors/ljharb" 13332 + } 13333 + }, 13334 + "node_modules/get-package-type": { 13335 + "version": "0.1.0", 13336 + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", 13337 + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", 13338 + "dev": true, 13339 + "license": "MIT", 13340 + "engines": { 13341 + "node": ">=8.0.0" 13033 13342 } 13034 13343 }, 13035 13344 "node_modules/get-proto": { ··· 14273 14582 "url": "https://github.com/sponsors/isaacs" 14274 14583 } 14275 14584 }, 14585 + "node_modules/jake": { 14586 + "version": "10.9.4", 14587 + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.4.tgz", 14588 + "integrity": "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==", 14589 + "dev": true, 14590 + "license": "Apache-2.0", 14591 + "dependencies": { 14592 + "async": "^3.2.6", 14593 + "filelist": "^1.0.4", 14594 + "picocolors": "^1.1.1" 14595 + }, 14596 + "bin": { 14597 + "jake": "bin/cli.js" 14598 + }, 14599 + "engines": { 14600 + "node": ">=10" 14601 + } 14602 + }, 14276 14603 "node_modules/jayson": { 14277 14604 "version": "3.7.0", 14278 14605 "resolved": "https://registry.npmjs.org/jayson/-/jayson-3.7.0.tgz", ··· 15002 15329 "url": "https://opencollective.com/parcel" 15003 15330 } 15004 15331 }, 15332 + "node_modules/lilconfig": { 15333 + "version": "3.1.3", 15334 + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", 15335 + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", 15336 + "dev": true, 15337 + "license": "MIT", 15338 + "engines": { 15339 + "node": ">=14" 15340 + }, 15341 + "funding": { 15342 + "url": "https://github.com/sponsors/antonk52" 15343 + } 15344 + }, 15005 15345 "node_modules/lines-and-columns": { 15006 15346 "version": "1.2.4", 15007 15347 "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", ··· 15019 15359 "uc.micro": "^1.0.1" 15020 15360 } 15021 15361 }, 15362 + "node_modules/listr2": { 15363 + "version": "9.0.5", 15364 + "resolved": "https://registry.npmjs.org/listr2/-/listr2-9.0.5.tgz", 15365 + "integrity": "sha512-ME4Fb83LgEgwNw96RKNvKV4VTLuXfoKudAmm2lP8Kk87KaMK0/Xrx/aAkMWmT8mDb+3MlFDspfbCs7adjRxA2g==", 15366 + "dev": true, 15367 + "license": "MIT", 15368 + "dependencies": { 15369 + "cli-truncate": "^5.0.0", 15370 + "colorette": "^2.0.20", 15371 + "eventemitter3": "^5.0.1", 15372 + "log-update": "^6.1.0", 15373 + "rfdc": "^1.4.1", 15374 + "wrap-ansi": "^9.0.0" 15375 + }, 15376 + "engines": { 15377 + "node": ">=20.0.0" 15378 + } 15379 + }, 15380 + "node_modules/listr2/node_modules/ansi-styles": { 15381 + "version": "6.2.3", 15382 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", 15383 + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", 15384 + "dev": true, 15385 + "license": "MIT", 15386 + "engines": { 15387 + "node": ">=12" 15388 + }, 15389 + "funding": { 15390 + "url": "https://github.com/chalk/ansi-styles?sponsor=1" 15391 + } 15392 + }, 15393 + "node_modules/listr2/node_modules/emoji-regex": { 15394 + "version": "10.6.0", 15395 + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", 15396 + "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", 15397 + "dev": true, 15398 + "license": "MIT" 15399 + }, 15400 + "node_modules/listr2/node_modules/string-width": { 15401 + "version": "7.2.0", 15402 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", 15403 + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", 15404 + "dev": true, 15405 + "license": "MIT", 15406 + "dependencies": { 15407 + "emoji-regex": "^10.3.0", 15408 + "get-east-asian-width": "^1.0.0", 15409 + "strip-ansi": "^7.1.0" 15410 + }, 15411 + "engines": { 15412 + "node": ">=18" 15413 + }, 15414 + "funding": { 15415 + "url": "https://github.com/sponsors/sindresorhus" 15416 + } 15417 + }, 15418 + "node_modules/listr2/node_modules/wrap-ansi": { 15419 + "version": "9.0.2", 15420 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", 15421 + "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", 15422 + "dev": true, 15423 + "license": "MIT", 15424 + "dependencies": { 15425 + "ansi-styles": "^6.2.1", 15426 + "string-width": "^7.0.0", 15427 + "strip-ansi": "^7.1.0" 15428 + }, 15429 + "engines": { 15430 + "node": ">=18" 15431 + }, 15432 + "funding": { 15433 + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 15434 + } 15435 + }, 15022 15436 "node_modules/locate-path": { 15023 15437 "version": "6.0.0", 15024 15438 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", ··· 15096 15510 "url": "https://github.com/sponsors/sindresorhus" 15097 15511 } 15098 15512 }, 15513 + "node_modules/log-update": { 15514 + "version": "6.1.0", 15515 + "resolved": "https://registry.npmjs.org/log-update/-/log-update-6.1.0.tgz", 15516 + "integrity": "sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==", 15517 + "dev": true, 15518 + "license": "MIT", 15519 + "dependencies": { 15520 + "ansi-escapes": "^7.0.0", 15521 + "cli-cursor": "^5.0.0", 15522 + "slice-ansi": "^7.1.0", 15523 + "strip-ansi": "^7.1.0", 15524 + "wrap-ansi": "^9.0.0" 15525 + }, 15526 + "engines": { 15527 + "node": ">=18" 15528 + }, 15529 + "funding": { 15530 + "url": "https://github.com/sponsors/sindresorhus" 15531 + } 15532 + }, 15533 + "node_modules/log-update/node_modules/ansi-escapes": { 15534 + "version": "7.3.0", 15535 + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-7.3.0.tgz", 15536 + "integrity": "sha512-BvU8nYgGQBxcmMuEeUEmNTvrMVjJNSH7RgW24vXexN4Ven6qCvy4TntnvlnwnMLTVlcRQQdbRY8NKnaIoeWDNg==", 15537 + "dev": true, 15538 + "license": "MIT", 15539 + "dependencies": { 15540 + "environment": "^1.0.0" 15541 + }, 15542 + "engines": { 15543 + "node": ">=18" 15544 + }, 15545 + "funding": { 15546 + "url": "https://github.com/sponsors/sindresorhus" 15547 + } 15548 + }, 15549 + "node_modules/log-update/node_modules/ansi-styles": { 15550 + "version": "6.2.3", 15551 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", 15552 + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", 15553 + "dev": true, 15554 + "license": "MIT", 15555 + "engines": { 15556 + "node": ">=12" 15557 + }, 15558 + "funding": { 15559 + "url": "https://github.com/chalk/ansi-styles?sponsor=1" 15560 + } 15561 + }, 15562 + "node_modules/log-update/node_modules/emoji-regex": { 15563 + "version": "10.6.0", 15564 + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", 15565 + "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", 15566 + "dev": true, 15567 + "license": "MIT" 15568 + }, 15569 + "node_modules/log-update/node_modules/is-fullwidth-code-point": { 15570 + "version": "5.1.0", 15571 + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.1.0.tgz", 15572 + "integrity": "sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==", 15573 + "dev": true, 15574 + "license": "MIT", 15575 + "dependencies": { 15576 + "get-east-asian-width": "^1.3.1" 15577 + }, 15578 + "engines": { 15579 + "node": ">=18" 15580 + }, 15581 + "funding": { 15582 + "url": "https://github.com/sponsors/sindresorhus" 15583 + } 15584 + }, 15585 + "node_modules/log-update/node_modules/slice-ansi": { 15586 + "version": "7.1.2", 15587 + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-7.1.2.tgz", 15588 + "integrity": "sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==", 15589 + "dev": true, 15590 + "license": "MIT", 15591 + "dependencies": { 15592 + "ansi-styles": "^6.2.1", 15593 + "is-fullwidth-code-point": "^5.0.0" 15594 + }, 15595 + "engines": { 15596 + "node": ">=18" 15597 + }, 15598 + "funding": { 15599 + "url": "https://github.com/chalk/slice-ansi?sponsor=1" 15600 + } 15601 + }, 15602 + "node_modules/log-update/node_modules/string-width": { 15603 + "version": "7.2.0", 15604 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", 15605 + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", 15606 + "dev": true, 15607 + "license": "MIT", 15608 + "dependencies": { 15609 + "emoji-regex": "^10.3.0", 15610 + "get-east-asian-width": "^1.0.0", 15611 + "strip-ansi": "^7.1.0" 15612 + }, 15613 + "engines": { 15614 + "node": ">=18" 15615 + }, 15616 + "funding": { 15617 + "url": "https://github.com/sponsors/sindresorhus" 15618 + } 15619 + }, 15620 + "node_modules/log-update/node_modules/wrap-ansi": { 15621 + "version": "9.0.2", 15622 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", 15623 + "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", 15624 + "dev": true, 15625 + "license": "MIT", 15626 + "dependencies": { 15627 + "ansi-styles": "^6.2.1", 15628 + "string-width": "^7.0.0", 15629 + "strip-ansi": "^7.1.0" 15630 + }, 15631 + "engines": { 15632 + "node": ">=18" 15633 + }, 15634 + "funding": { 15635 + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 15636 + } 15637 + }, 15099 15638 "node_modules/long": { 15100 15639 "version": "4.0.0", 15101 15640 "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", ··· 15482 16021 "funding": { 15483 16022 "type": "opencollective", 15484 16023 "url": "https://opencollective.com/express" 16024 + } 16025 + }, 16026 + "node_modules/mimic-function": { 16027 + "version": "5.0.1", 16028 + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", 16029 + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", 16030 + "dev": true, 16031 + "license": "MIT", 16032 + "engines": { 16033 + "node": ">=18" 16034 + }, 16035 + "funding": { 16036 + "url": "https://github.com/sponsors/sindresorhus" 15485 16037 } 15486 16038 }, 15487 16039 "node_modules/mimic-response": { ··· 16316 16868 "license": "ISC", 16317 16869 "dependencies": { 16318 16870 "wrappy": "1" 16871 + } 16872 + }, 16873 + "node_modules/onetime": { 16874 + "version": "7.0.0", 16875 + "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz", 16876 + "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==", 16877 + "dev": true, 16878 + "license": "MIT", 16879 + "dependencies": { 16880 + "mimic-function": "^5.0.0" 16881 + }, 16882 + "engines": { 16883 + "node": ">=18" 16884 + }, 16885 + "funding": { 16886 + "url": "https://github.com/sponsors/sindresorhus" 16319 16887 } 16320 16888 }, 16321 16889 "node_modules/oniguruma-parser": { ··· 17888 18456 "url": "https://github.com/sponsors/sindresorhus" 17889 18457 } 17890 18458 }, 18459 + "node_modules/restore-cursor": { 18460 + "version": "5.1.0", 18461 + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz", 18462 + "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==", 18463 + "dev": true, 18464 + "license": "MIT", 18465 + "dependencies": { 18466 + "onetime": "^7.0.0", 18467 + "signal-exit": "^4.1.0" 18468 + }, 18469 + "engines": { 18470 + "node": ">=18" 18471 + }, 18472 + "funding": { 18473 + "url": "https://github.com/sponsors/sindresorhus" 18474 + } 18475 + }, 17891 18476 "node_modules/retry": { 17892 18477 "version": "0.13.1", 17893 18478 "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", ··· 17914 18499 "iojs": ">=1.0.0", 17915 18500 "node": ">=0.10.0" 17916 18501 } 18502 + }, 18503 + "node_modules/rfdc": { 18504 + "version": "1.4.1", 18505 + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", 18506 + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", 18507 + "dev": true, 18508 + "license": "MIT" 17917 18509 }, 17918 18510 "node_modules/rolldown": { 17919 18511 "version": "1.0.3", ··· 18569 19161 "node": ">=6" 18570 19162 } 18571 19163 }, 19164 + "node_modules/slice-ansi": { 19165 + "version": "8.0.0", 19166 + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-8.0.0.tgz", 19167 + "integrity": "sha512-stxByr12oeeOyY2BlviTNQlYV5xOj47GirPr4yA1hE9JCtxfQN0+tVbkxwCtYDQWhEKWFHsEK48ORg5jrouCAg==", 19168 + "dev": true, 19169 + "license": "MIT", 19170 + "dependencies": { 19171 + "ansi-styles": "^6.2.3", 19172 + "is-fullwidth-code-point": "^5.1.0" 19173 + }, 19174 + "engines": { 19175 + "node": ">=20" 19176 + }, 19177 + "funding": { 19178 + "url": "https://github.com/chalk/slice-ansi?sponsor=1" 19179 + } 19180 + }, 19181 + "node_modules/slice-ansi/node_modules/ansi-styles": { 19182 + "version": "6.2.3", 19183 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", 19184 + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", 19185 + "dev": true, 19186 + "license": "MIT", 19187 + "engines": { 19188 + "node": ">=12" 19189 + }, 19190 + "funding": { 19191 + "url": "https://github.com/chalk/ansi-styles?sponsor=1" 19192 + } 19193 + }, 19194 + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { 19195 + "version": "5.1.0", 19196 + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.1.0.tgz", 19197 + "integrity": "sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==", 19198 + "dev": true, 19199 + "license": "MIT", 19200 + "dependencies": { 19201 + "get-east-asian-width": "^1.3.1" 19202 + }, 19203 + "engines": { 19204 + "node": ">=18" 19205 + }, 19206 + "funding": { 19207 + "url": "https://github.com/sponsors/sindresorhus" 19208 + } 19209 + }, 18572 19210 "node_modules/sonic-boom": { 18573 19211 "version": "4.2.1", 18574 19212 "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-4.2.1.tgz", ··· 19119 19757 "bintrees": "1.0.2" 19120 19758 } 19121 19759 }, 19760 + "node_modules/text-camel-case": { 19761 + "version": "1.2.11", 19762 + "resolved": "https://registry.npmjs.org/text-camel-case/-/text-camel-case-1.2.11.tgz", 19763 + "integrity": "sha512-2ZsM/gOlB1tyza+8lGLvs6gtPuZ9qEYuKPa+gwo38m65wkY4k323SK4hT7ku8r5wIKyspUYIWSk1aB9/Jjxr7A==", 19764 + "dev": true, 19765 + "license": "MIT", 19766 + "dependencies": { 19767 + "text-pascal-case": "^1.2.11" 19768 + } 19769 + }, 19770 + "node_modules/text-capital-case": { 19771 + "version": "1.2.11", 19772 + "resolved": "https://registry.npmjs.org/text-capital-case/-/text-capital-case-1.2.11.tgz", 19773 + "integrity": "sha512-30A7B7+VUvevEmPE0xWK1Z2z0ncl/JTjSUBLfjpoXrkwuPpmNTVbjHShRTN3cX9GIuZn/P3jvR+TO9JiTZcl8A==", 19774 + "dev": true, 19775 + "license": "MIT", 19776 + "dependencies": { 19777 + "text-no-case": "^1.2.11", 19778 + "text-upper-case-first": "^1.2.11" 19779 + } 19780 + }, 19781 + "node_modules/text-case": { 19782 + "version": "1.2.11", 19783 + "resolved": "https://registry.npmjs.org/text-case/-/text-case-1.2.11.tgz", 19784 + "integrity": "sha512-LbdWNQeuXWbfav+pxBxvaefkziffMYeSA53BHp52cgJa9rjiC0dkjum9AKrH8iQWoQJ4InGPSGexLeerGFaZ1Q==", 19785 + "dev": true, 19786 + "license": "MIT", 19787 + "dependencies": { 19788 + "text-camel-case": "^1.2.11", 19789 + "text-capital-case": "^1.2.11", 19790 + "text-constant-case": "^1.2.11", 19791 + "text-dot-case": "^1.2.11", 19792 + "text-header-case": "^1.2.11", 19793 + "text-is-lower-case": "^1.2.11", 19794 + "text-is-upper-case": "^1.2.11", 19795 + "text-kebab-case": "^1.2.11", 19796 + "text-lower-case": "^1.2.11", 19797 + "text-lower-case-first": "^1.2.11", 19798 + "text-no-case": "^1.2.11", 19799 + "text-param-case": "^1.2.11", 19800 + "text-pascal-case": "^1.2.11", 19801 + "text-path-case": "^1.2.11", 19802 + "text-sentence-case": "^1.2.11", 19803 + "text-snake-case": "^1.2.11", 19804 + "text-swap-case": "^1.2.11", 19805 + "text-title-case": "^1.2.11", 19806 + "text-upper-case": "^1.2.11", 19807 + "text-upper-case-first": "^1.2.11" 19808 + } 19809 + }, 19810 + "node_modules/text-constant-case": { 19811 + "version": "1.2.11", 19812 + "resolved": "https://registry.npmjs.org/text-constant-case/-/text-constant-case-1.2.11.tgz", 19813 + "integrity": "sha512-XnTBILsa7UpMWncUCchqIybZlg15FUcrlyNaWIJ8ybPy54qcoN513EXFswueyizuAgyJFXPCwwSFbSji6kw/Uw==", 19814 + "dev": true, 19815 + "license": "MIT", 19816 + "dependencies": { 19817 + "text-no-case": "^1.2.11", 19818 + "text-upper-case": "^1.2.11" 19819 + } 19820 + }, 19821 + "node_modules/text-dot-case": { 19822 + "version": "1.2.11", 19823 + "resolved": "https://registry.npmjs.org/text-dot-case/-/text-dot-case-1.2.11.tgz", 19824 + "integrity": "sha512-7SLKiT45KZO0qad0+p+GvC0+F+6pZ851HJcTcBJiSF88HsK/e1qErlGLtVBT6hkTHIaAj48WfSyQr4lZRv1xJQ==", 19825 + "dev": true, 19826 + "license": "MIT", 19827 + "dependencies": { 19828 + "text-no-case": "^1.2.11" 19829 + } 19830 + }, 19831 + "node_modules/text-header-case": { 19832 + "version": "1.2.11", 19833 + "resolved": "https://registry.npmjs.org/text-header-case/-/text-header-case-1.2.11.tgz", 19834 + "integrity": "sha512-7OBHd2g7X+aH6rXMC3cANFh6yvhXjXkyumw2NaRwJRIk343pP2e1SQCTCfowPDmmi8wkZVqz1fdWNq5LwvcBOQ==", 19835 + "dev": true, 19836 + "license": "MIT", 19837 + "dependencies": { 19838 + "text-capital-case": "^1.2.11" 19839 + } 19840 + }, 19841 + "node_modules/text-is-lower-case": { 19842 + "version": "1.2.11", 19843 + "resolved": "https://registry.npmjs.org/text-is-lower-case/-/text-is-lower-case-1.2.11.tgz", 19844 + "integrity": "sha512-dBqPAkNmX7eTM7ZbS3D/UBCQ5i9EXt5tujF2wIGGbZ1+aN8bY7Qda4mDpxgd6Hbzf/z10uQWRNzupl99wFQ8CQ==", 19845 + "dev": true, 19846 + "license": "MIT" 19847 + }, 19848 + "node_modules/text-is-upper-case": { 19849 + "version": "1.2.11", 19850 + "resolved": "https://registry.npmjs.org/text-is-upper-case/-/text-is-upper-case-1.2.11.tgz", 19851 + "integrity": "sha512-MZeUIYEYfKZ2FSeg0vnHCH4mHXLgGzes+iz2K+4BYnhnkEa2svKA1nNjQAqTUiVNHOPqPCuzmUr1LsyQZ73uyA==", 19852 + "dev": true, 19853 + "license": "MIT" 19854 + }, 19855 + "node_modules/text-kebab-case": { 19856 + "version": "1.2.11", 19857 + "resolved": "https://registry.npmjs.org/text-kebab-case/-/text-kebab-case-1.2.11.tgz", 19858 + "integrity": "sha512-RIg9iN6VwH+JrX9dFdm1nd1efPGR9LjNc0CiQz496sQETeKGkDEzxES/ZzxbkerrAL2DFEMGdLXckzDz1OEDBQ==", 19859 + "dev": true, 19860 + "license": "MIT", 19861 + "dependencies": { 19862 + "text-no-case": "^1.2.11" 19863 + } 19864 + }, 19865 + "node_modules/text-lower-case": { 19866 + "version": "1.2.11", 19867 + "resolved": "https://registry.npmjs.org/text-lower-case/-/text-lower-case-1.2.11.tgz", 19868 + "integrity": "sha512-txTy6y0y8M23Lhf0mk8WcvXTqlf4OQ3AGnDsRB6o3uMNfIa0CJDol2s1PdKNa63rt5B2277zkZCCn6Xeq//big==", 19869 + "dev": true, 19870 + "license": "MIT" 19871 + }, 19872 + "node_modules/text-lower-case-first": { 19873 + "version": "1.2.11", 19874 + "resolved": "https://registry.npmjs.org/text-lower-case-first/-/text-lower-case-first-1.2.11.tgz", 19875 + "integrity": "sha512-QR483XLyuyIpq8tKu1ds3Q1jfsgfaa/p9rtoQKHe6Rv5ah9ic/SUzTGN0MQ7UIS9APADd8SUPn5TTh1Z2/ACyg==", 19876 + "dev": true, 19877 + "license": "MIT" 19878 + }, 19879 + "node_modules/text-no-case": { 19880 + "version": "1.2.11", 19881 + "resolved": "https://registry.npmjs.org/text-no-case/-/text-no-case-1.2.11.tgz", 19882 + "integrity": "sha512-wazS7FEq0Ct3aJzeE8MEMcSs0eW4+/X/fwdotv/rG66bLS+g1T0pa0gUsbBGjjLFs191AIXVIry+bYE0uaaBBQ==", 19883 + "dev": true, 19884 + "license": "MIT", 19885 + "dependencies": { 19886 + "text-lower-case": "^1.2.11" 19887 + } 19888 + }, 19889 + "node_modules/text-param-case": { 19890 + "version": "1.2.11", 19891 + "resolved": "https://registry.npmjs.org/text-param-case/-/text-param-case-1.2.11.tgz", 19892 + "integrity": "sha512-3EMMAMLSz/mJXOnATNnrS+dZAvghpq09VhOVYDOkUnbm5zlYc6iU5AZOKVDpiAVVllQ9P1h5IKVZzsEYrdIRGw==", 19893 + "dev": true, 19894 + "license": "MIT", 19895 + "dependencies": { 19896 + "text-dot-case": "^1.2.11" 19897 + } 19898 + }, 19899 + "node_modules/text-pascal-case": { 19900 + "version": "1.2.11", 19901 + "resolved": "https://registry.npmjs.org/text-pascal-case/-/text-pascal-case-1.2.11.tgz", 19902 + "integrity": "sha512-BNhQ1O/g/Q4dH5gPyLIJLDLDknl2dipBwV629ScsiZCKJaCLGXYhTXp23rp9Htg3O5OSSsiU3mqDKq+pBmwTSw==", 19903 + "dev": true, 19904 + "license": "MIT", 19905 + "dependencies": { 19906 + "text-no-case": "^1.2.11" 19907 + } 19908 + }, 19909 + "node_modules/text-path-case": { 19910 + "version": "1.2.11", 19911 + "resolved": "https://registry.npmjs.org/text-path-case/-/text-path-case-1.2.11.tgz", 19912 + "integrity": "sha512-FsJU4BmMdtLtmnBK/XRJPqTwLF8yFiTEClHjxlQjSAG5Xt9R4p6D1WNaM1CI2dG5Lr4rsFM4jiVC620m0AsRbw==", 19913 + "dev": true, 19914 + "license": "MIT", 19915 + "dependencies": { 19916 + "text-dot-case": "^1.2.11" 19917 + } 19918 + }, 19919 + "node_modules/text-sentence-case": { 19920 + "version": "1.2.11", 19921 + "resolved": "https://registry.npmjs.org/text-sentence-case/-/text-sentence-case-1.2.11.tgz", 19922 + "integrity": "sha512-ApiVsvdLy+Wb8x7mZRVuoy8VO12jJ22G2djVM3ZZbUhXVIkqGgHxmiXRwdhRPoWGojK9n53m7jviJgBVNdRn+g==", 19923 + "dev": true, 19924 + "license": "MIT", 19925 + "dependencies": { 19926 + "text-no-case": "^1.2.11", 19927 + "text-upper-case-first": "^1.2.11" 19928 + } 19929 + }, 19930 + "node_modules/text-snake-case": { 19931 + "version": "1.2.11", 19932 + "resolved": "https://registry.npmjs.org/text-snake-case/-/text-snake-case-1.2.11.tgz", 19933 + "integrity": "sha512-NOEQvjyyVABB41SS8dUx423Y6hWS+Z4TrAAJg1xzCkOD3q9y0JtdJjCvCA1FWI8oDu+HiIOp/N446uDM8j54XQ==", 19934 + "dev": true, 19935 + "license": "MIT", 19936 + "dependencies": { 19937 + "text-dot-case": "^1.2.11" 19938 + } 19939 + }, 19940 + "node_modules/text-swap-case": { 19941 + "version": "1.2.11", 19942 + "resolved": "https://registry.npmjs.org/text-swap-case/-/text-swap-case-1.2.11.tgz", 19943 + "integrity": "sha512-PBmC5xvZdDZ4suikydpeXH0s4JV2XHelMj9/OEXEbA3oLpdV2A+B4BspVDWVw7C2Gi5eCareqk/7EE8I1/WwgQ==", 19944 + "dev": true, 19945 + "license": "MIT" 19946 + }, 19947 + "node_modules/text-title-case": { 19948 + "version": "1.2.11", 19949 + "resolved": "https://registry.npmjs.org/text-title-case/-/text-title-case-1.2.11.tgz", 19950 + "integrity": "sha512-V1GZy0XlqdkYUQm0tqm1jqtYlXJqFVMreBCTUReOaz8d/JbozTSpZrcakIeV8+1bN7LsvfhPFhA5zREiax6YIA==", 19951 + "dev": true, 19952 + "license": "MIT", 19953 + "dependencies": { 19954 + "text-no-case": "^1.2.11", 19955 + "text-upper-case-first": "^1.2.11" 19956 + } 19957 + }, 19958 + "node_modules/text-upper-case": { 19959 + "version": "1.2.11", 19960 + "resolved": "https://registry.npmjs.org/text-upper-case/-/text-upper-case-1.2.11.tgz", 19961 + "integrity": "sha512-BfTL7yB1YIRlVGNdZUvno013hOq2cRs07fDR2ApppOXRDuKrEmsLDEY82xXlDzQHELp0jexqkI+NeyPIl6MtMw==", 19962 + "dev": true, 19963 + "license": "MIT" 19964 + }, 19965 + "node_modules/text-upper-case-first": { 19966 + "version": "1.2.11", 19967 + "resolved": "https://registry.npmjs.org/text-upper-case-first/-/text-upper-case-first-1.2.11.tgz", 19968 + "integrity": "sha512-vgfbwKo8TEJbRsapR9LWWvIJRnv8u9aXVa6cyYOAQQmurCx54Cnt59x5fKdiq+hFaBJ51AbzCgMpbP3p65/pHQ==", 19969 + "dev": true, 19970 + "license": "MIT" 19971 + }, 19122 19972 "node_modules/thread-stream": { 19123 19973 "version": "3.2.0", 19124 19974 "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-3.2.0.tgz", ··· 19516 20366 "url": "https://github.com/sponsors/sindresorhus" 19517 20367 } 19518 20368 }, 19519 - "node_modules/ts-json-schema-generator/node_modules/typescript": { 19520 - "version": "5.9.3", 19521 - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", 19522 - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", 19523 - "dev": true, 19524 - "license": "Apache-2.0", 19525 - "bin": { 19526 - "tsc": "bin/tsc", 19527 - "tsserver": "bin/tsserver" 19528 - }, 19529 - "engines": { 19530 - "node": ">=14.17" 19531 - } 19532 - }, 19533 20369 "node_modules/ts-json-schema-generator/node_modules/wrap-ansi": { 19534 20370 "version": "8.1.0", 19535 20371 "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", ··· 19554 20390 "integrity": "sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==", 19555 20391 "license": "MIT" 19556 20392 }, 20393 + "node_modules/ts-to-zod": { 20394 + "version": "5.1.0", 20395 + "resolved": "https://registry.npmjs.org/ts-to-zod/-/ts-to-zod-5.1.0.tgz", 20396 + "integrity": "sha512-giqqlvRHunlJqG9tBL/KAO3wWIVZGF//mZiWLKm/fdQnKnz4EN2mtiK5cugN9slytBkdMEXQIaLvMzIScbhhFw==", 20397 + "dev": true, 20398 + "license": "MIT", 20399 + "dependencies": { 20400 + "@clack/prompts": "1.0.0-alpha.4", 20401 + "@oclif/core": "^4.5.4", 20402 + "@typescript/vfs": "^1.5.0", 20403 + "chokidar": "^4.0.3", 20404 + "listr2": "^9.0.4", 20405 + "slash": "^5.1.0", 20406 + "text-case": "^1.2.4", 20407 + "tslib": "^2.3.1", 20408 + "tsutils": "^3.21.0", 20409 + "typescript": "^5.2.2", 20410 + "zod": "^4.1.5" 20411 + }, 20412 + "bin": { 20413 + "ts-to-zod": "bin/run" 20414 + } 20415 + }, 20416 + "node_modules/ts-to-zod/node_modules/@clack/core": { 20417 + "version": "1.0.0-alpha.4", 20418 + "resolved": "https://registry.npmjs.org/@clack/core/-/core-1.0.0-alpha.4.tgz", 20419 + "integrity": "sha512-VCtU+vjyKPMSakVrB9q1bOnXN7QW/w4+YQDQCOF59GrzydW+169i0fVx/qzRRXJgt8KGj/pZZ/JxXroFZIDByg==", 20420 + "dev": true, 20421 + "license": "MIT", 20422 + "dependencies": { 20423 + "picocolors": "^1.0.0", 20424 + "sisteransi": "^1.0.5" 20425 + } 20426 + }, 20427 + "node_modules/ts-to-zod/node_modules/@clack/prompts": { 20428 + "version": "1.0.0-alpha.4", 20429 + "resolved": "https://registry.npmjs.org/@clack/prompts/-/prompts-1.0.0-alpha.4.tgz", 20430 + "integrity": "sha512-KnmtDF2xQGoI5AlBme9akHtvCRV0RKAARUXHBQO2tMwnY8B08/4zPWigT7uLK25UPrMCEqnyQPkKRjNdhPbf8g==", 20431 + "dev": true, 20432 + "license": "MIT", 20433 + "dependencies": { 20434 + "@clack/core": "1.0.0-alpha.4", 20435 + "picocolors": "^1.0.0", 20436 + "sisteransi": "^1.0.5" 20437 + } 20438 + }, 20439 + "node_modules/ts-to-zod/node_modules/chokidar": { 20440 + "version": "4.0.3", 20441 + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", 20442 + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", 20443 + "dev": true, 20444 + "license": "MIT", 20445 + "dependencies": { 20446 + "readdirp": "^4.0.1" 20447 + }, 20448 + "engines": { 20449 + "node": ">= 14.16.0" 20450 + }, 20451 + "funding": { 20452 + "url": "https://paulmillr.com/funding/" 20453 + } 20454 + }, 20455 + "node_modules/ts-to-zod/node_modules/readdirp": { 20456 + "version": "4.1.2", 20457 + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", 20458 + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", 20459 + "dev": true, 20460 + "license": "MIT", 20461 + "engines": { 20462 + "node": ">= 14.18.0" 20463 + }, 20464 + "funding": { 20465 + "type": "individual", 20466 + "url": "https://paulmillr.com/funding/" 20467 + } 20468 + }, 20469 + "node_modules/ts-to-zod/node_modules/slash": { 20470 + "version": "5.1.0", 20471 + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", 20472 + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", 20473 + "dev": true, 20474 + "license": "MIT", 20475 + "engines": { 20476 + "node": ">=14.16" 20477 + }, 20478 + "funding": { 20479 + "url": "https://github.com/sponsors/sindresorhus" 20480 + } 20481 + }, 19557 20482 "node_modules/tsconfig-paths": { 19558 20483 "version": "4.2.0", 19559 20484 "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz", ··· 19573 20498 "version": "2.8.1", 19574 20499 "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", 19575 20500 "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", 20501 + "license": "0BSD" 20502 + }, 20503 + "node_modules/tsutils": { 20504 + "version": "3.21.0", 20505 + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", 20506 + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", 20507 + "dev": true, 20508 + "license": "MIT", 20509 + "dependencies": { 20510 + "tslib": "^1.8.1" 20511 + }, 20512 + "engines": { 20513 + "node": ">= 6" 20514 + }, 20515 + "peerDependencies": { 20516 + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" 20517 + } 20518 + }, 20519 + "node_modules/tsutils/node_modules/tslib": { 20520 + "version": "1.14.1", 20521 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", 20522 + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", 20523 + "dev": true, 19576 20524 "license": "0BSD" 19577 20525 }, 19578 20526 "node_modules/type-check": { ··· 19654 20602 "license": "MIT" 19655 20603 }, 19656 20604 "node_modules/typescript": { 19657 - "version": "6.0.3", 19658 - "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", 19659 - "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", 20605 + "version": "5.9.2", 20606 + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", 20607 + "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", 19660 20608 "license": "Apache-2.0", 19661 20609 "bin": { 19662 20610 "tsc": "bin/tsc", ··· 20503 21451 "node": ">= 8" 20504 21452 } 20505 21453 }, 21454 + "node_modules/widest-line": { 21455 + "version": "3.1.0", 21456 + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", 21457 + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", 21458 + "dev": true, 21459 + "license": "MIT", 21460 + "dependencies": { 21461 + "string-width": "^4.0.0" 21462 + }, 21463 + "engines": { 21464 + "node": ">=8" 21465 + } 21466 + }, 20506 21467 "node_modules/with-local-tmp-dir": { 20507 21468 "version": "7.0.1", 20508 21469 "resolved": "https://registry.npmjs.org/with-local-tmp-dir/-/with-local-tmp-dir-7.0.1.tgz", ··· 20839 21800 } 20840 21801 }, 20841 21802 "node_modules/zod": { 20842 - "version": "3.25.76", 20843 - "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", 20844 - "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", 21803 + "version": "4.4.3", 21804 + "resolved": "https://registry.npmjs.org/zod/-/zod-4.4.3.tgz", 21805 + "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==", 20845 21806 "license": "MIT", 20846 21807 "funding": { 20847 21808 "url": "https://github.com/sponsors/colinhacks" 20848 - } 20849 - }, 20850 - "node_modules/zod-validation-error": { 20851 - "version": "2.1.0", 20852 - "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-2.1.0.tgz", 20853 - "integrity": "sha512-VJh93e2wb4c3tWtGgTa0OF/dTt/zoPCPzXq4V11ZjxmEAFaPi/Zss1xIZdEB5RD8GD00U0/iVXgqkF77RV7pdQ==", 20854 - "license": "MIT", 20855 - "engines": { 20856 - "node": ">=18.0.0" 20857 - }, 20858 - "peerDependencies": { 20859 - "zod": "^3.18.0" 20860 21809 } 20861 21810 }, 20862 21811 "node_modules/zwitch": {
+4 -2
package.json
··· 247 247 "tinyexec": "^1.1.1", 248 248 "ts-essentials": "^10.2.0", 249 249 "ts-json-schema-generator": "^2.3.0", 250 - "typescript": "^6.0.3", 250 + "ts-to-zod": "^5.1.0", 251 + "typescript": "^5.9.2", 251 252 "typescript-eslint": "^8.59.3", 252 253 "usehooks-ts": "^3.1.1", 253 254 "vite": "^8.0.12", 254 - "with-local-tmp-dir": "^7.0.1" 255 + "with-local-tmp-dir": "^7.0.1", 256 + "zod": "^4.4.3" 255 257 }, 256 258 "browserslist": { 257 259 "production": [