From 714003a6f70969265a675efb79926805e1618aba Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 24 Mar 2025 18:37:42 +0000 Subject: [PATCH 1/2] build(deps): bump the npm group with 9 updates Bumps the npm group with 9 updates: | Package | From | To | | --- | --- | --- | | [@actions/cache](https://github.com/actions/toolkit/tree/HEAD/packages/cache) | `4.0.2` | `4.0.3` | | [@octokit/types](https://github.com/octokit/types.ts) | `13.8.0` | `13.10.0` | | [@eslint/eslintrc](https://github.com/eslint/eslintrc) | `3.3.0` | `3.3.1` | | [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.22.0` | `9.23.0` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.26.1` | `8.28.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.26.1` | `8.28.0` | | [eslint-import-resolver-typescript](https://github.com/import-js/eslint-import-resolver-typescript) | `3.8.3` | `4.2.2` | | [eslint-plugin-github](https://github.com/github/eslint-plugin-github) | `5.1.8` | `6.0.0` | | [sinon](https://github.com/sinonjs/sinon) | `19.0.2` | `19.0.5` | Updates `@actions/cache` from 4.0.2 to 4.0.3 - [Changelog](https://github.com/actions/toolkit/blob/main/packages/cache/RELEASES.md) - [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/cache) Updates `@octokit/types` from 13.8.0 to 13.10.0 - [Release notes](https://github.com/octokit/types.ts/releases) - [Commits](https://github.com/octokit/types.ts/compare/v13.8.0...v13.10.0) Updates `@eslint/eslintrc` from 3.3.0 to 3.3.1 - [Release notes](https://github.com/eslint/eslintrc/releases) - [Changelog](https://github.com/eslint/eslintrc/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslintrc/compare/v3.3.0...v3.3.1) Updates `@eslint/js` from 9.22.0 to 9.23.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/commits/v9.23.0/packages/js) Updates `@typescript-eslint/eslint-plugin` from 8.26.1 to 8.28.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.28.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 8.26.1 to 8.28.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.28.0/packages/parser) Updates `eslint-import-resolver-typescript` from 3.8.3 to 4.2.2 - [Release notes](https://github.com/import-js/eslint-import-resolver-typescript/releases) - [Changelog](https://github.com/import-js/eslint-import-resolver-typescript/blob/master/CHANGELOG.md) - [Commits](https://github.com/import-js/eslint-import-resolver-typescript/compare/v3.8.3...v4.2.2) Updates `eslint-plugin-github` from 5.1.8 to 6.0.0 - [Release notes](https://github.com/github/eslint-plugin-github/releases) - [Commits](https://github.com/github/eslint-plugin-github/compare/v5.1.8...v6.0.0) Updates `sinon` from 19.0.2 to 19.0.5 - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v19.0.2...v19.0.5) --- updated-dependencies: - dependency-name: "@actions/cache" dependency-type: direct:production update-type: version-update:semver-patch dependency-group: npm - dependency-name: "@octokit/types" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: npm - dependency-name: "@eslint/eslintrc" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm - dependency-name: "@eslint/js" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm - dependency-name: "@typescript-eslint/parser" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm - dependency-name: eslint-import-resolver-typescript dependency-type: direct:development update-type: version-update:semver-major dependency-group: npm - dependency-name: eslint-plugin-github dependency-type: direct:development update-type: version-update:semver-major dependency-group: npm - dependency-name: sinon dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm ... Signed-off-by: dependabot[bot] --- package-lock.json | 592 +++++++++++++++++++++++++++++++--------------- package.json | 18 +- 2 files changed, 412 insertions(+), 198 deletions(-) diff --git a/package-lock.json b/package-lock.json index 40844a69c5..aa2637fcc4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@actions/artifact": "^2.3.1", "@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2", - "@actions/cache": "^4.0.2", + "@actions/cache": "^4.0.3", "@actions/core": "^1.11.1", "@actions/exec": "^1.1.1", "@actions/github": "^6.0.0", @@ -20,7 +20,7 @@ "@actions/io": "^1.1.3", "@actions/tool-cache": "^2.0.2", "@octokit/plugin-retry": "^6.0.0", - "@octokit/types": "^13.8.0", + "@octokit/types": "^13.10.0", "@schemastore/package": "0.0.10", "@types/node-forge": "^1.3.11", "@types/uuid": "^10.0.0", @@ -46,8 +46,8 @@ "devDependencies": { "@ava/typescript": "4.1.0", "@eslint/compat": "^1.1.1", - "@eslint/eslintrc": "^3.3.0", - "@eslint/js": "^9.22.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "^9.23.0", "@microsoft/eslint-formatter-sarif": "^3.1.0", "@types/adm-zip": "^0.5.7", "@types/console-log-level": "^1.4.5", @@ -57,18 +57,18 @@ "@types/node": "20.9.0", "@types/semver": "^7.5.8", "@types/sinon": "^17.0.4", - "@typescript-eslint/eslint-plugin": "^8.26.1", - "@typescript-eslint/parser": "^8.26.1", + "@typescript-eslint/eslint-plugin": "^8.28.0", + "@typescript-eslint/parser": "^8.28.0", "ava": "^5.3.1", "eslint": "^8.57.1", - "eslint-import-resolver-typescript": "^3.8.3", + "eslint-import-resolver-typescript": "^4.2.2", "eslint-plugin-filenames": "^1.3.2", - "eslint-plugin-github": "^5.1.8", + "eslint-plugin-github": "^6.0.0", "eslint-plugin-import": "2.29.1", "eslint-plugin-no-async-foreach": "^0.1.1", "nock": "^14.0.1", "removeNPMAbsolutePaths": "3.0.1", - "sinon": "^19.0.2", + "sinon": "^19.0.5", "typescript": "^5.8.2" } }, @@ -276,10 +276,9 @@ } }, "node_modules/@actions/cache": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-4.0.2.tgz", - "integrity": "sha512-cBr7JL1q+JKjbBd3w3SZN5OQ1Xg+/D8QLMcE7MpgpghZlL4biBO0ZEeraoTxCZyfN0YY0dxXlLgsgGv/sT5BTg==", - "license": "MIT", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-4.0.3.tgz", + "integrity": "sha512-SvrqFtYJ7I48A/uXNkoJrnukx5weQv1fGquhs3+4nkByZThBH109KTIqj5x/cGV7JGNvb8dLPVywUOqX1fjiXg==", "dependencies": { "@actions/core": "^1.11.1", "@actions/exec": "^1.0.1", @@ -770,6 +769,58 @@ "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", "license": "0BSD" }, + "node_modules/@emnapi/core": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.3.1.tgz", + "integrity": "sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.0.1", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/core/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "optional": true + }, + "node_modules/@emnapi/runtime": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz", + "integrity": "sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "optional": true + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz", + "integrity": "sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "optional": true + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "dev": true, @@ -802,11 +853,10 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.0.tgz", - "integrity": "sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", "dev": true, - "license": "MIT", "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", @@ -867,9 +917,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.22.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.22.0.tgz", - "integrity": "sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==", + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.23.0.tgz", + "integrity": "sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1039,6 +1089,18 @@ "node": ">=18" } }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.7.tgz", + "integrity": "sha512-5yximcFK5FNompXfJFoWanu5l8v1hNGqNHh9du1xETp9HWk/B/PzvchX55WYOPaIeNglG8++68AAiauBAtbnzw==", + "dev": true, + "optional": true, + "dependencies": { + "@emnapi/core": "^1.3.1", + "@emnapi/runtime": "^1.3.1", + "@tybys/wasm-util": "^0.9.0" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "license": "MIT", @@ -1068,15 +1130,6 @@ "node": ">= 8" } }, - "node_modules/@nolyfill/is-core-module": { - "version": "1.0.39", - "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", - "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", - "dev": true, - "engines": { - "node": ">=12.4.0" - } - }, "node_modules/@octokit/app": { "version": "15.1.4", "resolved": "https://registry.npmjs.org/@octokit/app/-/app-15.1.4.tgz", @@ -1486,6 +1539,11 @@ "node": ">= 18" } }, + "node_modules/@octokit/openapi-types": { + "version": "24.2.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-24.2.0.tgz", + "integrity": "sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==" + }, "node_modules/@octokit/openapi-webhooks-types": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/@octokit/openapi-webhooks-types/-/openapi-webhooks-types-9.1.0.tgz", @@ -1611,20 +1669,13 @@ "integrity": "sha512-0JCqzSKnStlRRQfCdowvqy3cy0Dvtlb8xecj/H8JFZuCze4rwjPZQOgvFvn0Ws/usCHQFGpyr+pB9adaGwXn4Q==" }, "node_modules/@octokit/types": { - "version": "13.8.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.8.0.tgz", - "integrity": "sha512-x7DjTIbEpEWXK99DMd01QfWy0hd5h4EN+Q7shkdKds3otGQP+oWE/y0A76i1OvH9fygo4ddvNf7ZvF0t78P98A==", - "license": "MIT", + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.10.0.tgz", + "integrity": "sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==", "dependencies": { - "@octokit/openapi-types": "^23.0.1" + "@octokit/openapi-types": "^24.2.0" } }, - "node_modules/@octokit/types/node_modules/@octokit/openapi-types": { - "version": "23.0.1", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-23.0.1.tgz", - "integrity": "sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g==", - "license": "MIT" - }, "node_modules/@octokit/webhooks": { "version": "13.6.1", "resolved": "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-13.6.1.tgz", @@ -1794,9 +1845,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.2.tgz", - "integrity": "sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==", + "version": "13.0.5", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", + "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1" @@ -1828,6 +1879,23 @@ "integrity": "sha512-DE427ROAphMQzU4ENbliGYrBSYPXF+TtLg9S8vzeA+OF4ZKzoDdzfL8sxuMUGS/lgRhM6j1URSk9ghf7Xo1tyA==", "dev": true }, + "node_modules/@tybys/wasm-util": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz", + "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@tybys/wasm-util/node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "optional": true + }, "node_modules/@types/adm-zip": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/@types/adm-zip/-/adm-zip-0.5.7.tgz", @@ -1919,16 +1987,16 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.26.1.tgz", - "integrity": "sha512-2X3mwqsj9Bd3Ciz508ZUtoQQYpOhU/kWoUqIf49H8Z0+Vbh6UF/y0OEYp0Q0axOGzaBGs7QxRwq0knSQ8khQNA==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.28.0.tgz", + "integrity": "sha512-lvFK3TCGAHsItNdWZ/1FkvpzCxTHUVuFrdnOGLMa0GGCFIbCgQWVk3CzCGdA7kM3qGVc+dfW9tr0Z/sHnGDFyg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/type-utils": "8.26.1", - "@typescript-eslint/utils": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/type-utils": "8.28.0", + "@typescript-eslint/utils": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -1948,13 +2016,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.1.tgz", - "integrity": "sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.28.0.tgz", + "integrity": "sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1965,9 +2033,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.1.tgz", - "integrity": "sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.28.0.tgz", + "integrity": "sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1978,13 +2046,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.1.tgz", - "integrity": "sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.28.0.tgz", + "integrity": "sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -2004,15 +2072,15 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.26.1.tgz", - "integrity": "sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.28.0.tgz", + "integrity": "sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1" + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2027,12 +2095,12 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.1.tgz", - "integrity": "sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.28.0.tgz", + "integrity": "sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -2080,9 +2148,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.1.tgz", - "integrity": "sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "engines": { "node": ">=18.12" @@ -2092,15 +2160,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.26.1.tgz", - "integrity": "sha512-w6HZUV4NWxqd8BdeFf81t07d7/YV9s7TCWrQQbG5uhuvGUAW+fq1usZ1Hmz9UPNLniFnD8GLSsDpjP0hm1S4lQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.28.0.tgz", + "integrity": "sha512-LPcw1yHD3ToaDEoljFEfQ9j2xShY367h7FZ1sq5NJT9I3yj4LHer1Xd1yRSOdYy9BpsrxU7R+eoDokChYM53lQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4" }, "engines": { @@ -2116,13 +2184,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.1.tgz", - "integrity": "sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.28.0.tgz", + "integrity": "sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2133,9 +2201,9 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.1.tgz", - "integrity": "sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.28.0.tgz", + "integrity": "sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2146,13 +2214,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.1.tgz", - "integrity": "sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.28.0.tgz", + "integrity": "sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -2172,12 +2240,12 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.1.tgz", - "integrity": "sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.28.0.tgz", + "integrity": "sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -2225,9 +2293,9 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.1.tgz", - "integrity": "sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "engines": { "node": ">=18.12" @@ -2255,13 +2323,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.26.1.tgz", - "integrity": "sha512-Kcj/TagJLwoY/5w9JGEFV0dclQdyqw9+VMndxOJKtoFSjfZhLXhYjzsQEeyza03rwHx2vFEGvrJWJBXKleRvZg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.28.0.tgz", + "integrity": "sha512-oRoXu2v0Rsy/VoOGhtWrOKDiIehvI+YNrDk5Oqj40Mwm0Yt01FC/Q7nFqg088d3yAsR1ZcZFVfPCTTFCe/KPwg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "8.26.1", - "@typescript-eslint/utils": "8.26.1", + "@typescript-eslint/typescript-estree": "8.28.0", + "@typescript-eslint/utils": "8.28.0", "debug": "^4.3.4", "ts-api-utils": "^2.0.1" }, @@ -2278,13 +2346,13 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.1.tgz", - "integrity": "sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.28.0.tgz", + "integrity": "sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2295,9 +2363,9 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.1.tgz", - "integrity": "sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.28.0.tgz", + "integrity": "sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2308,13 +2376,13 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.1.tgz", - "integrity": "sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.28.0.tgz", + "integrity": "sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -2334,15 +2402,15 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.26.1.tgz", - "integrity": "sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.28.0.tgz", + "integrity": "sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1" + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2357,12 +2425,12 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.1.tgz", - "integrity": "sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.28.0.tgz", + "integrity": "sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -2410,9 +2478,9 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.1.tgz", - "integrity": "sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "engines": { "node": ">=18.12" @@ -2554,6 +2622,152 @@ "dev": true, "license": "ISC" }, + "node_modules/@unrs/rspack-resolver-binding-darwin-arm64": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-darwin-arm64/-/rspack-resolver-binding-darwin-arm64-1.2.2.tgz", + "integrity": "sha512-i7z0B+C0P8Q63O/5PXJAzeFtA1ttY3OR2VSJgGv18S+PFNwD98xHgAgPOT1H5HIV6jlQP8Avzbp09qxJUdpPNw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-darwin-x64": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-darwin-x64/-/rspack-resolver-binding-darwin-x64-1.2.2.tgz", + "integrity": "sha512-YEdFzPjIbDUCfmehC6eS+AdJYtFWY35YYgWUnqqTM2oe/N58GhNy5yRllxYhxwJ9GcfHoNc6Ubze1yjkNv+9Qg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-freebsd-x64": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-freebsd-x64/-/rspack-resolver-binding-freebsd-x64-1.2.2.tgz", + "integrity": "sha512-TU4ntNXDgPN2giQyyzSnGWf/dVCem5lvwxg0XYvsvz35h5H19WrhTmHgbrULMuypCB3aHe1enYUC9rPLDw45mA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-linux-arm-gnueabihf": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-linux-arm-gnueabihf/-/rspack-resolver-binding-linux-arm-gnueabihf-1.2.2.tgz", + "integrity": "sha512-ik3w4/rU6RujBvNWiDnKdXi1smBhqxEDhccNi/j2rHaMjm0Fk49KkJ6XKsoUnD2kZ5xaMJf9JjailW/okfUPIw==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-linux-arm64-gnu": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-linux-arm64-gnu/-/rspack-resolver-binding-linux-arm64-gnu-1.2.2.tgz", + "integrity": "sha512-fp4Azi8kHz6TX8SFmKfyScZrMLfp++uRm2srpqRjsRZIIBzH74NtSkdEUHImR4G7f7XJ+sVZjCc6KDDK04YEpQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-linux-arm64-musl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-linux-arm64-musl/-/rspack-resolver-binding-linux-arm64-musl-1.2.2.tgz", + "integrity": "sha512-gMiG3DCFioJxdGBzhlL86KcFgt9HGz0iDhw0YVYPsShItpN5pqIkNrI+L/Q/0gfDiGrfcE0X3VANSYIPmqEAlQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-linux-x64-gnu": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-linux-x64-gnu/-/rspack-resolver-binding-linux-x64-gnu-1.2.2.tgz", + "integrity": "sha512-n/4n2CxaUF9tcaJxEaZm+lqvaw2gflfWQ1R9I7WQgYkKEKbRKbpG/R3hopYdUmLSRI4xaW1Cy0Bz40eS2Yi4Sw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-linux-x64-musl": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-linux-x64-musl/-/rspack-resolver-binding-linux-x64-musl-1.2.2.tgz", + "integrity": "sha512-cHyhAr6rlYYbon1L2Ag449YCj3p6XMfcYTP0AQX+KkQo025d1y/VFtPWvjMhuEsE2lLvtHm7GdJozj6BOMtzVg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-wasm32-wasi": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-wasm32-wasi/-/rspack-resolver-binding-wasm32-wasi-1.2.2.tgz", + "integrity": "sha512-eogDKuICghDLGc32FtP+WniG38IB1RcGOGz0G3z8406dUdjJvxfHGuGs/dSlM9YEp/v0lEqhJ4mBu6X2nL9pog==", + "cpu": [ + "wasm32" + ], + "dev": true, + "optional": true, + "dependencies": { + "@napi-rs/wasm-runtime": "^0.2.7" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@unrs/rspack-resolver-binding-win32-arm64-msvc": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-win32-arm64-msvc/-/rspack-resolver-binding-win32-arm64-msvc-1.2.2.tgz", + "integrity": "sha512-7sWRJumhpXSi2lccX8aQpfFXHsSVASdWndLv8AmD8nDRA/5PBi8IplQVZNx2mYRx6+Bp91Z00kuVqpXO9NfCTg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@unrs/rspack-resolver-binding-win32-x64-msvc": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-win32-x64-msvc/-/rspack-resolver-binding-win32-x64-msvc-1.2.2.tgz", + "integrity": "sha512-hewo/UMGP1a7O6FG/ThcPzSJdm/WwrYDNkdGgWl6M18H6K6MSitklomWpT9MUtT5KGj++QJb06va/14QBC4pvw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, "node_modules/abort-controller": { "version": "3.0.0", "license": "MIT", @@ -3696,10 +3910,9 @@ } }, "node_modules/debug": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", - "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "license": "MIT", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dependencies": { "ms": "^2.1.3" }, @@ -3876,19 +4089,6 @@ "version": "8.0.0", "license": "MIT" }, - "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/es-abstract": { "version": "1.23.3", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", @@ -4124,22 +4324,19 @@ } }, "node_modules/eslint-import-resolver-typescript": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.8.3.tgz", - "integrity": "sha512-A0bu4Ks2QqDWNpeEgTQMPTngaMhuDu4yv6xpftBMAf+1ziXnpx+eSR1WRfoPTe2BAiAjHFZ7kSNx1fvr5g5pmQ==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-4.2.2.tgz", + "integrity": "sha512-Rg1YEsb9UKLQ8BOv27cS3TZ6LhEAKQVgVOXArcE/sQrlnX8+FjmJRSC29ij1qrn+eurFuMsCFUcs7/+27T0vqQ==", "dev": true, - "license": "ISC", "dependencies": { - "@nolyfill/is-core-module": "1.0.39", - "debug": "^4.3.7", - "enhanced-resolve": "^5.15.0", + "debug": "^4.4.0", "get-tsconfig": "^4.10.0", - "is-bun-module": "^1.0.2", - "stable-hash": "^0.0.4", + "rspack-resolver": "^1.2.2", + "stable-hash": "^0.0.5", "tinyglobby": "^0.2.12" }, "engines": { - "node": "^14.18.0 || >=16.0.0" + "node": "^16.17.0 || >=18.6.0" }, "funding": { "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" @@ -4147,7 +4344,8 @@ "peerDependencies": { "eslint": "*", "eslint-plugin-import": "*", - "eslint-plugin-import-x": "*" + "eslint-plugin-import-x": "*", + "is-bun-module": "*" }, "peerDependenciesMeta": { "eslint-plugin-import": { @@ -4155,6 +4353,9 @@ }, "eslint-plugin-import-x": { "optional": true + }, + "is-bun-module": { + "optional": true } } }, @@ -4230,11 +4431,10 @@ } }, "node_modules/eslint-plugin-github": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/eslint-plugin-github/-/eslint-plugin-github-5.1.8.tgz", - "integrity": "sha512-A6q+R3EBMF7hxIViWpQsalqpu3O0POcQ9VpN1m9W2I8yGumw+SFxXZUTafBd9X9mgUJhaU4M9qSifC1q/39H3A==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-github/-/eslint-plugin-github-6.0.0.tgz", + "integrity": "sha512-J8MvUoiR/TU/Y9NnEmg1AnbvMUj9R6IO260z47zymMLLvso7B4c80IKjd8diqmqtSmeXXlbIus4i0SvK84flag==", "dev": true, - "license": "MIT", "dependencies": { "@eslint/compat": "^1.2.3", "@eslint/eslintrc": "^3.1.0", @@ -4253,10 +4453,11 @@ "eslint-plugin-no-only-tests": "^3.0.0", "eslint-plugin-prettier": "^5.2.1", "eslint-rule-documentation": ">=1.0.0", - "globals": "^15.12.0", + "globals": "^16.0.0", "jsx-ast-utils": "^3.3.2", "prettier": "^3.0.0", "svg-element-attributes": "^1.3.1", + "typescript": "^5.7.3", "typescript-eslint": "^8.14.0" }, "bin": { @@ -4329,11 +4530,10 @@ } }, "node_modules/eslint-plugin-github/node_modules/globals": { - "version": "15.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.13.0.tgz", - "integrity": "sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==", + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz", + "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==", "dev": true, - "license": "MIT", "engines": { "node": ">=18" }, @@ -5570,6 +5770,8 @@ "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-1.1.0.tgz", "integrity": "sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA==", "dev": true, + "optional": true, + "peer": true, "dependencies": { "semver": "^7.6.3" } @@ -7148,6 +7350,28 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rspack-resolver": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/rspack-resolver/-/rspack-resolver-1.2.2.tgz", + "integrity": "sha512-Fwc19jMBA3g+fxDJH2B4WxwZjE0VaaOL7OX/A4Wn5Zv7bOD/vyPZhzXfaO73Xc2GAlfi96g5fGUa378WbIGfFw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/JounQin" + }, + "optionalDependencies": { + "@unrs/rspack-resolver-binding-darwin-arm64": "1.2.2", + "@unrs/rspack-resolver-binding-darwin-x64": "1.2.2", + "@unrs/rspack-resolver-binding-freebsd-x64": "1.2.2", + "@unrs/rspack-resolver-binding-linux-arm-gnueabihf": "1.2.2", + "@unrs/rspack-resolver-binding-linux-arm64-gnu": "1.2.2", + "@unrs/rspack-resolver-binding-linux-arm64-musl": "1.2.2", + "@unrs/rspack-resolver-binding-linux-x64-gnu": "1.2.2", + "@unrs/rspack-resolver-binding-linux-x64-musl": "1.2.2", + "@unrs/rspack-resolver-binding-wasm32-wasi": "1.2.2", + "@unrs/rspack-resolver-binding-win32-arm64-msvc": "1.2.2", + "@unrs/rspack-resolver-binding-win32-x64-msvc": "1.2.2" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "funding": [ @@ -7333,13 +7557,13 @@ "license": "ISC" }, "node_modules/sinon": { - "version": "19.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.2.tgz", - "integrity": "sha512-euuToqM+PjO4UgXeLETsfQiuoyPXlqFezr6YZDFwHR3t4qaX0fZUe1MfPMznTL5f8BWrVS89KduLdMUsxFCO6g==", + "version": "19.0.5", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.5.tgz", + "integrity": "sha512-r15s9/s+ub/d4bxNXqIUmwp6imVSdTorIRaxoecYjqTVLZ8RuoXr/4EDGwIBo6Waxn7f2gnURX9zuhAfCwaF6Q==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", - "@sinonjs/fake-timers": "^13.0.2", + "@sinonjs/fake-timers": "^13.0.5", "@sinonjs/samsam": "^8.0.1", "diff": "^7.0.0", "nise": "^6.1.1", @@ -7408,11 +7632,10 @@ "license": "BSD-3-Clause" }, "node_modules/stable-hash": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.4.tgz", - "integrity": "sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==", - "dev": true, - "license": "MIT" + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", + "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", + "dev": true }, "node_modules/stack-utils": { "version": "2.0.6", @@ -7716,15 +7939,6 @@ "dev": true, "license": "0BSD" }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/tar-stream": { "version": "3.1.7", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", diff --git a/package.json b/package.json index 53a88eb0bc..c05255e125 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "dependencies": { "@actions/artifact": "^2.3.1", "@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2", - "@actions/cache": "^4.0.2", + "@actions/cache": "^4.0.3", "@actions/core": "^1.11.1", "@actions/exec": "^1.1.1", "@actions/github": "^6.0.0", @@ -33,7 +33,7 @@ "@actions/io": "^1.1.3", "@actions/tool-cache": "^2.0.2", "@octokit/plugin-retry": "^6.0.0", - "@octokit/types": "^13.8.0", + "@octokit/types": "^13.10.0", "@schemastore/package": "0.0.10", "@types/node-forge": "^1.3.11", "@types/uuid": "^10.0.0", @@ -59,8 +59,8 @@ "devDependencies": { "@ava/typescript": "4.1.0", "@eslint/compat": "^1.1.1", - "@eslint/eslintrc": "^3.3.0", - "@eslint/js": "^9.22.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "^9.23.0", "@microsoft/eslint-formatter-sarif": "^3.1.0", "@types/adm-zip": "^0.5.7", "@types/console-log-level": "^1.4.5", @@ -70,18 +70,18 @@ "@types/node": "20.9.0", "@types/semver": "^7.5.8", "@types/sinon": "^17.0.4", - "@typescript-eslint/eslint-plugin": "^8.26.1", - "@typescript-eslint/parser": "^8.26.1", + "@typescript-eslint/eslint-plugin": "^8.28.0", + "@typescript-eslint/parser": "^8.28.0", "ava": "^5.3.1", "eslint": "^8.57.1", - "eslint-import-resolver-typescript": "^3.8.3", + "eslint-import-resolver-typescript": "^4.2.2", "eslint-plugin-filenames": "^1.3.2", - "eslint-plugin-github": "^5.1.8", + "eslint-plugin-github": "^6.0.0", "eslint-plugin-import": "2.29.1", "eslint-plugin-no-async-foreach": "^0.1.1", "nock": "^14.0.1", "removeNPMAbsolutePaths": "3.0.1", - "sinon": "^19.0.2", + "sinon": "^19.0.5", "typescript": "^5.8.2" }, "overrides": { From 3670752ada361f64dc8baeabc28a05acf29c641c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 24 Mar 2025 18:38:38 +0000 Subject: [PATCH 2/2] Update checked-in dependencies --- node_modules/.package-lock.json | 360 +-- node_modules/@actions/cache/lib/cache.js | 2 +- node_modules/@actions/cache/lib/cache.js.map | 2 +- .../lib/internal/shared/cacheTwirpClient.js | 2 + .../internal/shared/cacheTwirpClient.js.map | 2 +- .../cache/lib/internal/shared/util.d.ts | 40 + .../cache/lib/internal/shared/util.js | 74 + .../cache/lib/internal/shared/util.js.map | 1 + node_modules/@actions/cache/package.json | 3 +- node_modules/@eslint/eslintrc/README.md | 10 +- node_modules/@eslint/eslintrc/package.json | 4 +- node_modules/@eslint/js/README.md | 71 +- node_modules/@eslint/js/package.json | 2 +- .../@eslint/js/src/configs/eslint-all.js | 2 - .../js/src/configs/eslint-recommended.js | 126 +- node_modules/@eslint/js/src/index.js | 16 +- node_modules/@eslint/js/types/index.d.ts | 16 +- node_modules/@nolyfill/is-core-module/LICENSE | 21 - .../@nolyfill/is-core-module/index.d.ts | 3 - .../@nolyfill/is-core-module/index.js | 1 - .../@nolyfill/is-core-module/package.json | 35 - .../@octokit => }/openapi-types/LICENSE | 0 .../@octokit => }/openapi-types/README.md | 0 .../@octokit => }/openapi-types/package.json | 4 +- .../@octokit => }/openapi-types/types.d.ts | 2435 ++++++++++++++--- .../@octokit/types/dist-types/VERSION.d.ts | 2 +- .../types/dist-types/generated/Endpoints.d.ts | 106 +- node_modules/@octokit/types/package.json | 8 +- .../@sinonjs/fake-timers/package.json | 2 +- .../fake-timers/src/fake-timers-src.js | 7 + .../rules/consistent-type-exports.d.ts.map | 2 +- .../dist/rules/consistent-type-exports.js | 10 +- .../dist/rules/no-empty-interface.d.ts.map | 2 +- .../dist/rules/no-empty-interface.js | 13 +- .../dist/rules/no-loss-of-precision.d.ts.map | 2 +- .../dist/rules/no-loss-of-precision.js | 13 +- .../dist/rules/no-type-alias.d.ts.map | 2 +- .../eslint-plugin/dist/rules/no-type-alias.js | 13 +- .../rules/no-unsafe-function-type.d.ts.map | 2 +- .../dist/rules/no-unsafe-function-type.js | 1 - .../dist/rules/no-unsafe-return.d.ts.map | 2 +- .../dist/rules/no-unsafe-return.js | 4 +- .../dist/rules/no-var-requires.d.ts.map | 2 +- .../dist/rules/no-var-requires.js | 13 +- .../dist/rules/prefer-nullish-coalescing.d.ts | 2 +- .../rules/prefer-nullish-coalescing.d.ts.map | 2 +- .../dist/rules/prefer-nullish-coalescing.js | 362 ++- .../rules/prefer-ts-expect-error.d.ts.map | 2 +- .../dist/rules/prefer-ts-expect-error.js | 13 +- .../rules/sort-type-constituents.d.ts.map | 2 +- .../dist/rules/sort-type-constituents.js | 27 +- .../docs/rules/no-unnecessary-condition.mdx | 67 +- .../docs/rules/prefer-nullish-coalescing.mdx | 49 + .../scope-manager/package.json | 8 +- .../@typescript-eslint/types/package.json | 2 +- .../typescript-estree/dist/convert.d.ts.map | 2 +- .../typescript-estree/dist/convert.js | 1 + .../typescript-estree/package.json | 6 +- .../utils/dist/ts-eslint/Rule.d.ts | 59 +- .../utils/dist/ts-eslint/Rule.d.ts.map | 2 +- .../@typescript-eslint/utils/package.json | 8 +- .../visitor-keys/package.json | 4 +- .../node_modules/ts-api-utils/README.md | 4 +- .../node_modules/ts-api-utils/lib/index.cjs | 42 +- .../node_modules/ts-api-utils/lib/index.d.cts | 54 +- .../node_modules/ts-api-utils/lib/index.d.ts | 54 +- .../node_modules/ts-api-utils/lib/index.js | 41 +- .../node_modules/ts-api-utils/package.json | 11 +- .../eslint-plugin/package.json | 14 +- .../scope-manager/package.json | 8 +- .../@typescript-eslint/types/package.json | 2 +- .../typescript-estree/dist/convert.d.ts.map | 2 +- .../typescript-estree/dist/convert.js | 1 + .../typescript-estree/package.json | 6 +- .../visitor-keys/package.json | 4 +- .../node_modules/ts-api-utils/README.md | 4 +- .../node_modules/ts-api-utils/lib/index.cjs | 42 +- .../node_modules/ts-api-utils/lib/index.d.cts | 54 +- .../node_modules/ts-api-utils/lib/index.d.ts | 54 +- .../node_modules/ts-api-utils/lib/index.js | 41 +- .../node_modules/ts-api-utils/package.json | 11 +- .../@typescript-eslint/parser/package.json | 10 +- .../scope-manager/package.json | 8 +- .../@typescript-eslint/types/package.json | 2 +- .../typescript-estree/dist/convert.d.ts.map | 2 +- .../typescript-estree/dist/convert.js | 1 + .../typescript-estree/package.json | 6 +- .../utils/dist/ts-eslint/Rule.d.ts | 59 +- .../utils/dist/ts-eslint/Rule.d.ts.map | 2 +- .../@typescript-eslint/utils/package.json | 8 +- .../visitor-keys/package.json | 4 +- .../node_modules/ts-api-utils/README.md | 4 +- .../node_modules/ts-api-utils/lib/index.cjs | 42 +- .../node_modules/ts-api-utils/lib/index.d.cts | 54 +- .../node_modules/ts-api-utils/lib/index.d.ts | 54 +- .../node_modules/ts-api-utils/lib/index.js | 41 +- .../node_modules/ts-api-utils/package.json | 11 +- .../type-utils/package.json | 8 +- .../README.md | 3 + .../package.json | 25 + .../resolver.darwin-arm64.node | Bin 0 -> 2260032 bytes node_modules/debug/package.json | 7 +- node_modules/debug/src/browser.js | 1 + node_modules/debug/src/common.js | 96 +- node_modules/enhanced-resolve/LICENSE | 20 - node_modules/enhanced-resolve/README.md | 183 -- .../enhanced-resolve/lib/AliasFieldPlugin.js | 108 - .../enhanced-resolve/lib/AliasPlugin.js | 154 -- .../enhanced-resolve/lib/AppendPlugin.js | 49 - .../lib/CachedInputFileSystem.js | 664 ----- .../lib/CloneBasenamePlugin.js | 53 - .../enhanced-resolve/lib/ConditionalPlugin.js | 59 - .../lib/DescriptionFilePlugin.js | 98 - .../lib/DescriptionFileUtils.js | 201 -- .../lib/DirectoryExistsPlugin.js | 63 - .../lib/ExportsFieldPlugin.js | 200 -- .../lib/ExtensionAliasPlugin.js | 101 - .../enhanced-resolve/lib/FileExistsPlugin.js | 58 - .../lib/ImportsFieldPlugin.js | 223 -- .../lib/JoinRequestPartPlugin.js | 75 - .../enhanced-resolve/lib/JoinRequestPlugin.js | 45 - .../enhanced-resolve/lib/LogInfoPlugin.js | 54 - .../enhanced-resolve/lib/MainFieldPlugin.js | 90 - .../ModulesInHierachicDirectoriesPlugin.js | 9 - .../ModulesInHierarchicalDirectoriesPlugin.js | 87 - .../lib/ModulesInRootPlugin.js | 49 - .../enhanced-resolve/lib/NextPlugin.js | 33 - .../enhanced-resolve/lib/ParsePlugin.js | 76 - .../enhanced-resolve/lib/PnpPlugin.js | 133 - node_modules/enhanced-resolve/lib/Resolver.js | 800 ------ .../enhanced-resolve/lib/ResolverFactory.js | 728 ----- .../lib/RestrictionsPlugin.js | 70 - .../enhanced-resolve/lib/ResultPlugin.js | 42 - .../enhanced-resolve/lib/RootsPlugin.js | 69 - .../lib/SelfReferencePlugin.js | 82 - .../enhanced-resolve/lib/SymlinkPlugin.js | 100 - .../lib/SyncAsyncFileSystemDecorator.js | 220 -- .../enhanced-resolve/lib/TryNextPlugin.js | 41 - .../enhanced-resolve/lib/UnsafeCachePlugin.js | 112 - .../enhanced-resolve/lib/UseFilePlugin.js | 55 - .../lib/createInnerContext.js | 46 - .../enhanced-resolve/lib/forEachBail.js | 50 - .../enhanced-resolve/lib/getInnerRequest.js | 36 - node_modules/enhanced-resolve/lib/getPaths.js | 45 - node_modules/enhanced-resolve/lib/index.js | 203 -- .../enhanced-resolve/lib/util/entrypoints.js | 573 ---- .../enhanced-resolve/lib/util/identifier.js | 27 - .../lib/util/module-browser.js | 8 - .../enhanced-resolve/lib/util/path.js | 203 -- .../lib/util/process-browser.js | 22 - node_modules/enhanced-resolve/package.json | 72 - node_modules/enhanced-resolve/types.d.ts | 1135 -------- .../README.md | 128 +- .../lib/constants.d.ts | 18 + .../lib/constants.js | 53 + .../lib/constants.js.map | 1 + .../lib/helpers.d.ts | 7 + .../lib/helpers.js | 65 + .../lib/helpers.js.map | 1 + .../lib/index.cjs | 585 ++-- .../lib/index.d.ts | 35 +- .../lib/index.es2020.mjs | 336 --- .../lib/index.js | 415 +-- .../lib/index.js.map | 2 +- .../lib/logger.d.ts | 2 + .../lib/logger.js | 4 + .../lib/logger.js.map | 1 + .../lib/normalize-options.d.ts | 3 + .../lib/normalize-options.js | 74 + .../lib/normalize-options.js.map | 1 + .../lib/types.d.ts | 8 + .../lib/types.js | 2 + .../lib/types.js.map | 1 + .../package.json | 94 +- node_modules/eslint-plugin-github/README.md | 12 +- .../lib/configs/browser.js | 2 +- .../lib/configs/flat/browser.js | 12 +- .../lib/configs/flat/internal.js | 6 +- .../lib/configs/flat/react.js | 8 +- .../lib/configs/flat/recommended.js | 18 +- .../lib/configs/flat/typescript.js | 11 +- .../lib/configs/internal.js | 2 +- .../eslint-plugin-github/lib/configs/react.js | 2 +- .../lib/configs/recommended.js | 2 +- .../lib/configs/typescript.js | 2 +- .../lib/formatters/stylish-fixes.js | 21 +- .../eslint-plugin-github/lib/index.js | 34 +- .../eslint-plugin-github/lib/plugin.js | 81 +- .../a11y-aria-label-is-well-formatted.js | 18 +- .../lib/rules/a11y-no-generic-link-text.js | 25 +- .../lib/rules/a11y-no-title-attribute.js | 19 +- ...-no-visually-hidden-interactive-element.js | 23 +- .../rules/a11y-role-supports-aria-props.js | 26 +- .../lib/rules/a11y-svg-has-accessible-name.js | 22 +- .../lib/rules/array-foreach.js | 12 +- .../lib/rules/async-currenttarget.js | 12 +- .../lib/rules/async-preventdefault.js | 12 +- .../lib/rules/authenticity-token.js | 14 +- .../lib/rules/filenames-match-regex.js | 27 +- .../lib/rules/get-attribute.js | 13 +- .../lib/rules/js-class-name.js | 15 +- .../eslint-plugin-github/lib/rules/no-blur.js | 12 +- .../lib/rules/no-d-none.js | 12 +- .../lib/rules/no-dataset.js | 12 +- .../lib/rules/no-dynamic-script-tag.js | 14 +- .../lib/rules/no-implicit-buggy-globals.js | 15 +- .../lib/rules/no-inner-html.js | 12 +- .../lib/rules/no-innerText.js | 12 +- .../eslint-plugin-github/lib/rules/no-then.js | 22 +- .../lib/rules/no-useless-passive.js | 13 +- .../lib/rules/prefer-observers.js | 13 +- .../lib/rules/require-passive-events.js | 12 +- .../lib/rules/unescaped-html-literal.js | 15 +- node_modules/eslint-plugin-github/lib/url.js | 13 +- .../lib/utils/commonjs-json-wrappers.cjs | 5 + .../lib/utils/get-element-type.js | 8 +- .../lib/utils/get-exported-name.js | 2 +- .../lib/utils/get-role.js | 13 +- .../lib/utils/is-ignored-filename.js | 2 +- .../lib/utils/object-map.js | 4 +- .../lib/utils/parse-filename.js | 4 +- .../node_modules/globals/globals.json | 206 +- .../node_modules/globals/index.d.ts | 206 +- .../node_modules/globals/package.json | 5 +- .../eslint-plugin-github/package.json | 6 +- node_modules/rspack-resolver/README.md | 39 + node_modules/rspack-resolver/browser.js | 1 + node_modules/rspack-resolver/index.d.ts | 227 ++ node_modules/rspack-resolver/index.js | 375 +++ node_modules/rspack-resolver/package.json | 60 + .../sinon/lib/sinon/default-behaviors.js | 7 +- node_modules/sinon/lib/sinon/fake.js | 6 +- node_modules/sinon/lib/sinon/mock.js | 7 +- node_modules/sinon/lib/sinon/sandbox.js | 28 +- node_modules/sinon/package.json | 8 +- node_modules/sinon/pkg/sinon-esm.js | 101 +- .../sinon/pkg/sinon-no-sourcemaps.cjs | 101 +- node_modules/sinon/pkg/sinon.js | 103 +- node_modules/stable-hash/dist/index.d.ts | 3 +- node_modules/stable-hash/dist/index.js | 2 +- node_modules/stable-hash/dist/index.mjs | 2 +- node_modules/stable-hash/package.json | 19 +- node_modules/tapable/LICENSE | 21 - node_modules/tapable/README.md | 296 -- .../tapable/lib/AsyncParallelBailHook.js | 85 - node_modules/tapable/lib/AsyncParallelHook.js | 37 - .../tapable/lib/AsyncSeriesBailHook.js | 42 - node_modules/tapable/lib/AsyncSeriesHook.js | 37 - .../tapable/lib/AsyncSeriesLoopHook.js | 37 - .../tapable/lib/AsyncSeriesWaterfallHook.js | 47 - node_modules/tapable/lib/Hook.js | 175 -- node_modules/tapable/lib/HookCodeFactory.js | 468 ---- node_modules/tapable/lib/HookMap.js | 61 - node_modules/tapable/lib/MultiHook.js | 54 - node_modules/tapable/lib/SyncBailHook.js | 51 - node_modules/tapable/lib/SyncHook.js | 46 - node_modules/tapable/lib/SyncLoopHook.js | 46 - node_modules/tapable/lib/SyncWaterfallHook.js | 57 - node_modules/tapable/lib/index.js | 19 - node_modules/tapable/lib/util-browser.js | 16 - node_modules/tapable/package.json | 44 - node_modules/tapable/tapable.d.ts | 116 - 262 files changed, 6221 insertions(+), 12125 deletions(-) create mode 100644 node_modules/@actions/cache/lib/internal/shared/util.d.ts create mode 100644 node_modules/@actions/cache/lib/internal/shared/util.js create mode 100644 node_modules/@actions/cache/lib/internal/shared/util.js.map delete mode 100644 node_modules/@nolyfill/is-core-module/LICENSE delete mode 100644 node_modules/@nolyfill/is-core-module/index.d.ts delete mode 100644 node_modules/@nolyfill/is-core-module/index.js delete mode 100644 node_modules/@nolyfill/is-core-module/package.json rename node_modules/@octokit/{types/node_modules/@octokit => }/openapi-types/LICENSE (100%) rename node_modules/@octokit/{types/node_modules/@octokit => }/openapi-types/README.md (100%) rename node_modules/@octokit/{types/node_modules/@octokit => }/openapi-types/package.json (90%) rename node_modules/@octokit/{types/node_modules/@octokit => }/openapi-types/types.d.ts (97%) create mode 100644 node_modules/@unrs/rspack-resolver-binding-darwin-arm64/README.md create mode 100644 node_modules/@unrs/rspack-resolver-binding-darwin-arm64/package.json create mode 100644 node_modules/@unrs/rspack-resolver-binding-darwin-arm64/resolver.darwin-arm64.node delete mode 100644 node_modules/enhanced-resolve/LICENSE delete mode 100644 node_modules/enhanced-resolve/README.md delete mode 100644 node_modules/enhanced-resolve/lib/AliasFieldPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/AliasPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/AppendPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/CachedInputFileSystem.js delete mode 100644 node_modules/enhanced-resolve/lib/CloneBasenamePlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ConditionalPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/DescriptionFilePlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/DescriptionFileUtils.js delete mode 100644 node_modules/enhanced-resolve/lib/DirectoryExistsPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ExportsFieldPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ExtensionAliasPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/FileExistsPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ImportsFieldPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/JoinRequestPartPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/JoinRequestPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/LogInfoPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/MainFieldPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ModulesInHierachicDirectoriesPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ModulesInHierarchicalDirectoriesPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ModulesInRootPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/NextPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ParsePlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/PnpPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/Resolver.js delete mode 100644 node_modules/enhanced-resolve/lib/ResolverFactory.js delete mode 100644 node_modules/enhanced-resolve/lib/RestrictionsPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/ResultPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/RootsPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/SelfReferencePlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/SymlinkPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/SyncAsyncFileSystemDecorator.js delete mode 100644 node_modules/enhanced-resolve/lib/TryNextPlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/UseFilePlugin.js delete mode 100644 node_modules/enhanced-resolve/lib/createInnerContext.js delete mode 100644 node_modules/enhanced-resolve/lib/forEachBail.js delete mode 100644 node_modules/enhanced-resolve/lib/getInnerRequest.js delete mode 100644 node_modules/enhanced-resolve/lib/getPaths.js delete mode 100644 node_modules/enhanced-resolve/lib/index.js delete mode 100644 node_modules/enhanced-resolve/lib/util/entrypoints.js delete mode 100644 node_modules/enhanced-resolve/lib/util/identifier.js delete mode 100644 node_modules/enhanced-resolve/lib/util/module-browser.js delete mode 100644 node_modules/enhanced-resolve/lib/util/path.js delete mode 100644 node_modules/enhanced-resolve/lib/util/process-browser.js delete mode 100644 node_modules/enhanced-resolve/package.json delete mode 100644 node_modules/enhanced-resolve/types.d.ts create mode 100644 node_modules/eslint-import-resolver-typescript/lib/constants.d.ts create mode 100644 node_modules/eslint-import-resolver-typescript/lib/constants.js create mode 100644 node_modules/eslint-import-resolver-typescript/lib/constants.js.map create mode 100644 node_modules/eslint-import-resolver-typescript/lib/helpers.d.ts create mode 100644 node_modules/eslint-import-resolver-typescript/lib/helpers.js create mode 100644 node_modules/eslint-import-resolver-typescript/lib/helpers.js.map delete mode 100644 node_modules/eslint-import-resolver-typescript/lib/index.es2020.mjs create mode 100644 node_modules/eslint-import-resolver-typescript/lib/logger.d.ts create mode 100644 node_modules/eslint-import-resolver-typescript/lib/logger.js create mode 100644 node_modules/eslint-import-resolver-typescript/lib/logger.js.map create mode 100644 node_modules/eslint-import-resolver-typescript/lib/normalize-options.d.ts create mode 100644 node_modules/eslint-import-resolver-typescript/lib/normalize-options.js create mode 100644 node_modules/eslint-import-resolver-typescript/lib/normalize-options.js.map create mode 100644 node_modules/eslint-import-resolver-typescript/lib/types.d.ts create mode 100644 node_modules/eslint-import-resolver-typescript/lib/types.js create mode 100644 node_modules/eslint-import-resolver-typescript/lib/types.js.map create mode 100644 node_modules/eslint-plugin-github/lib/utils/commonjs-json-wrappers.cjs create mode 100644 node_modules/rspack-resolver/README.md create mode 100644 node_modules/rspack-resolver/browser.js create mode 100644 node_modules/rspack-resolver/index.d.ts create mode 100644 node_modules/rspack-resolver/index.js create mode 100644 node_modules/rspack-resolver/package.json delete mode 100644 node_modules/tapable/LICENSE delete mode 100644 node_modules/tapable/README.md delete mode 100644 node_modules/tapable/lib/AsyncParallelBailHook.js delete mode 100644 node_modules/tapable/lib/AsyncParallelHook.js delete mode 100644 node_modules/tapable/lib/AsyncSeriesBailHook.js delete mode 100644 node_modules/tapable/lib/AsyncSeriesHook.js delete mode 100644 node_modules/tapable/lib/AsyncSeriesLoopHook.js delete mode 100644 node_modules/tapable/lib/AsyncSeriesWaterfallHook.js delete mode 100644 node_modules/tapable/lib/Hook.js delete mode 100644 node_modules/tapable/lib/HookCodeFactory.js delete mode 100644 node_modules/tapable/lib/HookMap.js delete mode 100644 node_modules/tapable/lib/MultiHook.js delete mode 100644 node_modules/tapable/lib/SyncBailHook.js delete mode 100644 node_modules/tapable/lib/SyncHook.js delete mode 100644 node_modules/tapable/lib/SyncLoopHook.js delete mode 100644 node_modules/tapable/lib/SyncWaterfallHook.js delete mode 100644 node_modules/tapable/lib/index.js delete mode 100644 node_modules/tapable/lib/util-browser.js delete mode 100644 node_modules/tapable/package.json delete mode 100644 node_modules/tapable/tapable.d.ts diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json index e0411ef10e..68f163cc1a 100644 --- a/node_modules/.package-lock.json +++ b/node_modules/.package-lock.json @@ -208,10 +208,9 @@ } }, "node_modules/@actions/cache": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-4.0.2.tgz", - "integrity": "sha512-cBr7JL1q+JKjbBd3w3SZN5OQ1Xg+/D8QLMcE7MpgpghZlL4biBO0ZEeraoTxCZyfN0YY0dxXlLgsgGv/sT5BTg==", - "license": "MIT", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-4.0.3.tgz", + "integrity": "sha512-SvrqFtYJ7I48A/uXNkoJrnukx5weQv1fGquhs3+4nkByZThBH109KTIqj5x/cGV7JGNvb8dLPVywUOqX1fjiXg==", "dependencies": { "@actions/core": "^1.11.1", "@actions/exec": "^1.0.1", @@ -734,11 +733,10 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.0.tgz", - "integrity": "sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", "dev": true, - "license": "MIT", "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", @@ -799,9 +797,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.22.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.22.0.tgz", - "integrity": "sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==", + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.23.0.tgz", + "integrity": "sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1000,15 +998,6 @@ "node": ">= 8" } }, - "node_modules/@nolyfill/is-core-module": { - "version": "1.0.39", - "resolved": "https://registry.npmjs.org/@nolyfill/is-core-module/-/is-core-module-1.0.39.tgz", - "integrity": "sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==", - "dev": true, - "engines": { - "node": ">=12.4.0" - } - }, "node_modules/@octokit/app": { "version": "15.1.4", "resolved": "https://registry.npmjs.org/@octokit/app/-/app-15.1.4.tgz", @@ -1418,6 +1407,11 @@ "node": ">= 18" } }, + "node_modules/@octokit/openapi-types": { + "version": "24.2.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-24.2.0.tgz", + "integrity": "sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==" + }, "node_modules/@octokit/openapi-webhooks-types": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/@octokit/openapi-webhooks-types/-/openapi-webhooks-types-9.1.0.tgz", @@ -1543,20 +1537,13 @@ "integrity": "sha512-0JCqzSKnStlRRQfCdowvqy3cy0Dvtlb8xecj/H8JFZuCze4rwjPZQOgvFvn0Ws/usCHQFGpyr+pB9adaGwXn4Q==" }, "node_modules/@octokit/types": { - "version": "13.8.0", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.8.0.tgz", - "integrity": "sha512-x7DjTIbEpEWXK99DMd01QfWy0hd5h4EN+Q7shkdKds3otGQP+oWE/y0A76i1OvH9fygo4ddvNf7ZvF0t78P98A==", - "license": "MIT", + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.10.0.tgz", + "integrity": "sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==", "dependencies": { - "@octokit/openapi-types": "^23.0.1" + "@octokit/openapi-types": "^24.2.0" } }, - "node_modules/@octokit/types/node_modules/@octokit/openapi-types": { - "version": "23.0.1", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-23.0.1.tgz", - "integrity": "sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g==", - "license": "MIT" - }, "node_modules/@octokit/webhooks": { "version": "13.6.1", "resolved": "https://registry.npmjs.org/@octokit/webhooks/-/webhooks-13.6.1.tgz", @@ -1726,9 +1713,9 @@ } }, "node_modules/@sinonjs/fake-timers": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.2.tgz", - "integrity": "sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==", + "version": "13.0.5", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", + "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1" @@ -1851,16 +1838,16 @@ "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.26.1.tgz", - "integrity": "sha512-2X3mwqsj9Bd3Ciz508ZUtoQQYpOhU/kWoUqIf49H8Z0+Vbh6UF/y0OEYp0Q0axOGzaBGs7QxRwq0knSQ8khQNA==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.28.0.tgz", + "integrity": "sha512-lvFK3TCGAHsItNdWZ/1FkvpzCxTHUVuFrdnOGLMa0GGCFIbCgQWVk3CzCGdA7kM3qGVc+dfW9tr0Z/sHnGDFyg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/type-utils": "8.26.1", - "@typescript-eslint/utils": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/type-utils": "8.28.0", + "@typescript-eslint/utils": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -1880,13 +1867,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.1.tgz", - "integrity": "sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.28.0.tgz", + "integrity": "sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1897,9 +1884,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.1.tgz", - "integrity": "sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.28.0.tgz", + "integrity": "sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1910,13 +1897,13 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.1.tgz", - "integrity": "sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.28.0.tgz", + "integrity": "sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -1936,15 +1923,15 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.26.1.tgz", - "integrity": "sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.28.0.tgz", + "integrity": "sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1" + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1959,12 +1946,12 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.1.tgz", - "integrity": "sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.28.0.tgz", + "integrity": "sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -2012,9 +1999,9 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.1.tgz", - "integrity": "sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "engines": { "node": ">=18.12" @@ -2024,15 +2011,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.26.1.tgz", - "integrity": "sha512-w6HZUV4NWxqd8BdeFf81t07d7/YV9s7TCWrQQbG5uhuvGUAW+fq1usZ1Hmz9UPNLniFnD8GLSsDpjP0hm1S4lQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.28.0.tgz", + "integrity": "sha512-LPcw1yHD3ToaDEoljFEfQ9j2xShY367h7FZ1sq5NJT9I3yj4LHer1Xd1yRSOdYy9BpsrxU7R+eoDokChYM53lQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4" }, "engines": { @@ -2048,13 +2035,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.1.tgz", - "integrity": "sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.28.0.tgz", + "integrity": "sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2065,9 +2052,9 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.1.tgz", - "integrity": "sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.28.0.tgz", + "integrity": "sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2078,13 +2065,13 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.1.tgz", - "integrity": "sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.28.0.tgz", + "integrity": "sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -2104,12 +2091,12 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.1.tgz", - "integrity": "sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.28.0.tgz", + "integrity": "sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -2157,9 +2144,9 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/ts-api-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.1.tgz", - "integrity": "sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "engines": { "node": ">=18.12" @@ -2187,13 +2174,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.26.1.tgz", - "integrity": "sha512-Kcj/TagJLwoY/5w9JGEFV0dclQdyqw9+VMndxOJKtoFSjfZhLXhYjzsQEeyza03rwHx2vFEGvrJWJBXKleRvZg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.28.0.tgz", + "integrity": "sha512-oRoXu2v0Rsy/VoOGhtWrOKDiIehvI+YNrDk5Oqj40Mwm0Yt01FC/Q7nFqg088d3yAsR1ZcZFVfPCTTFCe/KPwg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "8.26.1", - "@typescript-eslint/utils": "8.26.1", + "@typescript-eslint/typescript-estree": "8.28.0", + "@typescript-eslint/utils": "8.28.0", "debug": "^4.3.4", "ts-api-utils": "^2.0.1" }, @@ -2210,13 +2197,13 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.26.1.tgz", - "integrity": "sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.28.0.tgz", + "integrity": "sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2227,9 +2214,9 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.26.1.tgz", - "integrity": "sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.28.0.tgz", + "integrity": "sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2240,13 +2227,13 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.1.tgz", - "integrity": "sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.28.0.tgz", + "integrity": "sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -2266,15 +2253,15 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.26.1.tgz", - "integrity": "sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.28.0.tgz", + "integrity": "sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1" + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2289,12 +2276,12 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "8.26.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.1.tgz", - "integrity": "sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg==", + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.28.0.tgz", + "integrity": "sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -2342,9 +2329,9 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.1.tgz", - "integrity": "sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "engines": { "node": ">=18.12" @@ -2486,6 +2473,19 @@ "dev": true, "license": "ISC" }, + "node_modules/@unrs/rspack-resolver-binding-darwin-arm64": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@unrs/rspack-resolver-binding-darwin-arm64/-/rspack-resolver-binding-darwin-arm64-1.2.2.tgz", + "integrity": "sha512-i7z0B+C0P8Q63O/5PXJAzeFtA1ttY3OR2VSJgGv18S+PFNwD98xHgAgPOT1H5HIV6jlQP8Avzbp09qxJUdpPNw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, "node_modules/abort-controller": { "version": "3.0.0", "license": "MIT", @@ -3628,10 +3628,9 @@ } }, "node_modules/debug": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", - "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "license": "MIT", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dependencies": { "ms": "^2.1.3" }, @@ -3808,19 +3807,6 @@ "version": "8.0.0", "license": "MIT" }, - "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/es-abstract": { "version": "1.23.3", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", @@ -4056,22 +4042,19 @@ } }, "node_modules/eslint-import-resolver-typescript": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.8.3.tgz", - "integrity": "sha512-A0bu4Ks2QqDWNpeEgTQMPTngaMhuDu4yv6xpftBMAf+1ziXnpx+eSR1WRfoPTe2BAiAjHFZ7kSNx1fvr5g5pmQ==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-4.2.2.tgz", + "integrity": "sha512-Rg1YEsb9UKLQ8BOv27cS3TZ6LhEAKQVgVOXArcE/sQrlnX8+FjmJRSC29ij1qrn+eurFuMsCFUcs7/+27T0vqQ==", "dev": true, - "license": "ISC", "dependencies": { - "@nolyfill/is-core-module": "1.0.39", - "debug": "^4.3.7", - "enhanced-resolve": "^5.15.0", + "debug": "^4.4.0", "get-tsconfig": "^4.10.0", - "is-bun-module": "^1.0.2", - "stable-hash": "^0.0.4", + "rspack-resolver": "^1.2.2", + "stable-hash": "^0.0.5", "tinyglobby": "^0.2.12" }, "engines": { - "node": "^14.18.0 || >=16.0.0" + "node": "^16.17.0 || >=18.6.0" }, "funding": { "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" @@ -4079,7 +4062,8 @@ "peerDependencies": { "eslint": "*", "eslint-plugin-import": "*", - "eslint-plugin-import-x": "*" + "eslint-plugin-import-x": "*", + "is-bun-module": "*" }, "peerDependenciesMeta": { "eslint-plugin-import": { @@ -4087,6 +4071,9 @@ }, "eslint-plugin-import-x": { "optional": true + }, + "is-bun-module": { + "optional": true } } }, @@ -4162,11 +4149,10 @@ } }, "node_modules/eslint-plugin-github": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/eslint-plugin-github/-/eslint-plugin-github-5.1.8.tgz", - "integrity": "sha512-A6q+R3EBMF7hxIViWpQsalqpu3O0POcQ9VpN1m9W2I8yGumw+SFxXZUTafBd9X9mgUJhaU4M9qSifC1q/39H3A==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-github/-/eslint-plugin-github-6.0.0.tgz", + "integrity": "sha512-J8MvUoiR/TU/Y9NnEmg1AnbvMUj9R6IO260z47zymMLLvso7B4c80IKjd8diqmqtSmeXXlbIus4i0SvK84flag==", "dev": true, - "license": "MIT", "dependencies": { "@eslint/compat": "^1.2.3", "@eslint/eslintrc": "^3.1.0", @@ -4185,10 +4171,11 @@ "eslint-plugin-no-only-tests": "^3.0.0", "eslint-plugin-prettier": "^5.2.1", "eslint-rule-documentation": ">=1.0.0", - "globals": "^15.12.0", + "globals": "^16.0.0", "jsx-ast-utils": "^3.3.2", "prettier": "^3.0.0", "svg-element-attributes": "^1.3.1", + "typescript": "^5.7.3", "typescript-eslint": "^8.14.0" }, "bin": { @@ -4261,11 +4248,10 @@ } }, "node_modules/eslint-plugin-github/node_modules/globals": { - "version": "15.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.13.0.tgz", - "integrity": "sha512-49TewVEz0UxZjr1WYYsWpPrhyC/B/pA8Bq0fUmet2n+eR7yn0IvNzNaoBwnK6mdkzcN+se7Ez9zUgULTz2QH4g==", + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz", + "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==", "dev": true, - "license": "MIT", "engines": { "node": ">=18" }, @@ -5502,6 +5488,8 @@ "resolved": "https://registry.npmjs.org/is-bun-module/-/is-bun-module-1.1.0.tgz", "integrity": "sha512-4mTAVPlrXpaN3jtF0lsnPCMGnq4+qZjVIKq0HCpfcqf8OC1SM5oATCIAPM5V5FN05qp2NNnFndphmdZS9CV3hA==", "dev": true, + "optional": true, + "peer": true, "dependencies": { "semver": "^7.6.3" } @@ -7080,6 +7068,28 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rspack-resolver": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/rspack-resolver/-/rspack-resolver-1.2.2.tgz", + "integrity": "sha512-Fwc19jMBA3g+fxDJH2B4WxwZjE0VaaOL7OX/A4Wn5Zv7bOD/vyPZhzXfaO73Xc2GAlfi96g5fGUa378WbIGfFw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/JounQin" + }, + "optionalDependencies": { + "@unrs/rspack-resolver-binding-darwin-arm64": "1.2.2", + "@unrs/rspack-resolver-binding-darwin-x64": "1.2.2", + "@unrs/rspack-resolver-binding-freebsd-x64": "1.2.2", + "@unrs/rspack-resolver-binding-linux-arm-gnueabihf": "1.2.2", + "@unrs/rspack-resolver-binding-linux-arm64-gnu": "1.2.2", + "@unrs/rspack-resolver-binding-linux-arm64-musl": "1.2.2", + "@unrs/rspack-resolver-binding-linux-x64-gnu": "1.2.2", + "@unrs/rspack-resolver-binding-linux-x64-musl": "1.2.2", + "@unrs/rspack-resolver-binding-wasm32-wasi": "1.2.2", + "@unrs/rspack-resolver-binding-win32-arm64-msvc": "1.2.2", + "@unrs/rspack-resolver-binding-win32-x64-msvc": "1.2.2" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "funding": [ @@ -7265,13 +7275,13 @@ "license": "ISC" }, "node_modules/sinon": { - "version": "19.0.2", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.2.tgz", - "integrity": "sha512-euuToqM+PjO4UgXeLETsfQiuoyPXlqFezr6YZDFwHR3t4qaX0fZUe1MfPMznTL5f8BWrVS89KduLdMUsxFCO6g==", + "version": "19.0.5", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-19.0.5.tgz", + "integrity": "sha512-r15s9/s+ub/d4bxNXqIUmwp6imVSdTorIRaxoecYjqTVLZ8RuoXr/4EDGwIBo6Waxn7f2gnURX9zuhAfCwaF6Q==", "dev": true, "dependencies": { "@sinonjs/commons": "^3.0.1", - "@sinonjs/fake-timers": "^13.0.2", + "@sinonjs/fake-timers": "^13.0.5", "@sinonjs/samsam": "^8.0.1", "diff": "^7.0.0", "nise": "^6.1.1", @@ -7340,11 +7350,10 @@ "license": "BSD-3-Clause" }, "node_modules/stable-hash": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.4.tgz", - "integrity": "sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==", - "dev": true, - "license": "MIT" + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.5.tgz", + "integrity": "sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==", + "dev": true }, "node_modules/stack-utils": { "version": "2.0.6", @@ -7648,15 +7657,6 @@ "dev": true, "license": "0BSD" }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/tar-stream": { "version": "3.1.7", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", diff --git a/node_modules/@actions/cache/lib/cache.js b/node_modules/@actions/cache/lib/cache.js index d3317fd546..e9e45c9cbf 100644 --- a/node_modules/@actions/cache/lib/cache.js +++ b/node_modules/@actions/cache/lib/cache.js @@ -213,7 +213,7 @@ function restoreCacheV2(paths, primaryKey, restoreKeys, options, enableCrossOsAr }; const response = yield twirpClient.GetCacheEntryDownloadURL(request); if (!response.ok) { - core.debug(`Cache not found for keys: ${keys.join(', ')}`); + core.debug(`Cache not found for version ${request.version} of keys: ${keys.join(', ')}`); return undefined; } core.info(`Cache hit for: ${request.key}`); diff --git a/node_modules/@actions/cache/lib/cache.js.map b/node_modules/@actions/cache/lib/cache.js.map index d5f1f64776..3dedc5d692 100644 --- a/node_modules/@actions/cache/lib/cache.js.map +++ b/node_modules/@actions/cache/lib/cache.js.map @@ -1 +1 @@ -{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"cache.js","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@actions/cache/lib/internal/shared/cacheTwirpClient.js b/node_modules/@actions/cache/lib/internal/shared/cacheTwirpClient.js index d91d2e34b8..a586f4a84f 100644 --- a/node_modules/@actions/cache/lib/internal/shared/cacheTwirpClient.js +++ b/node_modules/@actions/cache/lib/internal/shared/cacheTwirpClient.js @@ -18,6 +18,7 @@ const cacheUtils_1 = require("../cacheUtils"); const auth_1 = require("@actions/http-client/lib/auth"); const http_client_1 = require("@actions/http-client"); const cache_twirp_client_1 = require("../../generated/results/api/v1/cache.twirp-client"); +const util_1 = require("./util"); /** * This class is a wrapper around the CacheServiceClientJSON class generated by Twirp. * @@ -77,6 +78,7 @@ class CacheServiceClient { (0, core_1.debug)(`[Response] - ${response.message.statusCode}`); (0, core_1.debug)(`Headers: ${JSON.stringify(response.message.headers, null, 2)}`); const body = JSON.parse(rawBody); + (0, util_1.maskSecretUrls)(body); (0, core_1.debug)(`Body: ${JSON.stringify(body, null, 2)}`); if (this.isSuccessStatusCode(statusCode)) { return { response, body }; diff --git a/node_modules/@actions/cache/lib/internal/shared/cacheTwirpClient.js.map b/node_modules/@actions/cache/lib/internal/shared/cacheTwirpClient.js.map index 291a2427cc..c4e8758b8e 100644 --- a/node_modules/@actions/cache/lib/internal/shared/cacheTwirpClient.js.map +++ b/node_modules/@actions/cache/lib/internal/shared/cacheTwirpClient.js.map @@ -1 +1 @@ -{"version":3,"file":"cacheTwirpClient.js","sourceRoot":"","sources":["../../../src/internal/shared/cacheTwirpClient.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"cacheTwirpClient.js","sourceRoot":"","sources":["../../../src/internal/shared/cacheTwirpClient.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@actions/cache/lib/internal/shared/util.d.ts b/node_modules/@actions/cache/lib/internal/shared/util.d.ts new file mode 100644 index 0000000000..c39dbcef3f --- /dev/null +++ b/node_modules/@actions/cache/lib/internal/shared/util.d.ts @@ -0,0 +1,40 @@ +/** + * Masks the `sig` parameter in a URL and sets it as a secret. + * + * @param url - The URL containing the signature parameter to mask + * @remarks + * This function attempts to parse the provided URL and identify the 'sig' query parameter. + * If found, it registers both the raw and URL-encoded signature values as secrets using + * the Actions `setSecret` API, which prevents them from being displayed in logs. + * + * The function handles errors gracefully if URL parsing fails, logging them as debug messages. + * + * @example + * ```typescript + * // Mask a signature in an Azure SAS token URL + * maskSigUrl('https://example.blob.core.windows.net/container/file.txt?sig=abc123&se=2023-01-01'); + * ``` + */ +export declare function maskSigUrl(url: string): void; +/** + * Masks sensitive information in URLs containing signature parameters. + * Currently supports masking 'sig' parameters in the 'signed_upload_url' + * and 'signed_download_url' properties of the provided object. + * + * @param body - The object should contain a signature + * @remarks + * This function extracts URLs from the object properties and calls maskSigUrl + * on each one to redact sensitive signature information. The function doesn't + * modify the original object; it only marks the signatures as secrets for + * logging purposes. + * + * @example + * ```typescript + * const responseBody = { + * signed_upload_url: 'https://blob.core.windows.net/?sig=abc123', + * signed_download_url: 'https://blob.core/windows.net/?sig=def456' + * }; + * maskSecretUrls(responseBody); + * ``` + */ +export declare function maskSecretUrls(body: Record | null): void; diff --git a/node_modules/@actions/cache/lib/internal/shared/util.js b/node_modules/@actions/cache/lib/internal/shared/util.js new file mode 100644 index 0000000000..ac7695a487 --- /dev/null +++ b/node_modules/@actions/cache/lib/internal/shared/util.js @@ -0,0 +1,74 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.maskSecretUrls = exports.maskSigUrl = void 0; +const core_1 = require("@actions/core"); +/** + * Masks the `sig` parameter in a URL and sets it as a secret. + * + * @param url - The URL containing the signature parameter to mask + * @remarks + * This function attempts to parse the provided URL and identify the 'sig' query parameter. + * If found, it registers both the raw and URL-encoded signature values as secrets using + * the Actions `setSecret` API, which prevents them from being displayed in logs. + * + * The function handles errors gracefully if URL parsing fails, logging them as debug messages. + * + * @example + * ```typescript + * // Mask a signature in an Azure SAS token URL + * maskSigUrl('https://example.blob.core.windows.net/container/file.txt?sig=abc123&se=2023-01-01'); + * ``` + */ +function maskSigUrl(url) { + if (!url) + return; + try { + const parsedUrl = new URL(url); + const signature = parsedUrl.searchParams.get('sig'); + if (signature) { + (0, core_1.setSecret)(signature); + (0, core_1.setSecret)(encodeURIComponent(signature)); + } + } + catch (error) { + (0, core_1.debug)(`Failed to parse URL: ${url} ${error instanceof Error ? error.message : String(error)}`); + } +} +exports.maskSigUrl = maskSigUrl; +/** + * Masks sensitive information in URLs containing signature parameters. + * Currently supports masking 'sig' parameters in the 'signed_upload_url' + * and 'signed_download_url' properties of the provided object. + * + * @param body - The object should contain a signature + * @remarks + * This function extracts URLs from the object properties and calls maskSigUrl + * on each one to redact sensitive signature information. The function doesn't + * modify the original object; it only marks the signatures as secrets for + * logging purposes. + * + * @example + * ```typescript + * const responseBody = { + * signed_upload_url: 'https://blob.core.windows.net/?sig=abc123', + * signed_download_url: 'https://blob.core/windows.net/?sig=def456' + * }; + * maskSecretUrls(responseBody); + * ``` + */ +function maskSecretUrls(body) { + if (typeof body !== 'object' || body === null) { + (0, core_1.debug)('body is not an object or is null'); + return; + } + if ('signed_upload_url' in body && + typeof body.signed_upload_url === 'string') { + maskSigUrl(body.signed_upload_url); + } + if ('signed_download_url' in body && + typeof body.signed_download_url === 'string') { + maskSigUrl(body.signed_download_url); + } +} +exports.maskSecretUrls = maskSecretUrls; +//# sourceMappingURL=util.js.map \ No newline at end of file diff --git a/node_modules/@actions/cache/lib/internal/shared/util.js.map b/node_modules/@actions/cache/lib/internal/shared/util.js.map new file mode 100644 index 0000000000..2b1f770d2e --- /dev/null +++ b/node_modules/@actions/cache/lib/internal/shared/util.js.map @@ -0,0 +1 @@ +{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/internal/shared/util.ts"],"names":[],"mappings":";;;AAAA,wCAA8C;AAE9C;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,UAAU,CAAC,GAAW;IACpC,IAAI,CAAC,GAAG;QAAE,OAAM;IAChB,IAAI;QACF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACnD,IAAI,SAAS,EAAE;YACb,IAAA,gBAAS,EAAC,SAAS,CAAC,CAAA;YACpB,IAAA,gBAAS,EAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAA;SACzC;KACF;IAAC,OAAO,KAAK,EAAE;QACd,IAAA,YAAK,EACH,wBAAwB,GAAG,IACzB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAA;KACF;AACH,CAAC;AAhBD,gCAgBC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,cAAc,CAAC,IAAoC;IACjE,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE;QAC7C,IAAA,YAAK,EAAC,kCAAkC,CAAC,CAAA;QACzC,OAAM;KACP;IACD,IACE,mBAAmB,IAAI,IAAI;QAC3B,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAC1C;QACA,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;KACnC;IACD,IACE,qBAAqB,IAAI,IAAI;QAC7B,OAAO,IAAI,CAAC,mBAAmB,KAAK,QAAQ,EAC5C;QACA,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;KACrC;AACH,CAAC;AAjBD,wCAiBC"} \ No newline at end of file diff --git a/node_modules/@actions/cache/package.json b/node_modules/@actions/cache/package.json index 3a200f89e6..c2cbc6e66e 100644 --- a/node_modules/@actions/cache/package.json +++ b/node_modules/@actions/cache/package.json @@ -1,6 +1,6 @@ { "name": "@actions/cache", - "version": "4.0.2", + "version": "4.0.3", "preview": true, "description": "Actions cache lib", "keywords": [ @@ -49,6 +49,7 @@ "semver": "^6.3.1" }, "devDependencies": { + "@types/node": "^22.13.9", "@types/semver": "^6.0.0", "typescript": "^5.2.2" } diff --git a/node_modules/@eslint/eslintrc/README.md b/node_modules/@eslint/eslintrc/README.md index cdcf0a6364..fc08cb3e30 100644 --- a/node_modules/@eslint/eslintrc/README.md +++ b/node_modules/@eslint/eslintrc/README.md @@ -8,12 +8,14 @@ This repository contains the legacy ESLintRC configuration file format for ESLin You can install the package as follows: -``` -npm install @eslint/eslintrc --save-dev - +```shell +npm install @eslint/eslintrc -D # or - yarn add @eslint/eslintrc -D +# or +pnpm install @eslint/eslintrc -D +# or +bun install @eslint/eslintrc -D ``` ## Usage (ESM) diff --git a/node_modules/@eslint/eslintrc/package.json b/node_modules/@eslint/eslintrc/package.json index 613b489b4e..29a9089dcd 100644 --- a/node_modules/@eslint/eslintrc/package.json +++ b/node_modules/@eslint/eslintrc/package.json @@ -1,10 +1,10 @@ { "name": "@eslint/eslintrc", - "version": "3.3.0", + "version": "3.3.1", "description": "The legacy ESLintRC config file format for ESLint", "type": "module", "main": "./dist/eslintrc.cjs", - "types": "./dist/eslintrc.d.ts", + "types": "./dist/eslintrc.d.cts", "exports": { ".": { "import": "./lib/index.js", diff --git a/node_modules/@eslint/js/README.md b/node_modules/@eslint/js/README.md index 04fc5b2a58..2c4686ae1a 100644 --- a/node_modules/@eslint/js/README.md +++ b/node_modules/@eslint/js/README.md @@ -8,8 +8,8 @@ The beginnings of separating out JavaScript-specific functionality from ESLint. Right now, this plugin contains two configurations: -* `recommended` - enables the rules recommended by the ESLint team (the replacement for `"eslint:recommended"`) -* `all` - enables all ESLint rules (the replacement for `"eslint:all"`) +- `recommended` - enables the rules recommended by the ESLint team (the replacement for `"eslint:recommended"`) +- `all` - enables all ESLint rules (the replacement for `"eslint:all"`) ## Installation @@ -22,37 +22,46 @@ npm install @eslint/js -D Use in your `eslint.config.js` file anytime you want to extend one of the configs: ```js +import { defineConfig } from "eslint/config"; import js from "@eslint/js"; -export default [ - - // apply recommended rules to JS files - { - name: "your-project/recommended-rules", - files: ["**/*.js"], - rules: js.configs.recommended.rules - }, - - // apply recommended rules to JS files with an override - { - name: "your-project/recommended-rules-with-override", - files: ["**/*.js"], - rules: { - ...js.configs.recommended.rules, - "no-unused-vars": "warn" - } - }, - - // apply all rules to JS files - { - name: "your-project/all-rules", - files: ["**/*.js"], - rules: { - ...js.configs.all.rules, - "no-unused-vars": "warn" - } - } -] +export default defineConfig([ + // apply recommended rules to JS files + { + name: "your-project/recommended-rules", + files: ["**/*.js"], + plugins: { + js, + }, + extends: ["js/recommended"], + }, + + // apply recommended rules to JS files with an override + { + name: "your-project/recommended-rules-with-override", + files: ["**/*.js"], + plugins: { + js, + }, + extends: ["js/recommended"], + rules: { + "no-unused-vars": "warn", + }, + }, + + // apply all rules to JS files + { + name: "your-project/all-rules", + files: ["**/*.js"], + plugins: { + js, + }, + extends: ["js/all"], + rules: { + "no-unused-vars": "warn", + }, + }, +]); ``` ## License diff --git a/node_modules/@eslint/js/package.json b/node_modules/@eslint/js/package.json index 9f34bec938..6db814b68f 100644 --- a/node_modules/@eslint/js/package.json +++ b/node_modules/@eslint/js/package.json @@ -1,6 +1,6 @@ { "name": "@eslint/js", - "version": "9.22.0", + "version": "9.23.0", "description": "ESLint JavaScript language implementation", "main": "./src/index.js", "types": "./types/index.d.ts", diff --git a/node_modules/@eslint/js/src/configs/eslint-all.js b/node_modules/@eslint/js/src/configs/eslint-all.js index e7f4e0e3a1..a854e5f16c 100644 --- a/node_modules/@eslint/js/src/configs/eslint-all.js +++ b/node_modules/@eslint/js/src/configs/eslint-all.js @@ -4,8 +4,6 @@ */ "use strict"; -/* eslint quote-props: off -- autogenerated so don't lint */ - /* * IMPORTANT! * diff --git a/node_modules/@eslint/js/src/configs/eslint-recommended.js b/node_modules/@eslint/js/src/configs/eslint-recommended.js index 3559267efc..d4105c1ea6 100644 --- a/node_modules/@eslint/js/src/configs/eslint-recommended.js +++ b/node_modules/@eslint/js/src/configs/eslint-recommended.js @@ -17,67 +17,67 @@ */ module.exports = Object.freeze({ - rules: Object.freeze({ - "constructor-super": "error", - "for-direction": "error", - "getter-return": "error", - "no-async-promise-executor": "error", - "no-case-declarations": "error", - "no-class-assign": "error", - "no-compare-neg-zero": "error", - "no-cond-assign": "error", - "no-const-assign": "error", - "no-constant-binary-expression": "error", - "no-constant-condition": "error", - "no-control-regex": "error", - "no-debugger": "error", - "no-delete-var": "error", - "no-dupe-args": "error", - "no-dupe-class-members": "error", - "no-dupe-else-if": "error", - "no-dupe-keys": "error", - "no-duplicate-case": "error", - "no-empty": "error", - "no-empty-character-class": "error", - "no-empty-pattern": "error", - "no-empty-static-block": "error", - "no-ex-assign": "error", - "no-extra-boolean-cast": "error", - "no-fallthrough": "error", - "no-func-assign": "error", - "no-global-assign": "error", - "no-import-assign": "error", - "no-invalid-regexp": "error", - "no-irregular-whitespace": "error", - "no-loss-of-precision": "error", - "no-misleading-character-class": "error", - "no-new-native-nonconstructor": "error", - "no-nonoctal-decimal-escape": "error", - "no-obj-calls": "error", - "no-octal": "error", - "no-prototype-builtins": "error", - "no-redeclare": "error", - "no-regex-spaces": "error", - "no-self-assign": "error", - "no-setter-return": "error", - "no-shadow-restricted-names": "error", - "no-sparse-arrays": "error", - "no-this-before-super": "error", - "no-undef": "error", - "no-unexpected-multiline": "error", - "no-unreachable": "error", - "no-unsafe-finally": "error", - "no-unsafe-negation": "error", - "no-unsafe-optional-chaining": "error", - "no-unused-labels": "error", - "no-unused-private-class-members": "error", - "no-unused-vars": "error", - "no-useless-backreference": "error", - "no-useless-catch": "error", - "no-useless-escape": "error", - "no-with": "error", - "require-yield": "error", - "use-isnan": "error", - "valid-typeof": "error" - }) + rules: Object.freeze({ + "constructor-super": "error", + "for-direction": "error", + "getter-return": "error", + "no-async-promise-executor": "error", + "no-case-declarations": "error", + "no-class-assign": "error", + "no-compare-neg-zero": "error", + "no-cond-assign": "error", + "no-const-assign": "error", + "no-constant-binary-expression": "error", + "no-constant-condition": "error", + "no-control-regex": "error", + "no-debugger": "error", + "no-delete-var": "error", + "no-dupe-args": "error", + "no-dupe-class-members": "error", + "no-dupe-else-if": "error", + "no-dupe-keys": "error", + "no-duplicate-case": "error", + "no-empty": "error", + "no-empty-character-class": "error", + "no-empty-pattern": "error", + "no-empty-static-block": "error", + "no-ex-assign": "error", + "no-extra-boolean-cast": "error", + "no-fallthrough": "error", + "no-func-assign": "error", + "no-global-assign": "error", + "no-import-assign": "error", + "no-invalid-regexp": "error", + "no-irregular-whitespace": "error", + "no-loss-of-precision": "error", + "no-misleading-character-class": "error", + "no-new-native-nonconstructor": "error", + "no-nonoctal-decimal-escape": "error", + "no-obj-calls": "error", + "no-octal": "error", + "no-prototype-builtins": "error", + "no-redeclare": "error", + "no-regex-spaces": "error", + "no-self-assign": "error", + "no-setter-return": "error", + "no-shadow-restricted-names": "error", + "no-sparse-arrays": "error", + "no-this-before-super": "error", + "no-undef": "error", + "no-unexpected-multiline": "error", + "no-unreachable": "error", + "no-unsafe-finally": "error", + "no-unsafe-negation": "error", + "no-unsafe-optional-chaining": "error", + "no-unused-labels": "error", + "no-unused-private-class-members": "error", + "no-unused-vars": "error", + "no-useless-backreference": "error", + "no-useless-catch": "error", + "no-useless-escape": "error", + "no-with": "error", + "require-yield": "error", + "use-isnan": "error", + "valid-typeof": "error", + }), }); diff --git a/node_modules/@eslint/js/src/index.js b/node_modules/@eslint/js/src/index.js index ec252bcd51..ff6a21d875 100644 --- a/node_modules/@eslint/js/src/index.js +++ b/node_modules/@eslint/js/src/index.js @@ -12,12 +12,12 @@ const { name, version } = require("../package.json"); //------------------------------------------------------------------------------ module.exports = { - meta: { - name, - version - }, - configs: { - all: require("./configs/eslint-all"), - recommended: require("./configs/eslint-recommended") - } + meta: { + name, + version, + }, + configs: { + all: require("./configs/eslint-all"), + recommended: require("./configs/eslint-recommended"), + }, }; diff --git a/node_modules/@eslint/js/types/index.d.ts b/node_modules/@eslint/js/types/index.d.ts index 92de943e0b..d4921d8bfb 100644 --- a/node_modules/@eslint/js/types/index.d.ts +++ b/node_modules/@eslint/js/types/index.d.ts @@ -1,14 +1,14 @@ import type { Linter } from "eslint"; declare const js: { - readonly meta: { - readonly name: string; - readonly version: string; - }, - readonly configs: { - readonly recommended: { readonly rules: Readonly }; - readonly all: { readonly rules: Readonly }; - }; + readonly meta: { + readonly name: string; + readonly version: string; + }; + readonly configs: { + readonly recommended: { readonly rules: Readonly }; + readonly all: { readonly rules: Readonly }; + }; }; export = js; diff --git a/node_modules/@nolyfill/is-core-module/LICENSE b/node_modules/@nolyfill/is-core-module/LICENSE deleted file mode 100644 index f7be747d78..0000000000 --- a/node_modules/@nolyfill/is-core-module/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2023 Sukka - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/node_modules/@nolyfill/is-core-module/index.d.ts b/node_modules/@nolyfill/is-core-module/index.d.ts deleted file mode 100644 index 8c0bd0dd49..0000000000 --- a/node_modules/@nolyfill/is-core-module/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare const isCore: (x: string, _nodeVersion?: any) => boolean; - -export = isCore; diff --git a/node_modules/@nolyfill/is-core-module/index.js b/node_modules/@nolyfill/is-core-module/index.js deleted file mode 100644 index 24cbbc5375..0000000000 --- a/node_modules/@nolyfill/is-core-module/index.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";const e=require("module"),s=new Set(["assert/strict","node:assert/strict","diagnostics_channel","node:diagnostics_channel","dns/promises","node:dns/promises","fs/promises","node:fs/promises","inspector/promises","node:inspector/promises","path/posix","node:path/posix","path/win32","node:path/win32","readline/promises","node:readline/promises","node:sea","stream/consumers","node:stream/consumers","stream/promises","node:stream/promises","stream/web","node:stream/web","node:test/reporters","test/mock_loader","node:test/mock_loader","node:test","timers/promises","node:timers/promises","util/types","node:util/types","wasi","node:wasi"].concat(e.builtinModules,e.builtinModules.map(e=>"node:"+e)));module.exports=(e,o)=>s.has(e); \ No newline at end of file diff --git a/node_modules/@nolyfill/is-core-module/package.json b/node_modules/@nolyfill/is-core-module/package.json deleted file mode 100644 index 20f492c6ab..0000000000 --- a/node_modules/@nolyfill/is-core-module/package.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "@nolyfill/is-core-module", - "version": "1.0.39", - "repository": { - "type": "git", - "url": "https://github.com/SukkaW/nolyfill", - "directory": "packages/manual/is-core-module" - }, - "main": "./index.js", - "types": "./index.d.ts", - "files": [ - "**/*.js", - "*.d.ts", - "*.js" - ], - "exports": { - ".": "./index.js", - "./index.js": "./index.js", - "./package.json": "./package.json" - }, - "license": "MIT", - "devDependencies": { - "@rollup/plugin-commonjs": "^26.0.1", - "@rollup/plugin-node-resolve": "^15.2.3", - "@rollup/plugin-replace": "^5.0.7", - "ljharb-is-core-module": "npm:is-core-module@^2.15.0", - "resolve-pkg": "^2.0.0" - }, - "engines": { - "node": ">=12.4.0" - }, - "scripts": { - "build": "rollup -c rollup.config.ts --configPlugin swc3" - } -} \ No newline at end of file diff --git a/node_modules/@octokit/types/node_modules/@octokit/openapi-types/LICENSE b/node_modules/@octokit/openapi-types/LICENSE similarity index 100% rename from node_modules/@octokit/types/node_modules/@octokit/openapi-types/LICENSE rename to node_modules/@octokit/openapi-types/LICENSE diff --git a/node_modules/@octokit/types/node_modules/@octokit/openapi-types/README.md b/node_modules/@octokit/openapi-types/README.md similarity index 100% rename from node_modules/@octokit/types/node_modules/@octokit/openapi-types/README.md rename to node_modules/@octokit/openapi-types/README.md diff --git a/node_modules/@octokit/types/node_modules/@octokit/openapi-types/package.json b/node_modules/@octokit/openapi-types/package.json similarity index 90% rename from node_modules/@octokit/types/node_modules/@octokit/openapi-types/package.json rename to node_modules/@octokit/openapi-types/package.json index 9163156acb..64cf131e46 100644 --- a/node_modules/@octokit/types/node_modules/@octokit/openapi-types/package.json +++ b/node_modules/@octokit/openapi-types/package.json @@ -10,12 +10,12 @@ "access": "public", "provenance": true }, - "version": "23.0.1", + "version": "24.2.0", "main": "", "types": "types.d.ts", "author": "Gregor Martynus (https://twitter.com/gr2m)", "license": "MIT", "octokit": { - "openapi-version": "17.1.1" + "openapi-version": "18.2.0" } } diff --git a/node_modules/@octokit/types/node_modules/@octokit/openapi-types/types.d.ts b/node_modules/@octokit/openapi-types/types.d.ts similarity index 97% rename from node_modules/@octokit/types/node_modules/@octokit/openapi-types/types.d.ts rename to node_modules/@octokit/openapi-types/types.d.ts index 998a326de8..8a2a90737b 100644 --- a/node_modules/@octokit/types/node_modules/@octokit/openapi-types/types.d.ts +++ b/node_modules/@octokit/openapi-types/types.d.ts @@ -214,7 +214,7 @@ export interface paths { * List accepted assignments for an assignment * @description Lists any assignment repositories that have been created by students accepting a GitHub Classroom assignment. Accepted assignments will only be returned if the current user is an administrator of the GitHub Classroom for the assignment. */ - get: operations["classroom/list-accepted-assigments-for-an-assignment"]; + get: operations["classroom/list-accepted-assignments-for-an-assignment"]; }; "/assignments/{assignment_id}/grades": { /** @@ -784,7 +784,7 @@ export interface paths { * Get an organization * @description Gets information about an organization. * - * When the value of `two_factor_requirement_enabled` is `true`, the organization requires all members, billing managers, and outside collaborators to enable [two-factor authentication](https://docs.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/). + * When the value of `two_factor_requirement_enabled` is `true`, the organization requires all members, billing managers, outside collaborators, guest collaborators, repository collaborators, or everyone with access to any repository within the organization to enable [two-factor authentication](https://docs.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/). * * To see the full details about an organization, the authenticated user must be an organization owner. * @@ -840,6 +840,76 @@ export interface paths { */ get: operations["actions/get-actions-cache-usage-by-repo-for-org"]; }; + "/orgs/{org}/actions/hosted-runners": { + /** + * List GitHub-hosted runners for an organization + * @description Lists all GitHub-hosted runners configured in an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `manage_runner:org` scope to use this endpoint. + */ + get: operations["actions/list-hosted-runners-for-org"]; + /** + * Create a GitHub-hosted runner for an organization + * @description Creates a GitHub-hosted runner for an organization. + * OAuth tokens and personal access tokens (classic) need the `manage_runners:org` scope to use this endpoint. + */ + post: operations["actions/create-hosted-runner-for-org"]; + }; + "/orgs/{org}/actions/hosted-runners/images/github-owned": { + /** + * Get GitHub-owned images for GitHub-hosted runners in an organization + * @description Get the list of GitHub-owned images available for GitHub-hosted runners for an organization. + */ + get: operations["actions/get-hosted-runners-github-owned-images-for-org"]; + }; + "/orgs/{org}/actions/hosted-runners/images/partner": { + /** + * Get partner images for GitHub-hosted runners in an organization + * @description Get the list of partner images available for GitHub-hosted runners for an organization. + */ + get: operations["actions/get-hosted-runners-partner-images-for-org"]; + }; + "/orgs/{org}/actions/hosted-runners/limits": { + /** + * Get limits on GitHub-hosted runners for an organization + * @description Get the GitHub-hosted runners limits for an organization. + */ + get: operations["actions/get-hosted-runners-limits-for-org"]; + }; + "/orgs/{org}/actions/hosted-runners/machine-sizes": { + /** + * Get GitHub-hosted runners machine specs for an organization + * @description Get the list of machine specs available for GitHub-hosted runners for an organization. + */ + get: operations["actions/get-hosted-runners-machine-specs-for-org"]; + }; + "/orgs/{org}/actions/hosted-runners/platforms": { + /** + * Get platforms for GitHub-hosted runners in an organization + * @description Get the list of platforms available for GitHub-hosted runners for an organization. + */ + get: operations["actions/get-hosted-runners-platforms-for-org"]; + }; + "/orgs/{org}/actions/hosted-runners/{hosted_runner_id}": { + /** + * Get a GitHub-hosted runner for an organization + * @description Gets a GitHub-hosted runner configured in an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `manage_runners:org` scope to use this endpoint. + */ + get: operations["actions/get-hosted-runner-for-org"]; + /** + * Delete a GitHub-hosted runner for an organization + * @description Deletes a GitHub-hosted runner for an organization. + */ + delete: operations["actions/delete-hosted-runner-for-org"]; + /** + * Update a GitHub-hosted runner for an organization + * @description Updates a GitHub-hosted runner for an organization. + * OAuth app tokens and personal access tokens (classic) need the `manage_runners:org` scope to use this endpoint. + */ + patch: operations["actions/update-hosted-runner-for-org"]; + }; "/orgs/{org}/actions/oidc/customization/sub": { /** * Get the customization template for an OIDC subject claim for an organization @@ -980,6 +1050,15 @@ export interface paths { */ patch: operations["actions/update-self-hosted-runner-group-for-org"]; }; + "/orgs/{org}/actions/runner-groups/{runner_group_id}/hosted-runners": { + /** + * List GitHub-hosted runners in a group for an organization + * @description Lists the GitHub-hosted runners in an organization group. + * + * OAuth app tokens and personal access tokens (classic) need the `admin:org` scope to use this endpoint. + */ + get: operations["actions/list-github-hosted-runners-in-group-for-org"]; + }; "/orgs/{org}/actions/runner-groups/{runner_group_id}/repositories": { /** * List repository access to a self-hosted runner group in an organization @@ -1853,7 +1932,7 @@ export interface paths { /** * Get a summary of Copilot usage for organization members * @description > [!NOTE] - * > This endpoint is in public preview and is subject to change. + * > This endpoint is closing down. It will be accessible throughout February 2025, but will not return any new data after February 1st. * * You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE * across an organization, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day. @@ -2323,6 +2402,36 @@ export interface paths { */ get: operations["orgs/list-invitation-teams"]; }; + "/orgs/{org}/issue-types": { + /** + * List issue types for an organization + * @description Lists all issue types for an organization. + */ + get: operations["orgs/list-issue-types"]; + /** + * Create issue type for an organization + * @description Create a new issue type for an organization. + * + * You can find out more about issue types in [Managing issue types in an organization](https://docs.github.com/issues/tracking-your-work-with-issues/configuring-issues/managing-issue-types-in-an-organization). + */ + post: operations["orgs/create-issue-type"]; + }; + "/orgs/{org}/issue-types/{issue_type_id}": { + /** + * Update issue type for an organization + * @description Updates an issue type for an organization. + * + * You can find out more about issue types in [Managing issue types in an organization](https://docs.github.com/issues/tracking-your-work-with-issues/configuring-issues/managing-issue-types-in-an-organization). + */ + put: operations["orgs/update-issue-type"]; + /** + * Delete issue type for an organization + * @description Deletes an issue type for an organization. + * + * You can find out more about issue types in [Managing issue types in an organization](https://docs.github.com/issues/tracking-your-work-with-issues/configuring-issues/managing-issue-types-in-an-organization). + */ + delete: operations["orgs/delete-issue-type"]; + }; "/orgs/{org}/issues": { /** * List organization issues assigned to the authenticated user @@ -2837,12 +2946,18 @@ export interface paths { "/orgs/{org}/projects": { /** * List organization projects - * @description Lists the projects in an organization. Returns a `404 Not Found` status if projects are disabled in the organization. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/list-for-org"]; /** * Create an organization project - * @description Creates an organization project board. Returns a `410 Gone` status if projects are disabled in the organization or if the organization does not have existing classic projects. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ post: operations["projects/create-for-org"]; }; @@ -2857,6 +2972,10 @@ export interface paths { * Create or update custom properties for an organization * @description Creates new or updates existing custom properties defined for an organization in a batch. * + * If the property already exists, the existing property will be replaced with the new values. + * Missing optional values will fall back to default values, previous values will be overwritten. + * E.g. if a property exists with `values_editable_by: org_and_repo_actors` and it's updated without specifying `values_editable_by`, it will be updated to default value `org_actors`. + * * To use this endpoint, the authenticated user must be one of: * - An administrator for the organization. * - A user, or a user on a team, with the fine-grained permission of `custom_properties_org_definitions_manager` in the organization. @@ -3002,6 +3121,20 @@ export interface paths { */ delete: operations["repos/delete-org-ruleset"]; }; + "/orgs/{org}/rulesets/{ruleset_id}/history": { + /** + * Get organization ruleset history + * @description Get the history of an organization ruleset. + */ + get: operations["orgs/get-org-ruleset-history"]; + }; + "/orgs/{org}/rulesets/{ruleset_id}/history/{version_id}": { + /** + * Get organization ruleset version + * @description Get a version of an organization ruleset. + */ + get: operations["orgs/get-org-ruleset-version"]; + }; "/orgs/{org}/secret-scanning/alerts": { /** * List secret scanning alerts for an organization @@ -3082,6 +3215,54 @@ export interface paths { */ get: operations["billing/get-shared-storage-billing-org"]; }; + "/orgs/{org}/settings/network-configurations": { + /** + * List hosted compute network configurations for an organization + * @description Lists all hosted compute network configurations configured in an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `read:network_configurations` scope to use this endpoint. + */ + get: operations["hosted-compute/list-network-configurations-for-org"]; + /** + * Create a hosted compute network configuration for an organization + * @description Creates a hosted compute network configuration for an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `write:network_configurations` scope to use this endpoint. + */ + post: operations["hosted-compute/create-network-configuration-for-org"]; + }; + "/orgs/{org}/settings/network-configurations/{network_configuration_id}": { + /** + * Get a hosted compute network configuration for an organization + * @description Gets a hosted compute network configuration configured in an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `read:network_configurations` scope to use this endpoint. + */ + get: operations["hosted-compute/get-network-configuration-for-org"]; + /** + * Delete a hosted compute network configuration from an organization + * @description Deletes a hosted compute network configuration from an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `write:network_configurations` scope to use this endpoint. + */ + delete: operations["hosted-compute/delete-network-configuration-from-org"]; + /** + * Update a hosted compute network configuration for an organization + * @description Updates a hosted compute network configuration for an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `write:network_configurations` scope to use this endpoint. + */ + patch: operations["hosted-compute/update-network-configuration-for-org"]; + }; + "/orgs/{org}/settings/network-settings/{network_settings_id}": { + /** + * Get a hosted compute network settings resource for an organization + * @description Gets a hosted compute network settings resource configured for an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `read:network_configurations` scope to use this endpoint. + */ + get: operations["hosted-compute/get-network-settings-for-org"]; + }; "/orgs/{org}/team/{team_slug}/copilot/metrics": { /** * Get Copilot metrics for a team @@ -3105,7 +3286,7 @@ export interface paths { /** * Get a summary of Copilot usage for a team * @description > [!NOTE] - * > This endpoint is in public preview and is subject to change. + * > This endpoint is closing down. It will be accessible throughout February 2025, but will not return any new data after February 1st. * * You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE * for users within a team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day. @@ -3419,36 +3600,36 @@ export interface paths { "/orgs/{org}/teams/{team_slug}/projects": { /** * List team projects - * @description Lists the organization projects for a team. - * - * > [!NOTE] - * > You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/projects`. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["teams/list-projects-in-org"]; }; "/orgs/{org}/teams/{team_slug}/projects/{project_id}": { /** * Check team permissions for a project - * @description Checks whether a team has `read`, `write`, or `admin` permissions for an organization project. The response includes projects inherited from a parent team. - * - * > [!NOTE] - * > You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/projects/{project_id}`. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["teams/check-permissions-for-project-in-org"]; /** * Add or update team project permissions - * @description Adds an organization project to a team. To add a project to a team or update the team's permission on a project, the authenticated user must have `admin` permissions for the project. The project and team must be part of the same organization. - * - * > [!NOTE] - * > You can also specify a team by `org_id` and `team_id` using the route `PUT /organizations/{org_id}/team/{team_id}/projects/{project_id}`. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ put: operations["teams/add-or-update-project-permissions-in-org"]; /** * Remove a project from a team - * @description Removes an organization project from a team. An organization owner or a team maintainer can remove any project from the team. To remove a project from a team as an organization member, the authenticated user must have `read` access to both the team and project, or `admin` access to the team or project. This endpoint removes the project from the team, but does not delete the project. - * - * > [!NOTE] - * > You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/projects/{project_id}`. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ delete: operations["teams/remove-project-in-org"]; }; @@ -3524,100 +3705,172 @@ export interface paths { "/projects/columns/cards/{card_id}": { /** * Get a project card - * @description Gets information about a project card. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/get-card"]; /** * Delete a project card - * @description Deletes a project card + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ delete: operations["projects/delete-card"]; - /** Update an existing project card */ + /** + * Update an existing project card + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ patch: operations["projects/update-card"]; }; "/projects/columns/cards/{card_id}/moves": { - /** Move a project card */ + /** + * Move a project card + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ post: operations["projects/move-card"]; }; "/projects/columns/{column_id}": { /** * Get a project column - * @description Gets information about a project column. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/get-column"]; /** * Delete a project column - * @description Deletes a project column. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ delete: operations["projects/delete-column"]; - /** Update an existing project column */ + /** + * Update an existing project column + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ patch: operations["projects/update-column"]; }; "/projects/columns/{column_id}/cards": { /** * List project cards - * @description Lists the project cards in a project. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/list-cards"]; - /** Create a project card */ + /** + * Create a project card + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ post: operations["projects/create-card"]; }; "/projects/columns/{column_id}/moves": { - /** Move a project column */ + /** + * Move a project column + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ post: operations["projects/move-column"]; }; "/projects/{project_id}": { /** * Get a project - * @description Gets a project by its `id`. Returns a `404 Not Found` status if projects are disabled. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/get"]; /** * Delete a project - * @description Deletes a project board. Returns a `404 Not Found` status if projects are disabled. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ delete: operations["projects/delete"]; /** * Update a project - * @description Updates a project board's information. Returns a `404 Not Found` status if projects are disabled. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ patch: operations["projects/update"]; }; "/projects/{project_id}/collaborators": { /** * List project collaborators - * @description Lists the collaborators for an organization project. For a project, the list of collaborators includes outside collaborators, organization members that are direct collaborators, organization members with access through team memberships, organization members with access through default organization permissions, and organization owners. You must be an organization owner or a project `admin` to list collaborators. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/list-collaborators"]; }; "/projects/{project_id}/collaborators/{username}": { /** * Add project collaborator - * @description Adds a collaborator to an organization project and sets their permission level. You must be an organization owner or a project `admin` to add a collaborator. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ put: operations["projects/add-collaborator"]; /** * Remove user as a collaborator - * @description Removes a collaborator from an organization project. You must be an organization owner or a project `admin` to remove a collaborator. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ delete: operations["projects/remove-collaborator"]; }; "/projects/{project_id}/collaborators/{username}/permission": { /** * Get project permission for a user - * @description Returns the collaborator's permission level for an organization project. Possible values for the `permission` key: `admin`, `write`, `read`, `none`. You must be an organization owner or a project `admin` to review a user's permission level. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/get-permission-for-user"]; }; "/projects/{project_id}/columns": { /** * List project columns - * @description Lists the project columns in a project. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/list-columns"]; /** * Create a project column - * @description Creates a new project column. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ post: operations["projects/create-column"]; }; @@ -4228,7 +4481,10 @@ export interface paths { "/repos/{owner}/{repo}/actions/runs/{run_id}/timing": { /** * Get workflow run usage - * @description Gets the number of billable minutes and total run time for a specific workflow run. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". + * @description > [!WARNING] + * > This endpoint is in the process of closing down. Refer to "[Actions Get workflow usage and Get workflow run usage endpoints closing down](https://github.blog/changelog/2025-02-02-actions-get-workflow-usage-and-get-workflow-run-usage-endpoints-closing-down/)" for more information. + * + * Gets the number of billable minutes and total run time for a specific workflow run. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". * * Anyone with read access to the repository can use this endpoint. * @@ -4407,7 +4663,10 @@ export interface paths { "/repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing": { /** * Get workflow usage - * @description Gets the number of billable minutes used by a specific workflow during the current billing cycle. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". + * @description > [!WARNING] + * > This endpoint is in the process of closing down. Refer to "[Actions Get workflow usage and Get workflow run usage endpoints closing down](https://github.blog/changelog/2025-02-02-actions-get-workflow-usage-and-get-workflow-run-usage-endpoints-closing-down/)" for more information. + * + * Gets the number of billable minutes used by a specific workflow during the current billing cycle. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". * * You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. * @@ -4499,18 +4758,18 @@ export interface paths { }; "/repos/{owner}/{repo}/automated-security-fixes": { /** - * Check if automated security fixes are enabled for a repository - * @description Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see "[Configuring automated security fixes](https://docs.github.com/articles/configuring-automated-security-fixes)". + * Check if Dependabot security updates are enabled for a repository + * @description Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see "[Configuring Dependabot security updates](https://docs.github.com/articles/configuring-automated-security-fixes)". */ get: operations["repos/check-automated-security-fixes"]; /** - * Enable automated security fixes - * @description Enables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring automated security fixes](https://docs.github.com/articles/configuring-automated-security-fixes)". + * Enable Dependabot security updates + * @description Enables Dependabot security updates for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring Dependabot security updates](https://docs.github.com/articles/configuring-automated-security-fixes)". */ put: operations["repos/enable-automated-security-fixes"]; /** - * Disable automated security fixes - * @description Disables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring automated security fixes](https://docs.github.com/articles/configuring-automated-security-fixes)". + * Disable Dependabot security updates + * @description Disables Dependabot security updates for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring Dependabot security updates](https://docs.github.com/articles/configuring-automated-security-fixes)". */ delete: operations["repos/disable-automated-security-fixes"]; }; @@ -4954,7 +5213,7 @@ export interface paths { * Commit an autofix for a code scanning alert * @description Commits an autofix for a code scanning alert. * - * If an autofix is commited as a result of this request, then this endpoint will return a 201 Created response. + * If an autofix is committed as a result of this request, then this endpoint will return a 201 Created response. * * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories. */ @@ -5316,14 +5575,14 @@ export interface paths { * @description Creates or updates a repository development environment secret with an encrypted value. Encrypt your secret using * [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages). For more information, see "[Encrypting secrets for the REST API](https://docs.github.com/rest/guides/encrypting-secrets-for-the-rest-api)." * - * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. + * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. The associated user must be a repository admin. */ put: operations["codespaces/create-or-update-repo-secret"]; /** * Delete a repository secret * @description Deletes a development environment secret in a repository using the secret name. * - * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. + * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. The associated user must be a repository admin. */ delete: operations["codespaces/delete-repo-secret"]; }; @@ -6098,7 +6357,7 @@ export interface paths { * * The authenticated user must have admin or owner permissions to the repository to use this endpoint. * - * For more information about the app that is providing this custom deployment rule, see the [documentation for the `GET /apps/{app_slug}` endpoint](https://docs.github.com/rest/apps/apps#get-an-app). + * For more information about the app that is providing this custom deployment rule, see the [documentation for the `GET /apps/{app_slug}` endpoint](https://docs.github.com/rest/apps/apps#get-an-app), as well as the [guide to creating custom deployment protection rules](https://docs.github.com/actions/managing-workflow-runs-and-deployments/managing-deployments/creating-custom-deployment-protection-rules). * * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. */ @@ -7339,12 +7598,18 @@ export interface paths { "/repos/{owner}/{repo}/projects": { /** * List repository projects - * @description Lists the projects in a repository. Returns a `404 Not Found` status if projects are disabled in the repository. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/list-for-repo"]; /** * Create a repository project - * @description Creates a repository project board. Returns a `410 Gone` status if projects are disabled in the repository or if the repository does not have existing classic projects. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ post: operations["projects/create-for-repo"]; }; @@ -7970,6 +8235,20 @@ export interface paths { */ delete: operations["repos/delete-repo-ruleset"]; }; + "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history": { + /** + * Get repository ruleset history + * @description Get the history of a repository ruleset. + */ + get: operations["repos/get-repo-ruleset-history"]; + }; + "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}": { + /** + * Get repository ruleset version + * @description Get a version of a repository ruleset. + */ + get: operations["repos/get-repo-ruleset-version"]; + }; "/repos/{owner}/{repo}/secret-scanning/alerts": { /** * List secret scanning alerts for a repository @@ -8405,19 +8684,10 @@ export interface paths { "/search/issues": { /** * Search issues and pull requests - * @description Find issues by state and keyword. This method returns up to 100 results [per page](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api). - * - * When searching for issues, you can get text match metadata for the issue **title**, issue **body**, and issue **comment body** fields when you pass the `text-match` media type. For more details about how to receive highlighted - * search results, see [Text match metadata](https://docs.github.com/rest/search/search#text-match-metadata). - * - * For example, if you want to find the oldest unresolved Python bugs on Windows. Your query might look something like this. - * - * `q=windows+label:bug+language:python+state:open&sort=created&order=asc` - * - * This query searches for the keyword `windows`, within any open issue that is labeled as `bug`. The search runs across repositories whose primary language is Python. The results are sorted by creation date in ascending order, which means the oldest issues appear first in the search results. - * - * > [!NOTE] - * > For requests made by GitHub Apps with a user access token, you can't retrieve a combination of issues and pull requests in a single query. Requests that don't include the `is:issue` or `is:pull-request` qualifier will receive an HTTP `422 Unprocessable Entity` response. To get results for both issues and pull requests, you must send separate queries for issues and pull requests. For more information about the `is` qualifier, see "[Searching only issues or pull requests](https://docs.github.com/github/searching-for-information-on-github/searching-issues-and-pull-requests#search-only-issues-or-pull-requests)." + * @deprecated + * @description > [!WARNING] + * > **Notice:** Search for issues and pull requests will be overridden by advanced search on September 4, 2025. + * > You can read more about this change on [the GitHub blog](https://github.blog/changelog/2025-03-06-github-issues-projects-api-support-for-issues-advanced-search-and-more/). */ get: operations["search/issues-and-pull-requests"]; }; @@ -8810,9 +9080,8 @@ export interface paths { * List team projects (Legacy) * @deprecated * @description > [!WARNING] - * > **Endpoint closing down notice:** This endpoint route is closing down and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List team projects`](https://docs.github.com/rest/teams/teams#list-team-projects) endpoint. - * - * Lists the organization projects for a team. + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["teams/list-projects-legacy"]; }; @@ -8821,27 +9090,24 @@ export interface paths { * Check team permissions for a project (Legacy) * @deprecated * @description > [!WARNING] - * > **Endpoint closing down notice:** This endpoint route is closing down and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a project](https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-project) endpoint. - * - * Checks whether a team has `read`, `write`, or `admin` permissions for an organization project. The response includes projects inherited from a parent team. + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["teams/check-permissions-for-project-legacy"]; /** * Add or update team project permissions (Legacy) * @deprecated * @description > [!WARNING] - * > **Endpoint closing down notice:** This endpoint route is closing down and will be removed from the Teams API. We recommend migrating your existing code to use the new [Add or update team project permissions](https://docs.github.com/rest/teams/teams#add-or-update-team-project-permissions) endpoint. - * - * Adds an organization project to a team. To add a project to a team or update the team's permission on a project, the authenticated user must have `admin` permissions for the project. The project and team must be part of the same organization. + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ put: operations["teams/add-or-update-project-permissions-legacy"]; /** * Remove a project from a team (Legacy) * @deprecated * @description > [!WARNING] - * > **Endpoint closing down notice:** This endpoint route is closing down and will be removed from the Teams API. We recommend migrating your existing code to use the new [Remove a project from a team](https://docs.github.com/rest/teams/teams#remove-a-project-from-a-team) endpoint. - * - * Removes an organization project from a team. An organization owner or a team maintainer can remove any project from the team. To remove a project from a team as an organization member, the authenticated user must have `read` access to both the team and project, or `admin` access to the team or project. **Note:** This endpoint removes the project from the team, but does not delete it. + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ delete: operations["teams/remove-project-legacy"]; }; @@ -9529,7 +9795,10 @@ export interface paths { "/user/projects": { /** * Create a user project - * @description Creates a user project board. Returns a `410 Gone` status if the user does not have existing classic projects. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ post: operations["projects/create-for-authenticated-user"]; }; @@ -9678,9 +9947,11 @@ export interface paths { * Get a user using their ID * @description Provides publicly available information about someone with a GitHub account. This method takes their durable user `ID` instead of their `login`, which can change over time. * - * The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be “public” which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/guides/getting-started-with-the-rest-api#authentication). + * If you are requesting information about an [Enterprise Managed User](https://docs.github.com/enterprise-cloud@latest/admin/managing-iam/understanding-iam-for-enterprises/about-enterprise-managed-users), or a GitHub App bot that is installed in an organization that uses Enterprise Managed Users, your requests must be authenticated as a user or GitHub App that has access to the organization to view that account's information. If you are not authorized, the request will return a `404 Not Found` status. * - * The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see "[Emails API](https://docs.github.com/rest/users/emails)". + * The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be public which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/guides/getting-started-with-the-rest-api#authentication). + * + * The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see [Emails API](https://docs.github.com/rest/users/emails). */ get: operations["users/get-by-id"]; }; @@ -9698,9 +9969,11 @@ export interface paths { * Get a user * @description Provides publicly available information about someone with a GitHub account. * - * The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be “public” which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/guides/getting-started-with-the-rest-api#authentication). + * If you are requesting information about an [Enterprise Managed User](https://docs.github.com/enterprise-cloud@latest/admin/managing-iam/understanding-iam-for-enterprises/about-enterprise-managed-users), or a GitHub App bot that is installed in an organization that uses Enterprise Managed Users, your requests must be authenticated as a user or GitHub App that has access to the organization to view that account's information. If you are not authorized, the request will return a `404 Not Found` status. + * + * The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be public which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/guides/getting-started-with-the-rest-api#authentication). * - * The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see "[Emails API](https://docs.github.com/rest/users/emails)". + * The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see [Emails API](https://docs.github.com/rest/users/emails). */ get: operations["users/get-by-username"]; }; @@ -9907,7 +10180,10 @@ export interface paths { "/users/{username}/projects": { /** * List user projects - * @description Lists projects for a user. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ get: operations["projects/list-for-user"]; }; @@ -10202,6 +10478,11 @@ export interface components { score: number | null; } | null; } | null; + /** @description The EPSS scores as calculated by the [Exploit Prediction Scoring System](https://www.first.org/epss). */ + readonly "security-advisory-epss": { + readonly percentage?: number; + readonly percentile?: number; + } | null; /** * Simple User * @description A GitHub user. @@ -10375,6 +10656,7 @@ export interface components { score: number | null; } | null; cvss_severities?: components["schemas"]["cvss-severities"]; + epss?: components["schemas"]["security-advisory-epss"]; cwes: | { /** @description The Common Weakness Enumeration (CWE) identifier. */ @@ -10383,10 +10665,6 @@ export interface components { name: string; }[] | null; - epss?: { - percentage?: number; - percentile?: number; - } | null; /** @description The users who contributed to the advisory. */ credits: | readonly { @@ -10415,79 +10693,52 @@ export interface components { errors?: string[]; }; /** - * Simple User - * @description A GitHub user. + * Enterprise + * @description An enterprise on GitHub. */ - "nullable-simple-user": { - name?: string | null; - email?: string | null; - /** @example octocat */ - login: string; - /** - * Format: int64 - * @example 1 - */ - id: number; - /** @example MDQ6VXNlcjE= */ - node_id: string; - /** - * Format: uri - * @example https://github.com/images/error/octocat_happy.gif - */ - avatar_url: string; - /** @example 41d064eb2195891e12d0413f63227ea7 */ - gravatar_id: string | null; + enterprise: { + /** @description A short description of the enterprise. */ + description?: string | null; /** * Format: uri - * @example https://api.github.com/users/octocat + * @example https://github.com/enterprises/octo-business */ - url: string; + html_url: string; /** * Format: uri - * @example https://github.com/octocat + * @description The enterprise's website URL. */ - html_url: string; + website_url?: string | null; /** - * Format: uri - * @example https://api.github.com/users/octocat/followers + * @description Unique identifier of the enterprise + * @example 42 */ - followers_url: string; - /** @example https://api.github.com/users/octocat/following{/other_user} */ - following_url: string; - /** @example https://api.github.com/users/octocat/gists{/gist_id} */ - gists_url: string; - /** @example https://api.github.com/users/octocat/starred{/owner}{/repo} */ - starred_url: string; + id: number; + /** @example MDEwOlJlcG9zaXRvcnkxMjk2MjY5 */ + node_id: string; /** - * Format: uri - * @example https://api.github.com/users/octocat/subscriptions + * @description The name of the enterprise. + * @example Octo Business */ - subscriptions_url: string; + name: string; /** - * Format: uri - * @example https://api.github.com/users/octocat/orgs + * @description The slug url identifier for the enterprise. + * @example octo-business */ - organizations_url: string; + slug: string; /** - * Format: uri - * @example https://api.github.com/users/octocat/repos + * Format: date-time + * @example 2019-01-26T19:01:12Z */ - repos_url: string; - /** @example https://api.github.com/users/octocat/events{/privacy} */ - events_url: string; + created_at: string | null; /** - * Format: uri - * @example https://api.github.com/users/octocat/received_events + * Format: date-time + * @example 2019-01-26T19:14:43Z */ - received_events_url: string; - /** @example User */ - type: string; - site_admin: boolean; - /** @example "2020-07-09T00:17:55Z" */ - starred_at?: string; - /** @example public */ - user_view_type?: string; - } | null; + updated_at: string | null; + /** Format: uri */ + avatar_url: string; + }; /** * GitHub app * @description GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub. @@ -10507,7 +10758,9 @@ export interface components { node_id: string; /** @example "Iv1.25b5d1e65ffc4022" */ client_id?: string; - owner: components["schemas"]["nullable-simple-user"]; + owner: + | components["schemas"]["simple-user"] + | components["schemas"]["enterprise"]; /** * @description The name of the GitHub app * @example Probot Owners @@ -10603,6 +10856,7 @@ export interface components { */ "hook-delivery-item": { /** + * Format: int64 * @description Unique identifier of the webhook delivery. * @example 42 */ @@ -10649,11 +10903,13 @@ export interface components { */ action: string | null; /** + * Format: int64 * @description The id of the GitHub App installation associated with this event. * @example 123 */ installation_id: number | null; /** + * Format: int64 * @description The id of the repository associated with this event. * @example 123 */ @@ -10784,53 +11040,6 @@ export interface components { payload: string | null; }; }; - /** - * Enterprise - * @description An enterprise on GitHub. - */ - enterprise: { - /** @description A short description of the enterprise. */ - description?: string | null; - /** - * Format: uri - * @example https://github.com/enterprises/octo-business - */ - html_url: string; - /** - * Format: uri - * @description The enterprise's website URL. - */ - website_url?: string | null; - /** - * @description Unique identifier of the enterprise - * @example 42 - */ - id: number; - /** @example MDEwOlJlcG9zaXRvcnkxMjk2MjY5 */ - node_id: string; - /** - * @description The name of the enterprise. - * @example Octo Business - */ - name: string; - /** - * @description The slug url identifier for the enterprise. - * @example octo-business - */ - slug: string; - /** - * Format: date-time - * @example 2019-01-26T19:01:12Z - */ - created_at: string | null; - /** - * Format: date-time - * @example 2019-01-26T19:14:43Z - */ - updated_at: string | null; - /** Format: uri */ - avatar_url: string; - }; /** * Integration Installation Request * @description Request to install an integration on a target @@ -10890,7 +11099,7 @@ export interface components { */ contents?: "read" | "write"; /** - * @description The leve of permission to grant the access token to manage Dependabot secrets. + * @description The level of permission to grant the access token to manage Dependabot secrets. * @enum {string} */ dependabot_secrets?: "read" | "write"; @@ -11105,6 +11314,80 @@ export interface components { */ starring?: "read" | "write"; }; + /** + * Simple User + * @description A GitHub user. + */ + "nullable-simple-user": { + name?: string | null; + email?: string | null; + /** @example octocat */ + login: string; + /** + * Format: int64 + * @example 1 + */ + id: number; + /** @example MDQ6VXNlcjE= */ + node_id: string; + /** + * Format: uri + * @example https://github.com/images/error/octocat_happy.gif + */ + avatar_url: string; + /** @example 41d064eb2195891e12d0413f63227ea7 */ + gravatar_id: string | null; + /** + * Format: uri + * @example https://api.github.com/users/octocat + */ + url: string; + /** + * Format: uri + * @example https://github.com/octocat + */ + html_url: string; + /** + * Format: uri + * @example https://api.github.com/users/octocat/followers + */ + followers_url: string; + /** @example https://api.github.com/users/octocat/following{/other_user} */ + following_url: string; + /** @example https://api.github.com/users/octocat/gists{/gist_id} */ + gists_url: string; + /** @example https://api.github.com/users/octocat/starred{/owner}{/repo} */ + starred_url: string; + /** + * Format: uri + * @example https://api.github.com/users/octocat/subscriptions + */ + subscriptions_url: string; + /** + * Format: uri + * @example https://api.github.com/users/octocat/orgs + */ + organizations_url: string; + /** + * Format: uri + * @example https://api.github.com/users/octocat/repos + */ + repos_url: string; + /** @example https://api.github.com/users/octocat/events{/privacy} */ + events_url: string; + /** + * Format: uri + * @example https://api.github.com/users/octocat/received_events + */ + received_events_url: string; + /** @example User */ + type: string; + site_admin: boolean; + /** @example "2020-07-09T00:17:55Z" */ + starred_at?: string; + /** @example public */ + user_view_type?: string; + } | null; /** * Installation * @description Installation @@ -12134,6 +12417,14 @@ export interface components { /** @description The label of the runner to use for code scanning when runner_type is 'labeled'. */ runner_label?: string | null; } | null; + /** + * @description The enablement status of code scanning delegated alert dismissal + * @enum {string} + */ + code_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of secret scanning * @enum {string} @@ -12175,6 +12466,19 @@ export interface components { | "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of Copilot secret scanning + * @enum {string} + */ + secret_scanning_generic_secrets?: "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of secret scanning delegated alert dismissal + * @enum {string} + */ + secret_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of private vulnerability reporting * @enum {string} @@ -12528,6 +12832,7 @@ export interface components { readonly vector_string: string | null; }; readonly cvss_severities?: components["schemas"]["cvss-severities"]; + readonly epss?: components["schemas"]["security-advisory-epss"]; /** @description Details for the advisory pertaining to Common Weakness Enumeration. */ readonly cwes: readonly { /** @description The unique CWE ID. */ @@ -12622,6 +12927,15 @@ export interface components { * @enum {string|null} */ readonly scope?: "development" | "runtime" | null; + /** + * @description The vulnerable dependency's relationship to your project. + * + * > [!NOTE] + * > We are rolling out support for dependency relationship across ecosystems. This value will be "unknown" for all dependencies in unsupported ecosystems. + * + * @enum {string|null} + */ + readonly relationship?: "unknown" | "direct" | "transitive" | null; }; security_advisory: components["schemas"]["dependabot-alert-security-advisory"]; security_vulnerability: components["schemas"]["dependabot-alert-security-vulnerability"]; @@ -12726,6 +13040,8 @@ export interface components { publicly_leaked?: boolean | null; /** @description Whether the detected secret was found in multiple repositories in the same organization or enterprise. */ multi_repo?: boolean | null; + /** @description A boolean value representing whether or not alert is base64 encoded */ + is_base64_encoded?: boolean | null; }; /** * Actor @@ -12810,6 +13126,46 @@ export interface components { */ due_on: string | null; } | null; + /** + * Issue Type + * @description The type of issue. + */ + "issue-type": { + /** @description The unique identifier of the issue type. */ + id: number; + /** @description The node identifier of the issue type. */ + node_id: string; + /** @description The name of the issue type. */ + name: string; + /** @description The description of the issue type. */ + description: string | null; + /** + * @description The color of the issue type. + * @enum {string|null} + */ + color?: + | "gray" + | "blue" + | "green" + | "yellow" + | "orange" + | "red" + | "pink" + | "purple" + | null; + /** + * Format: date-time + * @description The time the issue type created. + */ + created_at?: string; + /** + * Format: date-time + * @description The time the issue type last updated. + */ + updated_at?: string; + /** @description The enabled state of the issue type. */ + is_enabled?: boolean; + } | null; /** * GitHub app * @description GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub. @@ -12829,7 +13185,9 @@ export interface components { node_id: string; /** @example "Iv1.25b5d1e65ffc4022" */ client_id?: string; - owner: components["schemas"]["nullable-simple-user"]; + owner: + | components["schemas"]["simple-user"] + | components["schemas"]["enterprise"]; /** * @description The name of the GitHub app * @example Probot Owners @@ -13030,6 +13388,7 @@ export interface components { body_text?: string; /** Format: uri */ timeline_url?: string; + type?: components["schemas"]["issue-type"]; repository?: components["schemas"]["repository"]; performed_via_github_app?: components["schemas"]["nullable-integration"]; author_association: components["schemas"]["author-association"]; @@ -14376,6 +14735,181 @@ export interface components { */ active_caches_count: number; }; + /** + * GitHub-hosted runner image details. + * @description Provides details of a hosted runner image + */ + "nullable-actions-hosted-runner-pool-image": { + /** + * @description The ID of the image. Use this ID for the `image` parameter when creating a new larger runner. + * @example ubuntu-20.04 + */ + id: string; + /** + * @description Image size in GB. + * @example 86 + */ + size_gb: number; + /** + * @description Display name for this image. + * @example 20.04 + */ + display_name: string; + /** + * @description The image provider. + * @enum {string} + */ + source: "github" | "partner" | "custom"; + } | null; + /** + * Github-owned VM details. + * @description Provides details of a particular machine spec. + */ + "actions-hosted-runner-machine-spec": { + /** + * @description The ID used for the `size` parameter when creating a new runner. + * @example 8-core + */ + id: string; + /** + * @description The number of cores. + * @example 8 + */ + cpu_cores: number; + /** + * @description The available RAM for the machine spec. + * @example 32 + */ + memory_gb: number; + /** + * @description The available SSD storage for the machine spec. + * @example 300 + */ + storage_gb: number; + }; + /** + * Public IP for a GitHub-hosted larger runners. + * @description Provides details of Public IP for a GitHub-hosted larger runners + */ + "public-ip": { + /** + * @description Whether public IP is enabled. + * @example true + */ + enabled?: boolean; + /** + * @description The prefix for the public IP. + * @example 20.80.208.150 + */ + prefix?: string; + /** + * @description The length of the IP prefix. + * @example 28 + */ + length?: number; + }; + /** + * GitHub-hosted hosted runner + * @description A Github-hosted hosted runner. + */ + "actions-hosted-runner": { + /** + * @description The unique identifier of the hosted runner. + * @example 5 + */ + id: number; + /** + * @description The name of the hosted runner. + * @example my-github-hosted-runner + */ + name: string; + /** + * @description The unique identifier of the group that the hosted runner belongs to. + * @example 2 + */ + runner_group_id?: number; + image_details: components["schemas"]["nullable-actions-hosted-runner-pool-image"]; + machine_size_details: components["schemas"]["actions-hosted-runner-machine-spec"]; + /** + * @description The status of the runner. + * @example Ready + * @enum {string} + */ + status: "Ready" | "Provisioning" | "Shutdown" | "Deleting" | "Stuck"; + /** + * @description The operating system of the image. + * @example linux-x64 + */ + platform: string; + /** + * @description The maximum amount of hosted runners. Runners will not scale automatically above this number. Use this setting to limit your cost. + * @default 10 + * @example 5 + */ + maximum_runners?: number; + /** + * @description Whether public IP is enabled for the hosted runners. + * @example true + */ + public_ip_enabled: boolean; + /** @description The public IP ranges when public IP is enabled for the hosted runners. */ + public_ips?: components["schemas"]["public-ip"][]; + /** + * Format: date-time + * @description The time at which the runner was last used, in ISO 8601 format. + * @example 2022-10-09T23:39:01Z + */ + last_active_on?: string | null; + }; + /** + * GitHub-hosted runner image details. + * @description Provides details of a hosted runner image + */ + "actions-hosted-runner-image": { + /** + * @description The ID of the image. Use this ID for the `image` parameter when creating a new larger runner. + * @example ubuntu-20.04 + */ + id: string; + /** + * @description The operating system of the image. + * @example linux-x64 + */ + platform: string; + /** + * @description Image size in GB. + * @example 86 + */ + size_gb: number; + /** + * @description Display name for this image. + * @example 20.04 + */ + display_name: string; + /** + * @description The image provider. + * @enum {string} + */ + source: "github" | "partner" | "custom"; + }; + "actions-hosted-runner-limits": { + /** + * Static public IP Limits for GitHub-hosted Hosted Runners. + * @description Provides details of static public IP limits for GitHub-hosted Hosted Runners + */ + public_ips: { + /** + * @description The maximum number of static public IP addresses that can be used for Hosted Runners. + * @example 50 + */ + maximum: number; + /** + * @description The current number of static public IP addresses in use by Hosted Runners. + * @example 17 + */ + current_usage: number; + }; + }; /** * Actions OIDC Subject customization * @description Actions OIDC Subject customization @@ -14445,6 +14979,8 @@ export interface components { selected_repositories_url?: string; runners_url: string; hosted_runners_url?: string; + /** @description The identifier of a hosted compute network configuration. */ + network_configuration_id?: string; inherited: boolean; inherited_allows_public_repositories?: boolean; allows_public_repositories: boolean; @@ -14482,12 +15018,12 @@ export interface components { */ runner: { /** - * @description The id of the runner. + * @description The ID of the runner. * @example 5 */ id: number; /** - * @description The id of the runner group. + * @description The ID of the runner group. * @example 1 */ runner_group_id?: number; @@ -14508,6 +15044,7 @@ export interface components { status: string; busy: boolean; labels: components["schemas"]["runner-label"][]; + ephemeral?: boolean; }; /** * Runner Application @@ -14785,6 +15322,7 @@ export interface components { tool: components["schemas"]["code-scanning-analysis-tool"]; most_recent_instance: components["schemas"]["code-scanning-alert-instance"]; repository: components["schemas"]["simple-repository"]; + dismissal_approved_by?: components["schemas"]["nullable-simple-user"]; }; /** * Codespace machine @@ -15059,17 +15597,17 @@ export interface components { created_at?: string; }; /** - * Copilot Business Seat Breakdown + * Copilot Seat Breakdown * @description The breakdown of Copilot Business seats for the organization. */ - "copilot-seat-breakdown": { + "copilot-organization-seat-breakdown": { /** @description The total number of seats being billed for the organization as of the current billing cycle. */ total?: number; /** @description Seats added during the current billing cycle. */ added_this_cycle?: number; /** @description The number of seats that are pending cancellation at the end of the current billing cycle. */ pending_cancellation?: number; - /** @description The number of seats that have been assigned to users that have not yet accepted an invitation to this organization. */ + /** @description The number of users who have been invited to receive a Copilot seat through this organization. */ pending_invitation?: number; /** @description The number of seats that have used Copilot during the current billing cycle. */ active_this_cycle?: number; @@ -15081,24 +15619,24 @@ export interface components { * @description Information about the seat breakdown and policies set for an organization with a Copilot Business or Copilot Enterprise subscription. */ "copilot-organization-details": { - seat_breakdown: components["schemas"]["copilot-seat-breakdown"]; + seat_breakdown: components["schemas"]["copilot-organization-seat-breakdown"]; /** - * @description The organization policy for allowing or disallowing Copilot to make suggestions that match public code. + * @description The organization policy for allowing or blocking suggestions matching public code (duplication detection filter). * @enum {string} */ - public_code_suggestions: "allow" | "block" | "unconfigured" | "unknown"; + public_code_suggestions: "allow" | "block" | "unconfigured"; /** - * @description The organization policy for allowing or disallowing organization members to use Copilot Chat within their editor. + * @description The organization policy for allowing or disallowing Copilot Chat in the IDE. * @enum {string} */ ide_chat?: "enabled" | "disabled" | "unconfigured"; /** - * @description The organization policy for allowing or disallowing organization members to use Copilot features within github.com. + * @description The organization policy for allowing or disallowing Copilot features on GitHub.com. * @enum {string} */ platform_chat?: "enabled" | "disabled" | "unconfigured"; /** - * @description The organization policy for allowing or disallowing organization members to use Copilot within their CLI. + * @description The organization policy for allowing or disallowing Copilot in the CLI. * @enum {string} */ cli?: "enabled" | "disabled" | "unconfigured"; @@ -15115,7 +15653,7 @@ export interface components { * @description The Copilot plan of the organization, or the parent enterprise, when applicable. * @enum {string} */ - plan_type?: "business" | "enterprise" | "unknown"; + plan_type?: "business" | "enterprise"; [key: string]: unknown; }; /** @@ -15267,6 +15805,8 @@ export interface components { sync_to_organizations: string; /** @example 62ab9291-fae2-468e-974b-7e45096d5021 */ group_id?: string | null; + /** @example Justice League */ + group_name?: string | null; /** * Format: uri * @example https://github.com/enterprises/dc/teams/justice-league @@ -15376,7 +15916,7 @@ export interface components { total_engaged_users?: number; /** @description List of model metrics for custom models and the default model. */ models?: { - /** @description Name of the model used for Copilot code completion suggestions. If the default model is used will appear as 'default'. */ + /** @description Name of the model used for Copilot Chat. If the default model is used will appear as 'default'. */ name?: string; /** @description Indicates whether a model is custom or default. */ is_custom_model?: boolean; @@ -15394,13 +15934,13 @@ export interface components { }[]; [key: string]: unknown; } | null; - /** @description Usage metrics for Copilot Chat in github.com */ + /** @description Usage metrics for Copilot Chat in GitHub.com */ "copilot-dotcom-chat": { /** @description Total number of users who prompted Copilot Chat on github.com at least once. */ total_engaged_users?: number; /** @description List of model metrics for a custom models and the default model. */ models?: { - /** @description Name of the model used for Copilot code completion suggestions. If the default model is used will appear as 'default'. */ + /** @description Name of the model used for Copilot Chat. If the default model is used will appear as 'default'. */ name?: string; /** @description Indicates whether a model is custom or default. */ is_custom_model?: boolean; @@ -15425,7 +15965,7 @@ export interface components { total_engaged_users?: number; /** @description List of model metrics for custom models and the default model. */ models?: { - /** @description Name of the model used for Copilot code completion suggestions. If the default model is used will appear as 'default'. */ + /** @description Name of the model used for Copilot pull request summaries. If the default model is used will appear as 'default'. */ name?: string; /** @description Indicates whether a model is custom or default. */ is_custom_model?: boolean; @@ -16008,6 +16548,54 @@ export interface components { limit: components["schemas"]["interaction-group"]; expiry?: components["schemas"]["interaction-expiry"]; }; + "organization-create-issue-type": { + /** @description Name of the issue type. */ + name: string; + /** @description Whether or not the issue type is enabled at the organization level. */ + is_enabled: boolean; + /** @description Whether or not the issue type is restricted to issues in private repositories. */ + is_private?: boolean; + /** @description Description of the issue type. */ + description?: string | null; + /** + * @description Color for the issue type. + * @enum {string|null} + */ + color?: + | "gray" + | "blue" + | "green" + | "yellow" + | "orange" + | "red" + | "pink" + | "purple" + | null; + }; + "organization-update-issue-type": { + /** @description Name of the issue type. */ + name: string; + /** @description Whether or not the issue type is enabled at the organization level. */ + is_enabled: boolean; + /** @description Whether or not the issue type is restricted to issues in private repositories. */ + is_private?: boolean; + /** @description Description of the issue type. */ + description?: string | null; + /** + * @description Color for the issue type. + * @enum {string|null} + */ + color?: + | "gray" + | "blue" + | "green" + | "yellow" + | "orange" + | "red" + | "pink" + | "purple" + | null; + }; /** * Org Membership * @description Org Membership @@ -16640,6 +17228,12 @@ export interface components { * The property can have up to 200 allowed values. */ allowed_values?: string[] | null; + /** + * @description Who can edit the values of the property + * @example org_actors + * @enum {string|null} + */ + values_editable_by?: "org_actors" | "org_and_repo_actors" | null; }; /** * Custom Property Value @@ -17547,6 +18141,19 @@ export interface components { /** @enum {string} */ type: "required_signatures"; }; + /** + * Reviewer + * @description A required reviewing team + */ + "repository-rule-params-reviewer": { + /** @description ID of the reviewer which must review changes to matching files. */ + id: number; + /** + * @description The type of the reviewer + * @enum {string} + */ + type: "Team"; + }; /** * RequiredReviewerConfiguration * @description A reviewing team, and file patterns describing which files they must approve changes to. @@ -17556,8 +18163,7 @@ export interface components { file_patterns: string[]; /** @description Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional. */ minimum_approvals: number; - /** @description Node ID of the team which must review changes to matching files. */ - reviewer_id: string; + reviewer?: components["schemas"]["repository-rule-params-reviewer"]; }; /** * pull_request @@ -17567,7 +18173,7 @@ export interface components { /** @enum {string} */ type: "pull_request"; parameters?: { - /** @description When merging pull requests, you can allow any combination of merge commits, squashing, or rebasing. At least one option must be enabled. */ + /** @description Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled. */ allowed_merge_methods?: string[]; /** @description New, reviewable commits pushed will dismiss previous pull request review approvals. */ dismiss_stale_reviews_on_push: boolean; @@ -17999,6 +18605,25 @@ export interface components { details?: string | null; }[]; }; + /** + * Ruleset version + * @description The historical version of a ruleset + */ + "ruleset-version": { + /** @description The ID of the previous version of the ruleset */ + version_id: number; + /** @description The actor who updated the ruleset */ + actor: { + id?: number; + type?: string; + }; + /** Format: date-time */ + updated_at: string; + }; + "ruleset-version-with-state": components["schemas"]["ruleset-version"] & { + /** @description The state of the ruleset version */ + state: Record; + }; /** @description A product affected by the vulnerability detailed in a repository security advisory. */ "repository-advisory-vulnerability": { /** @description The name of the package affected by the vulnerability. */ @@ -18189,6 +18814,69 @@ export interface components { /** @description Estimated sum of free and paid storage space (GB) used in billing cycle. */ estimated_storage_for_month: number; }; + /** + * Hosted compute network configuration + * @description A hosted compute network configuration. + */ + "network-configuration": { + /** + * @description The unique identifier of the network configuration. + * @example 123ABC456DEF789 + */ + id: string; + /** + * @description The name of the network configuration. + * @example my-network-configuration + */ + name: string; + /** + * @description The hosted compute service the network configuration supports. + * @enum {string} + */ + compute_service?: "none" | "actions" | "codespaces"; + /** + * @description The unique identifier of each network settings in the configuration. + * @example 123ABC456DEF789 + */ + network_settings_ids?: string[]; + /** + * Format: date-time + * @description The time at which the network configuration was created, in ISO 8601 format. + * @example 2024-04-26T11:31:07Z + */ + created_on: string | null; + }; + /** + * Hosted compute network settings resource + * @description A hosted compute network settings resource. + */ + "network-settings": { + /** + * @description The unique identifier of the network settings resource. + * @example 220F78DACB92BBFBC5E6F22DE1CCF52309D + */ + id: string; + /** + * @description The identifier of the network configuration that is using this settings resource. + * @example 934E208B3EE0BD60CF5F752C426BFB53562 + */ + network_configuration_id?: string; + /** + * @description The name of the network settings resource. + * @example my-network-settings + */ + name: string; + /** + * @description The subnet this network settings resource is configured for. + * @example /subscriptions/14839728-3ad9-43ab-bd2b-fa6ad0f75e2a/resourceGroups/my-rg/providers/Microsoft.Network/virtualNetworks/my-vnet/subnets/my-subnet + */ + subnet_id: string; + /** + * @description The location of the subnet this network settings resource is configured for. + * @example eastus + */ + region: string; + }; /** * Team Organization * @description Team Organization @@ -19075,6 +19763,11 @@ export interface components { expires_at: string | null; /** Format: date-time */ updated_at: string | null; + /** + * @description The SHA256 digest of the artifact. This field will only be populated on artifacts uploaded with upload-artifact v4 or newer. For older versions, this field will be null. + * @example sha256:cfc3236bdad15b5898bca8408945c9e19e1917da8704adc20eaa618444290a8c + */ + digest?: string | null; workflow_run?: { /** @example 10 */ id?: number; @@ -19931,17 +20624,17 @@ export interface components { is_alphanumeric: boolean; }; /** - * Check Automated Security Fixes - * @description Check Automated Security Fixes + * Check Dependabot security updates + * @description Check Dependabot security updates */ "check-automated-security-fixes": { /** - * @description Whether automated security fixes are enabled for the repository. + * @description Whether Dependabot security updates are enabled for the repository. * @example true */ enabled: boolean; /** - * @description Whether automated security fixes are paused for the repository. + * @description Whether Dependabot security updates are paused for the repository. * @example false */ paused: boolean; @@ -20212,7 +20905,7 @@ export interface components { reason: string; payload: string | null; signature: string | null; - verified_at?: string | null; + verified_at: string | null; }; /** * Diff Entry @@ -20781,6 +21474,7 @@ export interface components { rule: components["schemas"]["code-scanning-alert-rule-summary"]; tool: components["schemas"]["code-scanning-analysis-tool"]; most_recent_instance: components["schemas"]["code-scanning-alert-instance"]; + dismissal_approved_by?: components["schemas"]["nullable-simple-user"]; }; "code-scanning-alert-rule": { /** @description A unique identifier for the rule used to detect the alert. */ @@ -20824,12 +21518,15 @@ export interface components { rule: components["schemas"]["code-scanning-alert-rule"]; tool: components["schemas"]["code-scanning-analysis-tool"]; most_recent_instance: components["schemas"]["code-scanning-alert-instance"]; + dismissal_approved_by?: components["schemas"]["nullable-simple-user"]; }; /** * @description Sets the state of the code scanning alert. You must provide `dismissed_reason` when you set the state to `dismissed`. * @enum {string} */ "code-scanning-alert-set-state": "open" | "dismissed"; + /** @description If `true`, attempt to create an alert dismissal request. */ + "code-scanning-alert-create-request": boolean; /** * @description The status of an autofix. * @enum {string} @@ -22214,6 +22911,15 @@ export interface components { * @enum {string|null} */ readonly scope?: "development" | "runtime" | null; + /** + * @description The vulnerable dependency's relationship to your project. + * + * > [!NOTE] + * > We are rolling out support for dependency relationship across ecosystems. This value will be "unknown" for all dependencies in unsupported ecosystems. + * + * @enum {string|null} + */ + readonly relationship?: "unknown" | "direct" | "transitive" | null; }; security_advisory: components["schemas"]["dependabot-alert-security-advisory"]; security_vulnerability: components["schemas"]["dependabot-alert-security-vulnerability"]; @@ -22914,7 +23620,7 @@ export interface components { reason: string; signature: string | null; payload: string | null; - verified_at?: string | null; + verified_at: string | null; }; /** Format: uri */ html_url: string; @@ -23293,6 +23999,7 @@ export interface components { body_text?: string; /** Format: uri */ timeline_url?: string; + type?: components["schemas"]["issue-type"]; repository?: components["schemas"]["repository"]; performed_via_github_app?: components["schemas"]["nullable-integration"]; author_association: components["schemas"]["author-association"]; @@ -23891,7 +24598,7 @@ export interface components { reason: string; signature: string | null; payload: string | null; - verified_at?: string | null; + verified_at: string | null; }; /** Format: uri */ html_url: string; @@ -25128,6 +25835,8 @@ export interface components { publicly_leaked?: boolean | null; /** @description Whether the detected secret was found in multiple repositories under the same organization or enterprise. */ multi_repo?: boolean | null; + /** @description A boolean value representing whether or not alert is base64 encoded */ + is_base64_encoded?: boolean | null; }; /** @description An optional comment when closing an alert. Cannot be updated or deleted. Must be `null` when changing `state` to `open`. */ "secret-scanning-alert-resolution-comment": string | null; @@ -25862,6 +26571,7 @@ export interface components { body_text?: string; /** Format: uri */ timeline_url?: string; + type?: components["schemas"]["issue-type"]; performed_via_github_app?: components["schemas"]["nullable-integration"]; reactions?: components["schemas"]["reaction-rollup"]; }; @@ -26679,45 +27389,6 @@ export interface components { starred_at: string; repo: components["schemas"]["repository"]; }; - /** - * Sigstore Bundle v0.1 - * @description Sigstore Bundle v0.1 - */ - "sigstore-bundle-0": { - mediaType?: string; - verificationMaterial?: { - x509CertificateChain?: { - certificates?: { - rawBytes?: string; - }[]; - }; - tlogEntries?: { - logIndex?: string; - logId?: { - keyId?: string; - }; - kindVersion?: { - kind?: string; - version?: string; - }; - integratedTime?: string; - inclusionPromise?: { - signedEntryTimestamp?: string; - }; - inclusionProof?: string | null; - canonicalizedBody?: string; - }[]; - timestampVerificationData?: string | null; - }; - dsseEnvelope?: { - payload?: string; - payloadType?: string; - signatures?: { - sig?: string; - keyid?: string; - }[]; - }; - }; /** * Hovercard * @description Hovercard @@ -28581,6 +29252,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -29134,6 +29806,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -33660,6 +34333,7 @@ export interface components { url?: string; user_view_type?: string; } | null; + dismissed_comment?: components["schemas"]["code-scanning-alert-dismissed-comment"]; /** * @description The reason for dismissing or closing the alert. * @enum {string|null} @@ -33669,6 +34343,8 @@ export interface components { | "won't fix" | "used in tests" | null; + /** @description The time that the alert was fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. */ + fixed_at?: unknown; /** * Format: uri * @description The GitHub URL of the alert resource. @@ -33716,10 +34392,10 @@ export interface components { severity: "none" | "note" | "warning" | "error" | null; }; /** - * @description State of a code scanning alert. - * @enum {string} + * @description State of a code scanning alert. Events for alerts found outside the default branch will return a `null` value until they are dismissed or fixed. + * @enum {string|null} */ - state: "open" | "dismissed" | "fixed"; + state: "open" | "dismissed" | "fixed" | null; tool: { /** @description The name of the tool used to generate the code scanning analysis alert. */ name: string; @@ -33791,6 +34467,7 @@ export interface components { url?: string; user_view_type?: string; } | null; + dismissed_comment?: components["schemas"]["code-scanning-alert-dismissed-comment"]; /** * @description The reason for dismissing or closing the alert. * @enum {string|null} @@ -33800,6 +34477,8 @@ export interface components { | "won't fix" | "used in tests" | null; + /** @description The time that the alert was fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. */ + fixed_at?: unknown; /** * Format: uri * @description The GitHub URL of the alert resource. @@ -33866,6 +34545,44 @@ export interface components { }; /** Format: uri */ url: string; + /** User */ + dismissal_approved_by?: { + /** Format: uri */ + avatar_url?: string; + deleted?: boolean; + email?: string | null; + /** Format: uri-template */ + events_url?: string; + /** Format: uri */ + followers_url?: string; + /** Format: uri-template */ + following_url?: string; + /** Format: uri-template */ + gists_url?: string; + gravatar_id?: string; + /** Format: uri */ + html_url?: string; + id: number; + login: string; + name?: string; + node_id?: string; + /** Format: uri */ + organizations_url?: string; + /** Format: uri */ + received_events_url?: string; + /** Format: uri */ + repos_url?: string; + site_admin?: boolean; + /** Format: uri-template */ + starred_url?: string; + /** Format: uri */ + subscriptions_url?: string; + /** @enum {string} */ + type?: "Bot" | "User" | "Organization"; + /** Format: uri */ + url?: string; + user_view_type?: string; + } | null; }; commit_oid: components["schemas"]["webhooks_code_scanning_commit_oid"]; enterprise?: components["schemas"]["enterprise-webhooks"]; @@ -33892,6 +34609,7 @@ export interface components { dismissed_comment?: components["schemas"]["code-scanning-alert-dismissed-comment"]; /** @description The reason for dismissing or closing the alert. Can be one of: `false positive`, `won't fix`, and `used in tests`. */ dismissed_reason: unknown; + /** @description The time that the alert was fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. */ fixed_at?: unknown; /** * Format: uri @@ -33947,7 +34665,7 @@ export interface components { tags?: string[] | null; }; /** - * @description State of a code scanning alert. + * @description State of a code scanning alert. Events for alerts found outside the default branch will return a `null` value until they are dismissed or fixed. * @enum {string|null} */ state: "open" | "dismissed" | null; @@ -33961,6 +34679,7 @@ export interface components { updated_at?: string | null; /** Format: uri */ url: string; + dismissal_approved_by?: unknown; }; commit_oid: components["schemas"]["webhooks_code_scanning_commit_oid"]; enterprise?: components["schemas"]["enterprise-webhooks"]; @@ -34024,6 +34743,7 @@ export interface components { url?: string; user_view_type?: string; } | null; + dismissed_comment?: components["schemas"]["code-scanning-alert-dismissed-comment"]; /** * @description The reason for dismissing or closing the alert. * @enum {string|null} @@ -34033,6 +34753,8 @@ export interface components { | "won't fix" | "used in tests" | null; + /** @description The time that the alert was fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. */ + fixed_at?: unknown; /** * Format: uri * @description The GitHub URL of the alert resource. @@ -34088,10 +34810,10 @@ export interface components { tags?: string[] | null; }; /** - * @description State of a code scanning alert. - * @enum {string} + * @description State of a code scanning alert. Events for alerts found outside the default branch will return a `null` value until they are dismissed or fixed. + * @enum {string|null} */ - state: "fixed"; + state: "fixed" | null; tool: { guid?: string | null; /** @description The name of the tool used to generate the code scanning analysis alert. */ @@ -34124,8 +34846,11 @@ export interface components { /** @description The time that the alert was dismissed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. */ dismissed_at: string | null; dismissed_by: Record | null; + dismissed_comment?: components["schemas"]["code-scanning-alert-dismissed-comment"]; /** @description The reason for dismissing or closing the alert. Can be one of: `false positive`, `won't fix`, and `used in tests`. */ dismissed_reason: string | null; + /** @description The time that the alert was fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. */ + fixed_at?: unknown; /** * Format: uri * @description The GitHub URL of the alert resource. @@ -34179,10 +34904,10 @@ export interface components { tags?: string[] | null; }; /** - * @description State of a code scanning alert. - * @enum {string} + * @description State of a code scanning alert. Events for alerts found outside the default branch will return a `null` value until they are dismissed or fixed. + * @enum {string|null} */ - state: "open" | "dismissed" | "fixed"; + state: "open" | "dismissed" | "fixed" | null; tool: { guid?: string | null; /** @description The name of the tool used to generate the code scanning analysis alert. */ @@ -34217,8 +34942,11 @@ export interface components { /** @description The time that the alert was dismissed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. */ dismissed_at: unknown; dismissed_by: unknown; + dismissed_comment?: components["schemas"]["code-scanning-alert-dismissed-comment"]; /** @description The reason for dismissing or closing the alert. Can be one of: `false positive`, `won't fix`, and `used in tests`. */ dismissed_reason: unknown; + /** @description The time that the alert was fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`. */ + fixed_at?: unknown; /** * Format: uri * @description The GitHub URL of the alert resource. @@ -34266,10 +34994,10 @@ export interface components { severity: "none" | "note" | "warning" | "error" | null; }; /** - * @description State of a code scanning alert. - * @enum {string} + * @description State of a code scanning alert. Events for alerts found outside the default branch will return a `null` value until they are dismissed or fixed. + * @enum {string|null} */ - state: "open" | "fixed"; + state: "open" | "fixed" | null; tool: { /** @description The name of the tool used to generate the code scanning analysis alert. */ name: string; @@ -38323,6 +39051,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -38926,6 +39655,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -39533,6 +40263,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -40156,6 +40887,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -40708,6 +41440,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -41197,6 +41930,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -41700,6 +42434,7 @@ export interface components { state_reason?: string | null; /** Format: uri */ timeline_url?: string; + type?: components["schemas"]["issue-type"]; /** @description Title of the issue */ title: string; /** Format: date-time */ @@ -42193,6 +42928,7 @@ export interface components { state_reason?: string | null; /** Format: uri */ timeline_url?: string; + type?: components["schemas"]["issue-type"]; /** @description Title of the issue */ title: string; /** Format: date-time */ @@ -42688,6 +43424,7 @@ export interface components { state_reason?: string | null; /** Format: uri */ timeline_url?: string; + type?: components["schemas"]["issue-type"]; /** @description Title of the issue */ title: string; /** Format: date-time */ @@ -43180,6 +43917,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -44405,6 +45143,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -44953,6 +45692,7 @@ export interface components { url?: string; user_view_type?: string; } | null; + type?: components["schemas"]["issue-type"]; }; organization?: components["schemas"]["organization-simple-webhooks"]; repository: components["schemas"]["repository-webhooks"]; @@ -45397,6 +46137,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -46170,6 +46911,7 @@ export interface components { timeline_url?: string; /** @description Title of the issue */ title: string; + type?: components["schemas"]["issue-type"]; /** Format: date-time */ updated_at: string; /** @@ -77324,6 +78066,10 @@ export interface components { /** @description The previous version of the name if the action was `edited`. */ from: string; }; + tag_name?: { + /** @description The previous version of the tag_name if the action was `edited`. */ + from: string; + }; make_latest?: { /** @description Whether this release was explicitly `edited` to be the latest. */ to: boolean; @@ -78414,7 +79160,7 @@ export interface components { | "ocsp_pending"; signature: string | null; verified: boolean; - verified_at?: string | null; + verified_at: string | null; }; }; /** User */ @@ -81794,7 +82540,7 @@ export interface components { "application/json": components["schemas"]["basic-error"]; }; }; - /** @description Response if GitHub Advanced Security is not enabled for this repository */ + /** @description Response for a private repository when GitHub Advanced Security is not enabled, or if used against a fork */ dependency_review_forbidden: { content: { "application/json": components["schemas"]["basic-error"]; @@ -81864,14 +82610,24 @@ export interface components { "dependabot-alert-comma-separated-ecosystems"?: string; /** @description A comma-separated list of package names. If specified, only alerts for these packages will be returned. */ "dependabot-alert-comma-separated-packages"?: string; + /** + * @description CVE Exploit Prediction Scoring System (EPSS) percentage. Can be specified as: + * - An exact number (`n`) + * - Comparators such as `>n`, `=n`, `<=n` + * - A range like `n..n`, where `n` is a number from 0.0 to 1.0 + * + * Filters the list of alerts based on EPSS percentages. If specified, only alerts with the provided EPSS percentages will be returned. + */ + "dependabot-alert-comma-separated-epss"?: string; /** @description The scope of the vulnerable dependency. If specified, only alerts with this scope will be returned. */ "dependabot-alert-scope"?: "development" | "runtime"; /** * @description The property by which to sort the results. * `created` means when the alert was created. * `updated` means when the alert's state last changed. + * `epss_percentage` sorts alerts by the Exploit Prediction Scoring System (EPSS) percentage. */ - "dependabot-alert-sort"?: "created" | "updated"; + "dependabot-alert-sort"?: "created" | "updated" | "epss_percentage"; /** * @description **Deprecated**. The number of results per page (max 100), starting from the first matching result. * This parameter must not be used in combination with `last`. @@ -81886,7 +82642,7 @@ export interface components { "pagination-last"?: number; /** @description Set to `open` or `resolved` to only list secret scanning alerts in a specific state. */ "secret-scanning-alert-state"?: "open" | "resolved"; - /** @description A comma-separated list of secret types to return. All default secret patterns are returned. To return experimental patterns, pass the token name(s) in the parameter. See "[Supported secret scanning patterns](https://docs.github.com/enterprise-cloud@latest/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)" for a complete list of secret types. */ + /** @description A comma-separated list of secret types to return. All default secret patterns are returned. To return generic patterns, pass the token name(s) in the parameter. See "[Supported secret scanning patterns](https://docs.github.com/enterprise-cloud@latest/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)" for a complete list of secret types. */ "secret-scanning-alert-secret-type"?: string; /** @description A comma-separated list of resolutions. Only secret scanning alerts with one of these resolutions are listed. Valid resolutions are `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted` or `used_in_tests`. */ "secret-scanning-alert-resolution"?: string; @@ -81926,14 +82682,16 @@ export interface components { "since-org"?: number; /** @description The organization name. The name is not case sensitive. */ org: string; - /** @description If specified, only return results for a single year. The value of `year` is an integer with four digits representing a year. For example, `2024`. Default value is the current year. */ + /** @description If specified, only return results for a single year. The value of `year` is an integer with four digits representing a year. For example, `2025`. Default value is the current year. */ "billing-usage-report-year"?: number; - /** @description If specified, only return results for a single month. The value of `month` is an integer between `1` and `12`. */ + /** @description If specified, only return results for a single month. The value of `month` is an integer between `1` and `12`. If no year is specified the default `year` is used. */ "billing-usage-report-month"?: number; - /** @description If specified, only return results for a single day. The value of `day` is an integer between `1` and `31`. */ + /** @description If specified, only return results for a single day. The value of `day` is an integer between `1` and `31`. If no `year` or `month` is specified, the default `year` and `month` are used. */ "billing-usage-report-day"?: number; - /** @description If specified, only return results for a single hour. The value of `hour` is an integer between `0` and `23`. */ + /** @description If specified, only return results for a single hour. The value of `hour` is an integer between `0` and `23`. If no `year`, `month`, or `day` is specified, the default `year`, `month`, and `day` are used. */ "billing-usage-report-hour"?: number; + /** @description Unique identifier of the GitHub-hosted runner. */ + "hosted-runner-id": number; /** @description The unique identifier of the repository. */ "repository-id": number; /** @description Only return runner groups that are allowed to be used by this repository. */ @@ -82000,6 +82758,8 @@ export interface components { "api-insights-actor-name-substring"?: string; /** @description The unique identifier of the invitation. */ "invitation-id": number; + /** @description The unique identifier of the issue type. */ + "issue-type-id": number; /** @description The name of the codespace. */ "codespace-name": string; /** @description The unique identifier of the migration. */ @@ -82041,6 +82801,8 @@ export interface components { "personal-access-token-before"?: string; /** @description Only show fine-grained personal access tokens used after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`. */ "personal-access-token-after"?: string; + /** @description The ID of the token */ + "personal-access-token-token-id"?: string[]; /** @description The unique identifier of the fine-grained personal access token. */ "fine-grained-personal-access-token-id": number; /** @description The custom property name */ @@ -82076,6 +82838,10 @@ export interface components { "secret-scanning-pagination-before-org-repo"?: string; /** @description A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events after this cursor. To receive an initial cursor on your first request, include an empty "after" query string. */ "secret-scanning-pagination-after-org-repo"?: string; + /** @description Unique identifier of the hosted compute network configuration. */ + "network-configuration-id": string; + /** @description Unique identifier of the hosted compute network settings. */ + "network-settings-id": string; /** @description The number that identifies the discussion. */ "discussion-number": number; /** @description The number that identifies the comment. */ @@ -82231,6 +82997,11 @@ export interface components { "since-repo"?: number; /** @description Determines whether the first search result returned is the highest number of matches (`desc`) or lowest number of matches (`asc`). This parameter is ignored unless you provide `sort`. */ order?: "desc" | "asc"; + /** + * @description Set to `true` to use advanced search. + * Example: `http://api.github.com/search/issues?q={query}&advanced_search=true` + */ + "issues-advanced-search"?: string; /** @description The unique identifier of the team. */ "team-id": number; /** @description ID of the Repository to filter on */ @@ -83348,7 +84119,7 @@ export interface operations { * List accepted assignments for an assignment * @description Lists any assignment repositories that have been created by students accepting a GitHub Classroom assignment. Accepted assignments will only be returned if the current user is an administrator of the GitHub Classroom for the assignment. */ - "classroom/list-accepted-assigments-for-an-assignment": { + "classroom/list-accepted-assignments-for-an-assignment": { parameters: { query?: { page?: components["parameters"]["page"]; @@ -83603,6 +84374,15 @@ export interface operations { */ code_scanning_default_setup?: "enabled" | "disabled" | "not_set"; code_scanning_default_setup_options?: components["schemas"]["code-scanning-default-setup-options"]; + /** + * @description The enablement status of code scanning delegated alert dismissal + * @default disabled + * @enum {string} + */ + code_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of secret scanning * @default disabled @@ -83630,6 +84410,21 @@ export interface operations { | "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of Copilot secret scanning + * @default disabled + * @enum {string} + */ + secret_scanning_generic_secrets?: "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of secret scanning delegated alert dismissal + * @default disabled + * @enum {string} + */ + secret_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of private vulnerability reporting * @default disabled @@ -83793,6 +84588,15 @@ export interface operations { */ code_scanning_default_setup?: "enabled" | "disabled" | "not_set"; code_scanning_default_setup_options?: components["schemas"]["code-scanning-default-setup-options"]; + /** + * @description The enablement status of code scanning delegated alert dismissal + * @default disabled + * @enum {string} + */ + code_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of secret scanning * @enum {string} @@ -83816,6 +84620,21 @@ export interface operations { | "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of Copilot secret scanning + * @default disabled + * @enum {string} + */ + secret_scanning_generic_secrets?: "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of secret scanning delegated alert dismissal + * @default disabled + * @enum {string} + */ + secret_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of private vulnerability reporting * @enum {string} @@ -83863,7 +84682,7 @@ export interface operations { content: { "application/json": { /** - * @description The type of repositories to attach the configuration to. `selected` means the configuration will be attached to only the repositories specified by `selected_repository_ids` + * @description The type of repositories to attach the configuration to. * @enum {string} */ scope: "all" | "all_without_configurations"; @@ -83986,6 +84805,7 @@ export interface operations { severity?: components["parameters"]["dependabot-alert-comma-separated-severities"]; ecosystem?: components["parameters"]["dependabot-alert-comma-separated-ecosystems"]; package?: components["parameters"]["dependabot-alert-comma-separated-packages"]; + epss_percentage?: components["parameters"]["dependabot-alert-comma-separated-epss"]; scope?: components["parameters"]["dependabot-alert-scope"]; sort?: components["parameters"]["dependabot-alert-sort"]; direction?: components["parameters"]["direction"]; @@ -85411,7 +86231,7 @@ export interface operations { * Get an organization * @description Gets information about an organization. * - * When the value of `two_factor_requirement_enabled` is `true`, the organization requires all members, billing managers, and outside collaborators to enable [two-factor authentication](https://docs.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/). + * When the value of `two_factor_requirement_enabled` is `true`, the organization requires all members, billing managers, outside collaborators, guest collaborators, repository collaborators, or everyone with access to any repository within the organization to enable [two-factor authentication](https://docs.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/). * * To see the full details about an organization, the authenticated user must be an organization owner. * @@ -85698,6 +86518,270 @@ export interface operations { }; }; }; + /** + * List GitHub-hosted runners for an organization + * @description Lists all GitHub-hosted runners configured in an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `manage_runner:org` scope to use this endpoint. + */ + "actions/list-hosted-runners-for-org": { + parameters: { + query?: { + per_page?: components["parameters"]["per-page"]; + page?: components["parameters"]["page"]; + }; + path: { + org: components["parameters"]["org"]; + }; + }; + responses: { + /** @description Response */ + 200: { + headers: { + Link: components["headers"]["link"]; + }; + content: { + "application/json": { + total_count: number; + runners: components["schemas"]["actions-hosted-runner"][]; + }; + }; + }; + }; + }; + /** + * Create a GitHub-hosted runner for an organization + * @description Creates a GitHub-hosted runner for an organization. + * OAuth tokens and personal access tokens (classic) need the `manage_runners:org` scope to use this endpoint. + */ + "actions/create-hosted-runner-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + requestBody: { + content: { + "application/json": { + /** @description Name of the runner. Must be between 1 and 64 characters and may only contain upper and lowercase letters a-z, numbers 0-9, '.', '-', and '_'. */ + name: string; + /** @description The image of runner. To list all available images, use `GET /actions/hosted-runners/images/github-owned` or `GET /actions/hosted-runners/images/partner`. */ + image: { + /** @description The unique identifier of the runner image. */ + id?: string; + /** + * @description The source of the runner image. + * @enum {string} + */ + source?: "github" | "partner" | "custom"; + }; + /** @description The machine size of the runner. To list available sizes, use `GET actions/hosted-runners/machine-sizes` */ + size: string; + /** @description The existing runner group to add this runner to. */ + runner_group_id: number; + /** @description The maximum amount of runners to scale up to. Runners will not auto-scale above this number. Use this setting to limit your cost. */ + maximum_runners?: number; + /** @description Whether this runner should be created with a static public IP. Note limit on account. To list limits on account, use `GET actions/hosted-runners/limits` */ + enable_static_ip?: boolean; + }; + }; + }; + responses: { + /** @description Response */ + 201: { + content: { + "application/json": components["schemas"]["actions-hosted-runner"]; + }; + }; + }; + }; + /** + * Get GitHub-owned images for GitHub-hosted runners in an organization + * @description Get the list of GitHub-owned images available for GitHub-hosted runners for an organization. + */ + "actions/get-hosted-runners-github-owned-images-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": { + total_count: number; + images: components["schemas"]["actions-hosted-runner-image"][]; + }; + }; + }; + }; + }; + /** + * Get partner images for GitHub-hosted runners in an organization + * @description Get the list of partner images available for GitHub-hosted runners for an organization. + */ + "actions/get-hosted-runners-partner-images-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": { + total_count: number; + images: components["schemas"]["actions-hosted-runner-image"][]; + }; + }; + }; + }; + }; + /** + * Get limits on GitHub-hosted runners for an organization + * @description Get the GitHub-hosted runners limits for an organization. + */ + "actions/get-hosted-runners-limits-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["actions-hosted-runner-limits"]; + }; + }; + }; + }; + /** + * Get GitHub-hosted runners machine specs for an organization + * @description Get the list of machine specs available for GitHub-hosted runners for an organization. + */ + "actions/get-hosted-runners-machine-specs-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": { + total_count: number; + machine_specs: components["schemas"]["actions-hosted-runner-machine-spec"][]; + }; + }; + }; + }; + }; + /** + * Get platforms for GitHub-hosted runners in an organization + * @description Get the list of platforms available for GitHub-hosted runners for an organization. + */ + "actions/get-hosted-runners-platforms-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": { + total_count: number; + platforms: string[]; + }; + }; + }; + }; + }; + /** + * Get a GitHub-hosted runner for an organization + * @description Gets a GitHub-hosted runner configured in an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `manage_runners:org` scope to use this endpoint. + */ + "actions/get-hosted-runner-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + hosted_runner_id: components["parameters"]["hosted-runner-id"]; + }; + }; + responses: { + /** @description Response */ + 200: { + headers: { + Link: components["headers"]["link"]; + }; + content: { + "application/json": components["schemas"]["actions-hosted-runner"]; + }; + }; + }; + }; + /** + * Delete a GitHub-hosted runner for an organization + * @description Deletes a GitHub-hosted runner for an organization. + */ + "actions/delete-hosted-runner-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + hosted_runner_id: components["parameters"]["hosted-runner-id"]; + }; + }; + responses: { + /** @description Response */ + 202: { + content: { + "application/json": components["schemas"]["actions-hosted-runner"]; + }; + }; + }; + }; + /** + * Update a GitHub-hosted runner for an organization + * @description Updates a GitHub-hosted runner for an organization. + * OAuth app tokens and personal access tokens (classic) need the `manage_runners:org` scope to use this endpoint. + */ + "actions/update-hosted-runner-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + hosted_runner_id: components["parameters"]["hosted-runner-id"]; + }; + }; + requestBody: { + content: { + "application/json": { + /** @description Name of the runner. Must be between 1 and 64 characters and may only contain upper and lowercase letters a-z, numbers 0-9, '.', '-', and '_'. */ + name?: string; + /** @description The existing runner group to add this runner to. */ + runner_group_id?: number; + /** @description The maximum amount of runners to scale up to. Runners will not auto-scale above this number. Use this setting to limit your cost. */ + maximum_runners?: number; + /** @description Whether this runner should be updated with a static public IP. Note limit on account. To list limits on account, use `GET actions/hosted-runners/limits` */ + enable_static_ip?: boolean; + }; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["actions-hosted-runner"]; + }; + }; + }; + }; /** * Get the customization template for an OIDC subject claim for an organization * @description Gets the customization template for an OpenID Connect (OIDC) subject claim. @@ -86053,6 +87137,8 @@ export interface operations { restricted_to_workflows?: boolean; /** @description List of workflows the runner group should be allowed to run. This setting will be ignored unless `restricted_to_workflows` is set to `true`. */ selected_workflows?: string[]; + /** @description The identifier of a hosted compute network configuration. */ + network_configuration_id?: string; }; }; }; @@ -86142,6 +87228,8 @@ export interface operations { restricted_to_workflows?: boolean; /** @description List of workflows the runner group should be allowed to run. This setting will be ignored unless `restricted_to_workflows` is set to `true`. */ selected_workflows?: string[]; + /** @description The identifier of a hosted compute network configuration. */ + network_configuration_id?: string | null; }; }; }; @@ -86154,6 +87242,38 @@ export interface operations { }; }; }; + /** + * List GitHub-hosted runners in a group for an organization + * @description Lists the GitHub-hosted runners in an organization group. + * + * OAuth app tokens and personal access tokens (classic) need the `admin:org` scope to use this endpoint. + */ + "actions/list-github-hosted-runners-in-group-for-org": { + parameters: { + query?: { + per_page?: components["parameters"]["per-page"]; + page?: components["parameters"]["page"]; + }; + path: { + org: components["parameters"]["org"]; + runner_group_id: components["parameters"]["runner-group-id"]; + }; + }; + responses: { + /** @description Response */ + 200: { + headers: { + Link: components["headers"]["link"]; + }; + content: { + "application/json": { + total_count: number; + runners: components["schemas"]["actions-hosted-runner"][]; + }; + }; + }; + }; + }; /** * List repository access to a self-hosted runner group in an organization * @description Lists the repositories with access to a self-hosted runner group configured in an organization. @@ -86447,6 +87567,7 @@ export interface operations { responses: { 201: components["responses"]["actions_runner_jitconfig"]; 404: components["responses"]["not_found"]; + 409: components["responses"]["conflict"]; 422: components["responses"]["validation_failed_simple"]; }; }; @@ -87322,6 +88443,11 @@ export interface operations { per_page?: components["parameters"]["per-page"]; before?: components["parameters"]["pagination-before"]; after?: components["parameters"]["pagination-after"]; + /** + * @description Optional filter for fetching attestations with a given predicate type. + * This option accepts `provenance`, `sbom`, or freeform text for custom predicate types. + */ + predicate_type?: string; }; path: { org: components["parameters"]["org"]; @@ -87585,6 +88711,15 @@ export interface operations { */ code_scanning_default_setup?: "enabled" | "disabled" | "not_set"; code_scanning_default_setup_options?: components["schemas"]["code-scanning-default-setup-options"]; + /** + * @description The enablement status of code scanning delegated alert dismissal + * @default not_set + * @enum {string} + */ + code_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of secret scanning * @default disabled @@ -87631,6 +88766,20 @@ export interface operations { | "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of Copilot secret scanning + * @default disabled + * @enum {string} + */ + secret_scanning_generic_secrets?: "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of secret scanning delegated alert dismissal + * @enum {string} + */ + secret_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of private vulnerability reporting * @default disabled @@ -87825,6 +88974,15 @@ export interface operations { */ code_scanning_default_setup?: "enabled" | "disabled" | "not_set"; code_scanning_default_setup_options?: components["schemas"]["code-scanning-default-setup-options"]; + /** + * @description The enablement status of code scanning delegated alert dismissal + * @default disabled + * @enum {string} + */ + code_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of secret scanning * @enum {string} @@ -87866,6 +89024,19 @@ export interface operations { | "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of Copilot secret scanning + * @enum {string} + */ + secret_scanning_generic_secrets?: "enabled" | "disabled" | "not_set"; + /** + * @description The enablement status of secret scanning delegated alert dismissal + * @enum {string} + */ + secret_scanning_delegated_alert_dismissal?: + | "enabled" + | "disabled" + | "not_set"; /** * @description The enablement status of private vulnerability reporting * @enum {string} @@ -88764,7 +89935,7 @@ export interface operations { /** * Get a summary of Copilot usage for organization members * @description > [!NOTE] - * > This endpoint is in public preview and is subject to change. + * > This endpoint is closing down. It will be accessible throughout February 2025, but will not return any new data after February 1st. * * You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE * across an organization, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day. @@ -88821,6 +89992,7 @@ export interface operations { severity?: components["parameters"]["dependabot-alert-comma-separated-severities"]; ecosystem?: components["parameters"]["dependabot-alert-comma-separated-ecosystems"]; package?: components["parameters"]["dependabot-alert-comma-separated-packages"]; + epss_percentage?: components["parameters"]["dependabot-alert-comma-separated-epss"]; scope?: components["parameters"]["dependabot-alert-scope"]; sort?: components["parameters"]["dependabot-alert-sort"]; direction?: components["parameters"]["direction"]; @@ -90103,6 +91275,105 @@ export interface operations { 404: components["responses"]["not_found"]; }; }; + /** + * List issue types for an organization + * @description Lists all issue types for an organization. + */ + "orgs/list-issue-types": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["issue-type"][]; + }; + }; + 404: components["responses"]["not_found"]; + }; + }; + /** + * Create issue type for an organization + * @description Create a new issue type for an organization. + * + * You can find out more about issue types in [Managing issue types in an organization](https://docs.github.com/issues/tracking-your-work-with-issues/configuring-issues/managing-issue-types-in-an-organization). + */ + "orgs/create-issue-type": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + requestBody: { + content: { + "application/json": components["schemas"]["organization-create-issue-type"]; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["issue-type"]; + }; + }; + 404: components["responses"]["not_found"]; + 422: components["responses"]["validation_failed_simple"]; + }; + }; + /** + * Update issue type for an organization + * @description Updates an issue type for an organization. + * + * You can find out more about issue types in [Managing issue types in an organization](https://docs.github.com/issues/tracking-your-work-with-issues/configuring-issues/managing-issue-types-in-an-organization). + */ + "orgs/update-issue-type": { + parameters: { + path: { + org: components["parameters"]["org"]; + issue_type_id: components["parameters"]["issue-type-id"]; + }; + }; + requestBody: { + content: { + "application/json": components["schemas"]["organization-update-issue-type"]; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["issue-type"]; + }; + }; + 404: components["responses"]["not_found"]; + 422: components["responses"]["validation_failed_simple"]; + }; + }; + /** + * Delete issue type for an organization + * @description Deletes an issue type for an organization. + * + * You can find out more about issue types in [Managing issue types in an organization](https://docs.github.com/issues/tracking-your-work-with-issues/configuring-issues/managing-issue-types-in-an-organization). + */ + "orgs/delete-issue-type": { + parameters: { + path: { + org: components["parameters"]["org"]; + issue_type_id: components["parameters"]["issue-type-id"]; + }; + }; + responses: { + /** @description Response */ + 204: { + content: never; + }; + 404: components["responses"]["not_found"]; + 422: components["responses"]["validation_failed_simple"]; + }; + }; /** * List organization issues assigned to the authenticated user * @description List issues in an organization assigned to the authenticated user. @@ -90131,6 +91402,8 @@ export interface operations { /** @description Indicates the state of the issues to return. */ state?: "open" | "closed" | "all"; labels?: components["parameters"]["labels"]; + /** @description Can be the name of an issue type. */ + type?: string; /** @description What to sort results by. */ sort?: "created" | "updated" | "comments"; direction?: components["parameters"]["direction"]; @@ -91311,6 +92584,7 @@ export interface operations { permission?: components["parameters"]["personal-access-token-permission"]; last_used_before?: components["parameters"]["personal-access-token-before"]; last_used_after?: components["parameters"]["personal-access-token-after"]; + token_id?: components["parameters"]["personal-access-token-token-id"]; }; path: { org: components["parameters"]["org"]; @@ -91453,6 +92727,7 @@ export interface operations { permission?: components["parameters"]["personal-access-token-permission"]; last_used_before?: components["parameters"]["personal-access-token-before"]; last_used_after?: components["parameters"]["personal-access-token-after"]; + token_id?: components["parameters"]["personal-access-token-token-id"]; }; path: { org: components["parameters"]["org"]; @@ -91800,7 +93075,10 @@ export interface operations { }; /** * List organization projects - * @description Lists the projects in an organization. Returns a `404 Not Found` status if projects are disabled in the organization. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/list-for-org": { parameters: { @@ -91829,7 +93107,10 @@ export interface operations { }; /** * Create an organization project - * @description Creates an organization project board. Returns a `410 Gone` status if projects are disabled in the organization or if the organization does not have existing classic projects. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/create-for-org": { parameters: { @@ -91887,6 +93168,10 @@ export interface operations { * Create or update custom properties for an organization * @description Creates new or updates existing custom properties defined for an organization in a batch. * + * If the property already exists, the existing property will be replaced with the new values. + * Missing optional values will fall back to default values, previous values will be overwritten. + * E.g. if a property exists with `values_editable_by: org_and_repo_actors` and it's updated without specifying `values_editable_by`, it will be updated to default value `org_actors`. + * * To use this endpoint, the authenticated user must be one of: * - An administrator for the organization. * - A user, or a user on a team, with the fine-grained permission of `custom_properties_org_definitions_manager` in the organization. @@ -92554,6 +93839,58 @@ export interface operations { 500: components["responses"]["internal_error"]; }; }; + /** + * Get organization ruleset history + * @description Get the history of an organization ruleset. + */ + "orgs/get-org-ruleset-history": { + parameters: { + query?: { + per_page?: components["parameters"]["per-page"]; + page?: components["parameters"]["page"]; + }; + path: { + org: components["parameters"]["org"]; + /** @description The ID of the ruleset. */ + ruleset_id: number; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["ruleset-version"][]; + }; + }; + 404: components["responses"]["not_found"]; + 500: components["responses"]["internal_error"]; + }; + }; + /** + * Get organization ruleset version + * @description Get a version of an organization ruleset. + */ + "orgs/get-org-ruleset-version": { + parameters: { + path: { + org: components["parameters"]["org"]; + /** @description The ID of the ruleset. */ + ruleset_id: number; + /** @description The ID of the version */ + version_id: number; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["ruleset-version-with-state"]; + }; + }; + 404: components["responses"]["not_found"]; + 500: components["responses"]["internal_error"]; + }; + }; /** * List secret scanning alerts for an organization * @description Lists secret scanning alerts for eligible repositories in an organization, from newest to oldest. @@ -92762,6 +94099,180 @@ export interface operations { }; }; }; + /** + * List hosted compute network configurations for an organization + * @description Lists all hosted compute network configurations configured in an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `read:network_configurations` scope to use this endpoint. + */ + "hosted-compute/list-network-configurations-for-org": { + parameters: { + query?: { + per_page?: components["parameters"]["per-page"]; + page?: components["parameters"]["page"]; + }; + path: { + org: components["parameters"]["org"]; + }; + }; + responses: { + /** @description Response */ + 200: { + headers: { + Link: components["headers"]["link"]; + }; + content: { + "application/json": { + total_count: number; + network_configurations: components["schemas"]["network-configuration"][]; + }; + }; + }; + }; + }; + /** + * Create a hosted compute network configuration for an organization + * @description Creates a hosted compute network configuration for an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `write:network_configurations` scope to use this endpoint. + */ + "hosted-compute/create-network-configuration-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + }; + }; + requestBody: { + content: { + "application/json": { + /** @description Name of the network configuration. Must be between 1 and 100 characters and may only contain upper and lowercase letters a-z, numbers 0-9, '.', '-', and '_'. */ + name: string; + /** + * @description The hosted compute service to use for the network configuration. + * @enum {string} + */ + compute_service?: "none" | "actions"; + /** @description The identifier of the network settings to use for the network configuration. Exactly one network settings must be specified. */ + network_settings_ids: string[]; + }; + }; + }; + responses: { + /** @description Response */ + 201: { + content: { + "application/json": components["schemas"]["network-configuration"]; + }; + }; + }; + }; + /** + * Get a hosted compute network configuration for an organization + * @description Gets a hosted compute network configuration configured in an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `read:network_configurations` scope to use this endpoint. + */ + "hosted-compute/get-network-configuration-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + network_configuration_id: components["parameters"]["network-configuration-id"]; + }; + }; + responses: { + /** @description Response */ + 200: { + headers: { + Link: components["headers"]["link"]; + }; + content: { + "application/json": components["schemas"]["network-configuration"]; + }; + }; + }; + }; + /** + * Delete a hosted compute network configuration from an organization + * @description Deletes a hosted compute network configuration from an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `write:network_configurations` scope to use this endpoint. + */ + "hosted-compute/delete-network-configuration-from-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + network_configuration_id: components["parameters"]["network-configuration-id"]; + }; + }; + responses: { + /** @description Response */ + 204: { + content: never; + }; + }; + }; + /** + * Update a hosted compute network configuration for an organization + * @description Updates a hosted compute network configuration for an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `write:network_configurations` scope to use this endpoint. + */ + "hosted-compute/update-network-configuration-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + network_configuration_id: components["parameters"]["network-configuration-id"]; + }; + }; + requestBody: { + content: { + "application/json": { + /** @description Name of the network configuration. Must be between 1 and 100 characters and may only contain upper and lowercase letters a-z, numbers 0-9, '.', '-', and '_'. */ + name?: string; + /** + * @description The hosted compute service to use for the network configuration. + * @enum {string} + */ + compute_service?: "none" | "actions"; + /** @description The identifier of the network settings to use for the network configuration. Exactly one network settings must be specified. */ + network_settings_ids?: string[]; + }; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["network-configuration"]; + }; + }; + }; + }; + /** + * Get a hosted compute network settings resource for an organization + * @description Gets a hosted compute network settings resource configured for an organization. + * + * OAuth app tokens and personal access tokens (classic) need the `read:network_configurations` scope to use this endpoint. + */ + "hosted-compute/get-network-settings-for-org": { + parameters: { + path: { + org: components["parameters"]["org"]; + network_settings_id: components["parameters"]["network-settings-id"]; + }; + }; + responses: { + /** @description Response */ + 200: { + headers: { + Link: components["headers"]["link"]; + }; + content: { + "application/json": components["schemas"]["network-settings"]; + }; + }; + }; + }; /** * Get Copilot metrics for a team * @description Use this endpoint to see a breakdown of aggregated metrics for various GitHub Copilot features. See the response schema tab for detailed metrics definitions. @@ -92810,7 +94321,7 @@ export interface operations { /** * Get a summary of Copilot usage for a team * @description > [!NOTE] - * > This endpoint is in public preview and is subject to change. + * > This endpoint is closing down. It will be accessible throughout February 2025, but will not return any new data after February 1st. * * You can use this endpoint to see a daily breakdown of aggregated usage metrics for Copilot completions and Copilot Chat in the IDE * for users within a team, with a further breakdown of suggestions, acceptances, and number of active users by editor and language for each day. @@ -93813,10 +95324,10 @@ export interface operations { }; /** * List team projects - * @description Lists the organization projects for a team. - * - * > [!NOTE] - * > You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/projects`. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "teams/list-projects-in-org": { parameters: { @@ -93843,10 +95354,10 @@ export interface operations { }; /** * Check team permissions for a project - * @description Checks whether a team has `read`, `write`, or `admin` permissions for an organization project. The response includes projects inherited from a parent team. - * - * > [!NOTE] - * > You can also specify a team by `org_id` and `team_id` using the route `GET /organizations/{org_id}/team/{team_id}/projects/{project_id}`. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "teams/check-permissions-for-project-in-org": { parameters: { @@ -93871,10 +95382,10 @@ export interface operations { }; /** * Add or update team project permissions - * @description Adds an organization project to a team. To add a project to a team or update the team's permission on a project, the authenticated user must have `admin` permissions for the project. The project and team must be part of the same organization. - * - * > [!NOTE] - * > You can also specify a team by `org_id` and `team_id` using the route `PUT /organizations/{org_id}/team/{team_id}/projects/{project_id}`. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "teams/add-or-update-project-permissions-in-org": { parameters: { @@ -93913,10 +95424,10 @@ export interface operations { }; /** * Remove a project from a team - * @description Removes an organization project from a team. An organization owner or a team maintainer can remove any project from the team. To remove a project from a team as an organization member, the authenticated user must have `read` access to both the team and project, or `admin` access to the team or project. This endpoint removes the project from the team, but does not delete the project. - * - * > [!NOTE] - * > You can also specify a team by `org_id` and `team_id` using the route `DELETE /organizations/{org_id}/team/{team_id}/projects/{project_id}`. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "teams/remove-project-in-org": { parameters: { @@ -94133,7 +95644,10 @@ export interface operations { }; /** * Get a project card - * @description Gets information about a project card. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/get-card": { parameters: { @@ -94156,7 +95670,10 @@ export interface operations { }; /** * Delete a project card - * @description Deletes a project card + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/delete-card": { parameters: { @@ -94184,7 +95701,13 @@ export interface operations { 404: components["responses"]["not_found"]; }; }; - /** Update an existing project card */ + /** + * Update an existing project card + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ "projects/update-card": { parameters: { path: { @@ -94221,7 +95744,13 @@ export interface operations { 422: components["responses"]["validation_failed_simple"]; }; }; - /** Move a project card */ + /** + * Move a project card + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ "projects/move-card": { parameters: { path: { @@ -94287,7 +95816,10 @@ export interface operations { }; /** * Get a project column - * @description Gets information about a project column. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/get-column": { parameters: { @@ -94310,7 +95842,10 @@ export interface operations { }; /** * Delete a project column - * @description Deletes a project column. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/delete-column": { parameters: { @@ -94328,7 +95863,13 @@ export interface operations { 403: components["responses"]["forbidden"]; }; }; - /** Update an existing project column */ + /** + * Update an existing project column + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ "projects/update-column": { parameters: { path: { @@ -94360,7 +95901,10 @@ export interface operations { }; /** * List project cards - * @description Lists the project cards in a project. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/list-cards": { parameters: { @@ -94389,7 +95933,13 @@ export interface operations { 403: components["responses"]["forbidden"]; }; }; - /** Create a project card */ + /** + * Create a project card + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ "projects/create-card": { parameters: { path: { @@ -94457,7 +96007,13 @@ export interface operations { }; }; }; - /** Move a project column */ + /** + * Move a project column + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. + */ "projects/move-column": { parameters: { path: { @@ -94490,7 +96046,10 @@ export interface operations { }; /** * Get a project - * @description Gets a project by its `id`. Returns a `404 Not Found` status if projects are disabled. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/get": { parameters: { @@ -94512,7 +96071,10 @@ export interface operations { }; /** * Delete a project - * @description Deletes a project board. Returns a `404 Not Found` status if projects are disabled. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/delete": { parameters: { @@ -94543,7 +96105,10 @@ export interface operations { }; /** * Update a project - * @description Updates a project board's information. Returns a `404 Not Found` status if projects are disabled. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/update": { parameters: { @@ -94608,7 +96173,10 @@ export interface operations { }; /** * List project collaborators - * @description Lists the collaborators for an organization project. For a project, the list of collaborators includes outside collaborators, organization members that are direct collaborators, organization members with access through team memberships, organization members with access through default organization permissions, and organization owners. You must be an organization owner or a project `admin` to list collaborators. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/list-collaborators": { parameters: { @@ -94641,7 +96209,10 @@ export interface operations { }; /** * Add project collaborator - * @description Adds a collaborator to an organization project and sets their permission level. You must be an organization owner or a project `admin` to add a collaborator. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/add-collaborator": { parameters: { @@ -94677,7 +96248,10 @@ export interface operations { }; /** * Remove user as a collaborator - * @description Removes a collaborator from an organization project. You must be an organization owner or a project `admin` to remove a collaborator. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/remove-collaborator": { parameters: { @@ -94700,7 +96274,10 @@ export interface operations { }; /** * Get project permission for a user - * @description Returns the collaborator's permission level for an organization project. Possible values for the `permission` key: `admin`, `write`, `read`, `none`. You must be an organization owner or a project `admin` to review a user's permission level. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/get-permission-for-user": { parameters: { @@ -94725,7 +96302,10 @@ export interface operations { }; /** * List project columns - * @description Lists the project columns in a project. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/list-columns": { parameters: { @@ -94754,7 +96334,10 @@ export interface operations { }; /** * Create a project column - * @description Creates a new project column. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/create-column": { parameters: { @@ -95803,6 +97386,7 @@ export interface operations { responses: { 201: components["responses"]["actions_runner_jitconfig"]; 404: components["responses"]["not_found"]; + 409: components["responses"]["conflict"]; 422: components["responses"]["validation_failed_simple"]; }; }; @@ -96634,7 +98218,10 @@ export interface operations { }; /** * Get workflow run usage - * @description Gets the number of billable minutes and total run time for a specific workflow run. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". + * @description > [!WARNING] + * > This endpoint is in the process of closing down. Refer to "[Actions Get workflow usage and Get workflow run usage endpoints closing down](https://github.blog/changelog/2025-02-02-actions-get-workflow-usage-and-get-workflow-run-usage-endpoints-closing-down/)" for more information. + * + * Gets the number of billable minutes and total run time for a specific workflow run. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". * * Anyone with read access to the repository can use this endpoint. * @@ -96763,9 +98350,9 @@ export interface operations { content: { "application/json": { /** @description Value for your secret, encrypted with [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages) using the public key retrieved from the [Get a repository public key](https://docs.github.com/rest/actions/secrets#get-a-repository-public-key) endpoint. */ - encrypted_value?: string; + encrypted_value: string; /** @description ID of the key you used to encrypt the secret. */ - key_id?: string; + key_id: string; }; }; }; @@ -97138,7 +98725,10 @@ export interface operations { }; /** * Get workflow usage - * @description Gets the number of billable minutes used by a specific workflow during the current billing cycle. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". + * @description > [!WARNING] + * > This endpoint is in the process of closing down. Refer to "[Actions Get workflow usage and Get workflow run usage endpoints closing down](https://github.blog/changelog/2025-02-02-actions-get-workflow-usage-and-get-workflow-run-usage-endpoints-closing-down/)" for more information. + * + * Gets the number of billable minutes used by a specific workflow during the current billing cycle. Billable minutes only apply to workflows in private repositories that use GitHub-hosted runners. Usage is listed for each GitHub-hosted runner operating system in milliseconds. Any job re-runs are also included in the usage. The usage does not include the multiplier for macOS and Windows runners and is not rounded up to the nearest whole minute. For more information, see "[Managing billing for GitHub Actions](https://docs.github.com/github/setting-up-and-managing-billing-and-payments-on-github/managing-billing-for-github-actions)". * * You can replace `workflow_id` with the workflow file name. For example, you could use `main.yaml`. * @@ -97341,6 +98931,11 @@ export interface operations { per_page?: components["parameters"]["per-page"]; before?: components["parameters"]["pagination-before"]; after?: components["parameters"]["pagination-after"]; + /** + * @description Optional filter for fetching attestations with a given predicate type. + * This option accepts `provenance`, `sbom`, or freeform text for custom predicate types. + */ + predicate_type?: string; }; path: { owner: components["parameters"]["owner"]; @@ -97485,8 +99080,8 @@ export interface operations { }; }; /** - * Check if automated security fixes are enabled for a repository - * @description Shows whether automated security fixes are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see "[Configuring automated security fixes](https://docs.github.com/articles/configuring-automated-security-fixes)". + * Check if Dependabot security updates are enabled for a repository + * @description Shows whether Dependabot security updates are enabled, disabled or paused for a repository. The authenticated user must have admin read access to the repository. For more information, see "[Configuring Dependabot security updates](https://docs.github.com/articles/configuring-automated-security-fixes)". */ "repos/check-automated-security-fixes": { parameters: { @@ -97509,8 +99104,8 @@ export interface operations { }; }; /** - * Enable automated security fixes - * @description Enables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring automated security fixes](https://docs.github.com/articles/configuring-automated-security-fixes)". + * Enable Dependabot security updates + * @description Enables Dependabot security updates for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring Dependabot security updates](https://docs.github.com/articles/configuring-automated-security-fixes)". */ "repos/enable-automated-security-fixes": { parameters: { @@ -97527,8 +99122,8 @@ export interface operations { }; }; /** - * Disable automated security fixes - * @description Disables automated security fixes for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring automated security fixes](https://docs.github.com/articles/configuring-automated-security-fixes)". + * Disable Dependabot security updates + * @description Disables Dependabot security updates for a repository. The authenticated user must have admin access to the repository. For more information, see "[Configuring Dependabot security updates](https://docs.github.com/articles/configuring-automated-security-fixes)". */ "repos/disable-automated-security-fixes": { parameters: { @@ -99258,6 +100853,7 @@ export interface operations { state: components["schemas"]["code-scanning-alert-set-state"]; dismissed_reason?: components["schemas"]["code-scanning-alert-dismissed-reason"]; dismissed_comment?: components["schemas"]["code-scanning-alert-dismissed-comment"]; + create_request?: components["schemas"]["code-scanning-alert-create-request"]; }; }; }; @@ -99268,6 +100864,7 @@ export interface operations { "application/json": components["schemas"]["code-scanning-alert"]; }; }; + 400: components["responses"]["bad_request"]; 403: components["responses"]["code_scanning_forbidden_write"]; 404: components["responses"]["not_found"]; 503: components["responses"]["service_unavailable"]; @@ -99345,7 +100942,7 @@ export interface operations { * Commit an autofix for a code scanning alert * @description Commits an autofix for a code scanning alert. * - * If an autofix is commited as a result of this request, then this endpoint will return a 201 Created response. + * If an autofix is committed as a result of this request, then this endpoint will return a 201 Created response. * * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories. */ @@ -100361,7 +101958,7 @@ export interface operations { * @description Creates or updates a repository development environment secret with an encrypted value. Encrypt your secret using * [LibSodium](https://libsodium.gitbook.io/doc/bindings_for_other_languages). For more information, see "[Encrypting secrets for the REST API](https://docs.github.com/rest/guides/encrypting-secrets-for-the-rest-api)." * - * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. + * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. The associated user must be a repository admin. */ "codespaces/create-or-update-repo-secret": { parameters: { @@ -100398,7 +101995,7 @@ export interface operations { * Delete a repository secret * @description Deletes a development environment secret in a repository using the secret name. * - * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. + * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. The associated user must be a repository admin. */ "codespaces/delete-repo-secret": { parameters: { @@ -101625,6 +103222,7 @@ export interface operations { ecosystem?: components["parameters"]["dependabot-alert-comma-separated-ecosystems"]; package?: components["parameters"]["dependabot-alert-comma-separated-packages"]; manifest?: components["parameters"]["dependabot-alert-comma-separated-manifests"]; + epss_percentage?: components["parameters"]["dependabot-alert-comma-separated-epss"]; scope?: components["parameters"]["dependabot-alert-scope"]; sort?: components["parameters"]["dependabot-alert-sort"]; direction?: components["parameters"]["direction"]; @@ -102664,7 +104262,7 @@ export interface operations { * * The authenticated user must have admin or owner permissions to the repository to use this endpoint. * - * For more information about the app that is providing this custom deployment rule, see the [documentation for the `GET /apps/{app_slug}` endpoint](https://docs.github.com/rest/apps/apps#get-an-app). + * For more information about the app that is providing this custom deployment rule, see the [documentation for the `GET /apps/{app_slug}` endpoint](https://docs.github.com/rest/apps/apps#get-an-app), as well as the [guide to creating custom deployment protection rules](https://docs.github.com/actions/managing-workflow-runs-and-deployments/managing-deployments/creating-custom-deployment-protection-rules). * * OAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint. */ @@ -104657,6 +106255,8 @@ export interface operations { state?: "open" | "closed" | "all"; /** @description Can be the name of a user. Pass in `none` for issues with no assigned user, and `*` for issues assigned to any user. */ assignee?: string; + /** @description Can be the name of an issue type. If the string `*` is passed, issues with any type are accepted. If the string `none` is passed, issues without type are returned. */ + type?: string; /** @description The user that created the issue. */ creator?: string; /** @description A user that's mentioned in the issue. */ @@ -104734,6 +106334,11 @@ export interface operations { >[]; /** @description Logins for Users to assign to this issue. _NOTE: Only users with push access can set assignees for new issues. Assignees are silently dropped otherwise._ */ assignees?: string[]; + /** + * @description The name of the issue type to associate with this issue. + * @example Epic + */ + type?: string | null; }; }; }; @@ -105138,6 +106743,11 @@ export interface operations { >[]; /** @description Usernames to assign to this issue. Pass one or more user logins to _replace_ the set of assignees on this issue. Send an empty array (`[]`) to clear all assignees from the issue. Only users with push access can set assignees for new issues. Without push access to the repository, assignee changes are silently dropped. */ assignees?: string[]; + /** + * @description The name of the issue type to associate with this issue or use `null` to remove the current issue type. + * @example Epic + */ + type?: string | null; }; }; }; @@ -105718,7 +107328,7 @@ export interface operations { requestBody: { content: { "application/json": { - /** @description The sub-issue to remove */ + /** @description The id of the sub-issue to remove */ sub_issue_id: number; }; }; @@ -105801,7 +107411,7 @@ export interface operations { requestBody: { content: { "application/json": { - /** @description The sub-issue to add */ + /** @description The id of the sub-issue to add. The sub-issue must belong to the same repository owner as the parent issue */ sub_issue_id: number; /** @description Option that, when true, instructs the operation to replace the sub-issues current parent issue */ replace_parent?: boolean; @@ -106954,7 +108564,10 @@ export interface operations { }; /** * List repository projects - * @description Lists the projects in a repository. Returns a `404 Not Found` status if projects are disabled in the repository. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/list-for-repo": { parameters: { @@ -106988,7 +108601,10 @@ export interface operations { }; /** * Create a repository project - * @description Creates a repository project board. Returns a `410 Gone` status if projects are disabled in the repository or if the repository does not have existing classic projects. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/create-for-repo": { parameters: { @@ -109223,6 +110839,60 @@ export interface operations { 500: components["responses"]["internal_error"]; }; }; + /** + * Get repository ruleset history + * @description Get the history of a repository ruleset. + */ + "repos/get-repo-ruleset-history": { + parameters: { + query?: { + per_page?: components["parameters"]["per-page"]; + page?: components["parameters"]["page"]; + }; + path: { + owner: components["parameters"]["owner"]; + repo: components["parameters"]["repo"]; + /** @description The ID of the ruleset. */ + ruleset_id: number; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["ruleset-version"][]; + }; + }; + 404: components["responses"]["not_found"]; + 500: components["responses"]["internal_error"]; + }; + }; + /** + * Get repository ruleset version + * @description Get a version of a repository ruleset. + */ + "repos/get-repo-ruleset-version": { + parameters: { + path: { + owner: components["parameters"]["owner"]; + repo: components["parameters"]["repo"]; + /** @description The ID of the ruleset. */ + ruleset_id: number; + /** @description The ID of the version */ + version_id: number; + }; + }; + responses: { + /** @description Response */ + 200: { + content: { + "application/json": components["schemas"]["ruleset-version-with-state"]; + }; + }; + 404: components["responses"]["not_found"]; + 500: components["responses"]["internal_error"]; + }; + }; /** * List secret scanning alerts for a repository * @description Lists secret scanning alerts for an eligible repository, from newest to oldest. @@ -110602,19 +112272,10 @@ export interface operations { }; /** * Search issues and pull requests - * @description Find issues by state and keyword. This method returns up to 100 results [per page](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api). - * - * When searching for issues, you can get text match metadata for the issue **title**, issue **body**, and issue **comment body** fields when you pass the `text-match` media type. For more details about how to receive highlighted - * search results, see [Text match metadata](https://docs.github.com/rest/search/search#text-match-metadata). - * - * For example, if you want to find the oldest unresolved Python bugs on Windows. Your query might look something like this. - * - * `q=windows+label:bug+language:python+state:open&sort=created&order=asc` - * - * This query searches for the keyword `windows`, within any open issue that is labeled as `bug`. The search runs across repositories whose primary language is Python. The results are sorted by creation date in ascending order, which means the oldest issues appear first in the search results. - * - * > [!NOTE] - * > For requests made by GitHub Apps with a user access token, you can't retrieve a combination of issues and pull requests in a single query. Requests that don't include the `is:issue` or `is:pull-request` qualifier will receive an HTTP `422 Unprocessable Entity` response. To get results for both issues and pull requests, you must send separate queries for issues and pull requests. For more information about the `is` qualifier, see "[Searching only issues or pull requests](https://docs.github.com/github/searching-for-information-on-github/searching-issues-and-pull-requests#search-only-issues-or-pull-requests)." + * @deprecated + * @description > [!WARNING] + * > **Notice:** Search for issues and pull requests will be overridden by advanced search on September 4, 2025. + * > You can read more about this change on [the GitHub blog](https://github.blog/changelog/2025-03-06-github-issues-projects-api-support-for-issues-advanced-search-and-more/). */ "search/issues-and-pull-requests": { parameters: { @@ -110637,6 +112298,7 @@ export interface operations { order?: components["parameters"]["order"]; per_page?: components["parameters"]["per-page"]; page?: components["parameters"]["page"]; + advanced_search?: components["parameters"]["issues-advanced-search"]; }; }; responses: { @@ -111717,9 +113379,8 @@ export interface operations { * List team projects (Legacy) * @deprecated * @description > [!WARNING] - * > **Endpoint closing down notice:** This endpoint route is closing down and will be removed from the Teams API. We recommend migrating your existing code to use the new [`List team projects`](https://docs.github.com/rest/teams/teams#list-team-projects) endpoint. - * - * Lists the organization projects for a team. + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "teams/list-projects-legacy": { parameters: { @@ -111748,9 +113409,8 @@ export interface operations { * Check team permissions for a project (Legacy) * @deprecated * @description > [!WARNING] - * > **Endpoint closing down notice:** This endpoint route is closing down and will be removed from the Teams API. We recommend migrating your existing code to use the new [Check team permissions for a project](https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-project) endpoint. - * - * Checks whether a team has `read`, `write`, or `admin` permissions for an organization project. The response includes projects inherited from a parent team. + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "teams/check-permissions-for-project-legacy": { parameters: { @@ -111776,9 +113436,8 @@ export interface operations { * Add or update team project permissions (Legacy) * @deprecated * @description > [!WARNING] - * > **Endpoint closing down notice:** This endpoint route is closing down and will be removed from the Teams API. We recommend migrating your existing code to use the new [Add or update team project permissions](https://docs.github.com/rest/teams/teams#add-or-update-team-project-permissions) endpoint. - * - * Adds an organization project to a team. To add a project to a team or update the team's permission on a project, the authenticated user must have `admin` permissions for the project. The project and team must be part of the same organization. + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "teams/add-or-update-project-permissions-legacy": { parameters: { @@ -111820,9 +113479,8 @@ export interface operations { * Remove a project from a team (Legacy) * @deprecated * @description > [!WARNING] - * > **Endpoint closing down notice:** This endpoint route is closing down and will be removed from the Teams API. We recommend migrating your existing code to use the new [Remove a project from a team](https://docs.github.com/rest/teams/teams#remove-a-project-from-a-team) endpoint. - * - * Removes an organization project from a team. An organization owner or a team maintainer can remove any project from the team. To remove a project from a team as an organization member, the authenticated user must have `read` access to both the team and project, or `admin` access to the team or project. **Note:** This endpoint removes the project from the team, but does not delete it. + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "teams/remove-project-legacy": { parameters: { @@ -114117,7 +115775,10 @@ export interface operations { }; /** * Create a user project - * @description Creates a user project board. Returns a `410 Gone` status if the user does not have existing classic projects. If you do not have sufficient privileges to perform this action, a `401 Unauthorized` or `410 Gone` status is returned. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/create-for-authenticated-user": { requestBody: { @@ -114818,9 +116479,11 @@ export interface operations { * Get a user using their ID * @description Provides publicly available information about someone with a GitHub account. This method takes their durable user `ID` instead of their `login`, which can change over time. * - * The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be “public” which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/guides/getting-started-with-the-rest-api#authentication). + * If you are requesting information about an [Enterprise Managed User](https://docs.github.com/enterprise-cloud@latest/admin/managing-iam/understanding-iam-for-enterprises/about-enterprise-managed-users), or a GitHub App bot that is installed in an organization that uses Enterprise Managed Users, your requests must be authenticated as a user or GitHub App that has access to the organization to view that account's information. If you are not authorized, the request will return a `404 Not Found` status. + * + * The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be public which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/guides/getting-started-with-the-rest-api#authentication). * - * The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see "[Emails API](https://docs.github.com/rest/users/emails)". + * The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see [Emails API](https://docs.github.com/rest/users/emails). */ "users/get-by-id": { parameters: { @@ -114871,9 +116534,11 @@ export interface operations { * Get a user * @description Provides publicly available information about someone with a GitHub account. * - * The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be “public” which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/guides/getting-started-with-the-rest-api#authentication). + * If you are requesting information about an [Enterprise Managed User](https://docs.github.com/enterprise-cloud@latest/admin/managing-iam/understanding-iam-for-enterprises/about-enterprise-managed-users), or a GitHub App bot that is installed in an organization that uses Enterprise Managed Users, your requests must be authenticated as a user or GitHub App that has access to the organization to view that account's information. If you are not authorized, the request will return a `404 Not Found` status. * - * The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see "[Emails API](https://docs.github.com/rest/users/emails)". + * The `email` key in the following response is the publicly visible email address from your GitHub [profile page](https://github.com/settings/profile). When setting up your profile, you can select a primary email address to be public which provides an email entry for this endpoint. If you do not set a public email address for `email`, then it will have a value of `null`. You only see publicly visible email addresses when authenticated with GitHub. For more information, see [Authentication](https://docs.github.com/rest/guides/getting-started-with-the-rest-api#authentication). + * + * The Emails API enables you to list all of your email addresses, and toggle a primary email to be visible publicly. For more information, see [Emails API](https://docs.github.com/rest/users/emails). */ "users/get-by-username": { parameters: { @@ -114907,6 +116572,11 @@ export interface operations { per_page?: components["parameters"]["per-page"]; before?: components["parameters"]["pagination-before"]; after?: components["parameters"]["pagination-after"]; + /** + * @description Optional filter for fetching attestations with a given predicate type. + * This option accepts `provenance`, `sbom`, or freeform text for custom predicate types. + */ + predicate_type?: string; }; path: { username: components["parameters"]["username"]; @@ -114920,7 +116590,19 @@ export interface operations { content: { "application/json": { attestations?: { - bundle?: components["schemas"]["sigstore-bundle-0"]; + /** + * @description The attestation's Sigstore Bundle. + * Refer to the [Sigstore Bundle Specification](https://github.com/sigstore/protobuf-specs/blob/main/protos/sigstore_bundle.proto) for more information. + */ + bundle?: { + mediaType?: string; + verificationMaterial?: { + [key: string]: unknown; + }; + dsseEnvelope?: { + [key: string]: unknown; + }; + }; repository_id?: number; bundle_url?: string; }[]; @@ -115501,7 +117183,10 @@ export interface operations { }; /** * List user projects - * @description Lists projects for a user. + * @deprecated + * @description > [!WARNING] + * > **Closing down notice:** Projects (classic) is being deprecated in favor of the new Projects experience. + * > See the [changelog](https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/) for more information. */ "projects/list-for-user": { parameters: { @@ -115816,7 +117501,7 @@ export interface operations { /** @description Response */ 200: { content: { - "application/json": string; + "text/plain": string; }; }; }; diff --git a/node_modules/@octokit/types/dist-types/VERSION.d.ts b/node_modules/@octokit/types/dist-types/VERSION.d.ts index db3f511e40..9a15b2f036 100644 --- a/node_modules/@octokit/types/dist-types/VERSION.d.ts +++ b/node_modules/@octokit/types/dist-types/VERSION.d.ts @@ -1 +1 @@ -export declare const VERSION = "13.8.0"; +export declare const VERSION = "13.10.0"; diff --git a/node_modules/@octokit/types/dist-types/generated/Endpoints.d.ts b/node_modules/@octokit/types/dist-types/generated/Endpoints.d.ts index 8adbfec50f..0324c2fb0a 100644 --- a/node_modules/@octokit/types/dist-types/generated/Endpoints.d.ts +++ b/node_modules/@octokit/types/dist-types/generated/Endpoints.d.ts @@ -107,6 +107,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/orgs#delete-an-organization */ "DELETE /orgs/{org}": Operation<"/orgs/{org}", "delete">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#delete-a-github-hosted-runner-for-an-organization + */ + "DELETE /orgs/{org}/actions/hosted-runners/{hosted_runner_id}": Operation<"/orgs/{org}/actions/hosted-runners/{hosted_runner_id}", "delete">; /** * @see https://docs.github.com/rest/actions/permissions#disable-a-selected-repository-for-github-actions-in-an-organization */ @@ -203,6 +207,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/members#cancel-an-organization-invitation */ "DELETE /orgs/{org}/invitations/{invitation_id}": Operation<"/orgs/{org}/invitations/{invitation_id}", "delete">; + /** + * @see https://docs.github.com/rest/orgs/issue-types#delete-issue-type-for-an-organization + */ + "DELETE /orgs/{org}/issue-types/{issue_type_id}": Operation<"/orgs/{org}/issue-types/{issue_type_id}", "delete">; /** * @see https://docs.github.com/rest/orgs/members#remove-an-organization-member */ @@ -271,6 +279,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/security-managers#remove-a-security-manager-team */ "DELETE /orgs/{org}/security-managers/teams/{team_slug}": Operation<"/orgs/{org}/security-managers/teams/{team_slug}", "delete">; + /** + * @see https://docs.github.com/rest/orgs/network-configurations#delete-a-hosted-compute-network-configuration-from-an-organization + */ + "DELETE /orgs/{org}/settings/network-configurations/{network_configuration_id}": Operation<"/orgs/{org}/settings/network-configurations/{network_configuration_id}", "delete">; /** * @see https://docs.github.com/rest/teams/teams#delete-a-team */ @@ -368,7 +380,7 @@ export interface Endpoints { */ "DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}": Operation<"/repos/{owner}/{repo}/autolinks/{autolink_id}", "delete">; /** - * @see https://docs.github.com/rest/repos/repos#disable-automated-security-fixes + * @see https://docs.github.com/rest/repos/repos#disable-dependabot-security-updates */ "DELETE /repos/{owner}/{repo}/automated-security-fixes": Operation<"/repos/{owner}/{repo}/automated-security-fixes", "delete">; /** @@ -940,6 +952,34 @@ export interface Endpoints { * @see https://docs.github.com/rest/actions/cache#list-repositories-with-github-actions-cache-usage-for-an-organization */ "GET /orgs/{org}/actions/cache/usage-by-repository": Operation<"/orgs/{org}/actions/cache/usage-by-repository", "get">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#list-github-hosted-runners-for-an-organization + */ + "GET /orgs/{org}/actions/hosted-runners": Operation<"/orgs/{org}/actions/hosted-runners", "get">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#get-github-owned-images-for-github-hosted-runners-in-an-organization + */ + "GET /orgs/{org}/actions/hosted-runners/images/github-owned": Operation<"/orgs/{org}/actions/hosted-runners/images/github-owned", "get">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#get-partner-images-for-github-hosted-runners-in-an-organization + */ + "GET /orgs/{org}/actions/hosted-runners/images/partner": Operation<"/orgs/{org}/actions/hosted-runners/images/partner", "get">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#get-limits-on-github-hosted-runners-for-an-organization + */ + "GET /orgs/{org}/actions/hosted-runners/limits": Operation<"/orgs/{org}/actions/hosted-runners/limits", "get">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#get-github-hosted-runners-machine-specs-for-an-organization + */ + "GET /orgs/{org}/actions/hosted-runners/machine-sizes": Operation<"/orgs/{org}/actions/hosted-runners/machine-sizes", "get">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#get-platforms-for-github-hosted-runners-in-an-organization + */ + "GET /orgs/{org}/actions/hosted-runners/platforms": Operation<"/orgs/{org}/actions/hosted-runners/platforms", "get">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#get-a-github-hosted-runner-for-an-organization + */ + "GET /orgs/{org}/actions/hosted-runners/{hosted_runner_id}": Operation<"/orgs/{org}/actions/hosted-runners/{hosted_runner_id}", "get">; /** * @see https://docs.github.com/rest/actions/oidc#get-the-customization-template-for-an-oidc-subject-claim-for-an-organization */ @@ -968,6 +1008,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/actions/self-hosted-runner-groups#get-a-self-hosted-runner-group-for-an-organization */ "GET /orgs/{org}/actions/runner-groups/{runner_group_id}": Operation<"/orgs/{org}/actions/runner-groups/{runner_group_id}", "get">; + /** + * @see https://docs.github.com/rest/actions/self-hosted-runner-groups#list-github-hosted-runners-in-a-group-for-an-organization + */ + "GET /orgs/{org}/actions/runner-groups/{runner_group_id}/hosted-runners": Operation<"/orgs/{org}/actions/runner-groups/{runner_group_id}/hosted-runners", "get">; /** * @see https://docs.github.com/rest/actions/self-hosted-runner-groups#list-repository-access-to-a-self-hosted-runner-group-in-an-organization */ @@ -1196,6 +1240,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/members#list-organization-invitation-teams */ "GET /orgs/{org}/invitations/{invitation_id}/teams": Operation<"/orgs/{org}/invitations/{invitation_id}/teams", "get">; + /** + * @see https://docs.github.com/rest/orgs/issue-types#list-issue-types-for-an-organization + */ + "GET /orgs/{org}/issue-types": Operation<"/orgs/{org}/issue-types", "get">; /** * @see https://docs.github.com/rest/issues/issues#list-organization-issues-assigned-to-the-authenticated-user */ @@ -1348,6 +1396,14 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/rules#get-an-organization-repository-ruleset */ "GET /orgs/{org}/rulesets/{ruleset_id}": Operation<"/orgs/{org}/rulesets/{ruleset_id}", "get">; + /** + * @see https://docs.github.com/rest/orgs/rules#get-organization-ruleset-history + */ + "GET /orgs/{org}/rulesets/{ruleset_id}/history": Operation<"/orgs/{org}/rulesets/{ruleset_id}/history", "get">; + /** + * @see https://docs.github.com/rest/orgs/rules#get-organization-ruleset-version + */ + "GET /orgs/{org}/rulesets/{ruleset_id}/history/{version_id}": Operation<"/orgs/{org}/rulesets/{ruleset_id}/history/{version_id}", "get">; /** * @see https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-an-organization */ @@ -1372,6 +1428,18 @@ export interface Endpoints { * @see https://docs.github.com/rest/billing/billing#get-shared-storage-billing-for-an-organization */ "GET /orgs/{org}/settings/billing/shared-storage": Operation<"/orgs/{org}/settings/billing/shared-storage", "get">; + /** + * @see https://docs.github.com/rest/orgs/network-configurations#list-hosted-compute-network-configurations-for-an-organization + */ + "GET /orgs/{org}/settings/network-configurations": Operation<"/orgs/{org}/settings/network-configurations", "get">; + /** + * @see https://docs.github.com/rest/orgs/network-configurations#get-a-hosted-compute-network-configuration-for-an-organization + */ + "GET /orgs/{org}/settings/network-configurations/{network_configuration_id}": Operation<"/orgs/{org}/settings/network-configurations/{network_configuration_id}", "get">; + /** + * @see https://docs.github.com/rest/orgs/network-configurations#get-a-hosted-compute-network-settings-resource-for-an-organization + */ + "GET /orgs/{org}/settings/network-settings/{network_settings_id}": Operation<"/orgs/{org}/settings/network-settings/{network_settings_id}", "get">; /** * @see https://docs.github.com/rest/copilot/copilot-metrics#get-copilot-metrics-for-a-team */ @@ -1657,7 +1725,7 @@ export interface Endpoints { */ "GET /repos/{owner}/{repo}/autolinks/{autolink_id}": Operation<"/repos/{owner}/{repo}/autolinks/{autolink_id}", "get">; /** - * @see https://docs.github.com/rest/repos/repos#check-if-automated-security-fixes-are-enabled-for-a-repository + * @see https://docs.github.com/rest/repos/repos#check-if-dependabot-security-updates-are-enabled-for-a-repository */ "GET /repos/{owner}/{repo}/automated-security-fixes": Operation<"/repos/{owner}/{repo}/automated-security-fixes", "get">; /** @@ -2305,6 +2373,14 @@ export interface Endpoints { * @see https://docs.github.com/rest/repos/rules#get-a-repository-ruleset */ "GET /repos/{owner}/{repo}/rulesets/{ruleset_id}": Operation<"/repos/{owner}/{repo}/rulesets/{ruleset_id}", "get">; + /** + * @see https://docs.github.com/rest/repos/rules#get-repository-ruleset-history + */ + "GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history": Operation<"/repos/{owner}/{repo}/rulesets/{ruleset_id}/history", "get">; + /** + * @see https://docs.github.com/rest/repos/rules#get-repository-ruleset-version + */ + "GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}": Operation<"/repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}", "get">; /** * @see https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-a-repository */ @@ -2853,6 +2929,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/orgs#update-an-organization */ "PATCH /orgs/{org}": Operation<"/orgs/{org}", "patch">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#update-a-github-hosted-runner-for-an-organization + */ + "PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id}": Operation<"/orgs/{org}/actions/hosted-runners/{hosted_runner_id}", "patch">; /** * @see https://docs.github.com/rest/actions/self-hosted-runner-groups#update-a-self-hosted-runner-group-for-an-organization */ @@ -2885,6 +2965,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/custom-properties#create-or-update-custom-property-values-for-organization-repositories */ "PATCH /orgs/{org}/properties/values": Operation<"/orgs/{org}/properties/values", "patch">; + /** + * @see https://docs.github.com/rest/orgs/network-configurations#update-a-hosted-compute-network-configuration-for-an-organization + */ + "PATCH /orgs/{org}/settings/network-configurations/{network_configuration_id}": Operation<"/orgs/{org}/settings/network-configurations/{network_configuration_id}", "patch">; /** * @see https://docs.github.com/rest/teams/teams#update-a-team */ @@ -3109,6 +3193,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/markdown/markdown#render-a-markdown-document-in-raw-mode */ "POST /markdown/raw": Operation<"/markdown/raw", "post">; + /** + * @see https://docs.github.com/rest/actions/hosted-runners#create-a-github-hosted-runner-for-an-organization + */ + "POST /orgs/{org}/actions/hosted-runners": Operation<"/orgs/{org}/actions/hosted-runners", "post">; /** * @see https://docs.github.com/rest/actions/self-hosted-runner-groups#create-a-self-hosted-runner-group-for-an-organization */ @@ -3169,6 +3257,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/members#create-an-organization-invitation */ "POST /orgs/{org}/invitations": Operation<"/orgs/{org}/invitations", "post">; + /** + * @see https://docs.github.com/rest/orgs/issue-types#create-issue-type-for-an-organization + */ + "POST /orgs/{org}/issue-types": Operation<"/orgs/{org}/issue-types", "post">; /** * @see https://docs.github.com/rest/codespaces/organizations#stop-a-codespace-for-an-organization-user */ @@ -3217,6 +3309,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/orgs/rules#create-an-organization-repository-ruleset */ "POST /orgs/{org}/rulesets": Operation<"/orgs/{org}/rulesets", "post">; + /** + * @see https://docs.github.com/rest/orgs/network-configurations#create-a-hosted-compute-network-configuration-for-an-organization + */ + "POST /orgs/{org}/settings/network-configurations": Operation<"/orgs/{org}/settings/network-configurations", "post">; /** * @see https://docs.github.com/rest/teams/teams#create-a-team */ @@ -3825,6 +3921,10 @@ export interface Endpoints { * @see https://docs.github.com/rest/interactions/orgs#set-interaction-restrictions-for-an-organization */ "PUT /orgs/{org}/interaction-limits": Operation<"/orgs/{org}/interaction-limits", "put">; + /** + * @see https://docs.github.com/rest/orgs/issue-types#update-issue-type-for-an-organization + */ + "PUT /orgs/{org}/issue-types/{issue_type_id}": Operation<"/orgs/{org}/issue-types/{issue_type_id}", "put">; /** * @see https://docs.github.com/rest/orgs/members#set-organization-membership-for-a-user */ @@ -3910,7 +4010,7 @@ export interface Endpoints { */ "PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable": Operation<"/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable", "put">; /** - * @see https://docs.github.com/rest/repos/repos#enable-automated-security-fixes + * @see https://docs.github.com/rest/repos/repos#enable-dependabot-security-updates */ "PUT /repos/{owner}/{repo}/automated-security-fixes": Operation<"/repos/{owner}/{repo}/automated-security-fixes", "put">; /** diff --git a/node_modules/@octokit/types/package.json b/node_modules/@octokit/types/package.json index cfc5e54178..323f8c9c04 100644 --- a/node_modules/@octokit/types/package.json +++ b/node_modules/@octokit/types/package.json @@ -1,13 +1,13 @@ { "name": "@octokit/types", - "version": "13.8.0", + "version": "13.10.0", "publishConfig": { "access": "public", "provenance": true }, "description": "Shared TypeScript definitions for Octokit projects", "dependencies": { - "@octokit/openapi-types": "^23.0.1" + "@octokit/openapi-types": "^24.2.0" }, "repository": "github:octokit/types.ts", "keywords": [ @@ -26,13 +26,13 @@ "npm-run-all2": "^7.0.0", "prettier": "^3.0.0", "semantic-release": "^24.0.0", - "semantic-release-plugin-update-version-in-files": "^1.0.0", + "semantic-release-plugin-update-version-in-files": "^2.0.0", "sort-keys": "^5.0.0", "typedoc": "^0.26.0", "typescript": "^5.0.0" }, "octokit": { - "openapi-version": "17.1.1" + "openapi-version": "18.2.0" }, "files": [ "dist-types/**" diff --git a/node_modules/@sinonjs/fake-timers/package.json b/node_modules/@sinonjs/fake-timers/package.json index 32106372a7..e59405eb9f 100644 --- a/node_modules/@sinonjs/fake-timers/package.json +++ b/node_modules/@sinonjs/fake-timers/package.json @@ -1,7 +1,7 @@ { "name": "@sinonjs/fake-timers", "description": "Fake JavaScript timers", - "version": "13.0.2", + "version": "13.0.5", "homepage": "https://github.com/sinonjs/fake-timers", "author": "Christian Johansen", "repository": { diff --git a/node_modules/@sinonjs/fake-timers/src/fake-timers-src.js b/node_modules/@sinonjs/fake-timers/src/fake-timers-src.js index 308daf1b0d..b9a8a8d043 100644 --- a/node_modules/@sinonjs/fake-timers/src/fake-timers-src.js +++ b/node_modules/@sinonjs/fake-timers/src/fake-timers-src.js @@ -447,6 +447,13 @@ function withGlobal(_global) { } else { super(...arguments); } + + // ensures identity checks using the constructor prop still works + // this should have no other functional effect + Object.defineProperty(this, "constructor", { + value: NativeDate, + enumerable: false, + }); } static [Symbol.hasInstance](instance) { diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.d.ts.map index f351c49e28..208ebc312f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"consistent-type-exports.d.ts","sourceRoot":"","sources":["../../src/rules/consistent-type-exports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AAgBnE,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,sCAAsC,EAAE,OAAO,CAAC;KACjD;CACF,CAAC;AAgBF,MAAM,MAAM,UAAU,GAClB,yBAAyB,GACzB,oBAAoB,GACpB,eAAe,CAAC;;AAEpB,wBAgSG"} \ No newline at end of file +{"version":3,"file":"consistent-type-exports.d.ts","sourceRoot":"","sources":["../../src/rules/consistent-type-exports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AAgBnE,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,sCAAsC,EAAE,OAAO,CAAC;KACjD;CACF,CAAC;AAgBF,MAAM,MAAM,UAAU,GAClB,yBAAyB,GACzB,oBAAoB,GACpB,eAAe,CAAC;;AAEpB,wBA8RG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js index e06f26ad39..cfb7c0e16c 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js @@ -158,14 +158,12 @@ exports.default = (0, util_1.createRule)({ // Cache the first encountered exports for the package. We will need to come // back to these later when fixing the problems. if (node.exportKind === 'type') { - if (sourceExports.typeOnlyNamedExport == null) { - // The export is a type export - sourceExports.typeOnlyNamedExport = node; - } + // The export is a type export + sourceExports.typeOnlyNamedExport ??= node; } - else if (sourceExports.valueOnlyNamedExport == null) { + else { // The export is a value export - sourceExports.valueOnlyNamedExport = node; + sourceExports.valueOnlyNamedExport ??= node; } // Next for the current export, we will separate type/value specifiers. const typeBasedSpecifiers = []; diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.d.ts.map index db812de866..ead394db49 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"no-empty-interface.d.ts","sourceRoot":"","sources":["../../src/rules/no-empty-interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAOzD,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B;CACF,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,kBAAkB,CAAC;;AAExD,wBAwGG"} \ No newline at end of file +{"version":3,"file":"no-empty-interface.d.ts","sourceRoot":"","sources":["../../src/rules/no-empty-interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAOzD,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B;CACF,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,kBAAkB,CAAC;;AAExD,wBAmHG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js index b52d9d4358..1d31fa5a46 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js @@ -7,7 +7,18 @@ exports.default = (0, util_1.createRule)({ name: 'no-empty-interface', meta: { type: 'suggestion', - deprecated: true, + deprecated: { + deprecatedSince: '8.0.0', + replacedBy: [ + { + rule: { + name: '@typescript-eslint/no-empty-object-type', + url: 'https://typescript-eslint.io/rules/no-empty-object-type', + }, + }, + ], + url: 'https://github.com/typescript-eslint/typescript-eslint/pull/8977', + }, docs: { description: 'Disallow the declaration of empty interfaces', }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.d.ts.map index 02b3bfca1e..d501d2e74f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"no-loss-of-precision.d.ts","sourceRoot":"","sources":["../../src/rules/no-loss-of-precision.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,wBAAwB,EACzB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,QAAA,MAAM,QAAQ,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAElD,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,wBAAwB,CAAC,WAAW,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC;AAC7E,MAAM,MAAM,UAAU,GAAG,2BAA2B,CAClD,WAAW,CAAC,OAAO,QAAQ,CAAC,CAC7B,CAAC;;AAEF,wBAkBG"} \ No newline at end of file +{"version":3,"file":"no-loss-of-precision.d.ts","sourceRoot":"","sources":["../../src/rules/no-loss-of-precision.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,wBAAwB,EACzB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,QAAA,MAAM,QAAQ,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAElD,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,wBAAwB,CAAC,WAAW,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC;AAC7E,MAAM,MAAM,UAAU,GAAG,2BAA2B,CAClD,WAAW,CAAC,OAAO,QAAQ,CAAC,CAC7B,CAAC;;AAEF,wBA6BG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js index 31470d1e0d..0c2b6a7b94 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js @@ -8,7 +8,18 @@ exports.default = (0, util_1.createRule)({ meta: { type: 'problem', // defaultOptions, -- base rule does not use defaultOptions - deprecated: true, + deprecated: { + deprecatedSince: '8.0.0', + replacedBy: [ + { + rule: { + name: 'no-loss-of-precision', + url: 'https://eslint.org/docs/latest/rules/no-loss-of-precision', + }, + }, + ], + url: 'https://github.com/typescript-eslint/typescript-eslint/pull/8832', + }, docs: { description: 'Disallow literal numbers that lose precision', extendsBaseRule: true, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.d.ts.map index b637fbe6c8..9e313de485 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"no-type-alias.d.ts","sourceRoot":"","sources":["../../src/rules/no-type-alias.ts"],"names":[],"mappings":"AAMA,KAAK,MAAM,GACP,QAAQ,GACR,kBAAkB,GAClB,WAAW,GACX,6BAA6B,GAC7B,OAAO,CAAC;AAEZ,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QACpC,qBAAqB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAC3C,iBAAiB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QACvC,aAAa,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QACnC,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B;CACF,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,aAAa,CAAC;;AAU9D,wBAwTG"} \ No newline at end of file +{"version":3,"file":"no-type-alias.d.ts","sourceRoot":"","sources":["../../src/rules/no-type-alias.ts"],"names":[],"mappings":"AAMA,KAAK,MAAM,GACP,QAAQ,GACR,kBAAkB,GAClB,WAAW,GACX,6BAA6B,GAC7B,OAAO,CAAC;AAEZ,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QACpC,qBAAqB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAC3C,iBAAiB,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QACvC,aAAa,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QACnC,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B;CACF,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,aAAa,CAAC;;AAU9D,wBAmUG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js index d41314b7ea..dd1cdbe757 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js @@ -6,7 +6,18 @@ exports.default = (0, util_1.createRule)({ name: 'no-type-alias', meta: { type: 'suggestion', - deprecated: true, + deprecated: { + deprecatedSince: '6.0.0', + replacedBy: [ + { + rule: { + name: '@typescript-eslint/consistent-type-definitions', + url: 'https://typescript-eslint.io/rules/consistent-type-definitions', + }, + }, + ], + url: 'https://github.com/typescript-eslint/typescript-eslint/pull/6229', + }, docs: { description: 'Disallow type aliases', // too opinionated to be recommended diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.d.ts.map index de9dbbdd1b..383a6554b0 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"no-unsafe-function-type.d.ts","sourceRoot":"","sources":["../../src/rules/no-unsafe-function-type.ts"],"names":[],"mappings":";AAMA,wBA4CG"} \ No newline at end of file +{"version":3,"file":"no-unsafe-function-type.d.ts","sourceRoot":"","sources":["../../src/rules/no-unsafe-function-type.ts"],"names":[],"mappings":";AAMA,wBA2CG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.js index 02504f801c..c749232ce3 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.js @@ -10,7 +10,6 @@ exports.default = (0, util_1.createRule)({ description: 'Disallow using the unsafe built-in Function type', recommended: 'recommended', }, - fixable: 'code', messages: { bannedFunctionType: [ 'The `Function` type accepts any function-like value.', diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.d.ts.map index d03764d5f9..22741674ca 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"no-unsafe-return.d.ts","sourceRoot":"","sources":["../../src/rules/no-unsafe-return.ts"],"names":[],"mappings":";AAqBA,wBAwMG"} \ No newline at end of file +{"version":3,"file":"no-unsafe-return.d.ts","sourceRoot":"","sources":["../../src/rules/no-unsafe-return.ts"],"names":[],"mappings":";AAqBA,wBAsMG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js index 4e1f46d1a0..e466b94591 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js @@ -81,9 +81,7 @@ exports.default = (0, util_1.createRule)({ ts.isArrowFunction(functionTSNode) ? (0, util_1.getContextualType)(checker, functionTSNode) : services.getTypeAtLocation(functionNode); - if (!functionType) { - functionType = services.getTypeAtLocation(functionNode); - } + functionType ??= services.getTypeAtLocation(functionNode); const callSignatures = tsutils.getCallSignaturesOfType(functionType); // If there is an explicit type annotation *and* that type matches the actual // function return type, we shouldn't complain (it's intentional, even if unsafe) diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.d.ts.map index 5b1bdbf0fd..39ba18cab7 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"no-var-requires.d.ts","sourceRoot":"","sources":["../../src/rules/no-var-requires.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB;CACF,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC;;AAErC,wBAmFG"} \ No newline at end of file +{"version":3,"file":"no-var-requires.d.ts","sourceRoot":"","sources":["../../src/rules/no-var-requires.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB;CACF,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,WAAW,CAAC;;AAErC,wBA8FG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js index 5fe2d201f1..a6d7935970 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js @@ -6,7 +6,18 @@ exports.default = (0, util_1.createRule)({ name: 'no-var-requires', meta: { type: 'problem', - deprecated: true, + deprecated: { + deprecatedSince: '8.0.0', + replacedBy: [ + { + rule: { + name: '@typescript-eslint/no-require-imports', + url: 'https://typescript-eslint.io/rules/no-require-imports', + }, + }, + ], + url: 'https://github.com/typescript-eslint/typescript-eslint/pull/8334', + }, docs: { description: 'Disallow `require` statements except in import statements', }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.d.ts b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.d.ts index 1a37548379..48d3b162c0 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.d.ts +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.d.ts @@ -14,7 +14,7 @@ export type Options = [ ignoreTernaryTests?: boolean; } ]; -export type MessageIds = 'noStrictNullCheck' | 'preferNullishOverOr' | 'preferNullishOverTernary' | 'suggestNullish'; +export type MessageIds = 'noStrictNullCheck' | 'preferNullishOverAssignment' | 'preferNullishOverOr' | 'preferNullishOverTernary' | 'suggestNullish'; declare const _default: TSESLint.RuleModule; export default _default; //# sourceMappingURL=prefer-nullish-coalescing.d.ts.map \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.d.ts.map index 56f79517c0..7634efbe3e 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"prefer-nullish-coalescing.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-nullish-coalescing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AA8BnE,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,sDAAsD,CAAC,EAAE,OAAO,CAAC;QACjE,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,6BAA6B,CAAC,EAAE,OAAO,CAAC;QACxC,gBAAgB,CAAC,EACb;YACE,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,MAAM,CAAC,EAAE,OAAO,CAAC;SAClB,GACD,IAAI,CAAC;QACT,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B;CACF,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB,mBAAmB,GACnB,qBAAqB,GACrB,0BAA0B,GAC1B,gBAAgB,CAAC;;AAErB,wBAsfG"} \ No newline at end of file +{"version":3,"file":"prefer-nullish-coalescing.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-nullish-coalescing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AAqCnE,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,sDAAsD,CAAC,EAAE,OAAO,CAAC;QACjE,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,6BAA6B,CAAC,EAAE,OAAO,CAAC;QACxC,gBAAgB,CAAC,EACb;YACE,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,MAAM,CAAC,EAAE,OAAO,CAAC;SAClB,GACD,IAAI,CAAC;QACT,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B;CACF,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB,mBAAmB,GACnB,6BAA6B,GAC7B,qBAAqB,GACrB,0BAA0B,GAC1B,gBAAgB,CAAC;;AAErB,wBAujBG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js index 487f1fabcc..2e73aed44f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js @@ -37,11 +37,14 @@ const utils_1 = require("@typescript-eslint/utils"); const tsutils = __importStar(require("ts-api-utils")); const ts = __importStar(require("typescript")); const util_1 = require("../util"); -const isIdentifierOrMemberOrChainExpression = (0, util_1.isNodeOfTypes)([ +const isMemberAccessLike = (0, util_1.isNodeOfTypes)([ utils_1.AST_NODE_TYPES.ChainExpression, utils_1.AST_NODE_TYPES.Identifier, utils_1.AST_NODE_TYPES.MemberExpression, ]); +const isNullLiteralOrUndefinedIdentifier = (node) => (0, util_1.isNullLiteral)(node) || (0, util_1.isUndefinedIdentifier)(node); +const isNodeNullishComparison = (node) => isNullLiteralOrUndefinedIdentifier(node.left) && + isNullLiteralOrUndefinedIdentifier(node.right); exports.default = (0, util_1.createRule)({ name: 'prefer-nullish-coalescing', meta: { @@ -54,6 +57,7 @@ exports.default = (0, util_1.createRule)({ hasSuggestions: true, messages: { noStrictNullCheck: 'This rule requires the `strictNullChecks` compiler option to be turned on to function correctly.', + preferNullishOverAssignment: 'Prefer using nullish coalescing operator (`??{{ equals }}`) instead of an assignment expression, as it is simpler to read.', preferNullishOverOr: 'Prefer using nullish coalescing operator (`??{{ equals }}`) instead of a logical {{ description }} (`||{{ equals }}`), as it is a safer operator.', preferNullishOverTernary: 'Prefer using nullish coalescing operator (`??{{ equals }}`) instead of a ternary expression, as it is simpler to read.', suggestNullish: 'Fix to nullish coalescing operator (`??{{ equals }}`).', @@ -258,6 +262,81 @@ exports.default = (0, util_1.createRule)({ ], }); } + function getNullishCoalescingParams(node, nonNullishNode, nodesInsideTestExpression, operator) { + let nullishCoalescingLeftNode; + let hasTruthinessCheck = false; + let hasNullCheckWithoutTruthinessCheck = false; + let hasUndefinedCheckWithoutTruthinessCheck = false; + if (!nodesInsideTestExpression.length) { + hasTruthinessCheck = true; + nullishCoalescingLeftNode = + node.test.type === utils_1.AST_NODE_TYPES.UnaryExpression + ? node.test.argument + : node.test; + if (!areNodesSimilarMemberAccess(nullishCoalescingLeftNode, nonNullishNode)) { + return { isFixable: false }; + } + } + else { + // we check that the test only contains null, undefined and the identifier + for (const testNode of nodesInsideTestExpression) { + if ((0, util_1.isNullLiteral)(testNode)) { + hasNullCheckWithoutTruthinessCheck = true; + } + else if ((0, util_1.isUndefinedIdentifier)(testNode)) { + hasUndefinedCheckWithoutTruthinessCheck = true; + } + else if (areNodesSimilarMemberAccess(testNode, nonNullishNode)) { + // Only consider the first expression in a multi-part nullish check, + // as subsequent expressions might not require all the optional chaining operators. + // For example: a?.b?.c !== undefined && a.b.c !== null ? a.b.c : 'foo'; + // This works because `node.test` is always evaluated first in the loop + // and has the same or more necessary optional chaining operators + // than `node.alternate` or `node.consequent`. + nullishCoalescingLeftNode ??= testNode; + } + else { + return { isFixable: false }; + } + } + } + if (!nullishCoalescingLeftNode) { + return { isFixable: false }; + } + const isFixable = (() => { + if (hasTruthinessCheck) { + return isTruthinessCheckEligibleForPreferNullish({ + node, + testNode: nullishCoalescingLeftNode, + }); + } + // it is fixable if we check for both null and undefined, or not if neither + if (hasUndefinedCheckWithoutTruthinessCheck === + hasNullCheckWithoutTruthinessCheck) { + return hasUndefinedCheckWithoutTruthinessCheck; + } + // it is fixable if we loosely check for either null or undefined + if (['==', '!='].includes(operator)) { + return true; + } + const type = parserServices.getTypeAtLocation(nullishCoalescingLeftNode); + const flags = (0, util_1.getTypeFlags)(type); + if (flags & (ts.TypeFlags.Any | ts.TypeFlags.Unknown)) { + return false; + } + const hasNullType = (flags & ts.TypeFlags.Null) !== 0; + // it is fixable if we check for undefined and the type is not nullable + if (hasUndefinedCheckWithoutTruthinessCheck && !hasNullType) { + return true; + } + const hasUndefinedType = (flags & ts.TypeFlags.Undefined) !== 0; + // it is fixable if we check for null and the type can't be undefined + return hasNullCheckWithoutTruthinessCheck && !hasUndefinedType; + })(); + return isFixable + ? { isFixable: true, nullishCoalescingLeftNode } + : { isFixable: false }; + } return { 'AssignmentExpression[operator = "||="]'(node) { checkAndFixWithPreferNullishOverOr(node, 'assignment', '='); @@ -266,134 +345,12 @@ exports.default = (0, util_1.createRule)({ if (ignoreTernaryTests) { return; } - let operator; - let nodesInsideTestExpression = []; - if (node.test.type === utils_1.AST_NODE_TYPES.BinaryExpression) { - nodesInsideTestExpression = [node.test.left, node.test.right]; - if (node.test.operator === '==' || - node.test.operator === '!=' || - node.test.operator === '===' || - node.test.operator === '!==') { - operator = node.test.operator; - } - } - else if (node.test.type === utils_1.AST_NODE_TYPES.LogicalExpression && - node.test.left.type === utils_1.AST_NODE_TYPES.BinaryExpression && - node.test.right.type === utils_1.AST_NODE_TYPES.BinaryExpression) { - nodesInsideTestExpression = [ - node.test.left.left, - node.test.left.right, - node.test.right.left, - node.test.right.right, - ]; - if (['||', '||='].includes(node.test.operator)) { - if (node.test.left.operator === '===' && - node.test.right.operator === '===') { - operator = '==='; - } - else if (((node.test.left.operator === '===' || - node.test.right.operator === '===') && - (node.test.left.operator === '==' || - node.test.right.operator === '==')) || - (node.test.left.operator === '==' && - node.test.right.operator === '==')) { - operator = '=='; - } - } - else if (node.test.operator === '&&') { - if (node.test.left.operator === '!==' && - node.test.right.operator === '!==') { - operator = '!=='; - } - else if (((node.test.left.operator === '!==' || - node.test.right.operator === '!==') && - (node.test.left.operator === '!=' || - node.test.right.operator === '!=')) || - (node.test.left.operator === '!=' && - node.test.right.operator === '!=')) { - operator = '!='; - } - } - } - let nullishCoalescingLeftNode; - let hasTruthinessCheck = false; - let hasNullCheckWithoutTruthinessCheck = false; - let hasUndefinedCheckWithoutTruthinessCheck = false; - if (!operator) { - let testNode; - hasTruthinessCheck = true; - if (isIdentifierOrMemberOrChainExpression(node.test)) { - testNode = node.test; - } - else if (node.test.type === utils_1.AST_NODE_TYPES.UnaryExpression && - isIdentifierOrMemberOrChainExpression(node.test.argument) && - node.test.operator === '!') { - testNode = node.test.argument; - operator = '!'; - } - if (testNode && - areNodesSimilarMemberAccess(testNode, getBranchNodes(node, operator).nonNullishBranch)) { - nullishCoalescingLeftNode = testNode; - } - } - else { - // we check that the test only contains null, undefined and the identifier - for (const testNode of nodesInsideTestExpression) { - if ((0, util_1.isNullLiteral)(testNode)) { - hasNullCheckWithoutTruthinessCheck = true; - } - else if ((0, util_1.isUndefinedIdentifier)(testNode)) { - hasUndefinedCheckWithoutTruthinessCheck = true; - } - else if (areNodesSimilarMemberAccess(testNode, getBranchNodes(node, operator).nonNullishBranch)) { - // Only consider the first expression in a multi-part nullish check, - // as subsequent expressions might not require all the optional chaining operators. - // For example: a?.b?.c !== undefined && a.b.c !== null ? a.b.c : 'foo'; - // This works because `node.test` is always evaluated first in the loop - // and has the same or more necessary optional chaining operators - // than `node.alternate` or `node.consequent`. - nullishCoalescingLeftNode ??= testNode; - } - else { - return; - } - } - } - if (!nullishCoalescingLeftNode) { + const { nodesInsideTestExpression, operator } = getOperatorAndNodesInsideTestExpression(node); + if (operator == null) { return; } - const isFixableWithPreferNullishOverTernary = (() => { - // x ? x : y and !x ? y : x patterns - if (hasTruthinessCheck) { - return isTruthinessCheckEligibleForPreferNullish({ - node, - testNode: nullishCoalescingLeftNode, - }); - } - // it is fixable if we check for both null and undefined, or not if neither - if (hasUndefinedCheckWithoutTruthinessCheck === - hasNullCheckWithoutTruthinessCheck) { - return hasUndefinedCheckWithoutTruthinessCheck; - } - // it is fixable if we loosely check for either null or undefined - if (operator === '==' || operator === '!=') { - return true; - } - const type = parserServices.getTypeAtLocation(nullishCoalescingLeftNode); - const flags = (0, util_1.getTypeFlags)(type); - if (flags & (ts.TypeFlags.Any | ts.TypeFlags.Unknown)) { - return false; - } - const hasNullType = (flags & ts.TypeFlags.Null) !== 0; - // it is fixable if we check for undefined and the type is not nullable - if (hasUndefinedCheckWithoutTruthinessCheck && !hasNullType) { - return true; - } - const hasUndefinedType = (flags & ts.TypeFlags.Undefined) !== 0; - // it is fixable if we check for null and the type can't be undefined - return hasNullCheckWithoutTruthinessCheck && !hasUndefinedType; - })(); - if (isFixableWithPreferNullishOverTernary) { + const nullishCoalescingParams = getNullishCoalescingParams(node, getBranchNodes(node, operator).nonNullishBranch, nodesInsideTestExpression, operator); + if (nullishCoalescingParams.isFixable) { context.report({ node, messageId: 'preferNullishOverTernary', @@ -404,7 +361,63 @@ exports.default = (0, util_1.createRule)({ messageId: 'suggestNullish', data: { equals: '' }, fix(fixer) { - return fixer.replaceText(node, `${(0, util_1.getTextWithParentheses)(context.sourceCode, nullishCoalescingLeftNode)} ?? ${(0, util_1.getTextWithParentheses)(context.sourceCode, getBranchNodes(node, operator).nullishBranch)}`); + return fixer.replaceText(node, `${(0, util_1.getTextWithParentheses)(context.sourceCode, nullishCoalescingParams.nullishCoalescingLeftNode)} ?? ${(0, util_1.getTextWithParentheses)(context.sourceCode, getBranchNodes(node, operator).nullishBranch)}`); + }, + }, + ], + }); + } + }, + IfStatement(node) { + if (node.alternate != null) { + return; + } + let assignmentExpression; + if (node.consequent.type === utils_1.AST_NODE_TYPES.BlockStatement && + node.consequent.body.length === 1 && + node.consequent.body[0].type === utils_1.AST_NODE_TYPES.ExpressionStatement) { + assignmentExpression = node.consequent.body[0].expression; + } + else if (node.consequent.type === utils_1.AST_NODE_TYPES.ExpressionStatement) { + assignmentExpression = node.consequent.expression; + } + if (!assignmentExpression || + assignmentExpression.type !== utils_1.AST_NODE_TYPES.AssignmentExpression || + !isMemberAccessLike(assignmentExpression.left)) { + return; + } + const nullishCoalescingLeftNode = assignmentExpression.left; + const nullishCoalescingRightNode = assignmentExpression.right; + const { nodesInsideTestExpression, operator } = getOperatorAndNodesInsideTestExpression(node); + if (operator == null || !['!', '==', '==='].includes(operator)) { + return; + } + const nullishCoalescingParams = getNullishCoalescingParams(node, nullishCoalescingLeftNode, nodesInsideTestExpression, operator); + if (nullishCoalescingParams.isFixable) { + // Handle comments + const isConsequentNodeBlockStatement = node.consequent.type === utils_1.AST_NODE_TYPES.BlockStatement; + const commentsBefore = formatComments(context.sourceCode.getCommentsBefore(assignmentExpression), isConsequentNodeBlockStatement ? '\n' : ' '); + const commentsAfter = isConsequentNodeBlockStatement + ? formatComments(context.sourceCode.getCommentsAfter(assignmentExpression.parent), '\n') + : ''; + context.report({ + node, + messageId: 'preferNullishOverAssignment', + data: { equals: '=' }, + suggest: [ + { + messageId: 'suggestNullish', + data: { equals: '=' }, + fix(fixer) { + const fixes = []; + if (commentsBefore) { + fixes.push(fixer.insertTextBefore(node, commentsBefore)); + } + fixes.push(fixer.replaceText(node, `${(0, util_1.getTextWithParentheses)(context.sourceCode, nullishCoalescingLeftNode)} ??= ${(0, util_1.getTextWithParentheses)(context.sourceCode, nullishCoalescingRightNode)};`)); + if (commentsAfter) { + fixes.push(fixer.insertTextAfter(node, ` ${commentsAfter.slice(0, -1)}`)); + } + return fixes; }, }, ], @@ -512,8 +525,21 @@ function isMixedLogicalExpression(node) { function areNodesSimilarMemberAccess(a, b) { if (a.type === utils_1.AST_NODE_TYPES.MemberExpression && b.type === utils_1.AST_NODE_TYPES.MemberExpression) { - return ((0, util_1.isNodeEqual)(a.property, b.property) && - areNodesSimilarMemberAccess(a.object, b.object)); + if (!areNodesSimilarMemberAccess(a.object, b.object)) { + return false; + } + if (a.computed === b.computed) { + return (0, util_1.isNodeEqual)(a.property, b.property); + } + if (a.property.type === utils_1.AST_NODE_TYPES.Literal && + b.property.type === utils_1.AST_NODE_TYPES.Identifier) { + return a.property.value === b.property.name; + } + if (a.property.type === utils_1.AST_NODE_TYPES.Identifier && + b.property.type === utils_1.AST_NODE_TYPES.Literal) { + return a.property.name === b.property.value; + } + return false; } if (a.type === utils_1.AST_NODE_TYPES.ChainExpression || b.type === utils_1.AST_NODE_TYPES.ChainExpression) { @@ -527,8 +553,82 @@ function areNodesSimilarMemberAccess(a, b) { * - the "nullish branch" is the branch when test node is nullish */ function getBranchNodes(node, operator) { - if (!operator || ['!=', '!=='].includes(operator)) { + if (['', '!=', '!=='].includes(operator)) { return { nonNullishBranch: node.consequent, nullishBranch: node.alternate }; } return { nonNullishBranch: node.alternate, nullishBranch: node.consequent }; } +function getOperatorAndNodesInsideTestExpression(node) { + let operator = null; + let nodesInsideTestExpression = []; + if (isMemberAccessLike(node.test) || + node.test.type === utils_1.AST_NODE_TYPES.UnaryExpression) { + operator = getNonBinaryNodeOperator(node.test); + } + else if (node.test.type === utils_1.AST_NODE_TYPES.BinaryExpression) { + nodesInsideTestExpression = [node.test.left, node.test.right]; + if (node.test.operator === '==' || + node.test.operator === '!=' || + node.test.operator === '===' || + node.test.operator === '!==') { + operator = node.test.operator; + } + } + else if (node.test.type === utils_1.AST_NODE_TYPES.LogicalExpression && + node.test.left.type === utils_1.AST_NODE_TYPES.BinaryExpression && + node.test.right.type === utils_1.AST_NODE_TYPES.BinaryExpression) { + if (isNodeNullishComparison(node.test.left) || + isNodeNullishComparison(node.test.right)) { + return { nodesInsideTestExpression, operator }; + } + nodesInsideTestExpression = [ + node.test.left.left, + node.test.left.right, + node.test.right.left, + node.test.right.right, + ]; + if (['||', '||='].includes(node.test.operator)) { + if (node.test.left.operator === '===' && + node.test.right.operator === '===') { + operator = '==='; + } + else if (((node.test.left.operator === '===' || + node.test.right.operator === '===') && + (node.test.left.operator === '==' || + node.test.right.operator === '==')) || + (node.test.left.operator === '==' && node.test.right.operator === '==')) { + operator = '=='; + } + } + else if (node.test.operator === '&&') { + if (node.test.left.operator === '!==' && + node.test.right.operator === '!==') { + operator = '!=='; + } + else if (((node.test.left.operator === '!==' || + node.test.right.operator === '!==') && + (node.test.left.operator === '!=' || + node.test.right.operator === '!=')) || + (node.test.left.operator === '!=' && node.test.right.operator === '!=')) { + operator = '!='; + } + } + } + return { nodesInsideTestExpression, operator }; +} +function getNonBinaryNodeOperator(node) { + if (node.type !== utils_1.AST_NODE_TYPES.UnaryExpression) { + return ''; + } + if (isMemberAccessLike(node.argument) && node.operator === '!') { + return '!'; + } + return null; +} +function formatComments(comments, separator) { + return comments + .map(({ type, value }) => type === utils_1.AST_TOKEN_TYPES.Line + ? `//${value}${separator}` + : `/*${value}*/${separator}`) + .join(''); +} diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.d.ts.map index 5bc0b8105d..bf41bb3745 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"prefer-ts-expect-error.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-ts-expect-error.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,UAAU,GAAG,0BAA0B,CAAC;;AAEpD,wBA0EG"} \ No newline at end of file +{"version":3,"file":"prefer-ts-expect-error.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-ts-expect-error.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,UAAU,GAAG,0BAA0B,CAAC;;AAEpD,wBAqFG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js index f20687d9e4..e2db83bd6f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js @@ -6,7 +6,18 @@ exports.default = (0, util_1.createRule)({ name: 'prefer-ts-expect-error', meta: { type: 'problem', - deprecated: true, + deprecated: { + deprecatedSince: '7.11.0', + replacedBy: [ + { + rule: { + name: '@typescript-eslint/ban-ts-comment', + url: 'https://typescript-eslint.io/rules/ban-ts-comment', + }, + }, + ], + url: 'https://github.com/typescript-eslint/typescript-eslint/pull/9081', + }, docs: { description: 'Enforce using `@ts-expect-error` over `@ts-ignore`', }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.d.ts.map index 5e4df36f31..118a378d71 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"sort-type-constituents.d.ts","sourceRoot":"","sources":["../../src/rules/sort-type-constituents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AA6GnE,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB;CACF,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,gBAAgB,GAAG,YAAY,CAAC;;AAEvE,wBAiLG"} \ No newline at end of file +{"version":3,"file":"sort-type-constituents.d.ts","sourceRoot":"","sources":["../../src/rules/sort-type-constituents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AA6GnE,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB;CACF,CAAC;AACF,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,gBAAgB,GAAG,YAAY,CAAC;;AAEvE,wBA0MG"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js index dfe753d720..c4a51cce72 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js +++ b/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js @@ -94,7 +94,32 @@ exports.default = (0, util_1.createRule)({ name: 'sort-type-constituents', meta: { type: 'suggestion', - deprecated: true, + deprecated: { + deprecatedSince: '7.13.0', + replacedBy: [ + { + plugin: { + name: 'eslint-plugin-perfectionist', + url: 'https://perfectionist.dev', + }, + rule: { + name: 'perfectionist/sort-intersection-types', + url: 'https://perfectionist.dev/rules/sort-intersection-types', + }, + }, + { + plugin: { + name: 'eslint-plugin-perfectionist', + url: 'https://perfectionist.dev', + }, + rule: { + name: 'perfectionist/sort-union-types', + url: 'https://perfectionist.dev/rules/sort-union-types', + }, + }, + ], + url: 'https://github.com/typescript-eslint/typescript-eslint/pull/9253', + }, docs: { description: 'Enforce constituents of a type union/intersection to be sorted alphabetically', }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.mdx b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.mdx index 734da5d51f..55ed0d531a 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.mdx +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.mdx @@ -218,26 +218,75 @@ You should be using `strictNullChecks` to ensure complete type-safety in your co If for some reason you cannot turn on `strictNullChecks`, but still want to use this rule - you can use this option to allow it - but know that the behavior of this rule is _undefined_ with the compiler option turned off. We will not accept bug reports if you are using this option. -## When Not To Use It +## Limitations -If your project is not accurately typed, such as if it's in the process of being converted to TypeScript or is susceptible to [trade-offs in control flow analysis](https://github.com/Microsoft/TypeScript/issues/9998), it may be difficult to enable this rule for particularly non-type-safe areas of code. -You might consider using [ESLint disable comments](https://eslint.org/docs/latest/use/configure/rules#using-configuration-comments-1) for those specific situations instead of completely disabling this rule. +This rule is powered by TypeScript types, therefore, if the types do not match match the runtime behavior, the rule may report inaccurately. +This can happen in several commonplace scenarios. -This rule has a known edge case of triggering on conditions that were modified within function calls (as side effects). -It is due to limitations of TypeScript's type narrowing. -See [#9998](https://github.com/microsoft/TypeScript/issues/9998) for details. -We recommend using a [type assertion](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#type-assertions) in those cases. +### Possibly-undefined indexed access -```ts +By default, TypeScript optimistically assumes that indexed access will always return a value. +This means that cases like the following will be erroneously flagged as unnecessary conditions: + +```ts showPlaygroundButton +const array: string[] = []; +const firstElement = array[0]; +// false positive +if (firstElement != null) { + // ... +} + +const record: Record = {}; +const someValue = record.someKey; +// false positive +if (someValue != null) { + // ... +} +``` + +To get pessimistic, but correct, types for these cases, you can use TypeScript's [`noUncheckedIndexedAccess` compiler option](https://www.typescriptlang.org/tsconfig/#noUncheckedIndexedAccess), though this is often unwieldy in real-world usage. +Another workaround is to use `array.at(0)` (which is always possibly-undefined) to indicate array access that may be out-of-bounds. +Otherwise, a disable comment will often make sense for these kinds of cases. + +### Values modified within function calls + +The following code will be erroneously flagged as unnecessary, even though the condition is modified within the function call. + +```ts showPlaygroundButton +let condition = false; + +const f = () => { + condition = Math.random() > 0.5; +}; +f(); + +if (condition) { + // ... +} +``` + +This occurs due to limitations of TypeScript's type narrowing. +See [microsoft/TypeScript#9998](https://github.com/microsoft/TypeScript/issues/9998) for details. +We recommend using a [type assertion](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#type-assertions) in these cases, like so: + +```ts showPlaygroundButton let condition = false as boolean; -const f = () => (condition = true); +const f = () => { + condition = Math.random() > 0.5; +}; f(); if (condition) { + // ... } ``` +## When Not To Use It + +If your project is not accurately typed, such as if it's in the process of being converted to TypeScript or is susceptible to [trade-offs in control flow analysis](https://github.com/Microsoft/TypeScript/issues/9998), it may be difficult to enable this rule for particularly non-type-safe areas of code. +You might consider using [ESLint disable comments](https://eslint.org/docs/latest/use/configure/rules#using-configuration-comments-1) for those specific situations instead of completely disabling this rule. + ## Related To - ESLint: [no-constant-condition](https://eslint.org/docs/rules/no-constant-condition) - `no-unnecessary-condition` is essentially a stronger version of `no-constant-condition`, but requires type information. diff --git a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx index 438cc97d6a..904c7f40b7 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx +++ b/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx @@ -17,6 +17,54 @@ This rule reports when you may consider replacing: - An `||` operator with `??` - An `||=` operator with `??=` - Ternary expressions (`?:`) that are equivalent to `||` or `??` with `??` +- Assignment expressions (`=`) that can be safely replaced by `??=` + +## Examples + + + + +```ts +declare const a: string | null; +declare const b: string | null; + +const c = a || b; + +declare let foo: { a: string } | null; +declare function makeFoo(): { a: string }; + +function lazyInitializeFooByTruthiness() { + if (!foo) { + foo = makeFoo(); + } +} + +function lazyInitializeFooByNullCheck() { + if (foo == null) { + foo = makeFoo(); + } +} +``` + + + + +```ts +declare const a: string | null; +declare const b: string | null; + +const c = a ?? b; + +declare let foo: { a: string } | null; +declare function makeFoo(): { a: string }; + +function lazyInitializeFoo() { + foo ??= makeFoo(); +} +``` + + + :::caution This rule will not work as expected if [`strictNullChecks`](https://www.typescriptlang.org/tsconfig#strictNullChecks) is not enabled. @@ -255,3 +303,4 @@ If you are not using TypeScript 3.7 (or greater), then you will not be able to u - [TypeScript 3.7 Release Notes](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html) - [Nullish Coalescing Operator Proposal](https://github.com/tc39/proposal-nullish-coalescing/) +- [`logical-assignment-operators`](https://eslint.org/docs/latest/rules/logical-assignment-operators) diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/package.json index d6064bbec1..ad9d506f1f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/scope-manager", - "version": "8.26.1", + "version": "8.28.0", "description": "TypeScript scope analyser for ESLint", "files": [ "dist", @@ -47,12 +47,12 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "devDependencies": { "@jest/types": "29.6.3", - "@typescript-eslint/typescript-estree": "8.26.1", + "@typescript-eslint/typescript-estree": "8.28.0", "glob": "*", "jest": "29.7.0", "jest-specific-snapshot": "*", diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types/package.json index 37f1ee69cb..ad6a639d9d 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/types", - "version": "8.26.1", + "version": "8.28.0", "description": "Types for the TypeScript-ESTree AST spec", "files": [ "dist", diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map index 10969b36e3..e7817208d9 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,aAAa,EACb,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,EAAE,MAAM,aAAa,CAAC;AAmCtE,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,wBAAwB,GAAG,EAAE,CAAC,sBAAsB,GAC1D,OAAO,CAMT;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;;IACpB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAsZ1D,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,oCAAoC;IAe5C;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAiC9B,OAAO,CAAC,sBAAsB;IA4C9B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;;;;OAKG;IACH,OAAO,CAAC,gDAAgD;IAexD;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAmB1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;;;;;OAMG;IACH,OAAO,CAAC,SAAS;IA8BjB,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,+BAA+B;IAgDvC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,sBAAsB;IAoC9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAwhFnB,OAAO,CAAC,UAAU;IAclB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA0FlB;;;OAGG;IACH,OAAO,CAAC,UAAU;IAgFlB,UAAU,IAAI,OAAO;IAOrB;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAYhC"} \ No newline at end of file +{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,aAAa,EACb,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,EAAE,MAAM,aAAa,CAAC;AAmCtE,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,wBAAwB,GAAG,EAAE,CAAC,sBAAsB,GAC1D,OAAO,CAMT;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;;IACpB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAsZ1D,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,oCAAoC;IAe5C;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAiC9B,OAAO,CAAC,sBAAsB;IA4C9B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;;;;OAKG;IACH,OAAO,CAAC,gDAAgD;IAexD;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAmB1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;;;;;OAMG;IACH,OAAO,CAAC,SAAS;IA8BjB,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,+BAA+B;IAgDvC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,sBAAsB;IAoC9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAyhFnB,OAAO,CAAC,UAAU;IAclB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA0FlB;;;OAGG;IACH,OAAO,CAAC,UAAU;IAgFlB,UAAU,IAAI,OAAO;IAOrB;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAYhC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/convert.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/convert.js index 5a876ed2eb..cc81c22611 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/dist/convert.js @@ -1402,6 +1402,7 @@ class Converter { parameter = this.convertChild(node.name); result = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.AssignmentPattern, + range: [node.name.getStart(this.ast), node.initializer.end], decorators: [], left: parameter, optional: false, diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/package.json index 8645e38ab4..1801d9af08 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/typescript-estree", - "version": "8.26.1", + "version": "8.28.0", "description": "A parser that converts TypeScript source code into an ESTree compatible form", "files": [ "dist", @@ -55,8 +55,8 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts index 668d2bd1f1..e894fe1bcd 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts @@ -20,11 +20,66 @@ export interface RuleMetaDataDocs { */ url?: string; } +export interface ExternalSpecifier { + /** + * Name of the referenced plugin / rule. + */ + name?: string; + /** + * URL pointing to documentation for the plugin / rule. + */ + url?: string; +} +export interface ReplacedByInfo { + /** + * General message presented to the user, e.g. how to replace the rule + */ + message?: string; + /** + * URL to more information about this replacement in general + */ + url?: string; + /** + * Name should be "eslint" if the replacement is an ESLint core rule. Omit + * the property if the replacement is in the same plugin. + */ + plugin?: ExternalSpecifier; + /** + * Name and documentation of the replacement rule + */ + rule?: ExternalSpecifier; +} +export interface DeprecatedInfo { + /** + * General message presented to the user, e.g. for the key rule why the rule + * is deprecated or for info how to replace the rule. + */ + message?: string; + /** + * URL to more information about this deprecation in general. + */ + url?: string; + /** + * An empty array explicitly states that there is no replacement. + */ + replacedBy?: ReplacedByInfo[]; + /** + * The package version since when the rule is deprecated (should use full + * semver without a leading "v"). + */ + deprecatedSince?: string; + /** + * The estimated version when the rule is removed (probably the next major + * version). null means the rule is "frozen" (will be available but will not + * be changed). + */ + availableUntil?: string | null; +} export interface RuleMetaData { /** * True if the rule is deprecated, false otherwise */ - deprecated?: boolean; + deprecated?: boolean | DeprecatedInfo; /** * Documentation for the rule */ @@ -45,6 +100,8 @@ export interface RuleMetaData; /** * The name of the rule this rule was replaced by, if it was deprecated. + * + * @deprecated since eslint 9.21.0, in favor of `RuleMetaData#deprecated.replacedBy` */ replacedBy?: readonly string[]; /** diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map index ffcb9c8359..264b4a19f6 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Rule.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Rule.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/package.json index 76add92ebc..3af6d8fd4f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/utils", - "version": "8.26.1", + "version": "8.28.0", "description": "Utilities for working with TypeScript + ESLint together", "files": [ "dist", @@ -65,9 +65,9 @@ }, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1" + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys/package.json index 7a8b445eed..02602e8cdc 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/visitor-keys", - "version": "8.26.1", + "version": "8.28.0", "description": "Visitor keys used to help traverse the TypeScript-ESTree AST", "files": [ "dist", @@ -48,7 +48,7 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "devDependencies": { diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/README.md b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/README.md index b2c13ef845..2586c9993f 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/README.md +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/README.md @@ -9,7 +9,7 @@

-All Contributors: 8 👪 +All Contributors: 10 👪 🤝 Code of Conduct: Kept @@ -67,6 +67,8 @@ Many thanks to [@ajafff](https://github.com/ajafff) for creating the original [` Rebecca Stevens
Rebecca Stevens

🐛 💻 📖 📆 ⚠️ 🔧 🚇 🚧 🤔 + Ronen Amiel
Ronen Amiel

⚠️ + fisker Cheung
fisker Cheung

💻 diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.cjs b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.cjs index 4b7427ebdb..60ebd6ff97 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.cjs +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.cjs @@ -1024,9 +1024,10 @@ function isInConstContext(node, typeChecker) { } // src/types/utilities.ts -function intersectionTypeParts(type) { +function intersectionConstituents(type) { return isIntersectionType(type) ? type.types : [type]; } +var intersectionTypeParts = intersectionConstituents; function isFalsyType(type) { if (isTypeFlagSet( type, @@ -1046,7 +1047,7 @@ function isFalsyType(type) { function isPropertyReadonlyInType(type, name, typeChecker) { let seenProperty = false; let seenReadonlySignature = false; - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (getPropertyOfType(subType, name) === undefined) { const index = (isNumericPropertyName(name) ? typeChecker.getIndexInfoOfType(subType, ts9__default.default.IndexKind.Number) : undefined) ?? typeChecker.getIndexInfoOfType(subType, ts9__default.default.IndexKind.String); if (index?.isReadonly) { @@ -1064,14 +1065,16 @@ function isPropertyReadonlyInType(type, name, typeChecker) { return false; } function isThenableType(typeChecker, node, type = typeChecker.getTypeAtLocation(node)) { - for (const typePart of unionTypeParts(typeChecker.getApparentType(type))) { - const then = typePart.getProperty("then"); + for (const constituent of unionConstituents( + typeChecker.getApparentType(type) + )) { + const then = constituent.getProperty("then"); if (then === undefined) { continue; } const thenType = typeChecker.getTypeOfSymbolAtLocation(then, node); - for (const subTypePart of unionTypeParts(thenType)) { - for (const signature of subTypePart.getCallSignatures()) { + for (const subConstituent of unionConstituents(thenType)) { + for (const signature of subConstituent.getCallSignatures()) { if (signature.parameters.length !== 0 && isCallback(typeChecker, signature.parameters[0], node)) { return true; } @@ -1085,6 +1088,9 @@ function symbolHasReadonlyDeclaration(symbol, typeChecker) { (node) => isModifierFlagSet(node, ts9__default.default.ModifierFlags.Readonly) || ts9__default.default.isVariableDeclaration(node) && isNodeFlagSet(node.parent, ts9__default.default.NodeFlags.Const) || ts9__default.default.isCallExpression(node) && isReadonlyAssignmentDeclaration(node, typeChecker) || ts9__default.default.isEnumMember(node) || (ts9__default.default.isPropertyAssignment(node) || ts9__default.default.isShorthandPropertyAssignment(node)) && isInConstContext(node, typeChecker) )); } +function typeConstituents(type) { + return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; +} function typeIsLiteral(type) { if (isTsVersionAtLeast(5, 0)) { return type.isLiteral(); @@ -1095,12 +1101,11 @@ function typeIsLiteral(type) { ); } } -function typeParts(type) { - return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; -} -function unionTypeParts(type) { +var typeParts = typeConstituents; +function unionConstituents(type) { return isUnionType(type) ? type.types : [type]; } +var unionTypeParts = unionConstituents; function isCallback(typeChecker, param, node) { let type = typeChecker.getApparentType( typeChecker.getTypeOfSymbolAtLocation(param, node) @@ -1111,7 +1116,7 @@ function isCallback(typeChecker, param, node) { return false; } } - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (subType.getCallSignatures().length !== 0) { return true; } @@ -1145,17 +1150,17 @@ function isReadonlyPropertyFromMappedType(type, name, typeChecker) { return modifiersType && isPropertyReadonlyInType(modifiersType, name, typeChecker); } function isReadonlyPropertyIntersection(type, name, typeChecker) { - const typeParts2 = isIntersectionType(type) ? type.types : [type]; - return typeParts2.some((subType) => { - const prop = getPropertyOfType(subType, name); + const constituents = intersectionConstituents(type); + return constituents.some((constituent) => { + const prop = getPropertyOfType(constituent, name); if (prop === undefined) { return false; } if (prop.flags & ts9__default.default.SymbolFlags.Transient) { - if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(subType)) { - return subType.target.readonly; + if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(constituent)) { + return constituent.target.readonly; } - switch (isReadonlyPropertyFromMappedType(subType, name, typeChecker)) { + switch (isReadonlyPropertyFromMappedType(constituent, name, typeChecker)) { case false: return false; case true: @@ -2099,6 +2104,7 @@ exports.hasModifiers = hasModifiers; exports.hasType = hasType; exports.hasTypeArguments = hasTypeArguments; exports.includesModifier = includesModifier; +exports.intersectionConstituents = intersectionConstituents; exports.intersectionTypeParts = intersectionTypeParts; exports.isAbstractKeyword = isAbstractKeyword; exports.isAccessExpression = isAccessExpression; @@ -2269,6 +2275,8 @@ exports.isValidPropertyAccess = isValidPropertyAccess; exports.isVariableLikeDeclaration = isVariableLikeDeclaration; exports.isVoidKeyword = isVoidKeyword; exports.symbolHasReadonlyDeclaration = symbolHasReadonlyDeclaration; +exports.typeConstituents = typeConstituents; exports.typeIsLiteral = typeIsLiteral; exports.typeParts = typeParts; +exports.unionConstituents = unionConstituents; exports.unionTypeParts = unionTypeParts; diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.d.cts b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.d.cts index 217906ef6a..87946f8c92 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.d.cts +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.d.cts @@ -2788,12 +2788,18 @@ declare function isUniqueESSymbolType(type: ts.Type): type is ts.UniqueESSymbolT * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * for (const constituent of intersectionConstituents(type)) { * // ... * } * ``` */ -declare function intersectionTypeParts(type: ts.Type): ts.Type[]; +declare function intersectionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link intersectionConstituents} instead. + * @category Types - Utilities + * ``` + */ +declare const intersectionTypeParts: typeof intersectionConstituents; /** * Determines whether a type is definitely falsy. This function doesn't unwrap union types. * @category Types - Utilities @@ -2876,39 +2882,44 @@ declare function isThenableType(typeChecker: ts.TypeChecker, node: ts.Expression */ declare function symbolHasReadonlyDeclaration(symbol: ts.Symbol, typeChecker: ts.TypeChecker): boolean; /** - * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for - * bigint literals. Use this function instead if you need to check for bigint - * literals in TS versions before v5.0. Otherwise, you should just use - * `type.isLiteral()`. - * @see https://github.com/microsoft/TypeScript/pull/50929 + * Get the intersection or union type parts of the given type. + * + * Note that this is a shallow collection: it only returns `type.types` or `[type]`. + * + * If the given type is not an intersection or union type, an array contain only that type will be returned. * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * if (typeIsLiteral(type)) { + * for (const constituent of typeConstituents(type)) { * // ... * } * ``` */ -declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +declare function typeConstituents(type: ts.Type): ts.Type[]; /** - * Get the intersection or union type parts of the given type. - * - * Note that this is a shallow collection: it only returns `type.types` or `[type]`. - * - * If the given type is not an intersection or union type, an array contain only that type will be returned. + * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for + * bigint literals. Use this function instead if you need to check for bigint + * literals in TS versions before v5.0. Otherwise, you should just use + * `type.isLiteral()`. + * @see https://github.com/microsoft/TypeScript/pull/50929 * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * if (typeIsLiteral(type)) { * // ... * } * ``` */ -declare function typeParts(type: ts.Type): ts.Type[]; +declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +/** + * @deprecated Use {@link typeConstituents} instead. + * @category Types - Utilities + */ +declare const typeParts: typeof typeConstituents; /** * Get the union type parts of the given type. * @@ -2918,12 +2929,17 @@ declare function typeParts(type: ts.Type): ts.Type[]; * ```ts * declare const type: ts.Type; * - * for (const typePart of unionTypeParts(type)) { + * for (const constituent of unionConstituents(type)) { * // ... * } * ``` */ -declare function unionTypeParts(type: ts.Type): ts.Type[]; +declare function unionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link unionConstituents} instead. + * @category Types - Utilities + */ +declare const unionTypeParts: typeof unionConstituents; /** * Which "domain"(s) (most commonly, type or value space) a declaration is within. @@ -3000,4 +3016,4 @@ interface UsageInfo { */ declare function collectVariableUsage(sourceFile: ts.SourceFile): Map; -export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.d.ts b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.d.ts index 217906ef6a..87946f8c92 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.d.ts +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.d.ts @@ -2788,12 +2788,18 @@ declare function isUniqueESSymbolType(type: ts.Type): type is ts.UniqueESSymbolT * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * for (const constituent of intersectionConstituents(type)) { * // ... * } * ``` */ -declare function intersectionTypeParts(type: ts.Type): ts.Type[]; +declare function intersectionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link intersectionConstituents} instead. + * @category Types - Utilities + * ``` + */ +declare const intersectionTypeParts: typeof intersectionConstituents; /** * Determines whether a type is definitely falsy. This function doesn't unwrap union types. * @category Types - Utilities @@ -2876,39 +2882,44 @@ declare function isThenableType(typeChecker: ts.TypeChecker, node: ts.Expression */ declare function symbolHasReadonlyDeclaration(symbol: ts.Symbol, typeChecker: ts.TypeChecker): boolean; /** - * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for - * bigint literals. Use this function instead if you need to check for bigint - * literals in TS versions before v5.0. Otherwise, you should just use - * `type.isLiteral()`. - * @see https://github.com/microsoft/TypeScript/pull/50929 + * Get the intersection or union type parts of the given type. + * + * Note that this is a shallow collection: it only returns `type.types` or `[type]`. + * + * If the given type is not an intersection or union type, an array contain only that type will be returned. * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * if (typeIsLiteral(type)) { + * for (const constituent of typeConstituents(type)) { * // ... * } * ``` */ -declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +declare function typeConstituents(type: ts.Type): ts.Type[]; /** - * Get the intersection or union type parts of the given type. - * - * Note that this is a shallow collection: it only returns `type.types` or `[type]`. - * - * If the given type is not an intersection or union type, an array contain only that type will be returned. + * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for + * bigint literals. Use this function instead if you need to check for bigint + * literals in TS versions before v5.0. Otherwise, you should just use + * `type.isLiteral()`. + * @see https://github.com/microsoft/TypeScript/pull/50929 * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * if (typeIsLiteral(type)) { * // ... * } * ``` */ -declare function typeParts(type: ts.Type): ts.Type[]; +declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +/** + * @deprecated Use {@link typeConstituents} instead. + * @category Types - Utilities + */ +declare const typeParts: typeof typeConstituents; /** * Get the union type parts of the given type. * @@ -2918,12 +2929,17 @@ declare function typeParts(type: ts.Type): ts.Type[]; * ```ts * declare const type: ts.Type; * - * for (const typePart of unionTypeParts(type)) { + * for (const constituent of unionConstituents(type)) { * // ... * } * ``` */ -declare function unionTypeParts(type: ts.Type): ts.Type[]; +declare function unionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link unionConstituents} instead. + * @category Types - Utilities + */ +declare const unionTypeParts: typeof unionConstituents; /** * Which "domain"(s) (most commonly, type or value space) a declaration is within. @@ -3000,4 +3016,4 @@ interface UsageInfo { */ declare function collectVariableUsage(sourceFile: ts.SourceFile): Map; -export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.js b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.js index 5db5012424..cd0dc8ed07 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.js +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/lib/index.js @@ -1018,9 +1018,10 @@ function isInConstContext(node, typeChecker) { } // src/types/utilities.ts -function intersectionTypeParts(type) { +function intersectionConstituents(type) { return isIntersectionType(type) ? type.types : [type]; } +var intersectionTypeParts = intersectionConstituents; function isFalsyType(type) { if (isTypeFlagSet( type, @@ -1040,7 +1041,7 @@ function isFalsyType(type) { function isPropertyReadonlyInType(type, name, typeChecker) { let seenProperty = false; let seenReadonlySignature = false; - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (getPropertyOfType(subType, name) === undefined) { const index = (isNumericPropertyName(name) ? typeChecker.getIndexInfoOfType(subType, ts9.IndexKind.Number) : undefined) ?? typeChecker.getIndexInfoOfType(subType, ts9.IndexKind.String); if (index?.isReadonly) { @@ -1058,14 +1059,16 @@ function isPropertyReadonlyInType(type, name, typeChecker) { return false; } function isThenableType(typeChecker, node, type = typeChecker.getTypeAtLocation(node)) { - for (const typePart of unionTypeParts(typeChecker.getApparentType(type))) { - const then = typePart.getProperty("then"); + for (const constituent of unionConstituents( + typeChecker.getApparentType(type) + )) { + const then = constituent.getProperty("then"); if (then === undefined) { continue; } const thenType = typeChecker.getTypeOfSymbolAtLocation(then, node); - for (const subTypePart of unionTypeParts(thenType)) { - for (const signature of subTypePart.getCallSignatures()) { + for (const subConstituent of unionConstituents(thenType)) { + for (const signature of subConstituent.getCallSignatures()) { if (signature.parameters.length !== 0 && isCallback(typeChecker, signature.parameters[0], node)) { return true; } @@ -1079,6 +1082,9 @@ function symbolHasReadonlyDeclaration(symbol, typeChecker) { (node) => isModifierFlagSet(node, ts9.ModifierFlags.Readonly) || ts9.isVariableDeclaration(node) && isNodeFlagSet(node.parent, ts9.NodeFlags.Const) || ts9.isCallExpression(node) && isReadonlyAssignmentDeclaration(node, typeChecker) || ts9.isEnumMember(node) || (ts9.isPropertyAssignment(node) || ts9.isShorthandPropertyAssignment(node)) && isInConstContext(node, typeChecker) )); } +function typeConstituents(type) { + return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; +} function typeIsLiteral(type) { if (isTsVersionAtLeast(5, 0)) { return type.isLiteral(); @@ -1089,12 +1095,11 @@ function typeIsLiteral(type) { ); } } -function typeParts(type) { - return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; -} -function unionTypeParts(type) { +var typeParts = typeConstituents; +function unionConstituents(type) { return isUnionType(type) ? type.types : [type]; } +var unionTypeParts = unionConstituents; function isCallback(typeChecker, param, node) { let type = typeChecker.getApparentType( typeChecker.getTypeOfSymbolAtLocation(param, node) @@ -1105,7 +1110,7 @@ function isCallback(typeChecker, param, node) { return false; } } - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (subType.getCallSignatures().length !== 0) { return true; } @@ -1139,17 +1144,17 @@ function isReadonlyPropertyFromMappedType(type, name, typeChecker) { return modifiersType && isPropertyReadonlyInType(modifiersType, name, typeChecker); } function isReadonlyPropertyIntersection(type, name, typeChecker) { - const typeParts2 = isIntersectionType(type) ? type.types : [type]; - return typeParts2.some((subType) => { - const prop = getPropertyOfType(subType, name); + const constituents = intersectionConstituents(type); + return constituents.some((constituent) => { + const prop = getPropertyOfType(constituent, name); if (prop === undefined) { return false; } if (prop.flags & ts9.SymbolFlags.Transient) { - if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(subType)) { - return subType.target.readonly; + if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(constituent)) { + return constituent.target.readonly; } - switch (isReadonlyPropertyFromMappedType(subType, name, typeChecker)) { + switch (isReadonlyPropertyFromMappedType(constituent, name, typeChecker)) { case false: return false; case true: @@ -2075,4 +2080,4 @@ function collectVariableUsage(sourceFile) { return new UsageWalker().getUsage(sourceFile); } -export { AccessKind, DeclarationDomain, UsageDomain, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, DeclarationDomain, UsageDomain, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/package.json b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/package.json index 3810c855d6..ec34f72b30 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils/package.json @@ -1,6 +1,6 @@ { "name": "ts-api-utils", - "version": "2.0.1", + "version": "2.1.0", "description": "Utility functions for working with TypeScript's API. Successor to the wonderful tsutils. 🛠️️", "repository": { "type": "git", @@ -37,7 +37,6 @@ "lint": "eslint . --max-warnings 0", "lint:docs": "typedoc --validation --treatValidationWarningsAsErrors", "lint:knip": "knip", - "lint:knip:production": "knip --production", "lint:md": "markdownlint \"**/*.md\" \".github/**/*.md\" --rules sentences-per-line", "lint:packages": "pnpm dedupe --check", "lint:spelling": "cspell \"**\" \".github/**/*\"", @@ -72,10 +71,10 @@ "eslint-plugin-yml": "^1.16.0", "husky": "^9.1.7", "jsonc-eslint-parser": "^2.4.0", - "knip": "^5.43.6", + "knip": "^5.46.0", "lint-staged": "^15.4.3", "markdownlint": "^0.37.4", - "markdownlint-cli": "^0.43.0", + "markdownlint-cli": "^0.44.0", "prettier": "^3.4.2", "prettier-plugin-curly": "^0.3.1", "prettier-plugin-packagejson": "^2.5.8", @@ -90,12 +89,12 @@ "typedoc-plugin-mdn-links": "^4.0.10", "typescript": "^5.7.3", "typescript-eslint": "^8.22.0", - "vitest": "^2.1.8" + "vitest": "^3.0.0" }, "peerDependencies": { "typescript": ">=4.8.4" }, - "packageManager": "pnpm@9.15.3", + "packageManager": "pnpm@9.15.9", "engines": { "node": ">=18.12" }, diff --git a/node_modules/@typescript-eslint/eslint-plugin/package.json b/node_modules/@typescript-eslint/eslint-plugin/package.json index ed623baeca..1b76932238 100644 --- a/node_modules/@typescript-eslint/eslint-plugin/package.json +++ b/node_modules/@typescript-eslint/eslint-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/eslint-plugin", - "version": "8.26.1", + "version": "8.28.0", "description": "TypeScript plugin for ESLint", "files": [ "dist", @@ -62,10 +62,10 @@ }, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/type-utils": "8.26.1", - "@typescript-eslint/utils": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/type-utils": "8.28.0", + "@typescript-eslint/utils": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -76,8 +76,8 @@ "@types/marked": "^5.0.2", "@types/mdast": "^4.0.3", "@types/natural-compare": "*", - "@typescript-eslint/rule-schema-to-typescript-types": "8.26.1", - "@typescript-eslint/rule-tester": "8.26.1", + "@typescript-eslint/rule-schema-to-typescript-types": "8.28.0", + "@typescript-eslint/rule-tester": "8.28.0", "ajv": "^6.12.6", "cross-env": "^7.0.3", "cross-fetch": "*", diff --git a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager/package.json b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager/package.json index d6064bbec1..ad9d506f1f 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager/package.json +++ b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/scope-manager", - "version": "8.26.1", + "version": "8.28.0", "description": "TypeScript scope analyser for ESLint", "files": [ "dist", @@ -47,12 +47,12 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "devDependencies": { "@jest/types": "29.6.3", - "@typescript-eslint/typescript-estree": "8.26.1", + "@typescript-eslint/typescript-estree": "8.28.0", "glob": "*", "jest": "29.7.0", "jest-specific-snapshot": "*", diff --git a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types/package.json b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types/package.json index 37f1ee69cb..ad6a639d9d 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types/package.json +++ b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/types", - "version": "8.26.1", + "version": "8.28.0", "description": "Types for the TypeScript-ESTree AST spec", "files": [ "dist", diff --git a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map index 10969b36e3..e7817208d9 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map +++ b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,aAAa,EACb,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,EAAE,MAAM,aAAa,CAAC;AAmCtE,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,wBAAwB,GAAG,EAAE,CAAC,sBAAsB,GAC1D,OAAO,CAMT;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;;IACpB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAsZ1D,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,oCAAoC;IAe5C;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAiC9B,OAAO,CAAC,sBAAsB;IA4C9B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;;;;OAKG;IACH,OAAO,CAAC,gDAAgD;IAexD;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAmB1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;;;;;OAMG;IACH,OAAO,CAAC,SAAS;IA8BjB,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,+BAA+B;IAgDvC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,sBAAsB;IAoC9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAwhFnB,OAAO,CAAC,UAAU;IAclB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA0FlB;;;OAGG;IACH,OAAO,CAAC,UAAU;IAgFlB,UAAU,IAAI,OAAO;IAOrB;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAYhC"} \ No newline at end of file +{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,aAAa,EACb,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,EAAE,MAAM,aAAa,CAAC;AAmCtE,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,wBAAwB,GAAG,EAAE,CAAC,sBAAsB,GAC1D,OAAO,CAMT;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;;IACpB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAsZ1D,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,oCAAoC;IAe5C;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAiC9B,OAAO,CAAC,sBAAsB;IA4C9B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;;;;OAKG;IACH,OAAO,CAAC,gDAAgD;IAexD;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAmB1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;;;;;OAMG;IACH,OAAO,CAAC,SAAS;IA8BjB,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,+BAA+B;IAgDvC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,sBAAsB;IAoC9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAyhFnB,OAAO,CAAC,UAAU;IAclB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA0FlB;;;OAGG;IACH,OAAO,CAAC,UAAU;IAgFlB,UAAU,IAAI,OAAO;IAOrB;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAYhC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/dist/convert.js b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/dist/convert.js index 5a876ed2eb..cc81c22611 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +++ b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/dist/convert.js @@ -1402,6 +1402,7 @@ class Converter { parameter = this.convertChild(node.name); result = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.AssignmentPattern, + range: [node.name.getStart(this.ast), node.initializer.end], decorators: [], left: parameter, optional: false, diff --git a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/package.json b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/package.json index 8645e38ab4..1801d9af08 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/package.json +++ b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/typescript-estree", - "version": "8.26.1", + "version": "8.28.0", "description": "A parser that converts TypeScript source code into an ESTree compatible form", "files": [ "dist", @@ -55,8 +55,8 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", diff --git a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys/package.json b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys/package.json index 7a8b445eed..02602e8cdc 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys/package.json +++ b/node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/visitor-keys", - "version": "8.26.1", + "version": "8.28.0", "description": "Visitor keys used to help traverse the TypeScript-ESTree AST", "files": [ "dist", @@ -48,7 +48,7 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "devDependencies": { diff --git a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/README.md b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/README.md index b2c13ef845..2586c9993f 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/README.md +++ b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/README.md @@ -9,7 +9,7 @@

-All Contributors: 8 👪 +All Contributors: 10 👪 🤝 Code of Conduct: Kept @@ -67,6 +67,8 @@ Many thanks to [@ajafff](https://github.com/ajafff) for creating the original [` Rebecca Stevens
Rebecca Stevens

🐛 💻 📖 📆 ⚠️ 🔧 🚇 🚧 🤔 + Ronen Amiel
Ronen Amiel

⚠️ + fisker Cheung
fisker Cheung

💻 diff --git a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.cjs b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.cjs index 4b7427ebdb..60ebd6ff97 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.cjs +++ b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.cjs @@ -1024,9 +1024,10 @@ function isInConstContext(node, typeChecker) { } // src/types/utilities.ts -function intersectionTypeParts(type) { +function intersectionConstituents(type) { return isIntersectionType(type) ? type.types : [type]; } +var intersectionTypeParts = intersectionConstituents; function isFalsyType(type) { if (isTypeFlagSet( type, @@ -1046,7 +1047,7 @@ function isFalsyType(type) { function isPropertyReadonlyInType(type, name, typeChecker) { let seenProperty = false; let seenReadonlySignature = false; - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (getPropertyOfType(subType, name) === undefined) { const index = (isNumericPropertyName(name) ? typeChecker.getIndexInfoOfType(subType, ts9__default.default.IndexKind.Number) : undefined) ?? typeChecker.getIndexInfoOfType(subType, ts9__default.default.IndexKind.String); if (index?.isReadonly) { @@ -1064,14 +1065,16 @@ function isPropertyReadonlyInType(type, name, typeChecker) { return false; } function isThenableType(typeChecker, node, type = typeChecker.getTypeAtLocation(node)) { - for (const typePart of unionTypeParts(typeChecker.getApparentType(type))) { - const then = typePart.getProperty("then"); + for (const constituent of unionConstituents( + typeChecker.getApparentType(type) + )) { + const then = constituent.getProperty("then"); if (then === undefined) { continue; } const thenType = typeChecker.getTypeOfSymbolAtLocation(then, node); - for (const subTypePart of unionTypeParts(thenType)) { - for (const signature of subTypePart.getCallSignatures()) { + for (const subConstituent of unionConstituents(thenType)) { + for (const signature of subConstituent.getCallSignatures()) { if (signature.parameters.length !== 0 && isCallback(typeChecker, signature.parameters[0], node)) { return true; } @@ -1085,6 +1088,9 @@ function symbolHasReadonlyDeclaration(symbol, typeChecker) { (node) => isModifierFlagSet(node, ts9__default.default.ModifierFlags.Readonly) || ts9__default.default.isVariableDeclaration(node) && isNodeFlagSet(node.parent, ts9__default.default.NodeFlags.Const) || ts9__default.default.isCallExpression(node) && isReadonlyAssignmentDeclaration(node, typeChecker) || ts9__default.default.isEnumMember(node) || (ts9__default.default.isPropertyAssignment(node) || ts9__default.default.isShorthandPropertyAssignment(node)) && isInConstContext(node, typeChecker) )); } +function typeConstituents(type) { + return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; +} function typeIsLiteral(type) { if (isTsVersionAtLeast(5, 0)) { return type.isLiteral(); @@ -1095,12 +1101,11 @@ function typeIsLiteral(type) { ); } } -function typeParts(type) { - return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; -} -function unionTypeParts(type) { +var typeParts = typeConstituents; +function unionConstituents(type) { return isUnionType(type) ? type.types : [type]; } +var unionTypeParts = unionConstituents; function isCallback(typeChecker, param, node) { let type = typeChecker.getApparentType( typeChecker.getTypeOfSymbolAtLocation(param, node) @@ -1111,7 +1116,7 @@ function isCallback(typeChecker, param, node) { return false; } } - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (subType.getCallSignatures().length !== 0) { return true; } @@ -1145,17 +1150,17 @@ function isReadonlyPropertyFromMappedType(type, name, typeChecker) { return modifiersType && isPropertyReadonlyInType(modifiersType, name, typeChecker); } function isReadonlyPropertyIntersection(type, name, typeChecker) { - const typeParts2 = isIntersectionType(type) ? type.types : [type]; - return typeParts2.some((subType) => { - const prop = getPropertyOfType(subType, name); + const constituents = intersectionConstituents(type); + return constituents.some((constituent) => { + const prop = getPropertyOfType(constituent, name); if (prop === undefined) { return false; } if (prop.flags & ts9__default.default.SymbolFlags.Transient) { - if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(subType)) { - return subType.target.readonly; + if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(constituent)) { + return constituent.target.readonly; } - switch (isReadonlyPropertyFromMappedType(subType, name, typeChecker)) { + switch (isReadonlyPropertyFromMappedType(constituent, name, typeChecker)) { case false: return false; case true: @@ -2099,6 +2104,7 @@ exports.hasModifiers = hasModifiers; exports.hasType = hasType; exports.hasTypeArguments = hasTypeArguments; exports.includesModifier = includesModifier; +exports.intersectionConstituents = intersectionConstituents; exports.intersectionTypeParts = intersectionTypeParts; exports.isAbstractKeyword = isAbstractKeyword; exports.isAccessExpression = isAccessExpression; @@ -2269,6 +2275,8 @@ exports.isValidPropertyAccess = isValidPropertyAccess; exports.isVariableLikeDeclaration = isVariableLikeDeclaration; exports.isVoidKeyword = isVoidKeyword; exports.symbolHasReadonlyDeclaration = symbolHasReadonlyDeclaration; +exports.typeConstituents = typeConstituents; exports.typeIsLiteral = typeIsLiteral; exports.typeParts = typeParts; +exports.unionConstituents = unionConstituents; exports.unionTypeParts = unionTypeParts; diff --git a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.d.cts b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.d.cts index 217906ef6a..87946f8c92 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.d.cts +++ b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.d.cts @@ -2788,12 +2788,18 @@ declare function isUniqueESSymbolType(type: ts.Type): type is ts.UniqueESSymbolT * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * for (const constituent of intersectionConstituents(type)) { * // ... * } * ``` */ -declare function intersectionTypeParts(type: ts.Type): ts.Type[]; +declare function intersectionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link intersectionConstituents} instead. + * @category Types - Utilities + * ``` + */ +declare const intersectionTypeParts: typeof intersectionConstituents; /** * Determines whether a type is definitely falsy. This function doesn't unwrap union types. * @category Types - Utilities @@ -2876,39 +2882,44 @@ declare function isThenableType(typeChecker: ts.TypeChecker, node: ts.Expression */ declare function symbolHasReadonlyDeclaration(symbol: ts.Symbol, typeChecker: ts.TypeChecker): boolean; /** - * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for - * bigint literals. Use this function instead if you need to check for bigint - * literals in TS versions before v5.0. Otherwise, you should just use - * `type.isLiteral()`. - * @see https://github.com/microsoft/TypeScript/pull/50929 + * Get the intersection or union type parts of the given type. + * + * Note that this is a shallow collection: it only returns `type.types` or `[type]`. + * + * If the given type is not an intersection or union type, an array contain only that type will be returned. * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * if (typeIsLiteral(type)) { + * for (const constituent of typeConstituents(type)) { * // ... * } * ``` */ -declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +declare function typeConstituents(type: ts.Type): ts.Type[]; /** - * Get the intersection or union type parts of the given type. - * - * Note that this is a shallow collection: it only returns `type.types` or `[type]`. - * - * If the given type is not an intersection or union type, an array contain only that type will be returned. + * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for + * bigint literals. Use this function instead if you need to check for bigint + * literals in TS versions before v5.0. Otherwise, you should just use + * `type.isLiteral()`. + * @see https://github.com/microsoft/TypeScript/pull/50929 * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * if (typeIsLiteral(type)) { * // ... * } * ``` */ -declare function typeParts(type: ts.Type): ts.Type[]; +declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +/** + * @deprecated Use {@link typeConstituents} instead. + * @category Types - Utilities + */ +declare const typeParts: typeof typeConstituents; /** * Get the union type parts of the given type. * @@ -2918,12 +2929,17 @@ declare function typeParts(type: ts.Type): ts.Type[]; * ```ts * declare const type: ts.Type; * - * for (const typePart of unionTypeParts(type)) { + * for (const constituent of unionConstituents(type)) { * // ... * } * ``` */ -declare function unionTypeParts(type: ts.Type): ts.Type[]; +declare function unionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link unionConstituents} instead. + * @category Types - Utilities + */ +declare const unionTypeParts: typeof unionConstituents; /** * Which "domain"(s) (most commonly, type or value space) a declaration is within. @@ -3000,4 +3016,4 @@ interface UsageInfo { */ declare function collectVariableUsage(sourceFile: ts.SourceFile): Map; -export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.d.ts b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.d.ts index 217906ef6a..87946f8c92 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.d.ts +++ b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.d.ts @@ -2788,12 +2788,18 @@ declare function isUniqueESSymbolType(type: ts.Type): type is ts.UniqueESSymbolT * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * for (const constituent of intersectionConstituents(type)) { * // ... * } * ``` */ -declare function intersectionTypeParts(type: ts.Type): ts.Type[]; +declare function intersectionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link intersectionConstituents} instead. + * @category Types - Utilities + * ``` + */ +declare const intersectionTypeParts: typeof intersectionConstituents; /** * Determines whether a type is definitely falsy. This function doesn't unwrap union types. * @category Types - Utilities @@ -2876,39 +2882,44 @@ declare function isThenableType(typeChecker: ts.TypeChecker, node: ts.Expression */ declare function symbolHasReadonlyDeclaration(symbol: ts.Symbol, typeChecker: ts.TypeChecker): boolean; /** - * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for - * bigint literals. Use this function instead if you need to check for bigint - * literals in TS versions before v5.0. Otherwise, you should just use - * `type.isLiteral()`. - * @see https://github.com/microsoft/TypeScript/pull/50929 + * Get the intersection or union type parts of the given type. + * + * Note that this is a shallow collection: it only returns `type.types` or `[type]`. + * + * If the given type is not an intersection or union type, an array contain only that type will be returned. * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * if (typeIsLiteral(type)) { + * for (const constituent of typeConstituents(type)) { * // ... * } * ``` */ -declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +declare function typeConstituents(type: ts.Type): ts.Type[]; /** - * Get the intersection or union type parts of the given type. - * - * Note that this is a shallow collection: it only returns `type.types` or `[type]`. - * - * If the given type is not an intersection or union type, an array contain only that type will be returned. + * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for + * bigint literals. Use this function instead if you need to check for bigint + * literals in TS versions before v5.0. Otherwise, you should just use + * `type.isLiteral()`. + * @see https://github.com/microsoft/TypeScript/pull/50929 * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * if (typeIsLiteral(type)) { * // ... * } * ``` */ -declare function typeParts(type: ts.Type): ts.Type[]; +declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +/** + * @deprecated Use {@link typeConstituents} instead. + * @category Types - Utilities + */ +declare const typeParts: typeof typeConstituents; /** * Get the union type parts of the given type. * @@ -2918,12 +2929,17 @@ declare function typeParts(type: ts.Type): ts.Type[]; * ```ts * declare const type: ts.Type; * - * for (const typePart of unionTypeParts(type)) { + * for (const constituent of unionConstituents(type)) { * // ... * } * ``` */ -declare function unionTypeParts(type: ts.Type): ts.Type[]; +declare function unionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link unionConstituents} instead. + * @category Types - Utilities + */ +declare const unionTypeParts: typeof unionConstituents; /** * Which "domain"(s) (most commonly, type or value space) a declaration is within. @@ -3000,4 +3016,4 @@ interface UsageInfo { */ declare function collectVariableUsage(sourceFile: ts.SourceFile): Map; -export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.js b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.js index 5db5012424..cd0dc8ed07 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.js +++ b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/lib/index.js @@ -1018,9 +1018,10 @@ function isInConstContext(node, typeChecker) { } // src/types/utilities.ts -function intersectionTypeParts(type) { +function intersectionConstituents(type) { return isIntersectionType(type) ? type.types : [type]; } +var intersectionTypeParts = intersectionConstituents; function isFalsyType(type) { if (isTypeFlagSet( type, @@ -1040,7 +1041,7 @@ function isFalsyType(type) { function isPropertyReadonlyInType(type, name, typeChecker) { let seenProperty = false; let seenReadonlySignature = false; - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (getPropertyOfType(subType, name) === undefined) { const index = (isNumericPropertyName(name) ? typeChecker.getIndexInfoOfType(subType, ts9.IndexKind.Number) : undefined) ?? typeChecker.getIndexInfoOfType(subType, ts9.IndexKind.String); if (index?.isReadonly) { @@ -1058,14 +1059,16 @@ function isPropertyReadonlyInType(type, name, typeChecker) { return false; } function isThenableType(typeChecker, node, type = typeChecker.getTypeAtLocation(node)) { - for (const typePart of unionTypeParts(typeChecker.getApparentType(type))) { - const then = typePart.getProperty("then"); + for (const constituent of unionConstituents( + typeChecker.getApparentType(type) + )) { + const then = constituent.getProperty("then"); if (then === undefined) { continue; } const thenType = typeChecker.getTypeOfSymbolAtLocation(then, node); - for (const subTypePart of unionTypeParts(thenType)) { - for (const signature of subTypePart.getCallSignatures()) { + for (const subConstituent of unionConstituents(thenType)) { + for (const signature of subConstituent.getCallSignatures()) { if (signature.parameters.length !== 0 && isCallback(typeChecker, signature.parameters[0], node)) { return true; } @@ -1079,6 +1082,9 @@ function symbolHasReadonlyDeclaration(symbol, typeChecker) { (node) => isModifierFlagSet(node, ts9.ModifierFlags.Readonly) || ts9.isVariableDeclaration(node) && isNodeFlagSet(node.parent, ts9.NodeFlags.Const) || ts9.isCallExpression(node) && isReadonlyAssignmentDeclaration(node, typeChecker) || ts9.isEnumMember(node) || (ts9.isPropertyAssignment(node) || ts9.isShorthandPropertyAssignment(node)) && isInConstContext(node, typeChecker) )); } +function typeConstituents(type) { + return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; +} function typeIsLiteral(type) { if (isTsVersionAtLeast(5, 0)) { return type.isLiteral(); @@ -1089,12 +1095,11 @@ function typeIsLiteral(type) { ); } } -function typeParts(type) { - return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; -} -function unionTypeParts(type) { +var typeParts = typeConstituents; +function unionConstituents(type) { return isUnionType(type) ? type.types : [type]; } +var unionTypeParts = unionConstituents; function isCallback(typeChecker, param, node) { let type = typeChecker.getApparentType( typeChecker.getTypeOfSymbolAtLocation(param, node) @@ -1105,7 +1110,7 @@ function isCallback(typeChecker, param, node) { return false; } } - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (subType.getCallSignatures().length !== 0) { return true; } @@ -1139,17 +1144,17 @@ function isReadonlyPropertyFromMappedType(type, name, typeChecker) { return modifiersType && isPropertyReadonlyInType(modifiersType, name, typeChecker); } function isReadonlyPropertyIntersection(type, name, typeChecker) { - const typeParts2 = isIntersectionType(type) ? type.types : [type]; - return typeParts2.some((subType) => { - const prop = getPropertyOfType(subType, name); + const constituents = intersectionConstituents(type); + return constituents.some((constituent) => { + const prop = getPropertyOfType(constituent, name); if (prop === undefined) { return false; } if (prop.flags & ts9.SymbolFlags.Transient) { - if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(subType)) { - return subType.target.readonly; + if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(constituent)) { + return constituent.target.readonly; } - switch (isReadonlyPropertyFromMappedType(subType, name, typeChecker)) { + switch (isReadonlyPropertyFromMappedType(constituent, name, typeChecker)) { case false: return false; case true: @@ -2075,4 +2080,4 @@ function collectVariableUsage(sourceFile) { return new UsageWalker().getUsage(sourceFile); } -export { AccessKind, DeclarationDomain, UsageDomain, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, DeclarationDomain, UsageDomain, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/package.json b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/package.json index 3810c855d6..ec34f72b30 100644 --- a/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/package.json +++ b/node_modules/@typescript-eslint/parser/node_modules/ts-api-utils/package.json @@ -1,6 +1,6 @@ { "name": "ts-api-utils", - "version": "2.0.1", + "version": "2.1.0", "description": "Utility functions for working with TypeScript's API. Successor to the wonderful tsutils. 🛠️️", "repository": { "type": "git", @@ -37,7 +37,6 @@ "lint": "eslint . --max-warnings 0", "lint:docs": "typedoc --validation --treatValidationWarningsAsErrors", "lint:knip": "knip", - "lint:knip:production": "knip --production", "lint:md": "markdownlint \"**/*.md\" \".github/**/*.md\" --rules sentences-per-line", "lint:packages": "pnpm dedupe --check", "lint:spelling": "cspell \"**\" \".github/**/*\"", @@ -72,10 +71,10 @@ "eslint-plugin-yml": "^1.16.0", "husky": "^9.1.7", "jsonc-eslint-parser": "^2.4.0", - "knip": "^5.43.6", + "knip": "^5.46.0", "lint-staged": "^15.4.3", "markdownlint": "^0.37.4", - "markdownlint-cli": "^0.43.0", + "markdownlint-cli": "^0.44.0", "prettier": "^3.4.2", "prettier-plugin-curly": "^0.3.1", "prettier-plugin-packagejson": "^2.5.8", @@ -90,12 +89,12 @@ "typedoc-plugin-mdn-links": "^4.0.10", "typescript": "^5.7.3", "typescript-eslint": "^8.22.0", - "vitest": "^2.1.8" + "vitest": "^3.0.0" }, "peerDependencies": { "typescript": ">=4.8.4" }, - "packageManager": "pnpm@9.15.3", + "packageManager": "pnpm@9.15.9", "engines": { "node": ">=18.12" }, diff --git a/node_modules/@typescript-eslint/parser/package.json b/node_modules/@typescript-eslint/parser/package.json index abcabc05f1..4ae835ce04 100644 --- a/node_modules/@typescript-eslint/parser/package.json +++ b/node_modules/@typescript-eslint/parser/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/parser", - "version": "8.26.1", + "version": "8.28.0", "description": "An ESLint custom parser which leverages TypeScript ESTree", "files": [ "dist", @@ -54,10 +54,10 @@ "typescript": ">=4.8.4 <5.9.0" }, "dependencies": { - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4" }, "devDependencies": { diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager/package.json b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager/package.json index d6064bbec1..ad9d506f1f 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager/package.json +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/scope-manager", - "version": "8.26.1", + "version": "8.28.0", "description": "TypeScript scope analyser for ESLint", "files": [ "dist", @@ -47,12 +47,12 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1" + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0" }, "devDependencies": { "@jest/types": "29.6.3", - "@typescript-eslint/typescript-estree": "8.26.1", + "@typescript-eslint/typescript-estree": "8.28.0", "glob": "*", "jest": "29.7.0", "jest-specific-snapshot": "*", diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types/package.json b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types/package.json index 37f1ee69cb..ad6a639d9d 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types/package.json +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/types", - "version": "8.26.1", + "version": "8.28.0", "description": "Types for the TypeScript-ESTree AST spec", "files": [ "dist", diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map index 10969b36e3..e7817208d9 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/dist/convert.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,aAAa,EACb,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,EAAE,MAAM,aAAa,CAAC;AAmCtE,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,wBAAwB,GAAG,EAAE,CAAC,sBAAsB,GAC1D,OAAO,CAMT;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;;IACpB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAsZ1D,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,oCAAoC;IAe5C;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAiC9B,OAAO,CAAC,sBAAsB;IA4C9B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;;;;OAKG;IACH,OAAO,CAAC,gDAAgD;IAexD;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAmB1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;;;;;OAMG;IACH,OAAO,CAAC,SAAS;IA8BjB,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,+BAA+B;IAgDvC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,sBAAsB;IAoC9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAwhFnB,OAAO,CAAC,UAAU;IAclB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA0FlB;;;OAGG;IACH,OAAO,CAAC,UAAU;IAgFlB,UAAU,IAAI,OAAO;IAOrB;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAYhC"} \ No newline at end of file +{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,aAAa,EACb,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,EAAE,MAAM,aAAa,CAAC;AAmCtE,MAAM,WAAW,gBAAgB;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,wBAAwB,GAAG,EAAE,CAAC,sBAAsB,GAC1D,OAAO,CAMT;AAED,MAAM,WAAW,OAAO;IACtB,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,qBAAqB,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC7D;AAED,qBAAa,SAAS;;IACpB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAiB;IAEvD;;;;;OAKG;gBACS,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAsZ1D,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,oCAAoC;IAe5C;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAiC9B,OAAO,CAAC,sBAAsB;IA4C9B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAItB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;;;;OAKG;IACH,OAAO,CAAC,gDAAgD;IAexD;;;;OAIG;IACH,OAAO,CAAC,kDAAkD;IAmB1D;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;;;;;OAMG;IACH,OAAO,CAAC,SAAS;IA8BjB,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,+BAA+B;IAgDvC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,sBAAsB;IAoC9B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAczB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAyhFnB,OAAO,CAAC,UAAU;IAclB,cAAc,IAAI,QAAQ,CAAC,OAAO;IAIlC;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA0FlB;;;OAGG;IACH,OAAO,CAAC,UAAU;IAgFlB,UAAU,IAAI,OAAO;IAOrB;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAYhC"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/dist/convert.js b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/dist/convert.js index 5a876ed2eb..cc81c22611 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/dist/convert.js @@ -1402,6 +1402,7 @@ class Converter { parameter = this.convertChild(node.name); result = this.createNode(node, { type: ts_estree_1.AST_NODE_TYPES.AssignmentPattern, + range: [node.name.getStart(this.ast), node.initializer.end], decorators: [], left: parameter, optional: false, diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/package.json b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/package.json index 8645e38ab4..1801d9af08 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/package.json +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/typescript-estree", - "version": "8.26.1", + "version": "8.28.0", "description": "A parser that converts TypeScript source code into an ESTree compatible form", "files": [ "dist", @@ -55,8 +55,8 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/visitor-keys": "8.26.1", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/visitor-keys": "8.28.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts index 668d2bd1f1..e894fe1bcd 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts @@ -20,11 +20,66 @@ export interface RuleMetaDataDocs { */ url?: string; } +export interface ExternalSpecifier { + /** + * Name of the referenced plugin / rule. + */ + name?: string; + /** + * URL pointing to documentation for the plugin / rule. + */ + url?: string; +} +export interface ReplacedByInfo { + /** + * General message presented to the user, e.g. how to replace the rule + */ + message?: string; + /** + * URL to more information about this replacement in general + */ + url?: string; + /** + * Name should be "eslint" if the replacement is an ESLint core rule. Omit + * the property if the replacement is in the same plugin. + */ + plugin?: ExternalSpecifier; + /** + * Name and documentation of the replacement rule + */ + rule?: ExternalSpecifier; +} +export interface DeprecatedInfo { + /** + * General message presented to the user, e.g. for the key rule why the rule + * is deprecated or for info how to replace the rule. + */ + message?: string; + /** + * URL to more information about this deprecation in general. + */ + url?: string; + /** + * An empty array explicitly states that there is no replacement. + */ + replacedBy?: ReplacedByInfo[]; + /** + * The package version since when the rule is deprecated (should use full + * semver without a leading "v"). + */ + deprecatedSince?: string; + /** + * The estimated version when the rule is removed (probably the next major + * version). null means the rule is "frozen" (will be available but will not + * be changed). + */ + availableUntil?: string | null; +} export interface RuleMetaData { /** * True if the rule is deprecated, false otherwise */ - deprecated?: boolean; + deprecated?: boolean | DeprecatedInfo; /** * Documentation for the rule */ @@ -45,6 +100,8 @@ export interface RuleMetaData; /** * The name of the rule this rule was replaced by, if it was deprecated. + * + * @deprecated since eslint 9.21.0, in favor of `RuleMetaData#deprecated.replacedBy` */ replacedBy?: readonly string[]; /** diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map index ffcb9c8359..264b4a19f6 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Rule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,QAAQ,GAAG,WAAW,CAAC;AAExE,MAAM,WAAW,+BAA+B,CAC9C,OAAO,SAAS,SAAS,OAAO,EAAE;IAElC,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY,CAC3B,UAAU,SAAS,MAAM,EACzB,UAAU,GAAG,OAAO,EACpB,OAAO,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE;IAEvC;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,gBAAgB,CAAC;IACrC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IAChC;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACrC;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;;OAEG;IACH,MAAM,EAAE,WAAW,GAAG,SAAS,WAAW,EAAE,CAAC;IAC7C;;;;;OAKG;IACH,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,YAAY,CAAC;IAE1C;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB,CACnC,UAAU,SAAS,MAAM,EACzB,UAAU,GAAG,OAAO,EACpB,OAAO,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE,CACvC,SAAQ,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC;IACrD;;OAEG;IACH,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAAC;CACrC;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,eAAe,CACb,WAAW,EAAE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,EAC3C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAEX,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAExE,gBAAgB,CACd,WAAW,EAAE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,EAC3C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAEX,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAEzE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC;IAE7D,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;IAEjD,WAAW,CACT,WAAW,EAAE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,EAC3C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAEX,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACrE;AAED,MAAM,WAAW,0BAA0B,CAAC,UAAU,SAAS,MAAM,CACnE,SAAQ,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IACrD,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC;CACjC;AAED,MAAM,MAAM,iBAAiB,GAAG,CAC9B,KAAK,EAAE,SAAS,KACb,gBAAgB,CAAC,OAAO,CAAC,GAAG,SAAS,OAAO,EAAE,GAAG,OAAO,GAAG,IAAI,CAAC;AAErE,MAAM,MAAM,qBAAqB,CAAC,UAAU,SAAS,MAAM,IACzD,0BAA0B,CAAC,UAAU,CAAC,EAAE,CAAC;AAE3C,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAE5E,UAAU,oBAAoB,CAAC,UAAU,SAAS,MAAM;IACtD;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,2BAA2B,CAAC;IAC5C;;OAEG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACxC;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;CAIhC;AACD,UAAU,8BAA8B,CAAC,UAAU,SAAS,MAAM,CAChE,SAAQ,oBAAoB,CAAC,UAAU,CAAC;IACxC;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC;CACvE;AAED,UAAU,+BAA+B;IACvC;;OAEG;IACH,QAAQ,CAAC,GAAG,CAAC,EACT,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAC3B,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACtC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC;CAC/C;AACD,UAAU,uBAAuB;IAC/B;;OAEG;IACH,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;CACtE;AAED,MAAM,MAAM,gBAAgB,CAAC,UAAU,SAAS,MAAM,IAAI,CACtD,uBAAuB,GACvB,+BAA+B,CAClC,GACC,8BAA8B,CAAC,UAAU,CAAC,CAAC;AAE7C;;;GAGG;AAEH,MAAM,WAAW,2BAA2B;IAC1C,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,WAAW,CAC1B,UAAU,SAAS,MAAM,EACzB,OAAO,SAAS,SAAS,OAAO,EAAE;IAElC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,eAAe,EAAE,UAAU,CAAC,eAAe,CAAC;IAC5C;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC;IACpC;;OAEG;IACH,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B;;;;OAIG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;OAGG;IACH,QAAQ,EAAE,2BAA2B,CAAC;IAItC;;;;;;OAMG;IACH,YAAY,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEhC;;;;;OAKG;IACH,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAG,SAAS,KAAK,CAAC,QAAQ,EAAE,CAAC;IAErE;;;;OAIG;IACH,MAAM,IAAI,MAAM,CAAC;IAEjB;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,WAAW,IAAI,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,mBAAmB,IAAI,MAAM,CAAC;IAE9B;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;;;;OAKG;IACH,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC;IAExB;;;;;OAKG;IACH,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC;IAEtC;;;OAGG;IACH,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAEjC;;;;;OAKG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAE1C;;OAEG;IACH,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;CACxD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,QAAQ;IACvB,uDAAuD;IACvD,cAAc,EAAE,QAAQ,EAAE,CAAC;IAE3B;;;;OAIG;IACH,eAAe,EAAE,eAAe,EAAE,CAAC;IAEnC,kEAAkE;IAClE,aAAa,EAAE,eAAe,EAAE,CAAC;IAEjC;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX,cAAc,EAAE,eAAe,CAAC;IAEhC,uDAAuD;IACvD,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAEpC,qDAAqD;IACrD,cAAc,EAAE,eAAe,EAAE,CAAC;IAElC,wDAAwD;IACxD,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;OAGG;IACH,YAAY,EAAE,eAAe,EAAE,CAAC;IAEhC;;;OAGG;IACH,YAAY,EAAE,eAAe,EAAE,CAAC;IAEhC;;;OAGG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GACxB,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,GACnD,CAAC,CACC,WAAW,EAAE,eAAe,EAC5B,SAAS,EAAE,eAAe,EAC1B,IAAI,EAAE,QAAQ,CAAC,IAAI,KAChB,IAAI,CAAC,GACV,CAAC,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAI9D,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,QAAQ,CAAC,eAAe,GAAG,KAAK,IAAI,CACrE,IAAI,EAAE,CAAC,KACJ,IAAI,CAAC;AAEV,UAAU,yBAAyB;IACjC,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,uBAAuB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IACzE,oBAAoB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IACnE,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,SAAS,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC7C,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,qBAAqB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IACrE,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,SAAS,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC7C,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,oBAAoB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IACnE,wBAAwB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IAC3E,sBAAsB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACvE,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,UAAU,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/C,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,sBAAsB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACvE,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,wBAAwB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IAC3E,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,UAAU,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/C,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,sBAAsB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACvE,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,OAAO,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,OAAO,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzC,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,OAAO,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3C,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,KAAK,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/C,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,wBAAwB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;IAC3E,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,0BAA0B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IAC/E,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,0BAA0B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IAC/E,4BAA4B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;IACnF,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,0BAA0B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IAC/E,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,+BAA+B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IACzF,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,6BAA6B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;IACrF,UAAU,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/C,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,yBAAyB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAC7E,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,yBAAyB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAC7E,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,yBAAyB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IAC7E,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,sBAAsB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACvE,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,YAAY,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACnD,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,4BAA4B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;IACnF,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,iBAAiB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,UAAU,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/C,qBAAqB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IACrE,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,qBAAqB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IACrE,UAAU,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/C,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,sBAAsB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACvE,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,0BAA0B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IAC/E,4BAA4B,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;IACnF,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,WAAW,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACzD,gBAAgB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC3D,mBAAmB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACjE,kBAAkB,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC/D,cAAc,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvD,aAAa,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IACrD,eAAe,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;CAC1D;AACD,KAAK,yBAAyB,GAAG;KAC9B,CAAC,IAAI,MAAM,yBAAyB,IAAI,GAAG,CAAC,OAAO,GAAG,yBAAyB,CAAC,CAAC,CAAC;CACpF,CAAC;AACF,KAAK,4BAA4B,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC,CAAC;AAG7E,MAAM,WAAW,qBAAqB;CAuCrC;AAED,MAAM,MAAM,YAAY,GAAG,yBAAyB,GAClD,4BAA4B,GAC5B,yBAAyB,CAAC;AAE5B,MAAM,WAAW,UAAU,CACzB,UAAU,SAAS,MAAM,EACzB,OAAO,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE,EACvC,IAAI,GAAG,OAAO,EAEd,oBAAoB,SAAS,YAAY,GAAG,YAAY;IAExD;;;OAGG;IACH,MAAM,CACJ,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,GAClD,oBAAoB,CAAC;IAExB;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;CAC/C;AAED,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAC,CAAC;AAEnE,MAAM,WAAW,sBAAsB,CACrC,UAAU,SAAS,MAAM,EACzB,OAAO,SAAS,SAAS,OAAO,EAAE,GAAG,EAAE,EACvC,IAAI,GAAG,OAAO,EAEd,oBAAoB,SAAS,YAAY,GAAG,YAAY,CACxD,SAAQ,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC;IACnE;;OAEG;IACH,IAAI,EAAE,oBAAoB,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;CACvD;AAED,MAAM,MAAM,yBAAyB,GAAG,sBAAsB,CAC5D,MAAM,EACN,OAAO,EAAE,CACV,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mBAAmB,GAE3B;IACE,MAAM,EAAE,uBAAuB,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,GACD,uBAAuB,CAAC;AAM5B,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,EAAE,GAAG,KAAK,MAAM,CAC5D,MAAM,EAON,QAAQ,GAAG,SAAS,CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAC5B,UAAU,SAAS,MAAM,GAAG,KAAK,EACjC,OAAO,SAAS,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,IAC5C,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,KAAK,YAAY,CAAC;AAC1E,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CACpD,MAAM,EACN,SAAS,OAAO,EAAE,CACnB,CAAC"} \ No newline at end of file +{"version":3,"file":"Rule.d.ts","sourceRoot":"","sources":["../../src/ts-eslint/Rule.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/package.json b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/package.json index 76add92ebc..3af6d8fd4f 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/package.json +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/utils", - "version": "8.26.1", + "version": "8.28.0", "description": "Utilities for working with TypeScript + ESLint together", "files": [ "dist", @@ -65,9 +65,9 @@ }, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.26.1", - "@typescript-eslint/types": "8.26.1", - "@typescript-eslint/typescript-estree": "8.26.1" + "@typescript-eslint/scope-manager": "8.28.0", + "@typescript-eslint/types": "8.28.0", + "@typescript-eslint/typescript-estree": "8.28.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys/package.json b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys/package.json index 7a8b445eed..02602e8cdc 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys/package.json +++ b/node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/visitor-keys", - "version": "8.26.1", + "version": "8.28.0", "description": "Visitor keys used to help traverse the TypeScript-ESTree AST", "files": [ "dist", @@ -48,7 +48,7 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/types": "8.26.1", + "@typescript-eslint/types": "8.28.0", "eslint-visitor-keys": "^4.2.0" }, "devDependencies": { diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/README.md b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/README.md index b2c13ef845..2586c9993f 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/README.md +++ b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/README.md @@ -9,7 +9,7 @@

-All Contributors: 8 👪 +All Contributors: 10 👪 🤝 Code of Conduct: Kept @@ -67,6 +67,8 @@ Many thanks to [@ajafff](https://github.com/ajafff) for creating the original [` Rebecca Stevens
Rebecca Stevens

🐛 💻 📖 📆 ⚠️ 🔧 🚇 🚧 🤔 + Ronen Amiel
Ronen Amiel

⚠️ + fisker Cheung
fisker Cheung

💻 diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.cjs b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.cjs index 4b7427ebdb..60ebd6ff97 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.cjs +++ b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.cjs @@ -1024,9 +1024,10 @@ function isInConstContext(node, typeChecker) { } // src/types/utilities.ts -function intersectionTypeParts(type) { +function intersectionConstituents(type) { return isIntersectionType(type) ? type.types : [type]; } +var intersectionTypeParts = intersectionConstituents; function isFalsyType(type) { if (isTypeFlagSet( type, @@ -1046,7 +1047,7 @@ function isFalsyType(type) { function isPropertyReadonlyInType(type, name, typeChecker) { let seenProperty = false; let seenReadonlySignature = false; - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (getPropertyOfType(subType, name) === undefined) { const index = (isNumericPropertyName(name) ? typeChecker.getIndexInfoOfType(subType, ts9__default.default.IndexKind.Number) : undefined) ?? typeChecker.getIndexInfoOfType(subType, ts9__default.default.IndexKind.String); if (index?.isReadonly) { @@ -1064,14 +1065,16 @@ function isPropertyReadonlyInType(type, name, typeChecker) { return false; } function isThenableType(typeChecker, node, type = typeChecker.getTypeAtLocation(node)) { - for (const typePart of unionTypeParts(typeChecker.getApparentType(type))) { - const then = typePart.getProperty("then"); + for (const constituent of unionConstituents( + typeChecker.getApparentType(type) + )) { + const then = constituent.getProperty("then"); if (then === undefined) { continue; } const thenType = typeChecker.getTypeOfSymbolAtLocation(then, node); - for (const subTypePart of unionTypeParts(thenType)) { - for (const signature of subTypePart.getCallSignatures()) { + for (const subConstituent of unionConstituents(thenType)) { + for (const signature of subConstituent.getCallSignatures()) { if (signature.parameters.length !== 0 && isCallback(typeChecker, signature.parameters[0], node)) { return true; } @@ -1085,6 +1088,9 @@ function symbolHasReadonlyDeclaration(symbol, typeChecker) { (node) => isModifierFlagSet(node, ts9__default.default.ModifierFlags.Readonly) || ts9__default.default.isVariableDeclaration(node) && isNodeFlagSet(node.parent, ts9__default.default.NodeFlags.Const) || ts9__default.default.isCallExpression(node) && isReadonlyAssignmentDeclaration(node, typeChecker) || ts9__default.default.isEnumMember(node) || (ts9__default.default.isPropertyAssignment(node) || ts9__default.default.isShorthandPropertyAssignment(node)) && isInConstContext(node, typeChecker) )); } +function typeConstituents(type) { + return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; +} function typeIsLiteral(type) { if (isTsVersionAtLeast(5, 0)) { return type.isLiteral(); @@ -1095,12 +1101,11 @@ function typeIsLiteral(type) { ); } } -function typeParts(type) { - return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; -} -function unionTypeParts(type) { +var typeParts = typeConstituents; +function unionConstituents(type) { return isUnionType(type) ? type.types : [type]; } +var unionTypeParts = unionConstituents; function isCallback(typeChecker, param, node) { let type = typeChecker.getApparentType( typeChecker.getTypeOfSymbolAtLocation(param, node) @@ -1111,7 +1116,7 @@ function isCallback(typeChecker, param, node) { return false; } } - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (subType.getCallSignatures().length !== 0) { return true; } @@ -1145,17 +1150,17 @@ function isReadonlyPropertyFromMappedType(type, name, typeChecker) { return modifiersType && isPropertyReadonlyInType(modifiersType, name, typeChecker); } function isReadonlyPropertyIntersection(type, name, typeChecker) { - const typeParts2 = isIntersectionType(type) ? type.types : [type]; - return typeParts2.some((subType) => { - const prop = getPropertyOfType(subType, name); + const constituents = intersectionConstituents(type); + return constituents.some((constituent) => { + const prop = getPropertyOfType(constituent, name); if (prop === undefined) { return false; } if (prop.flags & ts9__default.default.SymbolFlags.Transient) { - if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(subType)) { - return subType.target.readonly; + if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(constituent)) { + return constituent.target.readonly; } - switch (isReadonlyPropertyFromMappedType(subType, name, typeChecker)) { + switch (isReadonlyPropertyFromMappedType(constituent, name, typeChecker)) { case false: return false; case true: @@ -2099,6 +2104,7 @@ exports.hasModifiers = hasModifiers; exports.hasType = hasType; exports.hasTypeArguments = hasTypeArguments; exports.includesModifier = includesModifier; +exports.intersectionConstituents = intersectionConstituents; exports.intersectionTypeParts = intersectionTypeParts; exports.isAbstractKeyword = isAbstractKeyword; exports.isAccessExpression = isAccessExpression; @@ -2269,6 +2275,8 @@ exports.isValidPropertyAccess = isValidPropertyAccess; exports.isVariableLikeDeclaration = isVariableLikeDeclaration; exports.isVoidKeyword = isVoidKeyword; exports.symbolHasReadonlyDeclaration = symbolHasReadonlyDeclaration; +exports.typeConstituents = typeConstituents; exports.typeIsLiteral = typeIsLiteral; exports.typeParts = typeParts; +exports.unionConstituents = unionConstituents; exports.unionTypeParts = unionTypeParts; diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.d.cts b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.d.cts index 217906ef6a..87946f8c92 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.d.cts +++ b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.d.cts @@ -2788,12 +2788,18 @@ declare function isUniqueESSymbolType(type: ts.Type): type is ts.UniqueESSymbolT * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * for (const constituent of intersectionConstituents(type)) { * // ... * } * ``` */ -declare function intersectionTypeParts(type: ts.Type): ts.Type[]; +declare function intersectionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link intersectionConstituents} instead. + * @category Types - Utilities + * ``` + */ +declare const intersectionTypeParts: typeof intersectionConstituents; /** * Determines whether a type is definitely falsy. This function doesn't unwrap union types. * @category Types - Utilities @@ -2876,39 +2882,44 @@ declare function isThenableType(typeChecker: ts.TypeChecker, node: ts.Expression */ declare function symbolHasReadonlyDeclaration(symbol: ts.Symbol, typeChecker: ts.TypeChecker): boolean; /** - * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for - * bigint literals. Use this function instead if you need to check for bigint - * literals in TS versions before v5.0. Otherwise, you should just use - * `type.isLiteral()`. - * @see https://github.com/microsoft/TypeScript/pull/50929 + * Get the intersection or union type parts of the given type. + * + * Note that this is a shallow collection: it only returns `type.types` or `[type]`. + * + * If the given type is not an intersection or union type, an array contain only that type will be returned. * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * if (typeIsLiteral(type)) { + * for (const constituent of typeConstituents(type)) { * // ... * } * ``` */ -declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +declare function typeConstituents(type: ts.Type): ts.Type[]; /** - * Get the intersection or union type parts of the given type. - * - * Note that this is a shallow collection: it only returns `type.types` or `[type]`. - * - * If the given type is not an intersection or union type, an array contain only that type will be returned. + * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for + * bigint literals. Use this function instead if you need to check for bigint + * literals in TS versions before v5.0. Otherwise, you should just use + * `type.isLiteral()`. + * @see https://github.com/microsoft/TypeScript/pull/50929 * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * if (typeIsLiteral(type)) { * // ... * } * ``` */ -declare function typeParts(type: ts.Type): ts.Type[]; +declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +/** + * @deprecated Use {@link typeConstituents} instead. + * @category Types - Utilities + */ +declare const typeParts: typeof typeConstituents; /** * Get the union type parts of the given type. * @@ -2918,12 +2929,17 @@ declare function typeParts(type: ts.Type): ts.Type[]; * ```ts * declare const type: ts.Type; * - * for (const typePart of unionTypeParts(type)) { + * for (const constituent of unionConstituents(type)) { * // ... * } * ``` */ -declare function unionTypeParts(type: ts.Type): ts.Type[]; +declare function unionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link unionConstituents} instead. + * @category Types - Utilities + */ +declare const unionTypeParts: typeof unionConstituents; /** * Which "domain"(s) (most commonly, type or value space) a declaration is within. @@ -3000,4 +3016,4 @@ interface UsageInfo { */ declare function collectVariableUsage(sourceFile: ts.SourceFile): Map; -export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.d.ts b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.d.ts index 217906ef6a..87946f8c92 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.d.ts +++ b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.d.ts @@ -2788,12 +2788,18 @@ declare function isUniqueESSymbolType(type: ts.Type): type is ts.UniqueESSymbolT * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * for (const constituent of intersectionConstituents(type)) { * // ... * } * ``` */ -declare function intersectionTypeParts(type: ts.Type): ts.Type[]; +declare function intersectionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link intersectionConstituents} instead. + * @category Types - Utilities + * ``` + */ +declare const intersectionTypeParts: typeof intersectionConstituents; /** * Determines whether a type is definitely falsy. This function doesn't unwrap union types. * @category Types - Utilities @@ -2876,39 +2882,44 @@ declare function isThenableType(typeChecker: ts.TypeChecker, node: ts.Expression */ declare function symbolHasReadonlyDeclaration(symbol: ts.Symbol, typeChecker: ts.TypeChecker): boolean; /** - * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for - * bigint literals. Use this function instead if you need to check for bigint - * literals in TS versions before v5.0. Otherwise, you should just use - * `type.isLiteral()`. - * @see https://github.com/microsoft/TypeScript/pull/50929 + * Get the intersection or union type parts of the given type. + * + * Note that this is a shallow collection: it only returns `type.types` or `[type]`. + * + * If the given type is not an intersection or union type, an array contain only that type will be returned. * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * if (typeIsLiteral(type)) { + * for (const constituent of typeConstituents(type)) { * // ... * } * ``` */ -declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +declare function typeConstituents(type: ts.Type): ts.Type[]; /** - * Get the intersection or union type parts of the given type. - * - * Note that this is a shallow collection: it only returns `type.types` or `[type]`. - * - * If the given type is not an intersection or union type, an array contain only that type will be returned. + * TS's `type.isLiteral()` is bugged before TS v5.0 and won't return `true` for + * bigint literals. Use this function instead if you need to check for bigint + * literals in TS versions before v5.0. Otherwise, you should just use + * `type.isLiteral()`. + * @see https://github.com/microsoft/TypeScript/pull/50929 * @category Types - Utilities * @example * ```ts * declare const type: ts.Type; * - * for (const typePart of intersectionTypeParts(type)) { + * if (typeIsLiteral(type)) { * // ... * } * ``` */ -declare function typeParts(type: ts.Type): ts.Type[]; +declare function typeIsLiteral(type: ts.Type): type is ts.LiteralType; +/** + * @deprecated Use {@link typeConstituents} instead. + * @category Types - Utilities + */ +declare const typeParts: typeof typeConstituents; /** * Get the union type parts of the given type. * @@ -2918,12 +2929,17 @@ declare function typeParts(type: ts.Type): ts.Type[]; * ```ts * declare const type: ts.Type; * - * for (const typePart of unionTypeParts(type)) { + * for (const constituent of unionConstituents(type)) { * // ... * } * ``` */ -declare function unionTypeParts(type: ts.Type): ts.Type[]; +declare function unionConstituents(type: ts.Type): ts.Type[]; +/** + * @deprecated Use {@link unionConstituents} instead. + * @category Types - Utilities + */ +declare const unionTypeParts: typeof unionConstituents; /** * Which "domain"(s) (most commonly, type or value space) a declaration is within. @@ -3000,4 +3016,4 @@ interface UsageInfo { */ declare function collectVariableUsage(sourceFile: ts.SourceFile): Map; -export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, type AnyKeyword, type BigIntKeyword, type BooleanCompilerOptions, type BooleanKeyword, type BooleanLiteralType, type ConstAssertionExpression, type ConstAssertionIdentifier, DeclarationDomain, type FalseKeyword, type FalseLiteralType, type ForEachCommentCallback, type ForEachTokenCallback, type FreshableIntrinsicType, type ImportKeyword, type IntrinsicAnyType, type IntrinsicBigIntType, type IntrinsicBooleanType, type IntrinsicESSymbolType, type IntrinsicErrorType, type IntrinsicNeverType, type IntrinsicNonPrimitiveType, type IntrinsicNullType, type IntrinsicNumberType, type IntrinsicStringType, type IntrinsicType, type IntrinsicUndefinedType, type IntrinsicUnknownType, type IntrinsicVoidType, type NamedDeclarationWithName, type NeverKeyword, type NullKeyword, type NumberKeyword, type NumericOrStringLikeLiteral, type ObjectKeyword, type StrictCompilerOption, type StringKeyword, type SuperKeyword, type SymbolKeyword, type ThisKeyword, type TrueKeyword, type TrueLiteralType, type UndefinedKeyword, type UnknownKeyword, type UnknownLiteralType, UsageDomain, type UsageInfo as VariableInfo, type Usage as VariableUse, type VoidKeyword, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.js b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.js index 5db5012424..cd0dc8ed07 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.js +++ b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/lib/index.js @@ -1018,9 +1018,10 @@ function isInConstContext(node, typeChecker) { } // src/types/utilities.ts -function intersectionTypeParts(type) { +function intersectionConstituents(type) { return isIntersectionType(type) ? type.types : [type]; } +var intersectionTypeParts = intersectionConstituents; function isFalsyType(type) { if (isTypeFlagSet( type, @@ -1040,7 +1041,7 @@ function isFalsyType(type) { function isPropertyReadonlyInType(type, name, typeChecker) { let seenProperty = false; let seenReadonlySignature = false; - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (getPropertyOfType(subType, name) === undefined) { const index = (isNumericPropertyName(name) ? typeChecker.getIndexInfoOfType(subType, ts9.IndexKind.Number) : undefined) ?? typeChecker.getIndexInfoOfType(subType, ts9.IndexKind.String); if (index?.isReadonly) { @@ -1058,14 +1059,16 @@ function isPropertyReadonlyInType(type, name, typeChecker) { return false; } function isThenableType(typeChecker, node, type = typeChecker.getTypeAtLocation(node)) { - for (const typePart of unionTypeParts(typeChecker.getApparentType(type))) { - const then = typePart.getProperty("then"); + for (const constituent of unionConstituents( + typeChecker.getApparentType(type) + )) { + const then = constituent.getProperty("then"); if (then === undefined) { continue; } const thenType = typeChecker.getTypeOfSymbolAtLocation(then, node); - for (const subTypePart of unionTypeParts(thenType)) { - for (const signature of subTypePart.getCallSignatures()) { + for (const subConstituent of unionConstituents(thenType)) { + for (const signature of subConstituent.getCallSignatures()) { if (signature.parameters.length !== 0 && isCallback(typeChecker, signature.parameters[0], node)) { return true; } @@ -1079,6 +1082,9 @@ function symbolHasReadonlyDeclaration(symbol, typeChecker) { (node) => isModifierFlagSet(node, ts9.ModifierFlags.Readonly) || ts9.isVariableDeclaration(node) && isNodeFlagSet(node.parent, ts9.NodeFlags.Const) || ts9.isCallExpression(node) && isReadonlyAssignmentDeclaration(node, typeChecker) || ts9.isEnumMember(node) || (ts9.isPropertyAssignment(node) || ts9.isShorthandPropertyAssignment(node)) && isInConstContext(node, typeChecker) )); } +function typeConstituents(type) { + return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; +} function typeIsLiteral(type) { if (isTsVersionAtLeast(5, 0)) { return type.isLiteral(); @@ -1089,12 +1095,11 @@ function typeIsLiteral(type) { ); } } -function typeParts(type) { - return isIntersectionType(type) || isUnionType(type) ? type.types : [type]; -} -function unionTypeParts(type) { +var typeParts = typeConstituents; +function unionConstituents(type) { return isUnionType(type) ? type.types : [type]; } +var unionTypeParts = unionConstituents; function isCallback(typeChecker, param, node) { let type = typeChecker.getApparentType( typeChecker.getTypeOfSymbolAtLocation(param, node) @@ -1105,7 +1110,7 @@ function isCallback(typeChecker, param, node) { return false; } } - for (const subType of unionTypeParts(type)) { + for (const subType of unionConstituents(type)) { if (subType.getCallSignatures().length !== 0) { return true; } @@ -1139,17 +1144,17 @@ function isReadonlyPropertyFromMappedType(type, name, typeChecker) { return modifiersType && isPropertyReadonlyInType(modifiersType, name, typeChecker); } function isReadonlyPropertyIntersection(type, name, typeChecker) { - const typeParts2 = isIntersectionType(type) ? type.types : [type]; - return typeParts2.some((subType) => { - const prop = getPropertyOfType(subType, name); + const constituents = intersectionConstituents(type); + return constituents.some((constituent) => { + const prop = getPropertyOfType(constituent, name); if (prop === undefined) { return false; } if (prop.flags & ts9.SymbolFlags.Transient) { - if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(subType)) { - return subType.target.readonly; + if (/^(?:[1-9]\d*|0)$/.test(name) && isTupleTypeReference(constituent)) { + return constituent.target.readonly; } - switch (isReadonlyPropertyFromMappedType(subType, name, typeChecker)) { + switch (isReadonlyPropertyFromMappedType(constituent, name, typeChecker)) { case false: return false; case true: @@ -2075,4 +2080,4 @@ function collectVariableUsage(sourceFile) { return new UsageWalker().getUsage(sourceFile); } -export { AccessKind, DeclarationDomain, UsageDomain, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeIsLiteral, typeParts, unionTypeParts }; +export { AccessKind, DeclarationDomain, UsageDomain, collectVariableUsage, forEachComment, forEachToken, getAccessKind, getCallSignaturesOfType, getPropertyOfType, getWellKnownSymbolPropertyOfType, hasDecorators, hasExpressionInitializer, hasInitializer, hasJSDoc, hasModifiers, hasType, hasTypeArguments, includesModifier, intersectionConstituents, intersectionTypeParts, isAbstractKeyword, isAccessExpression, isAccessibilityModifier, isAccessorDeclaration, isAccessorKeyword, isAnyKeyword, isArrayBindingElement, isArrayBindingOrAssignmentPattern, isAssertKeyword, isAssertsKeyword, isAssignmentKind, isAssignmentPattern, isAsyncKeyword, isAwaitKeyword, isBigIntKeyword, isBigIntLiteralType, isBindingOrAssignmentElementRestIndicator, isBindingOrAssignmentElementTarget, isBindingOrAssignmentPattern, isBindingPattern, isBlockLike, isBooleanKeyword, isBooleanLiteral, isBooleanLiteralType, isClassLikeDeclaration, isClassMemberModifier, isColonToken, isCompilerOptionEnabled, isConditionalType, isConstAssertionExpression, isConstKeyword, isDeclarationName, isDeclarationWithTypeParameterChildren, isDeclarationWithTypeParameters, isDeclareKeyword, isDefaultKeyword, isDestructuringPattern, isDotToken, isEndOfFileToken, isEntityNameExpression, isEntityNameOrEntityNameExpression, isEnumType, isEqualsGreaterThanToken, isEqualsToken, isEvolvingArrayType, isExclamationToken, isExportKeyword, isFalseKeyword, isFalseLiteral, isFalseLiteralType, isFalsyType, isForInOrOfStatement, isFreshableIntrinsicType, isFreshableType, isFunctionLikeDeclaration, isFunctionScopeBoundary, isImportExpression, isImportKeyword, isInKeyword, isIndexType, isIndexedAccessType, isInstantiableType, isIntersectionType, isIntrinsicAnyType, isIntrinsicBigIntType, isIntrinsicBooleanType, isIntrinsicESSymbolType, isIntrinsicErrorType, isIntrinsicNeverType, isIntrinsicNonPrimitiveType, isIntrinsicNullType, isIntrinsicNumberType, isIntrinsicStringType, isIntrinsicType, isIntrinsicUndefinedType, isIntrinsicUnknownType, isIntrinsicVoidType, isIterationStatement, isJSDocComment, isJSDocNamespaceBody, isJSDocNamespaceDeclaration, isJSDocText, isJSDocTypeReferencingNode, isJsonMinusNumericLiteral, isJsonObjectExpression, isJsxAttributeLike, isJsxAttributeValue, isJsxChild, isJsxTagNameExpression, isJsxTagNamePropertyAccess, isLiteralToken, isLiteralType, isModifierFlagSet, isModuleBody, isModuleName, isModuleReference, isNamedDeclarationWithName, isNamedImportBindings, isNamedImportsOrExports, isNamespaceBody, isNamespaceDeclaration, isNeverKeyword, isNodeFlagSet, isNullKeyword, isNullLiteral, isNumberKeyword, isNumberLiteralType, isNumericOrStringLikeLiteral, isNumericPropertyName, isObjectBindingOrAssignmentElement, isObjectBindingOrAssignmentPattern, isObjectFlagSet, isObjectKeyword, isObjectType, isObjectTypeDeclaration, isOutKeyword, isOverrideKeyword, isParameterPropertyModifier, isPrivateKeyword, isPropertyAccessEntityNameExpression, isPropertyNameLiteral, isPropertyReadonlyInType, isProtectedKeyword, isPseudoLiteralToken, isPublicKeyword, isQuestionDotToken, isQuestionToken, isReadonlyKeyword, isSignatureDeclaration, isStaticKeyword, isStrictCompilerOptionEnabled, isStringKeyword, isStringLiteralType, isStringMappingType, isSubstitutionType, isSuperElementAccessExpression, isSuperExpression, isSuperKeyword, isSuperProperty, isSuperPropertyAccessExpression, isSymbolFlagSet, isSymbolKeyword, isSyntaxList, isTemplateLiteralType, isThenableType, isThisExpression, isThisKeyword, isTransientSymbolLinksFlagSet, isTrueKeyword, isTrueLiteral, isTrueLiteralType, isTupleType, isTupleTypeReference, isTypeFlagSet, isTypeOnlyCompatibleAliasDeclaration, isTypeParameter, isTypeReference, isTypeReferenceType, isTypeVariable, isUndefinedKeyword, isUnionOrIntersectionType, isUnionOrIntersectionTypeNode, isUnionType, isUniqueESSymbolType, isUnknownKeyword, isValidPropertyAccess, isVariableLikeDeclaration, isVoidKeyword, symbolHasReadonlyDeclaration, typeConstituents, typeIsLiteral, typeParts, unionConstituents, unionTypeParts }; diff --git a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/package.json b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/package.json index 3810c855d6..ec34f72b30 100644 --- a/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/package.json +++ b/node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils/package.json @@ -1,6 +1,6 @@ { "name": "ts-api-utils", - "version": "2.0.1", + "version": "2.1.0", "description": "Utility functions for working with TypeScript's API. Successor to the wonderful tsutils. 🛠️️", "repository": { "type": "git", @@ -37,7 +37,6 @@ "lint": "eslint . --max-warnings 0", "lint:docs": "typedoc --validation --treatValidationWarningsAsErrors", "lint:knip": "knip", - "lint:knip:production": "knip --production", "lint:md": "markdownlint \"**/*.md\" \".github/**/*.md\" --rules sentences-per-line", "lint:packages": "pnpm dedupe --check", "lint:spelling": "cspell \"**\" \".github/**/*\"", @@ -72,10 +71,10 @@ "eslint-plugin-yml": "^1.16.0", "husky": "^9.1.7", "jsonc-eslint-parser": "^2.4.0", - "knip": "^5.43.6", + "knip": "^5.46.0", "lint-staged": "^15.4.3", "markdownlint": "^0.37.4", - "markdownlint-cli": "^0.43.0", + "markdownlint-cli": "^0.44.0", "prettier": "^3.4.2", "prettier-plugin-curly": "^0.3.1", "prettier-plugin-packagejson": "^2.5.8", @@ -90,12 +89,12 @@ "typedoc-plugin-mdn-links": "^4.0.10", "typescript": "^5.7.3", "typescript-eslint": "^8.22.0", - "vitest": "^2.1.8" + "vitest": "^3.0.0" }, "peerDependencies": { "typescript": ">=4.8.4" }, - "packageManager": "pnpm@9.15.3", + "packageManager": "pnpm@9.15.9", "engines": { "node": ">=18.12" }, diff --git a/node_modules/@typescript-eslint/type-utils/package.json b/node_modules/@typescript-eslint/type-utils/package.json index 822e23e84b..64d49b9d67 100644 --- a/node_modules/@typescript-eslint/type-utils/package.json +++ b/node_modules/@typescript-eslint/type-utils/package.json @@ -1,6 +1,6 @@ { "name": "@typescript-eslint/type-utils", - "version": "8.26.1", + "version": "8.28.0", "description": "Type utilities for working with TypeScript + ESLint together", "files": [ "dist", @@ -47,8 +47,8 @@ "check-types": "npx nx typecheck" }, "dependencies": { - "@typescript-eslint/typescript-estree": "8.26.1", - "@typescript-eslint/utils": "8.26.1", + "@typescript-eslint/typescript-estree": "8.28.0", + "@typescript-eslint/utils": "8.28.0", "debug": "^4.3.4", "ts-api-utils": "^2.0.1" }, @@ -58,7 +58,7 @@ }, "devDependencies": { "@jest/types": "29.6.3", - "@typescript-eslint/parser": "8.26.1", + "@typescript-eslint/parser": "8.28.0", "ajv": "^6.12.6", "downlevel-dts": "*", "jest": "29.7.0", diff --git a/node_modules/@unrs/rspack-resolver-binding-darwin-arm64/README.md b/node_modules/@unrs/rspack-resolver-binding-darwin-arm64/README.md new file mode 100644 index 0000000000..897d586fcf --- /dev/null +++ b/node_modules/@unrs/rspack-resolver-binding-darwin-arm64/README.md @@ -0,0 +1,3 @@ +# `@unrs/rspack-resolver-binding-darwin-arm64` + +This is the **aarch64-apple-darwin** binary for `@unrs/rspack-resolver-binding` diff --git a/node_modules/@unrs/rspack-resolver-binding-darwin-arm64/package.json b/node_modules/@unrs/rspack-resolver-binding-darwin-arm64/package.json new file mode 100644 index 0000000000..da3dd0c8a6 --- /dev/null +++ b/node_modules/@unrs/rspack-resolver-binding-darwin-arm64/package.json @@ -0,0 +1,25 @@ +{ + "name": "@unrs/rspack-resolver-binding-darwin-arm64", + "version": "1.2.2", + "cpu": [ + "arm64" + ], + "main": "resolver.darwin-arm64.node", + "files": [ + "resolver.darwin-arm64.node" + ], + "description": "Oxc Resolver Node API with PNP support", + "homepage": "https://github.com/unrs/rspack-resolver", + "license": "MIT", + "publishConfig": { + "registry": "https://registry.npmjs.org/", + "access": "public" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/unrs/rspack-resolver.git" + }, + "os": [ + "darwin" + ] +} \ No newline at end of file diff --git a/node_modules/@unrs/rspack-resolver-binding-darwin-arm64/resolver.darwin-arm64.node b/node_modules/@unrs/rspack-resolver-binding-darwin-arm64/resolver.darwin-arm64.node new file mode 100644 index 0000000000000000000000000000000000000000..0a1d9f16d61799f49cd11c91467c8baefc77fa85 GIT binary patch literal 2260032 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