babel-code-frame
Advanced tools
Comparing version 7.0.0-alpha.15 to 7.0.0-alpha.16
@@ -11,3 +11,2 @@ "use strict"; | ||
deprecationWarningShown = true; | ||
var deprecationError = new Error("Passing lineNumber and colNumber is deprecated to babel-code-frame. Please use `codeFrameColumns`."); | ||
@@ -24,7 +23,8 @@ deprecationError.name = "DeprecationWarning"; | ||
colNumber = Math.max(colNumber, 0); | ||
var location = { | ||
start: { column: colNumber, line: lineNumber } | ||
start: { | ||
column: colNumber, | ||
line: lineNumber | ||
} | ||
}; | ||
return codeFrameColumns(rawLines, location, opts); | ||
@@ -55,3 +55,2 @@ }; | ||
punctuator: chalk.yellow, | ||
number: chalk.magenta, | ||
@@ -68,5 +67,3 @@ string: chalk.green, | ||
var NEWLINE = /\r\n|[\n\r\u2028\u2029]/; | ||
var JSX_TAG = /^[a-z][\w-]*$/i; | ||
var BRACKET = /^[()\[\]{}]$/; | ||
@@ -110,2 +107,3 @@ | ||
var colorize = defs[type]; | ||
if (colorize) { | ||
@@ -122,7 +120,9 @@ return args[0].split(NEWLINE).map(function (str) { | ||
function getMarkerLines(loc, source, opts) { | ||
var startLoc = Object.assign({}, { column: 0, line: -1 }, loc.start); | ||
var startLoc = Object.assign({}, { | ||
column: 0, | ||
line: -1 | ||
}, loc.start); | ||
var endLoc = Object.assign({}, startLoc, loc.end); | ||
var linesAbove = opts.linesAbove || 2; | ||
var linesBelow = opts.linesBelow || 3; | ||
var startLine = startLoc.line; | ||
@@ -132,3 +132,2 @@ var startColumn = startLoc.column; | ||
var endColumn = endLoc.column; | ||
var start = Math.max(startLine - (linesAbove + 1), 0); | ||
@@ -156,3 +155,2 @@ var end = Math.min(source.length, endLine + linesBelow); | ||
var sourceLength = source[lineNumber - 1].length; | ||
markerLines[lineNumber] = [startColumn, sourceLength - startColumn]; | ||
@@ -163,3 +161,2 @@ } else if (i === lineDiff) { | ||
var _sourceLength = source[lineNumber - i].length; | ||
markerLines[lineNumber] = [0, _sourceLength]; | ||
@@ -180,3 +177,7 @@ } | ||
return { start: start, end: end, markerLines: markerLines }; | ||
return { | ||
start: start, | ||
end: end, | ||
markerLines: markerLines | ||
}; | ||
} | ||
@@ -186,14 +187,17 @@ | ||
var opts = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
var highlighted = opts.highlightCode && _chalk2.default.supportsColor || opts.forceColor; | ||
var chalk = _chalk2.default; | ||
if (opts.forceColor) { | ||
chalk = new _chalk2.default.constructor({ enabled: true }); | ||
chalk = new _chalk2.default.constructor({ | ||
enabled: true | ||
}); | ||
} | ||
var maybeHighlight = function maybeHighlight(chalkFn, string) { | ||
return highlighted ? chalkFn(string) : string; | ||
}; | ||
var defs = getDefs(chalk); | ||
if (highlighted) rawLines = highlight(defs, rawLines); | ||
var lines = rawLines.split(NEWLINE); | ||
@@ -207,3 +211,2 @@ | ||
var numberMaxWidth = String(end).length; | ||
var frame = lines.slice(start, end).map(function (line, index) { | ||
@@ -214,10 +217,12 @@ var number = start + 1 + index; | ||
var hasMarker = markerLines[number]; | ||
if (hasMarker) { | ||
var markerLine = ""; | ||
if (Array.isArray(hasMarker)) { | ||
var markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\t]/g, " "); | ||
var numberOfMarkers = hasMarker[1] || 1; | ||
markerLine = ["\n ", maybeHighlight(defs.gutter, gutter.replace(/\d/g, " ")), markerSpacing, maybeHighlight(defs.marker, "^").repeat(numberOfMarkers)].join(""); | ||
} | ||
return [maybeHighlight(defs.marker, ">"), maybeHighlight(defs.gutter, gutter), line, markerLine].join(""); | ||
@@ -224,0 +229,0 @@ } else { |
{ | ||
"name": "babel-code-frame", | ||
"version": "7.0.0-alpha.15", | ||
"version": "7.0.0-alpha.16", | ||
"description": "Generate errors that contain a code frame that point to source locations.", | ||
@@ -11,6 +11,9 @@ "author": "Sebastian McKenzie <sebmck@gmail.com>", | ||
"dependencies": { | ||
"chalk": "^1.1.0", | ||
"chalk": "^2.0.0", | ||
"esutils": "^2.0.2", | ||
"js-tokens": "^3.0.0" | ||
}, | ||
"devDependencies": { | ||
"strip-ansi": "^4.0.0" | ||
} | ||
} |
9257
183
1
+ Addedansi-styles@3.2.1(transitive)
+ Addedchalk@2.4.2(transitive)
+ Addedcolor-convert@1.9.3(transitive)
+ Addedcolor-name@1.1.3(transitive)
+ Addedhas-flag@3.0.0(transitive)
+ Addedsupports-color@5.5.0(transitive)
- Removedansi-regex@2.1.1(transitive)
- Removedansi-styles@2.2.1(transitive)
- Removedchalk@1.1.3(transitive)
- Removedhas-ansi@2.0.0(transitive)
- Removedstrip-ansi@3.0.1(transitive)
- Removedsupports-color@2.0.0(transitive)
Updatedchalk@^2.0.0