diff --git a/src/services/pathCompletions.ts b/src/services/pathCompletions.ts index 8840919c329..cf0d07b2351 100644 --- a/src/services/pathCompletions.ts +++ b/src/services/pathCompletions.ts @@ -187,7 +187,7 @@ namespace ts.Completions.PathCompletions { const pathPrefix = path.slice(0, path.length - 1); if (!startsWith(fragment, pathPrefix)) { - return emptyArray; + return [pathPrefix]; } const remainingFragment = fragment.slice(pathPrefix.length); diff --git a/tests/cases/fourslash/completionsPaths_pathMapping_topLevel.ts b/tests/cases/fourslash/completionsPaths_pathMapping_topLevel.ts new file mode 100644 index 00000000000..963851f5bc6 --- /dev/null +++ b/tests/cases/fourslash/completionsPaths_pathMapping_topLevel.ts @@ -0,0 +1,17 @@ +/// + +// @Filename: /x/src/a.ts +////import {} from "[|/**/|]"; + +// @Filename: /x/tsconfig.json +////{ +//// "compilerOptions": { +//// "baseUrl": ".", +//// "paths": { +//// "foo/*": ["src/*"] +//// } +//// } +////} + +const [replacementSpan] = test.ranges(); +verify.completionsAt("", ["src", "foo/"].map(name => ({ name, replacementSpan })));