Skip to content

Commit eacebaf

Browse files
committed
fix: move types
1 parent e53bee2 commit eacebaf

File tree

8 files changed

+82
-15
lines changed

8 files changed

+82
-15
lines changed

src/services/api/codeAssistant.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import type {
44
Suggestions,
55
TelemetryEvent,
66
TelemetryOpenTabs,
7-
} from '../../types/api/codeAssistant';
7+
} from '../codeCompletion/types';
88

99
import {BaseYdbAPI} from './base';
1010

src/services/codeCompletion/CodeCompletionService.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
22

3-
import type {DiscardReason} from '../../types/api/codeAssistant';
4-
53
import {getPromptFileContent} from './promptContent';
64
import type {
5+
DiscardReason,
76
EnrichedCompletion,
87
ICodeCompletionAPI,
98
ICodeCompletionService,

src/services/codeCompletion/TelemetryService.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
import type {DiscardReason, TelemetryEvent} from '../../types/api/codeAssistant';
2-
3-
import type {ITelemetryService} from './types';
1+
import type {DiscardReason, ITelemetryService, TelemetryEvent} from './types';
42

53
export class TelemetryService implements ITelemetryService {
64
private readonly sendTelemetry: (data: TelemetryEvent) => Promise<unknown>;
File renamed without changes.

src/services/codeCompletion/promptContent.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type Monaco from 'monaco-editor';
22
import {v4} from 'uuid';
33

4-
import type {PromptFile} from '../../types/api/codeAssistant';
4+
import type {PromptFile} from './types';
55

66
const limitBeforeCursor = 8_000;
77
const limitAfterCursor = 1_000;

src/services/codeCompletion/registerCommands.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import type * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
33
import type {ICodeCompletionService} from './types';
44

55
export function registerCompletionCommands(
6-
editor: monaco.editor.IStandaloneCodeEditor,
76
monacoInstance: typeof monaco,
87
completionService: ICodeCompletionService,
98
) {

src/services/codeCompletion/types.ts

Lines changed: 77 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,82 @@
11
import type * as monaco from 'monaco-editor/esm/vs/editor/editor.api';
22

3-
import type {
4-
DiscardReason,
5-
PromptFile,
6-
Suggestions,
7-
TelemetryEvent,
8-
} from '../../types/api/codeAssistant';
3+
type IdeInfo = {
4+
Ide: string;
5+
IdeVersion: string;
6+
PluginFamily: string;
7+
PluginVersion: string;
8+
};
9+
10+
export interface Prompt {
11+
Files: PromptFile[];
12+
ContextCreateType: ContextCreateType;
13+
ForceSuggest?: boolean;
14+
IdeInfo: IdeInfo;
15+
}
16+
17+
export interface PromptPosition {
18+
Ln: number;
19+
Col: number;
20+
}
21+
22+
export interface PromptFragment {
23+
Text: string;
24+
Start: PromptPosition;
25+
End: PromptPosition;
26+
}
27+
28+
export interface PromptFile {
29+
Path: string;
30+
Fragments: PromptFragment[];
31+
Cursor: PromptPosition;
32+
}
33+
34+
export type ContextCreateType = 1;
35+
36+
export interface Suggestions {
37+
Suggests: Suggestion[];
38+
RequestId: string;
39+
}
40+
41+
export type DiscardReason = 'OnCancel';
42+
43+
export interface Suggestion {
44+
Text: string;
45+
}
46+
47+
export interface AcceptSuggestionEvent {
48+
Accepted: {
49+
RequestId: string;
50+
Timestamp: number;
51+
AcceptedText: string;
52+
ConvertedText: string;
53+
};
54+
}
55+
export interface DiscardSuggestionEvent {
56+
Discarded: {
57+
RequestId: string;
58+
Timestamp: number;
59+
DiscardReason: 'OnCancel';
60+
DiscardedText: string;
61+
CacheHitCount: number;
62+
};
63+
}
64+
export interface IgnoreSuggestionEvent {
65+
Ignored: {
66+
RequestId: string;
67+
Timestamp: number;
68+
IgnoredText: string;
69+
};
70+
}
71+
72+
export type TelemetryEvent = AcceptSuggestionEvent | DiscardSuggestionEvent | IgnoreSuggestionEvent;
73+
74+
type OpenTab = {
75+
FileName: string;
76+
Text: string;
77+
};
78+
79+
export type TelemetryOpenTabs = OpenTab[];
980

1081
export interface ICodeCompletionAPI {
1182
getCodeAssistSuggestions(data: PromptFile[]): Promise<Suggestions>;

src/store/reducers/codeAssist.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type {TelemetryOpenTabs} from '../../types/api/codeAssistant';
1+
import type {TelemetryOpenTabs} from '../../services/codeCompletion/types';
22

33
import {api} from './api';
44

0 commit comments

Comments
 (0)