@pmmmwh/react-refresh-webpack-plugin
Advanced tools
| // When available, use `__webpack_global__` which is a stable runtime function to use `__webpack_require__` in this compilation | ||
| // See: https://github.com/webpack/webpack/issues/20139 | ||
| const webpackGlobal = `(typeof __webpack_global__ !== 'undefined' ? __webpack_global__ : __webpack_require__)`; | ||
| module.exports = webpackGlobal; |
+3
-2
@@ -15,2 +15,3 @@ // This is a patch for mozilla/source-map#349 - | ||
| normalizeOptions, | ||
| webpackGlobal, | ||
| } = require('./utils'); | ||
@@ -49,7 +50,7 @@ const schema = require('./options.json'); | ||
| cjs: Template.asString( | ||
| `__webpack_require__.$Refresh$.runtime = require('${RefreshRuntimePath}');` | ||
| `${webpackGlobal}.$Refresh$.runtime = require('${RefreshRuntimePath}');` | ||
| ), | ||
| esm: Template.asString([ | ||
| `import * as __react_refresh_runtime__ from '${RefreshRuntimePath}';`, | ||
| `__webpack_require__.$Refresh$.runtime = __react_refresh_runtime__;`, | ||
| `${webpackGlobal}.$Refresh$.runtime = __react_refresh_runtime__;`, | ||
| ]), | ||
@@ -56,0 +57,0 @@ }; |
@@ -0,1 +1,3 @@ | ||
| const webpackGlobal = require('./webpackGlobal'); | ||
| /** | ||
@@ -24,3 +26,3 @@ * @typedef ModuleRuntimeOptions {Object} | ||
| return Template.asString([ | ||
| `${constDeclaration} $ReactRefreshModuleId$ = __webpack_require__.$Refresh$.moduleId;`, | ||
| `${constDeclaration} $ReactRefreshModuleId$ = ${webpackGlobal}.$Refresh$.moduleId;`, | ||
| `${constDeclaration} $ReactRefreshCurrentExports$ = __react_refresh_utils__.getModuleExports(`, | ||
@@ -27,0 +29,0 @@ Template.indent('$ReactRefreshModuleId$'), |
@@ -5,2 +5,3 @@ const getIdentitySourceMap = require('./getIdentitySourceMap'); | ||
| const normalizeOptions = require('./normalizeOptions'); | ||
| const webpackGlobal = require('./webpackGlobal'); | ||
@@ -12,2 +13,3 @@ module.exports = { | ||
| normalizeOptions, | ||
| webpackGlobal, | ||
| }; |
+23
-15
| { | ||
| "name": "@pmmmwh/react-refresh-webpack-plugin", | ||
| "version": "0.6.2", | ||
| "version": "0.6.3", | ||
| "description": "An **EXPERIMENTAL** Webpack plugin to enable \"Fast Refresh\" (also previously known as _Hot Reloading_) for React components.", | ||
@@ -59,3 +59,3 @@ "keywords": [ | ||
| "generate:client-external": "webpack", | ||
| "generate:types": "run-s types:clean types:compile types:prune-private \"format --log-level=silent\"", | ||
| "generate:types": "run-s types:clean types:compile types:prune-private \"format -- --log-level=silent\"", | ||
| "prepublishOnly": "run-p generate:*" | ||
@@ -82,5 +82,5 @@ }, | ||
| "babel-loader": "^10.0.0", | ||
| "cross-env": "^7.0.3", | ||
| "cross-env": "^10.1.0", | ||
| "cross-spawn": "^7.0.5", | ||
| "del-cli": "^6.0.0", | ||
| "del-cli": "^7.0.0", | ||
| "eslint": "^8.6.0", | ||
@@ -98,15 +98,16 @@ "eslint-config-prettier": "^10.1.1", | ||
| "module-alias": "^2.2.3", | ||
| "nanoid": "^3.3.8", | ||
| "npm-run-all2": "^7.0.2", | ||
| "nanoid": "^3.3.12", | ||
| "npm-run-all2": "^9.0.1", | ||
| "prettier": "^3.3.0", | ||
| "puppeteer": "^24.4.0", | ||
| "puppeteer": "^24.43.1", | ||
| "react-refresh": "^0.18.0", | ||
| "sourcemap-validator": "^2.1.0", | ||
| "terser-webpack-plugin": "^5.3.10", | ||
| "type-fest": "^4.41.0", | ||
| "typescript": "~5.9.3", | ||
| "webpack": "^5.94.0", | ||
| "webpack-cli": "^6.0.1", | ||
| "webpack-dev-server": "^5.0.4", | ||
| "type-fest": "^5.6.0", | ||
| "typescript": "~6.0.3", | ||
| "webpack": "^5.104.1", | ||
| "webpack-cli": "^7.0.3", | ||
| "webpack-dev-server": "^5.2.6", | ||
| "webpack-dev-server-v4": "npm:webpack-dev-server@^4.8.0", | ||
| "webpack-dev-server-v6": "npm:webpack-dev-server@^6.0.0", | ||
| "webpack-hot-middleware": "^2.26.1", | ||
@@ -122,3 +123,3 @@ "webpack-plugin-serve": "^1.6.0", | ||
| "webpack": "^5.0.0", | ||
| "webpack-dev-server": "^4.8.0 || 5.x", | ||
| "webpack-dev-server": "^4.8.0 || 5.x || 6.x", | ||
| "webpack-hot-middleware": "2.x", | ||
@@ -148,5 +149,12 @@ "webpack-plugin-serve": "1.x" | ||
| "resolutions": { | ||
| "@types/retry": "^0.12.0", | ||
| "memfs": "^4.0.0", | ||
| "rimraf": "^5.0.0", | ||
| "type-fest": "^4.41.0" | ||
| "memfs/@jsonjoy.com/json-pack": "^17.67.0", | ||
| "memfs/@jsonjoy.com/util": "^17.67.0", | ||
| "nanoid": "^3.3.12", | ||
| "rimraf": "^6.0.0", | ||
| "tslib": "^2.8.0", | ||
| "type-fest": "^5.6.0", | ||
| "uuid": "^11.1.1", | ||
| "webpack-plugin-serve/http-proxy-middleware": "^2.0.10" | ||
| }, | ||
@@ -153,0 +161,0 @@ "engines": { |
+5
-5
@@ -323,7 +323,7 @@ # React Refresh Webpack Plugin | ||
| | Dependency | Version | | ||
| | ------------------------ | ----------------- | | ||
| | `webpack-dev-server` | `4.8.0`+ or `5.x` | | ||
| | `webpack-hot-middleware` | `2.x` | | ||
| | `webpack-plugin-serve` | `1.x` | | ||
| | Dependency | Version | | ||
| | ------------------------ | -------------------------- | | ||
| | `webpack-dev-server` | `4.8.0`+ or `5.x` or `6.x` | | ||
| | `webpack-hot-middleware` | `2.x` | | ||
| | `webpack-plugin-serve` | `1.x` | | ||
@@ -330,0 +330,0 @@ ## API |
@@ -7,4 +7,2 @@ /** | ||
| function initWDSSocket(messageHandler) { | ||
| const { default: SockJSClient } = require('webpack-dev-server/client/clients/SockJSClient'); | ||
| const { default: WebSocketClient } = require('webpack-dev-server/client/clients/WebSocketClient'); | ||
| const { client } = require('webpack-dev-server/client/socket'); | ||
@@ -14,5 +12,8 @@ | ||
| let connection; | ||
| if (client instanceof SockJSClient) { | ||
| if (client.sock) { | ||
| // SockJSClient exposes the underlying socket via `.sock`. | ||
| // WDS 6.0.0 dropped SockJS support, so this branch is dead in WDS 6+. | ||
| connection = client.sock; | ||
| } else if (client instanceof WebSocketClient) { | ||
| } else if (client.client) { | ||
| // WebSocketClient exposes the underlying socket via `.client`. | ||
| connection = client.client; | ||
@@ -19,0 +20,0 @@ } else { |
@@ -14,4 +14,3 @@ export type ErrorOverlayOptions = { | ||
| sockIntegration?: | ||
| | import('type-fest').LiteralUnion<false | 'wds' | 'whm' | 'wps', string> | ||
| | undefined; | ||
| import('type-fest').LiteralUnion<false | 'wds' | 'whm' | 'wps', string> | undefined; | ||
| }; | ||
@@ -18,0 +17,0 @@ export type NormalizedErrorOverlayOptions = import('type-fest').SetRequired< |
@@ -1,1 +0,1 @@ | ||
| (()=>{var t={214:(t,e,r)=>{"use strict";r(397);var n=r(3565);t.exports=n},397:(t,e,r)=>{"use strict";r(2344)},470:(t,e,r)=>{"use strict";var n=r(6028),o=r(5594);t.exports=function(t){var e=n(t,"string");return o(e)?e:e+""}},581:(t,e,r)=>{"use strict";var n=r(3930),o=r(2250),i=r(6285),u=TypeError;t.exports=function(t,e){var r,s;if("string"===e&&o(r=t.toString)&&!i(s=n(r,t)))return s;if(o(r=t.valueOf)&&!i(s=n(r,t)))return s;if("string"!==e&&o(r=t.toString)&&!i(s=n(r,t)))return s;throw new u("Can't convert object to primitive value")}},798:(t,e,r)=>{"use strict";var n,o,i=r(5951),u=r(6794),s=i.process,c=i.Deno,a=s&&s.versions||c&&c.version,f=a&&a.v8;f&&(o=(n=f.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&u&&(!(n=u.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=u.match(/Chrome\/(\d+)/))&&(o=+n[1]),t.exports=o},1091:(t,e,r)=>{"use strict";var n=r(5951),o=r(6024),i=r(2361),u=r(2250),s=r(3846).f,c=r(7463),a=r(2046),f=r(8311),p=r(1626),l=r(9724);r(6128);var v=function(t){var e=function(r,n,i){if(this instanceof e){switch(arguments.length){case 0:return new t;case 1:return new t(r);case 2:return new t(r,n)}return new t(r,n,i)}return o(t,this,arguments)};return e.prototype=t.prototype,e};t.exports=function(t,e){var r,o,y,h,d,b,m,g,w,x=t.target,_=t.global,j=t.stat,S=t.proto,O=_?n:j?n[x]:n[x]&&n[x].prototype,R=_?a:a[x]||p(a,x,{})[x],E=R.prototype;for(h in e)o=!(r=c(_?h:x+(j?".":"#")+h,t.forced))&&O&&l(O,h),b=R[h],o&&(m=t.dontCallGetSet?(w=s(O,h))&&w.value:O[h]),d=o&&m?m:e[h],(r||S||typeof b!=typeof d)&&(g=t.bind&&o?f(d,n):t.wrap&&o?v(d):S&&u(d)?i(d):d,(t.sham||d&&d.sham||b&&b.sham)&&p(g,"sham",!0),p(R,h,g),S&&(l(a,y=x+"Prototype")||p(a,y,{}),p(a[y],h,d),t.real&&E&&(r||!E[h])&&p(E,h,d)))}},1175:(t,e,r)=>{"use strict";var n=r(9846);t.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},1505:(t,e,r)=>{"use strict";var n=r(8828);t.exports=!n(function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")})},1626:(t,e,r)=>{"use strict";var n=r(9447),o=r(4284),i=r(5817);t.exports=n?function(t,e,r){return o.f(t,e,i(1,r))}:function(t,e,r){return t[e]=r,t}},1907:(t,e,r)=>{"use strict";var n=r(1505),o=Function.prototype,i=o.call,u=n&&o.bind.bind(i,i);t.exports=n?u:function(t){return function(){return i.apply(t,arguments)}}},1960:(t,e,r)=>{"use strict";var n=r(2671);t.exports=n},2046:t=>{"use strict";t.exports={}},2159:(t,e,r)=>{"use strict";var n=r(2250),o=r(4640),i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not a function")}},2250:t=>{"use strict";var e="object"==typeof document&&document.all;t.exports=void 0===e&&void 0!==e?function(t){return"function"==typeof t||t===e}:function(t){return"function"==typeof t}},2344:(t,e,r)=>{"use strict";var n=r(1091),o=r(5951);n({global:!0,forced:o.globalThis!==o},{globalThis:o})},2361:(t,e,r)=>{"use strict";var n=r(5807),o=r(1907);t.exports=function(t){if("Function"===n(t))return o(t)}},2532:(t,e,r)=>{"use strict";var n=r(5951),o=Object.defineProperty;t.exports=function(t,e){try{o(n,t,{value:e,configurable:!0,writable:!0})}catch(r){n[t]=e}return e}},2574:(t,e)=>{"use strict";var r={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,o=n&&!r.call({1:2},1);e.f=o?function(t){var e=n(this,t);return!!e&&e.enumerable}:r},2671:(t,e,r)=>{"use strict";r(2344),t.exports=r(5951)},3565:(t,e,r)=>{"use strict";var n=r(1960);t.exports=n},3648:(t,e,r)=>{"use strict";var n=r(9447),o=r(8828),i=r(9552);t.exports=!n&&!o(function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a})},3846:(t,e,r)=>{"use strict";var n=r(9447),o=r(3930),i=r(2574),u=r(5817),s=r(7374),c=r(470),a=r(9724),f=r(3648),p=Object.getOwnPropertyDescriptor;e.f=n?p:function(t,e){if(t=s(t),e=c(e),f)try{return p(t,e)}catch(t){}if(a(t,e))return u(!o(i.f,t,e),t[e])}},3930:(t,e,r)=>{"use strict";var n=r(1505),o=Function.prototype.call;t.exports=n?o.bind(o):function(){return o.apply(o,arguments)}},4239:(t,e,r)=>{"use strict";var n=r(7136),o=TypeError;t.exports=function(t){if(n(t))throw new o("Can't call method on "+t);return t}},4284:(t,e,r)=>{"use strict";var n=r(9447),o=r(3648),i=r(8661),u=r(6624),s=r(470),c=TypeError,a=Object.defineProperty,f=Object.getOwnPropertyDescriptor,p="enumerable",l="configurable",v="writable";e.f=n?i?function(t,e,r){if(u(t),e=s(e),u(r),"function"==typeof t&&"prototype"===e&&"value"in r&&v in r&&!r[v]){var n=f(t,e);n&&n[v]&&(t[e]=r.value,r={configurable:l in r?r[l]:n[l],enumerable:p in r?r[p]:n[p],writable:!1})}return a(t,e,r)}:a:function(t,e,r){if(u(t),e=s(e),u(r),o)try{return a(t,e,r)}catch(t){}if("get"in r||"set"in r)throw new c("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},4444:(t,e,r)=>{"use strict";t.exports=r(214)},4640:t=>{"use strict";var e=String;t.exports=function(t){try{return e(t)}catch(t){return"Object"}}},5582:(t,e,r)=>{"use strict";var n=r(2046),o=r(5951),i=r(2250),u=function(t){return i(t)?t:void 0};t.exports=function(t,e){return arguments.length<2?u(n[t])||u(o[t]):n[t]&&n[t][e]||o[t]&&o[t][e]}},5594:(t,e,r)=>{"use strict";var n=r(5582),o=r(2250),i=r(8280),u=r(1175),s=Object;t.exports=u?function(t){return"symbol"==typeof t}:function(t){var e=n("Symbol");return o(e)&&i(e.prototype,s(t))}},5644:(t,e)=>{"use strict";!function(){function t(e){if(null!==e.fullKey)return e.fullKey;var r=e.ownKey;try{var n=e.getCustomHooks()}catch(t){return e.forceReset=!0,e.fullKey=r}for(var o=0;o<n.length;o++){var i=n[o];if("function"!=typeof i)return e.forceReset=!0,e.fullKey=r;if(void 0!==(i=l.get(i))){var u=t(i);i.forceReset&&(e.forceReset=!0),r+="\n---\n"+u}}return e.fullKey=r}function r(t){return v.get(t)}function n(t){var e=new Set;return t.forEach(function(t){e.add(t)}),e}function o(t,e){try{return t[e]}catch(t){}}function i(t,e){var r=2<arguments.length&&void 0!==arguments[2]&&arguments[2],n=3<arguments.length?arguments[3]:void 0;if(l.has(t)||l.set(t,{forceReset:r,ownKey:e,fullKey:null,getCustomHooks:n||function(){return[]}}),"object"==typeof t&&null!==t)switch(o(t,"$$typeof")){case s:i(t.render,e,r,n);break;case c:i(t.type,e,r,n)}}function u(e){void 0!==(e=l.get(e))&&t(e)}var s=Symbol.for("react.forward_ref"),c=Symbol.for("react.memo"),a="function"==typeof WeakMap?WeakMap:Map,f=new Map,p=new a,l=new a,v=new a,y=[],h=new Map,d=new Map,b=new Set,m=new Set,g="function"==typeof WeakMap?new WeakMap:null,w=!1;e._getMountedRootCount=function(){return b.size},e.collectCustomHooksForSignature=u,e.createSignatureFunctionForTransform=function(){var t,e,r=!1;return function(n,o,s,c){if("string"==typeof o)return t||(t=n,e="function"==typeof c),null==n||"function"!=typeof n&&"object"!=typeof n||i(n,o,s,c),n;!r&&e&&(r=!0,u(t))}},e.getFamilyByID=function(t){return f.get(t)},e.getFamilyByType=function(t){return p.get(t)},e.hasUnrecoverableErrors=function(){return!1},e.injectIntoGlobalHook=function(t){var e=t.__REACT_DEVTOOLS_GLOBAL_HOOK__;if(void 0===e){var r=0;t.__REACT_DEVTOOLS_GLOBAL_HOOK__=e={renderers:new Map,supportsFiber:!0,inject:function(){return r++},onScheduleFiberRoot:function(){},onCommitFiberRoot:function(){},onCommitFiberUnmount:function(){}}}if(e.isDisabled)console.warn("Something has shimmed the React DevTools global hook (__REACT_DEVTOOLS_GLOBAL_HOOK__). Fast Refresh is not compatible with this shim and will be disabled.");else{var n=e.inject;e.inject=function(t){var e=n.apply(this,arguments);return"function"==typeof t.scheduleRefresh&&"function"==typeof t.setRefreshHandler&&h.set(e,t),e},e.renderers.forEach(function(t,e){"function"==typeof t.scheduleRefresh&&"function"==typeof t.setRefreshHandler&&h.set(e,t)});var o=e.onCommitFiberRoot,i=e.onScheduleFiberRoot||function(){};e.onScheduleFiberRoot=function(t,e,r){return w||(m.delete(e),null!==g&&g.set(e,r)),i.apply(this,arguments)},e.onCommitFiberRoot=function(t,e,r,n){var i=h.get(t);if(void 0!==i){d.set(e,i);var u=(i=e.current).alternate;null!==u?(u=null!=u.memoizedState&&null!=u.memoizedState.element&&b.has(e),i=null!=i.memoizedState&&null!=i.memoizedState.element,!u&&i?(b.add(e),m.delete(e)):u&&i||(u&&!i?(b.delete(e),n?m.add(e):d.delete(e)):u||i||n&&m.add(e))):b.add(e)}return o.apply(this,arguments)}}},e.isLikelyComponentType=function(t){switch(typeof t){case"function":if(null!=t.prototype){if(t.prototype.isReactComponent)return!0;var e=Object.getOwnPropertyNames(t.prototype);if(1<e.length||"constructor"!==e[0]||t.prototype.__proto__!==Object.prototype)return!1}return"string"==typeof(t=t.name||t.displayName)&&/^[A-Z]/.test(t);case"object":if(null!=t)switch(o(t,"$$typeof")){case s:case c:return!0}return!1;default:return!1}},e.performReactRefresh=function(){if(0===y.length||w)return null;w=!0;try{var e=new Set,o=new Set,i=y;y=[],i.forEach(function(r){var n=r[0];r=r[1];var i=n.current;v.set(i,n),v.set(r,n),n.current=r,i.prototype&&i.prototype.isReactComponent||r.prototype&&r.prototype.isReactComponent?r=!1:(i=l.get(i),r=l.get(r),r=void 0===i&&void 0===r||void 0!==i&&void 0!==r&&t(i)===t(r)&&!r.forceReset),r?o.add(n):e.add(n)});var u={updatedFamilies:o,staleFamilies:e};h.forEach(function(t){t.setRefreshHandler(r)});var s=!1,c=null,a=n(m),f=n(b),p=(x=d,_=new Map,x.forEach(function(t,e){_.set(e,t)}),_);if(a.forEach(function(t){var e=p.get(t);if(void 0===e)throw Error("Could not find helpers for a root. This is a bug in React Refresh.");if(m.has(t),null!==g&&g.has(t)){var r=g.get(t);try{e.scheduleRoot(t,r)}catch(t){s||(s=!0,c=t)}}}),f.forEach(function(t){var e=p.get(t);if(void 0===e)throw Error("Could not find helpers for a root. This is a bug in React Refresh.");b.has(t);try{e.scheduleRefresh(t,u)}catch(t){s||(s=!0,c=t)}}),s)throw c;return u}finally{w=!1}var x,_},e.register=function t(e,r){if(!(null===e||"function"!=typeof e&&"object"!=typeof e||p.has(e))){var n=f.get(r);if(void 0===n?(n={current:e},f.set(r,n)):y.push([n,e]),p.set(e,n),"object"==typeof e&&null!==e)switch(o(e,"$$typeof")){case s:t(e.render,r+"$render");break;case c:t(e.type,r+"$type")}}},e.setSignature=i}()},5807:(t,e,r)=>{"use strict";var n=r(1907),o=n({}.toString),i=n("".slice);t.exports=function(t){return i(o(t),8,-1)}},5816:(t,e,r)=>{"use strict";var n=r(6128);t.exports=function(t,e){return n[t]||(n[t]=e||{})}},5817:t=>{"use strict";t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},5951:function(t,e,r){"use strict";var n=function(t){return t&&t.Math===Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof r.g&&r.g)||n("object"==typeof this&&this)||function(){return this}()||Function("return this")()},6024:(t,e,r)=>{"use strict";var n=r(1505),o=Function.prototype,i=o.apply,u=o.call;t.exports="object"==typeof Reflect&&Reflect.apply||(n?u.bind(i):function(){return u.apply(i,arguments)})},6028:(t,e,r)=>{"use strict";var n=r(3930),o=r(6285),i=r(5594),u=r(9367),s=r(581),c=r(6264),a=TypeError,f=c("toPrimitive");t.exports=function(t,e){if(!o(t)||i(t))return t;var r,c=u(t,f);if(c){if(void 0===e&&(e="default"),r=n(c,t,e),!o(r)||i(r))return r;throw new a("Can't convert object to primitive value")}return void 0===e&&(e="number"),s(t,e)}},6128:(t,e,r)=>{"use strict";var n=r(7376),o=r(5951),i=r(2532),u="__core-js_shared__",s=t.exports=o[u]||i(u,{});(s.versions||(s.versions=[])).push({version:"3.47.0",mode:n?"pure":"global",copyright:"© 2014-2025 Denis Pushkarev (zloirock.ru), 2025 CoreJS Company (core-js.io)",license:"https://github.com/zloirock/core-js/blob/v3.47.0/LICENSE",source:"https://github.com/zloirock/core-js"})},6206:(t,e,r)=>{"use strict";t.exports=r(5644)},6264:(t,e,r)=>{"use strict";var n=r(5951),o=r(5816),i=r(9724),u=r(6499),s=r(9846),c=r(1175),a=n.Symbol,f=o("wks"),p=c?a.for||a:a&&a.withoutSetter||u;t.exports=function(t){return i(f,t)||(f[t]=s&&i(a,t)?a[t]:p("Symbol."+t)),f[t]}},6285:(t,e,r)=>{"use strict";var n=r(2250);t.exports=function(t){return"object"==typeof t?null!==t:n(t)}},6499:(t,e,r)=>{"use strict";var n=r(1907),o=0,i=Math.random(),u=n(1.1.toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+u(++o+i,36)}},6624:(t,e,r)=>{"use strict";var n=r(6285),o=String,i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not an object")}},6794:(t,e,r)=>{"use strict";var n=r(5951).navigator,o=n&&n.userAgent;t.exports=o?String(o):""},6946:(t,e,r)=>{"use strict";var n=r(1907),o=r(8828),i=r(5807),u=Object,s=n("".split);t.exports=o(function(){return!u("z").propertyIsEnumerable(0)})?function(t){return"String"===i(t)?s(t,""):u(t)}:u},7136:t=>{"use strict";t.exports=function(t){return null==t}},7374:(t,e,r)=>{"use strict";var n=r(6946),o=r(4239);t.exports=function(t){return n(o(t))}},7376:t=>{"use strict";t.exports=!0},7463:(t,e,r)=>{"use strict";var n=r(8828),o=r(2250),i=/#|\.prototype\./,u=function(t,e){var r=c[s(t)];return r===f||r!==a&&(o(e)?n(e):!!e)},s=u.normalize=function(t){return String(t).replace(i,".").toLowerCase()},c=u.data={},a=u.NATIVE="N",f=u.POLYFILL="P";t.exports=u},8280:(t,e,r)=>{"use strict";var n=r(1907);t.exports=n({}.isPrototypeOf)},8311:(t,e,r)=>{"use strict";var n=r(2361),o=r(2159),i=r(1505),u=n(n.bind);t.exports=function(t,e){return o(t),void 0===e?t:i?u(t,e):function(){return t.apply(e,arguments)}}},8661:(t,e,r)=>{"use strict";var n=r(9447),o=r(8828);t.exports=n&&o(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype})},8828:t=>{"use strict";t.exports=function(t){try{return!!t()}catch(t){return!0}}},9298:(t,e,r)=>{"use strict";var n=r(4239),o=Object;t.exports=function(t){return o(n(t))}},9367:(t,e,r)=>{"use strict";var n=r(2159),o=r(7136);t.exports=function(t,e){var r=t[e];return o(r)?void 0:n(r)}},9447:(t,e,r)=>{"use strict";var n=r(8828);t.exports=!n(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]})},9552:(t,e,r)=>{"use strict";var n=r(5951),o=r(6285),i=n.document,u=o(i)&&o(i.createElement);t.exports=function(t){return u?i.createElement(t):{}}},9724:(t,e,r)=>{"use strict";var n=r(1907),o=r(9298),i=n({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return i(o(t),e)}},9846:(t,e,r)=>{"use strict";var n=r(798),o=r(8828),i=r(5951).String;t.exports=!!Object.getOwnPropertySymbols&&!o(function(){var t=Symbol("symbol detection");return!i(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&n&&n<41})}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var i=e[n]={exports:{}};return t[n].call(i.exports,i,i.exports,r),i.exports}r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}();{const t=r(4444),e=r(6206);if(void 0!==t){var n="__reactRefreshInjected";"undefined"!=typeof __react_refresh_library__&&__react_refresh_library__&&(n+="_"+__react_refresh_library__),t[n]||(e.injectIntoGlobalHook(t),t[n]=!0)}}})(); | ||
| (()=>{var t={5644(t,e){"use strict";!function(){function t(e){if(null!==e.fullKey)return e.fullKey;var r=e.ownKey;try{var n=e.getCustomHooks()}catch(t){return e.forceReset=!0,e.fullKey=r}for(var o=0;o<n.length;o++){var i=n[o];if("function"!=typeof i)return e.forceReset=!0,e.fullKey=r;if(void 0!==(i=l.get(i))){var s=t(i);i.forceReset&&(e.forceReset=!0),r+="\n---\n"+s}}return e.fullKey=r}function r(t){return v.get(t)}function n(t){var e=new Set;return t.forEach(function(t){e.add(t)}),e}function o(t,e){try{return t[e]}catch(t){}}function i(t,e){var r=2<arguments.length&&void 0!==arguments[2]&&arguments[2],n=3<arguments.length?arguments[3]:void 0;if(l.has(t)||l.set(t,{forceReset:r,ownKey:e,fullKey:null,getCustomHooks:n||function(){return[]}}),"object"==typeof t&&null!==t)switch(o(t,"$$typeof")){case u:i(t.render,e,r,n);break;case c:i(t.type,e,r,n)}}function s(e){void 0!==(e=l.get(e))&&t(e)}var u=Symbol.for("react.forward_ref"),c=Symbol.for("react.memo"),a="function"==typeof WeakMap?WeakMap:Map,f=new Map,p=new a,l=new a,v=new a,y=[],b=new Map,h=new Map,d=new Set,m=new Set,w="function"==typeof WeakMap?new WeakMap:null,g=!1;e.injectIntoGlobalHook=function(t){var e=t.__REACT_DEVTOOLS_GLOBAL_HOOK__;if(void 0===e){var r=0;t.__REACT_DEVTOOLS_GLOBAL_HOOK__=e={renderers:new Map,supportsFiber:!0,inject:function(){return r++},onScheduleFiberRoot:function(){},onCommitFiberRoot:function(){},onCommitFiberUnmount:function(){}}}if(e.isDisabled)console.warn("Something has shimmed the React DevTools global hook (__REACT_DEVTOOLS_GLOBAL_HOOK__). Fast Refresh is not compatible with this shim and will be disabled.");else{var n=e.inject;e.inject=function(t){var e=n.apply(this,arguments);return"function"==typeof t.scheduleRefresh&&"function"==typeof t.setRefreshHandler&&b.set(e,t),e},e.renderers.forEach(function(t,e){"function"==typeof t.scheduleRefresh&&"function"==typeof t.setRefreshHandler&&b.set(e,t)});var o=e.onCommitFiberRoot,i=e.onScheduleFiberRoot||function(){};e.onScheduleFiberRoot=function(t,e,r){return g||(m.delete(e),null!==w&&w.set(e,r)),i.apply(this,arguments)},e.onCommitFiberRoot=function(t,e,r,n){var i=b.get(t);if(void 0!==i){h.set(e,i);var s=(i=e.current).alternate;null!==s?(s=null!=s.memoizedState&&null!=s.memoizedState.element&&d.has(e),i=null!=i.memoizedState&&null!=i.memoizedState.element,!s&&i?(d.add(e),m.delete(e)):s&&i||(s&&!i?(d.delete(e),n?m.add(e):h.delete(e)):s||i||n&&m.add(e))):d.add(e)}return o.apply(this,arguments)}}}}()},6206(t,e,r){"use strict";t.exports=r(5644)},3565(t,e,r){"use strict";var n=r(1960);t.exports=n},2671(t,e,r){"use strict";r(2344),t.exports=r(5951)},4444(t,e,r){"use strict";t.exports=r(214)},214(t,e,r){"use strict";r(397);var n=r(3565);t.exports=n},2159(t,e,r){"use strict";var n=r(2250),o=r(4640),i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not a function")}},6624(t,e,r){"use strict";var n=r(6285),o=String,i=TypeError;t.exports=function(t){if(n(t))return t;throw new i(o(t)+" is not an object")}},5807(t,e,r){"use strict";var n=r(1907),o=n({}.toString),i=n("".slice);t.exports=function(t){return i(o(t),8,-1)}},1626(t,e,r){"use strict";var n=r(9447),o=r(4284),i=r(5817);t.exports=n?function(t,e,r){return o.f(t,e,i(1,r))}:function(t,e,r){return t[e]=r,t}},5817(t){"use strict";t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},2532(t,e,r){"use strict";var n=r(5951),o=Object.defineProperty;t.exports=function(t,e){try{o(n,t,{value:e,configurable:!0,writable:!0})}catch(r){n[t]=e}return e}},9447(t,e,r){"use strict";var n=r(8828);t.exports=!n(function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]})},9552(t,e,r){"use strict";var n=r(5951),o=r(6285),i=n.document,s=o(i)&&o(i.createElement);t.exports=function(t){return s?i.createElement(t):{}}},6794(t,e,r){"use strict";var n=r(5951).navigator,o=n&&n.userAgent;t.exports=o?String(o):""},798(t,e,r){"use strict";var n,o,i=r(5951),s=r(6794),u=i.process,c=i.Deno,a=u&&u.versions||c&&c.version,f=a&&a.v8;f&&(o=(n=f.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&s&&(!(n=s.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=s.match(/Chrome\/(\d+)/))&&(o=+n[1]),t.exports=o},1091(t,e,r){"use strict";var n=r(5951),o=r(6024),i=r(2361),s=r(2250),u=r(3846).f,c=r(7463),a=r(2046),f=r(8311),p=r(1626),l=r(9724);r(6128);var v=function(t){var e=function(r,n,i){if(this instanceof e){switch(arguments.length){case 0:return new t;case 1:return new t(r);case 2:return new t(r,n)}return new t(r,n,i)}return o(t,this,arguments)};return e.prototype=t.prototype,e};t.exports=function(t,e){var r,o,y,b,h,d,m,w,g,x=t.target,_=t.global,O=t.stat,S=t.proto,j=_?n:O?n[x]:n[x]&&n[x].prototype,R=_?a:a[x]||p(a,x,{})[x],E=R.prototype;for(b in e)o=!(r=c(_?b:x+(O?".":"#")+b,t.forced))&&j&&l(j,b),d=R[b],o&&(m=t.dontCallGetSet?(g=u(j,b))&&g.value:j[b]),h=o&&m?m:e[b],(r||S||typeof d!=typeof h)&&(w=t.bind&&o?f(h,n):t.wrap&&o?v(h):S&&s(h)?i(h):h,(t.sham||h&&h.sham||d&&d.sham)&&p(w,"sham",!0),p(R,b,w),S&&(l(a,y=x+"Prototype")||p(a,y,{}),p(a[y],b,h),t.real&&E&&(r||!E[b])&&p(E,b,h)))}},8828(t){"use strict";t.exports=function(t){try{return!!t()}catch(t){return!0}}},6024(t,e,r){"use strict";var n=r(1505),o=Function.prototype,i=o.apply,s=o.call;t.exports="object"==typeof Reflect&&Reflect.apply||(n?s.bind(i):function(){return s.apply(i,arguments)})},8311(t,e,r){"use strict";var n=r(2361),o=r(2159),i=r(1505),s=n(n.bind);t.exports=function(t,e){return o(t),void 0===e?t:i?s(t,e):function(){return t.apply(e,arguments)}}},1505(t,e,r){"use strict";var n=r(8828);t.exports=!n(function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")})},3930(t,e,r){"use strict";var n=r(1505),o=Function.prototype.call;t.exports=n?o.bind(o):function(){return o.apply(o,arguments)}},2361(t,e,r){"use strict";var n=r(5807),o=r(1907);t.exports=function(t){if("Function"===n(t))return o(t)}},1907(t,e,r){"use strict";var n=r(1505),o=Function.prototype,i=o.call,s=n&&o.bind.bind(i,i);t.exports=n?s:function(t){return function(){return i.apply(t,arguments)}}},5582(t,e,r){"use strict";var n=r(2046),o=r(5951),i=r(2250),s=function(t){return i(t)?t:void 0};t.exports=function(t,e){return arguments.length<2?s(n[t])||s(o[t]):n[t]&&n[t][e]||o[t]&&o[t][e]}},9367(t,e,r){"use strict";var n=r(2159),o=r(7136);t.exports=function(t,e){var r=t[e];return o(r)?void 0:n(r)}},5951(t,e,r){"use strict";var n=function(t){return t&&t.Math===Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof r.g&&r.g)||n("object"==typeof this&&this)||function(){return this}()||Function("return this")()},9724(t,e,r){"use strict";var n=r(1907),o=r(9298),i=n({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return i(o(t),e)}},3648(t,e,r){"use strict";var n=r(9447),o=r(8828),i=r(9552);t.exports=!n&&!o(function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a})},6946(t,e,r){"use strict";var n=r(1907),o=r(8828),i=r(5807),s=Object,u=n("".split);t.exports=o(function(){return!s("z").propertyIsEnumerable(0)})?function(t){return"String"===i(t)?u(t,""):s(t)}:s},2250(t){"use strict";var e="object"==typeof document&&document.all;t.exports=void 0===e&&void 0!==e?function(t){return"function"==typeof t||t===e}:function(t){return"function"==typeof t}},7463(t,e,r){"use strict";var n=r(8828),o=r(2250),i=/#|\.prototype\./,s=function(t,e){var r=c[u(t)];return r===f||r!==a&&(o(e)?n(e):!!e)},u=s.normalize=function(t){return String(t).replace(i,".").toLowerCase()},c=s.data={},a=s.NATIVE="N",f=s.POLYFILL="P";t.exports=s},7136(t){"use strict";t.exports=function(t){return null==t}},6285(t,e,r){"use strict";var n=r(2250);t.exports=function(t){return"object"==typeof t?null!==t:n(t)}},7376(t){"use strict";t.exports=!0},5594(t,e,r){"use strict";var n=r(5582),o=r(2250),i=r(8280),s=r(1175),u=Object;t.exports=s?function(t){return"symbol"==typeof t}:function(t){var e=n("Symbol");return o(e)&&i(e.prototype,u(t))}},4284(t,e,r){"use strict";var n=r(9447),o=r(3648),i=r(8661),s=r(6624),u=r(470),c=TypeError,a=Object.defineProperty,f=Object.getOwnPropertyDescriptor,p="enumerable",l="configurable",v="writable";e.f=n?i?function(t,e,r){if(s(t),e=u(e),s(r),"function"==typeof t&&"prototype"===e&&"value"in r&&v in r&&!r[v]){var n=f(t,e);n&&n[v]&&(t[e]=r.value,r={configurable:l in r?r[l]:n[l],enumerable:p in r?r[p]:n[p],writable:!1})}return a(t,e,r)}:a:function(t,e,r){if(s(t),e=u(e),s(r),o)try{return a(t,e,r)}catch(t){}if("get"in r||"set"in r)throw new c("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},3846(t,e,r){"use strict";var n=r(9447),o=r(3930),i=r(2574),s=r(5817),u=r(7374),c=r(470),a=r(9724),f=r(3648),p=Object.getOwnPropertyDescriptor;e.f=n?p:function(t,e){if(t=u(t),e=c(e),f)try{return p(t,e)}catch(t){}if(a(t,e))return s(!o(i.f,t,e),t[e])}},8280(t,e,r){"use strict";var n=r(1907);t.exports=n({}.isPrototypeOf)},2574(t,e){"use strict";var r={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,o=n&&!r.call({1:2},1);e.f=o?function(t){var e=n(this,t);return!!e&&e.enumerable}:r},581(t,e,r){"use strict";var n=r(3930),o=r(2250),i=r(6285),s=TypeError;t.exports=function(t,e){var r,u;if("string"===e&&o(r=t.toString)&&!i(u=n(r,t)))return u;if(o(r=t.valueOf)&&!i(u=n(r,t)))return u;if("string"!==e&&o(r=t.toString)&&!i(u=n(r,t)))return u;throw new s("Can't convert object to primitive value")}},2046(t){"use strict";t.exports={}},4239(t,e,r){"use strict";var n=r(7136),o=TypeError;t.exports=function(t){if(n(t))throw new o("Can't call method on "+t);return t}},6128(t,e,r){"use strict";var n=r(7376),o=r(5951),i=r(2532),s="__core-js_shared__",u=t.exports=o[s]||i(s,{});(u.versions||(u.versions=[])).push({version:"3.49.0",mode:n?"pure":"global",copyright:"© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.",license:"https://github.com/zloirock/core-js/blob/v3.49.0/LICENSE",source:"https://github.com/zloirock/core-js"})},5816(t,e,r){"use strict";var n=r(6128);t.exports=function(t,e){return n[t]||(n[t]=e||{})}},9846(t,e,r){"use strict";var n=r(798),o=r(8828),i=r(5951).String;t.exports=!!Object.getOwnPropertySymbols&&!o(function(){var t=Symbol("symbol detection");return!i(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&n&&n<41})},7374(t,e,r){"use strict";var n=r(6946),o=r(4239);t.exports=function(t){return n(o(t))}},9298(t,e,r){"use strict";var n=r(4239),o=Object;t.exports=function(t){return o(n(t))}},6028(t,e,r){"use strict";var n=r(3930),o=r(6285),i=r(5594),s=r(9367),u=r(581),c=r(6264),a=TypeError,f=c("toPrimitive");t.exports=function(t,e){if(!o(t)||i(t))return t;var r,c=s(t,f);if(c){if(void 0===e&&(e="default"),r=n(c,t,e),!o(r)||i(r))return r;throw new a("Can't convert object to primitive value")}return void 0===e&&(e="number"),u(t,e)}},470(t,e,r){"use strict";var n=r(6028),o=r(5594);t.exports=function(t){var e=n(t,"string");return o(e)?e:e+""}},4640(t){"use strict";var e=String;t.exports=function(t){try{return e(t)}catch(t){return"Object"}}},6499(t,e,r){"use strict";var n=r(1907),o=0,i=Math.random(),s=n(1.1.toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+s(++o+i,36)}},1175(t,e,r){"use strict";var n=r(9846);t.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},8661(t,e,r){"use strict";var n=r(9447),o=r(8828);t.exports=n&&o(function(){return 42!==Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype})},6264(t,e,r){"use strict";var n=r(5951),o=r(5816),i=r(9724),s=r(6499),u=r(9846),c=r(1175),a=n.Symbol,f=o("wks"),p=c?a.for||a:a&&a.withoutSetter||s;t.exports=function(t){return i(f,t)||(f[t]=u&&i(a,t)?a[t]:p("Symbol."+t)),f[t]}},2344(t,e,r){"use strict";var n=r(1091),o=r(5951);n({global:!0,forced:o.globalThis!==o},{globalThis:o})},397(t,e,r){"use strict";r(2344)},1960(t,e,r){"use strict";var n=r(2671);t.exports=n}};const e={};function r(n){const o=e[n];if(void 0!==o)return o.exports;const i=e[n]={exports:{}};return t[n].call(i.exports,i,i.exports,r),i.exports}r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}();{const t=r(4444),e=r(6206);if(void 0!==t){var n="__reactRefreshInjected";"undefined"!=typeof __react_refresh_library__&&__react_refresh_library__&&(n+="_"+__react_refresh_library__),t[n]||(e.injectIntoGlobalHook(t),t[n]=!0)}}})(); |
-635
| ## 0.6.2 (26 Nov 2025) | ||
| ### Fixes | ||
| - Relaxed peer dependency requirement on `type-fest` to allow v5.x | ||
| ([#934](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/934)) | ||
| ## 0.6.1 (26 Jun 2025) | ||
| ### Fixes | ||
| - Ensure `this` propagates into module factory properly | ||
| ([#921](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/921)) | ||
| ## 0.6.0 (28 Apr 2025) | ||
| ### BREAKING | ||
| - Minimum required Node.js version has been bumped to `18.12.0`. | ||
| - Minimum required `webpack` version has been bumped to `5.2.0`. | ||
| - Minimum supported `webpack-dev-server` version has been bumped to `4.8.0`. | ||
| - Minimum supported `webpack-plugin-serve` version has been bumped to `1.0.0`. | ||
| - `overlay.sockHost`, `overlay.sockPath`, `overlay.sockPort`, `overlay.sockProtocol` and `overlay.useURLPolyfill` have all been removed. | ||
| ([#850](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/850)) | ||
| It was necessary to support WDS below `4.8.0` (published in April 2022). | ||
| It is no-longer necessary as a direct integration with WDS is now possible. | ||
| ### Features | ||
| - Added helper script to better support use cases where React and/or React-DOM are externalized | ||
| ([#852](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/852)) | ||
| ### Fixes | ||
| - Ensure plugin injected entries are no-op in production | ||
| ([#900](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/900)) | ||
| ### Internal | ||
| - Dropped support for Webpack 4 / WDS 3 | ||
| ([#850](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/850), | ||
| [#904](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/904)) | ||
| - Migrated from `ansi-html` to `anser` in error overlay | ||
| ([#854](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/854)) | ||
| - Bumped all development dependencies | ||
| ([#905](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/905)) | ||
| ## 0.5.17 (26 Jun 2025) | ||
| ### Fixes | ||
| - Ensure `this` propagates into module factory properly | ||
| ([#922](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/922)) | ||
| ## 0.5.16 (31 Mar 2025) | ||
| ### Fixes | ||
| - Fixed out of order cleanup when using top-level await | ||
| ([#898](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/898)) | ||
| ## 0.5.15 (3 Jun 2024) | ||
| ### Fixes | ||
| - Fixed wrong import in error overlay for `ansi-html` | ||
| ([#853](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/853)) | ||
| ## 0.5.14 (1 Jun 2024) | ||
| ### Fixes | ||
| - Moved to `ansi-html` `v0.0.9` and `schema-utils` `v4.x` | ||
| ([#848](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/848)) | ||
| ### Internal | ||
| - Run tests on latest versions of Node.js 18, 20 and 22 | ||
| ([#848](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/848)) | ||
| - Bumped `jest` to v29 and some other development dependencies | ||
| ([#848](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/848)) | ||
| - Removed `yalc` | ||
| ([#849](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/849)) | ||
| ## 0.5.13 (28 Apr 2024) | ||
| ### Fixes | ||
| - Fixed module system inferring (ESM vs CJS) to start from the point of each file | ||
| ([#771](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/771)) | ||
| ## 0.5.12 (27 Apr 2024) | ||
| ### Fixes | ||
| - Fixed incorrect `sockProtocol` override | ||
| ([#835](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/835)) | ||
| - Relaxed peer dependency requirement on `webpack-dev-server` to allow v5.x | ||
| ([#837](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/837)) | ||
| ## 0.5.11 (15 Aug 2023) | ||
| ### Features | ||
| - Added support to exclude dynamically generated modules from other loaders | ||
| ([#769](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/769)) | ||
| ### Fixes | ||
| - Fixed unnecessary memory leaks due to `prevExports` | ||
| ([#766](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/766)) | ||
| - Relaxed peer dependency requirement on `type-fest` to allow v4.x | ||
| ([#767](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/767)) | ||
| - Fixed module type resolution when there is difference across contexts | ||
| ([#768](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/768)) | ||
| ## 0.5.10 (24 Nov 2022) | ||
| ### Fixes | ||
| - Bumped `loader-utils` to fix security vulnerability | ||
| ([#700](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/700)) | ||
| ## 0.5.9 (10 Nov 2022) | ||
| ### Fixes | ||
| - Bumped `loader-utils` to fix security vulnerability | ||
| ([#685](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/685)) | ||
| ## 0.5.8 (9 Oct 2022) | ||
| ### Fixes | ||
| - Fixed performance issue regarding `require.resolve` in loader injection | ||
| ([#669](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/669)) | ||
| - Bumped `core-js-pure` to not depend on deprecated versions | ||
| ([#674](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/674)) | ||
| ## 0.5.7 (23 May 2022) | ||
| ### Fixes | ||
| - Removed debug `console.log` statement | ||
| ([#631](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/631)) | ||
| ### Internal | ||
| - Run tests on Node.js 18 | ||
| ([#631](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/631)) | ||
| ## 0.5.6 (10 May 2022) | ||
| ### Fixes | ||
| - Fixed faulty `this` type import in loader | ||
| ([#624](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/624)) | ||
| - Made current script detection more robust for edge cases | ||
| ([#630](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/630)) | ||
| ### Internal | ||
| - Swapped to new `ReactDOM.createRoot` API in examples | ||
| ([#626](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/626)) | ||
| ## 0.5.5 (4 April 2022) | ||
| ### Fixes | ||
| - Handle unknown `moduleId` for dynamically generated modules | ||
| ([#547](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/547)) | ||
| - Handle WDS `auto` value on `port` | ||
| ([#574](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/574)) | ||
| - Fixed `react-refresh@0.12.0` compatibility | ||
| ([#576](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/576)) | ||
| - Fixed crash when parsing compile errors in overlay | ||
| ([#577](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/577)) | ||
| - Respect virtual modules when injecting loader | ||
| ([#593](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/593)) | ||
| - Allow `port` to be missing for WDS, also some general refactoring | ||
| ([#623](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/623)) | ||
| ### Internal | ||
| - A couple documentation changes in README | ||
| ([#575](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/575), | ||
| [8c39623](https://github.com/pmmmwh/react-refresh-webpack-plugin/commit/8c39623dac237aa15795b60820babcffebb28c64), | ||
| [#597](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/597)) | ||
| - Bumped dependencies for testing infrastructure | ||
| ([#526](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/526), | ||
| [#564](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/564), | ||
| [#567](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/567), | ||
| [#581](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/581), | ||
| [#588](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/588), | ||
| [#591](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/591), | ||
| [#594](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/594), | ||
| [#616](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/616)) | ||
| ## 0.5.4 (22 December 2021) | ||
| ### Fixes | ||
| - Skip loader injection for files referenced as assets | ||
| ([#545](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/545)) | ||
| - Changed failures of `exports` capturing to warn instead of throw | ||
| ([#546](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/546)) | ||
| ## 0.5.3 (28 November 2021) | ||
| ### Fixes | ||
| - Updated overlay for unsafe area in Safari | ||
| ([#528](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/528)) | ||
| - Fixed performance in large projects due to memory leak in loader | ||
| ([#537](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/537)) | ||
| ## 0.5.2 (19 November 2021) | ||
| ### Features | ||
| - Added support for WDS v4 `client.webSocketURL` | ||
| ([#529](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/529)) | ||
| ### Fixes | ||
| - Fixed lost module context due to interceptor by always using regular functions | ||
| ([#531](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/531)) | ||
| - Relaxed peer dependency requirement on `react-refresh` | ||
| ([#534](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/534)) | ||
| ## 0.5.1 (15 September 2021) | ||
| ### Fixes | ||
| - Relaxed peer dependency requirement on `type-fest` to allow v2.x | ||
| ([#507](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/507), | ||
| [#508](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/508)) | ||
| ### Internal | ||
| - Fixed typos in README | ||
| ([#509](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/509)) | ||
| ## 0.5.0 (14 September 2021) | ||
| ### BREAKING | ||
| - While most of the public API did not change, | ||
| we've re-written a large chunk of the runtime code to support a wider range of use cases. | ||
| This is likely to provide more stability, but if `0.4.x` works in your setup but `0.5.x` doesn't, | ||
| please file us an issue - we would love to address it! | ||
| - The `disableRefreshCheck` option have been removed. | ||
| ([#285](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/285)) | ||
| It has long been effect-less and deprecated since `0.3.x`. | ||
| - The `overlay.useLegacyWDSSockets` have been removed. | ||
| ([#498](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/498)) | ||
| It is aimed to support WDS below `3.6.0` (published in June 2019), | ||
| but looking at current usage and download stats, | ||
| we've decided it is best to drop support for the old socket format moving forward. | ||
| - Handling of port `0` have been removed. | ||
| ([#337](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/337)) | ||
| - `html-entities` have been bumped to `2.x`. | ||
| ([#321](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/321)) | ||
| - `react-refresh` have been bumped to `0.10.0`. | ||
| ([#353](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/353)) | ||
| ### Features | ||
| - Added WDS v4 support with new socket defaults through Webpack config | ||
| ([#241](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/241), | ||
| [#286](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/286), | ||
| [#392](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/392), | ||
| [#413](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/413), | ||
| [#479](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/479)) | ||
| - Added the `overlay.sockProtocol` option | ||
| ([#242](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/242)) | ||
| - Added monorepo compatibility via the the `library` option | ||
| ([#273](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/273)) | ||
| - Rewritten URL handling using WHATWG `URL` APIs with automatic pony-filling | ||
| ([#278](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/278), | ||
| [#332](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/332), | ||
| [#378](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/378)) | ||
| - Rewritten Webpack 5 compatibility using new APIs and hooks | ||
| ([#319](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/319), | ||
| [#372](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/372), | ||
| [#434](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/434), | ||
| [#483](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/483)) | ||
| - Rewritten refresh runtime to be fully module system aware | ||
| ([#337](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/337), | ||
| [#461](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/461), | ||
| [#482](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/482), | ||
| [#492](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/492)) | ||
| - Rewritten Webpack 4 and 5 checks using feature detection on compiler | ||
| ([#415](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/415)) | ||
| - Added support for `experiments.topLevelAwait` | ||
| ([#435](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/435), | ||
| [#447](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/447), | ||
| [#493](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/493)) | ||
| - Added retry logic when socket initialisation fails | ||
| ([#446](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/446)) | ||
| ### Fixes | ||
| - Relaxed peer dependency requirement on `type-fest` | ||
| ([#257](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/257), | ||
| [c02018a](https://github.com/pmmmwh/react-refresh-webpack-plugin/commit/c02018a853f58341d44ea9f1b56a9568ffe7b657), | ||
| [#484](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/484)) | ||
| - Relaxed requirement on the `overlay` option to accept relative paths | ||
| ([#284](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/284)) | ||
| - Patched unstable initialisation of global scope across module boundaries | ||
| ([#290](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/290), | ||
| [#369](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/369), | ||
| [#464](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/464), | ||
| [#505](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/505)) | ||
| - Patched quote escaping in injected runtime code | ||
| ([#306](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/306)) | ||
| - Invalidate updates outside of Refresh boundary for consistency | ||
| ([#307](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/307)) | ||
| - Properly throw when an ambiguous entrypoint is received while using Webpack 4 | ||
| ([#320](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/320)) | ||
| - Fixed overlay script source detection for WDS when no `src` is found | ||
| ([#331](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/331)) | ||
| - Fixed possible Stack Overflow through self-referencing | ||
| ([#370](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/370), | ||
| [#380](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/380)) | ||
| - Relaxed errors on HMR not found to not crash JS parsing | ||
| ([#371](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/371)) | ||
| - Ensure overlay code won't run if disabled | ||
| ([#374](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/374)) | ||
| - Relaxed peer dependency requirement on `@types/webpack` | ||
| ([#414](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/414)) | ||
| - Fixed compiler error overlay crashes when messages are empty | ||
| ([#462](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/462)) | ||
| - Swapped `ansi-html` to `ansi-html-community` to fix ReDoS vulnerability | ||
| ([#501](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/501)) | ||
| ### Internal | ||
| - More stable testing infrastructure | ||
| ([#234](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/234)) | ||
| - Run tests by default on Webpack 5 | ||
| ([#440](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/440)) | ||
| - Rewrite documentation and fix outstanding issues | ||
| ([#283](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/283), | ||
| [#291](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/291), | ||
| [#311](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/311), | ||
| [#376](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/376), | ||
| [#480](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/480), | ||
| [#497](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/497), | ||
| [#499](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/499)) | ||
| - Added documentation on community plugins: `react-refresh-typescript` and `swc` | ||
| ([#248](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/248), | ||
| [fbe1f27](https://github.com/pmmmwh/react-refresh-webpack-plugin/commit/fbe1f270de46c4a308d996a4487653a95aebfc25), | ||
| [#450](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/450)) | ||
| ## 0.4.3 (2 November 2020) | ||
| ### Fixes | ||
| - Fixed Yarn 2 PnP compatibility with absolute `react-refresh/runtime` imports | ||
| ([#230](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/230)) | ||
| - Fixed Webpack 5 compatibility by requiring `__webpack_require__` | ||
| ([#233](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/233)) | ||
| - Fixed IE 11 compatibility in socket code | ||
| ([4033e6af](https://github.com/pmmmwh/react-refresh-webpack-plugin/commit/4033e6af279f5f50396ff24fb1ec89c41fc2df32)) | ||
| - Relaxed peer dependency requirement for `react-refresh` to allow `0.9.x` | ||
| ([747c19ba](https://github.com/pmmmwh/react-refresh-webpack-plugin/commit/747c19ba43d81f19a042d44922d0518c6403528c)) | ||
| ## 0.4.2 (3 September 2020) | ||
| ### Fixes | ||
| - Patched loader to use with Node.js global `fetch` polyfills | ||
| ([#193](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/193)) | ||
| - Patched default `include` and `exclude` options to be case-insensitive | ||
| ([#194](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/194)) | ||
| ## 0.4.1 (28 July 2020) | ||
| ### Fixes | ||
| - Fixed accidental use of testing alias `webpack.next` in published plugin code | ||
| ([#167](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/167)) | ||
| ## 0.4.0 (28 July 2020) | ||
| ### BREAKING | ||
| - Minimum required Node.js version have been bumped to 10 as Node.js 8 is EOL now. | ||
| - Minimum required Webpack version is now `v4.43.0` or later as we adopted the new `module.hot.invalidate` API. | ||
| ([#89](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/89)) | ||
| The new API enabled us to bail out of the HMR loop less frequently and provide a better experience. | ||
| If you really cannot upgrade, you can stay on `0.3.3` for the time being. | ||
| - While most of our public API did not change, this release is closer to a rewrite than a refactor. | ||
| A lot of files have moved to provide easier access for advanced users and frameworks. | ||
| ([#122](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/122)) | ||
| You can check the difference in the PR to see what have moved and where they are now. | ||
| - The `useLegacyWDSSockets` option is now scoped under the `overlay` option. | ||
| ([#153](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/153)) | ||
| ### Features | ||
| - Adopted the `module.hot.invalidate()` API, which means we will now bail out less often | ||
| ([#89](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/89)) | ||
| - Attach runtime on Webpack's global scope instead of `window`, making the plugin platform-agnostic | ||
| ([#102](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/102)) | ||
| - Added stable support for **Webpack 5** and beta support for **Module Federation** | ||
| ([#123](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/123), | ||
| [#132](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/132), | ||
| [#164](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/164)) | ||
| - Socket integration URL detection via `document.currentScript` | ||
| ([#133](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/133)) | ||
| - Relaxed requirements for "required" `overlay` options to receive `false` as value | ||
| ([#154](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/154)) | ||
| - Prefixed all errors thrown by the plugin | ||
| ([#161](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/161)) | ||
| - Eliminated use of soon-to-be-deprecated `lodash.debounce` package | ||
| ([#163](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/163)) | ||
| ### Fixes | ||
| - Fixed circular references for `__react_refresh_error_overlay__` and `__react_refresh_utils` | ||
| ([#116](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/116)) | ||
| - Fixed IE11 compatibility | ||
| ([#106](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/106), | ||
| [#121](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/121)) | ||
| - Rearranged directories to provide more ergonomic imports | ||
| ([#122](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/122)) | ||
| - Fixed issues with Babel/ESLint/Flow regarding loader ordering and runtime cleanup | ||
| ([#129](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/129), | ||
| [#140](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/140)) | ||
| - Correctly detecting the HMR plugin | ||
| ([#130](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/130), | ||
| [#160](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/160)) | ||
| - Fixed unwanted injection of error overlay in non-browser environment | ||
| ([#146](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/146)) | ||
| - Scoped the `useLegacyWDSSockets` options under `overlay` to reflect its true use | ||
| ([#153](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/153)) | ||
| - Fixed non-preserved relative ordering of Webpack entries | ||
| ([#165](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/165)) | ||
| ### Internal | ||
| - Full HMR test suite - we are confident the plugin works! | ||
| ([#93](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/93), | ||
| [#96](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/96)) | ||
| - Unit tests for all plugin-related Node.js code | ||
| ([#127](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/127)) | ||
| ## 0.3.3 (29 May 2020) | ||
| ### Fixes | ||
| - Removed unrecoverable React errors check and its corresponding bail out logic on hot dispose | ||
| ([#104](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/104)) | ||
| ## 0.3.2 (22 May 2020) | ||
| ### Fixes | ||
| - Fixed error in overlay when stack trace is unavailable | ||
| ([#91](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/91)) | ||
| - Fixed IE11 compatibility | ||
| ([#98](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/98)) | ||
| ## 0.3.1 (11 May 2020) | ||
| ### Fixes | ||
| - Relaxed peer dependency requirements for `webpack-plugin-serve` | ||
| ([64bb6b8](https://github.com/pmmmwh/react-refresh-webpack-plugin/commit/64bb6b8c26bbf9e51484ef7a109c0921be7889ff)) | ||
| ## 0.3.0 (10 May 2020) | ||
| ### BREAKING | ||
| - Deprecated the `disableRefreshCheck` flag | ||
| ([#60](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/60)) | ||
| ### Features | ||
| - Added custom error overlay support | ||
| ([#44](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/44)) | ||
| - Added example project to use TypeScript without usual Babel settings | ||
| ([#46](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/46)) | ||
| - Added custom socket parameters for WDS | ||
| ([#52](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/52)) | ||
| - Added TypeScript definition files | ||
| ([#65](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/65)) | ||
| - Added stricter options validation rules | ||
| ([#62](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/62)) | ||
| - Added option to configure socket runtime to support more hot integrations | ||
| ([#64](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/64)) | ||
| - Added support for `webpack-plugin-serve` | ||
| ([#74](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/74)) | ||
| ### Fixes | ||
| - Fixed non-dismissible overlay for build warnings | ||
| ([#57](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/57)) | ||
| - Fixed electron compatibility | ||
| ([#58](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/58)) | ||
| - Fixed optional peer dependencies to be truly optional | ||
| ([#59](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/59)) | ||
| - Fixed compatibility issues caused by `node-url` | ||
| ([#61](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/61)) | ||
| - Removed check for `react` import for compatibility | ||
| ([#69](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/69)) | ||
| ## 0.2.0 (2 March 2020) | ||
| ### Features | ||
| - Added `webpack-hot-middleware` support | ||
| ([#23](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/23)) | ||
| ### Fixes | ||
| - Fixed dependency on a global `this` variable to better support web workers | ||
| ([#29](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/29)) | ||
| ## 0.1.3 (19 December 2019) | ||
| ### Fixes | ||
| - Fixed runtime template injection when the `runtimeChunks` optimization is used in Webpack | ||
| ([#26](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/26)) | ||
| ## 0.1.2 (18 December 2019) | ||
| ### Fixes | ||
| - Fixed caching of Webpack loader to significantly improve performance | ||
| ([#22](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/22)) | ||
| ## 0.1.1 (13 December 2019) | ||
| ### Fixes | ||
| - Fixed usage of WDS SockJS fallback | ||
| ([#17](https://github.com/pmmmwh/react-refresh-webpack-plugin/pull/17)) | ||
| ## 0.1.0 (7 December 2019) | ||
| - Initial public release |
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
2588
0.31%122696
-17.31%42
2.44%