aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2021-10-30 03:11:58 -0700
committerGravatar Jarred Sumner <jarred@jarredsumner.com> 2021-10-30 03:11:58 -0700
commit65ea1e464755a165a29680f12f02eb37ccfd8ecf (patch)
tree5e1437046fb9e778a4cc27a1d699f80dd031e6a3
parentf8f85430c08b273d5e551667391992fb3587c228 (diff)
downloadbun-65ea1e464755a165a29680f12f02eb37ccfd8ecf.tar.gz
bun-65ea1e464755a165a29680f12f02eb37ccfd8ecf.tar.zst
bun-65ea1e464755a165a29680f12f02eb37ccfd8ecf.zip
[Bun.js] Fix entry point to only call default if it was a CommonJS transformed function
-rw-r--r--src/bundler.zig2
-rw-r--r--src/runtime.footer.js3
-rw-r--r--src/runtime.js5
-rw-r--r--src/runtime.version2
4 files changed, 10 insertions, 2 deletions
diff --git a/src/bundler.zig b/src/bundler.zig
index 35c078759..44feeb749 100644
--- a/src/bundler.zig
+++ b/src/bundler.zig
@@ -3482,7 +3482,7 @@ pub const ServerEntryPoint = struct {
\\//Auto-generated file
\\import * as start from '{s}{s}';
\\export * from '{s}{s}';
- \\if ('default' in start && typeof start.default == 'function') {{
+ \\if ('default' in start && "__internalIsCommonJSNamespace" in globalThis && __internalIsCommonJSNamespace(start)) {{
\\ start.default();
\\}}
,
diff --git a/src/runtime.footer.js b/src/runtime.footer.js
index 9bea7273d..334efb92a 100644
--- a/src/runtime.footer.js
+++ b/src/runtime.footer.js
@@ -19,6 +19,9 @@ export var regeneratorRuntime = BUN_RUNTIME.regeneratorRuntime;
export var __exportValue = BUN_RUNTIME.__exportValue;
export var __exportDefault = BUN_RUNTIME.__exportDefault;
export var $$bun_runtime_json_parse = JSON.parse;
+export var __internalIsCommonJSNamespace =
+ BUN_RUNTIME.__internalIsCommonJSNamespace;
+globalThis.__internalIsCommonJSNamespace ||= __internalIsCommonJSNamespace;
globalThis.require ||= BUN_RUNTIME.__require;
globalThis.self ||= globalThis;
diff --git a/src/runtime.js b/src/runtime.js
index 0c4f53930..07219436d 100644
--- a/src/runtime.js
+++ b/src/runtime.js
@@ -136,6 +136,11 @@ export var __commonJS = (cb, name) => {
export var __cJS2eSM = __commonJS;
+export var __internalIsCommonJSNamespace = (namespace) =>
+ typeof namespace === "object" &&
+ "default" in namespace &&
+ namespace.default[cjsRequireSymbol];
+
export var __require = (namespace) => {
const namespaceType = typeof namespace;
if (namespaceType === "function" && namespace[cjsRequireSymbol])
diff --git a/src/runtime.version b/src/runtime.version
index ccfdfb532..6fda31b51 100644
--- a/src/runtime.version
+++ b/src/runtime.version
@@ -1 +1 @@
-7be53da538434cb0 \ No newline at end of file
+c6d7615ce951f3ae \ No newline at end of file