A tool for parsing traffic on the jetstream and applying a moderation workstream based on regexp based rules

Fix merge conflict

Skywatch 79b27930 33f7404f

+61 -604
+61 -603
package-lock.json
··· 37 37 "@types/eslint__js": "^8.42.3", 38 38 "@types/express": "^4.17.23", 39 39 "@types/node": "^22.18.0", 40 - "@vitest/coverage-v8": "^3.2.4", 41 40 "@vitest/ui": "^3.2.4", 42 41 "eslint": "^9.34.0", 43 42 "prettier": "^3.6.2", ··· 45 44 "typescript": "^5.9.2", 46 45 "typescript-eslint": "^8.42.0", 47 46 "vitest": "^3.2.4" 48 - } 49 - }, 50 - "node_modules/@ampproject/remapping": { 51 - "version": "2.3.0", 52 - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", 53 - "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", 54 - "dev": true, 55 - "license": "Apache-2.0", 56 - "dependencies": { 57 - "@jridgewell/gen-mapping": "^0.3.5", 58 - "@jridgewell/trace-mapping": "^0.3.24" 59 - }, 60 - "engines": { 61 - "node": ">=6.0.0" 62 47 } 63 48 }, 64 49 "node_modules/@atcute/atproto": { ··· 1250 1235 } 1251 1236 }, 1252 1237 "node_modules/@babel/helper-string-parser": { 1253 - "version": "7.27.1", 1254 - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", 1255 - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", 1238 + "version": "7.25.9", 1256 1239 "dev": true, 1257 1240 "license": "MIT", 1258 1241 "engines": { ··· 1260 1243 } 1261 1244 }, 1262 1245 "node_modules/@babel/helper-validator-identifier": { 1263 - "version": "7.27.1", 1264 - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", 1265 - "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", 1246 + "version": "7.25.9", 1266 1247 "dev": true, 1267 1248 "license": "MIT", 1268 1249 "engines": { ··· 1396 1377 }, 1397 1378 "engines": { 1398 1379 "node": ">=6.9.0" 1399 - } 1400 - }, 1401 - "node_modules/@bcoe/v8-coverage": { 1402 - "version": "1.0.2", 1403 - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-1.0.2.tgz", 1404 - "integrity": "sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==", 1405 - "dev": true, 1406 - "license": "MIT", 1407 - "engines": { 1408 - "node": ">=18" 1409 1380 } 1410 1381 }, 1411 1382 "node_modules/@bufbuild/protobuf": { ··· 1957 1928 "multiformats": "^9.5.4" 1958 1929 } 1959 1930 }, 1960 - "node_modules/@isaacs/cliui": { 1961 - "version": "8.0.2", 1962 - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", 1963 - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", 1964 - "dev": true, 1965 - "license": "ISC", 1966 - "dependencies": { 1967 - "string-width": "^5.1.2", 1968 - "string-width-cjs": "npm:string-width@^4.2.0", 1969 - "strip-ansi": "^7.0.1", 1970 - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", 1971 - "wrap-ansi": "^8.1.0", 1972 - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" 1973 - }, 1974 - "engines": { 1975 - "node": ">=12" 1976 - } 1977 - }, 1978 - "node_modules/@isaacs/cliui/node_modules/ansi-styles": { 1979 - "version": "6.2.3", 1980 - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", 1981 - "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", 1982 - "dev": true, 1983 - "license": "MIT", 1984 - "engines": { 1985 - "node": ">=12" 1986 - }, 1987 - "funding": { 1988 - "url": "https://github.com/chalk/ansi-styles?sponsor=1" 1989 - } 1990 - }, 1991 - "node_modules/@isaacs/cliui/node_modules/emoji-regex": { 1992 - "version": "9.2.2", 1993 - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", 1994 - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", 1995 - "dev": true, 1996 - "license": "MIT" 1997 - }, 1998 - "node_modules/@isaacs/cliui/node_modules/string-width": { 1999 - "version": "5.1.2", 2000 - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", 2001 - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", 2002 - "dev": true, 2003 - "license": "MIT", 2004 - "dependencies": { 2005 - "eastasianwidth": "^0.2.0", 2006 - "emoji-regex": "^9.2.2", 2007 - "strip-ansi": "^7.0.1" 2008 - }, 2009 - "engines": { 2010 - "node": ">=12" 2011 - }, 2012 - "funding": { 2013 - "url": "https://github.com/sponsors/sindresorhus" 2014 - } 2015 - }, 2016 - "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { 2017 - "version": "8.1.0", 2018 - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", 2019 - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", 2020 - "dev": true, 2021 - "license": "MIT", 2022 - "dependencies": { 2023 - "ansi-styles": "^6.1.0", 2024 - "string-width": "^5.0.1", 2025 - "strip-ansi": "^7.0.1" 2026 - }, 2027 - "engines": { 2028 - "node": ">=12" 2029 - }, 2030 - "funding": { 2031 - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 2032 - } 2033 - }, 2034 - "node_modules/@istanbuljs/schema": { 2035 - "version": "0.1.3", 2036 - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", 2037 - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", 2038 - "dev": true, 2039 - "license": "MIT", 2040 - "engines": { 2041 - "node": ">=8" 2042 - } 2043 - }, 2044 1931 "node_modules/@jridgewell/gen-mapping": { 2045 1932 "version": "0.3.8", 2046 1933 "dev": true, ··· 2053 1940 "engines": { 2054 1941 "node": ">=6.0.0" 2055 1942 } 1943 + }, 1944 + "node_modules/@jridgewell/gen-mapping/node_modules/@jridgewell/sourcemap-codec": { 1945 + "version": "1.5.0", 1946 + "dev": true, 1947 + "license": "MIT" 2056 1948 }, 2057 1949 "node_modules/@jridgewell/resolve-uri": { 2058 1950 "version": "3.1.2", ··· 2071 1963 } 2072 1964 }, 2073 1965 "node_modules/@jridgewell/sourcemap-codec": { 2074 - "version": "1.5.5", 2075 - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", 2076 - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", 1966 + "version": "1.5.0", 2077 1967 "dev": true, 2078 1968 "license": "MIT" 2079 1969 }, 2080 1970 "node_modules/@jridgewell/trace-mapping": { 2081 - "version": "0.3.31", 2082 - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", 2083 - "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", 1971 + "version": "0.3.25", 2084 1972 "dev": true, 2085 1973 "license": "MIT", 2086 1974 "dependencies": { 2087 1975 "@jridgewell/resolve-uri": "^3.1.0", 2088 1976 "@jridgewell/sourcemap-codec": "^1.4.14" 2089 1977 } 1978 + }, 1979 + "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { 1980 + "version": "1.5.0", 1981 + "dev": true, 1982 + "license": "MIT" 2090 1983 }, 2091 1984 "node_modules/@js-sdsl/ordered-map": { 2092 1985 "version": "4.4.2", ··· 2191 2084 "license": "Apache-2.0", 2192 2085 "engines": { 2193 2086 "node": ">=8.0.0" 2194 - } 2195 - }, 2196 - "node_modules/@pkgjs/parseargs": { 2197 - "version": "0.11.0", 2198 - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", 2199 - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", 2200 - "dev": true, 2201 - "license": "MIT", 2202 - "optional": true, 2203 - "engines": { 2204 - "node": ">=14" 2205 2087 } 2206 2088 }, 2207 2089 "node_modules/@polka/url": { ··· 2642 2524 "typescript": ">=4.8.4 <6.0.0" 2643 2525 } 2644 2526 }, 2645 - "node_modules/@vitest/coverage-v8": { 2646 - "version": "3.2.4", 2647 - "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-3.2.4.tgz", 2648 - "integrity": "sha512-EyF9SXU6kS5Ku/U82E259WSnvg6c8KTjppUncuNdm5QHpe17mwREHnjDzozC8x9MZ0xfBUFSaLkRv4TMA75ALQ==", 2649 - "dev": true, 2650 - "license": "MIT", 2651 - "dependencies": { 2652 - "@ampproject/remapping": "^2.3.0", 2653 - "@bcoe/v8-coverage": "^1.0.2", 2654 - "ast-v8-to-istanbul": "^0.3.3", 2655 - "debug": "^4.4.1", 2656 - "istanbul-lib-coverage": "^3.2.2", 2657 - "istanbul-lib-report": "^3.0.1", 2658 - "istanbul-lib-source-maps": "^5.0.6", 2659 - "istanbul-reports": "^3.1.7", 2660 - "magic-string": "^0.30.17", 2661 - "magicast": "^0.3.5", 2662 - "std-env": "^3.9.0", 2663 - "test-exclude": "^7.0.1", 2664 - "tinyrainbow": "^2.0.0" 2665 - }, 2666 - "funding": { 2667 - "url": "https://opencollective.com/vitest" 2668 - }, 2669 - "peerDependencies": { 2670 - "@vitest/browser": "3.2.4", 2671 - "vitest": "3.2.4" 2672 - }, 2673 - "peerDependenciesMeta": { 2674 - "@vitest/browser": { 2675 - "optional": true 2676 - } 2677 - } 2678 - }, 2679 2527 "node_modules/@vitest/expect": { 2680 2528 "version": "3.2.4", 2681 2529 "dev": true, ··· 2936 2784 "node": ">=12" 2937 2785 } 2938 2786 }, 2939 - "node_modules/ast-v8-to-istanbul": { 2940 - "version": "0.3.7", 2941 - "resolved": "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-0.3.7.tgz", 2942 - "integrity": "sha512-kr1Hy6YRZBkGQSb6puP+D6FQ59Cx4m0siYhAxygMCAgadiWQ6oxAxQXHOMvJx67SJ63jRoVIIg5eXzUbbct1ww==", 2943 - "dev": true, 2944 - "license": "MIT", 2945 - "dependencies": { 2946 - "@jridgewell/trace-mapping": "^0.3.31", 2947 - "estree-walker": "^3.0.3", 2948 - "js-tokens": "^9.0.1" 2949 - } 2950 - }, 2951 - "node_modules/ast-v8-to-istanbul/node_modules/js-tokens": { 2952 - "version": "9.0.1", 2953 - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", 2954 - "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", 2955 - "dev": true, 2956 - "license": "MIT" 2957 - }, 2958 2787 "node_modules/asynckit": { 2959 2788 "version": "0.4.0", 2960 2789 "license": "MIT" ··· 3282 3111 "version": "8.0.0", 3283 3112 "license": "MIT" 3284 3113 }, 3114 + "node_modules/cliui/node_modules/string-width/node_modules/is-fullwidth-code-point": { 3115 + "version": "3.0.0", 3116 + "license": "MIT", 3117 + "engines": { 3118 + "node": ">=8" 3119 + } 3120 + }, 3285 3121 "node_modules/cliui/node_modules/strip-ansi": { 3286 3122 "version": "6.0.1", 3287 3123 "license": "MIT", ··· 3484 3320 } 3485 3321 }, 3486 3322 "node_modules/debug": { 3487 - "version": "4.4.3", 3488 - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", 3489 - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", 3323 + "version": "4.4.0", 3490 3324 "license": "MIT", 3491 3325 "dependencies": { 3492 3326 "ms": "^2.1.3" ··· 3613 3447 "engines": { 3614 3448 "node": ">= 6" 3615 3449 } 3616 - }, 3617 - "node_modules/eastasianwidth": { 3618 - "version": "0.2.0", 3619 - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", 3620 - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", 3621 - "dev": true, 3622 - "license": "MIT" 3623 3450 }, 3624 3451 "node_modules/ee-first": { 3625 3452 "version": "1.1.1", ··· 4399 4226 } 4400 4227 } 4401 4228 }, 4402 - "node_modules/foreground-child": { 4403 - "version": "3.3.1", 4404 - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", 4405 - "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", 4406 - "dev": true, 4407 - "license": "ISC", 4408 - "dependencies": { 4409 - "cross-spawn": "^7.0.6", 4410 - "signal-exit": "^4.0.1" 4411 - }, 4412 - "engines": { 4413 - "node": ">=14" 4414 - }, 4415 - "funding": { 4416 - "url": "https://github.com/sponsors/isaacs" 4417 - } 4418 - }, 4419 4229 "node_modules/form-data": { 4420 4230 "version": "4.0.1", 4421 4231 "license": "MIT", ··· 4510 4320 "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" 4511 4321 } 4512 4322 }, 4513 - "node_modules/glob": { 4514 - "version": "10.4.5", 4515 - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", 4516 - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", 4517 - "dev": true, 4518 - "license": "ISC", 4519 - "dependencies": { 4520 - "foreground-child": "^3.1.0", 4521 - "jackspeak": "^3.1.2", 4522 - "minimatch": "^9.0.4", 4523 - "minipass": "^7.1.2", 4524 - "package-json-from-dist": "^1.0.0", 4525 - "path-scurry": "^1.11.1" 4526 - }, 4527 - "bin": { 4528 - "glob": "dist/esm/bin.mjs" 4529 - }, 4530 - "funding": { 4531 - "url": "https://github.com/sponsors/isaacs" 4532 - } 4533 - }, 4534 4323 "node_modules/glob-parent": { 4535 4324 "version": "6.0.2", 4536 4325 "dev": true, ··· 4540 4329 }, 4541 4330 "engines": { 4542 4331 "node": ">=10.13.0" 4543 - } 4544 - }, 4545 - "node_modules/glob/node_modules/brace-expansion": { 4546 - "version": "2.0.2", 4547 - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 4548 - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 4549 - "dev": true, 4550 - "license": "MIT", 4551 - "dependencies": { 4552 - "balanced-match": "^1.0.0" 4553 - } 4554 - }, 4555 - "node_modules/glob/node_modules/minimatch": { 4556 - "version": "9.0.5", 4557 - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 4558 - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 4559 - "dev": true, 4560 - "license": "ISC", 4561 - "dependencies": { 4562 - "brace-expansion": "^2.0.1" 4563 - }, 4564 - "engines": { 4565 - "node": ">=16 || 14 >=14.17" 4566 - }, 4567 - "funding": { 4568 - "url": "https://github.com/sponsors/isaacs" 4569 4332 } 4570 4333 }, 4571 4334 "node_modules/gopd": { ··· 4630 4393 "minimalistic-assert": "^1.0.0", 4631 4394 "minimalistic-crypto-utils": "^1.0.1" 4632 4395 } 4633 - }, 4634 - "node_modules/html-escaper": { 4635 - "version": "2.0.2", 4636 - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", 4637 - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", 4638 - "dev": true, 4639 - "license": "MIT" 4640 4396 }, 4641 4397 "node_modules/http-errors": { 4642 4398 "version": "2.0.0", ··· 4793 4549 "node": ">=0.10.0" 4794 4550 } 4795 4551 }, 4796 - "node_modules/is-fullwidth-code-point": { 4797 - "version": "3.0.0", 4798 - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 4799 - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 4800 - "license": "MIT", 4801 - "engines": { 4802 - "node": ">=8" 4803 - } 4804 - }, 4805 4552 "node_modules/is-glob": { 4806 4553 "version": "4.0.3", 4807 4554 "dev": true, ··· 4838 4585 "version": "2.2.2", 4839 4586 "license": "MIT" 4840 4587 }, 4841 - "node_modules/istanbul-lib-coverage": { 4842 - "version": "3.2.2", 4843 - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", 4844 - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", 4845 - "dev": true, 4846 - "license": "BSD-3-Clause", 4847 - "engines": { 4848 - "node": ">=8" 4849 - } 4850 - }, 4851 - "node_modules/istanbul-lib-report": { 4852 - "version": "3.0.1", 4853 - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", 4854 - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", 4855 - "dev": true, 4856 - "license": "BSD-3-Clause", 4857 - "dependencies": { 4858 - "istanbul-lib-coverage": "^3.0.0", 4859 - "make-dir": "^4.0.0", 4860 - "supports-color": "^7.1.0" 4861 - }, 4862 - "engines": { 4863 - "node": ">=10" 4864 - } 4865 - }, 4866 - "node_modules/istanbul-lib-source-maps": { 4867 - "version": "5.0.6", 4868 - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.6.tgz", 4869 - "integrity": "sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A==", 4870 - "dev": true, 4871 - "license": "BSD-3-Clause", 4872 - "dependencies": { 4873 - "@jridgewell/trace-mapping": "^0.3.23", 4874 - "debug": "^4.1.1", 4875 - "istanbul-lib-coverage": "^3.0.0" 4876 - }, 4877 - "engines": { 4878 - "node": ">=10" 4879 - } 4880 - }, 4881 - "node_modules/istanbul-reports": { 4882 - "version": "3.2.0", 4883 - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", 4884 - "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==", 4885 - "dev": true, 4886 - "license": "BSD-3-Clause", 4887 - "dependencies": { 4888 - "html-escaper": "^2.0.0", 4889 - "istanbul-lib-report": "^3.0.0" 4890 - }, 4891 - "engines": { 4892 - "node": ">=8" 4893 - } 4894 - }, 4895 - "node_modules/jackspeak": { 4896 - "version": "3.4.3", 4897 - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", 4898 - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", 4899 - "dev": true, 4900 - "license": "BlueOak-1.0.0", 4901 - "dependencies": { 4902 - "@isaacs/cliui": "^8.0.2" 4903 - }, 4904 - "funding": { 4905 - "url": "https://github.com/sponsors/isaacs" 4906 - }, 4907 - "optionalDependencies": { 4908 - "@pkgjs/parseargs": "^0.11.0" 4909 - } 4910 - }, 4911 4588 "node_modules/javascript-natural-sort": { 4912 4589 "version": "0.7.1", 4913 4590 "dev": true, ··· 5229 4906 "dev": true, 5230 4907 "license": "MIT" 5231 4908 }, 5232 - "node_modules/lru-cache": { 5233 - "version": "10.4.3", 5234 - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", 5235 - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", 5236 - "dev": true, 5237 - "license": "ISC" 5238 - }, 5239 4909 "node_modules/magic-string": { 5240 4910 "version": "0.30.19", 5241 4911 "dev": true, ··· 5244 4914 "@jridgewell/sourcemap-codec": "^1.5.5" 5245 4915 } 5246 4916 }, 5247 - "node_modules/magicast": { 5248 - "version": "0.3.5", 5249 - "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.5.tgz", 5250 - "integrity": "sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==", 5251 - "dev": true, 5252 - "license": "MIT", 5253 - "dependencies": { 5254 - "@babel/parser": "^7.25.4", 5255 - "@babel/types": "^7.25.4", 5256 - "source-map-js": "^1.2.0" 5257 - } 5258 - }, 5259 - "node_modules/magicast/node_modules/@babel/types": { 5260 - "version": "7.28.4", 5261 - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.4.tgz", 5262 - "integrity": "sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q==", 5263 - "dev": true, 5264 - "license": "MIT", 5265 - "dependencies": { 5266 - "@babel/helper-string-parser": "^7.27.1", 5267 - "@babel/helper-validator-identifier": "^7.27.1" 5268 - }, 5269 - "engines": { 5270 - "node": ">=6.9.0" 5271 - } 5272 - }, 5273 - "node_modules/make-dir": { 5274 - "version": "4.0.0", 5275 - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", 5276 - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", 5277 - "dev": true, 5278 - "license": "MIT", 5279 - "dependencies": { 5280 - "semver": "^7.5.3" 5281 - }, 5282 - "engines": { 5283 - "node": ">=10" 5284 - }, 5285 - "funding": { 5286 - "url": "https://github.com/sponsors/sindresorhus" 5287 - } 5288 - }, 5289 4917 "node_modules/math-intrinsics": { 5290 4918 "version": "1.1.0", 5291 4919 "license": "MIT", ··· 5418 5046 "license": "MIT", 5419 5047 "funding": { 5420 5048 "url": "https://github.com/sponsors/ljharb" 5421 - } 5422 - }, 5423 - "node_modules/minipass": { 5424 - "version": "7.1.2", 5425 - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", 5426 - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", 5427 - "dev": true, 5428 - "license": "ISC", 5429 - "engines": { 5430 - "node": ">=16 || 14 >=14.17" 5431 5049 } 5432 5050 }, 5433 5051 "node_modules/module-alias": { ··· 5695 5313 "url": "https://github.com/sponsors/sindresorhus" 5696 5314 } 5697 5315 }, 5698 - "node_modules/package-json-from-dist": { 5699 - "version": "1.0.1", 5700 - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", 5701 - "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", 5702 - "dev": true, 5703 - "license": "BlueOak-1.0.0" 5704 - }, 5705 5316 "node_modules/parent-module": { 5706 5317 "version": "1.0.1", 5707 5318 "dev": true, ··· 5740 5351 "license": "MIT", 5741 5352 "engines": { 5742 5353 "node": ">=8" 5743 - } 5744 - }, 5745 - "node_modules/path-scurry": { 5746 - "version": "1.11.1", 5747 - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", 5748 - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", 5749 - "dev": true, 5750 - "license": "BlueOak-1.0.0", 5751 - "dependencies": { 5752 - "lru-cache": "^10.2.0", 5753 - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" 5754 - }, 5755 - "engines": { 5756 - "node": ">=16 || 14 >=14.18" 5757 - }, 5758 - "funding": { 5759 - "url": "https://github.com/sponsors/isaacs" 5760 5354 } 5761 5355 }, 5762 5356 "node_modules/path-to-regexp": { ··· 7020 6614 "url": "https://github.com/sponsors/sindresorhus" 7021 6615 } 7022 6616 }, 7023 - "node_modules/string-width-cjs": { 7024 - "name": "string-width", 7025 - "version": "4.2.3", 7026 - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 7027 - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 7028 - "dev": true, 7029 - "license": "MIT", 7030 - "dependencies": { 7031 - "emoji-regex": "^8.0.0", 7032 - "is-fullwidth-code-point": "^3.0.0", 7033 - "strip-ansi": "^6.0.1" 7034 - }, 7035 - "engines": { 7036 - "node": ">=8" 7037 - } 7038 - }, 7039 - "node_modules/string-width-cjs/node_modules/ansi-regex": { 7040 - "version": "5.0.1", 7041 - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 7042 - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 7043 - "dev": true, 7044 - "license": "MIT", 7045 - "engines": { 7046 - "node": ">=8" 7047 - } 7048 - }, 7049 - "node_modules/string-width-cjs/node_modules/emoji-regex": { 7050 - "version": "8.0.0", 7051 - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 7052 - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 7053 - "dev": true, 7054 - "license": "MIT" 7055 - }, 7056 - "node_modules/string-width-cjs/node_modules/strip-ansi": { 7057 - "version": "6.0.1", 7058 - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 7059 - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 7060 - "dev": true, 7061 - "license": "MIT", 7062 - "dependencies": { 7063 - "ansi-regex": "^5.0.1" 7064 - }, 7065 - "engines": { 7066 - "node": ">=8" 7067 - } 7068 - }, 7069 6617 "node_modules/strip-ansi": { 7070 6618 "version": "7.1.0", 7071 6619 "license": "MIT", ··· 7079 6627 "url": "https://github.com/chalk/strip-ansi?sponsor=1" 7080 6628 } 7081 6629 }, 7082 - "node_modules/strip-ansi-cjs": { 7083 - "name": "strip-ansi", 7084 - "version": "6.0.1", 7085 - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 7086 - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 7087 - "dev": true, 7088 - "license": "MIT", 7089 - "dependencies": { 7090 - "ansi-regex": "^5.0.1" 7091 - }, 7092 - "engines": { 7093 - "node": ">=8" 7094 - } 7095 - }, 7096 - "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { 7097 - "version": "5.0.1", 7098 - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 7099 - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 7100 - "dev": true, 7101 - "license": "MIT", 7102 - "engines": { 7103 - "node": ">=8" 7104 - } 7105 - }, 7106 6630 "node_modules/strip-final-newline": { 7107 6631 "version": "3.0.0", 7108 6632 "license": "MIT", ··· 7153 6677 "license": "MIT", 7154 6678 "dependencies": { 7155 6679 "bintrees": "1.0.2" 7156 - } 7157 - }, 7158 - "node_modules/test-exclude": { 7159 - "version": "7.0.1", 7160 - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-7.0.1.tgz", 7161 - "integrity": "sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==", 7162 - "dev": true, 7163 - "license": "ISC", 7164 - "dependencies": { 7165 - "@istanbuljs/schema": "^0.1.2", 7166 - "glob": "^10.4.1", 7167 - "minimatch": "^9.0.4" 7168 - }, 7169 - "engines": { 7170 - "node": ">=18" 7171 - } 7172 - }, 7173 - "node_modules/test-exclude/node_modules/brace-expansion": { 7174 - "version": "2.0.2", 7175 - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 7176 - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 7177 - "dev": true, 7178 - "license": "MIT", 7179 - "dependencies": { 7180 - "balanced-match": "^1.0.0" 7181 - } 7182 - }, 7183 - "node_modules/test-exclude/node_modules/minimatch": { 7184 - "version": "9.0.5", 7185 - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 7186 - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 7187 - "dev": true, 7188 - "license": "ISC", 7189 - "dependencies": { 7190 - "brace-expansion": "^2.0.1" 7191 - }, 7192 - "engines": { 7193 - "node": ">=16 || 14 >=14.17" 7194 - }, 7195 - "funding": { 7196 - "url": "https://github.com/sponsors/isaacs" 7197 6680 } 7198 6681 }, 7199 6682 "node_modules/thread-stream": { ··· 7985 7468 "url": "https://opencollective.com/vitest" 7986 7469 } 7987 7470 }, 7471 + "node_modules/vite-node/node_modules/debug": { 7472 + "version": "4.4.3", 7473 + "dev": true, 7474 + "license": "MIT", 7475 + "dependencies": { 7476 + "ms": "^2.1.3" 7477 + }, 7478 + "engines": { 7479 + "node": ">=6.0" 7480 + }, 7481 + "peerDependenciesMeta": { 7482 + "supports-color": { 7483 + "optional": true 7484 + } 7485 + } 7486 + }, 7988 7487 "node_modules/vitest": { 7989 7488 "version": "3.2.4", 7990 7489 "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.2.4.tgz", ··· 8058 7557 } 8059 7558 } 8060 7559 }, 7560 + "node_modules/vitest/node_modules/debug": { 7561 + "version": "4.4.3", 7562 + "dev": true, 7563 + "license": "MIT", 7564 + "dependencies": { 7565 + "ms": "^2.1.3" 7566 + }, 7567 + "engines": { 7568 + "node": ">=6.0" 7569 + }, 7570 + "peerDependenciesMeta": { 7571 + "supports-color": { 7572 + "optional": true 7573 + } 7574 + } 7575 + }, 8061 7576 "node_modules/webidl-conversions": { 8062 7577 "version": "3.0.1", 8063 7578 "license": "BSD-2-Clause" ··· 8121 7636 "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 8122 7637 } 8123 7638 }, 8124 - "node_modules/wrap-ansi-cjs": { 8125 - "name": "wrap-ansi", 8126 - "version": "7.0.0", 8127 - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 8128 - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 8129 - "dev": true, 8130 - "license": "MIT", 8131 - "dependencies": { 8132 - "ansi-styles": "^4.0.0", 8133 - "string-width": "^4.1.0", 8134 - "strip-ansi": "^6.0.0" 8135 - }, 8136 - "engines": { 8137 - "node": ">=10" 8138 - }, 8139 - "funding": { 8140 - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 8141 - } 8142 - }, 8143 - "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { 8144 - "version": "5.0.1", 8145 - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 8146 - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 8147 - "dev": true, 8148 - "license": "MIT", 8149 - "engines": { 8150 - "node": ">=8" 8151 - } 8152 - }, 8153 - "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { 8154 - "version": "8.0.0", 8155 - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 8156 - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 8157 - "dev": true, 8158 - "license": "MIT" 8159 - }, 8160 - "node_modules/wrap-ansi-cjs/node_modules/string-width": { 8161 - "version": "4.2.3", 8162 - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 8163 - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 8164 - "dev": true, 8165 - "license": "MIT", 8166 - "dependencies": { 8167 - "emoji-regex": "^8.0.0", 8168 - "is-fullwidth-code-point": "^3.0.0", 8169 - "strip-ansi": "^6.0.1" 8170 - }, 8171 - "engines": { 8172 - "node": ">=8" 8173 - } 8174 - }, 8175 - "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { 8176 - "version": "6.0.1", 8177 - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 8178 - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 8179 - "dev": true, 8180 - "license": "MIT", 8181 - "dependencies": { 8182 - "ansi-regex": "^5.0.1" 8183 - }, 8184 - "engines": { 8185 - "node": ">=8" 8186 - } 8187 - }, 8188 7639 "node_modules/wrap-ansi/node_modules/ansi-styles": { 8189 7640 "version": "6.2.1", 8190 7641 "license": "MIT", ··· 8280 7731 "node_modules/yargs/node_modules/string-width/node_modules/emoji-regex": { 8281 7732 "version": "8.0.0", 8282 7733 "license": "MIT" 7734 + }, 7735 + "node_modules/yargs/node_modules/string-width/node_modules/is-fullwidth-code-point": { 7736 + "version": "3.0.0", 7737 + "license": "MIT", 7738 + "engines": { 7739 + "node": ">=8" 7740 + } 8283 7741 }, 8284 7742 "node_modules/yargs/node_modules/string-width/node_modules/strip-ansi": { 8285 7743 "version": "6.0.1",
-1
package.json
··· 24 24 "@types/eslint__js": "^8.42.3", 25 25 "@types/express": "^4.17.23", 26 26 "@types/node": "^22.18.0", 27 - "@vitest/coverage-v8": "^3.2.4", 28 27 "@vitest/ui": "^3.2.4", 29 28 "eslint": "^9.34.0", 30 29 "prettier": "^3.6.2",