Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/extensions/copilot/src/extension/prompts/node/test/fixtures/extHost.api.impl.summarized.ts
13406 views
1
export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): IExtensionApiFactory {
2
3
return function (extension: IExtensionDescription, extensionInfo: IExtensionRegistries, configProvider: ExtHostConfigProvider): typeof vscode {
4
const window: typeof vscode.window = {
5
get activeTextEditor() {
6
return extHostEditors.getActiveTextEditor();
7
},
8
get visibleTextEditors() {
9
return extHostEditors.getVisibleTextEditors();
10
},
11
get activeTerminal() {
12
return extHostTerminalService.activeTerminal;
13
},
14
get terminals() {
15
return extHostTerminalService.terminals;
16
},
17
async showTextDocument(documentOrUri: vscode.TextDocument | vscode.Uri, columnOrOptions?: vscode.ViewColumn | vscode.TextDocumentShowOptions, preserveFocus?: boolean): Promise<vscode.TextEditor> {
18
const document = await (URI.isUri(documentOrUri)
19
? Promise.resolve(workspace.openTextDocument(documentOrUri))
20
: Promise.resolve(<vscode.TextDocument>documentOrUri));
21
22
return extHostEditors.showTextDocument(document, columnOrOptions, preserveFocus);
23
},
24
createTextEditorDecorationType(options: vscode.DecorationRenderOptions): vscode.TextEditorDecorationType {
25
return extHostEditors.createTextEditorDecorationType(extension, options);
26
},
27
onDidChangeActiveTextEditor(listener, thisArg?, disposables?) {
28
return extHostEditors.onDidChangeActiveTextEditor(listener, thisArg, disposables);
29
},
30
onDidChangeVisibleTextEditors(listener, thisArg, disposables) {
31
return extHostEditors.onDidChangeVisibleTextEditors(listener, thisArg, disposables);
32
},
33
onDidChangeTextEditorSelection(listener: (e: vscode.TextEditorSelectionChangeEvent) => any, thisArgs?: any, disposables?: extHostTypes.Disposable[]) {
34
return extHostEditors.onDidChangeTextEditorSelection(listener, thisArgs, disposables);
35
},
36
onDidChangeTextEditorOptions(listener: (e: vscode.TextEditorOptionsChangeEvent) => any, thisArgs?: any, disposables?: extHostTypes.Disposable[]) {
37
return extHostEditors.onDidChangeTextEditorOptions(listener, thisArgs, disposables);
38
},
39
onDidChangeTextEditorVisibleRanges(listener: (e: vscode.TextEditorVisibleRangesChangeEvent) => any, thisArgs?: any, disposables?: extHostTypes.Disposable[]) {
40
return extHostEditors.onDidChangeTextEditorVisibleRanges(listener, thisArgs, disposables);
41
},
42
onDidChangeTextEditorViewColumn(listener, thisArg?, disposables?) {
43
return extHostEditors.onDidChangeTextEditorViewColumn(listener, thisArg, disposables);
44
},
45
onDidCloseTerminal(listener, thisArg?, disposables?) {
46
return extHostTerminalService.onDidCloseTerminal(listener, thisArg, disposables);
47
},
48
onDidOpenTerminal(listener, thisArg?, disposables?) {
49
return extHostTerminalService.onDidOpenTerminal(listener, thisArg, disposables);
50
},
51
onDidChangeActiveTerminal(listener, thisArg?, disposables?) {
52
return extHostTerminalService.onDidChangeActiveTerminal(listener, thisArg, disposables);
53
},
54
onDidChangeTerminalDimensions(listener, thisArg?, disposables?) {
55
checkProposedApiEnabled(extension, 'terminalDimensions');
56
return extHostTerminalService.onDidChangeTerminalDimensions(listener, thisArg, disposables);
57
},
58
onDidChangeTerminalState(listener, thisArg?, disposables?) {
59
return extHostTerminalService.onDidChangeTerminalState(listener, thisArg, disposables);
60
},
61
onDidWriteTerminalData(listener, thisArg?, disposables?) {
62
checkProposedApiEnabled(extension, 'terminalDataWriteEvent');
63
return extHostTerminalService.onDidWriteTerminalData(listener, thisArg, disposables);
64
},
65
get state() {
66
return extHostWindow.state;
67
},
68
onDidChangeWindowState(listener, thisArg?, disposables?) {
69
return extHostWindow.onDidChangeWindowState(listener, thisArg, disposables);
70
},
71
showInformationMessage(message: string, ...rest: Array<vscode.MessageOptions | string | vscode.MessageItem>) {
72
return <Thenable<any>>extHostMessageService.showMessage(extension, Severity.Info, message, rest[0], <Array<string | vscode.MessageItem>>rest.slice(1));
73
},
74
showWarningMessage(message: string, ...rest: Array<vscode.MessageOptions | string | vscode.MessageItem>) {
75
return <Thenable<any>>extHostMessageService.showMessage(extension, Severity.Warning, message, rest[0], <Array<string | vscode.MessageItem>>rest.slice(1));
76
},
77
showErrorMessage(message: string, ...rest: Array<vscode.MessageOptions | string | vscode.MessageItem>) {
78
return <Thenable<any>>extHostMessageService.showMessage(extension, Severity.Error, message, rest[0], <Array<string | vscode.MessageItem>>rest.slice(1));
79
},
80
showQuickPick(items: any, options?: vscode.QuickPickOptions, token?: vscode.CancellationToken): any {
81
return extHostQuickOpen.showQuickPick(extension, items, options, token);
82
},
83
showWorkspaceFolderPick(options?: vscode.WorkspaceFolderPickOptions) {
84
return extHostQuickOpen.showWorkspaceFolderPick(options);
85
},
86
showInputBox(options?: vscode.InputBoxOptions, token?: vscode.CancellationToken) {
87
return extHostQuickOpen.showInput(options, token);
88
},
89
showOpenDialog(options) {
90
return extHostDialogs.showOpenDialog(extension, options);
91
},
92
showSaveDialog(options) {
93
return extHostDialogs.showSaveDialog(options);
94
},
95
__SELECTION_HERE__
96
setStatusBarMessage(text: string, timeoutOrThenable?: number | Thenable<any>): vscode.Disposable {
97
return extHostStatusBar.setStatusBarMessage(text, timeoutOrThenable);
98
},
99
withScmProgress<R>(task: (progress: vscode.Progress<number>) => Thenable<R>) {
100
extHostApiDeprecation.report('window.withScmProgress', extension,
101
`Use 'withProgress' instead.`);
102
103
return extHostProgress.withProgress(extension, { location: extHostTypes.ProgressLocation.SourceControl }, (progress, token) => task({}));
104
},
105
withProgress<R>(options: vscode.ProgressOptions, task: (progress: vscode.Progress<{ message?: string; worked?: number }>, token: vscode.CancellationToken) => Thenable<R>) {
106
return extHostProgress.withProgress(extension, options, task);
107
},
108
createOutputChannel(name: string, options: string | { log: true } | undefined): any {
109
return extHostOutputService.createOutputChannel(name, options, extension);
110
},
111
createWebviewPanel(viewType: string, title: string, showOptions: vscode.ViewColumn | { viewColumn: vscode.ViewColumn; preserveFocus?: boolean }, options?: vscode.WebviewPanelOptions & vscode.WebviewOptions): vscode.WebviewPanel {
112
return extHostWebviewPanels.createWebviewPanel(extension, viewType, title, showOptions, options);
113
},
114
createWebviewTextEditorInset(editor: vscode.TextEditor, line: number, height: number, options?: vscode.WebviewOptions): vscode.WebviewEditorInset {
115
checkProposedApiEnabled(extension, 'editorInsets');
116
return extHostEditorInsets.createWebviewEditorInset(editor, line, height, options, extension);
117
},
118
createTerminal(nameOrOptions?: vscode.TerminalOptions | vscode.ExtensionTerminalOptions | string, shellPath?: string, shellArgs?: readonly string[] | string): vscode.Terminal {
119
if (typeof nameOrOptions === 'object') {}
120
return extHostTerminalService.createTerminal(nameOrOptions, shellPath, shellArgs);
121
},
122
registerTerminalLinkProvider(provider: vscode.TerminalLinkProvider): vscode.Disposable {},
123
registerTerminalProfileProvider(id: string, provider: vscode.TerminalProfileProvider): vscode.Disposable {},
124
registerTerminalQuickFixProvider(id: string, provider: vscode.TerminalQuickFixProvider): vscode.Disposable {},
125
registerTreeDataProvider(viewId: string, treeDataProvider: vscode.TreeDataProvider<any>): vscode.Disposable {},
126
createTreeView(viewId: string, options: { treeDataProvider: vscode.TreeDataProvider<any> }): vscode.TreeView<any> {},
127
registerWebviewPanelSerializer: (viewType: string, serializer: vscode.WebviewPanelSerializer) => {
128
return extHostWebviewPanels.registerWebviewPanelSerializer(extension, viewType, serializer);
129
},
130
registerCustomEditorProvider: (viewType: string, provider: vscode.CustomTextEditorProvider | vscode.CustomReadonlyEditorProvider, options: { webviewOptions?: vscode.WebviewPanelOptions; supportsMultipleEditorsPerDocument?: boolean } = {}) => {
131
return extHostCustomEditors.registerCustomEditorProvider(extension, viewType, provider, options);
132
},
133
registerFileDecorationProvider(provider: vscode.FileDecorationProvider) {},
134
registerUriHandler(handler: vscode.UriHandler) {},
135
createQuickPick<T extends vscode.QuickPickItem>(): vscode.QuickPick<T> {},
136
createInputBox(): vscode.InputBox {},
137
get activeColorTheme(): vscode.ColorTheme {},
138
onDidChangeActiveColorTheme(listener, thisArg?, disposables?) {},
139
registerWebviewViewProvider(viewId: string, provider: vscode.WebviewViewProvider, options?: {
140
webviewOptions?: {
141
retainContextWhenHidden?: boolean;
142
};
143
}) {},
144
};
145
};
146
}
147
148