diff --git a/package.json b/package.json index 6d2f1d6c..001e706d 100644 --- a/package.json +++ b/package.json @@ -102,7 +102,7 @@ "terser-webpack-plugin": "^5.3.10", "type-fest": "^4.41.0", "typescript": "~5.9.3", - "webpack": "^5.94.0", + "webpack": "^5.104.1", "webpack-cli": "^6.0.1", "webpack-dev-server": "^5.0.4", "webpack-dev-server-v4": "npm:webpack-dev-server@^4.8.0", diff --git a/test/loader/loader.test.js b/test/loader/loader.test.js index 89fff88e..63c26293 100644 --- a/test/loader/loader.test.js +++ b/test/loader/loader.test.js @@ -53,60 +53,60 @@ describe('loader', () => { }" `); expect(execution).toMatchInlineSnapshot(` - "(self["webpackChunkcjs"] = self["webpackChunkcjs"] || []).push([["main"],{ - - /***/ "./index.js": - /*!******************!*\\ - !*** ./index.js ***! - \\******************/ - /***/ ((module, __unused_webpack_exports, __webpack_require__) => { - - (typeof __webpack_global__ !== 'undefined' ? __webpack_global__ : __webpack_require__).$Refresh$.runtime = __webpack_require__(/*! react-refresh */ "../../../../node_modules/react-refresh/runtime.js"); - - module.exports = 'Test'; - - - var $ReactRefreshModuleId$ = (typeof __webpack_global__ !== 'undefined' ? __webpack_global__ : __webpack_require__).$Refresh$.moduleId; - var $ReactRefreshCurrentExports$ = __react_refresh_utils__.getModuleExports( - $ReactRefreshModuleId$ - ); - - function $ReactRefreshModuleRuntime$(exports) { - if (true) { - var errorOverlay; - if (typeof __react_refresh_error_overlay__ !== 'undefined') { - errorOverlay = __react_refresh_error_overlay__; - } - var testMode; - if (typeof __react_refresh_test__ !== 'undefined') { - testMode = __react_refresh_test__; - } - return __react_refresh_utils__.executeRuntime( - exports, - $ReactRefreshModuleId$, - module.hot, - errorOverlay, - testMode - ); - } - } - - if (typeof Promise !== 'undefined' && $ReactRefreshCurrentExports$ instanceof Promise) { - $ReactRefreshCurrentExports$.then($ReactRefreshModuleRuntime$); - } else { - $ReactRefreshModuleRuntime$($ReactRefreshCurrentExports$); - } - - /***/ }) - - }, - /******/ __webpack_require__ => { // webpackRuntimeModules - /******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) - /******/ __webpack_require__.O(0, ["defaultVendors"], () => (__webpack_exec__("./index.js"))); - /******/ var __webpack_exports__ = __webpack_require__.O(); - /******/ } - ]);" - `); +"(self["webpackChunkcjs"] = self["webpackChunkcjs"] || []).push([["main"],{ + +/***/ "./index.js" +/*!******************!*\\ + !*** ./index.js ***! + \\******************/ +(module, __unused_webpack_exports, __webpack_require__) { + +( true ? __webpack_require__ : 0).$Refresh$.runtime = __webpack_require__(/*! react-refresh */ "../../../../node_modules/react-refresh/runtime.js"); + +module.exports = 'Test'; + + +var $ReactRefreshModuleId$ = ( true ? __webpack_require__ : 0).$Refresh$.moduleId; +var $ReactRefreshCurrentExports$ = __react_refresh_utils__.getModuleExports( + $ReactRefreshModuleId$ +); + +function $ReactRefreshModuleRuntime$(exports) { + if (true) { + var errorOverlay; + if (typeof __react_refresh_error_overlay__ !== 'undefined') { + errorOverlay = __react_refresh_error_overlay__; + } + var testMode; + if (typeof __react_refresh_test__ !== 'undefined') { + testMode = __react_refresh_test__; + } + return __react_refresh_utils__.executeRuntime( + exports, + $ReactRefreshModuleId$, + module.hot, + errorOverlay, + testMode + ); + } +} + +if (typeof Promise !== 'undefined' && $ReactRefreshCurrentExports$ instanceof Promise) { + $ReactRefreshCurrentExports$.then($ReactRefreshModuleRuntime$); +} else { + $ReactRefreshModuleRuntime$($ReactRefreshCurrentExports$); +} + +/***/ } + +}, +/******/ __webpack_require__ => { // webpackRuntimeModules +/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) +/******/ __webpack_require__.O(0, ["defaultVendors"], () => (__webpack_exec__("./index.js"))); +/******/ var __webpack_exports__ = __webpack_require__.O(); +/******/ } +]);" +`); expect(compilation.errors).toStrictEqual([]); expect(compilation.warnings).toStrictEqual([]); @@ -155,68 +155,68 @@ describe('loader', () => { }" `); expect(execution).toMatchInlineSnapshot(` - ""use strict"; - (self["webpackChunkesm"] = self["webpackChunkesm"] || []).push([["main"],{ - - /***/ "./index.js": - /*!******************!*\\ - !*** ./index.js ***! - \\******************/ - /***/ ((__webpack_module__, __webpack_exports__, __webpack_require__) => { - - var react_refresh__WEBPACK_IMPORTED_MODULE_0___namespace_cache; - __webpack_require__.r(__webpack_exports__); - /* harmony export */ __webpack_require__.d(__webpack_exports__, { - /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) - /* harmony export */ }); - /* harmony import */ var react_refresh__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-refresh */ "../../../../node_modules/react-refresh/runtime.js"); - - (typeof __webpack_global__ !== 'undefined' ? __webpack_global__ : __webpack_require__).$Refresh$.runtime = /*#__PURE__*/ (react_refresh__WEBPACK_IMPORTED_MODULE_0___namespace_cache || (react_refresh__WEBPACK_IMPORTED_MODULE_0___namespace_cache = __webpack_require__.t(react_refresh__WEBPACK_IMPORTED_MODULE_0__, 2))); - - /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ('Test'); - - - var $ReactRefreshModuleId$ = (typeof __webpack_global__ !== 'undefined' ? __webpack_global__ : __webpack_require__).$Refresh$.moduleId; - var $ReactRefreshCurrentExports$ = __react_refresh_utils__.getModuleExports( - $ReactRefreshModuleId$ - ); - - function $ReactRefreshModuleRuntime$(exports) { - if (true) { - var errorOverlay; - if (typeof __react_refresh_error_overlay__ !== 'undefined') { - errorOverlay = __react_refresh_error_overlay__; - } - var testMode; - if (typeof __react_refresh_test__ !== 'undefined') { - testMode = __react_refresh_test__; - } - return __react_refresh_utils__.executeRuntime( - exports, - $ReactRefreshModuleId$, - __webpack_module__.hot, - errorOverlay, - testMode - ); - } - } - - if (typeof Promise !== 'undefined' && $ReactRefreshCurrentExports$ instanceof Promise) { - $ReactRefreshCurrentExports$.then($ReactRefreshModuleRuntime$); - } else { - $ReactRefreshModuleRuntime$($ReactRefreshCurrentExports$); - } - - /***/ }) - - }, - /******/ __webpack_require__ => { // webpackRuntimeModules - /******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) - /******/ __webpack_require__.O(0, ["defaultVendors"], () => (__webpack_exec__("./index.js"))); - /******/ var __webpack_exports__ = __webpack_require__.O(); - /******/ } - ]);" - `); +""use strict"; +(self["webpackChunkesm"] = self["webpackChunkesm"] || []).push([["main"],{ + +/***/ "./index.js" +/*!******************!*\\ + !*** ./index.js ***! + \\******************/ +(__webpack_module__, __webpack_exports__, __webpack_require__) { + +var react_refresh__WEBPACK_IMPORTED_MODULE_0___namespace_cache; +__webpack_require__.r(__webpack_exports__); +/* harmony export */ __webpack_require__.d(__webpack_exports__, { +/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) +/* harmony export */ }); +/* harmony import */ var react_refresh__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-refresh */ "../../../../node_modules/react-refresh/runtime.js"); + +( true ? __webpack_require__ : 0).$Refresh$.runtime = /*#__PURE__*/ (react_refresh__WEBPACK_IMPORTED_MODULE_0___namespace_cache || (react_refresh__WEBPACK_IMPORTED_MODULE_0___namespace_cache = __webpack_require__.t(react_refresh__WEBPACK_IMPORTED_MODULE_0__, 2))); + +/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ('Test'); + + +var $ReactRefreshModuleId$ = ( true ? __webpack_require__ : 0).$Refresh$.moduleId; +var $ReactRefreshCurrentExports$ = __react_refresh_utils__.getModuleExports( + $ReactRefreshModuleId$ +); + +function $ReactRefreshModuleRuntime$(exports) { + if (true) { + var errorOverlay; + if (typeof __react_refresh_error_overlay__ !== 'undefined') { + errorOverlay = __react_refresh_error_overlay__; + } + var testMode; + if (typeof __react_refresh_test__ !== 'undefined') { + testMode = __react_refresh_test__; + } + return __react_refresh_utils__.executeRuntime( + exports, + $ReactRefreshModuleId$, + __webpack_module__.hot, + errorOverlay, + testMode + ); + } +} + +if (typeof Promise !== 'undefined' && $ReactRefreshCurrentExports$ instanceof Promise) { + $ReactRefreshCurrentExports$.then($ReactRefreshModuleRuntime$); +} else { + $ReactRefreshModuleRuntime$($ReactRefreshCurrentExports$); +} + +/***/ } + +}, +/******/ __webpack_require__ => { // webpackRuntimeModules +/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId)) +/******/ __webpack_require__.O(0, ["defaultVendors"], () => (__webpack_exec__("./index.js"))); +/******/ var __webpack_exports__ = __webpack_require__.O(); +/******/ } +]);" +`); expect(compilation.errors).toStrictEqual([]); expect(compilation.warnings).toStrictEqual([]); diff --git a/yarn.lock b/yarn.lock index bdae7b18..dddf205f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1514,10 +1514,10 @@ bare-url@^2.2.2: dependencies: bare-path "^3.0.0" -baseline-browser-mapping@^2.8.25: - version "2.8.31" - resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.8.31.tgz#16c0f1814638257932e0486dbfdbb3348d0a5710" - integrity sha512-a28v2eWrrRWPpJSzxc+mKwm0ZtVx/G8SepdQZDArnXYU/XS+IF6mp8aB/4E+hH1tyGCoDo3KlUCdlSxGDsRkAw== +baseline-browser-mapping@^2.9.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz#5b09935025bf8a80e29130251e337c6a7fc8cbb9" + integrity sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA== basic-ftp@^5.0.2: version "5.2.2" @@ -1582,16 +1582,16 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.24.0, browserslist@^4.26.3: - version "4.28.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.28.0.tgz#9cefece0a386a17a3cd3d22ebf67b9deca1b5929" - integrity sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ== +browserslist@^4.24.0, browserslist@^4.28.1: + version "4.28.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.28.1.tgz#7f534594628c53c63101079e27e40de490456a95" + integrity sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA== dependencies: - baseline-browser-mapping "^2.8.25" - caniuse-lite "^1.0.30001754" - electron-to-chromium "^1.5.249" + baseline-browser-mapping "^2.9.0" + caniuse-lite "^1.0.30001759" + electron-to-chromium "^1.5.263" node-releases "^2.0.27" - update-browserslist-db "^1.1.4" + update-browserslist-db "^1.2.0" bser@2.1.1: version "2.1.1" @@ -1661,10 +1661,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001754: - version "1.0.30001757" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001757.tgz#a46ff91449c69522a462996c6aac4ef95d7ccc5e" - integrity sha512-r0nnL/I28Zi/yjk1el6ilj27tKcdjLsNqAOZr0yVjWPrSQyHgKI2INaEWw21bAQSv2LXRt1XuCS/GomNpWOxsQ== +caniuse-lite@^1.0.30001759: + version "1.0.30001774" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001774.tgz#0e576b6f374063abcd499d202b9ba1301be29b70" + integrity sha512-DDdwPGz99nmIEv216hKSgLD+D4ikHQHjBC/seF98N9CPqRX4M5mSxT9eTV6oyisnJcuzxtZy4n17yKKQYmYQOA== chalk@^4.0.0, chalk@^4.1.0: version "4.1.2" @@ -2126,10 +2126,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.5.249: - version "1.5.260" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.260.tgz#73f555d3e9b9fd16ff48fc406bbad84efa9b86c7" - integrity sha512-ov8rBoOBhVawpzdre+Cmz4FB+y66Eqrk6Gwqd8NGxuhv99GQ8XqMAr351KEkOt7gukXWDg6gJWEMKgL2RLMPtA== +electron-to-chromium@^1.5.263: + version "1.5.302" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.302.tgz#032a5802b31f7119269959c69fe2015d8dad5edb" + integrity sha512-sM6HAN2LyK82IyPBpznDRqlTQAtuSaO+ShzFiWTvoMJLHyZ+Y39r8VMfHzwbU8MVBzQ4Wdn85+wlZl2TLGIlwg== emittery@^0.13.1: version "0.13.1" @@ -2163,13 +2163,13 @@ end-of-stream@^1.1.0: dependencies: once "^1.4.0" -enhanced-resolve@^5.17.3: - version "5.18.3" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz#9b5f4c5c076b8787c78fe540392ce76a88855b44" - integrity sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww== +enhanced-resolve@^5.17.4: + version "5.19.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.19.0.tgz#6687446a15e969eaa63c2fa2694510e17ae6d97c" + integrity sha512-phv3E1Xl4tQOShqSte26C7Fl84EwUdZsyOuSSk9qtAGyyQs2s3jJzComh+Abf4g187lUUAvH+H26omrqia2aGg== dependencies: graceful-fs "^4.2.4" - tapable "^2.2.0" + tapable "^2.3.0" entities@^4.5.0: version "4.5.0" @@ -2210,10 +2210,10 @@ es-errors@^1.3.0: resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== -es-module-lexer@^1.2.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.7.0.tgz#9159601561880a85f2734560a9099b2c31e5372a" - integrity sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA== +es-module-lexer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-2.0.0.tgz#f657cd7a9448dcdda9c070a3cb75e5dc1e85f5b1" + integrity sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw== es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: version "1.1.1" @@ -5388,10 +5388,10 @@ tar-stream@^3.1.5: fast-fifo "^1.2.0" streamx "^2.15.0" -terser-webpack-plugin@^5.3.10, terser-webpack-plugin@^5.3.11: - version "5.3.14" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz#9031d48e57ab27567f02ace85c7d690db66c3e06" - integrity sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw== +terser-webpack-plugin@^5.3.10, terser-webpack-plugin@^5.3.16: + version "5.3.16" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.16.tgz#741e448cc3f93d8026ebe4f7ef9e4afacfd56330" + integrity sha512-h9oBFCWrq78NyWWVcSwZarJkZ01c2AyGrzs1crmHZO3QUg9D61Wu4NPjBy69n7JqylFF5y+CsUZYmYEIZ3mR+Q== dependencies: "@jridgewell/trace-mapping" "^0.3.25" jest-worker "^27.4.5" @@ -5549,10 +5549,10 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -update-browserslist-db@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.4.tgz#7802aa2ae91477f255b86e0e46dbc787a206ad4a" - integrity sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A== +update-browserslist-db@^1.2.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz#64d76db58713136acbeb4c49114366cc6cc2e80d" + integrity sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w== dependencies: escalade "^3.2.0" picocolors "^1.1.1" @@ -5813,10 +5813,10 @@ webpack-sources@^3.3.3: resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.3.3.tgz#d4bf7f9909675d7a070ff14d0ef2a4f3c982c723" integrity sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg== -webpack@^5, webpack@^5.94.0: - version "5.103.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.103.0.tgz#17a7c5a5020d5a3a37c118d002eade5ee2c6f3da" - integrity sha512-HU1JOuV1OavsZ+mfigY0j8d1TgQgbZ6M+J75zDkpEAwYeXjWSqrGJtgnPblJjd/mAyTNQ7ygw0MiKOn6etz8yw== +webpack@^5, webpack@^5.104.1: + version "5.104.1" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.104.1.tgz#94bd41eb5dbf06e93be165ba8be41b8260d4fb1a" + integrity sha512-Qphch25abbMNtekmEGJmeRUhLDbe+QfiWTiqpKYkpCOWY64v9eyl+KRRLmqOFA2AvKPpc9DC6+u2n76tQLBoaA== dependencies: "@types/eslint-scope" "^3.7.7" "@types/estree" "^1.0.8" @@ -5826,10 +5826,10 @@ webpack@^5, webpack@^5.94.0: "@webassemblyjs/wasm-parser" "^1.14.1" acorn "^8.15.0" acorn-import-phases "^1.0.3" - browserslist "^4.26.3" + browserslist "^4.28.1" chrome-trace-event "^1.0.2" - enhanced-resolve "^5.17.3" - es-module-lexer "^1.2.1" + enhanced-resolve "^5.17.4" + es-module-lexer "^2.0.0" eslint-scope "5.1.1" events "^3.2.0" glob-to-regexp "^0.4.1" @@ -5840,7 +5840,7 @@ webpack@^5, webpack@^5.94.0: neo-async "^2.6.2" schema-utils "^4.3.3" tapable "^2.3.0" - terser-webpack-plugin "^5.3.11" + terser-webpack-plugin "^5.3.16" watchpack "^2.4.4" webpack-sources "^3.3.3"