You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
	
	
		
			38 lines
		
	
	
		
			739 B
		
	
	
	
		
			JavaScript
		
	
		
		
			
		
	
	
			38 lines
		
	
	
		
			739 B
		
	
	
	
		
			JavaScript
		
	
| 
											9 months ago
										 | 'use strict' | ||
|  | 
 | ||
|  | class Warning { | ||
|  |   constructor(text, opts = {}) { | ||
|  |     this.type = 'warning' | ||
|  |     this.text = text | ||
|  | 
 | ||
|  |     if (opts.node && opts.node.source) { | ||
|  |       let range = opts.node.rangeBy(opts) | ||
|  |       this.line = range.start.line | ||
|  |       this.column = range.start.column | ||
|  |       this.endLine = range.end.line | ||
|  |       this.endColumn = range.end.column | ||
|  |     } | ||
|  | 
 | ||
|  |     for (let opt in opts) this[opt] = opts[opt] | ||
|  |   } | ||
|  | 
 | ||
|  |   toString() { | ||
|  |     if (this.node) { | ||
|  |       return this.node.error(this.text, { | ||
|  |         index: this.index, | ||
|  |         plugin: this.plugin, | ||
|  |         word: this.word | ||
|  |       }).message | ||
|  |     } | ||
|  | 
 | ||
|  |     if (this.plugin) { | ||
|  |       return this.plugin + ': ' + this.text | ||
|  |     } | ||
|  | 
 | ||
|  |     return this.text | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | module.exports = Warning | ||
|  | Warning.default = Warning |