Path: blob/main/extensions/copilot/src/platform/image/vscode-node/imageServiceImpl.ts
13401 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import * as vscode from 'vscode';6import { ICAPIClientService } from '../../endpoint/common/capiClient';7import { ILogService } from '../../log/common/logService';8import { ImageServiceImpl } from '../node/imageServiceImpl';910export class VSCodeImageServiceImpl extends ImageServiceImpl {11constructor(12@ICAPIClientService capiClient: ICAPIClientService,13@ILogService private readonly logService: ILogService,14) {15super(capiClient);16}1718override async resizeImage(data: Uint8Array, mimeType: string): Promise<{ data: Uint8Array; mimeType: string }> {19try {20const result = await vscode.commands.executeCommand('_chat.resizeImage', data, mimeType);21if (result instanceof Uint8Array) {22return { data: result, mimeType };23}24} catch (e) {25this.logService.trace(`ImageService: failed to resize image, using original: ${e}`);26}27return { data, mimeType };28}29}303132