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