Files
old-kitabcitab-frontend/kitabcitab/node_modules/next/dist/build/webpack/require-hook.js
2022-12-27 12:05:56 +01:00

84 lines
2.6 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.setRequireOverrides = setRequireOverrides;
exports.loadRequireHook = loadRequireHook;
exports.overrideBuiltInReactPackages = overrideBuiltInReactPackages;
// sync injects a hook for webpack and webpack/... requires to use the internal ncc webpack version
// this is in order for userland plugins to attach to the same webpack instance as next.js
// the individual compiled modules are as defined for the compilation in bundles/webpack/packages/*
const hookPropertyMap = new Map();
let initialized = false;
function setupResolve() {
if (initialized) {
return;
}
initialized = true;
const mod = require("module");
const resolveFilename = mod._resolveFilename;
mod._resolveFilename = function(request, parent, isMain, options) {
const hookResolved = hookPropertyMap.get(request);
if (hookResolved) request = hookResolved;
return resolveFilename.call(mod, request, parent, isMain, options);
};
}
function setRequireOverrides(aliases) {
for (const [key, value] of aliases){
hookPropertyMap.set(key, value);
}
}
function loadRequireHook(aliases = []) {
const defaultAliases = [
...aliases,
// Use `require.resolve` explicitly to make them statically analyzable
[
"styled-jsx",
require.resolve("styled-jsx")
],
[
"styled-jsx/style",
require.resolve("styled-jsx/style")
],
[
"styled-jsx/style",
require.resolve("styled-jsx/style")
],
];
setRequireOverrides(defaultAliases);
setupResolve();
}
function overrideBuiltInReactPackages() {
setRequireOverrides([
[
"react",
require.resolve("next/dist/compiled/react")
],
[
"react/jsx-runtime",
require.resolve("next/dist/compiled/react/jsx-runtime"),
],
[
"react/jsx-dev-runtime",
require.resolve("next/dist/compiled/react/jsx-dev-runtime"),
],
[
"react-dom",
require.resolve("next/dist/compiled/react-dom/server-rendering-stub"),
],
[
"react-dom/client",
require.resolve("next/dist/compiled/react-dom/client"),
],
[
"react-dom/server",
require.resolve("next/dist/compiled/react-dom/server"),
],
[
"react-dom/server.browser",
require.resolve("next/dist/compiled/react-dom/server.browser"),
],
]);
}
//# sourceMappingURL=require-hook.js.map