UNPKG

762 BJavaScriptView Raw
1import { dashToPascalCase, relativeImport } from './utils';
2export function generateAngularDirectivesFile(compilerCtx, components, outputTarget) {
3 // Only create the file if it is defined in the stencil configuration
4 if (!outputTarget.directivesArrayFile) {
5 return Promise.resolve();
6 }
7 const proxyPath = relativeImport(outputTarget.directivesArrayFile, outputTarget.directivesProxyFile, '.ts');
8 const directives = components
9 .map((cmpMeta) => dashToPascalCase(cmpMeta.tagName))
10 .map((className) => `d.${className}`)
11 .join(',\n ');
12 const c = `
13import * as d from '${proxyPath}';
14
15export const DIRECTIVES = [
16 ${directives}
17];
18`;
19 return compilerCtx.fs.writeFile(outputTarget.directivesArrayFile, c);
20}