Home / Function/ enhancedResolveCompletionItem() — astro Function Reference

enhancedResolveCompletionItem() — astro Function Reference

Architecture documentation for the enhancedResolveCompletionItem() function in completions.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  a122e28f_9d7a_71f4_8041_6505412d53cf["enhancedResolveCompletionItem()"]
  37356a62_09a0_ac45_a671_abc9e2985f77["completions.ts"]
  a122e28f_9d7a_71f4_8041_6505412d53cf -->|defined in| 37356a62_09a0_ac45_a671_abc9e2985f77
  e6328635_a28f_fc95_bdf3_fde3e250ce01["getDetailForFileCompletion()"]
  a122e28f_9d7a_71f4_8041_6505412d53cf -->|calls| e6328635_a28f_fc95_bdf3_fde3e250ce01
  style a122e28f_9d7a_71f4_8041_6505412d53cf fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/language-tools/language-server/src/plugins/typescript/completions.ts lines 35–60

export function enhancedResolveCompletionItem(
	resolvedCompletion: CompletionItem,
	context: LanguageServiceContext,
): CompletionItem {
	// Make sure we keep our icons even when the completion is resolved
	if (resolvedCompletion.data.isComponent) {
		resolvedCompletion.detail = getDetailForFileCompletion(
			resolvedCompletion.detail ?? '',
			resolvedCompletion.data.originalItem.source,
		);
	}

	if (resolvedCompletion.additionalTextEdits) {
		const decoded = context.decodeEmbeddedDocumentUri(URI.parse(resolvedCompletion.data.uri));
		const sourceScript = decoded && context.language.scripts.get(decoded[0]);
		const virtualCode = decoded && sourceScript?.generated?.embeddedCodes.get(decoded[1]);
		const root = sourceScript?.generated?.root;
		if (!virtualCode || !(root instanceof AstroVirtualCode)) return resolvedCompletion;

		resolvedCompletion.additionalTextEdits = resolvedCompletion.additionalTextEdits.map((edit) =>
			mapEdit(edit, root, virtualCode.languageId),
		);
	}

	return resolvedCompletion;
}

Domain

Subdomains

Frequently Asked Questions

What does enhancedResolveCompletionItem() do?
enhancedResolveCompletionItem() is a function in the astro codebase, defined in packages/language-tools/language-server/src/plugins/typescript/completions.ts.
Where is enhancedResolveCompletionItem() defined?
enhancedResolveCompletionItem() is defined in packages/language-tools/language-server/src/plugins/typescript/completions.ts at line 35.
What does enhancedResolveCompletionItem() call?
enhancedResolveCompletionItem() calls 1 function(s): getDetailForFileCompletion.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free