MCPcopy
hub / github.com/webpack/webpack / setup

Function setup

test/benchmarkCases/concatenate-modules/options.mjs:23–96  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

21}
22
23export async function setup() {
24 const __dirname = dirname(fileURLToPath(import.meta.url));
25 const generated = resolve(__dirname, "./generated");
26
27 await fs.rm(generated, { recursive: true, force: true });
28
29 const filesDir = resolve(generated, "./files");
30
31 await fs.mkdir(filesDir, { recursive: true });
32
33 let code = "";
34
35 // Default export
36
37 for (const [i, item] of items.entries()) {
38 const request = `./files/default-${item}-${i}.js`;
39 const filename = resolve(generated, request);
40
41 await fs.writeFile(filename, generateDefaultMod(i));
42
43 const name = `importDefault${i}`;
44
45 code += `import ${name} from ${JSON.stringify(request)};\nconsole.log(${name});\nexport { ${name} };\n`;
46 }
47
48 // Named export
49
50 for (const [i, item] of items.entries()) {
51 const request = `./files/named-${item}-${i}.js`;
52 const filename = resolve(generated, request);
53
54 await fs.writeFile(filename, generateNamedMod(i));
55
56 const name = `importNamed${i}`;
57
58 code += `import { myVar as ${name} } from ${JSON.stringify(request)};\nconsole.log(${name});\nexport { ${name} };\n`;
59 }
60
61 // Namespace import
62
63 for (const [i, item] of items.entries()) {
64 const request = `./files/namespace-${item}-${i}.js`;
65 const filename = resolve(generated, request);
66
67 await fs.writeFile(filename, generateNamedMod(i));
68
69 const name = `importNamespace${i}`;
70
71 code += `import * as ${name} from ${JSON.stringify(request)};\nconsole.log(${name}.myVar);\nexport { ${name} };\n`;
72 }
73
74 // Re-export import
75
76 for (const [i, item] of items.entries()) {
77 const originalRequest = `mod-for-re-export-${item}-${i}.js`;
78 const request = `./files/${originalRequest}`;
79 const filename = resolve(generated, request);
80

Callers

nothing calls this directly

Calls 6

dirnameFunction · 0.85
resolveFunction · 0.85
generateDefaultModFunction · 0.85
generateNamedModFunction · 0.85
entriesMethod · 0.80
writeFileMethod · 0.45

Tested by

no test coverage detected