Follow the new package architecture. The generation of the documentation has been improved, new helper functions have been added to handle the new architecture.
47 lines
1.2 KiB
TypeScript
47 lines
1.2 KiB
TypeScript
import * as path from 'path';
|
|
import { getPackageConfigurations } from './get-package-configurations';
|
|
import { generateFile, getNxPackageDependencies } from './utils';
|
|
import { dedent } from 'tslint/lib/utils';
|
|
|
|
/**
|
|
* @TODO: Generate home for each packages
|
|
* and link them to the api home.
|
|
*/
|
|
|
|
let template = dedent`
|
|
# API
|
|
|
|
Here is the list of all the available packages inside the Nx ecosystem. You
|
|
can see, for each package its dependencies.
|
|
|
|
| PackageName | Dependencies | PeerDependencies |
|
|
| ----------- | ------------ | ---------------- |
|
|
`;
|
|
|
|
getPackageConfigurations()
|
|
.filter(item => item.hasBuilders || item.hasSchematics)
|
|
.map(item => {
|
|
const dependencies = getNxPackageDependencies(
|
|
path.join(item.root, 'package.json')
|
|
);
|
|
|
|
const data = Object.assign(
|
|
{},
|
|
{
|
|
hasBuilders: item.hasBuilders,
|
|
hasSchematics: item.hasSchematics
|
|
},
|
|
dependencies
|
|
);
|
|
|
|
template += dedent`| ${data.name} | ${data.dependencies.join(
|
|
', '
|
|
)} | ${data.peerDependencies.join(', ')} |\n`;
|
|
});
|
|
|
|
generateFile(path.join(__dirname, '../../docs', 'api'), {
|
|
name: 'home',
|
|
template
|
|
});
|
|
console.log('Done generating API Home Documentation');
|