Skip to content

Commit 5750802

Browse files
mfix-stripeijjk
andauthored
Fix client side subcompilation errors (#18)
* fix client side subcompilation errors * Update src/loader.js Co-authored-by: JJ Kasper <[email protected]> * remove noop Co-authored-by: JJ Kasper <[email protected]>
1 parent 2e0fac3 commit 5750802

File tree

1 file changed

+5
-20
lines changed

1 file changed

+5
-20
lines changed

src/loader.js

Lines changed: 5 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ const {defaultObject} = require('./runtime');
55

66
const DEFAULT_SCHEMA_PATH = './markdoc';
77

8-
function noop() {}
9-
108
function normalize(s) {
119
return s.replace(/\\/g, path.win32.sep.repeat(2));
1210
}
@@ -67,21 +65,11 @@ async function load(source) {
6765
// https://nextjs.org/docs/advanced-features/src-directory
6866
const filepath = this.resourcePath.split('pages')[1];
6967

70-
// Only run validation when during client compilation
71-
if (!nextRuntime) {
68+
// Only run validation when during server compilation
69+
if (nextRuntime === 'nodejs') {
7270
// This is just to get subcompilation working with Next.js's fast refresh
73-
let previousRefreshReg = global.$RefreshReg$;
74-
let previousRefreshSig = global.$RefreshSig$;
75-
let previousDocument = global.document;
76-
let previousElement = global.Element;
77-
// https://github.com/pmmmwh/react-refresh-webpack-plugin/issues/176#issuecomment-683150213
78-
global.$RefreshReg$ = previousRefreshReg || noop;
79-
global.$RefreshSig$ = previousRefreshSig || (() => noop);
80-
global.document = previousDocument || {
81-
querySelector: noop,
82-
querySelectorAll: noop,
83-
};
84-
global.Element = previousElement || class Element {};
71+
let previousRequire = global.require;
72+
global.require = previousRequire || require || __non_webpack_require__;
8573

8674
// This imports the config as an in-memory object
8775
const importAtBuildTime = async (resource) => {
@@ -155,10 +143,7 @@ async function load(source) {
155143
throw new Error(errors.join('\n'));
156144
}
157145

158-
global.$RefreshReg$ = previousRefreshReg;
159-
global.$RefreshSig$ = previousRefreshSig;
160-
global.document = previousDocument;
161-
global.Element = previousElement;
146+
global.require = previousRequire;
162147
}
163148

164149
const partials = await gatherPartials.call(

0 commit comments

Comments
 (0)