canonical
Version:
Canonical code style linter and formatter for JavaScript, SCSS and CSS.
1 lines • 1.12 kB
JavaScript
;var parserPackage=require('../package.json');function ParsingError(e, css){this.line = e.line;this.syntax = e.syntax;this.css_ = css;}ParsingError.prototype = Object.defineProperties({line:null, name:'Parsing error', syntax:null, version:parserPackage.version, toString:function(){return [this.name + ': ' + this.message, '', this.context, '', 'Syntax: ' + this.syntax, 'Gonzales PE version: ' + this.version].join('\n');}}, {context:{get:function(){var LINES_AROUND=2;var result=[];var currentLineNumber=this.line;var start=currentLineNumber - 1 - LINES_AROUND;var end=currentLineNumber + LINES_AROUND;var lines=this.css_.split(/\r\n|\r|\n/);for(var i=start; i < end; i++) {var line=lines[i];if(!line)continue;var ln=i + 1;var mark=ln === currentLineNumber?'*':' ';result.push(ln + mark + '| ' + line);}return result.join('\n');}, configurable:true, enumerable:true}, message:{get:function(){var message='Please check validity of the block';if(typeof this.line === 'number')message += ' starting from line #' + this.line;return message;}, configurable:true, enumerable:true}});module.exports = ParsingError;