syntax-error.js 2.5 KB

123456789101112131415
  1. export function generateSyntaxError(message, location) {
  2. var module = location.module,
  3. loc = location.loc;
  4. var _loc$start = loc.start,
  5. line = _loc$start.line,
  6. column = _loc$start.column;
  7. var code = location.asString();
  8. var quotedCode = code ? "\n\n|\n| " + code.split('\n').join('\n| ') + "\n|\n\n" : '';
  9. var error = new Error(message + ": " + quotedCode + "(error occurred in '" + module + "' @ line " + line + " : column " + column + ")");
  10. error.name = 'SyntaxError';
  11. error.location = location;
  12. error.code = code;
  13. return error;
  14. }
  15. //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3N5bnRheC9saWIvc3ludGF4LWVycm9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU0sU0FBQSxtQkFBQSxDQUFBLE9BQUEsRUFBQSxRQUFBLEVBQW1FO0FBQUEsTUFDbkUsTUFEbUUsR0FDdkUsUUFEdUUsQ0FDbkUsTUFEbUU7QUFBQSxNQUN6RCxHQUR5RCxHQUN2RSxRQUR1RSxDQUN6RCxHQUR5RDtBQUFBLG1CQUVoRCxHQUFHLENBQTFCLEtBRnVFO0FBQUEsTUFFbkUsSUFGbUUsY0FFbkUsSUFGbUU7QUFBQSxNQUUzRCxNQUYyRCxjQUUzRCxNQUYyRDtBQUl2RSxNQUFJLElBQUksR0FBRyxRQUFRLENBQW5CLFFBQVcsRUFBWDtBQUNBLE1BQUksVUFBVSxHQUFHLElBQUksa0JBQWdCLElBQUksQ0FBSixLQUFBLENBQUEsSUFBQSxFQUFBLElBQUEsQ0FBaEIsT0FBZ0IsQ0FBaEIsZUFBckIsRUFBQTtBQUVBLE1BQUksS0FBSyxHQUFHLElBQUEsS0FBQSxDQUNQLE9BRE8sVUFDSyxVQURMLDRCQUNzQyxNQUR0QyxpQkFDd0QsSUFEeEQsa0JBQVosTUFBWSxPQUFaO0FBSUEsRUFBQSxLQUFLLENBQUwsSUFBQSxHQUFBLGFBQUE7QUFDQSxFQUFBLEtBQUssQ0FBTCxRQUFBLEdBQUEsUUFBQTtBQUNBLEVBQUEsS0FBSyxDQUFMLElBQUEsR0FBQSxJQUFBO0FBRUEsU0FBQSxLQUFBO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTb3VyY2VTcGFuIH0gZnJvbSAnLi9zb3VyY2Uvc3Bhbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2xpbW1lclN5bnRheEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBsb2NhdGlvbjogU291cmNlU3BhbiB8IG51bGw7XG4gIGNvZGU6IHN0cmluZyB8IG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVN5bnRheEVycm9yKG1lc3NhZ2U6IHN0cmluZywgbG9jYXRpb246IFNvdXJjZVNwYW4pOiBHbGltbWVyU3ludGF4RXJyb3Ige1xuICBsZXQgeyBtb2R1bGUsIGxvYyB9ID0gbG9jYXRpb247XG4gIGxldCB7IGxpbmUsIGNvbHVtbiB9ID0gbG9jLnN0YXJ0O1xuXG4gIGxldCBjb2RlID0gbG9jYXRpb24uYXNTdHJpbmcoKTtcbiAgbGV0IHF1b3RlZENvZGUgPSBjb2RlID8gYFxcblxcbnxcXG58ICAke2NvZGUuc3BsaXQoJ1xcbicpLmpvaW4oJ1xcbnwgICcpfVxcbnxcXG5cXG5gIDogJyc7XG5cbiAgbGV0IGVycm9yID0gbmV3IEVycm9yKFxuICAgIGAke21lc3NhZ2V9OiAke3F1b3RlZENvZGV9KGVycm9yIG9jY3VycmVkIGluICcke21vZHVsZX0nIEAgbGluZSAke2xpbmV9IDogY29sdW1uICR7Y29sdW1ufSlgXG4gICkgYXMgR2xpbW1lclN5bnRheEVycm9yO1xuXG4gIGVycm9yLm5hbWUgPSAnU3ludGF4RXJyb3InO1xuICBlcnJvci5sb2NhdGlvbiA9IGxvY2F0aW9uO1xuICBlcnJvci5jb2RlID0gY29kZTtcblxuICByZXR1cm4gZXJyb3I7XG59XG4iXSwic291cmNlUm9vdCI6IiJ9