Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | 1x 1x 1x 1x 1x 1x 1x 3x 2x 1x 1x 1x 1x 1x 1x | import { Rule, Tree } from '@angular-devkit/schematics';
import { getWorkspace } from '../utils/backbase/package-utils';
import { tryRule } from './utils/rules';
const libraryRules = `{
"extends": "../../tslint.json",
"rules": {
"import-blacklist": [
true,
"rxjs/Rx",
{"@angular/platform-browser": ["BrowserModule"]},
{"@angular/platform-browser/animations": ["BrowserAnimationsModule"]},
{"@angular/common/http": ["HttpClientModule"]}
]
}
}`;
const manualProcess = `
## Add tslint file inside each library folder
In each library folder add "tslint.json" file next to "public_api.ts" file with the following content:
${libraryRules}
`;
function addLibraryLintRules(host: Tree, libraryPath: string): Tree {
host.create(`${libraryPath}/tslint.json`, libraryRules);
return host;
}
export default function (): Rule {
return tryRule(async (tree: Tree) => {
const workSpace = await getWorkspace(tree);
const libraryPaths = [...workSpace.projects.values()]
.filter((project) => project.extensions.projectType === 'library')
.filter((project) => project.targets.has('lint'))
.map((project) => project.root);
for (const path of libraryPaths) {
addLibraryLintRules(tree, path);
}
}, manualProcess);
}
|