MCPcopy
hub / github.com/ampproject/amphtml / getEntryPointModule

Function getEntryPointModule

build-system/tasks/dep-check.js:159–175  ·  view source on GitHub ↗

* Returns a single module that contains a list of entry points to these files: * - extensions/{$extension}/{$version}/{$extension}.js * - src/amp.js * - 3p/integration.js * @return {Promise }

()

Source from the content-addressed store, hash-verified

157 * @return {Promise<string>}
158 */
159async function getEntryPointModule() {
160 const coreBinaries = ['src/amp.js', '3p/integration.js'];
161 const extensions = await fs.promises.readdir('extensions');
162 const extensionEntryPoints = extensions
163 .map((x) => `extensions/${x}`)
164 .filter((x) => fs.statSync(x).isDirectory())
165 .map(getEntryPoint);
166 const vendors = await fs.promises.readdir('3p/vendors');
167 const vendorEntryPoints = vendors.map((x) => `3p/vendors/${x}`);
168 const allEntryPoints = flatten(extensionEntryPoints)
169 .concat(coreBinaries)
170 .concat(vendorEntryPoints);
171 const entryPointData = allEntryPoints
172 .map((file) => `import './${file}';`)
173 .join('\n');
174 return entryPointData;
175}
176
177/**
178 * @param {string} entryPointModule

Callers 1

depCheckFunction · 0.85

Calls 3

concatMethod · 0.80
flattenFunction · 0.70
filterMethod · 0.45

Tested by

no test coverage detected