You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			68 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			JavaScript
		
	
			
		
		
	
	
			68 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			JavaScript
		
	
| // Synchronously inject a require hook for webpack and webpack/. It's required to use the internal ncc webpack version.
 | |
| // This is needed for userland plugins to attach to the same webpack instance as Next.js'.
 | |
| // Individually compiled modules are as defined for the compilation in bundles/webpack/packages/*.
 | |
| // This module will only be loaded once per process.
 | |
| "use strict";
 | |
| Object.defineProperty(exports, "__esModule", {
 | |
|     value: true
 | |
| });
 | |
| 0 && (module.exports = {
 | |
|     hookPropertyMap: null,
 | |
|     defaultOverrides: null,
 | |
|     addHookAliases: null
 | |
| });
 | |
| function _export(target, all) {
 | |
|     for(var name in all)Object.defineProperty(target, name, {
 | |
|         enumerable: true,
 | |
|         get: all[name]
 | |
|     });
 | |
| }
 | |
| _export(exports, {
 | |
|     hookPropertyMap: function() {
 | |
|         return hookPropertyMap;
 | |
|     },
 | |
|     defaultOverrides: function() {
 | |
|         return defaultOverrides;
 | |
|     },
 | |
|     addHookAliases: function() {
 | |
|         return addHookAliases;
 | |
|     }
 | |
| });
 | |
| const path = require("path");
 | |
| const mod = require("module");
 | |
| const originalRequire = mod.prototype.require;
 | |
| const resolveFilename = mod._resolveFilename;
 | |
| let resolve = process.env.NEXT_MINIMAL ? __non_webpack_require__.resolve : require.resolve;
 | |
| const hookPropertyMap = new Map();
 | |
| const defaultOverrides = {
 | |
|     "styled-jsx": path.dirname(resolve("styled-jsx/package.json")),
 | |
|     "styled-jsx/style": resolve("styled-jsx/style"),
 | |
|     "styled-jsx/style.js": resolve("styled-jsx/style")
 | |
| };
 | |
| const toResolveMap = (map)=>Object.entries(map).map(([key, value])=>[
 | |
|             key,
 | |
|             resolve(value)
 | |
|         ]);
 | |
| function addHookAliases(aliases = []) {
 | |
|     for (const [key, value] of aliases){
 | |
|         hookPropertyMap.set(key, value);
 | |
|     }
 | |
| }
 | |
| addHookAliases(toResolveMap(defaultOverrides));
 | |
| mod._resolveFilename = (function(originalResolveFilename, requestMap, request, parent, isMain, options) {
 | |
|     const hookResolved = requestMap.get(request);
 | |
|     if (hookResolved) request = hookResolved;
 | |
|     return originalResolveFilename.call(mod, request, parent, isMain, options);
 | |
| // We use `bind` here to avoid referencing outside variables to create potential memory leaks.
 | |
| }).bind(null, resolveFilename, hookPropertyMap);
 | |
| // This is a hack to make sure that if a user requires a Next.js module that wasn't bundled
 | |
| // that needs to point to the rendering runtime version, it will point to the correct one.
 | |
| // This can happen on `pages` when a user requires a dependency that uses next/image for example.
 | |
| mod.prototype.require = function(request) {
 | |
|     if (request.endsWith(".shared-runtime")) {
 | |
|         return originalRequire.call(this, `next/dist/server/future/route-modules/pages/vendored/contexts/${path.basename(request, ".shared-runtime")}`);
 | |
|     }
 | |
|     return originalRequire.call(this, request);
 | |
| };
 | |
| 
 | |
| //# sourceMappingURL=require-hook.js.map
 |