diff --git a/CHANGELOG.md b/CHANGELOG.md index ac695276f..c368134e6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,21 @@ # rollup changelog +## 4.29.0 + +_2024-12-20_ + +### Features + +- Treat objects as truthy and always check second argument to better simplify logical expressions (#5763) + +### Pull Requests + +- [#5759](https://github.com/rollup/rollup/pull/5759): docs: add utf-8 encoding to JSON file reading (@chouchouji) +- [#5760](https://github.com/rollup/rollup/pull/5760): fix(deps): lock file maintenance minor/patch updates (@renovate[bot]) +- [#5763](https://github.com/rollup/rollup/pull/5763): fix: introduce UnknownFalsyValue for enhancing if statement tree-shaking (@TrickyPi) +- [#5766](https://github.com/rollup/rollup/pull/5766): chore(deps): update dependency @rollup/plugin-node-resolve to v16 (@renovate[bot]) +- [#5767](https://github.com/rollup/rollup/pull/5767): fix(deps): lock file maintenance minor/patch updates (@renovate[bot]) + ## 4.28.1 _2024-12-06_ diff --git a/browser/package.json b/browser/package.json index fe557175c..c14a49049 100644 --- a/browser/package.json +++ b/browser/package.json @@ -1,6 +1,6 @@ { "name": "@rollup/browser", - "version": "4.28.1", + "version": "4.29.0", "description": "Next-generation ES module bundler browser build", "main": "dist/rollup.browser.js", "module": "dist/es/rollup.browser.js", diff --git a/package-lock.json b/package-lock.json index 0dd5d04a4..b7f7c8284 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "rollup", - "version": "4.28.1", + "version": "4.29.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "rollup", - "version": "4.28.1", + "version": "4.29.0", "license": "MIT", "dependencies": { "@types/estree": "1.0.6" @@ -17,27 +17,27 @@ "devDependencies": { "@codemirror/commands": "^6.7.1", "@codemirror/lang-javascript": "^6.2.2", - "@codemirror/language": "^6.10.6", + "@codemirror/language": "^6.10.7", "@codemirror/search": "^6.5.8", "@codemirror/state": "^6.5.0", - "@codemirror/view": "^6.35.3", - "@eslint/js": "^9.16.0", + "@codemirror/view": "^6.36.0", + "@eslint/js": "^9.17.0", "@inquirer/prompts": "^7.2.0", "@jridgewell/sourcemap-codec": "^1.5.0", "@mermaid-js/mermaid-cli": "^11.4.2", "@napi-rs/cli": "^2.18.4", "@rollup/plugin-alias": "^5.1.1", "@rollup/plugin-buble": "^1.0.3", - "@rollup/plugin-commonjs": "^28.0.1", + "@rollup/plugin-commonjs": "^28.0.2", "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^15.3.0", - "@rollup/plugin-replace": "^6.0.1", + "@rollup/plugin-node-resolve": "^16.0.0", + "@rollup/plugin-replace": "^6.0.2", "@rollup/plugin-terser": "^0.4.4", - "@rollup/plugin-typescript": "^12.1.1", - "@rollup/pluginutils": "^5.1.3", - "@shikijs/vitepress-twoslash": "^1.24.1", + "@rollup/plugin-typescript": "^12.1.2", + "@rollup/pluginutils": "^5.1.4", + "@shikijs/vitepress-twoslash": "^1.24.2", "@types/mocha": "^10.0.10", - "@types/node": "^18.19.67", + "@types/node": "^18.19.68", "@types/semver": "^7.5.8", "@types/yargs-parser": "^21.0.3", "@vue/language-server": "^2.1.10", @@ -54,7 +54,7 @@ "date-time": "^4.0.0", "es5-shim": "^4.6.7", "es6-shim": "^0.35.8", - "eslint": "^9.16.0", + "eslint": "^9.17.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-unicorn": "^56.0.1", @@ -66,11 +66,11 @@ "globals": "^15.13.0", "husky": "^9.1.7", "is-reference": "^3.0.3", - "lint-staged": "^15.2.10", + "lint-staged": "^15.2.11", "locate-character": "^3.0.0", - "magic-string": "^0.30.14", + "magic-string": "^0.30.17", "mocha": "^11.0.1", - "nodemon": "^3.1.7", + "nodemon": "^3.1.9", "npm-audit-resolver": "^3.0.0-RC.0", "nyc": "^17.1.0", "pinia": "^2.3.0", @@ -91,7 +91,7 @@ "terser": "^5.37.0", "tslib": "^2.8.1", "typescript": "^5.7.2", - "typescript-eslint": "^8.18.0", + "typescript-eslint": "^8.18.1", "vite": "^6.0.3", "vitepress": "^1.5.0", "vue": "^3.5.13", @@ -157,41 +157,41 @@ } }, "node_modules/@algolia/client-abtesting": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.17.1.tgz", - "integrity": "sha512-Os/xkQbDp5A5RdGYq1yS3fF69GoBJH5FIfrkVh+fXxCSe714i1Xdl9XoXhS4xG76DGKm6EFMlUqP024qjps8cg==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.18.0.tgz", + "integrity": "sha512-DLIrAukjsSrdMNNDx1ZTks72o4RH/1kOn8Wx5zZm8nnqFexG+JzY4SANnCNEjnFQPJTTvC+KpgiNW/CP2lumng==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-analytics": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.17.1.tgz", - "integrity": "sha512-WKpGC+cUhmdm3wndIlTh8RJXoVabUH+4HrvZHC4hXtvCYojEXYeep8RZstatwSZ7Ocg6Y2u67bLw90NEINuYEw==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.18.0.tgz", + "integrity": "sha512-0VpGG2uQW+h2aejxbG8VbnMCQ9ary9/ot7OASXi6OjE0SRkYQ/+pkW+q09+IScif3pmsVVYggmlMPtAsmYWHng==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-common": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.17.1.tgz", - "integrity": "sha512-5rb5+yPIie6912riAypTSyzbE23a7UM1UpESvD8GEPI4CcWQvA9DBlkRNx9qbq/nJ5pvv8VjZjUxJj7rFkzEAA==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.18.0.tgz", + "integrity": "sha512-X1WMSC+1ve2qlMsemyTF5bIjwipOT+m99Ng1Tyl36ZjQKTa54oajBKE0BrmM8LD8jGdtukAgkUhFoYOaRbMcmQ==", "dev": true, "license": "MIT", "engines": { @@ -199,151 +199,151 @@ } }, "node_modules/@algolia/client-insights": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.17.1.tgz", - "integrity": "sha512-nb/tfwBMn209TzFv1DDTprBKt/wl5btHVKoAww9fdEVdoKK02R2KAqxe5tuXLdEzAsS+LevRyOM/YjXuLmPtjQ==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.18.0.tgz", + "integrity": "sha512-FAJRNANUOSs/FgYOJ/Njqp+YTe4TMz2GkeZtfsw1TMiA5mVNRS/nnMpxas9771aJz7KTEWvK9GwqPs0K6RMYWg==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-personalization": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.17.1.tgz", - "integrity": "sha512-JuNlZe1SdW9KbV0gcgdsiVkFfXt0mmPassdS3cBSGvZGbPB9JsHthD719k5Y6YOY4dGvw1JmC1i9CwCQHAS8hg==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.18.0.tgz", + "integrity": "sha512-I2dc94Oiwic3SEbrRp8kvTZtYpJjGtg5y5XnqubgnA15AgX59YIY8frKsFG8SOH1n2rIhUClcuDkxYQNXJLg+w==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-query-suggestions": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.17.1.tgz", - "integrity": "sha512-RBIFIv1QE3IlAikJKWTOpd6pwE4d2dY6t02iXH7r/SLXWn0HzJtsAPPeFg/OKkFvWAXt0H7In2/Mp7a1/Dy2pw==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.18.0.tgz", + "integrity": "sha512-x6XKIQgKFTgK/bMasXhghoEjHhmgoP61pFPb9+TaUJ32aKOGc65b12usiGJ9A84yS73UDkXS452NjyP50Knh/g==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/client-search": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.17.1.tgz", - "integrity": "sha512-bd5JBUOP71kPsxwDcvOxqtqXXVo/706NFifZ/O5Rx5GB8ZNVAhg4l7aGoT6jBvEfgmrp2fqPbkdIZ6JnuOpGcw==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.18.0.tgz", + "integrity": "sha512-qI3LcFsVgtvpsBGR7aNSJYxhsR+Zl46+958ODzg8aCxIcdxiK7QEVLMJMZAR57jGqW0Lg/vrjtuLFDMfSE53qA==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/ingestion": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.17.1.tgz", - "integrity": "sha512-T18tvePi1rjRYcIKhd82oRukrPWHxG/Iy1qFGaxCplgRm9Im5z96qnYOq75MSKGOUHkFxaBKJOLmtn8xDR+Mcw==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.18.0.tgz", + "integrity": "sha512-bGvJg7HnGGm+XWYMDruZXWgMDPVt4yCbBqq8DM6EoaMBK71SYC4WMfIdJaw+ABqttjBhe6aKNRkWf/bbvYOGyw==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/monitoring": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.17.1.tgz", - "integrity": "sha512-gDtow+AUywTehRP8S1tWKx2IvhcJOxldAoqBxzN3asuQobF7er5n72auBeL++HY4ImEuzMi7PDOA/Iuwxs2IcA==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.18.0.tgz", + "integrity": "sha512-lBssglINIeGIR+8KyzH05NAgAmn1BCrm5D2T6pMtr/8kbTHvvrm1Zvcltc5dKUQEFyyx3J5+MhNc7kfi8LdjVw==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/recommend": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.17.1.tgz", - "integrity": "sha512-2992tTHkRe18qmf5SP57N78kN1D3e5t4PO1rt10sJncWtXBZWiNOK6K/UcvWsFbNSGAogFcIcvIMAl5mNp6RWA==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.18.0.tgz", + "integrity": "sha512-uSnkm0cdAuFwdMp4pGT5vHVQ84T6AYpTZ3I0b3k/M3wg4zXDhl3aCiY8NzokEyRLezz/kHLEEcgb/tTTobOYVw==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-common": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-browser-xhr": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.17.1.tgz", - "integrity": "sha512-XpKgBfyczVesKgr7DOShNyPPu5kqlboimRRPjdqAw5grSyHhCmb8yoTIKy0TCqBABZeXRPMYT13SMruUVRXvHA==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.18.0.tgz", + "integrity": "sha512-1XFjW0C3pV0dS/9zXbV44cKI+QM4ZIz9cpatXpsjRlq6SUCpLID3DZHsXyE6sTb8IhyPaUjk78GEJT8/3hviqg==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1" + "@algolia/client-common": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-fetch": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.17.1.tgz", - "integrity": "sha512-EhUomH+DZP5vb6DnEjT0GvXaXBSwzZnuU6hPGNU1EYKRXDouRjII/bIWpVjt7ycMgL2D2oQruqDh6rAWUhQwRw==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.18.0.tgz", + "integrity": "sha512-0uodeNdAHz1YbzJh6C5xeQ4T6x5WGiUxUq3GOaT/R4njh5t78dq+Rb187elr7KtnjUmETVVuCvmEYaThfTHzNg==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1" + "@algolia/client-common": "5.18.0" }, "engines": { "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-node-http": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.17.1.tgz", - "integrity": "sha512-PSnENJtl4/wBWXlGyOODbLYm6lSiFqrtww7UpQRCJdsHXlJKF8XAP6AME8NxvbE0Qo/RJUxK0mvyEh9sQcx6bg==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.18.0.tgz", + "integrity": "sha512-tZCqDrqJ2YE2I5ukCQrYN8oiF6u3JIdCxrtKq+eniuLkjkO78TKRnXrVcKZTmfFJyyDK8q47SfDcHzAA3nHi6w==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-common": "5.17.1" + "@algolia/client-common": "5.18.0" }, "engines": { "node": ">= 14.0.0" @@ -699,9 +699,9 @@ "license": "Apache-2.0" }, "node_modules/@codemirror/autocomplete": { - "version": "6.18.3", - "resolved": "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.18.3.tgz", - "integrity": "sha512-1dNIOmiM0z4BIBwxmxEfA1yoxh1MF/6KPBbh20a5vphGV0ictKlgQsbJs6D6SkR6iJpGbpwRsa6PFMNlg9T9pQ==", + "version": "6.18.4", + "resolved": "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.18.4.tgz", + "integrity": "sha512-sFAphGQIqyQZfP2ZBsSHV7xQvo9Py0rV0dW7W3IMRdS+zDuNb2l3no78CvUaWKGfzFjI4FTrLdUSj86IGb2hRA==", "dev": true, "license": "MIT", "dependencies": { @@ -709,12 +709,6 @@ "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.17.0", "@lezer/common": "^1.0.0" - }, - "peerDependencies": { - "@codemirror/language": "^6.0.0", - "@codemirror/state": "^6.0.0", - "@codemirror/view": "^6.0.0", - "@lezer/common": "^1.0.0" } }, "node_modules/@codemirror/commands": { @@ -747,9 +741,9 @@ } }, "node_modules/@codemirror/language": { - "version": "6.10.6", - "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.10.6.tgz", - "integrity": "sha512-KrsbdCnxEztLVbB5PycWXFxas4EOyk/fPAfruSOnDDppevQgid2XZ+KbJ9u+fDikP/e7MW7HPBTvTb8JlZK9vA==", + "version": "6.10.7", + "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.10.7.tgz", + "integrity": "sha512-aOswhVOLYhMNeqykt4P7+ukQSpGL0ynZYaEyFDVHE7fl2xgluU3yuE9MdgYNfw6EmaNidoFMIQ2iTh1ADrnT6A==", "dev": true, "license": "MIT", "dependencies": { @@ -796,9 +790,9 @@ } }, "node_modules/@codemirror/view": { - "version": "6.35.3", - "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.35.3.tgz", - "integrity": "sha512-ScY7L8+EGdPl4QtoBiOzE4FELp7JmNUsBvgBcCakXWM2uiv/K89VAzU3BMDscf0DsACLvTKePbd5+cFDTcei6g==", + "version": "6.36.1", + "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.36.1.tgz", + "integrity": "sha512-miD1nyT4m4uopZaDdO2uXU/LLHliKNYL9kB1C1wJHrunHLm/rpkb5QVSokqgw9hFqEZakrdlb/VGWX8aYZTslQ==", "dev": true, "license": "MIT", "dependencies": { @@ -808,34 +802,34 @@ } }, "node_modules/@docsearch/css": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.8.0.tgz", - "integrity": "sha512-pieeipSOW4sQ0+bE5UFC51AOZp9NGxg89wAlZ1BAQFaiRAGK1IKUaPQ0UGZeNctJXyqZ1UvBtOQh2HH+U5GtmA==", + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.8.2.tgz", + "integrity": "sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==", "dev": true, "license": "MIT" }, "node_modules/@docsearch/js": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.8.0.tgz", - "integrity": "sha512-PVuV629f5UcYRtBWqK7ID6vNL5647+2ADJypwTjfeBIrJfwPuHtzLy39hMGMfFK+0xgRyhTR0FZ83EkdEraBlg==", + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.8.2.tgz", + "integrity": "sha512-Q5wY66qHn0SwA7Taa0aDbHiJvaFJLOJyHmooQ7y8hlwwQLQ/5WwCcoX0g7ii04Qi2DJlHsd0XXzJ8Ypw9+9YmQ==", "dev": true, "license": "MIT", "dependencies": { - "@docsearch/react": "3.8.0", + "@docsearch/react": "3.8.2", "preact": "^10.0.0" } }, "node_modules/@docsearch/react": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.8.0.tgz", - "integrity": "sha512-WnFK720+iwTVt94CxY3u+FgX6exb3BfN5kE9xUY6uuAH/9W/UFboBZFLlrw/zxFRHoHZCOXRtOylsXF+6LHI+Q==", + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.8.2.tgz", + "integrity": "sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==", "dev": true, "license": "MIT", "dependencies": { "@algolia/autocomplete-core": "1.17.7", "@algolia/autocomplete-preset-algolia": "1.17.7", - "@docsearch/css": "3.8.0", - "algoliasearch": "^5.12.0" + "@docsearch/css": "3.8.2", + "algoliasearch": "^5.14.2" }, "peerDependencies": { "@types/react": ">= 16.8.0 < 19.0.0", @@ -1484,9 +1478,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", - "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.17.0.tgz", + "integrity": "sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==", "dev": true, "license": "MIT", "engines": { @@ -1668,9 +1662,9 @@ } }, "node_modules/@iconify-json/simple-icons": { - "version": "1.2.15", - "resolved": "https://registry.npmjs.org/@iconify-json/simple-icons/-/simple-icons-1.2.15.tgz", - "integrity": "sha512-4vxMQwkjsbjVIVGsPjKBnLMqAXu4wSlHmeN35KaJLK0UJNUj/ef6ES5c4bT/U4bSZjD2oZqOjOWTPD+HCrSUkg==", + "version": "1.2.16", + "resolved": "https://registry.npmjs.org/@iconify-json/simple-icons/-/simple-icons-1.2.16.tgz", + "integrity": "sha512-mnQ0Ih8CDIgOqbi0qz01AJNOeFVuGFRimelg3JmJtD0y5EpZVw+enPPcpcxJKipsRZ/oqhcP3AhYkF1kM7yomg==", "dev": true, "license": "CC0-1.0", "dependencies": { @@ -1685,9 +1679,9 @@ "license": "MIT" }, "node_modules/@iconify/utils": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.2.0.tgz", - "integrity": "sha512-9A5eZQV9eKlNCXlI/SgYsGRS7YmGmB1oAsRpNVIYBmIzGJRgH+hfG+lo4069s+GFWFNnBAtDg10c53vQZBLfnA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.2.1.tgz", + "integrity": "sha512-0/7J7hk4PqXmxo5PDBDxmnecw5PxklZJfNjIVG9FM0mEfVrvfudS22rYWsqVk6gR3UJ/mSYS90X4R3znXnqfNA==", "dev": true, "license": "MIT", "dependencies": { @@ -2493,9 +2487,9 @@ } }, "node_modules/@rollup/plugin-commonjs": { - "version": "28.0.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.1.tgz", - "integrity": "sha512-+tNWdlWKbpB3WgBN7ijjYkq9X5uhjmcvyjEght4NmH5fAU++zfQzAJ6wumLS+dNcvwEZhKx2Z+skY8m7v0wGSA==", + "version": "28.0.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.2.tgz", + "integrity": "sha512-BEFI2EDqzl+vA1rl97IDRZ61AIwGH093d9nz8+dThxJNH8oSoB7MjWvPCX3dkaK1/RCJ/1v/R1XB15FuSs0fQw==", "dev": true, "license": "MIT", "dependencies": { @@ -2551,9 +2545,9 @@ } }, "node_modules/@rollup/plugin-node-resolve": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.0.tgz", - "integrity": "sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==", + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.0.tgz", + "integrity": "sha512-0FPvAeVUT/zdWoO0jnb/V5BlBsUSNfkIOtFHzMO4H9MOklrmQFY6FduVHKucNb/aTFxvnGhj4MNj/T1oNdDfNg==", "dev": true, "license": "MIT", "dependencies": { @@ -2576,9 +2570,9 @@ } }, "node_modules/@rollup/plugin-replace": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.1.tgz", - "integrity": "sha512-2sPh9b73dj5IxuMmDAsQWVFT7mR+yoHweBaXG2W/R8vQ+IWZlnaI7BR7J6EguVQUp1hd8Z7XuozpDjEKQAAC2Q==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.2.tgz", + "integrity": "sha512-7QaYCf8bqF04dOy7w/eHmJeNExxTYwvKAmlSAH/EaWWUzbT0h5sbF6bktFoX/0F/0qwng5/dWFMyf3gzaM8DsQ==", "dev": true, "license": "MIT", "dependencies": { @@ -2621,9 +2615,9 @@ } }, "node_modules/@rollup/plugin-typescript": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.1.1.tgz", - "integrity": "sha512-t7O653DpfB5MbFrqPe/VcKFFkvRuFNp9qId3xq4Eth5xlyymzxNpye2z8Hrl0RIMuXTSr5GGcFpkdlMeacUiFQ==", + "version": "12.1.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.1.2.tgz", + "integrity": "sha512-cdtSp154H5sv637uMr1a8OTWB0L1SWDSm1rDGiyfcGcvQ6cuTs4MDk2BVEBGysUWago4OJN4EQZqOTl/QY3Jgg==", "dev": true, "license": "MIT", "dependencies": { @@ -2648,9 +2642,9 @@ } }, "node_modules/@rollup/pluginutils": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", - "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", "dev": true, "license": "MIT", "dependencies": { @@ -2937,80 +2931,80 @@ ] }, "node_modules/@shikijs/core": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.24.2.tgz", - "integrity": "sha512-BpbNUSKIwbKrRRA+BQj0BEWSw+8kOPKDJevWeSE/xIqGX7K0xrCZQ9kK0nnEQyrzsUoka1l81ZtJ2mGaCA32HQ==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.24.3.tgz", + "integrity": "sha512-VRcf4GYUIkxIchGM9DrapRcxtgojg4IWKUtX5EtW+4PJiGzF2xQqZSv27PJt+WLc18KT3CNLpNWow9JYV5n+Rg==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/engine-javascript": "1.24.2", - "@shikijs/engine-oniguruma": "1.24.2", - "@shikijs/types": "1.24.2", - "@shikijs/vscode-textmate": "^9.3.0", + "@shikijs/engine-javascript": "1.24.3", + "@shikijs/engine-oniguruma": "1.24.3", + "@shikijs/types": "1.24.3", + "@shikijs/vscode-textmate": "^9.3.1", "@types/hast": "^3.0.4", - "hast-util-to-html": "^9.0.3" + "hast-util-to-html": "^9.0.4" } }, "node_modules/@shikijs/engine-javascript": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.24.2.tgz", - "integrity": "sha512-EqsmYBJdLEwEiO4H+oExz34a5GhhnVp+jH9Q/XjPjmBPc6TE/x4/gD0X3i0EbkKKNqXYHHJTJUpOLRQNkEzS9Q==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.24.3.tgz", + "integrity": "sha512-De8tNLvYjeK6V0Gb47jIH2M+OKkw+lWnSV1j3HVDFMlNIglmVcTMG2fASc29W0zuFbfEEwKjO8Fe4KYSO6Ce3w==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/types": "1.24.2", - "@shikijs/vscode-textmate": "^9.3.0", - "oniguruma-to-es": "0.7.0" + "@shikijs/types": "1.24.3", + "@shikijs/vscode-textmate": "^9.3.1", + "oniguruma-to-es": "0.8.0" } }, "node_modules/@shikijs/engine-oniguruma": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.24.2.tgz", - "integrity": "sha512-ZN6k//aDNWRJs1uKB12pturKHh7GejKugowOFGAuG7TxDRLod1Bd5JhpOikOiFqPmKjKEPtEA6mRCf7q3ulDyQ==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.24.3.tgz", + "integrity": "sha512-iNnx950gs/5Nk+zrp1LuF+S+L7SKEhn8k9eXgFYPGhVshKppsYwRmW8tpmAMvILIMSDfrgqZ0w+3xWVQB//1Xw==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/types": "1.24.2", - "@shikijs/vscode-textmate": "^9.3.0" + "@shikijs/types": "1.24.3", + "@shikijs/vscode-textmate": "^9.3.1" } }, "node_modules/@shikijs/transformers": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-1.24.2.tgz", - "integrity": "sha512-cIwn8YSwO3bsWKJ+pezcXY1Vq0BVwvuLes1TZSC5+Awi6Tsfqhf3vBahOIqZK1rraMKOti2VEAEF/95oXMig1w==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-1.24.3.tgz", + "integrity": "sha512-Zdu+pVZwQkUy/KWIVJFQlSqZGvPySU6oYZ2TsBKp3Ay5m1XzykPSeiaVvAh6LtyaXYDLeCdA3LjZfHyTXFjGTw==", "dev": true, "license": "MIT", "dependencies": { - "shiki": "1.24.2" + "shiki": "1.24.3" } }, "node_modules/@shikijs/twoslash": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/@shikijs/twoslash/-/twoslash-1.24.2.tgz", - "integrity": "sha512-zcwYUNdSQDKquF1t+XrtoXM+lx9rCldAkZnT+e5fULKlLT6F8/F9fwICGhBm9lWp5/U4NptH+YcJUdvFOR0SRg==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/@shikijs/twoslash/-/twoslash-1.24.3.tgz", + "integrity": "sha512-BlspJvcWJCz8tda7RP55eBi2TIzPn9T5wR3NVR0LdX7Itf8YcmOmj0Do1p/s5DdKFgCarzFG+wY+MT1nYk7new==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/core": "1.24.2", - "@shikijs/types": "1.24.2", + "@shikijs/core": "1.24.3", + "@shikijs/types": "1.24.3", "twoslash": "^0.2.12" } }, "node_modules/@shikijs/types": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.24.2.tgz", - "integrity": "sha512-bdeWZiDtajGLG9BudI0AHet0b6e7FbR0EsE4jpGaI0YwHm/XJunI9+3uZnzFtX65gsyJ6ngCIWUfA4NWRPnBkQ==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.24.3.tgz", + "integrity": "sha512-FPMrJ69MNxhRtldRk69CghvaGlbbN3pKRuvko0zvbfa2dXp4pAngByToqS5OY5jvN8D7LKR4RJE8UvzlCOuViw==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/vscode-textmate": "^9.3.0", + "@shikijs/vscode-textmate": "^9.3.1", "@types/hast": "^3.0.4" } }, "node_modules/@shikijs/vitepress-twoslash": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/@shikijs/vitepress-twoslash/-/vitepress-twoslash-1.24.2.tgz", - "integrity": "sha512-twOKyYay+ra3xBxbQhMIBM9Y3ZzZg18NAv529AL+r3p2kbDm7Lh623C9eSDsfZvWT9xCEZzaI6DEACT4YUPSuA==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/@shikijs/vitepress-twoslash/-/vitepress-twoslash-1.24.3.tgz", + "integrity": "sha512-H1okzdA8yYZqUFn3vEZLTskdjeUdCssrCRaBNN5+xCLkK9qxgtbH2l+UurISy5fShMySsAZE399CUZFq8J6u4Q==", "dev": true, "license": "MIT", "dependencies": { @@ -3019,7 +3013,7 @@ "mdast-util-from-markdown": "^2.0.2", "mdast-util-gfm": "^3.0.0", "mdast-util-to-hast": "^13.2.0", - "shiki": "1.24.2", + "shiki": "1.24.3", "twoslash": "^0.2.12", "twoslash-vue": "^0.2.12", "vue": "^3.5.13" @@ -3033,9 +3027,9 @@ "license": "MIT" }, "node_modules/@tanstack/virtual-core": { - "version": "3.10.9", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.9.tgz", - "integrity": "sha512-kBknKOKzmeR7lN+vSadaKWXaLS0SZZG+oqpQ/k80Q6g9REn6zRHS/ZYdrIzHnpHgy/eWs00SujveUN/GJT2qTw==", + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.11.2.tgz", + "integrity": "sha512-vTtpNt7mKCiZ1pwU9hfKPhpdVO2sVzFQsxoVBGtOSHxlrRRzYr8iQ2TlwbAcRYCcEiZ9ECAM8kBzH0v2+VzfKw==", "dev": true, "license": "MIT", "funding": { @@ -3044,13 +3038,13 @@ } }, "node_modules/@tanstack/vue-virtual": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/@tanstack/vue-virtual/-/vue-virtual-3.11.1.tgz", - "integrity": "sha512-HEmblQrCkbadvcuis8MBCHvlTy9iUTFlEWfXy5nTxvSrauWPZ4Pyv0yOzXrDhnTXUMxJtpdUrov05RCusrBQ3A==", + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/@tanstack/vue-virtual/-/vue-virtual-3.11.2.tgz", + "integrity": "sha512-y0b1p1FTlzxcSt/ZdGWY1AZ52ddwSU69pvFRYAELUSdLLxV8QOPe9dyT/KATO43UCb3DAwiyzi96h2IoYstBOQ==", "dev": true, "license": "MIT", "dependencies": { - "@tanstack/virtual-core": "3.10.9" + "@tanstack/virtual-core": "3.11.2" }, "funding": { "type": "github", @@ -3597,17 +3591,17 @@ } }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.0.tgz", - "integrity": "sha512-NR2yS7qUqCL7AIxdJUQf2MKKNDVNaig/dEB0GBLU7D+ZdHgK1NoH/3wsgO3OnPVipn51tG3MAwaODEGil70WEw==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.18.1.tgz", + "integrity": "sha512-Ncvsq5CT3Gvh+uJG0Lwlho6suwDfUXH0HztslDf5I+F2wAFAZMRwYLEorumpKLzmO2suAXZ/td1tBg4NZIi9CQ==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.18.0", - "@typescript-eslint/type-utils": "8.18.0", - "@typescript-eslint/utils": "8.18.0", - "@typescript-eslint/visitor-keys": "8.18.0", + "@typescript-eslint/scope-manager": "8.18.1", + "@typescript-eslint/type-utils": "8.18.1", + "@typescript-eslint/utils": "8.18.1", + "@typescript-eslint/visitor-keys": "8.18.1", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -3627,16 +3621,16 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.18.0.tgz", - "integrity": "sha512-hgUZ3kTEpVzKaK3uNibExUYm6SKKOmTU2BOxBSvOYwtJEPdVQ70kZJpPjstlnhCHcuc2WGfSbpKlb/69ttyN5Q==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.18.1.tgz", + "integrity": "sha512-rBnTWHCdbYM2lh7hjyXqxk70wvon3p2FyaniZuey5TrcGBpfhVp0OxOa6gxr9Q9YhZFKyfbEnxc24ZnVbbUkCA==", "dev": true, - "license": "MITClause", + "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.18.0", - "@typescript-eslint/types": "8.18.0", - "@typescript-eslint/typescript-estree": "8.18.0", - "@typescript-eslint/visitor-keys": "8.18.0", + "@typescript-eslint/scope-manager": "8.18.1", + "@typescript-eslint/types": "8.18.1", + "@typescript-eslint/typescript-estree": "8.18.1", + "@typescript-eslint/visitor-keys": "8.18.1", "debug": "^4.3.4" }, "engines": { @@ -3652,14 +3646,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.18.0.tgz", - "integrity": "sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.18.1.tgz", + "integrity": "sha512-HxfHo2b090M5s2+/9Z3gkBhI6xBH8OJCFjH9MhQ+nnoZqxU3wNxkLT+VWXWSFWc3UF3Z+CfPAyqdCTdoXtDPCQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.18.0", - "@typescript-eslint/visitor-keys": "8.18.0" + "@typescript-eslint/types": "8.18.1", + "@typescript-eslint/visitor-keys": "8.18.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3670,14 +3664,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.18.0.tgz", - "integrity": "sha512-er224jRepVAVLnMF2Q7MZJCq5CsdH2oqjP4dT7K6ij09Kyd+R21r7UVJrF0buMVdZS5QRhDzpvzAxHxabQadow==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.18.1.tgz", + "integrity": "sha512-jAhTdK/Qx2NJPNOTxXpMwlOiSymtR2j283TtPqXkKBdH8OAMmhiUfP0kJjc/qSE51Xrq02Gj9NY7MwK+UxVwHQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.18.0", - "@typescript-eslint/utils": "8.18.0", + "@typescript-eslint/typescript-estree": "8.18.1", + "@typescript-eslint/utils": "8.18.1", "debug": "^4.3.4", "ts-api-utils": "^1.3.0" }, @@ -3694,9 +3688,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.18.0.tgz", - "integrity": "sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.18.1.tgz", + "integrity": "sha512-7uoAUsCj66qdNQNpH2G8MyTFlgerum8ubf21s3TSM3XmKXuIn+H2Sifh/ES2nPOPiYSRJWAk0fDkW0APBWcpfw==", "dev": true, "license": "MIT", "engines": { @@ -3708,14 +3702,14 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.0.tgz", - "integrity": "sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.18.1.tgz", + "integrity": "sha512-z8U21WI5txzl2XYOW7i9hJhxoKKNG1kcU4RzyNvKrdZDmbjkmLBo8bgeiOJmA06kizLI76/CCBAAGlTlEeUfyg==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.18.0", - "@typescript-eslint/visitor-keys": "8.18.0", + "@typescript-eslint/types": "8.18.1", + "@typescript-eslint/visitor-keys": "8.18.1", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -3735,16 +3729,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.18.0.tgz", - "integrity": "sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.18.1.tgz", + "integrity": "sha512-8vikiIj2ebrC4WRdcAdDcmnu9Q/MXXwg+STf40BVfT8exDqBCUPdypvzcUPxEqRGKg9ALagZ0UWcYCtn+4W2iQ==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.18.0", - "@typescript-eslint/types": "8.18.0", - "@typescript-eslint/typescript-estree": "8.18.0" + "@typescript-eslint/scope-manager": "8.18.1", + "@typescript-eslint/types": "8.18.1", + "@typescript-eslint/typescript-estree": "8.18.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3759,13 +3753,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.0.tgz", - "integrity": "sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.18.1.tgz", + "integrity": "sha512-Vj0WLm5/ZsD013YeUKn+K0y8p1M0jPpxOkKdbD1wB0ns53a5piVY02zjf072TblEweAbcYiFiPoSMF3kp+VhhQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.18.0", + "@typescript-eslint/types": "8.18.1", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -3811,25 +3805,25 @@ } }, "node_modules/@volar/language-core": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.10.tgz", - "integrity": "sha512-hG3Z13+nJmGaT+fnQzAkS0hjJRa2FCeqZt6Bd+oGNhUkQ+mTFsDETg5rqUTxyzIh5pSOGY7FHCWUS8G82AzLCA==", + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.11.tgz", + "integrity": "sha512-lN2C1+ByfW9/JRPpqScuZt/4OrUUse57GLI6TbLgTIqBVemdl1wNcZ1qYGEo2+Gw8coYLgCy7SuKqn6IrQcQgg==", "dev": true, "license": "MIT", "dependencies": { - "@volar/source-map": "2.4.10" + "@volar/source-map": "2.4.11" } }, "node_modules/@volar/language-server": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/@volar/language-server/-/language-server-2.4.10.tgz", - "integrity": "sha512-odQsgrJh8hOXfxkSj/BSnpjThb2/KDhbxZnG/XAEx6E3QGDQv4hAOz9GWuKoNs0tkjgwphQGIwDMT1JYaTgRJw==", + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/@volar/language-server/-/language-server-2.4.11.tgz", + "integrity": "sha512-W9P8glH1M8LGREJ7yHRCANI5vOvTrRO15EMLdmh5WNF9sZYSEbQxiHKckZhvGIkbeR1WAlTl3ORTrJXUghjk7g==", "dev": true, "license": "MIT", "dependencies": { - "@volar/language-core": "2.4.10", - "@volar/language-service": "2.4.10", - "@volar/typescript": "2.4.10", + "@volar/language-core": "2.4.11", + "@volar/language-service": "2.4.11", + "@volar/typescript": "2.4.11", "path-browserify": "^1.0.1", "request-light": "^0.7.0", "vscode-languageserver": "^9.0.1", @@ -3839,46 +3833,46 @@ } }, "node_modules/@volar/language-service": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/@volar/language-service/-/language-service-2.4.10.tgz", - "integrity": "sha512-VxUiWS11rnRzakkqw5x1LPhsz+RBfD0CrrFarLGW2/voliYXEdCuSOM3r8JyNRvMvP4uwhD38ccAdTcULQEAIQ==", + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/@volar/language-service/-/language-service-2.4.11.tgz", + "integrity": "sha512-KIb6g8gjUkS2LzAJ9bJCLIjfsJjeRtmXlu7b2pDFGD3fNqdbC53cCAKzgWDs64xtQVKYBU13DLWbtSNFtGuMLQ==", "dev": true, "license": "MIT", "dependencies": { - "@volar/language-core": "2.4.10", + "@volar/language-core": "2.4.11", "vscode-languageserver-protocol": "^3.17.5", "vscode-languageserver-textdocument": "^1.0.11", "vscode-uri": "^3.0.8" } }, "node_modules/@volar/source-map": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.10.tgz", - "integrity": "sha512-OCV+b5ihV0RF3A7vEvNyHPi4G4kFa6ukPmyVocmqm5QzOd8r5yAtiNvaPEjl8dNvgC/lj4JPryeeHLdXd62rWA==", + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.11.tgz", + "integrity": "sha512-ZQpmafIGvaZMn/8iuvCFGrW3smeqkq/IIh9F1SdSx9aUl0J4Iurzd6/FhmjNO5g2ejF3rT45dKskgXWiofqlZQ==", "dev": true, "license": "MIT" }, "node_modules/@volar/test-utils": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/@volar/test-utils/-/test-utils-2.4.10.tgz", - "integrity": "sha512-YkjqH9FfkewtS7MKdLo74C9QVpk4ab+0NdBOOnWXd77EtkaxLpEvIgZ2IX7LIi+RvlW8ucXpsYNNSORnzhR6AA==", + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/@volar/test-utils/-/test-utils-2.4.11.tgz", + "integrity": "sha512-ogkLldPqFa/j9302Ns+nWeyTCQv8d4c7iN4t8ziq7j0XeMKWYsTAjLsx/9z0MTNrecBAcocgzEvCricASSq+Hw==", "dev": true, "license": "MIT", "dependencies": { - "@volar/language-core": "2.4.10", - "@volar/language-server": "2.4.10", + "@volar/language-core": "2.4.11", + "@volar/language-server": "2.4.11", "vscode-languageserver-textdocument": "^1.0.11", "vscode-uri": "^3.0.8" } }, "node_modules/@volar/typescript": { - "version": "2.4.10", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.10.tgz", - "integrity": "sha512-F8ZtBMhSXyYKuBfGpYwqA5rsONnOwAVvjyE7KPYJ7wgZqo2roASqNWUnianOomJX5u1cxeRooHV59N0PhvEOgw==", + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.11.tgz", + "integrity": "sha512-2DT+Tdh88Spp5PyPbqhyoYavYCPDsqbHLFwcUI9K1NlY1YgUJvujGdrqUp0zWxnW7KWNTr3xSpMuv2WnaTKDAw==", "dev": true, "license": "MIT", "dependencies": { - "@volar/language-core": "2.4.10", + "@volar/language-core": "2.4.11", "path-browserify": "^1.0.1", "vscode-uri": "^3.0.8" } @@ -4265,9 +4259,9 @@ } }, "node_modules/@zenuml/core": { - "version": "3.25.2", - "resolved": "https://registry.npmjs.org/@zenuml/core/-/core-3.25.2.tgz", - "integrity": "sha512-pyyMfNQ8in9rhxdQC6QPJB5OGPgRehIVdVq7SJJddpdR1qX71WhM9kQRfXkFwbmwHw5D2O/iv1jp9yi7ZScK/g==", + "version": "3.27.8", + "resolved": "https://registry.npmjs.org/@zenuml/core/-/core-3.27.8.tgz", + "integrity": "sha512-TPQecDJhiTeneaK+tWr5D74yYYIaH6rw4T9sgswjmEg5mgjLtEno/wYyzoK60GDUKoAhJ/2QO4RN42koYIe4zw==", "dev": true, "license": "MIT", "dependencies": { @@ -4374,25 +4368,25 @@ } }, "node_modules/algoliasearch": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.17.1.tgz", - "integrity": "sha512-3CcbT5yTWJDIcBe9ZHgsPi184SkT1kyZi3GWlQU5EFgvq1V73X2sqHRkPCQMe0RA/uvZbB+1sFeAk73eWygeLg==", + "version": "5.18.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.18.0.tgz", + "integrity": "sha512-/tfpK2A4FpS0o+S78o3YSdlqXr0MavJIDlFK3XZrlXLy7vaRXJvW5jYg3v5e/wCaF8y0IpMjkYLhoV6QqfpOgw==", "dev": true, "license": "MIT", "dependencies": { - "@algolia/client-abtesting": "5.17.1", - "@algolia/client-analytics": "5.17.1", - "@algolia/client-common": "5.17.1", - "@algolia/client-insights": "5.17.1", - "@algolia/client-personalization": "5.17.1", - "@algolia/client-query-suggestions": "5.17.1", - "@algolia/client-search": "5.17.1", - "@algolia/ingestion": "1.17.1", - "@algolia/monitoring": "1.17.1", - "@algolia/recommend": "5.17.1", - "@algolia/requester-browser-xhr": "5.17.1", - "@algolia/requester-fetch": "5.17.1", - "@algolia/requester-node-http": "5.17.1" + "@algolia/client-abtesting": "5.18.0", + "@algolia/client-analytics": "5.18.0", + "@algolia/client-common": "5.18.0", + "@algolia/client-insights": "5.18.0", + "@algolia/client-personalization": "5.18.0", + "@algolia/client-query-suggestions": "5.18.0", + "@algolia/client-search": "5.18.0", + "@algolia/ingestion": "1.18.0", + "@algolia/monitoring": "1.18.0", + "@algolia/recommend": "5.18.0", + "@algolia/requester-browser-xhr": "5.18.0", + "@algolia/requester-fetch": "5.18.0", + "@algolia/requester-node-http": "5.18.0" }, "engines": { "node": ">= 14.0.0" @@ -4777,9 +4771,9 @@ "license": "ISC" }, "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "version": "4.24.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.3.tgz", + "integrity": "sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==", "dev": true, "funding": [ { @@ -4797,9 +4791,9 @@ ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", "update-browserslist-db": "^1.1.1" }, "bin": { @@ -4996,25 +4990,6 @@ "node": ">=8" } }, - "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/call-bind-apply-helpers": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz", @@ -5030,14 +5005,14 @@ } }, "node_modules/call-bound": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.2.tgz", - "integrity": "sha512-0lk0PHFe/uz0vl527fG9CgdE9WdafjDbCXvBbs+LUv000TVt2Jjhqbs4Jwm8gz070w8xXyEAxrPOMullsxXeGg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", + "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.8", - "get-intrinsic": "^1.2.5" + "call-bind-apply-helpers": "^1.0.1", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -5077,9 +5052,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001688", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001688.tgz", - "integrity": "sha512-Nmqpru91cuABu/DTCXbM2NSRHzM2uVHfPnhJ/1zEAJx/ILBRVmz3pzH4N7DZqbdG0gWClsCC05Oj0mJ/1AWMbA==", + "version": "1.0.30001690", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001690.tgz", + "integrity": "sha512-5ExiE3qQN6oF8Clf8ifIDcMRCRE/dMGcETG/XGMD8/XiXm6HXQgQTh1yZYLXXpSOsEUlJm1Xr7kGULZTuGtP/w==", "dev": true, "funding": [ { @@ -5109,9 +5084,9 @@ } }, "node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.0.tgz", + "integrity": "sha512-ZkD35Mx92acjB2yNJgziGqT9oKHEOxjTBTDRpOsRWtdecL/0jM3z5kM/CTzHWvHIen1GvkM85p6TuFfDGfc8/Q==", "dev": true, "license": "MIT", "engines": { @@ -5235,15 +5210,14 @@ } }, "node_modules/chromium-bidi": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.8.0.tgz", - "integrity": "sha512-uJydbGdTw0DEUjhoogGveneJVWX/9YuqkWePzMmkBYwtdAqo5d3J/ovNKFr+/2hWXYmYCr6it8mSSTIj6SS6Ug==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.11.0.tgz", + "integrity": "sha512-6CJWHkNRoyZyjV9Rwv2lYONZf1Xm0IuDyNq97nwSsxxP3wf5Bwy15K5rOvVKMtJ127jJBmxFUanSAOjgFRxgrA==", "dev": true, "license": "Apache-2.0", "peer": true, "dependencies": { "mitt": "3.0.1", - "urlpattern-polyfill": "10.0.0", "zod": "3.23.8" }, "peerDependencies": { @@ -6479,24 +6453,6 @@ "node": ">=4" } }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/degenerator": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", @@ -6617,13 +6573,13 @@ } }, "node_modules/dunder-proto": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.0.tgz", - "integrity": "sha512-9+Sj30DIu+4KvHqMfLUGLFYL2PkURSYMVXJyXe92nFRvlYq5hBjLEhblKB+vkd/WVlUYMWigiY07T91Fkk0+4A==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "dev": true, "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.0", + "call-bind-apply-helpers": "^1.0.1", "es-errors": "^1.3.0", "gopd": "^1.2.0" }, @@ -6639,9 +6595,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.73", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.73.tgz", - "integrity": "sha512-8wGNxG9tAG5KhGd3eeA0o6ixhiNdgr0DcHWm85XPCphwZgD1lIEoi6t3VERayWao7SF7AAZTw6oARGJeVjH8Kg==", + "version": "1.5.75", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.75.tgz", + "integrity": "sha512-Lf3++DumRE/QmweGjU+ZcKqQ+3bKkU/qjaKYhIJKEOhgIO9Xs6IiAQFkfFoj+RhgDk4LUeNsLo6plExHqSyu6Q==", "dev": true, "license": "ISC" }, @@ -6897,9 +6853,9 @@ } }, "node_modules/eslint": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", - "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.17.0.tgz", + "integrity": "sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==", "dev": true, "license": "MIT", "dependencies": { @@ -6908,7 +6864,7 @@ "@eslint/config-array": "^0.19.0", "@eslint/core": "^0.9.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.16.0", + "@eslint/js": "9.17.0", "@eslint/plugin-kit": "^0.2.3", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -6917,7 +6873,7 @@ "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", - "cross-spawn": "^7.0.5", + "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", "eslint-scope": "^8.2.0", @@ -7978,9 +7934,9 @@ } }, "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": "15.14.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.14.0.tgz", + "integrity": "sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==", "dev": true, "license": "MIT", "engines": { @@ -8034,19 +7990,6 @@ "node": ">=8" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-symbols": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", @@ -8130,9 +8073,9 @@ } }, "node_modules/hast-util-to-html": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.3.tgz", - "integrity": "sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.4.tgz", + "integrity": "sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==", "dev": true, "license": "MIT", "dependencies": { @@ -8486,9 +8429,9 @@ } }, "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.0.tgz", + "integrity": "sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==", "dev": true, "license": "MIT", "dependencies": { @@ -8848,9 +8791,9 @@ } }, "node_modules/jiti": { - "version": "1.21.6", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", - "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", "dev": true, "license": "MIT", "bin": { @@ -8974,9 +8917,9 @@ "license": "MIT" }, "node_modules/katex": { - "version": "0.16.15", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.15.tgz", - "integrity": "sha512-yE9YJIEAk2aZ+FL/G8r+UGw0CTUzEA8ZFy6E+8tc3spHUKq3qBnzCkI1CQwGoI9atJhVyFPEypQsTY7mJ1Pi9w==", + "version": "0.16.18", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.18.tgz", + "integrity": "sha512-LRuk0rPdXrecAFwQucYjMiIs0JFefk6N1q/04mlw14aVIVgxq1FO0MA9RiIIGVaKOB5GIP5GH4aBBNraZERmaQ==", "dev": true, "funding": [ "https://opencollective.com/katex", @@ -9109,6 +9052,19 @@ "url": "https://opencollective.com/lint-staged" } }, + "node_modules/lint-staged/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, "node_modules/listr2": { "version": "8.2.5", "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.2.5.tgz", @@ -9456,9 +9412,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.15", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.15.tgz", - "integrity": "sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==", + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", "dev": true, "license": "MIT", "dependencies": { @@ -9551,9 +9507,9 @@ } }, "node_modules/math-intrinsics": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.0.0.tgz", - "integrity": "sha512-4MqMiKP90ybymYvsut0CH2g4XWbfLtmlCkXmtmdcDCxNB+mQcu1w/1+L/VD7vi/PSv7X2JYV7SCcR+jiPXnQtA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", "dev": true, "license": "MIT", "engines": { @@ -10799,9 +10755,9 @@ "license": "MIT" }, "node_modules/nodemon": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.7.tgz", - "integrity": "sha512-hLj7fuMow6f0lbB0cD14Lz2xNjwsyruH251Pk4t/yIitCFJbmY1myuLlHm/q06aST4jg6EgAh74PIBBrRqpVAQ==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.9.tgz", + "integrity": "sha512-hdr1oIb2p6ZSxu3PB2JWWYS7ZQ0qvaZsc3hK8DR8f02kRzc8rjYmxAIvdz+aYC+8F2IjNaB7HMcSDg8nQpJxyg==", "dev": true, "license": "MIT", "dependencies": { @@ -11327,15 +11283,15 @@ } }, "node_modules/oniguruma-to-es": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-0.7.0.tgz", - "integrity": "sha512-HRaRh09cE0gRS3+wi2zxekB+I5L8C/gN60S+vb11eADHUaB/q4u8wGGOX3GvwvitG8ixaeycZfeoyruKQzUgNg==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-0.8.0.tgz", + "integrity": "sha512-rY+/a6b+uCgoYIL9itjY0x99UUDHXmGaw7Jjk5ZvM/3cxDJifyxFr/Zm4tTmF6Tre18gAakJo7AzhKUeMNLgHA==", "dev": true, "license": "MIT", "dependencies": { "emoji-regex-xs": "^1.0.0", "regex": "^5.0.2", - "regex-recursion": "^4.3.0" + "regex-recursion": "^5.0.0" } }, "node_modules/optionator": { @@ -12019,9 +11975,9 @@ "license": "MIT" }, "node_modules/preact": { - "version": "10.25.2", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.25.2.tgz", - "integrity": "sha512-GEts1EH3oMnqdOIeXhlbBSddZ9nrINd070WBOiPO2ous1orrKGUM4SMDbwyjSWD1iMS2dBvaDjAa5qUhz3TXqw==", + "version": "10.25.3", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.25.3.tgz", + "integrity": "sha512-dzQmIFtM970z+fP9ziQ3yG4e3ULIbwZzJ734vaMVUTaKQ2+Ru1Ou/gjshOYVHCcd1rpAelC6ngjvjDXph98unQ==", "dev": true, "license": "MIT", "funding": { @@ -12255,19 +12211,19 @@ } }, "node_modules/puppeteer": { - "version": "23.10.4", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-23.10.4.tgz", - "integrity": "sha512-i0sYIAIjdO9MoRfFqbkoWFnQYZVmNp8msbztTgG46KbOdoYAv4f56MFzdFwtC0lyZHtkP+yl0H7tP0dNg3RQYA==", + "version": "23.11.1", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-23.11.1.tgz", + "integrity": "sha512-53uIX3KR5en8l7Vd8n5DUv90Ae9QDQsyIthaUFVzwV6yU750RjqRznEtNMBT20VthqAdemnJN+hxVdmMHKt7Zw==", "dev": true, "hasInstallScript": true, "license": "Apache-2.0", "peer": true, "dependencies": { "@puppeteer/browsers": "2.6.1", - "chromium-bidi": "0.8.0", + "chromium-bidi": "0.11.0", "cosmiconfig": "^9.0.0", "devtools-protocol": "0.0.1367902", - "puppeteer-core": "23.10.4", + "puppeteer-core": "23.11.1", "typed-query-selector": "^2.12.0" }, "bin": { @@ -12278,15 +12234,15 @@ } }, "node_modules/puppeteer-core": { - "version": "23.10.4", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-23.10.4.tgz", - "integrity": "sha512-pQAY7+IFAndWDkDodsQGguW1/ifV5OMlGXJDspwtK49Asb7poJZ/V5rXJxVSpq57bWrJasjQBZ1X27z1oWVq4Q==", + "version": "23.11.1", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-23.11.1.tgz", + "integrity": "sha512-3HZ2/7hdDKZvZQ7dhhITOUg4/wOrDRjyK2ZBllRB0ZCOi9u0cwq1ACHDjBB+nX+7+kltHjQvBRdeY7+W0T+7Gg==", "dev": true, "license": "Apache-2.0", "peer": true, "dependencies": { "@puppeteer/browsers": "2.6.1", - "chromium-bidi": "0.8.0", + "chromium-bidi": "0.11.0", "debug": "^4.4.0", "devtools-protocol": "0.0.1367902", "typed-query-selector": "^2.12.0", @@ -12583,9 +12539,9 @@ } }, "node_modules/regex-recursion": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-4.3.0.tgz", - "integrity": "sha512-5LcLnizwjcQ2ALfOj95MjcatxyqF5RPySx9yT+PaXu3Gox2vyAtLDjHB8NTJLtMGkvyau6nI3CfpwFCjPUIs/A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-5.0.0.tgz", + "integrity": "sha512-UwyOqeobrCCqTXPcsSqH4gDhOjD5cI/b8kjngWgSZbxYh5yVjAwTjO5+hAuPRNiuR70+5RlWSs+U9PVcVcW9Lw==", "dev": true, "license": "MIT", "dependencies": { @@ -12730,19 +12686,22 @@ } }, "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dev": true, "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -13112,24 +13071,6 @@ "dev": true, "license": "ISC" }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -13231,17 +13172,17 @@ } }, "node_modules/shiki": { - "version": "1.24.2", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.24.2.tgz", - "integrity": "sha512-TR1fi6mkRrzW+SKT5G6uKuc32Dj2EEa7Kj0k8kGqiBINb+C1TiflVOiT9ta6GqOJtC4fraxO5SLUaKBcSY38Fg==", + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.24.3.tgz", + "integrity": "sha512-eMeX/ehE2IDKVs71kB4zVcDHjutNcOtm+yIRuR4sA6ThBbdFI0DffGJiyoKCodj0xRGxIoWC3pk/Anmm5mzHmA==", "dev": true, "license": "MIT", "dependencies": { - "@shikijs/core": "1.24.2", - "@shikijs/engine-javascript": "1.24.2", - "@shikijs/engine-oniguruma": "1.24.2", - "@shikijs/types": "1.24.2", - "@shikijs/vscode-textmate": "^9.3.0", + "@shikijs/core": "1.24.3", + "@shikijs/engine-javascript": "1.24.3", + "@shikijs/engine-oniguruma": "1.24.3", + "@shikijs/types": "1.24.3", + "@shikijs/vscode-textmate": "^9.3.1", "@types/hast": "^3.0.4" } }, @@ -13943,9 +13884,9 @@ "license": "MIT" }, "node_modules/tailwindcss": { - "version": "3.4.16", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.16.tgz", - "integrity": "sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==", + "version": "3.4.17", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.17.tgz", + "integrity": "sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==", "dev": true, "license": "MIT", "dependencies": { @@ -14145,9 +14086,9 @@ } }, "node_modules/text-decoder": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.2.tgz", - "integrity": "sha512-/MDslo7ZyWTA2vnk1j7XoDVfXsGk3tp+zFEJHJGm0UjIlQifonVFwlVbQDFh8KJzTBnT8ie115TYqir6bclddA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", "dev": true, "license": "Apache-2.0", "peer": true, @@ -14439,15 +14380,15 @@ } }, "node_modules/typescript-eslint": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.18.0.tgz", - "integrity": "sha512-Xq2rRjn6tzVpAyHr3+nmSg1/9k9aIHnJ2iZeOH7cfGOWqTkXTm3kwpQglEuLGdNrYvPF+2gtAs+/KF5rjVo+WQ==", + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.18.1.tgz", + "integrity": "sha512-Mlaw6yxuaDEPQvb/2Qwu3/TfgeBHy9iTJ3mTwe7OvpPmF6KPQjVOfGyEJpPv6Ez2C34OODChhXrzYw/9phI0MQ==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/eslint-plugin": "8.18.0", - "@typescript-eslint/parser": "8.18.0", - "@typescript-eslint/utils": "8.18.0" + "@typescript-eslint/eslint-plugin": "8.18.1", + "@typescript-eslint/parser": "8.18.1", + "@typescript-eslint/utils": "8.18.1" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -14662,14 +14603,6 @@ "punycode": "^2.1.0" } }, - "node_modules/urlpattern-polyfill": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz", - "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/utf8": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/utf8/-/utf8-2.1.2.tgz", @@ -14740,13 +14673,13 @@ } }, "node_modules/vite": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.3.tgz", - "integrity": "sha512-Cmuo5P0ENTN6HxLSo6IHsjCLn/81Vgrp81oaiFFMRa8gGDj5xEjIcEpf2ZymZtZR8oU0P2JX5WuUp/rlXcHkAw==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.5.tgz", + "integrity": "sha512-akD5IAH/ID5imgue2DYhzsEwCi0/4VKY31uhMLEYJwPP4TiUp8pL5PIK+Wo7H8qT8JY9i+pVfPydcFPYD1EL7g==", "dev": true, "license": "MIT", "dependencies": { - "esbuild": "^0.24.0", + "esbuild": "0.24.0", "postcss": "^8.4.49", "rollup": "^4.23.0" }, diff --git a/package.json b/package.json index ac8242216..b9315ce7e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rollup", - "version": "4.28.1", + "version": "4.29.0", "description": "Next-generation ES module bundler", "main": "dist/rollup.js", "module": "dist/es/rollup.js", @@ -120,27 +120,27 @@ "devDependencies": { "@codemirror/commands": "^6.7.1", "@codemirror/lang-javascript": "^6.2.2", - "@codemirror/language": "^6.10.6", + "@codemirror/language": "^6.10.7", "@codemirror/search": "^6.5.8", "@codemirror/state": "^6.5.0", - "@codemirror/view": "^6.35.3", - "@eslint/js": "^9.16.0", + "@codemirror/view": "^6.36.0", + "@eslint/js": "^9.17.0", "@inquirer/prompts": "^7.2.0", "@jridgewell/sourcemap-codec": "^1.5.0", "@mermaid-js/mermaid-cli": "^11.4.2", "@napi-rs/cli": "^2.18.4", "@rollup/plugin-alias": "^5.1.1", "@rollup/plugin-buble": "^1.0.3", - "@rollup/plugin-commonjs": "^28.0.1", + "@rollup/plugin-commonjs": "^28.0.2", "@rollup/plugin-json": "^6.1.0", - "@rollup/plugin-node-resolve": "^15.3.0", - "@rollup/plugin-replace": "^6.0.1", + "@rollup/plugin-node-resolve": "^16.0.0", + "@rollup/plugin-replace": "^6.0.2", "@rollup/plugin-terser": "^0.4.4", - "@rollup/plugin-typescript": "^12.1.1", - "@rollup/pluginutils": "^5.1.3", - "@shikijs/vitepress-twoslash": "^1.24.1", + "@rollup/plugin-typescript": "^12.1.2", + "@rollup/pluginutils": "^5.1.4", + "@shikijs/vitepress-twoslash": "^1.24.2", "@types/mocha": "^10.0.10", - "@types/node": "^18.19.67", + "@types/node": "^18.19.68", "@types/semver": "^7.5.8", "@types/yargs-parser": "^21.0.3", "@vue/language-server": "^2.1.10", @@ -157,7 +157,7 @@ "date-time": "^4.0.0", "es5-shim": "^4.6.7", "es6-shim": "^0.35.8", - "eslint": "^9.16.0", + "eslint": "^9.17.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-unicorn": "^56.0.1", @@ -169,11 +169,11 @@ "globals": "^15.13.0", "husky": "^9.1.7", "is-reference": "^3.0.3", - "lint-staged": "^15.2.10", + "lint-staged": "^15.2.11", "locate-character": "^3.0.0", - "magic-string": "^0.30.14", + "magic-string": "^0.30.17", "mocha": "^11.0.1", - "nodemon": "^3.1.7", + "nodemon": "^3.1.9", "npm-audit-resolver": "^3.0.0-RC.0", "nyc": "^17.1.0", "pinia": "^2.3.0", @@ -194,7 +194,7 @@ "terser": "^5.37.0", "tslib": "^2.8.1", "typescript": "^5.7.2", - "typescript-eslint": "^8.18.0", + "typescript-eslint": "^8.18.1", "vite": "^6.0.3", "vitepress": "^1.5.0", "vue": "^3.5.13", diff --git a/rust/Cargo.lock b/rust/Cargo.lock index 7043c1509..bebf6c13b 100644 --- a/rust/Cargo.lock +++ b/rust/Cargo.lock @@ -142,9 +142,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.3" +version = "1.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27f657647bcff5394bf56c7317665bbf790a137a50eaaa5c6bfbb9e27a518f2d" +checksum = "c31a0499c1dc64f458ad13872de75c0eb7e3fdb0e67964610c914b034fc5956e" dependencies = [ "shlex", ] @@ -504,9 +504,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.168" +version = "0.2.169" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d" +checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" [[package]] name = "libloading" @@ -581,9 +581,9 @@ dependencies = [ [[package]] name = "napi-build" -version = "2.1.3" +version = "2.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1c0f5d67ee408a4685b61f5ab7e58605c8ae3f2b4189f0127d804ff13d5560a" +checksum = "db836caddef23662b94e16bf1f26c40eceb09d6aee5d5b06a7ac199320b69b19" [[package]] name = "napi-derive" @@ -1293,9 +1293,9 @@ dependencies = [ [[package]] name = "swc_ecma_parser" -version = "6.0.0" +version = "6.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2c361b4153905dc088a6bacfaa944b582305cf94fbfcaa9b3aa61a7dd3adbf9" +checksum = "f92ea41c3c3f0fe77991fee96b91bc4c7af43b55fdb6564fdc31b8c2d0b1e220" dependencies = [ "either", "new_debug_unreachable", @@ -1790,9 +1790,9 @@ dependencies = [ [[package]] name = "xxhash-rust" -version = "0.8.12" +version = "0.8.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a5cbf750400958819fb6178eaa83bee5cd9c29a26a40cc241df8c70fdd46984" +checksum = "a08fd76779ae1883bbf1e46c2c46a75a0c4e37c445e68a24b01479d438f26ae6" [[package]] name = "yoke" diff --git a/rust/parse_ast/Cargo.toml b/rust/parse_ast/Cargo.toml index 270d95e77..efc375734 100644 --- a/rust/parse_ast/Cargo.toml +++ b/rust/parse_ast/Cargo.toml @@ -11,5 +11,5 @@ swc_atoms = "3.0.0" swc_compiler_base = "7.0.0" swc_common = { version = "5.0.0", features = ["ahash", "parking_lot"] } swc_ecma_ast = "5.0.0" -swc_ecma_parser = "6.0.0" +swc_ecma_parser = "6.0.1" parking_lot = "0.12.3" diff --git a/rust/parse_ast/src/ast_nodes/array_expression.rs b/rust/parse_ast/src/ast_nodes/array_expression.rs index 57bfe1f79..5ed818fb4 100644 --- a/rust/parse_ast/src/ast_nodes/array_expression.rs +++ b/rust/parse_ast/src/ast_nodes/array_expression.rs @@ -5,7 +5,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_array_expression(&mut self, array_literal: &ArrayLit) { let end_position = self.add_type_and_start( &TYPE_ARRAY_EXPRESSION, diff --git a/rust/parse_ast/src/ast_nodes/array_pattern.rs b/rust/parse_ast/src/ast_nodes/array_pattern.rs index 913be2007..5f3559e82 100644 --- a/rust/parse_ast/src/ast_nodes/array_pattern.rs +++ b/rust/parse_ast/src/ast_nodes/array_pattern.rs @@ -5,7 +5,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_array_pattern(&mut self, array_pattern: &ArrayPat) { let end_position = self.add_type_and_start( &TYPE_ARRAY_PATTERN, diff --git a/rust/parse_ast/src/ast_nodes/arrow_function_expression.rs b/rust/parse_ast/src/ast_nodes/arrow_function_expression.rs index 44fd2d76c..a4fa4e23a 100644 --- a/rust/parse_ast/src/ast_nodes/arrow_function_expression.rs +++ b/rust/parse_ast/src/ast_nodes/arrow_function_expression.rs @@ -9,7 +9,7 @@ use crate::convert_ast::converter::ast_constants::{ use crate::convert_ast::converter::{convert_annotation, AstConverter}; use crate::store_arrow_function_expression_flags; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_arrow_function_expression(&mut self, arrow_expression: &ArrowExpr) { let end_position = self.add_type_and_start( &TYPE_ARROW_FUNCTION_EXPRESSION, diff --git a/rust/parse_ast/src/ast_nodes/assignment_expression.rs b/rust/parse_ast/src/ast_nodes/assignment_expression.rs index 4a696977d..4651e1885 100644 --- a/rust/parse_ast/src/ast_nodes/assignment_expression.rs +++ b/rust/parse_ast/src/ast_nodes/assignment_expression.rs @@ -9,7 +9,7 @@ use crate::convert_ast::converter::string_constants::{ use crate::convert_ast::converter::AstConverter; use crate::store_assignment_expression; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_assignment_expression(&mut self, assignment_expression: &AssignExpr) { store_assignment_expression!( self, diff --git a/rust/parse_ast/src/ast_nodes/assignment_pattern.rs b/rust/parse_ast/src/ast_nodes/assignment_pattern.rs index 3e26ccfaa..0e8f8c1df 100644 --- a/rust/parse_ast/src/ast_nodes/assignment_pattern.rs +++ b/rust/parse_ast/src/ast_nodes/assignment_pattern.rs @@ -7,7 +7,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_assignment_pattern_and_get_left_position( &mut self, span: &Span, diff --git a/rust/parse_ast/src/ast_nodes/await_expression.rs b/rust/parse_ast/src/ast_nodes/await_expression.rs index 950ec79f2..ce21a3cb9 100644 --- a/rust/parse_ast/src/ast_nodes/await_expression.rs +++ b/rust/parse_ast/src/ast_nodes/await_expression.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::AwaitExpr; use crate::convert_ast::converter::AstConverter; use crate::store_await_expression; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_await_expression(&mut self, await_expression: &AwaitExpr) { store_await_expression!( self, diff --git a/rust/parse_ast/src/ast_nodes/binary_expression.rs b/rust/parse_ast/src/ast_nodes/binary_expression.rs index e4e17702b..a4bf5fe14 100644 --- a/rust/parse_ast/src/ast_nodes/binary_expression.rs +++ b/rust/parse_ast/src/ast_nodes/binary_expression.rs @@ -13,7 +13,7 @@ use crate::convert_ast::converter::string_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_binary_expression(&mut self, binary_expression: &BinExpr) { let end_position = self.add_type_and_start( match binary_expression.op { diff --git a/rust/parse_ast/src/ast_nodes/block_statement.rs b/rust/parse_ast/src/ast_nodes/block_statement.rs index dcee9b291..4c636ba99 100644 --- a/rust/parse_ast/src/ast_nodes/block_statement.rs +++ b/rust/parse_ast/src/ast_nodes/block_statement.rs @@ -5,7 +5,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_block_statement( &mut self, block_statement: &BlockStmt, diff --git a/rust/parse_ast/src/ast_nodes/break_statement.rs b/rust/parse_ast/src/ast_nodes/break_statement.rs index c92c4133f..dad051d1a 100644 --- a/rust/parse_ast/src/ast_nodes/break_statement.rs +++ b/rust/parse_ast/src/ast_nodes/break_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::BreakStmt; use crate::convert_ast::converter::AstConverter; use crate::store_break_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_break_statement(&mut self, break_statement: &BreakStmt) { store_break_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/call_expression.rs b/rust/parse_ast/src/ast_nodes/call_expression.rs index e5dff9ea9..dfc701bc5 100644 --- a/rust/parse_ast/src/ast_nodes/call_expression.rs +++ b/rust/parse_ast/src/ast_nodes/call_expression.rs @@ -9,7 +9,7 @@ use crate::convert_ast::converter::ast_constants::{ use crate::convert_ast::converter::{convert_annotation, AstConverter}; use crate::store_call_expression_flags; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_call_expression( &mut self, span: &Span, diff --git a/rust/parse_ast/src/ast_nodes/catch_clause.rs b/rust/parse_ast/src/ast_nodes/catch_clause.rs index 903233765..aa8208b04 100644 --- a/rust/parse_ast/src/ast_nodes/catch_clause.rs +++ b/rust/parse_ast/src/ast_nodes/catch_clause.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_catch_clause(&mut self, catch_clause: &CatchClause) { let end_position = self.add_type_and_start( &TYPE_CATCH_CLAUSE, diff --git a/rust/parse_ast/src/ast_nodes/chain_expression.rs b/rust/parse_ast/src/ast_nodes/chain_expression.rs index f034d8cd5..758efbd86 100644 --- a/rust/parse_ast/src/ast_nodes/chain_expression.rs +++ b/rust/parse_ast/src/ast_nodes/chain_expression.rs @@ -5,7 +5,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_chain_expression( &mut self, optional_chain_expression: &OptChainExpr, diff --git a/rust/parse_ast/src/ast_nodes/class_body.rs b/rust/parse_ast/src/ast_nodes/class_body.rs index 696ce2434..54172e131 100644 --- a/rust/parse_ast/src/ast_nodes/class_body.rs +++ b/rust/parse_ast/src/ast_nodes/class_body.rs @@ -5,7 +5,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_class_body(&mut self, class_members: &[ClassMember], start: u32, end: u32) { let end_position = self.add_type_and_explicit_start(&TYPE_CLASS_BODY, start, CLASS_BODY_RESERVED_BYTES); diff --git a/rust/parse_ast/src/ast_nodes/class_declaration.rs b/rust/parse_ast/src/ast_nodes/class_declaration.rs index 7b79633f8..56ca44e91 100644 --- a/rust/parse_ast/src/ast_nodes/class_declaration.rs +++ b/rust/parse_ast/src/ast_nodes/class_declaration.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ClassDecl; use crate::convert_ast::converter::ast_constants::TYPE_CLASS_DECLARATION; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_class_declaration(&mut self, class_declaration: &ClassDecl) { self.store_class_node( &TYPE_CLASS_DECLARATION, diff --git a/rust/parse_ast/src/ast_nodes/class_expression.rs b/rust/parse_ast/src/ast_nodes/class_expression.rs index dea6030d8..bc57ad46b 100644 --- a/rust/parse_ast/src/ast_nodes/class_expression.rs +++ b/rust/parse_ast/src/ast_nodes/class_expression.rs @@ -2,7 +2,7 @@ use swc_ecma_ast::ClassExpr; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_class_expression( &mut self, class_expression: &ClassExpr, diff --git a/rust/parse_ast/src/ast_nodes/conditional_expression.rs b/rust/parse_ast/src/ast_nodes/conditional_expression.rs index 13333943e..a4fe78564 100644 --- a/rust/parse_ast/src/ast_nodes/conditional_expression.rs +++ b/rust/parse_ast/src/ast_nodes/conditional_expression.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::CondExpr; use crate::convert_ast::converter::AstConverter; use crate::store_conditional_expression; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_conditional_expression(&mut self, conditional_expression: &CondExpr) { store_conditional_expression!( self, diff --git a/rust/parse_ast/src/ast_nodes/continue_statement.rs b/rust/parse_ast/src/ast_nodes/continue_statement.rs index 6d652d290..190046ea5 100644 --- a/rust/parse_ast/src/ast_nodes/continue_statement.rs +++ b/rust/parse_ast/src/ast_nodes/continue_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ContinueStmt; use crate::convert_ast::converter::AstConverter; use crate::store_continue_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_continue_statement(&mut self, continue_statement: &ContinueStmt) { store_continue_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/debugger_statement.rs b/rust/parse_ast/src/ast_nodes/debugger_statement.rs index 5b35df24b..f55c5d8fd 100644 --- a/rust/parse_ast/src/ast_nodes/debugger_statement.rs +++ b/rust/parse_ast/src/ast_nodes/debugger_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::DebuggerStmt; use crate::convert_ast::converter::AstConverter; use crate::store_debugger_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_debugger_statement(&mut self, debugger_statement: &DebuggerStmt) { store_debugger_statement!(self, span => debugger_statement.span); } diff --git a/rust/parse_ast/src/ast_nodes/decorator.rs b/rust/parse_ast/src/ast_nodes/decorator.rs index 61bdc265b..9ec035096 100644 --- a/rust/parse_ast/src/ast_nodes/decorator.rs +++ b/rust/parse_ast/src/ast_nodes/decorator.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::Decorator; use crate::convert_ast::converter::AstConverter; use crate::store_decorator; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_decorator(&mut self, decorator: &Decorator) { store_decorator!(self, span => decorator.span, expression=>[decorator.expr, convert_expression]); } diff --git a/rust/parse_ast/src/ast_nodes/directive.rs b/rust/parse_ast/src/ast_nodes/directive.rs index ed7bf34d9..7841b75fe 100644 --- a/rust/parse_ast/src/ast_nodes/directive.rs +++ b/rust/parse_ast/src/ast_nodes/directive.rs @@ -4,7 +4,7 @@ use swc_ecma_ast::ExprStmt; use crate::convert_ast::converter::AstConverter; use crate::store_directive; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_directive(&mut self, expression_statement: &ExprStmt, directive: &JsWord) { store_directive!( self, diff --git a/rust/parse_ast/src/ast_nodes/do_while_statement.rs b/rust/parse_ast/src/ast_nodes/do_while_statement.rs index bf00756cc..a966232d1 100644 --- a/rust/parse_ast/src/ast_nodes/do_while_statement.rs +++ b/rust/parse_ast/src/ast_nodes/do_while_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::DoWhileStmt; use crate::convert_ast::converter::AstConverter; use crate::store_do_while_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_do_while_statement(&mut self, do_while_statement: &DoWhileStmt) { store_do_while_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/empty_statement.rs b/rust/parse_ast/src/ast_nodes/empty_statement.rs index 9206fbe3a..4916ce5d0 100644 --- a/rust/parse_ast/src/ast_nodes/empty_statement.rs +++ b/rust/parse_ast/src/ast_nodes/empty_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::EmptyStmt; use crate::convert_ast::converter::AstConverter; use crate::store_empty_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_empty_statement(&mut self, empty_statement: &EmptyStmt) { store_empty_statement!(self, span => empty_statement.span); } diff --git a/rust/parse_ast/src/ast_nodes/export_all_declaration.rs b/rust/parse_ast/src/ast_nodes/export_all_declaration.rs index fd0ac5c1c..c04e81f03 100644 --- a/rust/parse_ast/src/ast_nodes/export_all_declaration.rs +++ b/rust/parse_ast/src/ast_nodes/export_all_declaration.rs @@ -8,7 +8,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_export_all_declaration( &mut self, span: &Span, diff --git a/rust/parse_ast/src/ast_nodes/export_default_declaration.rs b/rust/parse_ast/src/ast_nodes/export_default_declaration.rs index c673e2904..8f610cc0f 100644 --- a/rust/parse_ast/src/ast_nodes/export_default_declaration.rs +++ b/rust/parse_ast/src/ast_nodes/export_default_declaration.rs @@ -7,7 +7,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_export_default_declaration( &mut self, span: &Span, diff --git a/rust/parse_ast/src/ast_nodes/export_named_declaration.rs b/rust/parse_ast/src/ast_nodes/export_named_declaration.rs index 73cd62eeb..29d970fcb 100644 --- a/rust/parse_ast/src/ast_nodes/export_named_declaration.rs +++ b/rust/parse_ast/src/ast_nodes/export_named_declaration.rs @@ -8,7 +8,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_export_named_declaration( &mut self, span: &Span, diff --git a/rust/parse_ast/src/ast_nodes/export_specifier.rs b/rust/parse_ast/src/ast_nodes/export_specifier.rs index 5319746cd..fd36159f4 100644 --- a/rust/parse_ast/src/ast_nodes/export_specifier.rs +++ b/rust/parse_ast/src/ast_nodes/export_specifier.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ExportNamedSpecifier; use crate::convert_ast::converter::AstConverter; use crate::store_export_specifier; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_export_specifier(&mut self, export_named_specifier: &ExportNamedSpecifier) { store_export_specifier!( self, diff --git a/rust/parse_ast/src/ast_nodes/expression_statement.rs b/rust/parse_ast/src/ast_nodes/expression_statement.rs index b71d13f2a..e75ef2a6b 100644 --- a/rust/parse_ast/src/ast_nodes/expression_statement.rs +++ b/rust/parse_ast/src/ast_nodes/expression_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ExprStmt; use crate::convert_ast::converter::AstConverter; use crate::store_expression_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_expression_statement(&mut self, expression_statement: &ExprStmt) { store_expression_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/for_in_statement.rs b/rust/parse_ast/src/ast_nodes/for_in_statement.rs index 8a584c8f4..4814af463 100644 --- a/rust/parse_ast/src/ast_nodes/for_in_statement.rs +++ b/rust/parse_ast/src/ast_nodes/for_in_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ForInStmt; use crate::convert_ast::converter::AstConverter; use crate::store_for_in_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_for_in_statement(&mut self, for_in_statement: &ForInStmt) { store_for_in_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/for_of_statement.rs b/rust/parse_ast/src/ast_nodes/for_of_statement.rs index eb27dd7e0..c051ce2bd 100644 --- a/rust/parse_ast/src/ast_nodes/for_of_statement.rs +++ b/rust/parse_ast/src/ast_nodes/for_of_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ForOfStmt; use crate::convert_ast::converter::AstConverter; use crate::{store_for_of_statement, store_for_of_statement_flags}; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_for_of_statement(&mut self, for_of_statement: &ForOfStmt) { store_for_of_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/for_statement.rs b/rust/parse_ast/src/ast_nodes/for_statement.rs index fd797ee70..b11716af6 100644 --- a/rust/parse_ast/src/ast_nodes/for_statement.rs +++ b/rust/parse_ast/src/ast_nodes/for_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ForStmt; use crate::convert_ast::converter::AstConverter; use crate::store_for_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_for_statement(&mut self, for_statement: &ForStmt) { store_for_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/function_declaration.rs b/rust/parse_ast/src/ast_nodes/function_declaration.rs index 58b1d1504..c9908cdbd 100644 --- a/rust/parse_ast/src/ast_nodes/function_declaration.rs +++ b/rust/parse_ast/src/ast_nodes/function_declaration.rs @@ -1,5 +1,5 @@ use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { // included in shared/function_node.rs } diff --git a/rust/parse_ast/src/ast_nodes/function_expression.rs b/rust/parse_ast/src/ast_nodes/function_expression.rs index 58b1d1504..c9908cdbd 100644 --- a/rust/parse_ast/src/ast_nodes/function_expression.rs +++ b/rust/parse_ast/src/ast_nodes/function_expression.rs @@ -1,5 +1,5 @@ use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { // included in shared/function_node.rs } diff --git a/rust/parse_ast/src/ast_nodes/identifier.rs b/rust/parse_ast/src/ast_nodes/identifier.rs index c42b21574..1d4a0012f 100644 --- a/rust/parse_ast/src/ast_nodes/identifier.rs +++ b/rust/parse_ast/src/ast_nodes/identifier.rs @@ -5,7 +5,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_identifier(&mut self, start: u32, end: u32, name: &str) { let end_position = self.add_type_and_explicit_start(&TYPE_IDENTIFIER, start, IDENTIFIER_RESERVED_BYTES); diff --git a/rust/parse_ast/src/ast_nodes/if_statement.rs b/rust/parse_ast/src/ast_nodes/if_statement.rs index c8dcb86f3..9b5931c6b 100644 --- a/rust/parse_ast/src/ast_nodes/if_statement.rs +++ b/rust/parse_ast/src/ast_nodes/if_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::IfStmt; use crate::convert_ast::converter::AstConverter; use crate::store_if_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_if_statement(&mut self, if_statement: &IfStmt) { store_if_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/import_attribute.rs b/rust/parse_ast/src/ast_nodes/import_attribute.rs index fc1842961..25c806afc 100644 --- a/rust/parse_ast/src/ast_nodes/import_attribute.rs +++ b/rust/parse_ast/src/ast_nodes/import_attribute.rs @@ -7,7 +7,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_import_attribute(&mut self, key_value_property: &KeyValueProp) { // type let end_position = self.add_type_and_start( diff --git a/rust/parse_ast/src/ast_nodes/import_declaration.rs b/rust/parse_ast/src/ast_nodes/import_declaration.rs index 99890338d..c5f4798bf 100644 --- a/rust/parse_ast/src/ast_nodes/import_declaration.rs +++ b/rust/parse_ast/src/ast_nodes/import_declaration.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_import_declaration(&mut self, import_declaration: &ImportDecl) { let end_position = self.add_type_and_start( &TYPE_IMPORT_DECLARATION, diff --git a/rust/parse_ast/src/ast_nodes/import_default_specifier.rs b/rust/parse_ast/src/ast_nodes/import_default_specifier.rs index 70c8d5bb7..8f436c237 100644 --- a/rust/parse_ast/src/ast_nodes/import_default_specifier.rs +++ b/rust/parse_ast/src/ast_nodes/import_default_specifier.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ImportDefaultSpecifier; use crate::convert_ast::converter::AstConverter; use crate::store_import_default_specifier; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_import_default_specifier( &mut self, import_default_specifier: &ImportDefaultSpecifier, diff --git a/rust/parse_ast/src/ast_nodes/import_expression.rs b/rust/parse_ast/src/ast_nodes/import_expression.rs index 19cff3f0d..101adee31 100644 --- a/rust/parse_ast/src/ast_nodes/import_expression.rs +++ b/rust/parse_ast/src/ast_nodes/import_expression.rs @@ -7,7 +7,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_import_expression(&mut self, span: &Span, arguments: &[ExprOrSpread]) { let end_position = self.add_type_and_start( &TYPE_IMPORT_EXPRESSION, diff --git a/rust/parse_ast/src/ast_nodes/import_namespace_specifier.rs b/rust/parse_ast/src/ast_nodes/import_namespace_specifier.rs index 0128b0e5c..17ac2d916 100644 --- a/rust/parse_ast/src/ast_nodes/import_namespace_specifier.rs +++ b/rust/parse_ast/src/ast_nodes/import_namespace_specifier.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ImportStarAsSpecifier; use crate::convert_ast::converter::AstConverter; use crate::store_import_namespace_specifier; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_import_namespace_specifier( &mut self, import_namespace_specifier: &ImportStarAsSpecifier, diff --git a/rust/parse_ast/src/ast_nodes/import_specifier.rs b/rust/parse_ast/src/ast_nodes/import_specifier.rs index 3c1627022..4a1e657f4 100644 --- a/rust/parse_ast/src/ast_nodes/import_specifier.rs +++ b/rust/parse_ast/src/ast_nodes/import_specifier.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ImportNamedSpecifier; use crate::convert_ast::converter::AstConverter; use crate::store_import_specifier; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_import_specifier(&mut self, import_named_specifier: &ImportNamedSpecifier) { store_import_specifier!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_attribute.rs b/rust/parse_ast/src/ast_nodes/jsx_attribute.rs index 1e36f231e..c49fe3132 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_attribute.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_attribute.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::JSXAttr; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_attribute; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_attribute(&mut self, jsx_attribute: &JSXAttr) { store_jsx_attribute!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_closing_element.rs b/rust/parse_ast/src/ast_nodes/jsx_closing_element.rs index c5281e50d..e75deaa45 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_closing_element.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_closing_element.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::JSXClosingElement; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_closing_element; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_closing_element(&mut self, jsx_closing_element: &JSXClosingElement) { store_jsx_closing_element!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_closing_fragment.rs b/rust/parse_ast/src/ast_nodes/jsx_closing_fragment.rs index 650df600f..759570c41 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_closing_fragment.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_closing_fragment.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::JSXClosingFragment; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_closing_fragment; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_closing_fragment(&mut self, jsx_closing_fragment: &JSXClosingFragment) { store_jsx_closing_fragment!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_element.rs b/rust/parse_ast/src/ast_nodes/jsx_element.rs index 6a425940f..378f38535 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_element.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_element.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::JSXElement; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_element; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_element(&mut self, jsx_element: &JSXElement) { store_jsx_element!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_empty_expression.rs b/rust/parse_ast/src/ast_nodes/jsx_empty_expression.rs index 5b33e034e..2ef27eed5 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_empty_expression.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_empty_expression.rs @@ -3,7 +3,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_empty_expression(&mut self, start: u32, end: u32) { let end_position = self.add_type_and_explicit_start( &TYPE_JSX_EMPTY_EXPRESSION, diff --git a/rust/parse_ast/src/ast_nodes/jsx_expression_container.rs b/rust/parse_ast/src/ast_nodes/jsx_expression_container.rs index d1dc186e0..4d88e111d 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_expression_container.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_expression_container.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_expression_container(&mut self, jsx_expr_container: &JSXExprContainer) { let end_position = self.add_type_and_start( &TYPE_JSX_EXPRESSION_CONTAINER, diff --git a/rust/parse_ast/src/ast_nodes/jsx_fragment.rs b/rust/parse_ast/src/ast_nodes/jsx_fragment.rs index 0d7a19ded..df0a34bab 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_fragment.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_fragment.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::JSXFragment; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_fragment; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_fragment(&mut self, jsx_fragment: &JSXFragment) { store_jsx_fragment!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_identifier.rs b/rust/parse_ast/src/ast_nodes/jsx_identifier.rs index 0a3ba71c6..ef9c14668 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_identifier.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_identifier.rs @@ -3,7 +3,7 @@ use swc_common::Span; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_identifier; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_identifier(&mut self, span: &Span, name: &str) { store_jsx_identifier!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_member_expression.rs b/rust/parse_ast/src/ast_nodes/jsx_member_expression.rs index b31460e0b..356951eab 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_member_expression.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_member_expression.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_member_expression(&mut self, jsx_member_expression: &JSXMemberExpr) { let end_position = self.add_type_and_start( &TYPE_JSX_MEMBER_EXPRESSION, diff --git a/rust/parse_ast/src/ast_nodes/jsx_namespaced_name.rs b/rust/parse_ast/src/ast_nodes/jsx_namespaced_name.rs index ed61746af..5fc80c5be 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_namespaced_name.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_namespaced_name.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_namespaced_name(&mut self, jsx_namespaced_name: &JSXNamespacedName) { let end_position = self.add_type_and_start( &TYPE_JSX_NAMESPACED_NAME, diff --git a/rust/parse_ast/src/ast_nodes/jsx_opening_element.rs b/rust/parse_ast/src/ast_nodes/jsx_opening_element.rs index 1bd4b1025..74bac797b 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_opening_element.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_opening_element.rs @@ -8,7 +8,7 @@ use crate::convert_ast::converter::ast_constants::{ use crate::convert_ast::converter::AstConverter; use crate::store_jsx_opening_element_flags; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_opening_element(&mut self, jsx_opening_element: &JSXOpeningElement) { let end_position = self.add_type_and_start( &TYPE_JSX_OPENING_ELEMENT, diff --git a/rust/parse_ast/src/ast_nodes/jsx_opening_fragment.rs b/rust/parse_ast/src/ast_nodes/jsx_opening_fragment.rs index acb52da45..3d06ec7a2 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_opening_fragment.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_opening_fragment.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::JSXOpeningFragment; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_opening_fragment; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_opening_fragment(&mut self, jsx_opening_fragment: &JSXOpeningFragment) { store_jsx_opening_fragment!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_spread_attribute.rs b/rust/parse_ast/src/ast_nodes/jsx_spread_attribute.rs index 86eb4dfcd..ad264b32e 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_spread_attribute.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_spread_attribute.rs @@ -8,7 +8,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_spread_attribute( &mut self, spread_element: &SpreadElement, diff --git a/rust/parse_ast/src/ast_nodes/jsx_spread_child.rs b/rust/parse_ast/src/ast_nodes/jsx_spread_child.rs index b65bc4961..ea2fb976c 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_spread_child.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_spread_child.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::JSXSpreadChild; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_spread_child; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_spread_child(&mut self, jsx_spread_child: &JSXSpreadChild) { store_jsx_spread_child!( self, diff --git a/rust/parse_ast/src/ast_nodes/jsx_text.rs b/rust/parse_ast/src/ast_nodes/jsx_text.rs index 6bf72a1e3..64cc91a57 100644 --- a/rust/parse_ast/src/ast_nodes/jsx_text.rs +++ b/rust/parse_ast/src/ast_nodes/jsx_text.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::JSXText; use crate::convert_ast::converter::AstConverter; use crate::store_jsx_text; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_jsx_text(&mut self, jsx_text: &JSXText) { store_jsx_text!( self, diff --git a/rust/parse_ast/src/ast_nodes/labeled_statement.rs b/rust/parse_ast/src/ast_nodes/labeled_statement.rs index f2a8dc44b..9734adb45 100644 --- a/rust/parse_ast/src/ast_nodes/labeled_statement.rs +++ b/rust/parse_ast/src/ast_nodes/labeled_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::LabeledStmt; use crate::convert_ast::converter::AstConverter; use crate::store_labeled_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_labeled_statement(&mut self, labeled_statement: &LabeledStmt) { store_labeled_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/literal_big_int.rs b/rust/parse_ast/src/ast_nodes/literal_big_int.rs index 2ca27c3aa..190d02b67 100644 --- a/rust/parse_ast/src/ast_nodes/literal_big_int.rs +++ b/rust/parse_ast/src/ast_nodes/literal_big_int.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::BigInt; use crate::convert_ast::converter::AstConverter; use crate::store_literal_big_int; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_literal_bigint(&mut self, bigint: &BigInt) { store_literal_big_int!( self, diff --git a/rust/parse_ast/src/ast_nodes/literal_boolean.rs b/rust/parse_ast/src/ast_nodes/literal_boolean.rs index 41e22f75c..088ae52dc 100644 --- a/rust/parse_ast/src/ast_nodes/literal_boolean.rs +++ b/rust/parse_ast/src/ast_nodes/literal_boolean.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::Bool; use crate::convert_ast::converter::AstConverter; use crate::{store_literal_boolean, store_literal_boolean_flags}; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_literal_boolean(&mut self, literal: &Bool) { store_literal_boolean!( self, diff --git a/rust/parse_ast/src/ast_nodes/literal_null.rs b/rust/parse_ast/src/ast_nodes/literal_null.rs index 541007ff3..c17bea0d0 100644 --- a/rust/parse_ast/src/ast_nodes/literal_null.rs +++ b/rust/parse_ast/src/ast_nodes/literal_null.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::Null; use crate::convert_ast::converter::AstConverter; use crate::store_literal_null; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_literal_null(&mut self, literal: &Null) { store_literal_null!( self, diff --git a/rust/parse_ast/src/ast_nodes/literal_number.rs b/rust/parse_ast/src/ast_nodes/literal_number.rs index 6c8d9aa3d..295b0b0cd 100644 --- a/rust/parse_ast/src/ast_nodes/literal_number.rs +++ b/rust/parse_ast/src/ast_nodes/literal_number.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::Number; use crate::convert_ast::converter::AstConverter; use crate::store_literal_number; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_literal_number(&mut self, literal: &Number) { store_literal_number!( self, diff --git a/rust/parse_ast/src/ast_nodes/literal_reg_exp.rs b/rust/parse_ast/src/ast_nodes/literal_reg_exp.rs index f731d3efb..595a62bc6 100644 --- a/rust/parse_ast/src/ast_nodes/literal_reg_exp.rs +++ b/rust/parse_ast/src/ast_nodes/literal_reg_exp.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::Regex; use crate::convert_ast::converter::AstConverter; use crate::store_literal_reg_exp; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_literal_regex(&mut self, regex: &Regex) { store_literal_reg_exp!( self, diff --git a/rust/parse_ast/src/ast_nodes/literal_string.rs b/rust/parse_ast/src/ast_nodes/literal_string.rs index 373db0b5a..c2458b6c4 100644 --- a/rust/parse_ast/src/ast_nodes/literal_string.rs +++ b/rust/parse_ast/src/ast_nodes/literal_string.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::Str; use crate::convert_ast::converter::AstConverter; use crate::store_literal_string; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_literal_string(&mut self, literal: &Str) { store_literal_string!( self, diff --git a/rust/parse_ast/src/ast_nodes/logical_expression.rs b/rust/parse_ast/src/ast_nodes/logical_expression.rs index 5e7762e0c..c65bb83e2 100644 --- a/rust/parse_ast/src/ast_nodes/logical_expression.rs +++ b/rust/parse_ast/src/ast_nodes/logical_expression.rs @@ -1,5 +1,5 @@ use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { // included in binary_expression.rs } diff --git a/rust/parse_ast/src/ast_nodes/member_expression.rs b/rust/parse_ast/src/ast_nodes/member_expression.rs index 6b0b23db2..2453c900c 100644 --- a/rust/parse_ast/src/ast_nodes/member_expression.rs +++ b/rust/parse_ast/src/ast_nodes/member_expression.rs @@ -11,7 +11,7 @@ use crate::convert_ast::converter::ast_constants::{ use crate::convert_ast::converter::AstConverter; use crate::store_member_expression_flags; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_member_expression( &mut self, span: &Span, diff --git a/rust/parse_ast/src/ast_nodes/meta_property.rs b/rust/parse_ast/src/ast_nodes/meta_property.rs index 35d4d8260..97994fe41 100644 --- a/rust/parse_ast/src/ast_nodes/meta_property.rs +++ b/rust/parse_ast/src/ast_nodes/meta_property.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_meta_property(&mut self, meta_property_expression: &MetaPropExpr) { let end_position = self.add_type_and_start( &TYPE_META_PROPERTY, diff --git a/rust/parse_ast/src/ast_nodes/method_definition.rs b/rust/parse_ast/src/ast_nodes/method_definition.rs index fd5b8d021..e783e552a 100644 --- a/rust/parse_ast/src/ast_nodes/method_definition.rs +++ b/rust/parse_ast/src/ast_nodes/method_definition.rs @@ -16,7 +16,7 @@ use crate::convert_ast::converter::string_constants::{ use crate::convert_ast::converter::AstConverter; use crate::store_method_definition_flags; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_method_definition( &mut self, span: &Span, diff --git a/rust/parse_ast/src/ast_nodes/new_expression.rs b/rust/parse_ast/src/ast_nodes/new_expression.rs index 20a01e21e..6868eb630 100644 --- a/rust/parse_ast/src/ast_nodes/new_expression.rs +++ b/rust/parse_ast/src/ast_nodes/new_expression.rs @@ -7,7 +7,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::{convert_annotation, AstConverter}; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_new_expression(&mut self, new_expression: &NewExpr) { let end_position = self.add_type_and_start( &TYPE_NEW_EXPRESSION, diff --git a/rust/parse_ast/src/ast_nodes/object_expression.rs b/rust/parse_ast/src/ast_nodes/object_expression.rs index 647ac19be..8d34d54b6 100644 --- a/rust/parse_ast/src/ast_nodes/object_expression.rs +++ b/rust/parse_ast/src/ast_nodes/object_expression.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ObjectLit; use crate::convert_ast::converter::AstConverter; use crate::store_object_expression; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_object_expression(&mut self, object_literal: &ObjectLit) { store_object_expression!( self, diff --git a/rust/parse_ast/src/ast_nodes/object_pattern.rs b/rust/parse_ast/src/ast_nodes/object_pattern.rs index 16b3dc1ff..66fad8638 100644 --- a/rust/parse_ast/src/ast_nodes/object_pattern.rs +++ b/rust/parse_ast/src/ast_nodes/object_pattern.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ObjectPat; use crate::convert_ast::converter::AstConverter; use crate::store_object_pattern; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_object_pattern(&mut self, object_pattern: &ObjectPat) { store_object_pattern!( self, diff --git a/rust/parse_ast/src/ast_nodes/private_identifier.rs b/rust/parse_ast/src/ast_nodes/private_identifier.rs index 2ae38cd4d..83ebb2be2 100644 --- a/rust/parse_ast/src/ast_nodes/private_identifier.rs +++ b/rust/parse_ast/src/ast_nodes/private_identifier.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::PrivateName; use crate::convert_ast::converter::AstConverter; use crate::store_private_identifier; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_private_identifier(&mut self, private_name: &PrivateName) { store_private_identifier!( self, diff --git a/rust/parse_ast/src/ast_nodes/program.rs b/rust/parse_ast/src/ast_nodes/program.rs index f83106328..bf654258b 100644 --- a/rust/parse_ast/src/ast_nodes/program.rs +++ b/rust/parse_ast/src/ast_nodes/program.rs @@ -5,7 +5,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::{convert_annotation, AstConverter}; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_program(&mut self, body: ModuleItemsOrStatements) { let end_position = self.add_type_and_explicit_start(&TYPE_PROGRAM, 0u32, PROGRAM_RESERVED_BYTES); diff --git a/rust/parse_ast/src/ast_nodes/property.rs b/rust/parse_ast/src/ast_nodes/property.rs index fda028829..d896048fe 100644 --- a/rust/parse_ast/src/ast_nodes/property.rs +++ b/rust/parse_ast/src/ast_nodes/property.rs @@ -14,7 +14,7 @@ use crate::convert_ast::converter::string_constants::{STRING_GET, STRING_INIT, S use crate::convert_ast::converter::AstConverter; use crate::store_property_flags; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn convert_property(&mut self, property: &Prop) { match property { Prop::Getter(getter_property) => self.convert_getter_property(getter_property), diff --git a/rust/parse_ast/src/ast_nodes/property_definition.rs b/rust/parse_ast/src/ast_nodes/property_definition.rs index 4ef508d72..b9b4ac2dc 100644 --- a/rust/parse_ast/src/ast_nodes/property_definition.rs +++ b/rust/parse_ast/src/ast_nodes/property_definition.rs @@ -9,7 +9,7 @@ use crate::convert_ast::converter::ast_constants::{ use crate::convert_ast::converter::AstConverter; use crate::store_property_definition_flags; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_property_definition( &mut self, span: &Span, diff --git a/rust/parse_ast/src/ast_nodes/rest_element.rs b/rust/parse_ast/src/ast_nodes/rest_element.rs index 9176410c2..f856c7b07 100644 --- a/rust/parse_ast/src/ast_nodes/rest_element.rs +++ b/rust/parse_ast/src/ast_nodes/rest_element.rs @@ -5,7 +5,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_rest_element(&mut self, rest_pattern: &RestPat) { let end_position = self.add_type_and_start( &TYPE_REST_ELEMENT, diff --git a/rust/parse_ast/src/ast_nodes/return_statement.rs b/rust/parse_ast/src/ast_nodes/return_statement.rs index 0e41a910b..f4b552bfb 100644 --- a/rust/parse_ast/src/ast_nodes/return_statement.rs +++ b/rust/parse_ast/src/ast_nodes/return_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ReturnStmt; use crate::convert_ast::converter::AstConverter; use crate::store_return_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_return_statement(&mut self, return_statement: &ReturnStmt) { store_return_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/sequence_expression.rs b/rust/parse_ast/src/ast_nodes/sequence_expression.rs index f179cdbf3..4e65e5fd6 100644 --- a/rust/parse_ast/src/ast_nodes/sequence_expression.rs +++ b/rust/parse_ast/src/ast_nodes/sequence_expression.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::SeqExpr; use crate::convert_ast::converter::AstConverter; use crate::store_sequence_expression; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_sequence_expression(&mut self, sequence_expression: &SeqExpr) { store_sequence_expression!( self, diff --git a/rust/parse_ast/src/ast_nodes/shared/class_node.rs b/rust/parse_ast/src/ast_nodes/shared/class_node.rs index 068b7aaba..ebe5a43f3 100644 --- a/rust/parse_ast/src/ast_nodes/shared/class_node.rs +++ b/rust/parse_ast/src/ast_nodes/shared/class_node.rs @@ -8,7 +8,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_class_node( &mut self, node_type: &[u8; 4], diff --git a/rust/parse_ast/src/ast_nodes/shared/function_node.rs b/rust/parse_ast/src/ast_nodes/shared/function_node.rs index 665411e72..2555f6e85 100644 --- a/rust/parse_ast/src/ast_nodes/shared/function_node.rs +++ b/rust/parse_ast/src/ast_nodes/shared/function_node.rs @@ -9,7 +9,7 @@ use crate::convert_ast::converter::ast_constants::{ use crate::convert_ast::converter::{convert_annotation, AstConverter}; use crate::store_function_declaration_flags; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn convert_function( &mut self, function: &Function, diff --git a/rust/parse_ast/src/ast_nodes/spread_element.rs b/rust/parse_ast/src/ast_nodes/spread_element.rs index 0a6b9dfbd..6c68d4e5f 100644 --- a/rust/parse_ast/src/ast_nodes/spread_element.rs +++ b/rust/parse_ast/src/ast_nodes/spread_element.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_spread_element(&mut self, dot_span: &Span, argument: &Expr) { let end_position = self.add_type_and_start( &TYPE_SPREAD_ELEMENT, diff --git a/rust/parse_ast/src/ast_nodes/static_block.rs b/rust/parse_ast/src/ast_nodes/static_block.rs index 4b0e7d461..df25ca260 100644 --- a/rust/parse_ast/src/ast_nodes/static_block.rs +++ b/rust/parse_ast/src/ast_nodes/static_block.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::StaticBlock; use crate::convert_ast::converter::AstConverter; use crate::store_static_block; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_static_block(&mut self, static_block: &StaticBlock) { store_static_block!( self, diff --git a/rust/parse_ast/src/ast_nodes/super_element.rs b/rust/parse_ast/src/ast_nodes/super_element.rs index 1ca9c6676..c5d661ba8 100644 --- a/rust/parse_ast/src/ast_nodes/super_element.rs +++ b/rust/parse_ast/src/ast_nodes/super_element.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::Super; use crate::convert_ast::converter::AstConverter; use crate::store_super_element; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_super_element(&mut self, super_token: &Super) { store_super_element!( self, diff --git a/rust/parse_ast/src/ast_nodes/switch_case.rs b/rust/parse_ast/src/ast_nodes/switch_case.rs index 3cd92797c..e8acf0902 100644 --- a/rust/parse_ast/src/ast_nodes/switch_case.rs +++ b/rust/parse_ast/src/ast_nodes/switch_case.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::SwitchCase; use crate::convert_ast::converter::AstConverter; use crate::store_switch_case; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_switch_case(&mut self, switch_case: &SwitchCase) { store_switch_case!( self, diff --git a/rust/parse_ast/src/ast_nodes/switch_statement.rs b/rust/parse_ast/src/ast_nodes/switch_statement.rs index 3dd18303d..e5975da4f 100644 --- a/rust/parse_ast/src/ast_nodes/switch_statement.rs +++ b/rust/parse_ast/src/ast_nodes/switch_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::SwitchStmt; use crate::convert_ast::converter::AstConverter; use crate::store_switch_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_switch_statement(&mut self, switch_statement: &SwitchStmt) { store_switch_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/tagged_template_expression.rs b/rust/parse_ast/src/ast_nodes/tagged_template_expression.rs index ac7fdbc01..b4978d887 100644 --- a/rust/parse_ast/src/ast_nodes/tagged_template_expression.rs +++ b/rust/parse_ast/src/ast_nodes/tagged_template_expression.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::TaggedTpl; use crate::convert_ast::converter::AstConverter; use crate::store_tagged_template_expression; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_tagged_template_expression(&mut self, tagged_template: &TaggedTpl) { store_tagged_template_expression!( self, diff --git a/rust/parse_ast/src/ast_nodes/template_element.rs b/rust/parse_ast/src/ast_nodes/template_element.rs index ee9339475..b3823ad92 100644 --- a/rust/parse_ast/src/ast_nodes/template_element.rs +++ b/rust/parse_ast/src/ast_nodes/template_element.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::TplElement; use crate::convert_ast::converter::AstConverter; use crate::{store_template_element, store_template_element_flags}; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_template_element(&mut self, template_element: &TplElement) { store_template_element!( self, diff --git a/rust/parse_ast/src/ast_nodes/template_literal.rs b/rust/parse_ast/src/ast_nodes/template_literal.rs index a584df678..cbde87f96 100644 --- a/rust/parse_ast/src/ast_nodes/template_literal.rs +++ b/rust/parse_ast/src/ast_nodes/template_literal.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_template_literal(&mut self, template_literal: &Tpl) { let end_position = self.add_type_and_start( &TYPE_TEMPLATE_LITERAL, diff --git a/rust/parse_ast/src/ast_nodes/this_expression.rs b/rust/parse_ast/src/ast_nodes/this_expression.rs index 0e65f17bc..ebe3bd4c5 100644 --- a/rust/parse_ast/src/ast_nodes/this_expression.rs +++ b/rust/parse_ast/src/ast_nodes/this_expression.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ThisExpr; use crate::convert_ast::converter::AstConverter; use crate::store_this_expression; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_this_expression(&mut self, this_expression: &ThisExpr) { store_this_expression!(self, span => this_expression.span); } diff --git a/rust/parse_ast/src/ast_nodes/throw_statement.rs b/rust/parse_ast/src/ast_nodes/throw_statement.rs index 0d154da68..96f3128a0 100644 --- a/rust/parse_ast/src/ast_nodes/throw_statement.rs +++ b/rust/parse_ast/src/ast_nodes/throw_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::ThrowStmt; use crate::convert_ast::converter::AstConverter; use crate::store_throw_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_throw_statement(&mut self, throw_statement: &ThrowStmt) { store_throw_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/try_statement.rs b/rust/parse_ast/src/ast_nodes/try_statement.rs index 537433327..66728a0e0 100644 --- a/rust/parse_ast/src/ast_nodes/try_statement.rs +++ b/rust/parse_ast/src/ast_nodes/try_statement.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_try_statement(&mut self, try_statement: &TryStmt) { let end_position = self.add_type_and_start( &TYPE_TRY_STATEMENT, diff --git a/rust/parse_ast/src/ast_nodes/unary_expression.rs b/rust/parse_ast/src/ast_nodes/unary_expression.rs index 34f5c9a81..d1affc5e4 100644 --- a/rust/parse_ast/src/ast_nodes/unary_expression.rs +++ b/rust/parse_ast/src/ast_nodes/unary_expression.rs @@ -6,7 +6,7 @@ use crate::convert_ast::converter::string_constants::{ use crate::convert_ast::converter::AstConverter; use crate::store_unary_expression; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_unary_expression(&mut self, unary_expression: &UnaryExpr) { store_unary_expression!( self, diff --git a/rust/parse_ast/src/ast_nodes/update_expression.rs b/rust/parse_ast/src/ast_nodes/update_expression.rs index 5886609c8..87a654817 100644 --- a/rust/parse_ast/src/ast_nodes/update_expression.rs +++ b/rust/parse_ast/src/ast_nodes/update_expression.rs @@ -4,7 +4,7 @@ use crate::convert_ast::converter::string_constants::{STRING_MINUSMINUS, STRING_ use crate::convert_ast::converter::AstConverter; use crate::{store_update_expression, store_update_expression_flags}; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_update_expression(&mut self, update_expression: &UpdateExpr) { store_update_expression!( self, diff --git a/rust/parse_ast/src/ast_nodes/variable_declaration.rs b/rust/parse_ast/src/ast_nodes/variable_declaration.rs index 9dc4760d8..8e889e408 100644 --- a/rust/parse_ast/src/ast_nodes/variable_declaration.rs +++ b/rust/parse_ast/src/ast_nodes/variable_declaration.rs @@ -10,7 +10,7 @@ use crate::convert_ast::converter::string_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_variable_declaration(&mut self, variable_declaration: &VariableDeclaration) { let (kind, span, decls): (&[u8; 4], Span, &Vec) = match variable_declaration { VariableDeclaration::Var(value) => ( diff --git a/rust/parse_ast/src/ast_nodes/variable_declarator.rs b/rust/parse_ast/src/ast_nodes/variable_declarator.rs index 317b1b29e..2d7fe6b02 100644 --- a/rust/parse_ast/src/ast_nodes/variable_declarator.rs +++ b/rust/parse_ast/src/ast_nodes/variable_declarator.rs @@ -7,7 +7,7 @@ use crate::convert_ast::converter::ast_constants::{ }; use crate::convert_ast::converter::AstConverter; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_variable_declarator(&mut self, variable_declarator: &VarDeclarator) { let end_position = self.add_type_and_start( &TYPE_VARIABLE_DECLARATOR, diff --git a/rust/parse_ast/src/ast_nodes/while_statement.rs b/rust/parse_ast/src/ast_nodes/while_statement.rs index 42e00184b..5fa949041 100644 --- a/rust/parse_ast/src/ast_nodes/while_statement.rs +++ b/rust/parse_ast/src/ast_nodes/while_statement.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::WhileStmt; use crate::convert_ast::converter::AstConverter; use crate::store_while_statement; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_while_statement(&mut self, while_statement: &WhileStmt) { store_while_statement!( self, diff --git a/rust/parse_ast/src/ast_nodes/yield_expression.rs b/rust/parse_ast/src/ast_nodes/yield_expression.rs index 960653113..35085d287 100644 --- a/rust/parse_ast/src/ast_nodes/yield_expression.rs +++ b/rust/parse_ast/src/ast_nodes/yield_expression.rs @@ -3,7 +3,7 @@ use swc_ecma_ast::YieldExpr; use crate::convert_ast::converter::AstConverter; use crate::{store_yield_expression, store_yield_expression_flags}; -impl<'a> AstConverter<'a> { +impl AstConverter<'_> { pub(crate) fn store_yield_expression(&mut self, yield_expression: &YieldExpr) { store_yield_expression!( self, diff --git a/src/ast/nodes/ConditionalExpression.ts b/src/ast/nodes/ConditionalExpression.ts index 5645a23f9..1cb7219f7 100644 --- a/src/ast/nodes/ConditionalExpression.ts +++ b/src/ast/nodes/ConditionalExpression.ts @@ -11,6 +11,7 @@ import type { HasEffectsContext, InclusionContext } from '../ExecutionContext'; import type { NodeInteraction, NodeInteractionCalled } from '../NodeInteractions'; import type { ObjectPath, PathTracker } from '../utils/PathTracker'; import { EMPTY_PATH, SHARED_RECURSION_TRACKER, UNKNOWN_PATH } from '../utils/PathTracker'; +import { tryCastLiteralValueToBoolean } from '../utils/tryCastLiteralValueToBoolean'; import type * as NodeType from './NodeType'; import type SpreadElement from './SpreadElement'; import { Flag, isFlagSet, setFlag } from './shared/BitFlags'; @@ -211,7 +212,9 @@ export default class ConditionalExpression extends NodeBase implements Deoptimiz return this.usedBranch; } this.isBranchResolutionAnalysed = true; - const testValue = this.test.getLiteralValueAtPath(EMPTY_PATH, SHARED_RECURSION_TRACKER, this); + const testValue = tryCastLiteralValueToBoolean( + this.test.getLiteralValueAtPath(EMPTY_PATH, SHARED_RECURSION_TRACKER, this) + ); return typeof testValue === 'symbol' ? null : (this.usedBranch = testValue ? this.consequent : this.alternate); diff --git a/src/ast/nodes/IfStatement.ts b/src/ast/nodes/IfStatement.ts index 07651843b..f6497fe87 100644 --- a/src/ast/nodes/IfStatement.ts +++ b/src/ast/nodes/IfStatement.ts @@ -4,6 +4,7 @@ import type { DeoptimizableEntity } from '../DeoptimizableEntity'; import { type HasEffectsContext, type InclusionContext } from '../ExecutionContext'; import TrackingScope from '../scopes/TrackingScope'; import { EMPTY_PATH, SHARED_RECURSION_TRACKER } from '../utils/PathTracker'; +import { tryCastLiteralValueToBoolean } from '../utils/tryCastLiteralValueToBoolean'; import BlockStatement from './BlockStatement'; import type Identifier from './Identifier'; import * as NodeType from './NodeType'; @@ -124,10 +125,8 @@ export default class IfStatement extends StatementBase implements DeoptimizableE private getTestValue(): LiteralValueOrUnknown { if (this.testValue === unset) { - return (this.testValue = this.test.getLiteralValueAtPath( - EMPTY_PATH, - SHARED_RECURSION_TRACKER, - this + return (this.testValue = tryCastLiteralValueToBoolean( + this.test.getLiteralValueAtPath(EMPTY_PATH, SHARED_RECURSION_TRACKER, this) )); } return this.testValue; diff --git a/src/ast/nodes/LogicalExpression.ts b/src/ast/nodes/LogicalExpression.ts index e5fa9d6f5..4eb014073 100644 --- a/src/ast/nodes/LogicalExpression.ts +++ b/src/ast/nodes/LogicalExpression.ts @@ -18,11 +18,14 @@ import { SHARED_RECURSION_TRACKER, UNKNOWN_PATH } from '../utils/PathTracker'; +import { tryCastLiteralValueToBoolean } from '../utils/tryCastLiteralValueToBoolean'; import type * as NodeType from './NodeType'; import { Flag, isFlagSet, setFlag } from './shared/BitFlags'; import { type ExpressionEntity, type LiteralValueOrUnknown, + UnknownFalsyValue, + UnknownTruthyValue, UnknownValue } from './shared/Expression'; import { MultiExpression } from './shared/MultiExpression'; @@ -92,9 +95,23 @@ export default class LogicalExpression extends NodeBase implements Deoptimizable origin: DeoptimizableEntity ): LiteralValueOrUnknown { const usedBranch = this.getUsedBranch(); - if (!usedBranch) return UnknownValue; - this.expressionsToBeDeoptimized.push(origin); - return usedBranch.getLiteralValueAtPath(path, recursionTracker, origin); + if (usedBranch) { + this.expressionsToBeDeoptimized.push(origin); + return usedBranch.getLiteralValueAtPath(path, recursionTracker, origin); + } else { + const rightValue = this.right.getLiteralValueAtPath(path, recursionTracker, origin); + const booleanOrUnknown = tryCastLiteralValueToBoolean(rightValue); + if (typeof booleanOrUnknown !== 'symbol') { + if (!booleanOrUnknown && this.operator === '&&') { + this.expressionsToBeDeoptimized.push(origin); + return UnknownFalsyValue; + } + if (booleanOrUnknown && this.operator === '||') { + return UnknownTruthyValue; + } + } + } + return UnknownValue; } getReturnExpressionWhenCalledAtPath( @@ -220,12 +237,13 @@ export default class LogicalExpression extends NodeBase implements Deoptimizable if (!this.isBranchResolutionAnalysed) { this.isBranchResolutionAnalysed = true; const leftValue = this.left.getLiteralValueAtPath(EMPTY_PATH, SHARED_RECURSION_TRACKER, this); - if (typeof leftValue === 'symbol') { + const booleanOrUnknown = tryCastLiteralValueToBoolean(leftValue); + if (typeof booleanOrUnknown === 'symbol') { return null; } else { this.usedBranch = - (this.operator === '||' && leftValue) || - (this.operator === '&&' && !leftValue) || + (this.operator === '||' && booleanOrUnknown) || + (this.operator === '&&' && !booleanOrUnknown) || (this.operator === '??' && leftValue != null) ? this.left : this.right; diff --git a/src/ast/nodes/shared/Expression.ts b/src/ast/nodes/shared/Expression.ts index 146ae33a8..0a19137be 100644 --- a/src/ast/nodes/shared/Expression.ts +++ b/src/ast/nodes/shared/Expression.ts @@ -11,11 +11,13 @@ import type { IncludeChildren } from './Node'; export const UnknownValue = Symbol('Unknown Value'); export const UnknownTruthyValue = Symbol('Unknown Truthy Value'); +export const UnknownFalsyValue = Symbol('Unknown Falsy Value'); export type LiteralValueOrUnknown = | LiteralValue | typeof UnknownValue | typeof UnknownTruthyValue + | typeof UnknownFalsyValue | typeof SymbolToStringTag; export interface InclusionOptions { diff --git a/src/ast/nodes/shared/knownGlobals.ts b/src/ast/nodes/shared/knownGlobals.ts index add024339..8db27e55b 100644 --- a/src/ast/nodes/shared/knownGlobals.ts +++ b/src/ast/nodes/shared/knownGlobals.ts @@ -19,7 +19,7 @@ import { } from '../../utils/PathTracker'; import ArrayExpression from '../ArrayExpression'; import type { LiteralValueOrUnknown } from './Expression'; -import { ExpressionEntity, UnknownTruthyValue } from './Expression'; +import { ExpressionEntity, UnknownValue } from './Expression'; const ValueProperties = Symbol('Value Properties'); @@ -35,25 +35,25 @@ interface GlobalDescription { __proto__: null; } -const getTruthyLiteralValue = (): LiteralValueOrUnknown => UnknownTruthyValue; +const getUnknownValue = (): LiteralValueOrUnknown => UnknownValue; const returnFalse = () => false; const returnTrue = () => true; const PURE: ValueDescription = { deoptimizeArgumentsOnCall: doNothing, - getLiteralValue: getTruthyLiteralValue, + getLiteralValue: getUnknownValue, hasEffectsWhenCalled: returnFalse }; const IMPURE: ValueDescription = { deoptimizeArgumentsOnCall: doNothing, - getLiteralValue: getTruthyLiteralValue, + getLiteralValue: getUnknownValue, hasEffectsWhenCalled: returnTrue }; const PURE_WITH_ARRAY: ValueDescription = { deoptimizeArgumentsOnCall: doNothing, - getLiteralValue: getTruthyLiteralValue, + getLiteralValue: getUnknownValue, hasEffectsWhenCalled({ args }) { return args.length > 1 && !(args[1] instanceof ArrayExpression); } @@ -61,7 +61,7 @@ const PURE_WITH_ARRAY: ValueDescription = { const GETTER_ACCESS: ValueDescription = { deoptimizeArgumentsOnCall: doNothing, - getLiteralValue: getTruthyLiteralValue, + getLiteralValue: getUnknownValue, hasEffectsWhenCalled({ args }, context) { const [_thisArgument, firstArgument] = args; return ( @@ -101,7 +101,7 @@ const MUTATES_ARG_WITHOUT_ACCESSOR: GlobalDescription = { deoptimizeArgumentsOnCall({ args: [, firstArgument] }: NodeInteractionCalled) { firstArgument?.deoptimizePath(UNKNOWN_PATH); }, - getLiteralValue: getTruthyLiteralValue, + getLiteralValue: getUnknownValue, hasEffectsWhenCalled({ args }, context) { return ( args.length <= 1 || @@ -325,7 +325,7 @@ const knownGlobals: GlobalDescription = { } target.deoptimizePath(UNKNOWN_PATH); }, - getLiteralValue: getTruthyLiteralValue, + getLiteralValue: getUnknownValue, hasEffectsWhenCalled: returnTrue } }, @@ -517,7 +517,7 @@ const knownGlobals: GlobalDescription = { deoptimizeArgumentsOnCall({ args }: NodeInteractionCalled) { args[2]?.deoptimizePath(['detail']); }, - getLiteralValue: getTruthyLiteralValue, + getLiteralValue: getUnknownValue, hasEffectsWhenCalled: returnFalse }, prototype: O diff --git a/src/ast/utils/tryCastLiteralValueToBoolean.ts b/src/ast/utils/tryCastLiteralValueToBoolean.ts new file mode 100644 index 000000000..bfcc60161 --- /dev/null +++ b/src/ast/utils/tryCastLiteralValueToBoolean.ts @@ -0,0 +1,17 @@ +import type { LiteralValueOrUnknown } from '../nodes/shared/Expression'; +import { UnknownFalsyValue, UnknownTruthyValue, UnknownValue } from '../nodes/shared/Expression'; + +export function tryCastLiteralValueToBoolean( + literalValue: LiteralValueOrUnknown +): boolean | typeof UnknownValue { + if (typeof literalValue === 'symbol') { + if (literalValue === UnknownFalsyValue) { + return false; + } + if (literalValue === UnknownTruthyValue) { + return true; + } + return UnknownValue; + } + return !!literalValue; +} diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/generated-main2.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/generated-main2.js deleted file mode 100644 index 9643e93c5..000000000 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/generated-main2.js +++ /dev/null @@ -1,14 +0,0 @@ -define(['exports'], (function (exports) { 'use strict'; - - var dep = { x: 42 }; - - function log (x) { - if (dep) { - console.log(x); - } - } - - exports.dep = dep; - exports.log = log; - -})); diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/main1alias.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/main1alias.js index f2c65e8e5..a058768ae 100644 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/main1alias.js +++ b/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/main1alias.js @@ -1,5 +1,7 @@ -define(['./generated-main2'], (function (main2alias) { 'use strict'; +define(['./main2alias'], (function (main2alias) { 'use strict'; - main2alias.log(main2alias.dep); + var dep = { x: 42 }; + + main2alias(dep); })); diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/main2alias.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/main2alias.js index b582fed37..2c8a94842 100644 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/main2alias.js +++ b/test/chunking-form/samples/entrypoint-aliasing/_expected/amd/main2alias.js @@ -1,7 +1,11 @@ -define(['./generated-main2'], (function (main2alias) { 'use strict'; +define((function () { 'use strict'; + function log (x) { + { + console.log(x); + } + } - - return main2alias.log; + return log; })); diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/generated-main2.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/generated-main2.js deleted file mode 100644 index 6c9f57c45..000000000 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/generated-main2.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; - -var dep = { x: 42 }; - -function log (x) { - if (dep) { - console.log(x); - } -} - -exports.dep = dep; -exports.log = log; diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/main1alias.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/main1alias.js index 528760fed..5548faffe 100644 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/main1alias.js +++ b/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/main1alias.js @@ -1,5 +1,7 @@ 'use strict'; -var main2alias = require('./generated-main2.js'); +var main2alias = require('./main2alias.js'); -main2alias.log(main2alias.dep); +var dep = { x: 42 }; + +main2alias(dep); diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/main2alias.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/main2alias.js index 69b1826b7..f8394b950 100644 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/main2alias.js +++ b/test/chunking-form/samples/entrypoint-aliasing/_expected/cjs/main2alias.js @@ -1,7 +1,9 @@ 'use strict'; -var main2alias = require('./generated-main2.js'); +function log (x) { + { + console.log(x); + } +} - - -module.exports = main2alias.log; +module.exports = log; diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/es/generated-main2.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/es/generated-main2.js deleted file mode 100644 index ff43f7f71..000000000 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/es/generated-main2.js +++ /dev/null @@ -1,9 +0,0 @@ -var dep = { x: 42 }; - -function log (x) { - if (dep) { - console.log(x); - } -} - -export { dep as d, log as l }; diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/es/main1alias.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/es/main1alias.js index 7ad3b06e9..c6e94de57 100644 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/es/main1alias.js +++ b/test/chunking-form/samples/entrypoint-aliasing/_expected/es/main1alias.js @@ -1,3 +1,5 @@ -import { l as log, d as dep } from './generated-main2.js'; +import log from './main2alias.js'; + +var dep = { x: 42 }; log(dep); diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/es/main2alias.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/es/main2alias.js index d74b87aba..c9c4c326b 100644 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/es/main2alias.js +++ b/test/chunking-form/samples/entrypoint-aliasing/_expected/es/main2alias.js @@ -1 +1,7 @@ -export { l as default } from './generated-main2.js'; +function log (x) { + { + console.log(x); + } +} + +export { log as default }; diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/system/generated-main2.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/system/generated-main2.js deleted file mode 100644 index b6cc008bb..000000000 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/system/generated-main2.js +++ /dev/null @@ -1,18 +0,0 @@ -System.register([], (function (exports) { - 'use strict'; - return { - execute: (function () { - - exports("l", log); - - var dep = exports("d", { x: 42 }); - - function log (x) { - if (dep) { - console.log(x); - } - } - - }) - }; -})); diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/system/main1alias.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/system/main1alias.js index 413fc99fd..0c66b58b8 100644 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/system/main1alias.js +++ b/test/chunking-form/samples/entrypoint-aliasing/_expected/system/main1alias.js @@ -1,13 +1,14 @@ -System.register(['./generated-main2.js'], (function () { +System.register(['./main2alias.js'], (function () { 'use strict'; - var log, dep; + var log; return { setters: [function (module) { - log = module.l; - dep = module.d; + log = module.default; }], execute: (function () { + var dep = { x: 42 }; + log(dep); }) diff --git a/test/chunking-form/samples/entrypoint-aliasing/_expected/system/main2alias.js b/test/chunking-form/samples/entrypoint-aliasing/_expected/system/main2alias.js index 1750d72b4..c474d122f 100644 --- a/test/chunking-form/samples/entrypoint-aliasing/_expected/system/main2alias.js +++ b/test/chunking-form/samples/entrypoint-aliasing/_expected/system/main2alias.js @@ -1,13 +1,16 @@ -System.register(['./generated-main2.js'], (function (exports) { - 'use strict'; - return { - setters: [function (module) { - exports("default", module.l); - }], - execute: (function () { +System.register([], (function (exports) { + 'use strict'; + return { + execute: (function () { + exports("default", log); + function log (x) { + { + console.log(x); + } + } - }) - }; + }) + }; })); diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/amd/generated-main2.js b/test/chunking-form/samples/entrypoint-facade/_expected/amd/generated-main2.js deleted file mode 100644 index 9643e93c5..000000000 --- a/test/chunking-form/samples/entrypoint-facade/_expected/amd/generated-main2.js +++ /dev/null @@ -1,14 +0,0 @@ -define(['exports'], (function (exports) { 'use strict'; - - var dep = { x: 42 }; - - function log (x) { - if (dep) { - console.log(x); - } - } - - exports.dep = dep; - exports.log = log; - -})); diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/amd/main1.js b/test/chunking-form/samples/entrypoint-facade/_expected/amd/main1.js index d23070f5b..f06a66684 100644 --- a/test/chunking-form/samples/entrypoint-facade/_expected/amd/main1.js +++ b/test/chunking-form/samples/entrypoint-facade/_expected/amd/main1.js @@ -1,5 +1,7 @@ -define(['./generated-main2'], (function (main2) { 'use strict'; +define(['./main2'], (function (main2) { 'use strict'; - main2.log(main2.dep); + var dep = { x: 42 }; + + main2(dep); })); diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/amd/main2.js b/test/chunking-form/samples/entrypoint-facade/_expected/amd/main2.js index 9356f1aca..2c8a94842 100644 --- a/test/chunking-form/samples/entrypoint-facade/_expected/amd/main2.js +++ b/test/chunking-form/samples/entrypoint-facade/_expected/amd/main2.js @@ -1,7 +1,11 @@ -define(['./generated-main2'], (function (main2) { 'use strict'; +define((function () { 'use strict'; + function log (x) { + { + console.log(x); + } + } - - return main2.log; + return log; })); diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/cjs/generated-main2.js b/test/chunking-form/samples/entrypoint-facade/_expected/cjs/generated-main2.js deleted file mode 100644 index 6c9f57c45..000000000 --- a/test/chunking-form/samples/entrypoint-facade/_expected/cjs/generated-main2.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; - -var dep = { x: 42 }; - -function log (x) { - if (dep) { - console.log(x); - } -} - -exports.dep = dep; -exports.log = log; diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/cjs/main1.js b/test/chunking-form/samples/entrypoint-facade/_expected/cjs/main1.js index 6c0864d07..12f252d0c 100644 --- a/test/chunking-form/samples/entrypoint-facade/_expected/cjs/main1.js +++ b/test/chunking-form/samples/entrypoint-facade/_expected/cjs/main1.js @@ -1,5 +1,7 @@ 'use strict'; -var main2 = require('./generated-main2.js'); +var main2 = require('./main2.js'); -main2.log(main2.dep); +var dep = { x: 42 }; + +main2(dep); diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/cjs/main2.js b/test/chunking-form/samples/entrypoint-facade/_expected/cjs/main2.js index 1cca608ac..f8394b950 100644 --- a/test/chunking-form/samples/entrypoint-facade/_expected/cjs/main2.js +++ b/test/chunking-form/samples/entrypoint-facade/_expected/cjs/main2.js @@ -1,7 +1,9 @@ 'use strict'; -var main2 = require('./generated-main2.js'); +function log (x) { + { + console.log(x); + } +} - - -module.exports = main2.log; +module.exports = log; diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/es/generated-main2.js b/test/chunking-form/samples/entrypoint-facade/_expected/es/generated-main2.js deleted file mode 100644 index ff43f7f71..000000000 --- a/test/chunking-form/samples/entrypoint-facade/_expected/es/generated-main2.js +++ /dev/null @@ -1,9 +0,0 @@ -var dep = { x: 42 }; - -function log (x) { - if (dep) { - console.log(x); - } -} - -export { dep as d, log as l }; diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/es/main1.js b/test/chunking-form/samples/entrypoint-facade/_expected/es/main1.js index 7ad3b06e9..d1543164b 100644 --- a/test/chunking-form/samples/entrypoint-facade/_expected/es/main1.js +++ b/test/chunking-form/samples/entrypoint-facade/_expected/es/main1.js @@ -1,3 +1,5 @@ -import { l as log, d as dep } from './generated-main2.js'; +import log from './main2.js'; + +var dep = { x: 42 }; log(dep); diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/es/main2.js b/test/chunking-form/samples/entrypoint-facade/_expected/es/main2.js index d74b87aba..c9c4c326b 100644 --- a/test/chunking-form/samples/entrypoint-facade/_expected/es/main2.js +++ b/test/chunking-form/samples/entrypoint-facade/_expected/es/main2.js @@ -1 +1,7 @@ -export { l as default } from './generated-main2.js'; +function log (x) { + { + console.log(x); + } +} + +export { log as default }; diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/system/generated-main2.js b/test/chunking-form/samples/entrypoint-facade/_expected/system/generated-main2.js deleted file mode 100644 index b6cc008bb..000000000 --- a/test/chunking-form/samples/entrypoint-facade/_expected/system/generated-main2.js +++ /dev/null @@ -1,18 +0,0 @@ -System.register([], (function (exports) { - 'use strict'; - return { - execute: (function () { - - exports("l", log); - - var dep = exports("d", { x: 42 }); - - function log (x) { - if (dep) { - console.log(x); - } - } - - }) - }; -})); diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/system/main1.js b/test/chunking-form/samples/entrypoint-facade/_expected/system/main1.js index 413fc99fd..abd063145 100644 --- a/test/chunking-form/samples/entrypoint-facade/_expected/system/main1.js +++ b/test/chunking-form/samples/entrypoint-facade/_expected/system/main1.js @@ -1,13 +1,14 @@ -System.register(['./generated-main2.js'], (function () { +System.register(['./main2.js'], (function () { 'use strict'; - var log, dep; + var log; return { setters: [function (module) { - log = module.l; - dep = module.d; + log = module.default; }], execute: (function () { + var dep = { x: 42 }; + log(dep); }) diff --git a/test/chunking-form/samples/entrypoint-facade/_expected/system/main2.js b/test/chunking-form/samples/entrypoint-facade/_expected/system/main2.js index 1750d72b4..c474d122f 100644 --- a/test/chunking-form/samples/entrypoint-facade/_expected/system/main2.js +++ b/test/chunking-form/samples/entrypoint-facade/_expected/system/main2.js @@ -1,13 +1,16 @@ -System.register(['./generated-main2.js'], (function (exports) { - 'use strict'; - return { - setters: [function (module) { - exports("default", module.l); - }], - execute: (function () { +System.register([], (function (exports) { + 'use strict'; + return { + execute: (function () { + exports("default", log); + function log (x) { + { + console.log(x); + } + } - }) - }; + }) + }; })); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-BeN-_z3e-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-BeN-_z3e-amd.js deleted file mode 100644 index 9643e93c5..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/amd/chunk-main2-BeN-_z3e-amd.js +++ /dev/null @@ -1,14 +0,0 @@ -define(['exports'], (function (exports) { 'use strict'; - - var dep = { x: 42 }; - - function log (x) { - if (dep) { - console.log(x); - } - } - - exports.dep = dep; - exports.log = log; - -})); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-DBBrcOFA-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-DBBrcOFA-amd.js new file mode 100644 index 000000000..e74998bb3 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-DBBrcOFA-amd.js @@ -0,0 +1,7 @@ +define(['./entry-main2-DHcdu15H-amd'], (function (main2) { 'use strict'; + + var dep = { x: 42 }; + + main2(dep); + +})); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-DMJ9vLw5-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-DMJ9vLw5-amd.js deleted file mode 100644 index bf19b5fca..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main1-DMJ9vLw5-amd.js +++ /dev/null @@ -1,5 +0,0 @@ -define(['./chunk-main2-BeN-_z3e-amd'], (function (main2) { 'use strict'; - - main2.log(main2.dep); - -})); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-DHcdu15H-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-DHcdu15H-amd.js new file mode 100644 index 000000000..2c8a94842 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-DHcdu15H-amd.js @@ -0,0 +1,11 @@ +define((function () { 'use strict'; + + function log (x) { + { + console.log(x); + } + } + + return log; + +})); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-SEc5gjvu-amd.js b/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-SEc5gjvu-amd.js deleted file mode 100644 index e814188de..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/amd/entry-main2-SEc5gjvu-amd.js +++ /dev/null @@ -1,7 +0,0 @@ -define(['./chunk-main2-BeN-_z3e-amd'], (function (main2) { 'use strict'; - - - - return main2.log; - -})); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-DB987Lh4-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-DB987Lh4-cjs.js deleted file mode 100644 index 6c9f57c45..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/cjs/chunk-main2-DB987Lh4-cjs.js +++ /dev/null @@ -1,12 +0,0 @@ -'use strict'; - -var dep = { x: 42 }; - -function log (x) { - if (dep) { - console.log(x); - } -} - -exports.dep = dep; -exports.log = log; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-DBCWfg7v-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-DBCWfg7v-cjs.js new file mode 100644 index 000000000..9a9af09ba --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-DBCWfg7v-cjs.js @@ -0,0 +1,7 @@ +'use strict'; + +var main2 = require('./entry-main2-BVjYoW06-cjs.js'); + +var dep = { x: 42 }; + +main2(dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-m802XraR-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-m802XraR-cjs.js deleted file mode 100644 index ff2abb6f2..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main1-m802XraR-cjs.js +++ /dev/null @@ -1,5 +0,0 @@ -'use strict'; - -var main2 = require('./chunk-main2-DB987Lh4-cjs.js'); - -main2.log(main2.dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-BVjYoW06-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-BVjYoW06-cjs.js new file mode 100644 index 000000000..f8394b950 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-BVjYoW06-cjs.js @@ -0,0 +1,9 @@ +'use strict'; + +function log (x) { + { + console.log(x); + } +} + +module.exports = log; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-CDyYOEPK-cjs.js b/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-CDyYOEPK-cjs.js deleted file mode 100644 index a8c1d498e..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/cjs/entry-main2-CDyYOEPK-cjs.js +++ /dev/null @@ -1,7 +0,0 @@ -'use strict'; - -var main2 = require('./chunk-main2-DB987Lh4-cjs.js'); - - - -module.exports = main2.log; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-CPMnlUsH-es.js b/test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-CPMnlUsH-es.js deleted file mode 100644 index ff43f7f71..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/es/chunk-main2-CPMnlUsH-es.js +++ /dev/null @@ -1,9 +0,0 @@ -var dep = { x: 42 }; - -function log (x) { - if (dep) { - console.log(x); - } -} - -export { dep as d, log as l }; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-DCmtsuTI-es.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-DCmtsuTI-es.js deleted file mode 100644 index 2e9c7317e..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-DCmtsuTI-es.js +++ /dev/null @@ -1,3 +0,0 @@ -import { l as log, d as dep } from './chunk-main2-CPMnlUsH-es.js'; - -log(dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-WTHxIjMp-es.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-WTHxIjMp-es.js new file mode 100644 index 000000000..7f8a79168 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main1-WTHxIjMp-es.js @@ -0,0 +1,5 @@ +import log from './entry-main2-BNtK1lo1-es.js'; + +var dep = { x: 42 }; + +log(dep); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-BNtK1lo1-es.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-BNtK1lo1-es.js new file mode 100644 index 000000000..c9c4c326b --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-BNtK1lo1-es.js @@ -0,0 +1,7 @@ +function log (x) { + { + console.log(x); + } +} + +export { log as default }; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-CO3mT8jT-es.js b/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-CO3mT8jT-es.js deleted file mode 100644 index 83eddb16c..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/es/entry-main2-CO3mT8jT-es.js +++ /dev/null @@ -1 +0,0 @@ -export { l as default } from './chunk-main2-CPMnlUsH-es.js'; diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-Biq2O0X--system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-Biq2O0X--system.js deleted file mode 100644 index 173ac94dd..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-Biq2O0X--system.js +++ /dev/null @@ -1,15 +0,0 @@ -System.register(['./chunk-main2-BRXsWtDg-system.js'], (function () { - 'use strict'; - var log, dep; - return { - setters: [function (module) { - log = module.l; - dep = module.d; - }], - execute: (function () { - - log(dep); - - }) - }; -})); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-bvYFOXPm-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-bvYFOXPm-system.js new file mode 100644 index 000000000..a7b2fa721 --- /dev/null +++ b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main1-bvYFOXPm-system.js @@ -0,0 +1,16 @@ +System.register(['./entry-main2-um8DK13a-system.js'], (function () { + 'use strict'; + var log; + return { + setters: [function (module) { + log = module.default; + }], + execute: (function () { + + var dep = { x: 42 }; + + log(dep); + + }) + }; +})); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-D_RLirM0-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-D_RLirM0-system.js deleted file mode 100644 index 417076cf1..000000000 --- a/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-D_RLirM0-system.js +++ /dev/null @@ -1,13 +0,0 @@ -System.register(['./chunk-main2-BRXsWtDg-system.js'], (function (exports) { - 'use strict'; - return { - setters: [function (module) { - exports("default", module.l); - }], - execute: (function () { - - - - }) - }; -})); diff --git a/test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-BRXsWtDg-system.js b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-um8DK13a-system.js similarity index 68% rename from test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-BRXsWtDg-system.js rename to test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-um8DK13a-system.js index b6cc008bb..c474d122f 100644 --- a/test/chunking-form/samples/filenames-patterns/_expected/system/chunk-main2-BRXsWtDg-system.js +++ b/test/chunking-form/samples/filenames-patterns/_expected/system/entry-main2-um8DK13a-system.js @@ -3,12 +3,10 @@ System.register([], (function (exports) { return { execute: (function () { - exports("l", log); - - var dep = exports("d", { x: 42 }); + exports("default", log); function log (x) { - if (dep) { + { console.log(x); } } diff --git a/test/form/samples/logical-expression/mutate-logical-expression/_expected/amd.js b/test/form/samples/logical-expression/mutate-logical-expression/_expected/amd.js index 5b474e013..01da54eab 100644 --- a/test/form/samples/logical-expression/mutate-logical-expression/_expected/amd.js +++ b/test/form/samples/logical-expression/mutate-logical-expression/_expected/amd.js @@ -1,7 +1,7 @@ define(['exports'], (function (exports) { 'use strict'; var aExp = {}; - var logicalAExp = aExp || {}; + var logicalAExp = aExp; logicalAExp.bar = 1; var bExp = {}; diff --git a/test/form/samples/logical-expression/mutate-logical-expression/_expected/cjs.js b/test/form/samples/logical-expression/mutate-logical-expression/_expected/cjs.js index 2a72123b9..27218c17c 100644 --- a/test/form/samples/logical-expression/mutate-logical-expression/_expected/cjs.js +++ b/test/form/samples/logical-expression/mutate-logical-expression/_expected/cjs.js @@ -1,7 +1,7 @@ 'use strict'; var aExp = {}; -var logicalAExp = aExp || {}; +var logicalAExp = aExp; logicalAExp.bar = 1; var bExp = {}; diff --git a/test/form/samples/logical-expression/mutate-logical-expression/_expected/es.js b/test/form/samples/logical-expression/mutate-logical-expression/_expected/es.js index 78297b3e7..45592bb00 100644 --- a/test/form/samples/logical-expression/mutate-logical-expression/_expected/es.js +++ b/test/form/samples/logical-expression/mutate-logical-expression/_expected/es.js @@ -1,5 +1,5 @@ var aExp = {}; -var logicalAExp = aExp || {}; +var logicalAExp = aExp; logicalAExp.bar = 1; var bExp = {}; diff --git a/test/form/samples/logical-expression/mutate-logical-expression/_expected/iife.js b/test/form/samples/logical-expression/mutate-logical-expression/_expected/iife.js index 7dcdf795c..3c5e327f1 100644 --- a/test/form/samples/logical-expression/mutate-logical-expression/_expected/iife.js +++ b/test/form/samples/logical-expression/mutate-logical-expression/_expected/iife.js @@ -2,7 +2,7 @@ var bundle = (function (exports) { 'use strict'; var aExp = {}; - var logicalAExp = aExp || {}; + var logicalAExp = aExp; logicalAExp.bar = 1; var bExp = {}; diff --git a/test/form/samples/logical-expression/mutate-logical-expression/_expected/system.js b/test/form/samples/logical-expression/mutate-logical-expression/_expected/system.js index 640086779..76655df49 100644 --- a/test/form/samples/logical-expression/mutate-logical-expression/_expected/system.js +++ b/test/form/samples/logical-expression/mutate-logical-expression/_expected/system.js @@ -4,7 +4,7 @@ System.register('bundle', [], (function (exports) { execute: (function () { var aExp = exports("aExp", {}); - var logicalAExp = aExp || {}; + var logicalAExp = aExp; logicalAExp.bar = 1; var bExp = exports("bExp", {}); diff --git a/test/form/samples/logical-expression/mutate-logical-expression/_expected/umd.js b/test/form/samples/logical-expression/mutate-logical-expression/_expected/umd.js index f14730028..cd0819947 100644 --- a/test/form/samples/logical-expression/mutate-logical-expression/_expected/umd.js +++ b/test/form/samples/logical-expression/mutate-logical-expression/_expected/umd.js @@ -5,7 +5,7 @@ })(this, (function (exports) { 'use strict'; var aExp = {}; - var logicalAExp = aExp || {}; + var logicalAExp = aExp; logicalAExp.bar = 1; var bExp = {}; diff --git a/test/form/samples/pure-comment-scenarios-complex/_expected.js b/test/form/samples/pure-comment-scenarios-complex/_expected.js index bc4b8984d..49468bd31 100644 --- a/test/form/samples/pure-comment-scenarios-complex/_expected.js +++ b/test/form/samples/pure-comment-scenarios-complex/_expected.js @@ -11,12 +11,12 @@ global.iife1 = /*@__PURE__*/(function() { baz(), quux(); a.b(), f.g(); -/* @__PURE__ */(function(){})() || true ? foo() : bar(); foo() ; -/* @__PURE__ */(function(){})() && false ? foo() : bar(); +foo() ; +bar(); bar(); /* @__PURE__ */(function(){})() + "foo" ? bar() : baz(); "foo" + /* @__PURE__ */(function(){})() ? bar() : baz(); /* @__PURE__ */(function(){})() ? foo() : foo(); -[/* @__PURE__ */(function(){})()] ? foo() : bar(); +foo() ; !{ foo: /* @__PURE__ */(function(){})() } ? bar() : baz(); diff --git a/test/form/samples/recursive-values/_expected.js b/test/form/samples/recursive-values/_expected.js index 64d545cf3..ef893559c 100644 --- a/test/form/samples/recursive-values/_expected.js +++ b/test/form/samples/recursive-values/_expected.js @@ -1,6 +1,4 @@ -var x = x || true; - -x && console.log(1); +console.log(1); var y = {y}; diff --git a/test/form/samples/support-using-keyword/_expected.js b/test/form/samples/support-using-keyword/_expected.js index 128941df8..59844d04d 100644 --- a/test/form/samples/support-using-keyword/_expected.js +++ b/test/form/samples/support-using-keyword/_expected.js @@ -11,7 +11,9 @@ const logClean = function () { async function foo() { using a = logClean(); + await using b = logClean(); + for (using a of [logClean(), logClean()]) { } diff --git a/test/form/samples/treeshake-if-statement/_config.js b/test/form/samples/treeshake-if-statement/_config.js new file mode 100644 index 000000000..2fdd5a00f --- /dev/null +++ b/test/form/samples/treeshake-if-statement/_config.js @@ -0,0 +1,3 @@ +module.exports = defineTest({ + description: 'treeshakes if statement' +}); diff --git a/test/form/samples/treeshake-if-statement/_expected.js b/test/form/samples/treeshake-if-statement/_expected.js new file mode 100644 index 000000000..9b7a36491 --- /dev/null +++ b/test/form/samples/treeshake-if-statement/_expected.js @@ -0,0 +1,7 @@ +{ + assert.ok(true); +} + +if (typeof parseInt === 'function' ?? 'a' === 'a') { + assert.ok(true); +} diff --git a/test/form/samples/treeshake-if-statement/main.js b/test/form/samples/treeshake-if-statement/main.js new file mode 100644 index 000000000..fafb044b9 --- /dev/null +++ b/test/form/samples/treeshake-if-statement/main.js @@ -0,0 +1,11 @@ +if (typeof parseInt === 'function' && 'a' === 'b') { + assert.ok(false); +} + +if (typeof parseInt === 'function' || 'a' === 'a') { + assert.ok(true); +} + +if (typeof parseInt === 'function' ?? 'a' === 'a') { + assert.ok(true); +} diff --git a/wasm/bindings_wasm.d.ts b/wasm/bindings_wasm.d.ts index 0ce003799..7b24f04cd 100644 --- a/wasm/bindings_wasm.d.ts +++ b/wasm/bindings_wasm.d.ts @@ -1,26 +1,8 @@ /* tslint:disable */ /* eslint-disable */ -/** - * @param {string} code - * @param {boolean} allow_return_outside_function - * @param {boolean} jsx - * @returns {Uint8Array} - */ export function parse(code: string, allow_return_outside_function: boolean, jsx: boolean): Uint8Array; -/** - * @param {Uint8Array} input - * @returns {string} - */ export function xxhashBase64Url(input: Uint8Array): string; -/** - * @param {Uint8Array} input - * @returns {string} - */ export function xxhashBase36(input: Uint8Array): string; -/** - * @param {Uint8Array} input - * @returns {string} - */ export function xxhashBase16(input: Uint8Array): string; export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module; @@ -31,11 +13,11 @@ export interface InitOutput { readonly xxhashBase64Url: (a: number, b: number) => void; readonly xxhashBase36: (a: number, b: number) => void; readonly xxhashBase16: (a: number, b: number) => void; + readonly __wbindgen_export_0: (a: number) => void; readonly __wbindgen_add_to_stack_pointer: (a: number) => number; - readonly __wbindgen_export_0: (a: number, b: number) => number; - readonly __wbindgen_export_1: (a: number, b: number, c: number, d: number) => number; - readonly __wbindgen_export_2: (a: number, b: number, c: number) => void; - readonly __wbindgen_export_3: (a: number) => void; + readonly __wbindgen_export_1: (a: number, b: number) => number; + readonly __wbindgen_export_2: (a: number, b: number, c: number, d: number) => number; + readonly __wbindgen_export_3: (a: number, b: number, c: number) => void; } export type SyncInitInput = BufferSource | WebAssembly.Module; diff --git a/wasm/bindings_wasm_bg.wasm.d.ts b/wasm/bindings_wasm_bg.wasm.d.ts index 7e56b53ff..e7dbf4ede 100644 --- a/wasm/bindings_wasm_bg.wasm.d.ts +++ b/wasm/bindings_wasm_bg.wasm.d.ts @@ -1,12 +1,12 @@ /* tslint:disable */ /* eslint-disable */ export const memory: WebAssembly.Memory; -export function parse(a: number, b: number, c: number, d: number, e: number): void; -export function xxhashBase64Url(a: number, b: number): void; -export function xxhashBase36(a: number, b: number): void; -export function xxhashBase16(a: number, b: number): void; -export function __wbindgen_add_to_stack_pointer(a: number): number; -export function __wbindgen_export_0(a: number, b: number): number; -export function __wbindgen_export_1(a: number, b: number, c: number, d: number): number; -export function __wbindgen_export_2(a: number, b: number, c: number): void; -export function __wbindgen_export_3(a: number): void; +export const parse: (a: number, b: number, c: number, d: number, e: number) => void; +export const xxhashBase64Url: (a: number, b: number) => void; +export const xxhashBase36: (a: number, b: number) => void; +export const xxhashBase16: (a: number, b: number) => void; +export const __wbindgen_export_0: (a: number) => void; +export const __wbindgen_add_to_stack_pointer: (a: number) => number; +export const __wbindgen_export_1: (a: number, b: number) => number; +export const __wbindgen_export_2: (a: number, b: number, c: number, d: number) => number; +export const __wbindgen_export_3: (a: number, b: number, c: number) => void;