diff options
Diffstat (limited to 'src/runtime.js')
-rw-r--r-- | src/runtime.js | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/runtime.js b/src/runtime.js index 07219436d..1e86ef3b6 100644 --- a/src/runtime.js +++ b/src/runtime.js @@ -6,6 +6,20 @@ var __hasOwnProp = Object.prototype.hasOwnProperty; var __getOwnPropNames = Object.getOwnPropertyNames; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +// We're disabling Object.freeze because it breaks CJS => ESM and can cause +// issues with Suspense and other things that expect the CJS module namespace +// to be mutable when the ESM module namespace is NOT mutable +var __objectFreezePolyfill = new WeakSet(); + +globalThis.Object.freeze = function freeze(obj) { + __objectFreezePolyfill.add(obj); + return obj; +}; + +globalThis.Object.isFrozen = function isFrozen(obj) { + return __objectFreezePolyfill.has(obj); +}; + export var __markAsModule = (target) => __defProp(target, "__esModule", { value: true, configurable: true }); |