mirror of
https://github.com/denoland/deno
synced 2024-11-05 18:45:24 +00:00
Respect NO_COLOR in TypeScript output (#1736)
This commit is contained in:
parent
fe8c5d358b
commit
1e837f3281
3 changed files with 9 additions and 4 deletions
|
@ -68,6 +68,7 @@ interface Ts {
|
|||
createLanguageService: typeof ts.createLanguageService;
|
||||
/* tslint:disable-next-line:max-line-length */
|
||||
formatDiagnosticsWithColorAndContext: typeof ts.formatDiagnosticsWithColorAndContext;
|
||||
formatDiagnostics: typeof ts.formatDiagnostics;
|
||||
}
|
||||
|
||||
/** A simple object structure for caching resolved modules and their contents.
|
||||
|
@ -344,10 +345,10 @@ class Compiler implements ts.LanguageServiceHost, ts.FormatDiagnosticsHost {
|
|||
...service.getSemanticDiagnostics(fileName)
|
||||
];
|
||||
if (diagnostics.length > 0) {
|
||||
const errMsg = this._ts.formatDiagnosticsWithColorAndContext(
|
||||
diagnostics,
|
||||
this
|
||||
);
|
||||
const errMsg = os.noColor
|
||||
? this._ts.formatDiagnostics(diagnostics, this)
|
||||
: this._ts.formatDiagnosticsWithColorAndContext(diagnostics, this);
|
||||
|
||||
console.log(errMsg);
|
||||
// All TypeScript errors are terminal for deno
|
||||
this._os.exit(1);
|
||||
|
|
|
@ -308,6 +308,9 @@ const tsMock = {
|
|||
createLanguageService() {
|
||||
return {} as any;
|
||||
},
|
||||
formatDiagnostics(diagnostics: ReadonlyArray<any>, _host: any): string {
|
||||
return JSON.stringify(diagnostics.map(({ messageText }) => messageText));
|
||||
},
|
||||
formatDiagnosticsWithColorAndContext(
|
||||
diagnostics: ReadonlyArray<any>,
|
||||
_host: any
|
||||
|
|
|
@ -264,6 +264,7 @@ export default function makeConfig(commandOptions) {
|
|||
// bundle
|
||||
[typescriptPath]: [
|
||||
"createLanguageService",
|
||||
"formatDiagnostics",
|
||||
"formatDiagnosticsWithColorAndContext",
|
||||
"ModuleKind",
|
||||
"ScriptKind",
|
||||
|
|
Loading…
Reference in a new issue