Расширение VSCode выдает ошибку индексов регулярных выражений только тогда, когда включено другое расширение

Фон

Я работаю над расширением (vscode-color-blocks), которое использует индексы соответствия RegExp (новое в ES2022). Это означает, что я использую строку регулярного выражения с dфлаг, чтобы получить индексы (реляционные позиции) каждой группы захвата в моем регулярном выражении (источник ):

      export const colorBlockRegex = new RegExp(regexString, 'd');

Это означает, что объект успешного регулярного выражения будет иметь .indicesатрибут, который я затем могу использовать (источник ):

      const match = colorBlockRegex.exec(comment.content);
if (!match) continue;
console.log(match.indices);

Проблема

Все это прекрасно работает, когда я использую расширение отдельно и даже вместе с некоторыми другими расширениями. Но VSCode ведет себя так, как будто эта новая функция регулярных выражений недоступна после установки расширения Todo Tree. В этот момент мое расширение падает, и я получаю следующую ошибку:

      stack trace: SyntaxError: Invalid flags: d
    at _ (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:114:74341)
    at Array.<anonymous> (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:114:3580)
    at Object.parse (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:114:71938)
    at Object.parse (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:1:12529)
    at Object.parse (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:114:415)
    at i (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:52:165)
    at Array.get [as indices] (...\.vscode\extensions\gruntfuggly.todo-tree-0.0.215\dist\extension.js:52:2895)
    at DecorationRangeHandler.addNewDecorationRanges (...\vscode-color-blocks\dist\extension.js:1735:95)

Трассировка стека немного сбивает с толку, так как она переходит от gruntfuggly.todo-tree-0.0.215в мое расширение vscode-color-blocks.

В противном случае должно быть что-то не так с тем, как эти два расширения работают в разных версиях Javascript?

0 ответов

Другие вопросы по тегам