mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-05-19 10:41:56 -05:00
Filter out private fields in string literal property completions.
Also some minor simplifications. Fixes 36082.
This commit is contained in:
@@ -403,8 +403,8 @@ namespace ts.Completions {
|
||||
kindModifiers: SymbolDisplay.getSymbolModifiers(symbol),
|
||||
sortText,
|
||||
source: getSourceFromOrigin(origin),
|
||||
hasAction: trueOrUndefined(!!origin && originIsExport(origin)),
|
||||
isRecommended: trueOrUndefined(isRecommendedCompletionMatch(symbol, recommendedCompletion, typeChecker)),
|
||||
hasAction: origin && originIsExport(origin) || undefined,
|
||||
isRecommended: isRecommendedCompletionMatch(symbol, recommendedCompletion, typeChecker) || undefined,
|
||||
insertText,
|
||||
replacementSpan,
|
||||
};
|
||||
@@ -415,10 +415,6 @@ namespace ts.Completions {
|
||||
!!(localSymbol.flags & SymbolFlags.ExportValue) && checker.getExportSymbolOfSymbol(localSymbol) === recommendedCompletion;
|
||||
}
|
||||
|
||||
function trueOrUndefined(b: boolean): true | undefined {
|
||||
return b ? true : undefined;
|
||||
}
|
||||
|
||||
function getSourceFromOrigin(origin: SymbolOriginInfo | undefined): string | undefined {
|
||||
return origin && originIsExport(origin) ? stripQuotes(origin.moduleSymbol.name) : undefined;
|
||||
}
|
||||
|
||||
@@ -6,9 +6,9 @@ namespace ts.Completions.StringCompletions {
|
||||
return entries && convertPathCompletions(entries);
|
||||
}
|
||||
if (isInString(sourceFile, position, contextToken)) {
|
||||
return !contextToken || !isStringLiteralLike(contextToken)
|
||||
? undefined
|
||||
: convertStringLiteralCompletions(getStringLiteralCompletionEntries(sourceFile, contextToken, position, checker, options, host), sourceFile, checker, log, preferences);
|
||||
if (!contextToken || !isStringLiteralLike(contextToken)) return undefined;
|
||||
const entries = getStringLiteralCompletionEntries(sourceFile, contextToken, position, checker, options, host);
|
||||
return convertStringLiteralCompletions(entries, sourceFile, checker, log, preferences);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -214,7 +214,11 @@ namespace ts.Completions.StringCompletions {
|
||||
}
|
||||
|
||||
function stringLiteralCompletionsFromProperties(type: Type | undefined): StringLiteralCompletionsFromProperties | undefined {
|
||||
return type && { kind: StringLiteralCompletionKind.Properties, symbols: type.getApparentProperties(), hasIndexSignature: hasIndexSignature(type) };
|
||||
return type && {
|
||||
kind: StringLiteralCompletionKind.Properties,
|
||||
symbols: type.getApparentProperties().filter(prop => !isPrivateIdentifierPropertyDeclaration(prop.valueDeclaration)),
|
||||
hasIndexSignature: hasIndexSignature(type)
|
||||
};
|
||||
}
|
||||
|
||||
function getStringLiteralTypes(type: Type | undefined, uniques = createMap<true>()): readonly StringLiteralType[] {
|
||||
|
||||
Reference in New Issue
Block a user