Files
openchamber/packages/vscode/webview/api/vscode.ts
T

30 lines
969 B
TypeScript
Raw Normal View History

2026-01-06 21:31:04 +02:00
import type { VSCodeAPI } from '@openchamber/ui/lib/api/types';
import { executeVSCodeCommand, openVSCodeExternalUrl, sendBridgeMessage } from './bridge';
2026-01-03 22:11:16 +01:00
export const createVSCodeActionsAPI = (): VSCodeAPI => ({
async executeCommand(command: string, ...args: unknown[]): Promise<unknown> {
const result = await executeVSCodeCommand(command, args);
return result.result;
},
async openAgentManager(): Promise<void> {
await executeVSCodeCommand('openchamber.openAgentManager');
},
2026-03-20 19:22:43 +02:00
async openExternalUrl(url: string): Promise<void> {
await openVSCodeExternalUrl(url);
},
2026-07-22 11:33:22 +03:00
async pickFiles(options): Promise<unknown> {
return sendBridgeMessage('api:files/pick', options);
},
async saveImage(payload: unknown): Promise<unknown> {
return sendBridgeMessage('api:files/save-image', payload);
},
async saveMarkdown(payload: unknown): Promise<unknown> {
return sendBridgeMessage('api:files/save-markdown', payload);
},
2026-01-03 22:11:16 +01:00
});