File tree Expand file tree Collapse file tree 2 files changed +23
-6
lines changed
Expand file tree Collapse file tree 2 files changed +23
-6
lines changed Original file line number Diff line number Diff line change 11// eslint-disable-next-line @typescript-eslint/no-triple-slash-reference
2- /// <reference path=".. /types.d.ts" />
2+ /// <reference path="./types.d.ts" />
33
44import { parse as esParse } from 'espree'
55import remarkMdx from 'remark-mdx'
@@ -50,12 +50,23 @@ export const parseForESLint = (
5050
5151 const node = transNodePos ( position )
5252
53- const { tokens : esTokens , ...AST } = esParse (
54- rawText ,
55- options ,
56- ) as AST . Program
53+ let program : AST . Program
5754
58- const offset = node . start - AST . range [ 0 ]
55+ try {
56+ program = esParse ( rawText , options ) as AST . Program
57+ } catch ( e ) {
58+ if ( e instanceof SyntaxError ) {
59+ e . index += node . start
60+ e . column += node . loc . start . column - 1
61+ e . lineNumber += node . loc . start . line - 1
62+ }
63+
64+ throw e
65+ }
66+
67+ const { tokens : esTokens , range } = program
68+
69+ const offset = node . start - range [ 0 ]
5970
6071 tokens . push (
6172 ...esTokens . map ( token => {
Original file line number Diff line number Diff line change 1+ declare interface SyntaxError {
2+ column ?: number
3+ index ?: number
4+ lineNumber ?: number
5+ }
6+
17declare module 'espree' {
28 import * as estree from 'estree'
39
You can’t perform that action at this time.
0 commit comments