diff --git a/web/build/builder-dmg-config.yaml b/web/build/builder-dmg-config.yaml index 583e6657..066869a6 100644 --- a/web/build/builder-dmg-config.yaml +++ b/web/build/builder-dmg-config.yaml @@ -17,7 +17,6 @@ files: - node_modules/debounce-fn - node_modules/dot-prop - node_modules/electron-store - - node_modules/electron-serve - node_modules/env-paths - node_modules/fast-deep-equal - node_modules/fast-uri diff --git a/web/build/builder-linux-config.yaml b/web/build/builder-linux-config.yaml index 3f616c25..6525785c 100644 --- a/web/build/builder-linux-config.yaml +++ b/web/build/builder-linux-config.yaml @@ -18,7 +18,6 @@ files: - node_modules/debounce-fn - node_modules/dot-prop - node_modules/electron-store - - node_modules/electron-serve - node_modules/env-paths - node_modules/fast-deep-equal - node_modules/fast-uri diff --git a/web/build/builder-mas-config.yaml b/web/build/builder-mas-config.yaml index c86ebcbf..6ebba897 100644 --- a/web/build/builder-mas-config.yaml +++ b/web/build/builder-mas-config.yaml @@ -17,7 +17,6 @@ files: - node_modules/debounce-fn - node_modules/dot-prop - node_modules/electron-store - - node_modules/electron-serve - node_modules/env-paths - node_modules/fast-deep-equal - node_modules/fast-uri diff --git a/web/build/builder-win-config.yaml b/web/build/builder-win-config.yaml index 25a8de9c..66cf9566 100644 --- a/web/build/builder-win-config.yaml +++ b/web/build/builder-win-config.yaml @@ -18,7 +18,6 @@ files: - node_modules/debounce-fn - node_modules/dot-prop - node_modules/electron-store - - node_modules/electron-serve - node_modules/env-paths - node_modules/fast-deep-equal - node_modules/fast-uri diff --git a/web/nextron.config.js b/web/nextron.config.js index 06a9d15e..ff3fcbef 100644 --- a/web/nextron.config.js +++ b/web/nextron.config.js @@ -37,7 +37,12 @@ module.exports = { // require sub-paths (e.g. google-protobuf/google/protobuf/timestamp_pb.js). // Convert string externals to a function that matches by prefix. const prevExternals = config.externals || []; - const externalNames = prevExternals.filter(e => typeof e === "string"); + // electron-serve v3+ is ESM-only, so it cannot stay external — the main + // process bundle is CommonJS and require() of it fails at runtime. Let + // webpack bundle it instead. + const externalNames = prevExternals.filter( + e => typeof e === "string" && e !== "electron-serve", + ); const otherExternals = prevExternals.filter(e => typeof e !== "string"); config.externals = [ ...otherExternals, diff --git a/web/package.json b/web/package.json index 2c6ed0cd..a23024d0 100644 --- a/web/package.json +++ b/web/package.json @@ -51,7 +51,7 @@ "chance": "^1.1.13", "classnames": "^2.3.2", "diff": "^5.2.2", - "electron-serve": "^1.3.0", + "electron-serve": "^3.0.1", "electron-store": "^8.2.0", "github-markdown-css": "^5.9.0", "google-protobuf": "^3.21.4", diff --git a/web/yarn.lock b/web/yarn.lock index 2322d2ce..b4ca298c 100644 --- a/web/yarn.lock +++ b/web/yarn.lock @@ -10163,7 +10163,7 @@ __metadata: electron: "npm:^39.8.5" electron-builder: "npm:^26.15.3" electron-builder-squirrel-windows: "npm:^26.15.3" - electron-serve: "npm:^1.3.0" + electron-serve: "npm:^3.0.1" electron-store: "npm:^8.2.0" eslint: "npm:^9.39.1" eslint-config-airbnb: "npm:^19.0.4" @@ -10429,10 +10429,10 @@ __metadata: languageName: node linkType: hard -"electron-serve@npm:^1.3.0": - version: 1.3.0 - resolution: "electron-serve@npm:1.3.0" - checksum: 10c0/b329a24cb67147c11e9fd8828114d93f8378ba9337adc0cd6fb5d3b8d0aa00c22f906963a5db170e33402aac9156e47efd6acf162cefd48a94ee0b964482e94b +"electron-serve@npm:^3.0.1": + version: 3.0.1 + resolution: "electron-serve@npm:3.0.1" + checksum: 10c0/d2b87257da3c5e5cb6edf06771822183a391ddbe1305bb71b144adfe22564d9778c4df30997d10123e924886ea17f5bd1633010de64c8d2ece208647679f70f1 languageName: node linkType: hard