Skip to content

Commit 323644c

Browse files
committed
show completion
1 parent 9cef633 commit 323644c

File tree

1 file changed

+36
-1
lines changed

1 file changed

+36
-1
lines changed

src/index.ts

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,36 @@
1-
console.log('Hello World');
1+
import TsServerLibrary from 'typescript/lib/tsserverlibrary';
2+
3+
function init({ typescript: ts }: { typescript: typeof TsServerLibrary }) {
4+
function create(info: ts.server.PluginCreateInfo) {
5+
const log = (...params: unknown[]) => {
6+
const text = params.map((p) => (p ? JSON.stringify(p) : p)).join(' ');
7+
info.project.projectService.logger.info(`[namespace-import] ${text}`);
8+
};
9+
10+
log('Start init');
11+
12+
const getCompletionsAtPosition = info.languageService.getCompletionsAtPosition;
13+
info.languageService.getCompletionsAtPosition = (fileName, position, options) => {
14+
log('getCompletionsAtPosition', { fileName, position, options });
15+
const original = getCompletionsAtPosition(fileName, position, options);
16+
if (original == null) {
17+
return original;
18+
}
19+
20+
const entry: ts.CompletionEntry = {
21+
name: 'TestService',
22+
kind: ts.ScriptElementKind.alias,
23+
source: '/Users/yukukotani/ghq/github.com/ubie-inc/yukustory/packages/client/src/TestService.ts',
24+
sortText: 'TestService',
25+
hasAction: true,
26+
};
27+
original.entries.push(entry);
28+
29+
return original;
30+
};
31+
}
32+
33+
return { create };
34+
}
35+
36+
export = init;

0 commit comments

Comments
 (0)