MCPcopy Index your code
hub / github.com/rollup/plugins / getDynamicModuleRegistry

Function getDynamicModuleRegistry

packages/commonjs/src/dynamic-modules.js:76–196  ·  view source on GitHub ↗
(
  isDynamicRequireModulesEnabled,
  dynamicRequireModules,
  commonDir,
  ignoreDynamicRequires
)

Source from the content-addressed store, hash-verified

74export const CREATE_COMMONJS_REQUIRE_EXPORT = 'createCommonjsRequire';
75
76export function getDynamicModuleRegistry(
77 isDynamicRequireModulesEnabled,
78 dynamicRequireModules,
79 commonDir,
80 ignoreDynamicRequires
81) {
82 if (!isDynamicRequireModulesEnabled) {
83 return `export function ${COMMONJS_REQUIRE_EXPORT}(path) {
84 ${FAILED_REQUIRE_ERROR}
85}`;
86 }
87 const dynamicModuleImports = [...dynamicRequireModules.values()]
88 .map(
89 (id, index) =>
90 `import ${
91 id.endsWith('.json') ? `json${index}` : `{ __require as require${index} }`
92 } from ${JSON.stringify(id)};`
93 )
94 .join('\n');
95 const dynamicModuleProps = [...dynamicRequireModules.keys()]
96 .map(
97 (id, index) =>
98 `\t\t${JSON.stringify(getVirtualPathForDynamicRequirePath(id, commonDir))}: ${
99 id.endsWith('.json') ? `function () { return json${index}; }` : `require${index}`
100 }`
101 )
102 .join(',\n');
103 return `${dynamicModuleImports}
104
105var dynamicModules;
106
107function getDynamicModules() {
108 return dynamicModules || (dynamicModules = {
109${dynamicModuleProps}
110 });
111}
112
113export function ${CREATE_COMMONJS_REQUIRE_EXPORT}(originalModuleDir) {
114 function handleRequire(path) {
115 var resolvedPath = commonjsResolve(path, originalModuleDir);
116 if (resolvedPath !== null) {
117 return getDynamicModules()[resolvedPath]();
118 }
119 ${ignoreDynamicRequires ? 'return require(path);' : FAILED_REQUIRE_ERROR}
120 }
121 handleRequire.resolve = function (path) {
122 var resolvedPath = commonjsResolve(path, originalModuleDir);
123 if (resolvedPath !== null) {
124 return resolvedPath;
125 }
126 return require.resolve(path);
127 }
128 return handleRequire;
129}
130
131function commonjsResolve (path, originalModuleDir) {
132 var shouldTryNodeModules = isPossibleNodeModulesPath(path);
133 path = normalize(path);

Callers 1

loadFunction · 0.90

Calls 3

valuesMethod · 0.80
keysMethod · 0.80

Tested by

no test coverage detected