UNPKG

@yolkai/nx-linter

Version:

Lint Plugin for Nx

32 lines (31 loc) 1.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const architect_1 = require("@angular-devkit/architect"); const rxjs_1 = require("rxjs"); const operators_1 = require("rxjs/operators"); function run(options, context) { if (options.linter === 'eslint') { delete options.linter; options.eslintConfig = options.config; delete options.config; // Use whatever the default formatter is delete options.format; return rxjs_1.from(context.scheduleBuilder('@angular-eslint/builder:lint', options, { logger: patchedLogger(context) })).pipe(operators_1.concatMap(r => r.output)); } if (options.linter === 'tslint') { throw new Error(`'tslint' option is no longer supported. Update your angular.json to use "@angular-eslint/builder:lint" builder directly.`); } throw new Error(`"${options.linter}" is not a supported linter option: use either eslint or tslint`); } // remove once https://github.com/angular/angular-cli/issues/15053 is fixed function patchedLogger(context) { const s = context.logger._subject.next; context.logger._subject.next = (v) => { v.message = v.message.replace('<???>', context.target.project); return s.apply(context.logger._subject, [v]); }; return context.logger; } exports.default = architect_1.createBuilder(run);