diff --git a/src/ClaudeDev.ts b/src/core/ClaudeDev.ts similarity index 98% rename from src/ClaudeDev.ts rename to src/core/ClaudeDev.ts index dd18fc8..59a7407 100644 --- a/src/ClaudeDev.ts +++ b/src/core/ClaudeDev.ts @@ -9,27 +9,27 @@ import pWaitFor from "p-wait-for" import * as path from "path" import { serializeError } from "serialize-error" import * as vscode from "vscode" -import { ApiHandler, buildApiHandler } from "./api" -import { TerminalManager } from "./integrations/TerminalManager" -import { listFiles, parseSourceCodeForDefinitionsTopLevel } from "./core/tree-sitter" -import { ClaudeDevProvider } from "./providers/ClaudeDevProvider" -import { ApiConfiguration } from "./shared/api" -import { ClaudeRequestResult } from "./shared/ClaudeRequestResult" -import { combineApiRequests } from "./shared/combineApiRequests" -import { combineCommandSequences } from "./shared/combineCommandSequences" -import { ClaudeAsk, ClaudeMessage, ClaudeSay, ClaudeSayTool } from "./shared/ExtensionMessage" -import { getApiMetrics } from "./shared/getApiMetrics" -import { HistoryItem } from "./shared/HistoryItem" -import { Tool, ToolName } from "./shared/Tool" -import { ClaudeAskResponse } from "./shared/WebviewMessage" -import { findLast, findLastIndex, formatContentBlockToMarkdown } from "./utils" -import { truncateHalfConversation } from "./utils/context-management" -import { extractTextFromFile } from "./utils/extract-text" -import { regexSearchFiles } from "./utils/ripgrep" -import { parseMentions } from "./utils/context-mentions" -import { UrlContentFetcher } from "./utils/UrlContentFetcher" -import { diagnosticsToProblemsString, getNewDiagnostics } from "./utils/diagnostics" -import { arePathsEqual } from "./utils/path-helpers" +import { ApiHandler, buildApiHandler } from "../api" +import { TerminalManager } from "../integrations/TerminalManager" +import { listFiles, parseSourceCodeForDefinitionsTopLevel } from "./tree-sitter" +import { ClaudeDevProvider } from "./webviews/ClaudeDevProvider" +import { ApiConfiguration } from "../shared/api" +import { ClaudeRequestResult } from "../shared/ClaudeRequestResult" +import { combineApiRequests } from "../shared/combineApiRequests" +import { combineCommandSequences } from "../shared/combineCommandSequences" +import { ClaudeAsk, ClaudeMessage, ClaudeSay, ClaudeSayTool } from "../shared/ExtensionMessage" +import { getApiMetrics } from "../shared/getApiMetrics" +import { HistoryItem } from "../shared/HistoryItem" +import { Tool, ToolName } from "../shared/Tool" +import { ClaudeAskResponse } from "../shared/WebviewMessage" +import { findLast, findLastIndex, formatContentBlockToMarkdown } from "../utils" +import { truncateHalfConversation } from "../utils/context-management" +import { extractTextFromFile } from "../utils/extract-text" +import { regexSearchFiles } from "../utils/ripgrep" +import { parseMentions } from "../utils/context-mentions" +import { UrlContentFetcher } from "../utils/UrlContentFetcher" +import { diagnosticsToProblemsString, getNewDiagnostics } from "../utils/diagnostics" +import { arePathsEqual } from "../utils/path-helpers" const SYSTEM_PROMPT = async ( supportsImages: boolean diff --git a/src/providers/ClaudeDevProvider.ts b/src/core/webviews/ClaudeDevProvider.ts similarity index 98% rename from src/providers/ClaudeDevProvider.ts rename to src/core/webviews/ClaudeDevProvider.ts index dbadf33..d89ba53 100644 --- a/src/providers/ClaudeDevProvider.ts +++ b/src/core/webviews/ClaudeDevProvider.ts @@ -1,18 +1,18 @@ import { Anthropic } from "@anthropic-ai/sdk" import * as vscode from "vscode" import { ClaudeDev } from "../ClaudeDev" -import { ApiProvider } from "../shared/api" -import { ExtensionMessage } from "../shared/ExtensionMessage" -import { WebviewMessage } from "../shared/WebviewMessage" -import { downloadTask, findLast, getNonce, getUri, selectImages } from "../utils" +import { ApiProvider } from "../../shared/api" +import { ExtensionMessage } from "../../shared/ExtensionMessage" +import { WebviewMessage } from "../../shared/WebviewMessage" +import { downloadTask, findLast, getNonce, getUri, selectImages } from "../../utils" import * as path from "path" import fs from "fs/promises" -import { HistoryItem } from "../shared/HistoryItem" +import { HistoryItem } from "../../shared/HistoryItem" import axios from "axios" -import { getTheme } from "../utils/getTheme" -import { openFile, openImage } from "../utils/open-file" -import WorkspaceTracker from "../integrations/WorkspaceTracker" -import { openMention } from "../utils/context-mentions" +import { getTheme } from "../../utils/getTheme" +import { openFile, openImage } from "../../utils/open-file" +import WorkspaceTracker from "../../integrations/WorkspaceTracker" +import { openMention } from "../../utils/context-mentions" /* https://github.com/microsoft/vscode-webview-ui-toolkit-samples/blob/main/default/weather-webview/src/providers/WeatherViewProvider.ts diff --git a/src/exports/index.ts b/src/exports/index.ts index 225ebb4..362eb4b 100644 --- a/src/exports/index.ts +++ b/src/exports/index.ts @@ -1,5 +1,5 @@ import * as vscode from "vscode" -import { ClaudeDevProvider } from "../providers/ClaudeDevProvider" +import { ClaudeDevProvider } from "../core/webviews/ClaudeDevProvider" import { ClaudeDevAPI } from "./claude-dev" export function createClaudeDevAPI( diff --git a/src/extension.ts b/src/extension.ts index 3602053..bb1ea59 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -1,7 +1,7 @@ // The module 'vscode' contains the VS Code extensibility API // Import the module and reference it with the alias vscode in your code below import * as vscode from "vscode" -import { ClaudeDevProvider } from "./providers/ClaudeDevProvider" +import { ClaudeDevProvider } from "./core/webviews/ClaudeDevProvider" import delay from "delay" import { createClaudeDevAPI } from "./exports" import "./utils/path-helpers" // necessary to have access to String.prototype.toPosix diff --git a/src/integrations/WorkspaceTracker.ts b/src/integrations/WorkspaceTracker.ts index 3e82f0c..0e3e87a 100644 --- a/src/integrations/WorkspaceTracker.ts +++ b/src/integrations/WorkspaceTracker.ts @@ -1,7 +1,7 @@ import * as vscode from "vscode" import * as path from "path" import { listFiles } from "../core/tree-sitter/index" -import { ClaudeDevProvider } from "../providers/ClaudeDevProvider" +import { ClaudeDevProvider } from "../core/webviews/ClaudeDevProvider" const cwd = vscode.workspace.workspaceFolders?.map((folder) => folder.uri.fsPath).at(0)