diff --git a/plugins/pug/src/index.ts b/plugins/pug/src/index.ts index cf6e11156..c8c3b1eb6 100644 --- a/plugins/pug/src/index.ts +++ b/plugins/pug/src/index.ts @@ -25,10 +25,7 @@ const plugin: LanguageServicePlugin<{ on(document, position, _) { return worker(document, (pugDocument) => { - - const documentContext = context.env.documentContext ?? { resolveReference: () => undefined }; - - return pugLs.doComplete(pugDocument, position, documentContext, /** TODO: CompletionConfiguration */); + return pugLs.doComplete(pugDocument, position, context.env.documentContext, /** TODO: CompletionConfiguration */); }); }, }, @@ -72,10 +69,9 @@ const plugin: LanguageServicePlugin<{ findDocumentLinks(document) { return worker(document, (pugDocument) => { - - const documentContext = context.env.documentContext ?? { resolveReference: () => undefined }; - - return pugLs.findDocumentLinks(pugDocument, documentContext); + if (context.env.documentContext) { + return pugLs.findDocumentLinks(pugDocument, context.env.documentContext); + } }); }, diff --git a/pug-language-tools/pug-language-service/src/services/completion.ts b/pug-language-tools/pug-language-service/src/services/completion.ts index 41f9fc0c1..0609f0839 100644 --- a/pug-language-tools/pug-language-service/src/services/completion.ts +++ b/pug-language-tools/pug-language-service/src/services/completion.ts @@ -4,18 +4,23 @@ import { MappingKind } from '../baseParse'; import type { PugDocument } from '../pugDocument'; export function register(htmlLs: html.LanguageService) { - return async (pugDoc: PugDocument, pos: html.Position, documentContext: html.DocumentContext, options?: html.CompletionConfiguration | undefined) => { + return async (pugDoc: PugDocument, pos: html.Position, documentContext: html.DocumentContext | undefined, options?: html.CompletionConfiguration | undefined) => { const htmlPos = pugDoc.map.toGeneratedPosition(pos, data => data !== MappingKind.EmptyTagCompletion); if (!htmlPos) return; - const htmlComplete = await htmlLs.doComplete2( + const htmlComplete = documentContext ? await htmlLs.doComplete2( pugDoc.htmlTextDocument, htmlPos, pugDoc.htmlDocument, documentContext, options, + ) : htmlLs.doComplete( + pugDoc.htmlTextDocument, + htmlPos, + pugDoc.htmlDocument, + options, ); return transformCompletionList(htmlComplete, htmlRange => pugDoc.map.toSourceRange(htmlRange));