All files / gulpfile.ts/lib tsUtils.ts

100% Statements 14/14
42.86% Branches 3/7
100% Functions 1/1
100% Lines 11/11

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 241x   1x 1x     1x 1x 1x 1x 1x 1x 1x   1x                  
import { FsHelper } from 'fork-ts-checker-webpack-plugin/lib/FsHelper'
import { NormalizedMessage } from 'fork-ts-checker-webpack-plugin/lib/NormalizedMessage'
import * as fs from 'fs'
import { errorDisplayHelper, getFrameColumns, getWbMessage } from '../internal'
 
/** Formatter for ForkTSCheckerWebpack */
export const tsWbformatter = (message: NormalizedMessage) => {
  const file = message.file
  const rawLines = file && FsHelper.existsSync(file) && fs.readFileSync(file, 'utf-8')
  const isError = !message.isWarningSeverity()
  const selector = isError ? 'error' : 'warning'
  const { messageColor, severityText, symbol } = errorDisplayHelper[selector]
  const frame = rawLines ? getFrameColumns(rawLines, message) : ''
 
  return getWbMessage({
    frame,
    fullMessage: message.content,
    messageColor,
    ruleName: `TS ${message.code}`,
    severityText,
    symbol,
  })
}