diff --git a/packages/graphql-language-service-server/src/MessageProcessor.ts b/packages/graphql-language-service-server/src/MessageProcessor.ts index 55669de634..6de66c9aae 100644 --- a/packages/graphql-language-service-server/src/MessageProcessor.ts +++ b/packages/graphql-language-service-server/src/MessageProcessor.ts @@ -971,10 +971,16 @@ export class MessageProcessor { }), ); - return this._languageService.getDocumentSymbols( - cachedDocument.contents[0].query, - textDocument.uri, + const results = await Promise.all( + cachedDocument.contents.map(content => + this._languageService.getDocumentSymbols( + content.query, + textDocument.uri, + content.range, + ), + ), ); + return results.flat(); } // async handleReferencesRequest(params: ReferenceParams): Promise { @@ -1021,11 +1027,16 @@ export class MessageProcessor { ) { return []; } - const docSymbols = await this._languageService.getDocumentSymbols( - cachedDocument.contents[0].query, - uri, + const docSymbols = await Promise.all( + cachedDocument.contents.map(content => + this._languageService.getDocumentSymbols( + content.query, + uri, + content.range, + ), + ), ); - symbols.push(...docSymbols); + symbols.push(...docSymbols.flat()); }), ); return symbols.filter(symbol => symbol?.name?.includes(params.query));