diff --git a/eslint.config.js b/eslint.config.js index 2955c68a9e4..52eb95c5ff0 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -262,22 +262,22 @@ export default tseslint.config( 'src/vs/workbench/browser/workbench.ts', 'src/vs/workbench/common/notifications.ts', 'src/vs/workbench/contrib/accessibility/browser/accessibleView.ts', - 'src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.ts', - 'src/vs/workbench/contrib/chat/browser/chatContentParts/chatAttachmentsContentPart.ts', - 'src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationWidget.ts', - 'src/vs/workbench/contrib/chat/browser/chatContentParts/chatElicitationContentPart.ts', - 'src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.ts', - 'src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.ts', - 'src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.ts', + 'src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.ts', + 'src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.ts', + 'src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.ts', + 'src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.ts', + 'src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.ts', + 'src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.ts', + 'src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.ts', 'src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.ts', 'src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.ts', - 'src/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget.ts', - 'src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.ts', - 'src/vs/workbench/contrib/chat/browser/contrib/chatInputCompletions.ts', - 'src/vs/workbench/contrib/chat/common/chatModel.ts', + 'src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.ts', + 'src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.ts', + 'src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.ts', + 'src/vs/workbench/contrib/chat/common/model/chatModel.ts', 'src/vs/workbench/contrib/chat/test/common/promptSyntax/testUtils/mockFilesystem.test.ts', 'src/vs/workbench/contrib/chat/test/common/promptSyntax/testUtils/mockFilesystem.ts', - 'src/vs/workbench/contrib/chat/test/common/tools/manageTodoListTool.test.ts', + 'src/vs/workbench/contrib/chat/test/common/tools/builtinTools/manageTodoListTool.test.ts', 'src/vs/workbench/contrib/debug/browser/debugAdapterManager.ts', 'src/vs/workbench/contrib/debug/browser/variablesView.ts', 'src/vs/workbench/contrib/debug/browser/watchExpressionsView.ts', diff --git a/src/vs/workbench/api/browser/mainThreadChatAgents2.ts b/src/vs/workbench/api/browser/mainThreadChatAgents2.ts index 1099251114a..1714bfacab9 100644 --- a/src/vs/workbench/api/browser/mainThreadChatAgents2.ts +++ b/src/vs/workbench/api/browser/mainThreadChatAgents2.ts @@ -24,14 +24,14 @@ import { IInstantiationService } from '../../../platform/instantiation/common/in import { ILogService } from '../../../platform/log/common/log.js'; import { IUriIdentityService } from '../../../platform/uriIdentity/common/uriIdentity.js'; import { IChatWidgetService } from '../../contrib/chat/browser/chat.js'; -import { AddDynamicVariableAction, IAddDynamicVariableContext } from '../../contrib/chat/browser/contrib/chatDynamicVariables.js'; -import { IChatAgentHistoryEntry, IChatAgentImplementation, IChatAgentRequest, IChatAgentService } from '../../contrib/chat/common/chatAgents.js'; +import { AddDynamicVariableAction, IAddDynamicVariableContext } from '../../contrib/chat/browser/attachments/chatDynamicVariables.js'; +import { IChatAgentHistoryEntry, IChatAgentImplementation, IChatAgentRequest, IChatAgentService } from '../../contrib/chat/common/participants/chatAgents.js'; import { ICustomAgentQueryOptions, IPromptsService } from '../../contrib/chat/common/promptSyntax/service/promptsService.js'; -import { IChatEditingService, IChatRelatedFileProviderMetadata } from '../../contrib/chat/common/chatEditingService.js'; -import { IChatModel } from '../../contrib/chat/common/chatModel.js'; -import { ChatRequestAgentPart } from '../../contrib/chat/common/chatParserTypes.js'; -import { ChatRequestParser } from '../../contrib/chat/common/chatRequestParser.js'; -import { IChatContentInlineReference, IChatContentReference, IChatFollowup, IChatNotebookEdit, IChatProgress, IChatService, IChatTask, IChatTaskSerialized, IChatWarningMessage } from '../../contrib/chat/common/chatService.js'; +import { IChatEditingService, IChatRelatedFileProviderMetadata } from '../../contrib/chat/common/editing/chatEditingService.js'; +import { IChatModel } from '../../contrib/chat/common/model/chatModel.js'; +import { ChatRequestAgentPart } from '../../contrib/chat/common/requestParser/chatParserTypes.js'; +import { ChatRequestParser } from '../../contrib/chat/common/requestParser/chatRequestParser.js'; +import { IChatContentInlineReference, IChatContentReference, IChatFollowup, IChatNotebookEdit, IChatProgress, IChatService, IChatTask, IChatTaskSerialized, IChatWarningMessage } from '../../contrib/chat/common/chatService/chatService.js'; import { IChatSessionsService } from '../../contrib/chat/common/chatSessionsService.js'; import { ChatAgentLocation, ChatModeKind } from '../../contrib/chat/common/constants.js'; import { IExtHostContext, extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js'; diff --git a/src/vs/workbench/api/browser/mainThreadChatCodeMapper.ts b/src/vs/workbench/api/browser/mainThreadChatCodeMapper.ts index dad9a26c43a..3dd4d0c032b 100644 --- a/src/vs/workbench/api/browser/mainThreadChatCodeMapper.ts +++ b/src/vs/workbench/api/browser/mainThreadChatCodeMapper.ts @@ -6,7 +6,7 @@ import { CancellationToken } from '../../../base/common/cancellation.js'; import { Disposable, DisposableMap, IDisposable } from '../../../base/common/lifecycle.js'; import { URI } from '../../../base/common/uri.js'; import { TextEdit } from '../../../editor/common/languages.js'; -import { ICodeMapperProvider, ICodeMapperRequest, ICodeMapperResponse, ICodeMapperService } from '../../contrib/chat/common/chatCodeMapperService.js'; +import { ICodeMapperProvider, ICodeMapperRequest, ICodeMapperResponse, ICodeMapperService } from '../../contrib/chat/common/editing/chatCodeMapperService.js'; import { extHostNamedCustomer, IExtHostContext } from '../../services/extensions/common/extHostCustomers.js'; import { ExtHostCodeMapperShape, ExtHostContext, ICodeMapperProgressDto, ICodeMapperRequestDto, MainContext, MainThreadCodeMapperShape } from '../common/extHost.protocol.js'; import { NotebookDto } from './mainThreadNotebookDto.js'; diff --git a/src/vs/workbench/api/browser/mainThreadChatContext.ts b/src/vs/workbench/api/browser/mainThreadChatContext.ts index c17babbcc46..d94ff704768 100644 --- a/src/vs/workbench/api/browser/mainThreadChatContext.ts +++ b/src/vs/workbench/api/browser/mainThreadChatContext.ts @@ -6,10 +6,10 @@ import { CancellationToken } from '../../../base/common/cancellation.js'; import { Disposable } from '../../../base/common/lifecycle.js'; import { ThemeIcon } from '../../../base/common/themables.js'; -import { IChatContextItem, IChatContextSupport } from '../../contrib/chat/common/chatContext.js'; +import { IChatContextItem, IChatContextSupport } from '../../contrib/chat/common/contextContrib/chatContext.js'; import { extHostNamedCustomer, IExtHostContext } from '../../services/extensions/common/extHostCustomers.js'; import { ExtHostChatContextShape, ExtHostContext, IDocumentFilterDto, MainContext, MainThreadChatContextShape } from '../common/extHost.protocol.js'; -import { IChatContextService } from '../../contrib/chat/browser/chatContextService.js'; +import { IChatContextService } from '../../contrib/chat/browser/contextContrib/chatContextService.js'; import { URI } from '../../../base/common/uri.js'; @extHostNamedCustomer(MainContext.MainThreadChatContext) diff --git a/src/vs/workbench/api/browser/mainThreadChatSessions.ts b/src/vs/workbench/api/browser/mainThreadChatSessions.ts index 0b467feeba8..791a22f677f 100644 --- a/src/vs/workbench/api/browser/mainThreadChatSessions.ts +++ b/src/vs/workbench/api/browser/mainThreadChatSessions.ts @@ -18,14 +18,14 @@ import { IDialogService } from '../../../platform/dialogs/common/dialogs.js'; import { ILogService } from '../../../platform/log/common/log.js'; import { hasValidDiff, IAgentSession } from '../../contrib/chat/browser/agentSessions/agentSessionsModel.js'; import { ChatViewPaneTarget, IChatWidgetService, isIChatViewViewContext } from '../../contrib/chat/browser/chat.js'; -import { IChatEditorOptions } from '../../contrib/chat/browser/chatEditor.js'; -import { ChatEditorInput } from '../../contrib/chat/browser/chatEditorInput.js'; +import { IChatEditorOptions } from '../../contrib/chat/browser/widgetHosts/editor/chatEditor.js'; +import { ChatEditorInput } from '../../contrib/chat/browser/widgetHosts/editor/chatEditorInput.js'; import { awaitStatsForSession } from '../../contrib/chat/common/chat.js'; -import { IChatAgentRequest } from '../../contrib/chat/common/chatAgents.js'; -import { IChatModel } from '../../contrib/chat/common/chatModel.js'; -import { IChatContentInlineReference, IChatProgress, IChatService, ResponseModelState } from '../../contrib/chat/common/chatService.js'; +import { IChatAgentRequest } from '../../contrib/chat/common/participants/chatAgents.js'; +import { IChatModel } from '../../contrib/chat/common/model/chatModel.js'; +import { IChatContentInlineReference, IChatProgress, IChatService, ResponseModelState } from '../../contrib/chat/common/chatService/chatService.js'; import { ChatSessionStatus, IChatSession, IChatSessionContentProvider, IChatSessionHistoryItem, IChatSessionItem, IChatSessionItemProvider, IChatSessionProviderOptionItem, IChatSessionsService } from '../../contrib/chat/common/chatSessionsService.js'; -import { IChatRequestVariableEntry } from '../../contrib/chat/common/chatVariableEntries.js'; +import { IChatRequestVariableEntry } from '../../contrib/chat/common/attachments/chatVariableEntries.js'; import { ChatAgentLocation } from '../../contrib/chat/common/constants.js'; import { IEditorGroupsService } from '../../services/editor/common/editorGroupsService.js'; import { IEditorService } from '../../services/editor/common/editorService.js'; diff --git a/src/vs/workbench/api/browser/mainThreadEditorTabs.ts b/src/vs/workbench/api/browser/mainThreadEditorTabs.ts index 9d0d3555b66..ea08e67bb96 100644 --- a/src/vs/workbench/api/browser/mainThreadEditorTabs.ts +++ b/src/vs/workbench/api/browser/mainThreadEditorTabs.ts @@ -16,7 +16,7 @@ import { isGroupEditorMoveEvent } from '../../common/editor/editorGroupModel.js' import { EditorInput } from '../../common/editor/editorInput.js'; import { SideBySideEditorInput } from '../../common/editor/sideBySideEditorInput.js'; import { AbstractTextResourceEditorInput } from '../../common/editor/textResourceEditorInput.js'; -import { ChatEditorInput } from '../../contrib/chat/browser/chatEditorInput.js'; +import { ChatEditorInput } from '../../contrib/chat/browser/widgetHosts/editor/chatEditorInput.js'; import { CustomEditorInput } from '../../contrib/customEditor/browser/customEditorInput.js'; import { InteractiveEditorInput } from '../../contrib/interactive/browser/interactiveEditorInput.js'; import { MergeEditorInput } from '../../contrib/mergeEditor/browser/mergeEditorInput.js'; diff --git a/src/vs/workbench/api/browser/mainThreadLanguageModelTools.ts b/src/vs/workbench/api/browser/mainThreadLanguageModelTools.ts index b00df6b93c6..00336ecfc71 100644 --- a/src/vs/workbench/api/browser/mainThreadLanguageModelTools.ts +++ b/src/vs/workbench/api/browser/mainThreadLanguageModelTools.ts @@ -6,7 +6,7 @@ import { CancellationToken } from '../../../base/common/cancellation.js'; import { Disposable, DisposableMap } from '../../../base/common/lifecycle.js'; import { revive } from '../../../base/common/marshalling.js'; -import { CountTokensCallback, ILanguageModelToolsService, IToolInvocation, IToolProgressStep, IToolResult, ToolProgress, toolResultHasBuffers } from '../../contrib/chat/common/languageModelToolsService.js'; +import { CountTokensCallback, ILanguageModelToolsService, IToolInvocation, IToolProgressStep, IToolResult, ToolProgress, toolResultHasBuffers } from '../../contrib/chat/common/tools/languageModelToolsService.js'; import { IExtHostContext, extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js'; import { Dto, SerializableObjectWithBuffers } from '../../services/extensions/common/proxyIdentifier.js'; import { ExtHostContext, ExtHostLanguageModelToolsShape, IToolDataDto, MainContext, MainThreadLanguageModelToolsShape } from '../common/extHost.protocol.js'; diff --git a/src/vs/workbench/api/common/extHost.protocol.ts b/src/vs/workbench/api/common/extHost.protocol.ts index 9e87b279614..9927978d42f 100644 --- a/src/vs/workbench/api/common/extHost.protocol.ts +++ b/src/vs/workbench/api/common/extHost.protocol.ts @@ -54,17 +54,17 @@ import { WorkspaceTrustRequestOptions } from '../../../platform/workspace/common import { SaveReason } from '../../common/editor.js'; import { IRevealOptions, ITreeItem, IViewBadge } from '../../common/views.js'; import { CallHierarchyItem } from '../../contrib/callHierarchy/common/callHierarchy.js'; -import { IChatAgentMetadata, IChatAgentRequest, IChatAgentResult, UserSelectedTools } from '../../contrib/chat/common/chatAgents.js'; -import { ICodeMapperRequest, ICodeMapperResult } from '../../contrib/chat/common/chatCodeMapperService.js'; -import { IChatContextItem, IChatContextSupport } from '../../contrib/chat/common/chatContext.js'; -import { IChatRelatedFile, IChatRelatedFileProviderMetadata as IChatRelatedFilesProviderMetadata, IChatRequestDraft } from '../../contrib/chat/common/chatEditingService.js'; -import { IChatProgressHistoryResponseContent, IChatRequestVariableData } from '../../contrib/chat/common/chatModel.js'; -import { ChatResponseClearToPreviousToolInvocationReason, IChatContentInlineReference, IChatExternalEditsDto, IChatFollowup, IChatMultiDiffData, IChatMultiDiffDataSerialized, IChatNotebookEdit, IChatProgress, IChatTask, IChatTaskDto, IChatUserActionEvent, IChatVoteAction } from '../../contrib/chat/common/chatService.js'; +import { IChatAgentMetadata, IChatAgentRequest, IChatAgentResult, UserSelectedTools } from '../../contrib/chat/common/participants/chatAgents.js'; +import { ICodeMapperRequest, ICodeMapperResult } from '../../contrib/chat/common/editing/chatCodeMapperService.js'; +import { IChatContextItem, IChatContextSupport } from '../../contrib/chat/common/contextContrib/chatContext.js'; +import { IChatRelatedFile, IChatRelatedFileProviderMetadata as IChatRelatedFilesProviderMetadata, IChatRequestDraft } from '../../contrib/chat/common/editing/chatEditingService.js'; +import { IChatProgressHistoryResponseContent, IChatRequestVariableData } from '../../contrib/chat/common/model/chatModel.js'; +import { ChatResponseClearToPreviousToolInvocationReason, IChatContentInlineReference, IChatExternalEditsDto, IChatFollowup, IChatMultiDiffData, IChatMultiDiffDataSerialized, IChatNotebookEdit, IChatProgress, IChatTask, IChatTaskDto, IChatUserActionEvent, IChatVoteAction } from '../../contrib/chat/common/chatService/chatService.js'; import { IChatSessionItem, IChatSessionProviderOptionGroup, IChatSessionProviderOptionItem } from '../../contrib/chat/common/chatSessionsService.js'; -import { IChatRequestVariableValue } from '../../contrib/chat/common/chatVariables.js'; +import { IChatRequestVariableValue } from '../../contrib/chat/common/attachments/chatVariables.js'; import { ChatAgentLocation } from '../../contrib/chat/common/constants.js'; import { IChatMessage, IChatResponsePart, ILanguageModelChatMetadataAndIdentifier, ILanguageModelChatSelector } from '../../contrib/chat/common/languageModels.js'; -import { IPreparedToolInvocation, IToolInvocation, IToolInvocationPreparationContext, IToolProgressStep, IToolResult, ToolDataSource } from '../../contrib/chat/common/languageModelToolsService.js'; +import { IPreparedToolInvocation, IToolInvocation, IToolInvocationPreparationContext, IToolProgressStep, IToolResult, ToolDataSource } from '../../contrib/chat/common/tools/languageModelToolsService.js'; import { ICustomAgentQueryOptions, IExternalCustomAgent } from '../../contrib/chat/common/promptSyntax/service/promptsService.js'; import { DebugConfigurationProviderTriggerKind, IAdapterDescriptor, IConfig, IDebugSessionReplMode, IDebugTestRunReference, IDebugVisualization, IDebugVisualizationContext, IDebugVisualizationTreeItem, MainThreadDebugVisualization } from '../../contrib/debug/common/debug.js'; import { McpCollectionDefinition, McpConnectionState, McpServerDefinition, McpServerLaunch } from '../../contrib/mcp/common/mcpTypes.js'; diff --git a/src/vs/workbench/api/common/extHostChatAgents2.ts b/src/vs/workbench/api/common/extHostChatAgents2.ts index 74b59a49594..31a52458824 100644 --- a/src/vs/workbench/api/common/extHostChatAgents2.ts +++ b/src/vs/workbench/api/common/extHostChatAgents2.ts @@ -19,11 +19,11 @@ import { generateUuid } from '../../../base/common/uuid.js'; import { Location } from '../../../editor/common/languages.js'; import { ExtensionIdentifier, IExtensionDescription, IRelaxedExtensionDescription } from '../../../platform/extensions/common/extensions.js'; import { ILogService } from '../../../platform/log/common/log.js'; -import { isChatViewTitleActionContext } from '../../contrib/chat/common/chatActions.js'; -import { IChatAgentRequest, IChatAgentResult, IChatAgentResultTimings, UserSelectedTools } from '../../contrib/chat/common/chatAgents.js'; -import { IChatRelatedFile, IChatRequestDraft } from '../../contrib/chat/common/chatEditingService.js'; -import { ChatAgentVoteDirection, IChatContentReference, IChatFollowup, IChatResponseErrorDetails, IChatUserActionEvent, IChatVoteAction } from '../../contrib/chat/common/chatService.js'; -import { LocalChatSessionUri } from '../../contrib/chat/common/chatUri.js'; +import { isChatViewTitleActionContext } from '../../contrib/chat/common/actions/chatActions.js'; +import { IChatAgentRequest, IChatAgentResult, IChatAgentResultTimings, UserSelectedTools } from '../../contrib/chat/common/participants/chatAgents.js'; +import { IChatRelatedFile, IChatRequestDraft } from '../../contrib/chat/common/editing/chatEditingService.js'; +import { ChatAgentVoteDirection, IChatContentReference, IChatFollowup, IChatResponseErrorDetails, IChatUserActionEvent, IChatVoteAction } from '../../contrib/chat/common/chatService/chatService.js'; +import { LocalChatSessionUri } from '../../contrib/chat/common/model/chatUri.js'; import { ChatAgentLocation } from '../../contrib/chat/common/constants.js'; import { checkProposedApiEnabled, isProposedApiEnabled } from '../../services/extensions/common/extensions.js'; import { Dto } from '../../services/extensions/common/proxyIdentifier.js'; diff --git a/src/vs/workbench/api/common/extHostChatContext.ts b/src/vs/workbench/api/common/extHostChatContext.ts index e2ee3c42e36..0e3aaac540b 100644 --- a/src/vs/workbench/api/common/extHostChatContext.ts +++ b/src/vs/workbench/api/common/extHostChatContext.ts @@ -9,7 +9,7 @@ import { URI, UriComponents } from '../../../base/common/uri.js'; import { ExtHostChatContextShape, MainContext, MainThreadChatContextShape } from './extHost.protocol.js'; import { DocumentSelector } from './extHostTypeConverters.js'; import { IExtHostRpcService } from './extHostRpcService.js'; -import { IChatContextItem } from '../../contrib/chat/common/chatContext.js'; +import { IChatContextItem } from '../../contrib/chat/common/contextContrib/chatContext.js'; import { Disposable, DisposableStore } from '../../../base/common/lifecycle.js'; export class ExtHostChatContext extends Disposable implements ExtHostChatContextShape { diff --git a/src/vs/workbench/api/common/extHostChatSessions.ts b/src/vs/workbench/api/common/extHostChatSessions.ts index f9659471a27..54c6ba4248d 100644 --- a/src/vs/workbench/api/common/extHostChatSessions.ts +++ b/src/vs/workbench/api/common/extHostChatSessions.ts @@ -14,7 +14,7 @@ import { MarshalledId } from '../../../base/common/marshallingIds.js'; import { URI, UriComponents } from '../../../base/common/uri.js'; import { IExtensionDescription } from '../../../platform/extensions/common/extensions.js'; import { ILogService } from '../../../platform/log/common/log.js'; -import { IChatAgentRequest, IChatAgentResult } from '../../contrib/chat/common/chatAgents.js'; +import { IChatAgentRequest, IChatAgentResult } from '../../contrib/chat/common/participants/chatAgents.js'; import { ChatSessionStatus, IChatSessionItem, IChatSessionProviderOptionItem } from '../../contrib/chat/common/chatSessionsService.js'; import { ChatAgentLocation } from '../../contrib/chat/common/constants.js'; import { Proxied } from '../../services/extensions/common/proxyIdentifier.js'; @@ -25,7 +25,7 @@ import { ExtHostLanguageModels } from './extHostLanguageModels.js'; import { IExtHostRpcService } from './extHostRpcService.js'; import * as typeConvert from './extHostTypeConverters.js'; import * as extHostTypes from './extHostTypes.js'; -import { IChatRequestVariableEntry, IDiagnosticVariableEntryFilterData, IPromptFileVariableEntry, ISymbolVariableEntry, PromptFileVariableKind } from '../../contrib/chat/common/chatVariableEntries.js'; +import { IChatRequestVariableEntry, IDiagnosticVariableEntryFilterData, IPromptFileVariableEntry, ISymbolVariableEntry, PromptFileVariableKind } from '../../contrib/chat/common/attachments/chatVariableEntries.js'; import { basename } from '../../../base/common/resources.js'; import { Diagnostic } from './extHostTypeConverters.js'; import { SymbolKind, SymbolKinds } from '../../../editor/common/languages.js'; diff --git a/src/vs/workbench/api/common/extHostCodeMapper.ts b/src/vs/workbench/api/common/extHostCodeMapper.ts index 179defae065..5b44b641cd8 100644 --- a/src/vs/workbench/api/common/extHostCodeMapper.ts +++ b/src/vs/workbench/api/common/extHostCodeMapper.ts @@ -6,12 +6,12 @@ import type * as vscode from 'vscode'; import { CancellationToken } from '../../../base/common/cancellation.js'; import { IExtensionDescription } from '../../../platform/extensions/common/extensions.js'; -import { ICodeMapperResult } from '../../contrib/chat/common/chatCodeMapperService.js'; +import { ICodeMapperResult } from '../../contrib/chat/common/editing/chatCodeMapperService.js'; import * as extHostProtocol from './extHost.protocol.js'; import { NotebookEdit, TextEdit } from './extHostTypeConverters.js'; import { URI } from '../../../base/common/uri.js'; import { asArray } from '../../../base/common/arrays.js'; -import { LocalChatSessionUri } from '../../contrib/chat/common/chatUri.js'; +import { LocalChatSessionUri } from '../../contrib/chat/common/model/chatUri.js'; export class ExtHostCodeMapper implements extHostProtocol.ExtHostCodeMapperShape { diff --git a/src/vs/workbench/api/common/extHostLanguageModelTools.ts b/src/vs/workbench/api/common/extHostLanguageModelTools.ts index 87e15f5f588..ab4eb8822ef 100644 --- a/src/vs/workbench/api/common/extHostLanguageModelTools.ts +++ b/src/vs/workbench/api/common/extHostLanguageModelTools.ts @@ -12,9 +12,9 @@ import { IDisposable, toDisposable } from '../../../base/common/lifecycle.js'; import { revive } from '../../../base/common/marshalling.js'; import { generateUuid } from '../../../base/common/uuid.js'; import { IExtensionDescription } from '../../../platform/extensions/common/extensions.js'; -import { IPreparedToolInvocation, isToolInvocationContext, IToolInvocation, IToolInvocationContext, IToolInvocationPreparationContext, IToolResult, ToolInvocationPresentation } from '../../contrib/chat/common/languageModelToolsService.js'; -import { ExtensionEditToolId, InternalEditToolId } from '../../contrib/chat/common/tools/editFileTool.js'; -import { InternalFetchWebPageToolId } from '../../contrib/chat/common/tools/tools.js'; +import { IPreparedToolInvocation, isToolInvocationContext, IToolInvocation, IToolInvocationContext, IToolInvocationPreparationContext, IToolResult, ToolInvocationPresentation } from '../../contrib/chat/common/tools/languageModelToolsService.js'; +import { ExtensionEditToolId, InternalEditToolId } from '../../contrib/chat/common/tools/builtinTools/editFileTool.js'; +import { InternalFetchWebPageToolId } from '../../contrib/chat/common/tools/builtinTools/tools.js'; import { SearchExtensionsToolId } from '../../contrib/extensions/common/searchExtensionsTool.js'; import { checkProposedApiEnabled, isProposedApiEnabled } from '../../services/extensions/common/extensions.js'; import { Dto, SerializableObjectWithBuffers } from '../../services/extensions/common/proxyIdentifier.js'; diff --git a/src/vs/workbench/api/common/extHostLanguageModels.ts b/src/vs/workbench/api/common/extHostLanguageModels.ts index 2abf5677aca..9323770f23c 100644 --- a/src/vs/workbench/api/common/extHostLanguageModels.ts +++ b/src/vs/workbench/api/common/extHostLanguageModels.ts @@ -18,7 +18,7 @@ import { createDecorator } from '../../../platform/instantiation/common/instanti import { ILogService } from '../../../platform/log/common/log.js'; import { Progress } from '../../../platform/progress/common/progress.js'; import { IChatMessage, IChatResponsePart, ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier } from '../../contrib/chat/common/languageModels.js'; -import { DEFAULT_MODEL_PICKER_CATEGORY } from '../../contrib/chat/common/modelPicker/modelPickerWidget.js'; +import { DEFAULT_MODEL_PICKER_CATEGORY } from '../../contrib/chat/common/widget/input/modelPickerWidget.js'; import { INTERNAL_AUTH_PROVIDER_PREFIX } from '../../services/authentication/common/authentication.js'; import { checkProposedApiEnabled, isProposedApiEnabled } from '../../services/extensions/common/extensions.js'; import { SerializableObjectWithBuffers } from '../../services/extensions/common/proxyIdentifier.js'; diff --git a/src/vs/workbench/api/common/extHostTypeConverters.ts b/src/vs/workbench/api/common/extHostTypeConverters.ts index 4648fe402dc..592ca855aa6 100644 --- a/src/vs/workbench/api/common/extHostTypeConverters.ts +++ b/src/vs/workbench/api/common/extHostTypeConverters.ts @@ -39,14 +39,14 @@ import { IMarkerData, IRelatedInformation, MarkerSeverity, MarkerTag } from '../ import { ProgressLocation as MainProgressLocation } from '../../../platform/progress/common/progress.js'; import { DEFAULT_EDITOR_ASSOCIATION, SaveReason } from '../../common/editor.js'; import { IViewBadge } from '../../common/views.js'; -import { IChatAgentRequest, IChatAgentResult } from '../../contrib/chat/common/chatAgents.js'; -import { IChatRequestDraft } from '../../contrib/chat/common/chatEditingService.js'; -import { IChatRequestModeInstructions } from '../../contrib/chat/common/chatModel.js'; -import { IChatAgentMarkdownContentWithVulnerability, IChatCodeCitation, IChatCommandButton, IChatConfirmation, IChatContentInlineReference, IChatContentReference, IChatExtensionsContent, IChatFollowup, IChatMarkdownContent, IChatMoveMessage, IChatMultiDiffDataSerialized, IChatPrepareToolInvocationPart, IChatProgressMessage, IChatPullRequestContent, IChatResponseCodeblockUriPart, IChatTaskDto, IChatTaskResult, IChatTextEdit, IChatThinkingPart, IChatToolInvocationSerialized, IChatTreeData, IChatUserActionEvent, IChatWarningMessage } from '../../contrib/chat/common/chatService.js'; -import { LocalChatSessionUri } from '../../contrib/chat/common/chatUri.js'; -import { ChatRequestToolReferenceEntry, IChatRequestVariableEntry, isImageVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry } from '../../contrib/chat/common/chatVariableEntries.js'; +import { IChatAgentRequest, IChatAgentResult } from '../../contrib/chat/common/participants/chatAgents.js'; +import { IChatRequestDraft } from '../../contrib/chat/common/editing/chatEditingService.js'; +import { IChatRequestModeInstructions } from '../../contrib/chat/common/model/chatModel.js'; +import { IChatAgentMarkdownContentWithVulnerability, IChatCodeCitation, IChatCommandButton, IChatConfirmation, IChatContentInlineReference, IChatContentReference, IChatExtensionsContent, IChatFollowup, IChatMarkdownContent, IChatMoveMessage, IChatMultiDiffDataSerialized, IChatPrepareToolInvocationPart, IChatProgressMessage, IChatPullRequestContent, IChatResponseCodeblockUriPart, IChatTaskDto, IChatTaskResult, IChatTextEdit, IChatThinkingPart, IChatToolInvocationSerialized, IChatTreeData, IChatUserActionEvent, IChatWarningMessage } from '../../contrib/chat/common/chatService/chatService.js'; +import { LocalChatSessionUri } from '../../contrib/chat/common/model/chatUri.js'; +import { ChatRequestToolReferenceEntry, IChatRequestVariableEntry, isImageVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry } from '../../contrib/chat/common/attachments/chatVariableEntries.js'; import { ChatAgentLocation } from '../../contrib/chat/common/constants.js'; -import { IToolInvocationContext, IToolResult, IToolResultInputOutputDetails, IToolResultOutputDetails, ToolDataSource, ToolInvocationPresentation } from '../../contrib/chat/common/languageModelToolsService.js'; +import { IToolInvocationContext, IToolResult, IToolResultInputOutputDetails, IToolResultOutputDetails, ToolDataSource, ToolInvocationPresentation } from '../../contrib/chat/common/tools/languageModelToolsService.js'; import * as chatProvider from '../../contrib/chat/common/languageModels.js'; import { IChatMessageDataPart, IChatResponseDataPart, IChatResponsePromptTsxPart, IChatResponseTextPart } from '../../contrib/chat/common/languageModels.js'; import { DebugTreeItemCollapsibleState, IDebugVisualizationTreeItem } from '../../contrib/debug/common/debug.js'; diff --git a/src/vs/workbench/api/test/browser/mainThreadChatSessions.test.ts b/src/vs/workbench/api/test/browser/mainThreadChatSessions.test.ts index e6988bef563..90c8acb7583 100644 --- a/src/vs/workbench/api/test/browser/mainThreadChatSessions.test.ts +++ b/src/vs/workbench/api/test/browser/mainThreadChatSessions.test.ts @@ -16,11 +16,11 @@ import { IContextKeyService } from '../../../../platform/contextkey/common/conte import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js'; import { TestInstantiationService } from '../../../../platform/instantiation/test/common/instantiationServiceMock.js'; import { ILogService, NullLogService } from '../../../../platform/log/common/log.js'; -import { ChatSessionsService } from '../../../contrib/chat/browser/chatSessions.contribution.js'; -import { IChatAgentRequest } from '../../../contrib/chat/common/chatAgents.js'; -import { IChatProgress, IChatProgressMessage, IChatService } from '../../../contrib/chat/common/chatService.js'; +import { ChatSessionsService } from '../../../contrib/chat/browser/chatSessions/chatSessions.contribution.js'; +import { IChatAgentRequest } from '../../../contrib/chat/common/participants/chatAgents.js'; +import { IChatProgress, IChatProgressMessage, IChatService } from '../../../contrib/chat/common/chatService/chatService.js'; import { IChatSessionItem, IChatSessionProviderOptionGroup, IChatSessionsService } from '../../../contrib/chat/common/chatSessionsService.js'; -import { LocalChatSessionUri } from '../../../contrib/chat/common/chatUri.js'; +import { LocalChatSessionUri } from '../../../contrib/chat/common/model/chatUri.js'; import { ChatAgentLocation } from '../../../contrib/chat/common/constants.js'; import { IEditorService } from '../../../services/editor/common/editorService.js'; import { IExtHostContext } from '../../../services/extensions/common/extHostCustomers.js'; @@ -31,7 +31,7 @@ import { mock, TestExtensionService } from '../../../test/common/workbenchTestSe import { MainThreadChatSessions, ObservableChatSession } from '../../browser/mainThreadChatSessions.js'; import { ExtHostChatSessionsShape, IChatProgressDto, IChatSessionProviderOptions } from '../../common/extHost.protocol.js'; import { ILabelService } from '../../../../platform/label/common/label.js'; -import { MockChatService } from '../../../contrib/chat/test/common/mockChatService.js'; +import { MockChatService } from '../../../contrib/chat/test/common/chatService/mockChatService.js'; suite('ObservableChatSession', function () { let disposables: DisposableStore; diff --git a/src/vs/workbench/contrib/accessibility/browser/accessibleView.ts b/src/vs/workbench/contrib/accessibility/browser/accessibleView.ts index 628f6552329..abd18da3a4e 100644 --- a/src/vs/workbench/contrib/accessibility/browser/accessibleView.ts +++ b/src/vs/workbench/contrib/accessibility/browser/accessibleView.ts @@ -46,7 +46,7 @@ import { IQuickInputService, IQuickPick, IQuickPickItem } from '../../../../plat import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; import { FloatingEditorClickMenu } from '../../../browser/codeeditor.js'; import { IChatCodeBlockContextProviderService } from '../../chat/browser/chat.js'; -import { ICodeBlockActionContext } from '../../chat/browser/codeBlockPart.js'; +import { ICodeBlockActionContext } from '../../chat/browser/widget/chatContentParts/codeBlockPart.js'; import { getSimpleEditorOptions } from '../../codeEditor/browser/simpleEditorOptions.js'; import { AccessibilityCommandId } from '../common/accessibilityCommands.js'; import { AccessibilityVerbositySettingId, AccessibilityWorkbenchSettingId, accessibilityHelpIsShown, accessibleViewContainsCodeBlocks, accessibleViewCurrentProviderId, accessibleViewGoToSymbolSupported, accessibleViewHasAssignedKeybindings, accessibleViewHasUnassignedKeybindings, accessibleViewInCodeBlock, accessibleViewIsShown, accessibleViewOnLastLine, accessibleViewSupportsNavigation, accessibleViewVerbosityEnabled } from './accessibilityConfiguration.js'; diff --git a/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.ts b/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.ts index 5f993a6a6d8..7bc54532c27 100644 --- a/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.ts +++ b/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.ts @@ -13,7 +13,7 @@ import { IContextKeyService } from '../../../../platform/contextkey/common/conte import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js'; import { AccessibilityHelpAction } from './accessibleViewActions.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { CommentAccessibilityHelpNLS } from '../../comments/browser/commentsAccessibility.js'; import { CommentContextKeys } from '../../comments/common/commentContextKeys.js'; import { NEW_UNTITLED_FILE_COMMAND_ID } from '../../files/browser/fileConstants.js'; diff --git a/src/vs/workbench/contrib/authentication/browser/actions/manageTrustedMcpServersForAccountAction.ts b/src/vs/workbench/contrib/authentication/browser/actions/manageTrustedMcpServersForAccountAction.ts index 88c1a511012..adf2c55fcca 100644 --- a/src/vs/workbench/contrib/authentication/browser/actions/manageTrustedMcpServersForAccountAction.ts +++ b/src/vs/workbench/contrib/authentication/browser/actions/manageTrustedMcpServersForAccountAction.ts @@ -16,7 +16,7 @@ import { IQuickInputService, IQuickPickItem, IQuickPickSeparator } from '../../. import { AllowedMcpServer } from '../../../../services/authentication/browser/authenticationMcpAccessService.js'; import { IAuthenticationService } from '../../../../services/authentication/common/authentication.js'; import { IAuthenticationQueryService, IAccountQuery } from '../../../../services/authentication/common/authenticationQuery.js'; -import { ChatContextKeys } from '../../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../../chat/common/actions/chatContextKeys.js'; import { IMcpService } from '../../../mcp/common/mcpTypes.js'; export class ManageTrustedMcpServersForAccountAction extends Action2 { diff --git a/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.ts b/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.ts rename to src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.ts index 8ab09146f3a..e468b666365 100644 --- a/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.ts +++ b/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityProvider.ts @@ -3,23 +3,23 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { AriaRole } from '../../../../base/browser/ui/aria/aria.js'; -import { IListAccessibilityProvider } from '../../../../base/browser/ui/list/listWidget.js'; -import { marked } from '../../../../base/common/marked/marked.js'; -import { isDefined } from '../../../../base/common/types.js'; -import { localize } from '../../../../nls.js'; -import { IAccessibleViewService } from '../../../../platform/accessibility/browser/accessibleView.js'; -import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IInstantiationService, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; -import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js'; -import { AccessibilityVerbositySettingId } from '../../accessibility/browser/accessibilityConfiguration.js'; -import { migrateLegacyTerminalToolSpecificData } from '../common/chat.js'; -import { IChatToolInvocation } from '../common/chatService.js'; -import { IChatResponseViewModel, isRequestVM, isResponseVM } from '../common/chatViewModel.js'; -import { isToolResultInputOutputDetails, isToolResultOutputDetails, toolContentToA11yString } from '../common/languageModelToolsService.js'; -import { CancelChatActionId } from './actions/chatExecuteActions.js'; -import { AcceptToolConfirmationActionId } from './actions/chatToolActions.js'; -import { ChatTreeItem } from './chat.js'; +import { AriaRole } from '../../../../../base/browser/ui/aria/aria.js'; +import { IListAccessibilityProvider } from '../../../../../base/browser/ui/list/listWidget.js'; +import { marked } from '../../../../../base/common/marked/marked.js'; +import { isDefined } from '../../../../../base/common/types.js'; +import { localize } from '../../../../../nls.js'; +import { IAccessibleViewService } from '../../../../../platform/accessibility/browser/accessibleView.js'; +import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; +import { IInstantiationService, ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IKeybindingService } from '../../../../../platform/keybinding/common/keybinding.js'; +import { AccessibilityVerbositySettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; +import { migrateLegacyTerminalToolSpecificData } from '../../common/chat.js'; +import { IChatToolInvocation } from '../../common/chatService/chatService.js'; +import { IChatResponseViewModel, isRequestVM, isResponseVM } from '../../common/model/chatViewModel.js'; +import { isToolResultInputOutputDetails, isToolResultOutputDetails, toolContentToA11yString } from '../../common/tools/languageModelToolsService.js'; +import { CancelChatActionId } from '../actions/chatExecuteActions.js'; +import { AcceptToolConfirmationActionId } from '../actions/chatToolActions.js'; +import { ChatTreeItem } from '../chat.js'; export const getToolConfirmationAlert = (accessor: ServicesAccessor, toolInvocation: IChatToolInvocation[]) => { const keybindingService = accessor.get(IKeybindingService); diff --git a/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.ts b/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.ts similarity index 80% rename from src/vs/workbench/contrib/chat/browser/chatAccessibilityService.ts rename to src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.ts index 13c8f519584..c6ef4aa91da 100644 --- a/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.ts +++ b/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.ts @@ -3,26 +3,26 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { renderAsPlaintext } from '../../../../base/browser/markdownRenderer.js'; -import { alert, status } from '../../../../base/browser/ui/aria/aria.js'; -import { Event } from '../../../../base/common/event.js'; -import { MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Disposable, DisposableMap, DisposableStore } from '../../../../base/common/lifecycle.js'; -import { URI } from '../../../../base/common/uri.js'; -import { localize } from '../../../../nls.js'; -import { AccessibilitySignal, IAccessibilitySignalService } from '../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; -import { AccessibilityProgressSignalScheduler } from '../../../../platform/accessibilitySignal/browser/progressAccessibilitySignalScheduler.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { FocusMode } from '../../../../platform/native/common/native.js'; -import { IHostService } from '../../../services/host/browser/host.js'; -import { AccessibilityVoiceSettingId } from '../../accessibility/browser/accessibilityConfiguration.js'; -import { ElicitationState, IChatElicitationRequest, IChatService } from '../common/chatService.js'; -import { IChatResponseViewModel } from '../common/chatViewModel.js'; -import { ChatConfiguration } from '../common/constants.js'; -import { IChatAccessibilityService, IChatWidgetService } from './chat.js'; -import { ChatWidget } from './chatWidget.js'; +import * as dom from '../../../../../base/browser/dom.js'; +import { renderAsPlaintext } from '../../../../../base/browser/markdownRenderer.js'; +import { alert, status } from '../../../../../base/browser/ui/aria/aria.js'; +import { Event } from '../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Disposable, DisposableMap, DisposableStore } from '../../../../../base/common/lifecycle.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { localize } from '../../../../../nls.js'; +import { AccessibilitySignal, IAccessibilitySignalService } from '../../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; +import { AccessibilityProgressSignalScheduler } from '../../../../../platform/accessibilitySignal/browser/progressAccessibilitySignalScheduler.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { FocusMode } from '../../../../../platform/native/common/native.js'; +import { IHostService } from '../../../../services/host/browser/host.js'; +import { AccessibilityVoiceSettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; +import { ElicitationState, IChatElicitationRequest, IChatService } from '../../common/chatService/chatService.js'; +import { IChatResponseViewModel } from '../../common/model/chatViewModel.js'; +import { ChatConfiguration } from '../../common/constants.js'; +import { IChatAccessibilityService, IChatWidgetService } from '../chat.js'; +import { ChatWidget } from '../widget/chatWidget.js'; const CHAT_RESPONSE_PENDING_ALLOWANCE_MS = 4000; export class ChatAccessibilityService extends Disposable implements IChatAccessibilityService { diff --git a/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.ts b/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.ts similarity index 85% rename from src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.ts rename to src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.ts index 4147bd1b26f..f47ce1f0362 100644 --- a/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.ts +++ b/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.ts @@ -3,22 +3,22 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { renderAsPlaintext } from '../../../../base/browser/markdownRenderer.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { isMarkdownString, MarkdownString } from '../../../../base/common/htmlContent.js'; -import { stripIcons } from '../../../../base/common/iconLabels.js'; -import { Disposable, DisposableStore } from '../../../../base/common/lifecycle.js'; -import { localize } from '../../../../nls.js'; -import { AccessibleViewProviderId, AccessibleViewType, IAccessibleViewContentProvider } from '../../../../platform/accessibility/browser/accessibleView.js'; -import { IAccessibleViewImplementation } from '../../../../platform/accessibility/browser/accessibleViewRegistry.js'; -import { ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; -import { AccessibilityVerbositySettingId } from '../../accessibility/browser/accessibilityConfiguration.js'; -import { migrateLegacyTerminalToolSpecificData } from '../common/chat.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IChatToolInvocation } from '../common/chatService.js'; -import { isResponseVM } from '../common/chatViewModel.js'; -import { isToolResultInputOutputDetails, isToolResultOutputDetails, toolContentToA11yString } from '../common/languageModelToolsService.js'; -import { ChatTreeItem, IChatWidget, IChatWidgetService } from './chat.js'; +import { renderAsPlaintext } from '../../../../../base/browser/markdownRenderer.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { isMarkdownString, MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { stripIcons } from '../../../../../base/common/iconLabels.js'; +import { Disposable, DisposableStore } from '../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../nls.js'; +import { AccessibleViewProviderId, AccessibleViewType, IAccessibleViewContentProvider } from '../../../../../platform/accessibility/browser/accessibleView.js'; +import { IAccessibleViewImplementation } from '../../../../../platform/accessibility/browser/accessibleViewRegistry.js'; +import { ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; +import { AccessibilityVerbositySettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; +import { migrateLegacyTerminalToolSpecificData } from '../../common/chat.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatToolInvocation } from '../../common/chatService/chatService.js'; +import { isResponseVM } from '../../common/model/chatViewModel.js'; +import { isToolResultInputOutputDetails, isToolResultOutputDetails, toolContentToA11yString } from '../../common/tools/languageModelToolsService.js'; +import { ChatTreeItem, IChatWidget, IChatWidgetService } from '../chat.js'; export class ChatResponseAccessibleView implements IAccessibleViewImplementation { readonly priority = 100; diff --git a/src/vs/workbench/contrib/chat/browser/chatTerminalOutputAccessibleView.ts b/src/vs/workbench/contrib/chat/browser/accessibility/chatTerminalOutputAccessibleView.ts similarity index 68% rename from src/vs/workbench/contrib/chat/browser/chatTerminalOutputAccessibleView.ts rename to src/vs/workbench/contrib/chat/browser/accessibility/chatTerminalOutputAccessibleView.ts index 8539e03baef..37a633bbe17 100644 --- a/src/vs/workbench/contrib/chat/browser/chatTerminalOutputAccessibleView.ts +++ b/src/vs/workbench/contrib/chat/browser/accessibility/chatTerminalOutputAccessibleView.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { AccessibleContentProvider, AccessibleViewProviderId, AccessibleViewType } from '../../../../platform/accessibility/browser/accessibleView.js'; -import { IAccessibleViewImplementation } from '../../../../platform/accessibility/browser/accessibleViewRegistry.js'; -import { ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; -import { AccessibilityVerbositySettingId } from '../../accessibility/browser/accessibilityConfiguration.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { ITerminalChatService } from '../../terminal/browser/terminal.js'; +import { AccessibleContentProvider, AccessibleViewProviderId, AccessibleViewType } from '../../../../../platform/accessibility/browser/accessibleView.js'; +import { IAccessibleViewImplementation } from '../../../../../platform/accessibility/browser/accessibleViewRegistry.js'; +import { ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; +import { AccessibilityVerbositySettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { ITerminalChatService } from '../../../terminal/browser/terminal.js'; export class ChatTerminalOutputAccessibleView implements IAccessibleViewImplementation { readonly priority = 115; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.ts index e5c4173750b..f1ec099751c 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.ts @@ -10,8 +10,8 @@ import { ServicesAccessor } from '../../../../../platform/instantiation/common/i import { KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; import { KeyCode, KeyMod } from '../../../../../base/common/keyCodes.js'; import { IChatWidgetService } from '../chat.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { isResponseVM } from '../../common/chatViewModel.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { isResponseVM } from '../../common/model/chatViewModel.js'; import { CONTEXT_ACCESSIBILITY_MODE_ENABLED } from '../../../../../platform/accessibility/common/accessibility.js'; export const ACTION_ID_FOCUS_CHAT_CONFIRMATION = 'workbench.action.chat.focusConfirmation'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.ts b/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.ts index 703faddeb4b..1a3a49fac76 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.ts @@ -14,7 +14,7 @@ import { IKeybindingService } from '../../../../../platform/keybinding/common/ke import { AccessibilityVerbositySettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; import { INLINE_CHAT_ID } from '../../../inlineChat/common/inlineChat.js'; import { TerminalContribCommandId } from '../../../terminal/terminalContribExports.js'; -import { ChatContextKeyExprs, ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeyExprs, ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../common/constants.js'; import { FocusAgentSessionsAction } from '../agentSessions/agentSessionsActions.js'; import { IChatWidgetService } from '../chat.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatActions.ts index 0095bf738f0..2543324c7e7 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatActions.ts @@ -50,24 +50,24 @@ import { IViewsService } from '../../../../services/views/common/viewsService.js import { EXTENSIONS_CATEGORY, IExtensionsWorkbenchService } from '../../../extensions/common/extensions.js'; import { SCMHistoryItemChangeRangeContentProvider, ScmHistoryItemChangeRangeUriFields } from '../../../scm/browser/scmHistoryChatContext.js'; import { ISCMService } from '../../../scm/common/scm.js'; -import { IChatAgentResult, IChatAgentService } from '../../common/chatAgents.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatModel, IChatResponseModel } from '../../common/chatModel.js'; +import { IChatAgentResult, IChatAgentService } from '../../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatModel, IChatResponseModel } from '../../common/model/chatModel.js'; import { ChatMode, IChatMode, IChatModeService } from '../../common/chatModes.js'; -import { IChatService } from '../../common/chatService.js'; -import { ISCMHistoryItemChangeRangeVariableEntry, ISCMHistoryItemChangeVariableEntry } from '../../common/chatVariableEntries.js'; -import { IChatRequestViewModel, IChatResponseViewModel, isRequestVM } from '../../common/chatViewModel.js'; -import { IChatWidgetHistoryService } from '../../common/chatWidgetHistoryService.js'; +import { IChatService } from '../../common/chatService/chatService.js'; +import { ISCMHistoryItemChangeRangeVariableEntry, ISCMHistoryItemChangeVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { IChatRequestViewModel, IChatResponseViewModel, isRequestVM } from '../../common/model/chatViewModel.js'; +import { IChatWidgetHistoryService } from '../../common/widget/chatWidgetHistoryService.js'; import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../common/constants.js'; import { ILanguageModelChatSelector, ILanguageModelsService } from '../../common/languageModels.js'; import { CopilotUsageExtensionFeatureId } from '../../common/languageModelStats.js'; -import { ILanguageModelToolsConfirmationService } from '../../common/languageModelToolsConfirmationService.js'; -import { ILanguageModelToolsService } from '../../common/languageModelToolsService.js'; +import { ILanguageModelToolsConfirmationService } from '../../common/tools/languageModelToolsConfirmationService.js'; +import { ILanguageModelToolsService } from '../../common/tools/languageModelToolsService.js'; import { ChatViewId, IChatWidget, IChatWidgetService } from '../chat.js'; -import { IChatEditorOptions } from '../chatEditor.js'; -import { ChatEditorInput, showClearEditingSessionConfirmation } from '../chatEditorInput.js'; -import { convertBufferToScreenshotVariable } from '../contrib/chatScreenshotContext.js'; +import { IChatEditorOptions } from '../widgetHosts/editor/chatEditor.js'; +import { ChatEditorInput, showClearEditingSessionConfirmation } from '../widgetHosts/editor/chatEditorInput.js'; +import { convertBufferToScreenshotVariable } from '../attachments/chatScreenshotContext.js'; export const CHAT_CATEGORY = localize2('chat.category', 'Chat'); diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.ts index 9ea4da64dbc..6600ce6f927 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.ts @@ -19,7 +19,7 @@ import { CHAT_CATEGORY } from './chatActions.js'; import { IChatSessionRecommendation } from '../../../../../base/common/product.js'; import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js'; import { ChatAgentLocation } from '../../common/constants.js'; -import { IChatService } from '../../common/chatService.js'; +import { IChatService } from '../../common/chatService/chatService.js'; const INSTALL_CONTEXT_PREFIX = 'chat.installRecommendationAvailable'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatClear.ts b/src/vs/workbench/contrib/chat/browser/actions/chatClear.ts index 67727012a5e..8bb0f415f59 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatClear.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatClear.ts @@ -7,8 +7,8 @@ import { Schemas } from '../../../../../base/common/network.js'; import { generateUuid } from '../../../../../base/common/uuid.js'; import { ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; -import { IChatEditorOptions } from '../chatEditor.js'; -import { ChatEditorInput } from '../chatEditorInput.js'; +import { IChatEditorOptions } from '../widgetHosts/editor/chatEditor.js'; +import { ChatEditorInput } from '../widgetHosts/editor/chatEditorInput.js'; export async function clearChatEditor(accessor: ServicesAccessor, chatEditorInput?: ChatEditorInput): Promise { const editorService = accessor.get(IEditorService); diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.ts index 9346be8f7bf..14d44d0630f 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.ts @@ -31,12 +31,12 @@ import { IAiEditTelemetryService } from '../../../editTelemetry/browser/telemetr import { EditDeltaInfo } from '../../../../../editor/common/textModelEditSource.js'; import { reviewEdits } from '../../../inlineChat/browser/inlineChatController.js'; import { ITerminalEditorService, ITerminalGroupService, ITerminalService } from '../../../terminal/browser/terminal.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { ChatCopyKind, IChatService } from '../../common/chatService.js'; -import { IChatRequestViewModel, IChatResponseViewModel, isRequestVM, isResponseVM } from '../../common/chatViewModel.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { ChatCopyKind, IChatService } from '../../common/chatService/chatService.js'; +import { IChatRequestViewModel, IChatResponseViewModel, isRequestVM, isResponseVM } from '../../common/model/chatViewModel.js'; import { ChatAgentLocation } from '../../common/constants.js'; import { IChatCodeBlockContextProviderService, IChatWidgetService } from '../chat.js'; -import { DefaultChatTextEditor, ICodeBlockActionContext, ICodeCompareBlockActionContext } from '../codeBlockPart.js'; +import { DefaultChatTextEditor, ICodeBlockActionContext, ICodeCompareBlockActionContext } from '../widget/chatContentParts/codeBlockPart.js'; import { CHAT_CATEGORY } from './chatActions.js'; import { ApplyCodeBlockOperation, InsertCodeBlockOperation } from './codeBlockOperations.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatContext.ts b/src/vs/workbench/contrib/chat/browser/actions/chatContext.ts index 2960c794d27..6154a9e95ce 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatContext.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatContext.ts @@ -21,13 +21,13 @@ import { IHostService } from '../../../../services/host/browser/host.js'; import { UntitledTextEditorInput } from '../../../../services/untitled/common/untitledTextEditorInput.js'; import { FileEditorInput } from '../../../files/browser/editors/fileEditorInput.js'; import { NotebookEditorInput } from '../../../notebook/common/notebookEditorInput.js'; -import { IChatContextPickService, IChatContextValueItem, IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPicker } from '../chatContextPickService.js'; -import { IChatEditingService } from '../../common/chatEditingService.js'; -import { IChatRequestToolEntry, IChatRequestToolSetEntry, IChatRequestVariableEntry, IImageVariableEntry, OmittedState, toToolSetVariableEntry, toToolVariableEntry } from '../../common/chatVariableEntries.js'; -import { ToolDataSource, ToolSet } from '../../common/languageModelToolsService.js'; +import { IChatContextPickService, IChatContextValueItem, IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPicker } from '../attachments/chatContextPickService.js'; +import { IChatEditingService } from '../../common/editing/chatEditingService.js'; +import { IChatRequestToolEntry, IChatRequestToolSetEntry, IChatRequestVariableEntry, IImageVariableEntry, OmittedState, toToolSetVariableEntry, toToolVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { ToolDataSource, ToolSet } from '../../common/tools/languageModelToolsService.js'; import { IChatWidget } from '../chat.js'; -import { imageToHash, isImage } from '../chatPasteProviders.js'; -import { convertBufferToScreenshotVariable } from '../contrib/chatScreenshotContext.js'; +import { imageToHash, isImage } from '../widget/input/editor/chatPasteProviders.js'; +import { convertBufferToScreenshotVariable } from '../attachments/chatScreenshotContext.js'; import { ChatInstructionsPickerPick } from '../promptSyntax/attachInstructionsAction.js'; import { ITerminalService } from '../../../terminal/browser/terminal.js'; import { URI } from '../../../../../base/common/uri.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.ts index 073f001c861..6d1974325e2 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.ts @@ -42,12 +42,12 @@ import { AnythingQuickAccessProvider } from '../../../search/browser/anythingQui import { isSearchTreeFileMatch, isSearchTreeMatch } from '../../../search/browser/searchTreeModel/searchTreeCommon.js'; import { ISymbolQuickPickItem, SymbolsQuickAccessProvider } from '../../../search/browser/symbolsQuickAccess.js'; import { SearchContext } from '../../../search/common/constants.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatRequestVariableEntry, OmittedState } from '../../common/chatVariableEntries.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatRequestVariableEntry, OmittedState } from '../../common/attachments/chatVariableEntries.js'; import { ChatAgentLocation, isSupportedChatFileScheme } from '../../common/constants.js'; import { IChatWidget, IChatWidgetService, IQuickChatService } from '../chat.js'; -import { IChatContextPickerItem, IChatContextPickService, IChatContextValueItem, isChatContextPickerPickItem } from '../chatContextPickService.js'; -import { isQuickChat } from '../chatWidget.js'; +import { IChatContextPickerItem, IChatContextPickService, IChatContextValueItem, isChatContextPickerPickItem } from '../attachments/chatContextPickService.js'; +import { isQuickChat } from '../widget/chatWidget.js'; import { resizeImage } from '../chatImageUtils.js'; import { registerPromptActions } from '../promptSyntax/promptFileActions.js'; import { CHAT_CATEGORY } from './chatActions.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.ts b/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.ts index a255be39625..4ba1db28fbf 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatContinueInAction.ts @@ -26,12 +26,12 @@ import { IOpenerService } from '../../../../../platform/opener/common/opener.js' import { IWorkbenchContribution } from '../../../../common/contributions.js'; import { ResourceContextKey } from '../../../../common/contextkeys.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; -import { IChatAgentService } from '../../common/chatAgents.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { chatEditingWidgetFileStateContextKey, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { ChatModel } from '../../common/chatModel.js'; -import { ChatRequestParser } from '../../common/chatRequestParser.js'; -import { IChatService } from '../../common/chatService.js'; +import { IChatAgentService } from '../../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { chatEditingWidgetFileStateContextKey, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { ChatModel } from '../../common/model/chatModel.js'; +import { ChatRequestParser } from '../../common/requestParser/chatRequestParser.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { IChatSessionsExtensionPoint, IChatSessionsService } from '../../common/chatSessionsService.js'; import { ChatAgentLocation } from '../../common/constants.js'; import { PROMPT_LANGUAGE_ID } from '../../common/promptSyntax/promptTypes.js'; @@ -39,7 +39,7 @@ import { AgentSessionProviders, getAgentSessionProviderIcon, getAgentSessionProv import { IChatWidgetService } from '../chat.js'; import { ctxHasEditorModification } from '../chatEditing/chatEditingEditorContextKeys.js'; import { CHAT_SETUP_ACTION_ID } from './chatActions.js'; -import { PromptFileVariableKind, toPromptFileVariableEntry } from '../../common/chatVariableEntries.js'; +import { PromptFileVariableKind, toPromptFileVariableEntry } from '../../common/attachments/chatVariableEntries.js'; export const enum ActionLocation { ChatWidget = 'chatWidget', diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.ts index 6df226b5730..fb757671e5c 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.ts @@ -9,8 +9,8 @@ import { localize2 } from '../../../../../nls.js'; import { Action2, MenuId, registerAction2 } from '../../../../../platform/actions/common/actions.js'; import { IClipboardService } from '../../../../../platform/clipboard/common/clipboardService.js'; import { katexContainerClassName, katexContainerLatexAttributeName } from '../../../markdown/common/markedKatexExtension.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatRequestViewModel, IChatResponseViewModel, isChatTreeItem, isRequestVM, isResponseVM } from '../../common/chatViewModel.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatRequestViewModel, IChatResponseViewModel, isChatTreeItem, isRequestVM, isResponseVM } from '../../common/model/chatViewModel.js'; import { ChatTreeItem, IChatWidgetService } from '../chat.js'; import { CHAT_CATEGORY, stringifyItem } from './chatActions.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.ts index abfb0d71c44..40e3fae63c5 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.ts @@ -8,8 +8,8 @@ import { ServicesAccessor } from '../../../../../editor/browser/editorExtensions import { localize2 } from '../../../../../nls.js'; import { Categories } from '../../../../../platform/action/common/actionCommonCategories.js'; import { Action2, registerAction2 } from '../../../../../platform/actions/common/actions.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatService } from '../../common/chatService.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { IChatWidgetService } from '../chat.js'; export function registerChatDeveloperActions() { diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.ts index 932179d1d0a..b933c74947a 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatElicitationActions.ts @@ -9,9 +9,9 @@ import { localize2 } from '../../../../../nls.js'; import { Action2, registerAction2 } from '../../../../../platform/actions/common/actions.js'; import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contextkey.js'; import { KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { ElicitationState } from '../../common/chatService.js'; -import { isResponseVM } from '../../common/chatViewModel.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { ElicitationState } from '../../common/chatService/chatService.js'; +import { isResponseVM } from '../../common/model/chatViewModel.js'; import { IChatWidgetService } from '../chat.js'; import { CHAT_CATEGORY } from './chatActions.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.ts index 8a5b8628c49..38f5e3b2938 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.ts @@ -20,13 +20,13 @@ import { IDialogService } from '../../../../../platform/dialogs/common/dialogs.j import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; import { KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { IChatMode, IChatModeService } from '../../common/chatModes.js'; -import { chatVariableLeader } from '../../common/chatParserTypes.js'; -import { IChatService } from '../../common/chatService.js'; +import { chatVariableLeader } from '../../common/requestParser/chatParserTypes.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { ChatAgentLocation, ChatConfiguration, ChatModeKind, } from '../../common/constants.js'; import { ILanguageModelChatMetadata } from '../../common/languageModels.js'; -import { ILanguageModelToolsService } from '../../common/languageModelToolsService.js'; +import { ILanguageModelToolsService } from '../../common/tools/languageModelToolsService.js'; import { IChatWidget, IChatWidgetService } from '../chat.js'; import { getEditingSessionContext } from '../chatEditing/chatEditingActions.js'; import { ctxHasEditorModification } from '../chatEditing/chatEditingEditorContextKeys.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.ts index 425f3539daa..d33a0aae80e 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.ts @@ -10,8 +10,8 @@ import { Action2, registerAction2 } from '../../../../../platform/actions/common import { KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; import { CHAT_CATEGORY } from './chatActions.js'; import { IChatWidgetService } from '../chat.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatResponseViewModel, isResponseVM } from '../../common/chatViewModel.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatResponseViewModel, isResponseVM } from '../../common/model/chatViewModel.js'; export function registerChatFileTreeActions() { registerAction2(class NextFileTreeAction extends Action2 { diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.ts b/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.ts index c0c27a20d35..1baa73540e5 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.ts @@ -12,11 +12,11 @@ import { IFileDialogService } from '../../../../../platform/dialogs/common/dialo import { IFileService } from '../../../../../platform/files/common/files.js'; import { CHAT_CATEGORY } from './chatActions.js'; import { IChatWidgetService } from '../chat.js'; -import { IChatEditorOptions } from '../chatEditor.js'; -import { ChatEditorInput } from '../chatEditorInput.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { isExportableSessionData } from '../../common/chatModel.js'; -import { IChatService } from '../../common/chatService.js'; +import { IChatEditorOptions } from '../widgetHosts/editor/chatEditor.js'; +import { ChatEditorInput } from '../widgetHosts/editor/chatEditorInput.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { isExportableSessionData } from '../../common/model/chatModel.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { URI } from '../../../../../base/common/uri.js'; import { revive } from '../../../../../base/common/marshalling.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.ts index e113f01008d..4a2e78a9df9 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.ts @@ -17,7 +17,7 @@ import { IExtensionsWorkbenchService } from '../../../extensions/common/extensio import { IProductService } from '../../../../../platform/product/common/productService.js'; import { Codicon } from '../../../../../base/common/codicons.js'; import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; class ManageLanguageModelAuthenticationAction extends Action2 { static readonly ID = 'workbench.action.chat.manageLanguageModelAuthentication'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.ts index d2796da1519..5aa125f6eb8 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.ts @@ -15,13 +15,13 @@ import { ViewContainerLocation } from '../../../../common/views.js'; import { IEditorGroupsService } from '../../../../services/editor/common/editorGroupsService.js'; import { ACTIVE_GROUP, AUX_WINDOW_GROUP, IEditorService } from '../../../../services/editor/common/editorService.js'; import { IViewsService } from '../../../../services/views/common/viewsService.js'; -import { isChatViewTitleActionContext } from '../../common/chatActions.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { isChatViewTitleActionContext } from '../../common/actions/chatActions.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { ChatAgentLocation } from '../../common/constants.js'; import { ChatViewId, IChatWidgetService } from '../chat.js'; -import { ChatEditor, IChatEditorOptions } from '../chatEditor.js'; -import { ChatEditorInput } from '../chatEditorInput.js'; -import { ChatViewPane } from '../chatViewPane.js'; +import { ChatEditor, IChatEditorOptions } from '../widgetHosts/editor/chatEditor.js'; +import { ChatEditorInput } from '../widgetHosts/editor/chatEditorInput.js'; +import { ChatViewPane } from '../widgetHosts/viewPane/chatViewPane.js'; import { CHAT_CATEGORY } from './chatActions.js'; enum MoveToNewLocation { diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.ts index 4e52846f878..8fe8db609b2 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.ts @@ -13,13 +13,13 @@ import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contex import { IDialogService } from '../../../../../platform/dialogs/common/dialogs.js'; import { KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; import { ActiveEditorContext } from '../../../../common/contextkeys.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatEditingSession } from '../../common/chatEditingService.js'; -import { IChatService } from '../../common/chatService.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatEditingSession } from '../../common/editing/chatEditingService.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { ChatAgentLocation, ChatModeKind } from '../../common/constants.js'; import { ChatViewId, IChatWidgetService } from '../chat.js'; import { EditingSessionAction, getEditingSessionContext } from '../chatEditing/chatEditingActions.js'; -import { ChatEditorInput } from '../chatEditorInput.js'; +import { ChatEditorInput } from '../widgetHosts/editor/chatEditorInput.js'; import { ACTION_ID_NEW_CHAT, ACTION_ID_NEW_EDIT_SESSION, CHAT_CATEGORY, handleCurrentEditingSession } from './chatActions.js'; import { clearChatEditor } from './chatClear.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.ts index 290a232e7d9..93c6417d90b 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.ts @@ -10,8 +10,8 @@ import { Action2, registerAction2 } from '../../../../../platform/actions/common import { KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; import { CHAT_CATEGORY } from './chatActions.js'; import { IChatWidgetService } from '../chat.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatRequestViewModel, isRequestVM, isResponseVM } from '../../common/chatViewModel.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatRequestViewModel, isRequestVM, isResponseVM } from '../../common/model/chatViewModel.js'; export function registerChatPromptNavigationActions() { registerAction2(class NextUserPromptAction extends Action2 { diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.ts index e3e1482b4b6..21f8bc6191e 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.ts @@ -12,7 +12,7 @@ import { ServicesAccessor } from '../../../../../platform/instantiation/common/i import { KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; import { CHAT_CATEGORY } from './chatActions.js'; import { IQuickChatOpenOptions, IQuickChatService } from '../chat.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; export const ASK_QUICK_QUESTION_ACTION_ID = 'workbench.action.quickchat.toggle'; export function registerQuickChatActions() { diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.ts index 08d03fe505d..e610c8500a8 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.ts @@ -19,10 +19,10 @@ import { MENU_INLINE_CHAT_WIDGET_SECONDARY } from '../../../inlineChat/common/in import { INotebookEditor } from '../../../notebook/browser/notebookBrowser.js'; import { CellEditType, CellKind, NOTEBOOK_EDITOR_ID } from '../../../notebook/common/notebookCommon.js'; import { NOTEBOOK_IS_ACTIVE_EDITOR } from '../../../notebook/common/notebookContextKeys.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { applyingChatEditsFailedContextKey, isChatEditingActionContext } from '../../common/chatEditingService.js'; -import { ChatAgentVoteDirection, ChatAgentVoteDownReason, IChatService } from '../../common/chatService.js'; -import { isResponseVM } from '../../common/chatViewModel.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { applyingChatEditsFailedContextKey, isChatEditingActionContext } from '../../common/editing/chatEditingService.js'; +import { ChatAgentVoteDirection, ChatAgentVoteDownReason, IChatService } from '../../common/chatService/chatService.js'; +import { isResponseVM } from '../../common/model/chatViewModel.js'; import { ChatModeKind } from '../../common/constants.js'; import { IChatWidgetService } from '../chat.js'; import { CHAT_CATEGORY } from './chatActions.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.ts index 987405c8dc5..a8ad2887cac 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.ts @@ -21,12 +21,12 @@ import { IInstantiationService } from '../../../../../platform/instantiation/com import { KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; import { IWorkbenchContribution, registerWorkbenchContribution2, WorkbenchPhase } from '../../../../common/contributions.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { ConfirmedReason, IChatToolInvocation, ToolConfirmKind } from '../../common/chatService.js'; -import { isResponseVM } from '../../common/chatViewModel.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { ConfirmedReason, IChatToolInvocation, ToolConfirmKind } from '../../common/chatService/chatService.js'; +import { isResponseVM } from '../../common/model/chatViewModel.js'; import { ChatModeKind } from '../../common/constants.js'; import { IChatWidget, IChatWidgetService } from '../chat.js'; -import { ToolsScope } from '../chatSelectedTools.js'; +import { ToolsScope } from '../widget/input/chatSelectedTools.js'; import { CHAT_CATEGORY } from './chatActions.js'; import { showToolsPicker } from './chatToolPicker.js'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.ts b/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.ts index e6507106aa9..75a41db3f6e 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.ts @@ -23,8 +23,8 @@ import { McpCommandIds } from '../../../mcp/common/mcpCommandIds.js'; import { IMcpRegistry } from '../../../mcp/common/mcpRegistryTypes.js'; import { IMcpServer, IMcpService, IMcpWorkbenchService, McpConnectionState, McpServerCacheState, McpServerEditorTab } from '../../../mcp/common/mcpTypes.js'; import { startServerAndWaitForLiveTools } from '../../../mcp/common/mcpTypesUtils.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource, ToolSet } from '../../common/languageModelToolsService.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource, ToolSet } from '../../common/tools/languageModelToolsService.js'; import { ConfigureToolSets } from '../tools/toolSetsContribution.js'; const enum BucketOrdinal { User, BuiltIn, Mcp, Extension } diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatTransfer.ts b/src/vs/workbench/contrib/chat/browser/actions/chatTransfer.ts index 8825330db97..ca47791dd1e 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatTransfer.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatTransfer.ts @@ -5,7 +5,7 @@ import { IWorkbenchContribution } from '../../../../common/contributions.js'; import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { IChatTransferService } from '../../common/chatTransferService.js'; +import { IChatTransferService } from '../../common/model/chatTransferService.js'; export class ChatTransferContribution extends Disposable implements IWorkbenchContribution { static readonly ID = 'workbench.contrib.chatTransfer'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.ts b/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.ts index fd6be070247..2631365f2c3 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.ts @@ -34,10 +34,10 @@ import { insertCell } from '../../../notebook/browser/controller/cellOperations. import { IActiveNotebookEditor, INotebookEditor } from '../../../notebook/browser/notebookBrowser.js'; import { CellKind, ICellEditOperation, NOTEBOOK_EDITOR_ID } from '../../../notebook/common/notebookCommon.js'; import { INotebookService } from '../../../notebook/common/notebookService.js'; -import { ICodeMapperCodeBlock, ICodeMapperRequest, ICodeMapperResponse, ICodeMapperService } from '../../common/chatCodeMapperService.js'; -import { ChatUserAction, IChatService } from '../../common/chatService.js'; -import { IChatRequestViewModel, isRequestVM, isResponseVM } from '../../common/chatViewModel.js'; -import { ICodeBlockActionContext } from '../codeBlockPart.js'; +import { ICodeMapperCodeBlock, ICodeMapperRequest, ICodeMapperResponse, ICodeMapperService } from '../../common/editing/chatCodeMapperService.js'; +import { ChatUserAction, IChatService } from '../../common/chatService/chatService.js'; +import { IChatRequestViewModel, isRequestVM, isResponseVM } from '../../common/model/chatViewModel.js'; +import { ICodeBlockActionContext } from '../widget/chatContentParts/codeBlockPart.js'; export class InsertCodeBlockOperation { constructor( diff --git a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.ts b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.ts index 2a933c2083c..2f7bb4548be 100644 --- a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.ts +++ b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.ts @@ -7,7 +7,7 @@ import { Codicon } from '../../../../../base/common/codicons.js'; import { localize2 } from '../../../../../nls.js'; import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contextkey.js'; import { registerSingleton, InstantiationType } from '../../../../../platform/instantiation/common/extensions.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { AgentSessionsViewerOrientation, AgentSessionsViewerPosition } from './agentSessions.js'; import { IAgentSessionsService, AgentSessionsService } from './agentSessionsService.js'; import { LocalAgentsSessionsProvider } from './localAgentSessionsProvider.js'; diff --git a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.ts b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.ts index 8e79dee979e..dcbc6d576d4 100644 --- a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.ts +++ b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.ts @@ -9,9 +9,9 @@ import { Action2, MenuId, MenuRegistry } from '../../../../../platform/actions/c import { Codicon } from '../../../../../base/common/codicons.js'; import { ServicesAccessor } from '../../../../../editor/browser/editorExtensions.js'; import { AGENT_SESSION_DELETE_ACTION_ID, AGENT_SESSION_RENAME_ACTION_ID, AgentSessionProviders, AgentSessionsViewerOrientation, IAgentSessionsControl } from './agentSessions.js'; -import { IChatService } from '../../common/chatService.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatEditorOptions } from '../chatEditor.js'; +import { IChatService } from '../../common/chatService/chatService.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatEditorOptions } from '../widgetHosts/editor/chatEditor.js'; import { ChatViewId, IChatWidgetService } from '../chat.js'; import { ACTIVE_GROUP, AUX_WINDOW_GROUP, PreferredGroup, SIDE_GROUP } from '../../../../services/editor/common/editorService.js'; import { IViewDescriptorService, ViewContainerLocation } from '../../../../common/views.js'; @@ -19,13 +19,13 @@ import { getPartByLocation } from '../../../../services/views/browser/viewsServi import { IWorkbenchLayoutService, Position } from '../../../../services/layout/browser/layoutService.js'; import { IAgentSessionsService } from './agentSessionsService.js'; import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contextkey.js'; -import { ChatEditorInput, showClearEditingSessionConfirmation } from '../chatEditorInput.js'; +import { ChatEditorInput, showClearEditingSessionConfirmation } from '../widgetHosts/editor/chatEditorInput.js'; import { IDialogService } from '../../../../../platform/dialogs/common/dialogs.js'; import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; import { ChatConfiguration } from '../../common/constants.js'; import { ACTION_ID_NEW_CHAT, CHAT_CATEGORY } from '../actions/chatActions.js'; import { IViewsService } from '../../../../services/views/common/viewsService.js'; -import { ChatViewPane } from '../chatViewPane.js'; +import { ChatViewPane } from '../widgetHosts/viewPane/chatViewPane.js'; import { ICommandService } from '../../../../../platform/commands/common/commands.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; import { AgentSessionsPicker } from './agentSessionsPicker.js'; diff --git a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.ts b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.ts index 3b7cd88000a..4a6ddb6a790 100644 --- a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.ts +++ b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import { IContextKey, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; import { IOpenEvent, WorkbenchCompressibleAsyncDataTree } from '../../../../../platform/list/browser/listService.js'; @@ -31,7 +31,7 @@ import { HoverPosition } from '../../../../../base/browser/ui/hover/hoverWidget. import { URI } from '../../../../../base/common/uri.js'; import { openSession } from './agentSessionsOpener.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; -import { ChatEditorInput } from '../chatEditorInput.js'; +import { ChatEditorInput } from '../widgetHosts/editor/chatEditorInput.js'; export interface IAgentSessionsControlOptions extends IAgentSessionsSorterOptions { readonly overrideStyles?: IStyleOverride; diff --git a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.ts b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.ts index 64b1d579aa0..c895c8f8eaf 100644 --- a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.ts +++ b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.ts @@ -5,7 +5,7 @@ import { IAgentSession, isLocalAgentSessionItem } from './agentSessionsModel.js'; import { ServicesAccessor } from '../../../../../editor/browser/editorExtensions.js'; -import { IChatEditorOptions } from '../chatEditor.js'; +import { IChatEditorOptions } from '../widgetHosts/editor/chatEditor.js'; import { ChatViewPaneTarget, IChatWidgetService } from '../chat.js'; import { ACTIVE_GROUP, SIDE_GROUP } from '../../../../services/editor/common/editorService.js'; import { IEditorOptions } from '../../../../../platform/editor/common/editor.js'; diff --git a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.ts b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.ts index 8ba1015a86d..2e8e75854d6 100644 --- a/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.ts +++ b/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.ts @@ -20,7 +20,7 @@ import { Codicon } from '../../../../../base/common/codicons.js'; import { fromNow, getDurationString } from '../../../../../base/common/date.js'; import { FuzzyScore, createMatches } from '../../../../../base/common/filters.js'; import { IMarkdownRendererService } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { allowedChatMarkdownHtmlTags } from '../chatContentMarkdownRenderer.js'; +import { allowedChatMarkdownHtmlTags } from '../widget/chatContentMarkdownRenderer.js'; import { IProductService } from '../../../../../platform/product/common/productService.js'; import { IDragAndDropData } from '../../../../../base/browser/dnd.js'; import { ListViewTargetSector } from '../../../../../base/browser/ui/list/listView.js'; @@ -34,7 +34,7 @@ import { IntervalTimer } from '../../../../../base/common/async.js'; import { MenuWorkbenchToolBar } from '../../../../../platform/actions/browser/toolbar.js'; import { MenuId } from '../../../../../platform/actions/common/actions.js'; import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; import { Event } from '../../../../../base/common/event.js'; import { renderAsPlaintext } from '../../../../../base/browser/markdownRenderer.js'; diff --git a/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.ts b/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.ts index 9bca713dc28..499cc8015c7 100644 --- a/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.ts +++ b/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.ts @@ -11,10 +11,10 @@ import { Disposable } from '../../../../../base/common/lifecycle.js'; import { ResourceSet } from '../../../../../base/common/map.js'; import { Schemas } from '../../../../../base/common/network.js'; import { IWorkbenchContribution } from '../../../../common/contributions.js'; -import { IChatModel } from '../../common/chatModel.js'; -import { IChatDetail, IChatService, ResponseModelState } from '../../common/chatService.js'; +import { IChatModel } from '../../common/model/chatModel.js'; +import { IChatDetail, IChatService, ResponseModelState } from '../../common/chatService/chatService.js'; import { ChatSessionStatus, IChatSessionItem, IChatSessionItemProvider, IChatSessionsService, localChatSessionType } from '../../common/chatSessionsService.js'; -import { getChatSessionType } from '../../common/chatUri.js'; +import { getChatSessionType } from '../../common/model/chatUri.js'; interface IChatSessionItemWithProvider extends IChatSessionItem { readonly provider: IChatSessionItemProvider; diff --git a/src/vs/workbench/contrib/chat/browser/chatAttachmentModel.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.ts similarity index 86% rename from src/vs/workbench/contrib/chat/browser/chatAttachmentModel.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.ts index b1adb8f9158..018856a80a1 100644 --- a/src/vs/workbench/contrib/chat/browser/chatAttachmentModel.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentModel.ts @@ -3,19 +3,19 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { URI } from '../../../../base/common/uri.js'; -import { Emitter } from '../../../../base/common/event.js'; -import { basename } from '../../../../base/common/resources.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { combinedDisposable, Disposable, DisposableMap, IDisposable } from '../../../../base/common/lifecycle.js'; -import { IChatRequestFileEntry, IChatRequestVariableEntry, isPromptFileVariableEntry } from '../common/chatVariableEntries.js'; -import { FileChangeType, IFileService } from '../../../../platform/files/common/files.js'; -import { ISharedWebContentExtractorService } from '../../../../platform/webContentExtractor/common/webContentExtractor.js'; -import { Schemas } from '../../../../base/common/network.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { Emitter } from '../../../../../base/common/event.js'; +import { basename } from '../../../../../base/common/resources.js'; +import { IRange } from '../../../../../editor/common/core/range.js'; +import { combinedDisposable, Disposable, DisposableMap, IDisposable } from '../../../../../base/common/lifecycle.js'; +import { IChatRequestFileEntry, IChatRequestVariableEntry, isPromptFileVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { FileChangeType, IFileService } from '../../../../../platform/files/common/files.js'; +import { ISharedWebContentExtractorService } from '../../../../../platform/webContentExtractor/common/webContentExtractor.js'; +import { Schemas } from '../../../../../base/common/network.js'; import { IChatAttachmentResolveService } from './chatAttachmentResolveService.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { equals } from '../../../../base/common/objects.js'; -import { Iterable } from '../../../../base/common/iterator.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { equals } from '../../../../../base/common/objects.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; export interface IChatAttachmentChangeEvent { readonly deleted: readonly string[]; diff --git a/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.ts similarity index 82% rename from src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.ts index baf6dc2c709..60e6559ffc3 100644 --- a/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.ts @@ -3,34 +3,34 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { VSBuffer } from '../../../../base/common/buffer.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { basename } from '../../../../base/common/resources.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { SymbolKinds } from '../../../../editor/common/languages.js'; -import { ITextModelService } from '../../../../editor/common/services/resolverService.js'; -import { localize } from '../../../../nls.js'; -import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js'; -import { IDraggedResourceEditorInput, MarkerTransferData, DocumentSymbolTransferData, NotebookCellOutputTransferData } from '../../../../platform/dnd/browser/dnd.js'; -import { IFileService } from '../../../../platform/files/common/files.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { MarkerSeverity } from '../../../../platform/markers/common/markers.js'; -import { isUntitledResourceEditorInput } from '../../../common/editor.js'; -import { EditorInput } from '../../../common/editor/editorInput.js'; -import { IEditorService } from '../../../services/editor/common/editorService.js'; -import { IExtensionService, isProposedApiEnabled } from '../../../services/extensions/common/extensions.js'; -import { UntitledTextEditorInput } from '../../../services/untitled/common/untitledTextEditorInput.js'; -import { createNotebookOutputVariableEntry, NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT_CONST } from '../../notebook/browser/contrib/chat/notebookChatUtils.js'; -import { getOutputViewModelFromId } from '../../notebook/browser/controller/cellOutputActions.js'; -import { getNotebookEditorFromEditorPane } from '../../notebook/browser/notebookBrowser.js'; -import { SCMHistoryItemTransferData } from '../../scm/browser/scmHistoryChatContext.js'; -import { CHAT_ATTACHABLE_IMAGE_MIME_TYPES, getAttachableImageExtension } from '../common/chatModel.js'; -import { IChatRequestVariableEntry, OmittedState, IDiagnosticVariableEntry, IDiagnosticVariableEntryFilterData, ISymbolVariableEntry, toPromptFileVariableEntry, PromptFileVariableKind, ISCMHistoryItemVariableEntry } from '../common/chatVariableEntries.js'; -import { getPromptsTypeForLanguageId, PromptsType } from '../common/promptSyntax/promptTypes.js'; -import { imageToHash } from './chatPasteProviders.js'; -import { resizeImage } from './chatImageUtils.js'; +import { VSBuffer } from '../../../../../base/common/buffer.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { basename } from '../../../../../base/common/resources.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { IRange } from '../../../../../editor/common/core/range.js'; +import { SymbolKinds } from '../../../../../editor/common/languages.js'; +import { ITextModelService } from '../../../../../editor/common/services/resolverService.js'; +import { localize } from '../../../../../nls.js'; +import { IDialogService } from '../../../../../platform/dialogs/common/dialogs.js'; +import { IDraggedResourceEditorInput, MarkerTransferData, DocumentSymbolTransferData, NotebookCellOutputTransferData } from '../../../../../platform/dnd/browser/dnd.js'; +import { IFileService } from '../../../../../platform/files/common/files.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { MarkerSeverity } from '../../../../../platform/markers/common/markers.js'; +import { isUntitledResourceEditorInput } from '../../../../common/editor.js'; +import { EditorInput } from '../../../../common/editor/editorInput.js'; +import { IEditorService } from '../../../../services/editor/common/editorService.js'; +import { IExtensionService, isProposedApiEnabled } from '../../../../services/extensions/common/extensions.js'; +import { UntitledTextEditorInput } from '../../../../services/untitled/common/untitledTextEditorInput.js'; +import { createNotebookOutputVariableEntry, NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT_CONST } from '../../../notebook/browser/contrib/chat/notebookChatUtils.js'; +import { getOutputViewModelFromId } from '../../../notebook/browser/controller/cellOutputActions.js'; +import { getNotebookEditorFromEditorPane } from '../../../notebook/browser/notebookBrowser.js'; +import { SCMHistoryItemTransferData } from '../../../scm/browser/scmHistoryChatContext.js'; +import { CHAT_ATTACHABLE_IMAGE_MIME_TYPES, getAttachableImageExtension } from '../../common/model/chatModel.js'; +import { IChatRequestVariableEntry, OmittedState, IDiagnosticVariableEntry, IDiagnosticVariableEntryFilterData, ISymbolVariableEntry, toPromptFileVariableEntry, PromptFileVariableKind, ISCMHistoryItemVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { getPromptsTypeForLanguageId, PromptsType } from '../../common/promptSyntax/promptTypes.js'; +import { imageToHash } from '../widget/input/editor/chatPasteProviders.js'; +import { resizeImage } from '../chatImageUtils.js'; export const IChatAttachmentResolveService = createDecorator('IChatAttachmentResolveService'); @@ -319,4 +319,3 @@ function getMimeTypeFromPath(match: RegExpExecArray): string | undefined { const ext = match[1].toLowerCase(); return CHAT_ATTACHABLE_IMAGE_MIME_TYPES[ext]; } - diff --git a/src/vs/workbench/contrib/chat/browser/chatAttachmentWidgets.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.ts similarity index 91% rename from src/vs/workbench/contrib/chat/browser/chatAttachmentWidgets.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.ts index e6e0c0a7aae..df8d5a18201 100644 --- a/src/vs/workbench/contrib/chat/browser/chatAttachmentWidgets.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.ts @@ -3,64 +3,64 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { $ } from '../../../../base/browser/dom.js'; -import { StandardKeyboardEvent } from '../../../../base/browser/keyboardEvent.js'; -import { StandardMouseEvent } from '../../../../base/browser/mouseEvent.js'; -import { Button } from '../../../../base/browser/ui/button/button.js'; -import { HoverStyle, IDelayedHoverOptions, type IHoverLifecycleOptions, type IHoverOptions } from '../../../../base/browser/ui/hover/hover.js'; -import { createInstantHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js'; -import { HoverPosition } from '../../../../base/browser/ui/hover/hoverWidget.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import * as event from '../../../../base/common/event.js'; -import { MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { KeyCode } from '../../../../base/common/keyCodes.js'; -import { Disposable, DisposableStore, IDisposable } from '../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { basename, dirname } from '../../../../base/common/path.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { EditorContextKeys } from '../../../../editor/common/editorContextKeys.js'; -import { LanguageFeatureRegistry } from '../../../../editor/common/languageFeatureRegistry.js'; -import { Location, SymbolKind } from '../../../../editor/common/languages.js'; -import { ILanguageService } from '../../../../editor/common/languages/language.js'; -import { ILanguageFeaturesService } from '../../../../editor/common/services/languageFeatures.js'; -import { IModelService } from '../../../../editor/common/services/model.js'; -import { ITextModelService } from '../../../../editor/common/services/resolverService.js'; -import { localize } from '../../../../nls.js'; -import { getFlatContextMenuActions } from '../../../../platform/actions/browser/menuEntryActionViewItem.js'; -import { IMenuService, MenuId } from '../../../../platform/actions/common/actions.js'; -import { ICommandService } from '../../../../platform/commands/common/commands.js'; -import { IContextKey, IContextKeyService, IScopedContextKeyService, RawContextKey } from '../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.js'; -import { fillInSymbolsDragData } from '../../../../platform/dnd/browser/dnd.js'; -import { IOpenEditorOptions, registerOpenEditorListeners } from '../../../../platform/editor/browser/editor.js'; -import { ITextEditorOptions } from '../../../../platform/editor/common/editor.js'; -import { FileKind, IFileService } from '../../../../platform/files/common/files.js'; -import { IHoverService } from '../../../../platform/hover/browser/hover.js'; -import { IInstantiationService, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; -import { ILabelService } from '../../../../platform/label/common/label.js'; -import { IMarkdownRendererService } from '../../../../platform/markdown/browser/markdownRenderer.js'; -import { IOpenerService, OpenInternalOptions } from '../../../../platform/opener/common/opener.js'; -import { FolderThemeIcon, IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { fillEditorsDragData } from '../../../browser/dnd.js'; -import { IFileLabelOptions, IResourceLabel, ResourceLabels } from '../../../browser/labels.js'; -import { ResourceContextKey } from '../../../common/contextkeys.js'; -import { IEditorService, SIDE_GROUP } from '../../../services/editor/common/editorService.js'; -import { IPreferencesService } from '../../../services/preferences/common/preferences.js'; -import { revealInSideBarCommand } from '../../files/browser/fileActions.contribution.js'; -import { CellUri } from '../../notebook/common/notebookCommon.js'; -import { INotebookService } from '../../notebook/common/notebookService.js'; -import { toHistoryItemHoverContent } from '../../scm/browser/scmHistory.js'; -import { getHistoryItemEditorTitle } from '../../scm/browser/util.js'; -import { ITerminalService } from '../../terminal/browser/terminal.js'; -import { IChatContentReference } from '../common/chatService.js'; -import { IChatRequestPasteVariableEntry, IChatRequestVariableEntry, IElementVariableEntry, INotebookOutputVariableEntry, IPromptFileVariableEntry, IPromptTextVariableEntry, ISCMHistoryItemVariableEntry, OmittedState, PromptFileVariableKind, ChatRequestToolReferenceEntry, ISCMHistoryItemChangeVariableEntry, ISCMHistoryItemChangeRangeVariableEntry, ITerminalVariableEntry } from '../common/chatVariableEntries.js'; -import { ILanguageModelChatMetadataAndIdentifier, ILanguageModelsService } from '../common/languageModels.js'; -import { ILanguageModelToolsService, ToolSet } from '../common/languageModelToolsService.js'; -import { getCleanPromptName } from '../common/promptSyntax/config/promptFileLocations.js'; +import * as dom from '../../../../../base/browser/dom.js'; +import { $ } from '../../../../../base/browser/dom.js'; +import { StandardKeyboardEvent } from '../../../../../base/browser/keyboardEvent.js'; +import { StandardMouseEvent } from '../../../../../base/browser/mouseEvent.js'; +import { Button } from '../../../../../base/browser/ui/button/button.js'; +import { HoverStyle, IDelayedHoverOptions, type IHoverLifecycleOptions, type IHoverOptions } from '../../../../../base/browser/ui/hover/hover.js'; +import { createInstantHoverDelegate } from '../../../../../base/browser/ui/hover/hoverDelegateFactory.js'; +import { HoverPosition } from '../../../../../base/browser/ui/hover/hoverWidget.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import * as event from '../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; +import { KeyCode } from '../../../../../base/common/keyCodes.js'; +import { Disposable, DisposableStore, IDisposable } from '../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../base/common/network.js'; +import { basename, dirname } from '../../../../../base/common/path.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { IRange } from '../../../../../editor/common/core/range.js'; +import { EditorContextKeys } from '../../../../../editor/common/editorContextKeys.js'; +import { LanguageFeatureRegistry } from '../../../../../editor/common/languageFeatureRegistry.js'; +import { Location, SymbolKind } from '../../../../../editor/common/languages.js'; +import { ILanguageService } from '../../../../../editor/common/languages/language.js'; +import { ILanguageFeaturesService } from '../../../../../editor/common/services/languageFeatures.js'; +import { IModelService } from '../../../../../editor/common/services/model.js'; +import { ITextModelService } from '../../../../../editor/common/services/resolverService.js'; +import { localize } from '../../../../../nls.js'; +import { getFlatContextMenuActions } from '../../../../../platform/actions/browser/menuEntryActionViewItem.js'; +import { IMenuService, MenuId } from '../../../../../platform/actions/common/actions.js'; +import { ICommandService } from '../../../../../platform/commands/common/commands.js'; +import { IContextKey, IContextKeyService, IScopedContextKeyService, RawContextKey } from '../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; +import { fillInSymbolsDragData } from '../../../../../platform/dnd/browser/dnd.js'; +import { IOpenEditorOptions, registerOpenEditorListeners } from '../../../../../platform/editor/browser/editor.js'; +import { ITextEditorOptions } from '../../../../../platform/editor/common/editor.js'; +import { FileKind, IFileService } from '../../../../../platform/files/common/files.js'; +import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService, ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; +import { ILabelService } from '../../../../../platform/label/common/label.js'; +import { IMarkdownRendererService } from '../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IOpenerService, OpenInternalOptions } from '../../../../../platform/opener/common/opener.js'; +import { FolderThemeIcon, IThemeService } from '../../../../../platform/theme/common/themeService.js'; +import { fillEditorsDragData } from '../../../../browser/dnd.js'; +import { IFileLabelOptions, IResourceLabel, ResourceLabels } from '../../../../browser/labels.js'; +import { ResourceContextKey } from '../../../../common/contextkeys.js'; +import { IEditorService, SIDE_GROUP } from '../../../../services/editor/common/editorService.js'; +import { IPreferencesService } from '../../../../services/preferences/common/preferences.js'; +import { revealInSideBarCommand } from '../../../files/browser/fileActions.contribution.js'; +import { CellUri } from '../../../notebook/common/notebookCommon.js'; +import { INotebookService } from '../../../notebook/common/notebookService.js'; +import { toHistoryItemHoverContent } from '../../../scm/browser/scmHistory.js'; +import { getHistoryItemEditorTitle } from '../../../scm/browser/util.js'; +import { ITerminalService } from '../../../terminal/browser/terminal.js'; +import { IChatContentReference } from '../../common/chatService/chatService.js'; +import { IChatRequestPasteVariableEntry, IChatRequestVariableEntry, IElementVariableEntry, INotebookOutputVariableEntry, IPromptFileVariableEntry, IPromptTextVariableEntry, ISCMHistoryItemVariableEntry, OmittedState, PromptFileVariableKind, ChatRequestToolReferenceEntry, ISCMHistoryItemChangeVariableEntry, ISCMHistoryItemChangeRangeVariableEntry, ITerminalVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { ILanguageModelChatMetadataAndIdentifier, ILanguageModelsService } from '../../common/languageModels.js'; +import { ILanguageModelToolsService, ToolSet } from '../../common/tools/languageModelToolsService.js'; +import { getCleanPromptName } from '../../common/promptSyntax/config/promptFileLocations.js'; const commonHoverOptions: Partial = { style: HoverStyle.Pointer, diff --git a/src/vs/workbench/contrib/chat/browser/chatContextPickService.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.ts similarity index 86% rename from src/vs/workbench/contrib/chat/browser/chatContextPickService.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.ts index d351a3d934e..1caf46820df 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContextPickService.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.ts @@ -2,16 +2,16 @@ * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken, CancellationTokenSource } from '../../../../base/common/cancellation.js'; -import { IDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { derived, IObservable, ObservablePromise } from '../../../../base/common/observable.js'; -import { compare } from '../../../../base/common/strings.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { isObject } from '../../../../base/common/types.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IQuickItem, IQuickPickSeparator } from '../../../../platform/quickinput/common/quickInput.js'; -import { IChatRequestVariableEntry } from '../common/chatVariableEntries.js'; -import { IChatWidget } from './chat.js'; +import { CancellationToken, CancellationTokenSource } from '../../../../../base/common/cancellation.js'; +import { IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { derived, IObservable, ObservablePromise } from '../../../../../base/common/observable.js'; +import { compare } from '../../../../../base/common/strings.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { isObject } from '../../../../../base/common/types.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IQuickItem, IQuickPickSeparator } from '../../../../../platform/quickinput/common/quickInput.js'; +import { IChatRequestVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { IChatWidget } from '../chat.js'; export interface IChatContextPickerPickItem extends Partial { diff --git a/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.ts similarity index 98% rename from src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.ts index d20d09279b2..5b15f168c6d 100644 --- a/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.ts @@ -14,9 +14,9 @@ import { Action2, registerAction2 } from '../../../../../platform/actions/common import { ICommandService } from '../../../../../platform/commands/common/commands.js'; import { ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; import { ILabelService } from '../../../../../platform/label/common/label.js'; -import { IChatRequestVariableValue, IDynamicVariable } from '../../common/chatVariables.js'; +import { IChatRequestVariableValue, IDynamicVariable } from '../../common/attachments/chatVariables.js'; import { IChatWidget } from '../chat.js'; -import { IChatWidgetContrib } from '../chatWidget.js'; +import { IChatWidgetContrib } from '../widget/chatWidget.js'; export const dynamicVariableDecorationType = 'chat-dynamic-variable'; diff --git a/src/vs/workbench/contrib/chat/browser/contrib/chatImplicitContext.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.ts similarity index 98% rename from src/vs/workbench/contrib/chat/browser/contrib/chatImplicitContext.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.ts index de44a68638f..069deb6aa09 100644 --- a/src/vs/workbench/contrib/chat/browser/contrib/chatImplicitContext.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatImplicitContext.ts @@ -21,14 +21,14 @@ import { IEditorService } from '../../../../services/editor/common/editorService import { getNotebookEditorFromEditorPane, INotebookEditor } from '../../../notebook/browser/notebookBrowser.js'; import { WebviewEditor } from '../../../webviewPanel/browser/webviewEditor.js'; import { WebviewInput } from '../../../webviewPanel/browser/webviewEditorInput.js'; -import { IChatEditingService } from '../../common/chatEditingService.js'; -import { IChatService } from '../../common/chatService.js'; -import { IChatRequestImplicitVariableEntry, IChatRequestVariableEntry, isStringImplicitContextValue, StringChatContextValue } from '../../common/chatVariableEntries.js'; +import { IChatEditingService } from '../../common/editing/chatEditingService.js'; +import { IChatService } from '../../common/chatService/chatService.js'; +import { IChatRequestImplicitVariableEntry, IChatRequestVariableEntry, isStringImplicitContextValue, StringChatContextValue } from '../../common/attachments/chatVariableEntries.js'; import { ChatAgentLocation } from '../../common/constants.js'; import { ILanguageModelIgnoredFilesService } from '../../common/ignoredFiles.js'; import { getPromptsTypeForLanguageId } from '../../common/promptSyntax/promptTypes.js'; import { IChatWidget, IChatWidgetService } from '../chat.js'; -import { IChatContextService } from '../chatContextService.js'; +import { IChatContextService } from '../contextContrib/chatContextService.js'; export class ChatImplicitContextContribution extends Disposable implements IWorkbenchContribution { static readonly ID = 'chat.implicitContext'; diff --git a/src/vs/workbench/contrib/chat/browser/contrib/chatInputRelatedFilesContrib.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatInputRelatedFilesContrib.ts similarity index 99% rename from src/vs/workbench/contrib/chat/browser/contrib/chatInputRelatedFilesContrib.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatInputRelatedFilesContrib.ts index 5d264f5da3e..f79a3cbf7b0 100644 --- a/src/vs/workbench/contrib/chat/browser/contrib/chatInputRelatedFilesContrib.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatInputRelatedFilesContrib.ts @@ -12,7 +12,7 @@ import { isEqual } from '../../../../../base/common/resources.js'; import { URI } from '../../../../../base/common/uri.js'; import { localize } from '../../../../../nls.js'; import { IWorkbenchContribution } from '../../../../common/contributions.js'; -import { IChatEditingService, IChatEditingSession } from '../../common/chatEditingService.js'; +import { IChatEditingService, IChatEditingSession } from '../../common/editing/chatEditingService.js'; import { IChatWidget, IChatWidgetService } from '../chat.js'; export class ChatRelatedFilesContribution extends Disposable implements IWorkbenchContribution { diff --git a/src/vs/workbench/contrib/chat/browser/contrib/chatScreenshotContext.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.ts similarity index 89% rename from src/vs/workbench/contrib/chat/browser/contrib/chatScreenshotContext.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.ts index 8e18015fc20..ece0405db4e 100644 --- a/src/vs/workbench/contrib/chat/browser/contrib/chatScreenshotContext.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.ts @@ -5,7 +5,7 @@ import { VSBuffer } from '../../../../../base/common/buffer.js'; import { localize } from '../../../../../nls.js'; -import { IChatRequestVariableEntry } from '../../common/chatVariableEntries.js'; +import { IChatRequestVariableEntry } from '../../common/attachments/chatVariableEntries.js'; export const ScreenshotVariableId = 'screenshot-focused-window'; diff --git a/src/vs/workbench/contrib/chat/browser/chatVariables.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatVariables.ts rename to src/vs/workbench/contrib/chat/browser/attachments/chatVariables.ts index 6ac4bf70bba..1644d5ef327 100644 --- a/src/vs/workbench/contrib/chat/browser/chatVariables.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IChatVariablesService, IDynamicVariable } from '../common/chatVariables.js'; -import { IToolAndToolSetEnablementMap } from '../common/languageModelToolsService.js'; -import { IChatWidgetService } from './chat.js'; -import { ChatDynamicVariableModel } from './contrib/chatDynamicVariables.js'; -import { Range } from '../../../../editor/common/core/range.js'; -import { URI } from '../../../../base/common/uri.js'; +import { IChatVariablesService, IDynamicVariable } from '../../common/attachments/chatVariables.js'; +import { IToolAndToolSetEnablementMap } from '../../common/tools/languageModelToolsService.js'; +import { IChatWidgetService } from '../chat.js'; +import { ChatDynamicVariableModel } from './chatDynamicVariables.js'; +import { Range } from '../../../../../editor/common/core/range.js'; +import { URI } from '../../../../../base/common/uri.js'; export class ChatVariablesService implements IChatVariablesService { declare _serviceBrand: undefined; diff --git a/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.ts b/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.ts index e94d7ebde25..ea58286526e 100644 --- a/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/implicitContextAttachment.ts @@ -28,10 +28,10 @@ import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; import { ILabelService } from '../../../../../platform/label/common/label.js'; import { IResourceLabel, ResourceLabels } from '../../../../browser/labels.js'; import { ResourceContextKey } from '../../../../common/contextkeys.js'; -import { IChatRequestImplicitVariableEntry, IChatRequestStringVariableEntry, isStringImplicitContextValue } from '../../common/chatVariableEntries.js'; +import { IChatRequestImplicitVariableEntry, IChatRequestStringVariableEntry, isStringImplicitContextValue } from '../../common/attachments/chatVariableEntries.js'; import { IChatWidget } from '../chat.js'; -import { ChatAttachmentModel } from '../chatAttachmentModel.js'; -import { IChatContextService } from '../chatContextService.js'; +import { ChatAttachmentModel } from './chatAttachmentModel.js'; +import { IChatContextService } from '../contextContrib/chatContextService.js'; export class ImplicitContextAttachmentWidget extends Disposable { public readonly domNode: HTMLElement; diff --git a/src/vs/workbench/contrib/chat/browser/media/simpleBrowserOverlay.css b/src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/simpleBrowserOverlay.css rename to src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.ts b/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.ts similarity index 99% rename from src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.ts rename to src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.ts index eb265a8b338..ddd15d9dd8e 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import '../media/simpleBrowserOverlay.css'; +import './media/simpleBrowserOverlay.css'; import { combinedDisposable, DisposableMap, DisposableStore, toDisposable } from '../../../../../base/common/lifecycle.js'; import { autorun, derivedOpts, observableFromEvent, observableSignalFromEvent } from '../../../../../base/common/observable.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; @@ -30,7 +30,7 @@ import { IFileService } from '../../../../../platform/files/common/files.js'; import { IEnvironmentService } from '../../../../../platform/environment/common/environment.js'; import { URI } from '../../../../../base/common/uri.js'; import { ILogService } from '../../../../../platform/log/common/log.js'; -import { IChatRequestVariableEntry } from '../../common/chatVariableEntries.js'; +import { IChatRequestVariableEntry } from '../../common/attachments/chatVariableEntries.js'; import { IPreferencesService } from '../../../../services/preferences/common/preferences.js'; import { IBrowserElementsService } from '../../../../services/browserElements/browser/browserElementsService.js'; import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chat.contribution.ts b/src/vs/workbench/contrib/chat/browser/chat.contribution.ts index 74d3285f678..fac472cb5be 100644 --- a/src/vs/workbench/contrib/chat/browser/chat.contribution.ts +++ b/src/vs/workbench/contrib/chat/browser/chat.contribution.ts @@ -31,27 +31,27 @@ import { ChatEntitlement, IChatEntitlementService } from '../../../services/chat import { IEditorResolverService, RegisteredEditorPriority } from '../../../services/editor/common/editorResolverService.js'; import { AddConfigurationType, AssistedTypes } from '../../mcp/browser/mcpCommandsAddConfiguration.js'; import { allDiscoverySources, discoverySourceSettingsLabel, mcpDiscoverySection, mcpServerSamplingSection } from '../../mcp/common/mcpConfiguration.js'; -import { ChatAgentNameService, ChatAgentService, IChatAgentNameService, IChatAgentService } from '../common/chatAgents.js'; -import { CodeMapperService, ICodeMapperService } from '../common/chatCodeMapperService.js'; -import '../common/chatColors.js'; -import { IChatEditingService } from '../common/chatEditingService.js'; -import { IChatLayoutService } from '../common/chatLayoutService.js'; +import { ChatAgentNameService, ChatAgentService, IChatAgentNameService, IChatAgentService } from '../common/participants/chatAgents.js'; +import { CodeMapperService, ICodeMapperService } from '../common/editing/chatCodeMapperService.js'; +import '../common/widget/chatColors.js'; +import { IChatEditingService } from '../common/editing/chatEditingService.js'; +import { IChatLayoutService } from '../common/widget/chatLayoutService.js'; import { ChatModeService, IChatMode, IChatModeService } from '../common/chatModes.js'; -import { ChatResponseResourceFileSystemProvider } from '../common/chatResponseResourceFileSystemProvider.js'; -import { IChatService } from '../common/chatService.js'; -import { ChatService } from '../common/chatServiceImpl.js'; +import { ChatResponseResourceFileSystemProvider } from '../common/widget/chatResponseResourceFileSystemProvider.js'; +import { IChatService } from '../common/chatService/chatService.js'; +import { ChatService } from '../common/chatService/chatServiceImpl.js'; import { IChatSessionsService } from '../common/chatSessionsService.js'; -import { ChatSlashCommandService, IChatSlashCommandService } from '../common/chatSlashCommands.js'; -import { ChatTodoListService, IChatTodoListService } from '../common/chatTodoListService.js'; -import { ChatTransferService, IChatTransferService } from '../common/chatTransferService.js'; -import { IChatVariablesService } from '../common/chatVariables.js'; -import { ChatWidgetHistoryService, IChatWidgetHistoryService } from '../common/chatWidgetHistoryService.js'; +import { ChatSlashCommandService, IChatSlashCommandService } from '../common/participants/chatSlashCommands.js'; +import { ChatTodoListService, IChatTodoListService } from '../common/tools/chatTodoListService.js'; +import { ChatTransferService, IChatTransferService } from '../common/model/chatTransferService.js'; +import { IChatVariablesService } from '../common/attachments/chatVariables.js'; +import { ChatWidgetHistoryService, IChatWidgetHistoryService } from '../common/widget/chatWidgetHistoryService.js'; import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../common/constants.js'; import { ILanguageModelIgnoredFilesService, LanguageModelIgnoredFilesService } from '../common/ignoredFiles.js'; import { ILanguageModelsService, LanguageModelsService } from '../common/languageModels.js'; import { ILanguageModelStatsService, LanguageModelStatsService } from '../common/languageModelStats.js'; -import { ILanguageModelToolsConfirmationService } from '../common/languageModelToolsConfirmationService.js'; -import { ILanguageModelToolsService } from '../common/languageModelToolsService.js'; +import { ILanguageModelToolsConfirmationService } from '../common/tools/languageModelToolsConfirmationService.js'; +import { ILanguageModelToolsService } from '../common/tools/languageModelToolsService.js'; import { ChatPromptFilesExtensionPointHandler } from '../common/promptSyntax/chatPromptFilesContribution.js'; import { PromptsConfig } from '../common/promptSyntax/config/config.js'; import { INSTRUCTIONS_DEFAULT_SOURCE_FOLDER, INSTRUCTION_FILE_EXTENSION, LEGACY_MODE_DEFAULT_SOURCE_FOLDER, LEGACY_MODE_FILE_EXTENSION, PROMPT_DEFAULT_SOURCE_FOLDER, PROMPT_FILE_EXTENSION } from '../common/promptSyntax/config/promptFileLocations.js'; @@ -60,7 +60,7 @@ import { AGENT_DOCUMENTATION_URL, INSTRUCTIONS_DOCUMENTATION_URL, PROMPT_DOCUMEN import { IPromptsService } from '../common/promptSyntax/service/promptsService.js'; import { PromptsService } from '../common/promptSyntax/service/promptsServiceImpl.js'; import { LanguageModelToolsExtensionPointHandler } from '../common/tools/languageModelToolsContribution.js'; -import { BuiltinToolsContribution } from '../common/tools/tools.js'; +import { BuiltinToolsContribution } from '../common/tools/builtinTools/tools.js'; import { IVoiceChatService, VoiceChatService } from '../common/voiceChatService.js'; import { registerChatAccessibilityActions } from './actions/chatAccessibilityActions.js'; import { AgentChatAccessibilityHelp, EditsChatAccessibilityHelp, PanelChatAccessibilityHelp, QuickChatAccessibilityHelp } from './actions/chatAccessibilityHelp.js'; @@ -87,50 +87,50 @@ import { registerChatToolActions } from './actions/chatToolActions.js'; import { ChatTransferContribution } from './actions/chatTransfer.js'; import './agentSessions/agentSessions.contribution.js'; import { IChatAccessibilityService, IChatCodeBlockContextProviderService, IChatWidgetService, IQuickChatService } from './chat.js'; -import { ChatAccessibilityService } from './chatAccessibilityService.js'; -import './chatAttachmentModel.js'; -import './chatStatusWidget.js'; -import { ChatAttachmentResolveService, IChatAttachmentResolveService } from './chatAttachmentResolveService.js'; -import { ChatMarkdownAnchorService, IChatMarkdownAnchorService } from './chatContentParts/chatMarkdownAnchorService.js'; -import { ChatContextPickService, IChatContextPickService } from './chatContextPickService.js'; -import { ChatInputBoxContentProvider } from './chatEdinputInputContentProvider.js'; +import { ChatAccessibilityService } from './accessibility/chatAccessibilityService.js'; +import './attachments/chatAttachmentModel.js'; +import './widget/input/chatStatusWidget.js'; +import { ChatAttachmentResolveService, IChatAttachmentResolveService } from './attachments/chatAttachmentResolveService.js'; +import { ChatMarkdownAnchorService, IChatMarkdownAnchorService } from './widget/chatContentParts/chatMarkdownAnchorService.js'; +import { ChatContextPickService, IChatContextPickService } from './attachments/chatContextPickService.js'; +import { ChatInputBoxContentProvider } from './widget/input/editor/chatEditorInputContentProvider.js'; import { ChatEditingEditorAccessibility } from './chatEditing/chatEditingEditorAccessibility.js'; import { registerChatEditorActions } from './chatEditing/chatEditingEditorActions.js'; import { ChatEditingEditorContextKeys } from './chatEditing/chatEditingEditorContextKeys.js'; import { ChatEditingEditorOverlay } from './chatEditing/chatEditingEditorOverlay.js'; import { ChatEditingService } from './chatEditing/chatEditingServiceImpl.js'; import { ChatEditingNotebookFileSystemProviderContrib } from './chatEditing/notebook/chatEditingNotebookFileSystemProvider.js'; -import { SimpleBrowserOverlay } from './chatEditing/simpleBrowserEditorOverlay.js'; -import { ChatEditor, IChatEditorOptions } from './chatEditor.js'; -import { ChatEditorInput, ChatEditorInputSerializer } from './chatEditorInput.js'; -import { ChatLayoutService } from './chatLayoutService.js'; +import { SimpleBrowserOverlay } from './attachments/simpleBrowserEditorOverlay.js'; +import { ChatEditor, IChatEditorOptions } from './widgetHosts/editor/chatEditor.js'; +import { ChatEditorInput, ChatEditorInputSerializer } from './widgetHosts/editor/chatEditorInput.js'; +import { ChatLayoutService } from './widget/chatLayoutService.js'; import './chatManagement/chatManagement.contribution.js'; -import { agentSlashCommandToMarkdown, agentToMarkdown } from './chatMarkdownDecorationsRenderer.js'; +import { agentSlashCommandToMarkdown, agentToMarkdown } from './widget/chatContentParts/chatMarkdownDecorationsRenderer.js'; import { ChatOutputRendererService, IChatOutputRendererService } from './chatOutputItemRenderer.js'; import { ChatCompatibilityNotifier, ChatExtensionPointHandler } from './chatParticipant.contribution.js'; -import { ChatPasteProvidersFeature } from './chatPasteProviders.js'; -import { QuickChatService } from './chatQuick.js'; -import { ChatResponseAccessibleView } from './chatResponseAccessibleView.js'; -import { ChatTerminalOutputAccessibleView } from './chatTerminalOutputAccessibleView.js'; +import { ChatPasteProvidersFeature } from './widget/input/editor/chatPasteProviders.js'; +import { QuickChatService } from './widgetHosts/chatQuick.js'; +import { ChatResponseAccessibleView } from './accessibility/chatResponseAccessibleView.js'; +import { ChatTerminalOutputAccessibleView } from './accessibility/chatTerminalOutputAccessibleView.js'; import { ChatSetupContribution, ChatTeardownContribution } from './chatSetup/chatSetupContributions.js'; import { ChatStatusBarEntry } from './chatStatus/chatStatusEntry.js'; -import { ChatVariablesService } from './chatVariables.js'; -import { ChatWidget } from './chatWidget.js'; +import { ChatVariablesService } from './attachments/chatVariables.js'; +import { ChatWidget } from './widget/chatWidget.js'; import { ChatCodeBlockContextProviderService } from './codeBlockContextProviderService.js'; -import { ChatDynamicVariableModel } from './contrib/chatDynamicVariables.js'; -import { ChatImplicitContextContribution } from './contrib/chatImplicitContext.js'; -import './contrib/chatInputCompletions.js'; -import './contrib/chatInputEditorContrib.js'; -import './contrib/chatInputEditorHover.js'; -import { ChatRelatedFilesContribution } from './contrib/chatInputRelatedFilesContrib.js'; -import { LanguageModelToolsConfirmationService } from './languageModelToolsConfirmationService.js'; -import { LanguageModelToolsService, globalAutoApproveDescription } from './languageModelToolsService.js'; +import { ChatDynamicVariableModel } from './attachments/chatDynamicVariables.js'; +import { ChatImplicitContextContribution } from './attachments/chatImplicitContext.js'; +import './widget/input/editor/chatInputCompletions.js'; +import './widget/input/editor/chatInputEditorContrib.js'; +import './widget/input/editor/chatInputEditorHover.js'; +import { ChatRelatedFilesContribution } from './attachments/chatInputRelatedFilesContrib.js'; +import { LanguageModelToolsConfirmationService } from './tools/languageModelToolsConfirmationService.js'; +import { LanguageModelToolsService, globalAutoApproveDescription } from './tools/languageModelToolsService.js'; import './promptSyntax/promptCodingAgentActionContribution.js'; import './promptSyntax/promptToolsCodeLensProvider.js'; import { PromptUrlHandler } from './promptSyntax/promptUrlHandler.js'; import { ConfigureToolSets, UserToolSetsContributions } from './tools/toolSetsContribution.js'; import { ChatViewsWelcomeHandler } from './viewsWelcome/chatViewsWelcomeHandler.js'; -import { ChatWidgetService } from './chatWidgetService.js'; +import { ChatWidgetService } from './widget/chatWidgetService.js'; import { ChatWindowNotifier } from './chatWindowNotifier.js'; const toolReferenceNameEnumValues: string[] = []; diff --git a/src/vs/workbench/contrib/chat/browser/chat.ts b/src/vs/workbench/contrib/chat/browser/chat.ts index 893d2fac7b4..e4ca8618e39 100644 --- a/src/vs/workbench/contrib/chat/browser/chat.ts +++ b/src/vs/workbench/contrib/chat/browser/chat.ts @@ -14,19 +14,19 @@ import { MenuId } from '../../../../platform/actions/common/actions.js'; import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; import { PreferredGroup } from '../../../services/editor/common/editorService.js'; -import { IChatAgentAttachmentCapabilities, IChatAgentCommand, IChatAgentData } from '../common/chatAgents.js'; -import { IChatResponseModel, IChatModelInputState } from '../common/chatModel.js'; +import { IChatAgentAttachmentCapabilities, IChatAgentCommand, IChatAgentData } from '../common/participants/chatAgents.js'; +import { IChatResponseModel, IChatModelInputState } from '../common/model/chatModel.js'; import { IChatMode } from '../common/chatModes.js'; -import { IParsedChatRequest } from '../common/chatParserTypes.js'; -import { CHAT_PROVIDER_ID } from '../common/chatParticipantContribTypes.js'; -import { IChatElicitationRequest, IChatLocationData, IChatSendRequestOptions } from '../common/chatService.js'; -import { IChatRequestViewModel, IChatResponseViewModel, IChatViewModel } from '../common/chatViewModel.js'; +import { IParsedChatRequest } from '../common/requestParser/chatParserTypes.js'; +import { CHAT_PROVIDER_ID } from '../common/participants/chatParticipantContribTypes.js'; +import { IChatElicitationRequest, IChatLocationData, IChatSendRequestOptions } from '../common/chatService/chatService.js'; +import { IChatRequestViewModel, IChatResponseViewModel, IChatViewModel } from '../common/model/chatViewModel.js'; import { ChatAgentLocation, ChatModeKind } from '../common/constants.js'; -import { ChatAttachmentModel } from './chatAttachmentModel.js'; -import { IChatEditorOptions } from './chatEditor.js'; -import { ChatInputPart } from './chatInputPart.js'; -import { ChatWidget, IChatWidgetContrib } from './chatWidget.js'; -import { ICodeBlockActionContext } from './codeBlockPart.js'; +import { ChatAttachmentModel } from './attachments/chatAttachmentModel.js'; +import { IChatEditorOptions } from './widgetHosts/editor/chatEditor.js'; +import { ChatInputPart } from './widget/input/chatInputPart.js'; +import { ChatWidget, IChatWidgetContrib } from './widget/chatWidget.js'; +import { ICodeBlockActionContext } from './widget/chatContentParts/codeBlockPart.js'; export const IChatWidgetService = createDecorator('chatWidgetService'); diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditing.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditing.ts index 3e35fd8aa13..fb8551f4c1d 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditing.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditing.ts @@ -7,7 +7,7 @@ import { isEqual } from '../../../../../base/common/resources.js'; import { ICodeEditor } from '../../../../../editor/browser/editorBrowser.js'; import { findDiffEditorContainingCodeEditor } from '../../../../../editor/browser/widget/diffEditor/commands.js'; import { ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IModifiedFileEntry } from '../../common/chatEditingService.js'; +import { IModifiedFileEntry } from '../../common/editing/chatEditingService.js'; export function isTextDiffEditorForEntry(accessor: ServicesAccessor, entry: IModifiedFileEntry, editor: ICodeEditor) { const diffEditor = findDiffEditorContainingCodeEditor(accessor, editor); diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.ts index e6e298e89d0..0451c0746d7 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingActions.ts @@ -27,11 +27,11 @@ import { KeybindingWeight } from '../../../../../platform/keybinding/common/keyb import { IEditorPane } from '../../../../common/editor.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; import { IAgentSessionsService } from '../agentSessions/agentSessionsService.js'; -import { isChatViewTitleActionContext } from '../../common/chatActions.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { applyingChatEditsFailedContextKey, CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME, chatEditingResourceContextKey, chatEditingWidgetFileStateContextKey, decidedChatEditingResourceContextKey, hasAppliedChatEditsContextKey, hasUndecidedChatEditingResourceContextKey, IChatEditingService, IChatEditingSession, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatService } from '../../common/chatService.js'; -import { isChatTreeItem, isRequestVM, isResponseVM } from '../../common/chatViewModel.js'; +import { isChatViewTitleActionContext } from '../../common/actions/chatActions.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { applyingChatEditsFailedContextKey, CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME, chatEditingResourceContextKey, chatEditingWidgetFileStateContextKey, decidedChatEditingResourceContextKey, hasAppliedChatEditsContextKey, hasUndecidedChatEditingResourceContextKey, IChatEditingService, IChatEditingSession, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatService } from '../../common/chatService/chatService.js'; +import { isChatTreeItem, isRequestVM, isResponseVM } from '../../common/model/chatViewModel.js'; import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../common/constants.js'; import { CHAT_CATEGORY } from '../actions/chatActions.js'; import { ChatTreeItem, IChatWidget, IChatWidgetService } from '../chat.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimeline.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimeline.ts index 26ff5dc201a..206f59545ec 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimeline.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimeline.ts @@ -7,8 +7,8 @@ import { VSBuffer } from '../../../../../base/common/buffer.js'; import { IDisposable } from '../../../../../base/common/lifecycle.js'; import { IObservable, IReader, ITransaction } from '../../../../../base/common/observable.js'; import { URI } from '../../../../../base/common/uri.js'; -import { IEditSessionDiffStats, IEditSessionEntryDiff } from '../../common/chatEditingService.js'; -import { IChatRequestDisablement } from '../../common/chatModel.js'; +import { IEditSessionDiffStats, IEditSessionEntryDiff } from '../../common/editing/chatEditingService.js'; +import { IChatRequestDisablement } from '../../common/model/chatModel.js'; import { FileOperation, IChatEditingTimelineState, IFileBaseline } from './chatEditingOperations.js'; /** diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.ts index e6dabbdb302..342560fae04 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.ts @@ -27,8 +27,8 @@ import { IInstantiationService } from '../../../../../platform/instantiation/com import { CellEditType, CellUri, INotebookTextModel } from '../../../notebook/common/notebookCommon.js'; import { INotebookEditorModelResolverService } from '../../../notebook/common/notebookEditorModelResolverService.js'; import { INotebookService } from '../../../notebook/common/notebookService.js'; -import { emptySessionEntryDiff, IEditSessionDiffStats, IEditSessionEntryDiff, IModifiedEntryTelemetryInfo } from '../../common/chatEditingService.js'; -import { IChatRequestDisablement } from '../../common/chatModel.js'; +import { emptySessionEntryDiff, IEditSessionDiffStats, IEditSessionEntryDiff, IModifiedEntryTelemetryInfo } from '../../common/editing/chatEditingService.js'; +import { IChatRequestDisablement } from '../../common/model/chatModel.js'; import { IChatEditingCheckpointTimeline } from './chatEditingCheckpointTimeline.js'; import { FileOperation, FileOperationType, IChatEditingTimelineState, ICheckpoint, IFileBaseline, IReconstructedFileExistsState, IReconstructedFileNotExistsState, IReconstructedFileState } from './chatEditingOperations.js'; import { ChatEditingSnapshotTextModelContentProvider } from './chatEditingTextModelContentProviders.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.ts index e0a03ff6af1..bda048be301 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import '../media/chatEditorController.css'; +import './media/chatEditorController.css'; import { getTotalWidth } from '../../../../../base/browser/dom.js'; import { Event } from '../../../../../base/common/event.js'; @@ -36,7 +36,7 @@ import { IInstantiationService } from '../../../../../platform/instantiation/com import { EditorsOrder, IEditorIdentifier, isDiffEditorInput } from '../../../../common/editor.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; import { minimapGutterAddedBackground, minimapGutterDeletedBackground, minimapGutterModifiedBackground, overviewRulerAddedForeground, overviewRulerDeletedForeground, overviewRulerModifiedForeground } from '../../../scm/common/quickDiff.js'; -import { IModifiedFileEntry, IModifiedFileEntryChangeHunk, IModifiedFileEntryEditorIntegration, ModifiedFileEntryState } from '../../common/chatEditingService.js'; +import { IModifiedFileEntry, IModifiedFileEntryChangeHunk, IModifiedFileEntryEditorIntegration, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; import { isTextDiffEditorForEntry } from './chatEditing.js'; import { ActionViewItem } from '../../../../../base/browser/ui/actionbar/actionViewItems.js'; import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorAccessibility.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorAccessibility.ts index 35be821ea3f..dfc7ef622d4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorAccessibility.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorAccessibility.ts @@ -8,7 +8,7 @@ import { autorun, observableFromEvent } from '../../../../../base/common/observa import { AccessibilitySignal, IAccessibilitySignalService } from '../../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; import { IWorkbenchContribution } from '../../../../common/contributions.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; -import { IChatEditingService } from '../../common/chatEditingService.js'; +import { IChatEditingService } from '../../common/editing/chatEditingService.js'; export class ChatEditingEditorAccessibility implements IWorkbenchContribution { diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.ts index a4fb10b7967..addad079207 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.ts @@ -19,8 +19,8 @@ import { IEditorGroupsService } from '../../../../services/editor/common/editorG import { ACTIVE_GROUP, IEditorService } from '../../../../services/editor/common/editorService.js'; import { MultiDiffEditorInput } from '../../../multiDiffEditor/browser/multiDiffEditorInput.js'; import { NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_EDITOR_FOCUSED } from '../../../notebook/common/notebookContextKeys.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME, IChatEditingService, IChatEditingSession, IModifiedFileEntry, IModifiedFileEntryChangeHunk, IModifiedFileEntryEditorIntegration, ModifiedFileEntryState, parseChatMultiDiffUri } from '../../common/chatEditingService.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME, IChatEditingService, IChatEditingSession, IModifiedFileEntry, IModifiedFileEntryChangeHunk, IModifiedFileEntryEditorIntegration, ModifiedFileEntryState, parseChatMultiDiffUri } from '../../common/editing/chatEditingService.js'; import { CHAT_CATEGORY } from '../actions/chatActions.js'; import { ctxCursorInChangeRange, ctxHasEditorModification, ctxIsCurrentlyBeingModified, ctxIsGlobalEditingSession, ctxReviewModeEnabled } from './chatEditingEditorContextKeys.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.ts index 58b33e3443a..f08d332b625 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.ts @@ -13,8 +13,8 @@ import { IWorkbenchContribution } from '../../../../common/contributions.js'; import { EditorResourceAccessor, SideBySideEditor } from '../../../../common/editor.js'; import { IEditorGroup, IEditorGroupsService } from '../../../../services/editor/common/editorGroupsService.js'; import { IInlineChatSessionService } from '../../../inlineChat/browser/inlineChatSessionService.js'; -import { IChatEditingService, IChatEditingSession, IModifiedFileEntry, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatService } from '../../common/chatService.js'; +import { IChatEditingService, IChatEditingSession, IModifiedFileEntry, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatService } from '../../common/chatService/chatService.js'; export const ctxIsGlobalEditingSession = new RawContextKey('chatEdits.isGlobalEditingSession', undefined, localize('chat.ctxEditSessionIsGlobal', "The current editor is part of the global edit session")); export const ctxHasEditorModification = new RawContextKey('chatEdits.hasEditorModifications', undefined, localize('chat.hasEditorModifications', "The current editor contains chat modifications")); diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.ts index a97a8f123f2..9b38068939b 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import '../media/chatEditingEditorOverlay.css'; +import './media/chatEditingEditorOverlay.css'; import { combinedDisposable, Disposable, DisposableMap, DisposableStore, MutableDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; import { autorun, derived, derivedOpts, IObservable, observableFromEvent, observableFromEventOpts, observableSignalFromEvent, observableValue, transaction } from '../../../../../base/common/observable.js'; import { HiddenItemStrategy, MenuWorkbenchToolBar } from '../../../../../platform/actions/browser/toolbar.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IChatEditingService, IChatEditingSession, IModifiedFileEntry, ModifiedFileEntryState } from '../../common/chatEditingService.js'; +import { IChatEditingService, IChatEditingSession, IModifiedFileEntry, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; import { MenuId } from '../../../../../platform/actions/common/actions.js'; import { ActionViewItem } from '../../../../../base/browser/ui/actionbar/actionViewItems.js'; import { IActionRunner } from '../../../../../base/common/actions.js'; @@ -16,7 +16,7 @@ import { $, addDisposableGenericMouseMoveListener, append } from '../../../../.. import { assertType } from '../../../../../base/common/types.js'; import { localize } from '../../../../../nls.js'; import { AcceptAction, navigationBearingFakeActionId, RejectAction } from './chatEditingEditorActions.js'; -import { IChatService } from '../../common/chatService.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { IWorkbenchContribution } from '../../../../common/contributions.js'; import { IEditorGroup, IEditorGroupsService } from '../../../../services/editor/common/editorGroupsService.js'; import { EditorGroupView } from '../../../../browser/parts/editor/editorGroupView.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.ts index 22571864243..7dd93ca2e07 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.ts @@ -31,9 +31,9 @@ import { IFilesConfigurationService } from '../../../../services/filesConfigurat import { ITextFileService, isTextFileEditorModel, stringToSnapshot } from '../../../../services/textfile/common/textfiles.js'; import { IAiEditTelemetryService } from '../../../editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.js'; import { ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; -import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntry, IModifiedFileEntryEditorIntegration, ISnapshotEntry, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatResponseModel } from '../../common/chatModel.js'; -import { IChatService } from '../../common/chatService.js'; +import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntry, IModifiedFileEntryEditorIntegration, ISnapshotEntry, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatResponseModel } from '../../common/model/chatModel.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { ChatEditingCodeEditorIntegration } from './chatEditingCodeEditorIntegration.js'; import { AbstractChatEditingModifiedFileEntry } from './chatEditingModifiedFileEntry.js'; import { ChatEditingTextModelChangeService } from './chatEditingTextModelChangeService.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.ts index 7cbfd1b1447..f4150e54b48 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.ts @@ -23,9 +23,9 @@ import { IEditorPane } from '../../../../common/editor.js'; import { IFilesConfigurationService } from '../../../../services/filesConfiguration/common/filesConfigurationService.js'; import { IAiEditTelemetryService } from '../../../editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.js'; import { ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; -import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntry, IModifiedFileEntryEditorIntegration, ISnapshotEntry, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatResponseModel } from '../../common/chatModel.js'; -import { ChatUserAction, IChatService } from '../../common/chatService.js'; +import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntry, IModifiedFileEntryEditorIntegration, ISnapshotEntry, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatResponseModel } from '../../common/model/chatModel.js'; +import { ChatUserAction, IChatService } from '../../common/chatService/chatService.js'; class AutoAcceptControl { constructor( diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.ts index 38b6b9b6f7a..d4beb85749b 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.ts @@ -42,9 +42,9 @@ import { INotebookEditorModelResolverService } from '../../../notebook/common/no import { INotebookLoggingService } from '../../../notebook/common/notebookLoggingService.js'; import { INotebookService } from '../../../notebook/common/notebookService.js'; import { INotebookEditorWorkerService } from '../../../notebook/common/services/notebookWorkerService.js'; -import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntryEditorIntegration, ISnapshotEntry, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatResponseModel } from '../../common/chatModel.js'; -import { IChatService } from '../../common/chatService.js'; +import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntryEditorIntegration, ISnapshotEntry, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatResponseModel } from '../../common/model/chatModel.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { AbstractChatEditingModifiedFileEntry } from './chatEditingModifiedFileEntry.js'; import { createSnapshot, deserializeSnapshot, getNotebookSnapshotFileURI, restoreSnapshot, SnapshotComparer } from './notebook/chatEditingModifiedNotebookSnapshot.js'; import { ChatEditingNewNotebookContentEdits } from './notebook/chatEditingNewNotebookContentEdits.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.ts index c7528ee6114..b16c364c613 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.ts @@ -7,8 +7,8 @@ import { StringSHA1 } from '../../../../../base/common/hash.js'; import { URI } from '../../../../../base/common/uri.js'; import { TextEdit } from '../../../../../editor/common/languages.js'; import { ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; -import { IModifiedEntryTelemetryInfo } from '../../common/chatEditingService.js'; -import { LocalChatSessionUri } from '../../common/chatUri.js'; +import { IModifiedEntryTelemetryInfo } from '../../common/editing/chatEditingService.js'; +import { LocalChatSessionUri } from '../../common/model/chatUri.js'; export enum FileOperationType { Create = 'create', diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.ts index 644166d36dd..09e4e25ab33 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.ts @@ -37,10 +37,10 @@ import { ILifecycleService } from '../../../../services/lifecycle/common/lifecyc import { IMultiDiffSourceResolver, IMultiDiffSourceResolverService, IResolvedMultiDiffSource, MultiDiffEditorItem } from '../../../multiDiffEditor/browser/multiDiffSourceResolverService.js'; import { CellUri, ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; import { INotebookService } from '../../../notebook/common/notebookService.js'; -import { CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME, chatEditingAgentSupportsReadonlyReferencesContextKey, chatEditingResourceContextKey, ChatEditingSessionState, IChatEditingService, IChatEditingSession, IChatRelatedFile, IChatRelatedFilesProvider, IModifiedFileEntry, inChatEditingSessionContextKey, IStreamingEdits, ModifiedFileEntryState, parseChatMultiDiffUri } from '../../common/chatEditingService.js'; -import { ChatModel, ICellTextEditOperation, IChatResponseModel, isCellTextEditOperationArray } from '../../common/chatModel.js'; -import { IChatService } from '../../common/chatService.js'; -import { ChatEditorInput } from '../chatEditorInput.js'; +import { CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME, chatEditingAgentSupportsReadonlyReferencesContextKey, chatEditingResourceContextKey, ChatEditingSessionState, IChatEditingService, IChatEditingSession, IChatRelatedFile, IChatRelatedFilesProvider, IModifiedFileEntry, inChatEditingSessionContextKey, IStreamingEdits, ModifiedFileEntryState, parseChatMultiDiffUri } from '../../common/editing/chatEditingService.js'; +import { ChatModel, ICellTextEditOperation, IChatResponseModel, isCellTextEditOperationArray } from '../../common/model/chatModel.js'; +import { IChatService } from '../../common/chatService/chatService.js'; +import { ChatEditorInput } from '../widgetHosts/editor/chatEditorInput.js'; import { AbstractChatEditingModifiedFileEntry } from './chatEditingModifiedFileEntry.js'; import { ChatEditingSession } from './chatEditingSession.js'; import { ChatEditingSnapshotTextModelContentProvider, ChatEditingTextModelContentProvider } from './chatEditingTextModelContentProviders.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.ts index 8448df884da..96fd3ae8c54 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.ts @@ -36,9 +36,9 @@ import { MultiDiffEditor } from '../../../multiDiffEditor/browser/multiDiffEdito import { MultiDiffEditorInput } from '../../../multiDiffEditor/browser/multiDiffEditorInput.js'; import { CellUri, ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; import { INotebookService } from '../../../notebook/common/notebookService.js'; -import { chatEditingSessionIsReady, ChatEditingSessionState, ChatEditKind, getMultiDiffSourceUri, IChatEditingSession, IEditSessionEntryDiff, IModifiedEntryTelemetryInfo, IModifiedFileEntry, ISnapshotEntry, IStreamingEdits, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatResponseModel } from '../../common/chatModel.js'; -import { IChatProgress } from '../../common/chatService.js'; +import { chatEditingSessionIsReady, ChatEditingSessionState, ChatEditKind, getMultiDiffSourceUri, IChatEditingSession, IEditSessionEntryDiff, IModifiedEntryTelemetryInfo, IModifiedFileEntry, ISnapshotEntry, IStreamingEdits, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatResponseModel } from '../../common/model/chatModel.js'; +import { IChatProgress } from '../../common/chatService/chatService.js'; import { ChatAgentLocation } from '../../common/constants.js'; import { IChatEditingCheckpointTimeline } from './chatEditingCheckpointTimeline.js'; import { ChatEditingCheckpointTimelineImpl, IChatEditingTimelineFsDelegate } from './chatEditingCheckpointTimelineImpl.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.ts index 0a14fe72fbe..0fb2c138a5b 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.ts @@ -15,7 +15,7 @@ import { IFileService } from '../../../../../platform/files/common/files.js'; import { ILogService } from '../../../../../platform/log/common/log.js'; import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; import { Dto } from '../../../../services/extensions/common/proxyIdentifier.js'; -import { ISnapshotEntry, ModifiedFileEntryState, WorkingSetDisplayMetadata } from '../../common/chatEditingService.js'; +import { ISnapshotEntry, ModifiedFileEntryState, WorkingSetDisplayMetadata } from '../../common/editing/chatEditingService.js'; import { getKeyForChatSessionResource, IChatEditingTimelineState } from './chatEditingOperations.js'; const STORAGE_CONTENTS_FOLDER = 'contents'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.ts index 0495c995cc1..acbbd2c650f 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.ts @@ -29,8 +29,8 @@ import { IModelContentChangedEvent } from '../../../../../editor/common/textMode import { AccessibilitySignal, IAccessibilitySignalService } from '../../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; import { editorSelectionBackground } from '../../../../../platform/theme/common/colorRegistry.js'; import { ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; -import { ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatResponseModel } from '../../common/chatModel.js'; +import { ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatResponseModel } from '../../common/model/chatModel.js'; import { ChatAgentLocation } from '../../common/constants.js'; import { IDocumentDiff2 } from './chatEditingCodeEditorIntegration.js'; import { pendingRewriteMinimap } from './chatEditingModifiedFileEntry.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.ts index f9260f20a64..b4958b8f3e2 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.ts @@ -8,7 +8,7 @@ import { URI, UriComponents } from '../../../../../base/common/uri.js'; import { ITextModel } from '../../../../../editor/common/model.js'; import { IModelService } from '../../../../../editor/common/services/model.js'; import { ITextModelContentProvider } from '../../../../../editor/common/services/resolverService.js'; -import { IChatEditingService } from '../../common/chatEditingService.js'; +import { IChatEditingService } from '../../common/editing/chatEditingService.js'; type ChatEditingTextModelContentQueryData = { kind: 'doc'; documentId: string; chatSessionResource: UriComponents }; diff --git a/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css b/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css rename to src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css diff --git a/src/vs/workbench/contrib/chat/browser/media/chatEditorController.css b/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatEditorController.css rename to src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.ts index e4780529e10..789722adcdc 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.ts @@ -8,7 +8,7 @@ import { computeDiff } from '../../../../notebook/common/notebookDiff.js'; import { INotebookEditorModelResolverService } from '../../../../notebook/common/notebookEditorModelResolverService.js'; import { INotebookLoggingService } from '../../../../notebook/common/notebookLoggingService.js'; import { INotebookEditorWorkerService } from '../../../../notebook/common/services/notebookWorkerService.js'; -import { IEditSessionEntryDiff, ISnapshotEntry } from '../../../common/chatEditingService.js'; +import { IEditSessionEntryDiff, ISnapshotEntry } from '../../../common/editing/chatEditingService.js'; export class ChatEditingModifiedNotebookDiff { diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.ts index 684fdf67ea5..3df305e8eb8 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.ts @@ -16,8 +16,8 @@ import { CellEditState } from '../../../../notebook/browser/notebookBrowser.js'; import { INotebookEditorService } from '../../../../notebook/browser/services/notebookEditorService.js'; import { NotebookCellTextModel } from '../../../../notebook/common/model/notebookCellTextModel.js'; import { CellKind } from '../../../../notebook/common/notebookCommon.js'; -import { ModifiedFileEntryState } from '../../../common/chatEditingService.js'; -import { IChatResponseModel } from '../../../common/chatModel.js'; +import { ModifiedFileEntryState } from '../../../common/editing/chatEditingService.js'; +import { IChatResponseModel } from '../../../common/model/chatModel.js'; import { ChatEditingTextModelChangeService } from '../chatEditingTextModelChangeService.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.ts index 8ea69fe080d..2eaea73e415 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.ts @@ -28,7 +28,7 @@ import { INotebookEditorService } from '../../../../notebook/browser/services/no import { NotebookCellTextModel } from '../../../../notebook/common/model/notebookCellTextModel.js'; import { NotebookTextModel } from '../../../../notebook/common/model/notebookTextModel.js'; import { CellKind } from '../../../../notebook/common/notebookCommon.js'; -import { IModifiedFileEntryChangeHunk, IModifiedFileEntryEditorIntegration } from '../../../common/chatEditingService.js'; +import { IModifiedFileEntryChangeHunk, IModifiedFileEntryEditorIntegration } from '../../../common/editing/chatEditingService.js'; import { ChatEditingCodeEditorIntegration, IDocumentDiff2 } from '../chatEditingCodeEditorIntegration.js'; import { ChatEditingModifiedNotebookEntry } from '../chatEditingModifiedNotebookEntry.js'; import { countChanges, ICellDiffInfo, sortCellChanges } from './notebookCellChanges.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.ts index 1239dc59a98..ae780229aa2 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.ts @@ -13,8 +13,8 @@ import { URI } from '../../../../../../base/common/uri.js'; import { FileSystemProviderCapabilities, FileType, IFileChange, IFileDeleteOptions, IFileOpenOptions, IFileOverwriteOptions, IFileReadStreamOptions, IFileService, IFileSystemProvider, IFileWriteOptions, IStat, IWatchOptions } from '../../../../../../platform/files/common/files.js'; import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; import { IWorkbenchContribution } from '../../../../../common/contributions.js'; -import { IChatEditingService } from '../../../common/chatEditingService.js'; -import { LocalChatSessionUri } from '../../../common/chatUri.js'; +import { IChatEditingService } from '../../../common/editing/chatEditingService.js'; +import { LocalChatSessionUri } from '../../../common/model/chatUri.js'; import { ChatEditingNotebookSnapshotScheme } from './chatEditingModifiedNotebookSnapshot.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.ts b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.ts index 3b8fe15a434..a684d819a88 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.ts +++ b/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.ts @@ -14,7 +14,7 @@ import { ServiceCollection } from '../../../../../../platform/instantiation/comm import { CellEditState, INotebookEditor } from '../../../../notebook/browser/notebookBrowser.js'; import { NotebookTextModel } from '../../../../notebook/common/model/notebookTextModel.js'; import { CellKind } from '../../../../notebook/common/notebookCommon.js'; -import { IModifiedFileEntryChangeHunk } from '../../../common/chatEditingService.js'; +import { IModifiedFileEntryChangeHunk } from '../../../common/editing/chatEditingService.js'; import { ICellDiffInfo } from './notebookCellChanges.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.ts b/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.ts index 4ddfbacd4d6..9258a8f280c 100644 --- a/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.ts +++ b/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.ts @@ -17,7 +17,7 @@ import { EditorExtensions, IEditorFactoryRegistry, IEditorSerializer } from '../ import { EditorInput } from '../../../../common/editor/editorInput.js'; import { IEditorGroupsService } from '../../../../services/editor/common/editorGroupsService.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { CONTEXT_MODELS_EDITOR, CONTEXT_MODELS_SEARCH_FOCUS, MANAGE_CHAT_COMMAND_ID } from '../../common/constants.js'; import { CHAT_CATEGORY } from '../actions/chatActions.js'; import { ChatManagementEditor, ModelsManagementEditor } from './chatManagementEditor.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts b/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts index 9573667588a..8953884a2d0 100644 --- a/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts +++ b/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts @@ -25,12 +25,12 @@ import { isProposedApiEnabled } from '../../../services/extensions/common/extens import * as extensionsRegistry from '../../../services/extensions/common/extensionsRegistry.js'; import { showExtensionsWithIdsCommandId } from '../../extensions/browser/extensionsActions.js'; import { IExtension, IExtensionsWorkbenchService } from '../../extensions/common/extensions.js'; -import { IChatAgentData, IChatAgentService } from '../common/chatAgents.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IRawChatParticipantContribution } from '../common/chatParticipantContribTypes.js'; +import { IChatAgentData, IChatAgentService } from '../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../common/actions/chatContextKeys.js'; +import { IRawChatParticipantContribution } from '../common/participants/chatParticipantContribTypes.js'; import { ChatAgentLocation, ChatModeKind } from '../common/constants.js'; import { ChatViewId, ChatViewContainerId } from './chat.js'; -import { ChatViewPane } from './chatViewPane.js'; +import { ChatViewPane } from './widgetHosts/viewPane/chatViewPane.js'; // --- Chat Container & View Registration diff --git a/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.ts b/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.ts similarity index 93% rename from src/vs/workbench/contrib/chat/browser/chatSessions.contribution.ts rename to src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.ts index 0ff2e53b15d..e8f8206297c 100644 --- a/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.ts +++ b/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.ts @@ -3,47 +3,47 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { sep } from '../../../../base/common/path.js'; -import { raceCancellationError } from '../../../../base/common/async.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { combinedDisposable, Disposable, DisposableMap, DisposableStore, IDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { ResourceMap } from '../../../../base/common/map.js'; -import { Schemas } from '../../../../base/common/network.js'; -import * as resources from '../../../../base/common/resources.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI, UriComponents } from '../../../../base/common/uri.js'; -import { generateUuid } from '../../../../base/common/uuid.js'; -import { localize, localize2 } from '../../../../nls.js'; -import { Action2, IMenuService, MenuId, MenuItemAction, MenuRegistry, registerAction2 } from '../../../../platform/actions/common/actions.js'; -import { ContextKeyExpr, IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IRelaxedExtensionDescription } from '../../../../platform/extensions/common/extensions.js'; -import { InstantiationType, registerSingleton } from '../../../../platform/instantiation/common/extensions.js'; -import { ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; -import { ILabelService } from '../../../../platform/label/common/label.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { isDark } from '../../../../platform/theme/common/theme.js'; -import { IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { IEditorService } from '../../../services/editor/common/editorService.js'; -import { IExtensionService, isProposedApiEnabled } from '../../../services/extensions/common/extensions.js'; -import { ExtensionsRegistry } from '../../../services/extensions/common/extensionsRegistry.js'; -import { ChatEditorInput } from '../browser/chatEditorInput.js'; -import { IChatAgentAttachmentCapabilities, IChatAgentData, IChatAgentService } from '../common/chatAgents.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IChatSession, IChatSessionContentProvider, IChatSessionItem, IChatSessionItemProvider, IChatSessionProviderOptionGroup, IChatSessionProviderOptionItem, IChatSessionsExtensionPoint, IChatSessionsService, isSessionInProgressStatus, localChatSessionType, SessionOptionsChangedCallback } from '../common/chatSessionsService.js'; -import { ChatAgentLocation, ChatModeKind } from '../common/constants.js'; -import { CHAT_CATEGORY } from './actions/chatActions.js'; -import { IChatEditorOptions } from './chatEditor.js'; -import { IChatModel } from '../common/chatModel.js'; -import { IChatService, IChatToolInvocation } from '../common/chatService.js'; -import { autorun, autorunIterableDelta, observableSignalFromEvent } from '../../../../base/common/observable.js'; -import { IChatRequestVariableEntry } from '../common/chatVariableEntries.js'; -import { renderAsPlaintext } from '../../../../base/browser/markdownRenderer.js'; -import { IMarkdownString } from '../../../../base/common/htmlContent.js'; -import { IViewsService } from '../../../services/views/common/viewsService.js'; -import { ChatViewId } from './chat.js'; -import { ChatViewPane } from './chatViewPane.js'; +import { sep } from '../../../../../base/common/path.js'; +import { raceCancellationError } from '../../../../../base/common/async.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { combinedDisposable, Disposable, DisposableMap, DisposableStore, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { ResourceMap } from '../../../../../base/common/map.js'; +import { Schemas } from '../../../../../base/common/network.js'; +import * as resources from '../../../../../base/common/resources.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI, UriComponents } from '../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../base/common/uuid.js'; +import { localize, localize2 } from '../../../../../nls.js'; +import { Action2, IMenuService, MenuId, MenuItemAction, MenuRegistry, registerAction2 } from '../../../../../platform/actions/common/actions.js'; +import { ContextKeyExpr, IContextKey, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; +import { IRelaxedExtensionDescription } from '../../../../../platform/extensions/common/extensions.js'; +import { InstantiationType, registerSingleton } from '../../../../../platform/instantiation/common/extensions.js'; +import { ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; +import { ILabelService } from '../../../../../platform/label/common/label.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { isDark } from '../../../../../platform/theme/common/theme.js'; +import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; +import { IEditorService } from '../../../../services/editor/common/editorService.js'; +import { IExtensionService, isProposedApiEnabled } from '../../../../services/extensions/common/extensions.js'; +import { ExtensionsRegistry } from '../../../../services/extensions/common/extensionsRegistry.js'; +import { ChatEditorInput } from '../widgetHosts/editor/chatEditorInput.js'; +import { IChatAgentAttachmentCapabilities, IChatAgentData, IChatAgentService } from '../../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatSession, IChatSessionContentProvider, IChatSessionItem, IChatSessionItemProvider, IChatSessionProviderOptionGroup, IChatSessionProviderOptionItem, IChatSessionsExtensionPoint, IChatSessionsService, isSessionInProgressStatus, localChatSessionType, SessionOptionsChangedCallback } from '../../common/chatSessionsService.js'; +import { ChatAgentLocation, ChatModeKind } from '../../common/constants.js'; +import { CHAT_CATEGORY } from '../actions/chatActions.js'; +import { IChatEditorOptions } from '../widgetHosts/editor/chatEditor.js'; +import { IChatModel } from '../../common/model/chatModel.js'; +import { IChatService, IChatToolInvocation } from '../../common/chatService/chatService.js'; +import { autorun, autorunIterableDelta, observableSignalFromEvent } from '../../../../../base/common/observable.js'; +import { IChatRequestVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { renderAsPlaintext } from '../../../../../base/browser/markdownRenderer.js'; +import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; +import { IViewsService } from '../../../../services/views/common/viewsService.js'; +import { ChatViewId } from '../chat.js'; +import { ChatViewPane } from '../widgetHosts/viewPane/chatViewPane.js'; const extensionPoint = ExtensionsRegistry.registerExtensionPoint({ extensionPoint: 'chatSessions', diff --git a/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.ts b/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.ts index 29cbd338213..1d3485df87b 100644 --- a/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.ts +++ b/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.ts @@ -39,7 +39,7 @@ import { IWorkbenchLayoutService, Parts } from '../../../../services/layout/brow import { ILifecycleService } from '../../../../services/lifecycle/common/lifecycle.js'; import { IPreferencesService } from '../../../../services/preferences/common/preferences.js'; import { IExtension, IExtensionsWorkbenchService } from '../../../extensions/common/extensions.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { IChatModeService } from '../../common/chatModes.js'; import { ChatAgentLocation, ChatModeKind } from '../../common/constants.js'; import { CHAT_CATEGORY, CHAT_SETUP_ACTION_ID, CHAT_SETUP_SUPPORT_ANONYMOUS_ACTION_ID } from '../actions/chatActions.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.ts b/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.ts index 7e6f2a9d58d..b7c9c49353d 100644 --- a/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.ts +++ b/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.ts @@ -23,14 +23,14 @@ import { ITelemetryService } from '../../../../../platform/telemetry/common/tele import { IWorkspaceTrustManagementService } from '../../../../../platform/workspace/common/workspaceTrust.js'; import { IWorkbenchEnvironmentService } from '../../../../services/environment/common/environmentService.js'; import { nullExtensionDescription } from '../../../../services/extensions/common/extensions.js'; -import { CountTokensCallback, ILanguageModelToolsService, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolResult, ToolDataSource, ToolProgress } from '../../common/languageModelToolsService.js'; -import { IChatAgentImplementation, IChatAgentRequest, IChatAgentResult, IChatAgentService } from '../../common/chatAgents.js'; +import { CountTokensCallback, ILanguageModelToolsService, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolResult, ToolDataSource, ToolProgress } from '../../common/tools/languageModelToolsService.js'; +import { IChatAgentImplementation, IChatAgentRequest, IChatAgentResult, IChatAgentService } from '../../common/participants/chatAgents.js'; import { ChatEntitlement, ChatEntitlementContext, ChatEntitlementRequests, IChatEntitlementService } from '../../../../services/chat/common/chatEntitlementService.js'; -import { ChatModel, ChatRequestModel, IChatRequestModel, IChatRequestVariableData } from '../../common/chatModel.js'; +import { ChatModel, ChatRequestModel, IChatRequestModel, IChatRequestVariableData } from '../../common/model/chatModel.js'; import { ChatMode } from '../../common/chatModes.js'; -import { ChatRequestAgentPart, ChatRequestToolPart } from '../../common/chatParserTypes.js'; -import { IChatProgress, IChatService } from '../../common/chatService.js'; -import { IChatRequestToolEntry } from '../../common/chatVariableEntries.js'; +import { ChatRequestAgentPart, ChatRequestToolPart } from '../../common/requestParser/chatParserTypes.js'; +import { IChatProgress, IChatService } from '../../common/chatService/chatService.js'; +import { IChatRequestToolEntry } from '../../common/attachments/chatVariableEntries.js'; import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../common/constants.js'; import { ILanguageModelsService } from '../../common/languageModels.js'; import { CHAT_OPEN_ACTION_ID, CHAT_SETUP_ACTION_ID } from '../actions/chatActions.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.ts b/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.ts index 6c60a7cc1d9..6f529f6db84 100644 --- a/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.ts +++ b/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.ts @@ -14,8 +14,8 @@ import { IConfigurationService } from '../../../../platform/configuration/common import { FocusMode } from '../../../../platform/native/common/native.js'; import { IWorkbenchContribution } from '../../../common/contributions.js'; import { IHostService } from '../../../services/host/browser/host.js'; -import { IChatModel, IChatRequestNeedsInputInfo } from '../common/chatModel.js'; -import { IChatService } from '../common/chatService.js'; +import { IChatModel, IChatRequestNeedsInputInfo } from '../common/model/chatModel.js'; +import { IChatService } from '../common/chatService/chatService.js'; import { IChatWidgetService } from './chat.js'; /** diff --git a/src/vs/workbench/contrib/chat/browser/chatContext.contribution.ts b/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContext.contribution.ts rename to src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.ts index 0321c048646..03e4b938c53 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContext.contribution.ts +++ b/src/vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution.ts @@ -3,14 +3,14 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { localize } from '../../../../nls.js'; +import { Disposable } from '../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { localize } from '../../../../../nls.js'; -import { IWorkbenchContribution, registerWorkbenchContribution2, WorkbenchPhase } from '../../../common/contributions.js'; +import { IWorkbenchContribution, registerWorkbenchContribution2, WorkbenchPhase } from '../../../../common/contributions.js'; import { IChatContextService } from './chatContextService.js'; -import { isProposedApiEnabled } from '../../../services/extensions/common/extensions.js'; -import { ExtensionsRegistry } from '../../../services/extensions/common/extensionsRegistry.js'; +import { isProposedApiEnabled } from '../../../../services/extensions/common/extensions.js'; +import { ExtensionsRegistry } from '../../../../services/extensions/common/extensionsRegistry.js'; interface IChatContextExtensionPoint { id: string; diff --git a/src/vs/workbench/contrib/chat/browser/chatContextService.ts b/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.ts similarity index 89% rename from src/vs/workbench/contrib/chat/browser/chatContextService.ts rename to src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.ts index e78932f1ffe..5538c84c4b1 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContextService.ts +++ b/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.ts @@ -3,17 +3,17 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { LanguageSelector, score } from '../../../../editor/common/languageSelector.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IChatContextPicker, IChatContextPickerItem, IChatContextPickService } from './chatContextPickService.js'; -import { IChatContextItem, IChatContextProvider } from '../common/chatContext.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { IChatRequestWorkspaceVariableEntry, IGenericChatRequestVariableEntry, StringChatContextValue } from '../common/chatVariableEntries.js'; -import { IExtensionService } from '../../../services/extensions/common/extensions.js'; -import { InstantiationType, registerSingleton } from '../../../../platform/instantiation/common/extensions.js'; -import { Disposable, DisposableMap, IDisposable } from '../../../../base/common/lifecycle.js'; -import { URI } from '../../../../base/common/uri.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { LanguageSelector, score } from '../../../../../editor/common/languageSelector.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IChatContextPicker, IChatContextPickerItem, IChatContextPickService } from '../attachments/chatContextPickService.js'; +import { IChatContextItem, IChatContextProvider } from '../../common/contextContrib/chatContext.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { IChatRequestWorkspaceVariableEntry, IGenericChatRequestVariableEntry, StringChatContextValue } from '../../common/attachments/chatVariableEntries.js'; +import { IExtensionService } from '../../../../services/extensions/common/extensions.js'; +import { InstantiationType, registerSingleton } from '../../../../../platform/instantiation/common/extensions.js'; +import { Disposable, DisposableMap, IDisposable } from '../../../../../base/common/lifecycle.js'; +import { URI } from '../../../../../base/common/uri.js'; export const IChatContextService = createDecorator('chatContextService'); diff --git a/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.ts b/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.ts index f4a03e99074..932c4f6f9d3 100644 --- a/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.ts +++ b/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.ts @@ -6,20 +6,20 @@ import { ChatViewId, IChatWidget } from '../chat.js'; import { CHAT_CATEGORY, CHAT_CONFIG_MENU_ID } from '../actions/chatActions.js'; import { localize, localize2 } from '../../../../../nls.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { IPromptsService } from '../../common/promptSyntax/service/promptsService.js'; import { PromptFilePickers } from './pickers/promptFilePickers.js'; import { ServicesAccessor } from '../../../../../editor/browser/editorExtensions.js'; import { Action2, registerAction2 } from '../../../../../platform/actions/common/actions.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPicker } from '../chatContextPickService.js'; +import { IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPicker } from '../attachments/chatContextPickService.js'; import { IQuickPickSeparator } from '../../../../../platform/quickinput/common/quickInput.js'; import { Codicon } from '../../../../../base/common/codicons.js'; import { getCleanPromptName } from '../../common/promptSyntax/config/promptFileLocations.js'; import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contextkey.js'; import { PromptsType } from '../../common/promptSyntax/promptTypes.js'; import { compare } from '../../../../../base/common/strings.js'; -import { IPromptFileVariableEntry, PromptFileVariableKind, toPromptFileVariableEntry } from '../../common/chatVariableEntries.js'; +import { IPromptFileVariableEntry, PromptFileVariableKind, toPromptFileVariableEntry } from '../../common/attachments/chatVariableEntries.js'; import { CancellationToken } from '../../../../../base/common/cancellation.js'; import { IOpenerService } from '../../../../../platform/opener/common/opener.js'; diff --git a/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.ts b/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.ts index 27a48af38a6..ea210ea05f2 100644 --- a/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.ts +++ b/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.ts @@ -5,7 +5,7 @@ import { CHAT_CATEGORY, CHAT_CONFIG_MENU_ID } from '../actions/chatActions.js'; import { Codicon } from '../../../../../base/common/codicons.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { localize, localize2 } from '../../../../../nls.js'; import { PromptFilePickers } from './pickers/promptFilePickers.js'; import { ServicesAccessor } from '../../../../../editor/browser/editorExtensions.js'; diff --git a/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.ts b/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.ts index 469799c98c7..5e9ddb4104f 100644 --- a/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.ts +++ b/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.ts @@ -20,7 +20,7 @@ import { getLanguageIdForPromptsType, PromptsType } from '../../common/promptSyn import { IUserDataSyncEnablementService, SyncResource } from '../../../../../platform/userDataSync/common/userDataSync.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; import { CONFIGURE_SYNC_COMMAND_ID } from '../../../../services/userDataSync/common/userDataSync.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { CHAT_CATEGORY } from '../actions/chatActions.js'; import { askForPromptFileName } from './pickers/askForPromptName.js'; import { askForPromptSourceFolder } from './pickers/askForPromptSourceFolder.js'; diff --git a/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.ts b/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.ts index 1b722099985..b3de9d98131 100644 --- a/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.ts +++ b/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.ts @@ -7,7 +7,7 @@ import { Disposable } from '../../../../../base/common/lifecycle.js'; import { ICodeEditor, IOverlayWidget, IOverlayWidgetPosition, OverlayWidgetPositionPreference } from '../../../../../editor/browser/editorBrowser.js'; import { ICommandService } from '../../../../../platform/commands/common/commands.js'; import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { IRemoteCodingAgentsService } from '../../../remoteCodingAgents/common/remoteCodingAgentsService.js'; import { localize } from '../../../../../nls.js'; import { Button } from '../../../../../base/browser/ui/button/button.js'; diff --git a/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.ts b/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.ts index be36f7f7e95..1937a193db7 100644 --- a/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.ts +++ b/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.ts @@ -9,7 +9,7 @@ import { ICodeEditorService } from '../../../../../editor/browser/services/codeE import { EditOperation } from '../../../../../editor/common/core/editOperation.js'; import { Range } from '../../../../../editor/common/core/range.js'; import { ITextModel } from '../../../../../editor/common/model.js'; -import { ILanguageModelToolsService, IToolAndToolSetEnablementMap } from '../../common/languageModelToolsService.js'; +import { ILanguageModelToolsService, IToolAndToolSetEnablementMap } from '../../common/tools/languageModelToolsService.js'; import { PromptHeaderAttributes } from '../../common/promptSyntax/promptFileParser.js'; import { IPromptsService } from '../../common/promptSyntax/service/promptsService.js'; @@ -83,5 +83,3 @@ export class PromptFileRewriter { this.rewriteAttribute(model, newName, nameAttr.value.range); } } - - diff --git a/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.ts b/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.ts index 44ff174b040..4c9a0c63203 100644 --- a/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.ts +++ b/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.ts @@ -13,7 +13,7 @@ import { localize } from '../../../../../nls.js'; import { CommandsRegistry } from '../../../../../platform/commands/common/commands.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; import { showToolsPicker } from '../actions/chatToolPicker.js'; -import { ILanguageModelToolsService } from '../../common/languageModelToolsService.js'; +import { ILanguageModelToolsService } from '../../common/tools/languageModelToolsService.js'; import { ALL_PROMPTS_LANGUAGE_SELECTOR, getPromptsTypeForLanguageId, PromptsType } from '../../common/promptSyntax/promptTypes.js'; import { IPromptsService } from '../../common/promptSyntax/service/promptsService.js'; import { registerEditorFeature } from '../../../../../editor/common/editorFeatures.js'; diff --git a/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.ts b/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.ts index c0015b62f97..fac4e86a1c0 100644 --- a/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.ts +++ b/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.ts @@ -8,7 +8,7 @@ import { ACTION_ID_NEW_CHAT, CHAT_CATEGORY, CHAT_CONFIG_MENU_ID } from '../actio import { URI } from '../../../../../base/common/uri.js'; import { OS } from '../../../../../base/common/platform.js'; import { Codicon } from '../../../../../base/common/codicons.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; import { assertDefined } from '../../../../../base/common/types.js'; import { ThemeIcon } from '../../../../../base/common/themables.js'; import { KeyCode, KeyMod } from '../../../../../base/common/keyCodes.js'; diff --git a/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.ts b/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.ts index 8406276fb84..5078ee1f9d3 100644 --- a/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.ts +++ b/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.ts @@ -15,7 +15,7 @@ import { IFileService } from '../../../../../platform/files/common/files.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; import { ResourceContextKey } from '../../../../common/contextkeys.js'; import { ITextFileService } from '../../../../services/textfile/common/textfiles.js'; -import { chatEditingWidgetFileStateContextKey, ModifiedFileEntryState } from '../../common/chatEditingService.js'; +import { chatEditingWidgetFileStateContextKey, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; import { getCleanPromptName } from '../../common/promptSyntax/config/promptFileLocations.js'; import { AGENT_LANGUAGE_ID, INSTRUCTIONS_LANGUAGE_ID, PROMPT_LANGUAGE_ID, PromptsType } from '../../common/promptSyntax/promptTypes.js'; import { CHAT_CATEGORY } from '../actions/chatActions.js'; @@ -101,4 +101,3 @@ export class SaveAsInstructionsFileAction extends BaseSaveAsPromptFileAction { super(createOptions(SAVE_AS_INSTRUCTIONS_FILE_ACTION_ID, localize2('promptfile.saveInstructionsFile', "Save As Instructions File"), localize2('promptfile.saveInstructionsFile.description', "Save as instructions file"), INSTRUCTIONS_LANGUAGE_ID), PromptsType.instructions); } } - diff --git a/src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.ts b/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.ts similarity index 97% rename from src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.ts rename to src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.ts index ec5c914c63f..9e2a8ed4a2e 100644 --- a/src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.ts +++ b/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.ts @@ -3,18 +3,18 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Codicon } from '../../../../base/common/codicons.js'; -import { Lazy } from '../../../../base/common/lazy.js'; -import { Disposable, DisposableStore, IDisposable } from '../../../../base/common/lifecycle.js'; -import { LRUCache } from '../../../../base/common/map.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { localize } from '../../../../nls.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { IQuickInputButtonWithToggle, IQuickInputService, IQuickTreeItem, QuickInputButtonLocation } from '../../../../platform/quickinput/common/quickInput.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { ConfirmedReason, ToolConfirmKind } from '../common/chatService.js'; -import { ILanguageModelToolConfirmationActions, ILanguageModelToolConfirmationContribution, ILanguageModelToolConfirmationContributionQuickTreeItem, ILanguageModelToolConfirmationRef, ILanguageModelToolsConfirmationService } from '../common/languageModelToolsConfirmationService.js'; -import { IToolData, ToolDataSource } from '../common/languageModelToolsService.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { Lazy } from '../../../../../base/common/lazy.js'; +import { Disposable, DisposableStore, IDisposable } from '../../../../../base/common/lifecycle.js'; +import { LRUCache } from '../../../../../base/common/map.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { localize } from '../../../../../nls.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IQuickInputButtonWithToggle, IQuickInputService, IQuickTreeItem, QuickInputButtonLocation } from '../../../../../platform/quickinput/common/quickInput.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; +import { ConfirmedReason, ToolConfirmKind } from '../../common/chatService/chatService.js'; +import { ILanguageModelToolConfirmationActions, ILanguageModelToolConfirmationContribution, ILanguageModelToolConfirmationContributionQuickTreeItem, ILanguageModelToolConfirmationRef, ILanguageModelToolsConfirmationService } from '../../common/tools/languageModelToolsConfirmationService.js'; +import { IToolData, ToolDataSource } from '../../common/tools/languageModelToolsService.js'; const RUN_WITHOUT_APPROVAL = localize('runWithoutApproval', "without approval"); const CONTINUE_WITHOUT_REVIEWING_RESULTS = localize('continueWithoutReviewingResults', "without reviewing result"); diff --git a/src/vs/workbench/contrib/chat/browser/languageModelToolsService.ts b/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.ts similarity index 93% rename from src/vs/workbench/contrib/chat/browser/languageModelToolsService.ts rename to src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.ts index 5467f4bc1e8..6a26fe5958d 100644 --- a/src/vs/workbench/contrib/chat/browser/languageModelToolsService.ts +++ b/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.ts @@ -3,46 +3,46 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { renderAsPlaintext } from '../../../../base/browser/markdownRenderer.js'; -import { assertNever } from '../../../../base/common/assert.js'; -import { RunOnceScheduler, timeout } from '../../../../base/common/async.js'; -import { encodeBase64 } from '../../../../base/common/buffer.js'; -import { CancellationToken, CancellationTokenSource } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { arrayEqualsC } from '../../../../base/common/equals.js'; -import { toErrorMessage } from '../../../../base/common/errorMessage.js'; -import { CancellationError, isCancellationError } from '../../../../base/common/errors.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { createMarkdownCommandLink, MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { combinedDisposable, Disposable, DisposableStore, IDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { derived, IObservable, IReader, observableFromEventOpts, ObservableSet } from '../../../../base/common/observable.js'; -import Severity from '../../../../base/common/severity.js'; -import { StopWatch } from '../../../../base/common/stopwatch.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { localize, localize2 } from '../../../../nls.js'; -import { IAccessibilityService } from '../../../../platform/accessibility/common/accessibility.js'; -import { AccessibilitySignal, IAccessibilitySignalService } from '../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import * as JSONContributionRegistry from '../../../../platform/jsonschemas/common/jsonContributionRegistry.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { observableConfigValue } from '../../../../platform/observable/common/platformObservableUtils.js'; -import { Registry } from '../../../../platform/registry/common/platform.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js'; -import { IExtensionService } from '../../../services/extensions/common/extensions.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IVariableReference } from '../common/chatModes.js'; -import { ChatToolInvocation } from '../common/chatProgressTypes/chatToolInvocation.js'; -import { ConfirmedReason, IChatService, IChatToolInvocation, ToolConfirmKind } from '../common/chatService.js'; -import { ChatRequestToolReferenceEntry, toToolSetVariableEntry, toToolVariableEntry } from '../common/chatVariableEntries.js'; -import { ChatConfiguration } from '../common/constants.js'; -import { ILanguageModelToolsConfirmationService } from '../common/languageModelToolsConfirmationService.js'; -import { CountTokensCallback, createToolSchemaUri, ILanguageModelToolsService, IPreparedToolInvocation, IToolAndToolSetEnablementMap, IToolData, IToolImpl, IToolInvocation, IToolResult, IToolResultInputOutputDetails, SpecedToolAliases, stringifyPromptTsxPart, ToolDataSource, ToolSet, VSCodeToolReference } from '../common/languageModelToolsService.js'; -import { getToolConfirmationAlert } from './chatAccessibilityProvider.js'; +import { renderAsPlaintext } from '../../../../../base/browser/markdownRenderer.js'; +import { assertNever } from '../../../../../base/common/assert.js'; +import { RunOnceScheduler, timeout } from '../../../../../base/common/async.js'; +import { encodeBase64 } from '../../../../../base/common/buffer.js'; +import { CancellationToken, CancellationTokenSource } from '../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { arrayEqualsC } from '../../../../../base/common/equals.js'; +import { toErrorMessage } from '../../../../../base/common/errorMessage.js'; +import { CancellationError, isCancellationError } from '../../../../../base/common/errors.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { createMarkdownCommandLink, MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; +import { combinedDisposable, Disposable, DisposableStore, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { derived, IObservable, IReader, observableFromEventOpts, ObservableSet } from '../../../../../base/common/observable.js'; +import Severity from '../../../../../base/common/severity.js'; +import { StopWatch } from '../../../../../base/common/stopwatch.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { localize, localize2 } from '../../../../../nls.js'; +import { IAccessibilityService } from '../../../../../platform/accessibility/common/accessibility.js'; +import { AccessibilitySignal, IAccessibilitySignalService } from '../../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { IContextKey, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; +import { IDialogService } from '../../../../../platform/dialogs/common/dialogs.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import * as JSONContributionRegistry from '../../../../../platform/jsonschemas/common/jsonContributionRegistry.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { observableConfigValue } from '../../../../../platform/observable/common/platformObservableUtils.js'; +import { Registry } from '../../../../../platform/registry/common/platform.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; +import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; +import { IExtensionService } from '../../../../services/extensions/common/extensions.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IVariableReference } from '../../common/chatModes.js'; +import { ChatToolInvocation } from '../../common/model/chatProgressTypes/chatToolInvocation.js'; +import { ConfirmedReason, IChatService, IChatToolInvocation, ToolConfirmKind } from '../../common/chatService/chatService.js'; +import { ChatRequestToolReferenceEntry, toToolSetVariableEntry, toToolVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { ChatConfiguration } from '../../common/constants.js'; +import { ILanguageModelToolsConfirmationService } from '../../common/tools/languageModelToolsConfirmationService.js'; +import { CountTokensCallback, createToolSchemaUri, ILanguageModelToolsService, IPreparedToolInvocation, IToolAndToolSetEnablementMap, IToolData, IToolImpl, IToolInvocation, IToolResult, IToolResultInputOutputDetails, SpecedToolAliases, stringifyPromptTsxPart, ToolDataSource, ToolSet, VSCodeToolReference } from '../../common/tools/languageModelToolsService.js'; +import { getToolConfirmationAlert } from '../accessibility/chatAccessibilityProvider.js'; const jsonSchemaRegistry = Registry.as(JSONContributionRegistry.Extensions.JSONContribution); diff --git a/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.ts b/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.ts index 7d0bfe9a8ed..6b959e113ab 100644 --- a/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.ts +++ b/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.ts @@ -24,7 +24,7 @@ import { IExtensionService } from '../../../../services/extensions/common/extens import { ILifecycleService, LifecyclePhase } from '../../../../services/lifecycle/common/lifecycle.js'; import { IUserDataProfileService } from '../../../../services/userDataProfile/common/userDataProfile.js'; import { CHAT_CATEGORY, CHAT_CONFIG_MENU_ID } from '../actions/chatActions.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource, ToolSet } from '../../common/languageModelToolsService.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource, ToolSet } from '../../common/tools/languageModelToolsService.js'; import { IRawToolSetContribution } from '../../common/tools/languageModelToolsContribution.js'; import { IEditorService } from '../../../../services/editor/common/editorService.js'; import { Codicon, getAllCodicons } from '../../../../../base/common/codicons.js'; @@ -36,7 +36,7 @@ import * as JSONContributionRegistry from '../../../../../platform/jsonschemas/c import { Registry } from '../../../../../platform/registry/common/platform.js'; import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contextkey.js'; import { ChatViewId } from '../chat.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; const toolEnumValues: string[] = []; diff --git a/src/vs/workbench/contrib/chat/browser/chatAgentHover.ts b/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.ts similarity index 79% rename from src/vs/workbench/contrib/chat/browser/chatAgentHover.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.ts index 53485a25897..a9d7948cf98 100644 --- a/src/vs/workbench/contrib/chat/browser/chatAgentHover.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatAgentHover.ts @@ -3,22 +3,22 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { IManagedHoverOptions } from '../../../../base/browser/ui/hover/hover.js'; -import { renderIcon } from '../../../../base/browser/ui/iconLabel/iconLabels.js'; -import { CancellationTokenSource } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { FileAccess } from '../../../../base/common/network.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { localize } from '../../../../nls.js'; -import { ICommandService } from '../../../../platform/commands/common/commands.js'; -import { getFullyQualifiedId, IChatAgentData, IChatAgentNameService, IChatAgentService } from '../common/chatAgents.js'; -import { showExtensionsWithIdsCommandId } from '../../extensions/browser/extensionsActions.js'; -import { IExtensionsWorkbenchService } from '../../extensions/common/extensions.js'; -import { verifiedPublisherIcon } from '../../../services/extensionManagement/common/extensionsIcons.js'; +import * as dom from '../../../../../base/browser/dom.js'; +import { IManagedHoverOptions } from '../../../../../base/browser/ui/hover/hover.js'; +import { renderIcon } from '../../../../../base/browser/ui/iconLabel/iconLabels.js'; +import { CancellationTokenSource } from '../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { Disposable } from '../../../../../base/common/lifecycle.js'; +import { FileAccess } from '../../../../../base/common/network.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { localize } from '../../../../../nls.js'; +import { ICommandService } from '../../../../../platform/commands/common/commands.js'; +import { getFullyQualifiedId, IChatAgentData, IChatAgentNameService, IChatAgentService } from '../../common/participants/chatAgents.js'; +import { showExtensionsWithIdsCommandId } from '../../../extensions/browser/extensionsActions.js'; +import { IExtensionsWorkbenchService } from '../../../extensions/common/extensions.js'; +import { verifiedPublisherIcon } from '../../../../services/extensionManagement/common/extensionsIcons.js'; export class ChatAgentHover extends Disposable { public readonly domNode: HTMLElement; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentMarkdownRenderer.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.ts similarity index 80% rename from src/vs/workbench/contrib/chat/browser/chatContentMarkdownRenderer.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.ts index 6855178fa58..5a7f98614d6 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentMarkdownRenderer.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentMarkdownRenderer.ts @@ -3,17 +3,17 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { $ } from '../../../../base/browser/dom.js'; -import { IRenderedMarkdown, MarkdownRenderOptions } from '../../../../base/browser/markdownRenderer.js'; -import { getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js'; -import { IMarkdownString } from '../../../../base/common/htmlContent.js'; -import { DisposableStore } from '../../../../base/common/lifecycle.js'; -import { IMarkdownRenderer, IMarkdownRendererService } from '../../../../platform/markdown/browser/markdownRenderer.js'; -import { ILanguageService } from '../../../../editor/common/languages/language.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IHoverService } from '../../../../platform/hover/browser/hover.js'; -import { IOpenerService } from '../../../../platform/opener/common/opener.js'; -import product from '../../../../platform/product/common/product.js'; +import { $ } from '../../../../../base/browser/dom.js'; +import { IRenderedMarkdown, MarkdownRenderOptions } from '../../../../../base/browser/markdownRenderer.js'; +import { getDefaultHoverDelegate } from '../../../../../base/browser/ui/hover/hoverDelegateFactory.js'; +import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; +import { DisposableStore } from '../../../../../base/common/lifecycle.js'; +import { IMarkdownRenderer, IMarkdownRendererService } from '../../../../../platform/markdown/browser/markdownRenderer.js'; +import { ILanguageService } from '../../../../../editor/common/languages/language.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; +import { IOpenerService } from '../../../../../platform/opener/common/opener.js'; +import product from '../../../../../platform/product/common/product.js'; export const allowedChatMarkdownHtmlTags = Object.freeze([ 'b', diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAgentCommandContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.ts similarity index 68% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatAgentCommandContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.ts index cbc8518b7c4..db60c25470c 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAgentCommandContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAgentCommandContentPart.ts @@ -4,18 +4,18 @@ *--------------------------------------------------------------------------------------------*/ -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; -import { IChatAgentCommand } from '../../common/chatAgents.js'; -import { chatSubcommandLeader } from '../../common/chatParserTypes.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; -import { ChatTreeItem } from '../chat.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; +import { IChatAgentCommand } from '../../../common/participants/chatAgents.js'; +import { chatSubcommandLeader } from '../../../common/requestParser/chatParserTypes.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem } from '../../chat.js'; import { IChatContentPart } from './chatContentParts.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { localize } from '../../../../../nls.js'; -import { Button } from '../../../../../base/browser/ui/button/button.js'; -import { generateUuid } from '../../../../../base/common/uuid.js'; -import { HoverStyle } from '../../../../../base/browser/ui/hover/hover.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { localize } from '../../../../../../nls.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { generateUuid } from '../../../../../../base/common/uuid.js'; +import { HoverStyle } from '../../../../../../base/browser/ui/hover/hover.js'; export class ChatAgentCommandContentPart extends Disposable implements IChatContentPart { diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAnonymousRateLimitedPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.ts similarity index 71% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatAnonymousRateLimitedPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.ts index ad1a40d86c6..874e3493171 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAnonymousRateLimitedPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAnonymousRateLimitedPart.ts @@ -3,18 +3,18 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { $, append } from '../../../../../base/browser/dom.js'; -import { Button } from '../../../../../base/browser/ui/button/button.js'; -import { WorkbenchActionExecutedClassification, WorkbenchActionExecutedEvent } from '../../../../../base/common/actions.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { localize } from '../../../../../nls.js'; -import { ICommandService } from '../../../../../platform/commands/common/commands.js'; -import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; -import { defaultButtonStyles } from '../../../../../platform/theme/browser/defaultStyles.js'; -import { IChatEntitlementService } from '../../../../services/chat/common/chatEntitlementService.js'; -import { IChatErrorDetailsPart, IChatRendererContent } from '../../common/chatViewModel.js'; +import { $, append } from '../../../../../../base/browser/dom.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { WorkbenchActionExecutedClassification, WorkbenchActionExecutedEvent } from '../../../../../../base/common/actions.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { localize } from '../../../../../../nls.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { defaultButtonStyles } from '../../../../../../platform/theme/browser/defaultStyles.js'; +import { IChatEntitlementService } from '../../../../../services/chat/common/chatEntitlementService.js'; +import { IChatErrorDetailsPart, IChatRendererContent } from '../../../common/model/chatViewModel.js'; import { IChatContentPart } from './chatContentParts.js'; export class ChatAnonymousRateLimitedPart extends Disposable implements IChatContentPart { diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAttachmentsContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.ts similarity index 92% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatAttachmentsContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.ts index 56f5b0c247f..a4e228b9182 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAttachmentsContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatAttachmentsContentPart.ts @@ -3,17 +3,17 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { Disposable, DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { basename } from '../../../../../base/common/path.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ResourceLabels } from '../../../../browser/labels.js'; -import { IChatRequestVariableEntry, isElementVariableEntry, isImageVariableEntry, isNotebookOutputVariableEntry, isPasteVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, isSCMHistoryItemChangeRangeVariableEntry, isSCMHistoryItemChangeVariableEntry, isSCMHistoryItemVariableEntry, isTerminalVariableEntry, isWorkspaceVariableEntry, OmittedState } from '../../common/chatVariableEntries.js'; -import { ChatResponseReferencePartStatusKind, IChatContentReference } from '../../common/chatService.js'; -import { DefaultChatAttachmentWidget, ElementChatAttachmentWidget, FileAttachmentWidget, ImageAttachmentWidget, NotebookCellOutputChatAttachmentWidget, PasteAttachmentWidget, PromptFileAttachmentWidget, PromptTextAttachmentWidget, SCMHistoryItemAttachmentWidget, SCMHistoryItemChangeAttachmentWidget, SCMHistoryItemChangeRangeAttachmentWidget, TerminalCommandAttachmentWidget, ToolSetOrToolItemAttachmentWidget } from '../chatAttachmentWidgets.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { Disposable, DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { basename } from '../../../../../../base/common/path.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { Range } from '../../../../../../editor/common/core/range.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ResourceLabels } from '../../../../../browser/labels.js'; +import { IChatRequestVariableEntry, isElementVariableEntry, isImageVariableEntry, isNotebookOutputVariableEntry, isPasteVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, isSCMHistoryItemChangeRangeVariableEntry, isSCMHistoryItemChangeVariableEntry, isSCMHistoryItemVariableEntry, isTerminalVariableEntry, isWorkspaceVariableEntry, OmittedState } from '../../../common/attachments/chatVariableEntries.js'; +import { ChatResponseReferencePartStatusKind, IChatContentReference } from '../../../common/chatService/chatService.js'; +import { DefaultChatAttachmentWidget, ElementChatAttachmentWidget, FileAttachmentWidget, ImageAttachmentWidget, NotebookCellOutputChatAttachmentWidget, PasteAttachmentWidget, PromptFileAttachmentWidget, PromptTextAttachmentWidget, SCMHistoryItemAttachmentWidget, SCMHistoryItemChangeAttachmentWidget, SCMHistoryItemChangeRangeAttachmentWidget, TerminalCommandAttachmentWidget, ToolSetOrToolItemAttachmentWidget } from '../../attachments/chatAttachmentWidgets.js'; export interface IChatAttachmentsContentPartOptions { readonly variables: IChatRequestVariableEntry[]; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatChangesSummaryPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.ts similarity index 83% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatChangesSummaryPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.ts index 414be0b6dfb..ca58382b997 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatChangesSummaryPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatChangesSummaryPart.ts @@ -3,34 +3,34 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { $ } from '../../../../../base/browser/dom.js'; -import { ButtonWithIcon } from '../../../../../base/browser/ui/button/button.js'; -import { IListRenderer, IListVirtualDelegate } from '../../../../../base/browser/ui/list/list.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { Iterable } from '../../../../../base/common/iterator.js'; -import { Disposable, DisposableStore, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; -import { autorun, IObservable } from '../../../../../base/common/observable.js'; -import { isEqual } from '../../../../../base/common/resources.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { localize2 } from '../../../../../nls.js'; -import { FileKind } from '../../../../../platform/files/common/files.js'; -import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { WorkbenchList } from '../../../../../platform/list/browser/listService.js'; -import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; -import { IResourceLabel, ResourceLabels } from '../../../../browser/labels.js'; -import { IEditorGroupsService } from '../../../../services/editor/common/editorGroupsService.js'; -import { IEditorService } from '../../../../services/editor/common/editorService.js'; -import { createFileIconThemableTreeContainerScope } from '../../../files/browser/views/explorerView.js'; -import { MultiDiffEditorInput } from '../../../multiDiffEditor/browser/multiDiffEditorInput.js'; -import { MultiDiffEditorItem } from '../../../multiDiffEditor/browser/multiDiffSourceResolverService.js'; -import { IChatEditingSession, IEditSessionEntryDiff } from '../../common/chatEditingService.js'; -import { IChatService } from '../../common/chatService.js'; -import { IChatChangesSummaryPart as IChatFileChangesSummaryPart, IChatRendererContent } from '../../common/chatViewModel.js'; -import { ChatTreeItem } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { $ } from '../../../../../../base/browser/dom.js'; +import { ButtonWithIcon } from '../../../../../../base/browser/ui/button/button.js'; +import { IListRenderer, IListVirtualDelegate } from '../../../../../../base/browser/ui/list/list.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { Iterable } from '../../../../../../base/common/iterator.js'; +import { Disposable, DisposableStore, IDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { autorun, IObservable } from '../../../../../../base/common/observable.js'; +import { isEqual } from '../../../../../../base/common/resources.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { localize2 } from '../../../../../../nls.js'; +import { FileKind } from '../../../../../../platform/files/common/files.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { WorkbenchList } from '../../../../../../platform/list/browser/listService.js'; +import { IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { IResourceLabel, ResourceLabels } from '../../../../../browser/labels.js'; +import { IEditorGroupsService } from '../../../../../services/editor/common/editorGroupsService.js'; +import { IEditorService } from '../../../../../services/editor/common/editorService.js'; +import { createFileIconThemableTreeContainerScope } from '../../../../files/browser/views/explorerView.js'; +import { MultiDiffEditorInput } from '../../../../multiDiffEditor/browser/multiDiffEditorInput.js'; +import { MultiDiffEditorItem } from '../../../../multiDiffEditor/browser/multiDiffSourceResolverService.js'; +import { IChatEditingSession, IEditSessionEntryDiff } from '../../../common/editing/chatEditingService.js'; +import { IChatService } from '../../../common/chatService/chatService.js'; +import { IChatChangesSummaryPart as IChatFileChangesSummaryPart, IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem } from '../../chat.js'; import { ResourcePool } from './chatCollections.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCodeCitationContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.ts similarity index 79% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatCodeCitationContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.ts index 5c4bf99fc1e..dc8fa85a730 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCodeCitationContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCodeCitationContentPart.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Button } from '../../../../../base/browser/ui/button/button.js'; -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { localize } from '../../../../../nls.js'; -import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; -import { ChatTreeItem } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../nls.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { ChatTreeItem } from '../../chat.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; -import { getCodeCitationsMessage } from '../../common/chatModel.js'; -import { IChatCodeCitations, IChatRendererContent } from '../../common/chatViewModel.js'; -import { IEditorService } from '../../../../services/editor/common/editorService.js'; +import { getCodeCitationsMessage } from '../../../common/model/chatModel.js'; +import { IChatCodeCitations, IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { IEditorService } from '../../../../../services/editor/common/editorService.js'; type ChatCodeCitationOpenedClassification = { owner: 'roblourens'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollapsibleContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollapsibleContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.ts index 3995a8da496..eb41bbcc12e 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollapsibleContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollapsibleContentPart.ts @@ -3,21 +3,21 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { $ } from '../../../../../base/browser/dom.js'; -import { ButtonWithIcon } from '../../../../../base/browser/ui/button/button.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { IMarkdownString, MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable, IDisposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; -import { autorun, IObservable, observableValue } from '../../../../../base/common/observable.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; -import { ChatTreeItem } from '../chat.js'; +import { $ } from '../../../../../../base/browser/dom.js'; +import { ButtonWithIcon } from '../../../../../../base/browser/ui/button/button.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { IMarkdownString, MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable, IDisposable, MutableDisposable } from '../../../../../../base/common/lifecycle.js'; +import { autorun, IObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem } from '../../chat.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; -import { renderFileWidgets } from '../chatInlineAnchorWidget.js'; +import { renderFileWidgets } from './chatInlineAnchorWidget.js'; import { IChatMarkdownAnchorService } from './chatMarkdownAnchorService.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IRenderedMarkdown } from '../../../../../base/browser/markdownRenderer.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IRenderedMarkdown } from '../../../../../../base/browser/markdownRenderer.js'; export abstract class ChatCollapsibleContentPart extends Disposable implements IChatContentPart { diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.ts similarity index 92% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.ts index 4432e44201a..1ba368b8220 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCollections.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IDisposable, Disposable } from '../../../../../base/common/lifecycle.js'; +import { IDisposable, Disposable } from '../../../../../../base/common/lifecycle.js'; export class ResourcePool extends Disposable { private readonly pool: T[] = []; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.ts similarity index 69% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.ts index c74dfed3728..0ec3904a72f 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatCommandContentPart.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Button } from '../../../../../base/browser/ui/button/button.js'; -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { localize } from '../../../../../nls.js'; -import { ICommandService } from '../../../../../platform/commands/common/commands.js'; -import { defaultButtonStyles } from '../../../../../platform/theme/browser/defaultStyles.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../nls.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { defaultButtonStyles } from '../../../../../../platform/theme/browser/defaultStyles.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; -import { IChatProgressRenderableResponseContent } from '../../common/chatModel.js'; -import { IChatCommandButton } from '../../common/chatService.js'; -import { isResponseVM } from '../../common/chatViewModel.js'; +import { IChatProgressRenderableResponseContent } from '../../../common/model/chatModel.js'; +import { IChatCommandButton } from '../../../common/chatService/chatService.js'; +import { isResponseVM } from '../../../common/model/chatViewModel.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.ts index 71300c15357..69d2b040db4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationContentPart.ts @@ -3,14 +3,14 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Emitter } from '../../../../../base/common/event.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { localize } from '../../../../../nls.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IChatProgressRenderableResponseContent } from '../../common/chatModel.js'; -import { IChatConfirmation, IChatSendRequestOptions, IChatService } from '../../common/chatService.js'; -import { isResponseVM } from '../../common/chatViewModel.js'; -import { IChatWidgetService } from '../chat.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../nls.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatProgressRenderableResponseContent } from '../../../common/model/chatModel.js'; +import { IChatConfirmation, IChatSendRequestOptions, IChatService } from '../../../common/chatService/chatService.js'; +import { isResponseVM } from '../../../common/model/chatViewModel.js'; +import { IChatWidgetService } from '../../chat.js'; import { SimpleChatConfirmationWidget } from './chatConfirmationWidget.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.ts similarity index 92% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationWidget.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.ts index 35cbf40995d..1c0f34858a6 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.ts @@ -3,24 +3,24 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { IRenderedMarkdown } from '../../../../../base/browser/markdownRenderer.js'; -import { Button, ButtonWithDropdown, IButton, IButtonOptions } from '../../../../../base/browser/ui/button/button.js'; -import { Action, Separator } from '../../../../../base/common/actions.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { IMarkdownString, MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; -import type { ThemeIcon } from '../../../../../base/common/themables.js'; -import { localize } from '../../../../../nls.js'; -import { MenuWorkbenchToolBar } from '../../../../../platform/actions/browser/toolbar.js'; -import { MenuId } from '../../../../../platform/actions/common/actions.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; -import { IMarkdownRendererService } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { defaultButtonStyles } from '../../../../../platform/theme/browser/defaultStyles.js'; -import { renderFileWidgets } from '../chatInlineAnchorWidget.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { IRenderedMarkdown } from '../../../../../../base/browser/markdownRenderer.js'; +import { Button, ButtonWithDropdown, IButton, IButtonOptions } from '../../../../../../base/browser/ui/button/button.js'; +import { Action, Separator } from '../../../../../../base/common/actions.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { IMarkdownString, MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable, MutableDisposable } from '../../../../../../base/common/lifecycle.js'; +import type { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { localize } from '../../../../../../nls.js'; +import { MenuWorkbenchToolBar } from '../../../../../../platform/actions/browser/toolbar.js'; +import { MenuId } from '../../../../../../platform/actions/common/actions.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { IMarkdownRendererService } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { defaultButtonStyles } from '../../../../../../platform/theme/browser/defaultStyles.js'; +import { renderFileWidgets } from './chatInlineAnchorWidget.js'; import { IChatContentPartRenderContext } from './chatContentParts.js'; import { IChatMarkdownAnchorService } from './chatMarkdownAnchorService.js'; import { ChatMarkdownContentPart, IChatMarkdownContentPartOptions } from './chatMarkdownContentPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentCodePools.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.ts similarity index 88% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentCodePools.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.ts index fc2d3e8f116..bacc254221c 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentCodePools.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentCodePools.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { MenuId } from '../../../../../platform/actions/common/actions.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { MenuId } from '../../../../../../platform/actions/common/actions.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; import { IChatRendererDelegate } from '../chatListRenderer.js'; import { ChatEditorOptions } from '../chatOptions.js'; -import { CodeBlockPart, CodeCompareBlockPart } from '../codeBlockPart.js'; +import { CodeBlockPart, CodeCompareBlockPart } from './codeBlockPart.js'; import { ResourcePool, IDisposableReference } from './chatCollections.js'; export class EditorPool extends Disposable { diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.ts index e311f7ab8fa..38bcd3048cf 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.ts @@ -3,10 +3,10 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IDisposable } from '../../../../../base/common/lifecycle.js'; -import { ChatTreeItem, IChatCodeBlockInfo } from '../chat.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; -import { CodeBlockModelCollection } from '../../common/codeBlockModelCollection.js'; +import { IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ChatTreeItem, IChatCodeBlockInfo } from '../../chat.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { CodeBlockModelCollection } from '../../../common/widget/codeBlockModelCollection.js'; import { DiffEditorPool, EditorPool } from './chatContentCodePools.js'; export interface IChatContentPart extends IDisposable { diff --git a/src/vs/workbench/contrib/chat/browser/chatDiffBlockPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatDiffBlockPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.ts index 073587ade82..9bbf1a862c7 100644 --- a/src/vs/workbench/contrib/chat/browser/chatDiffBlockPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatDiffBlockPart.ts @@ -3,21 +3,21 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Emitter } from '../../../../base/common/event.js'; -import { hashAsync } from '../../../../base/common/hash.js'; -import { Disposable, IReference, MutableDisposable } from '../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { URI } from '../../../../base/common/uri.js'; -import { generateUuid } from '../../../../base/common/uuid.js'; -import { ILanguageService } from '../../../../editor/common/languages/language.js'; -import { ITextModel } from '../../../../editor/common/model.js'; -import { IModelService } from '../../../../editor/common/services/model.js'; -import { IResolvedTextEditorModel, ITextModelService } from '../../../../editor/common/services/resolverService.js'; -import { EditorModel } from '../../../common/editor/editorModel.js'; -import { IChatResponseViewModel } from '../common/chatViewModel.js'; -import { IDisposableReference } from './chatContentParts/chatCollections.js'; -import { DiffEditorPool } from './chatContentParts/chatContentCodePools.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { hashAsync } from '../../../../../../base/common/hash.js'; +import { Disposable, IReference, MutableDisposable } from '../../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../../base/common/network.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../../base/common/uuid.js'; +import { ILanguageService } from '../../../../../../editor/common/languages/language.js'; +import { ITextModel } from '../../../../../../editor/common/model.js'; +import { IModelService } from '../../../../../../editor/common/services/model.js'; +import { IResolvedTextEditorModel, ITextModelService } from '../../../../../../editor/common/services/resolverService.js'; +import { EditorModel } from '../../../../../common/editor/editorModel.js'; +import { IChatResponseViewModel } from '../../../common/model/chatViewModel.js'; +import { IDisposableReference } from './chatCollections.js'; +import { DiffEditorPool } from './chatContentCodePools.js'; import { CodeCompareBlockPart, ICodeCompareBlockData, ICodeCompareBlockDiffData } from './codeBlockPart.js'; /** diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatElicitationContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatElicitationContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.ts index 8da7eb3c247..66fee04c673 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatElicitationContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatElicitationContentPart.ts @@ -3,21 +3,21 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Emitter } from '../../../../../base/common/event.js'; -import { IMarkdownString, isMarkdownString, MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; -import { autorun } from '../../../../../base/common/observable.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IKeybindingService } from '../../../../../platform/keybinding/common/keybinding.js'; -import { IChatProgressRenderableResponseContent } from '../../common/chatModel.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { ElicitationState, IChatElicitationRequest, IChatElicitationRequestSerialized } from '../../common/chatService.js'; -import { IChatAccessibilityService } from '../chat.js'; -import { AcceptElicitationRequestActionId } from '../actions/chatElicitationActions.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { IMarkdownString, isMarkdownString, MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable, IDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { autorun } from '../../../../../../base/common/observable.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; +import { IChatProgressRenderableResponseContent } from '../../../common/model/chatModel.js'; +import { ChatContextKeys } from '../../../common/actions/chatContextKeys.js'; +import { ElicitationState, IChatElicitationRequest, IChatElicitationRequestSerialized } from '../../../common/chatService/chatService.js'; +import { IChatAccessibilityService } from '../../chat.js'; +import { AcceptElicitationRequestActionId } from '../../actions/chatElicitationActions.js'; import { ChatConfirmationWidget, IChatConfirmationButton } from './chatConfirmationWidget.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; -import { IAction } from '../../../../../base/common/actions.js'; +import { IAction } from '../../../../../../base/common/actions.js'; export class ChatElicitationContentPart extends Disposable implements IChatContentPart { public readonly domNode: HTMLElement; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorConfirmationPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.ts similarity index 76% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorConfirmationPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.ts index 8323b3b87fa..f9dea3c88e3 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorConfirmationPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorConfirmationPart.ts @@ -3,17 +3,17 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Button, IButtonOptions } from '../../../../../base/browser/ui/button/button.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { defaultButtonStyles } from '../../../../../platform/theme/browser/defaultStyles.js'; -import { ChatErrorLevel, IChatResponseErrorDetailsConfirmationButton, IChatSendRequestOptions, IChatService } from '../../common/chatService.js'; -import { assertIsResponseVM, IChatErrorDetailsPart, IChatRendererContent } from '../../common/chatViewModel.js'; -import { IChatWidgetService } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Button, IButtonOptions } from '../../../../../../base/browser/ui/button/button.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { IMarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { defaultButtonStyles } from '../../../../../../platform/theme/browser/defaultStyles.js'; +import { ChatErrorLevel, IChatResponseErrorDetailsConfirmationButton, IChatSendRequestOptions, IChatService } from '../../../common/chatService/chatService.js'; +import { assertIsResponseVM, IChatErrorDetailsPart, IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { IChatWidgetService } from '../../chat.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; import { ChatErrorWidget } from './chatErrorContentPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.ts similarity index 73% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.ts index b9b5206d3b8..dac4b3292f7 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatErrorContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatErrorContentPart.ts @@ -3,14 +3,14 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { renderIcon } from '../../../../../base/browser/ui/iconLabel/iconLabels.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { ChatErrorLevel } from '../../common/chatService.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { renderIcon } from '../../../../../../base/browser/ui/iconLabel/iconLabels.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { IMarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { ChatErrorLevel } from '../../../common/chatService/chatService.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; import { IChatContentPart } from './chatContentParts.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatExtensionsContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.ts similarity index 72% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatExtensionsContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.ts index c042eecfc03..5576bf98c9d 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatExtensionsContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatExtensionsContentPart.ts @@ -4,20 +4,20 @@ *--------------------------------------------------------------------------------------------*/ import './media/chatExtensionsContent.css'; -import * as dom from '../../../../../base/browser/dom.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ExtensionsList, getExtensions } from '../../../extensions/browser/extensionsViewer.js'; -import { IExtensionsWorkbenchService } from '../../../extensions/common/extensions.js'; -import { IChatExtensionsContent } from '../../common/chatService.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; -import { ChatTreeItem, ChatViewId, IChatCodeBlockInfo } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ExtensionsList, getExtensions } from '../../../../extensions/browser/extensionsViewer.js'; +import { IExtensionsWorkbenchService } from '../../../../extensions/common/extensions.js'; +import { IChatExtensionsContent } from '../../../common/chatService/chatService.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem, ChatViewId, IChatCodeBlockInfo } from '../../chat.js'; import { IChatContentPart } from './chatContentParts.js'; -import { PagedModel } from '../../../../../base/common/paging.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { localize } from '../../../../../nls.js'; +import { PagedModel } from '../../../../../../base/common/paging.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { localize } from '../../../../../../nls.js'; export class ChatExtensionsContentPart extends Disposable implements IChatContentPart { public readonly domNode: HTMLElement; diff --git a/src/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.ts similarity index 82% rename from src/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.ts index 7c73af69a20..394a981cbec 100644 --- a/src/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatInlineAnchorWidget.ts @@ -3,46 +3,47 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { StandardMouseEvent } from '../../../../base/browser/mouseEvent.js'; -import { getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js'; -import { KeyCode, KeyMod } from '../../../../base/common/keyCodes.js'; -import { Disposable, DisposableStore } from '../../../../base/common/lifecycle.js'; -import { URI } from '../../../../base/common/uri.js'; -import { ICodeEditorService } from '../../../../editor/browser/services/codeEditorService.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { EditorContextKeys } from '../../../../editor/common/editorContextKeys.js'; -import { Location, SymbolKinds } from '../../../../editor/common/languages.js'; -import { ILanguageService } from '../../../../editor/common/languages/language.js'; -import { getIconClasses } from '../../../../editor/common/services/getIconClasses.js'; -import { IModelService } from '../../../../editor/common/services/model.js'; -import { DefinitionAction } from '../../../../editor/contrib/gotoSymbol/browser/goToCommands.js'; -import * as nls from '../../../../nls.js'; -import { getFlatContextMenuActions } from '../../../../platform/actions/browser/menuEntryActionViewItem.js'; -import { Action2, IMenuService, MenuId, registerAction2 } from '../../../../platform/actions/common/actions.js'; -import { IClipboardService } from '../../../../platform/clipboard/common/clipboardService.js'; -import { ICommandService } from '../../../../platform/commands/common/commands.js'; -import { IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.js'; -import { IResourceStat } from '../../../../platform/dnd/browser/dnd.js'; -import { ITextResourceEditorInput } from '../../../../platform/editor/common/editor.js'; -import { FileKind, IFileService } from '../../../../platform/files/common/files.js'; -import { IHoverService } from '../../../../platform/hover/browser/hover.js'; -import { IInstantiationService, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; -import { KeybindingWeight } from '../../../../platform/keybinding/common/keybindingsRegistry.js'; -import { ILabelService } from '../../../../platform/label/common/label.js'; -import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js'; -import { FolderThemeIcon, IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { fillEditorsDragData } from '../../../browser/dnd.js'; -import { ResourceContextKey } from '../../../common/contextkeys.js'; -import { IEditorService, SIDE_GROUP } from '../../../services/editor/common/editorService.js'; -import { INotebookDocumentService } from '../../../services/notebook/common/notebookDocumentService.js'; -import { ExplorerFolderContext } from '../../files/common/files.js'; -import { IWorkspaceSymbol } from '../../search/common/search.js'; -import { IChatContentInlineReference } from '../common/chatService.js'; -import { IChatWidgetService } from './chat.js'; -import { chatAttachmentResourceContextKey, hookUpSymbolAttachmentDragAndContextMenu } from './chatAttachmentWidgets.js'; -import { IChatMarkdownAnchorService } from './chatContentParts/chatMarkdownAnchorService.js'; +import './media/chatInlineAnchorWidget.css'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { StandardMouseEvent } from '../../../../../../base/browser/mouseEvent.js'; +import { getDefaultHoverDelegate } from '../../../../../../base/browser/ui/hover/hoverDelegateFactory.js'; +import { KeyCode, KeyMod } from '../../../../../../base/common/keyCodes.js'; +import { Disposable, DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { ICodeEditorService } from '../../../../../../editor/browser/services/codeEditorService.js'; +import { IRange } from '../../../../../../editor/common/core/range.js'; +import { EditorContextKeys } from '../../../../../../editor/common/editorContextKeys.js'; +import { Location, SymbolKinds } from '../../../../../../editor/common/languages.js'; +import { ILanguageService } from '../../../../../../editor/common/languages/language.js'; +import { getIconClasses } from '../../../../../../editor/common/services/getIconClasses.js'; +import { IModelService } from '../../../../../../editor/common/services/model.js'; +import { DefinitionAction } from '../../../../../../editor/contrib/gotoSymbol/browser/goToCommands.js'; +import * as nls from '../../../../../../nls.js'; +import { getFlatContextMenuActions } from '../../../../../../platform/actions/browser/menuEntryActionViewItem.js'; +import { Action2, IMenuService, MenuId, registerAction2 } from '../../../../../../platform/actions/common/actions.js'; +import { IClipboardService } from '../../../../../../platform/clipboard/common/clipboardService.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { IContextKey, IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.js'; +import { IResourceStat } from '../../../../../../platform/dnd/browser/dnd.js'; +import { ITextResourceEditorInput } from '../../../../../../platform/editor/common/editor.js'; +import { FileKind, IFileService } from '../../../../../../platform/files/common/files.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService, ServicesAccessor } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { KeybindingWeight } from '../../../../../../platform/keybinding/common/keybindingsRegistry.js'; +import { ILabelService } from '../../../../../../platform/label/common/label.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { FolderThemeIcon, IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { fillEditorsDragData } from '../../../../../browser/dnd.js'; +import { ResourceContextKey } from '../../../../../common/contextkeys.js'; +import { IEditorService, SIDE_GROUP } from '../../../../../services/editor/common/editorService.js'; +import { INotebookDocumentService } from '../../../../../services/notebook/common/notebookDocumentService.js'; +import { ExplorerFolderContext } from '../../../../files/common/files.js'; +import { IWorkspaceSymbol } from '../../../../search/common/search.js'; +import { IChatContentInlineReference } from '../../../common/chatService/chatService.js'; +import { IChatWidgetService } from '../../chat.js'; +import { chatAttachmentResourceContextKey, hookUpSymbolAttachmentDragAndContextMenu } from '../../attachments/chatAttachmentWidgets.js'; +import { IChatMarkdownAnchorService } from './chatMarkdownAnchorService.js'; type ContentRefData = | { readonly kind: 'symbol'; readonly symbol: IWorkspaceSymbol } diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.ts similarity index 89% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.ts index 8a67210387f..312fffdb8c4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.ts @@ -3,10 +3,10 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { addDisposableListener, isActiveElement } from '../../../../../base/browser/dom.js'; -import { Disposable, IDisposable, combinedDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; -import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; -import { InlineAnchorWidget } from '../chatInlineAnchorWidget.js'; +import { addDisposableListener, isActiveElement } from '../../../../../../base/browser/dom.js'; +import { Disposable, IDisposable, combinedDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { createDecorator } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { InlineAnchorWidget } from './chatInlineAnchorWidget.js'; export const IChatMarkdownAnchorService = createDecorator('chatMarkdownAnchorService'); diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.ts similarity index 86% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.ts index f933b7e83a2..bc12a4d9395 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownContentPart.ts @@ -3,61 +3,61 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { allowedMarkdownHtmlAttributes, MarkdownRendererMarkedOptions, type MarkdownRenderOptions } from '../../../../../base/browser/markdownRenderer.js'; -import { StandardMouseEvent } from '../../../../../base/browser/mouseEvent.js'; -import { status } from '../../../../../base/browser/ui/aria/aria.js'; -import { HoverStyle } from '../../../../../base/browser/ui/hover/hover.js'; -import { HoverPosition } from '../../../../../base/browser/ui/hover/hoverWidget.js'; -import { DomScrollableElement } from '../../../../../base/browser/ui/scrollbar/scrollableElement.js'; -import { coalesce } from '../../../../../base/common/arrays.js'; -import { findLast } from '../../../../../base/common/arraysFind.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { Lazy } from '../../../../../base/common/lazy.js'; -import { Disposable, DisposableStore, IDisposable, MutableDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; -import { autorun, autorunSelfDisposable, derived } from '../../../../../base/common/observable.js'; -import { ScrollbarVisibility } from '../../../../../base/common/scrollable.js'; -import { equalsIgnoreCase } from '../../../../../base/common/strings.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { ILanguageService } from '../../../../../editor/common/languages/language.js'; -import { ITextModel } from '../../../../../editor/common/model.js'; -import { getIconClasses } from '../../../../../editor/common/services/getIconClasses.js'; -import { IModelService } from '../../../../../editor/common/services/model.js'; -import { ITextModelService } from '../../../../../editor/common/services/resolverService.js'; -import { EditDeltaInfo } from '../../../../../editor/common/textModelEditSource.js'; -import { localize } from '../../../../../nls.js'; -import { getFlatContextMenuActions } from '../../../../../platform/actions/browser/menuEntryActionViewItem.js'; -import { IMenuService, MenuId } from '../../../../../platform/actions/common/actions.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; -import { IOpenEditorOptions, registerOpenEditorListeners } from '../../../../../platform/editor/browser/editor.js'; -import { FileKind } from '../../../../../platform/files/common/files.js'; -import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ILabelService } from '../../../../../platform/label/common/label.js'; -import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IEditorService, SIDE_GROUP } from '../../../../services/editor/common/editorService.js'; -import { AccessibilityWorkbenchSettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; -import { IAiEditTelemetryService } from '../../../editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.js'; -import { MarkedKatexSupport } from '../../../markdown/browser/markedKatexSupport.js'; -import { extractCodeblockUrisFromText, IMarkdownVulnerability } from '../../common/annotations.js'; -import { IEditSessionEntryDiff } from '../../common/chatEditingService.js'; -import { IChatProgressRenderableResponseContent } from '../../common/chatModel.js'; -import { IChatMarkdownContent, IChatService, IChatUndoStop } from '../../common/chatService.js'; -import { isRequestVM, isResponseVM } from '../../common/chatViewModel.js'; -import { CodeBlockEntry, CodeBlockModelCollection } from '../../common/codeBlockModelCollection.js'; -import { ChatConfiguration } from '../../common/constants.js'; -import { IChatCodeBlockInfo } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { allowedMarkdownHtmlAttributes, MarkdownRendererMarkedOptions, type MarkdownRenderOptions } from '../../../../../../base/browser/markdownRenderer.js'; +import { StandardMouseEvent } from '../../../../../../base/browser/mouseEvent.js'; +import { status } from '../../../../../../base/browser/ui/aria/aria.js'; +import { HoverStyle } from '../../../../../../base/browser/ui/hover/hover.js'; +import { HoverPosition } from '../../../../../../base/browser/ui/hover/hoverWidget.js'; +import { DomScrollableElement } from '../../../../../../base/browser/ui/scrollbar/scrollableElement.js'; +import { coalesce } from '../../../../../../base/common/arrays.js'; +import { findLast } from '../../../../../../base/common/arraysFind.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { Lazy } from '../../../../../../base/common/lazy.js'; +import { Disposable, DisposableStore, IDisposable, MutableDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { autorun, autorunSelfDisposable, derived } from '../../../../../../base/common/observable.js'; +import { ScrollbarVisibility } from '../../../../../../base/common/scrollable.js'; +import { equalsIgnoreCase } from '../../../../../../base/common/strings.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { Range } from '../../../../../../editor/common/core/range.js'; +import { ILanguageService } from '../../../../../../editor/common/languages/language.js'; +import { ITextModel } from '../../../../../../editor/common/model.js'; +import { getIconClasses } from '../../../../../../editor/common/services/getIconClasses.js'; +import { IModelService } from '../../../../../../editor/common/services/model.js'; +import { ITextModelService } from '../../../../../../editor/common/services/resolverService.js'; +import { EditDeltaInfo } from '../../../../../../editor/common/textModelEditSource.js'; +import { localize } from '../../../../../../nls.js'; +import { getFlatContextMenuActions } from '../../../../../../platform/actions/browser/menuEntryActionViewItem.js'; +import { IMenuService, MenuId } from '../../../../../../platform/actions/common/actions.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.js'; +import { IOpenEditorOptions, registerOpenEditorListeners } from '../../../../../../platform/editor/browser/editor.js'; +import { FileKind } from '../../../../../../platform/files/common/files.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ILabelService } from '../../../../../../platform/label/common/label.js'; +import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IEditorService, SIDE_GROUP } from '../../../../../services/editor/common/editorService.js'; +import { AccessibilityWorkbenchSettingId } from '../../../../accessibility/browser/accessibilityConfiguration.js'; +import { IAiEditTelemetryService } from '../../../../editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.js'; +import { MarkedKatexSupport } from '../../../../markdown/browser/markedKatexSupport.js'; +import { extractCodeblockUrisFromText, IMarkdownVulnerability } from '../../../common/widget/annotations.js'; +import { IEditSessionEntryDiff } from '../../../common/editing/chatEditingService.js'; +import { IChatProgressRenderableResponseContent } from '../../../common/model/chatModel.js'; +import { IChatMarkdownContent, IChatService, IChatUndoStop } from '../../../common/chatService/chatService.js'; +import { isRequestVM, isResponseVM } from '../../../common/model/chatViewModel.js'; +import { CodeBlockEntry, CodeBlockModelCollection } from '../../../common/widget/codeBlockModelCollection.js'; +import { ChatConfiguration } from '../../../common/constants.js'; +import { IChatCodeBlockInfo } from '../../chat.js'; import { allowedChatMarkdownHtmlTags } from '../chatContentMarkdownRenderer.js'; -import { IMarkdownDiffBlockData, MarkdownDiffBlockPart, parseUnifiedDiff } from '../chatDiffBlockPart.js'; -import { ChatEditingActionContext } from '../chatEditing/chatEditingActions.js'; -import { ChatMarkdownDecorationsRenderer } from '../chatMarkdownDecorationsRenderer.js'; -import { CodeBlockPart, ICodeBlockData, ICodeBlockRenderOptions, localFileLanguageId, parseLocalFileData } from '../codeBlockPart.js'; -import '../media/chatCodeBlockPill.css'; +import { IMarkdownDiffBlockData, MarkdownDiffBlockPart, parseUnifiedDiff } from './chatDiffBlockPart.js'; +import { ChatEditingActionContext } from '../../chatEditing/chatEditingActions.js'; +import { ChatMarkdownDecorationsRenderer } from './chatMarkdownDecorationsRenderer.js'; +import { CodeBlockPart, ICodeBlockData, ICodeBlockRenderOptions, localFileLanguageId, parseLocalFileData } from './codeBlockPart.js'; +import './media/chatCodeBlockPill.css'; import { IDisposableReference } from './chatCollections.js'; import { EditorPool } from './chatContentCodePools.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownDecorationsRenderer.ts similarity index 85% rename from src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownDecorationsRenderer.ts index 4cc65487d31..de6492052d4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownDecorationsRenderer.ts @@ -3,31 +3,30 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { Button } from '../../../../base/browser/ui/button/button.js'; -import { getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js'; -import { toErrorMessage } from '../../../../base/common/errorMessage.js'; -import { Lazy } from '../../../../base/common/lazy.js'; -import { DisposableStore, IDisposable } from '../../../../base/common/lifecycle.js'; -import { URI } from '../../../../base/common/uri.js'; -import { ICommandService } from '../../../../platform/commands/common/commands.js'; -import { IHoverService } from '../../../../platform/hover/browser/hover.js'; -import { IInstantiationService, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; -import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js'; -import { ILabelService } from '../../../../platform/label/common/label.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { asCssVariable } from '../../../../platform/theme/common/colorUtils.js'; -import { contentRefUrl } from '../common/annotations.js'; -import { getFullyQualifiedId, IChatAgentCommand, IChatAgentData, IChatAgentNameService, IChatAgentService } from '../common/chatAgents.js'; -import { chatSlashCommandBackground, chatSlashCommandForeground } from '../common/chatColors.js'; -import { chatAgentLeader, ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestDynamicVariablePart, ChatRequestSlashCommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, chatSubcommandLeader, IParsedChatRequest, IParsedChatRequestPart } from '../common/chatParserTypes.js'; -import { IChatMarkdownContent, IChatService } from '../common/chatService.js'; -import { ILanguageModelToolsService } from '../common/languageModelToolsService.js'; -import { IChatWidgetService } from './chat.js'; -import { ChatAgentHover, getChatAgentHoverOptions } from './chatAgentHover.js'; -import { IChatMarkdownAnchorService } from './chatContentParts/chatMarkdownAnchorService.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { getDefaultHoverDelegate } from '../../../../../../base/browser/ui/hover/hoverDelegateFactory.js'; +import { toErrorMessage } from '../../../../../../base/common/errorMessage.js'; +import { Lazy } from '../../../../../../base/common/lazy.js'; +import { DisposableStore, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService, ServicesAccessor } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; +import { ILabelService } from '../../../../../../platform/label/common/label.js'; +import { ILogService } from '../../../../../../platform/log/common/log.js'; +import { asCssVariable } from '../../../../../../platform/theme/common/colorUtils.js'; +import { contentRefUrl } from '../../../common/widget/annotations.js'; +import { getFullyQualifiedId, IChatAgentCommand, IChatAgentData, IChatAgentNameService, IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { chatSlashCommandBackground, chatSlashCommandForeground } from '../../../common/widget/chatColors.js'; +import { chatAgentLeader, ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestDynamicVariablePart, ChatRequestSlashCommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, chatSubcommandLeader, IParsedChatRequest, IParsedChatRequestPart } from '../../../common/requestParser/chatParserTypes.js'; +import { IChatMarkdownContent, IChatService } from '../../../common/chatService/chatService.js'; +import { ILanguageModelToolsService } from '../../../common/tools/languageModelToolsService.js'; +import { IChatWidgetService } from '../../chat.js'; +import { ChatAgentHover, getChatAgentHoverOptions } from '../chatAgentHover.js'; +import { IChatMarkdownAnchorService } from './chatMarkdownAnchorService.js'; import { InlineAnchorWidget } from './chatInlineAnchorWidget.js'; -import './media/chatInlineAnchorWidget.css'; /** For rendering slash commands, variables */ const decorationRefUrl = `http://_vscodedecoration_`; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMcpServersInteractionContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.ts similarity index 87% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatMcpServersInteractionContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.ts index ce40f7d9580..198b0ced7a4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMcpServersInteractionContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMcpServersInteractionContentPart.ts @@ -3,25 +3,25 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { RunOnceScheduler } from '../../../../../base/common/async.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { escapeMarkdownSyntaxTokens, createMarkdownCommandLink, MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Lazy } from '../../../../../base/common/lazy.js'; -import { Disposable, IDisposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; -import { autorun } from '../../../../../base/common/observable.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { IMarkdownRendererService, openLinkFromMarkdown } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IRenderedMarkdown } from '../../../../../base/browser/markdownRenderer.js'; -import { localize } from '../../../../../nls.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IOpenerService } from '../../../../../platform/opener/common/opener.js'; -import { McpCommandIds } from '../../../mcp/common/mcpCommandIds.js'; -import { IAutostartResult, IMcpService } from '../../../mcp/common/mcpTypes.js'; -import { startServerAndWaitForLiveTools } from '../../../mcp/common/mcpTypesUtils.js'; -import { IChatMcpServersStarting } from '../../common/chatService.js'; -import { IChatRendererContent, IChatResponseViewModel, isResponseVM } from '../../common/chatViewModel.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { RunOnceScheduler } from '../../../../../../base/common/async.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { escapeMarkdownSyntaxTokens, createMarkdownCommandLink, MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Lazy } from '../../../../../../base/common/lazy.js'; +import { Disposable, IDisposable, MutableDisposable } from '../../../../../../base/common/lifecycle.js'; +import { autorun } from '../../../../../../base/common/observable.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { IMarkdownRendererService, openLinkFromMarkdown } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IRenderedMarkdown } from '../../../../../../base/browser/markdownRenderer.js'; +import { localize } from '../../../../../../nls.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IOpenerService } from '../../../../../../platform/opener/common/opener.js'; +import { McpCommandIds } from '../../../../mcp/common/mcpCommandIds.js'; +import { IAutostartResult, IMcpService } from '../../../../mcp/common/mcpTypes.js'; +import { startServerAndWaitForLiveTools } from '../../../../mcp/common/mcpTypesUtils.js'; +import { IChatMcpServersStarting } from '../../../common/chatService/chatService.js'; +import { IChatRendererContent, IChatResponseViewModel, isResponseVM } from '../../../common/model/chatViewModel.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; import { ChatProgressContentPart } from './chatProgressContentPart.js'; import './media/chatMcpServersInteractionContent.css'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMultiDiffContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.ts similarity index 82% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatMultiDiffContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.ts index 1bc95a593a1..5a65f01fea8 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMultiDiffContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMultiDiffContentPart.ts @@ -3,36 +3,36 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { ButtonWithIcon } from '../../../../../base/browser/ui/button/button.js'; -import { IListRenderer, IListVirtualDelegate } from '../../../../../base/browser/ui/list/list.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { Disposable, DisposableStore, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; -import { MarshalledId } from '../../../../../base/common/marshallingIds.js'; -import { autorun, constObservable, IObservable, isObservable } from '../../../../../base/common/observable.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { localize } from '../../../../../nls.js'; -import { MenuWorkbenchToolBar } from '../../../../../platform/actions/browser/toolbar.js'; -import { MenuId } from '../../../../../platform/actions/common/actions.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { FileKind } from '../../../../../platform/files/common/files.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; -import { WorkbenchList } from '../../../../../platform/list/browser/listService.js'; -import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; -import { IResourceLabel, ResourceLabels } from '../../../../browser/labels.js'; -import { ACTIVE_GROUP, IEditorService, SIDE_GROUP } from '../../../../services/editor/common/editorService.js'; -import { createFileIconThemableTreeContainerScope } from '../../../files/browser/views/explorerView.js'; -import { MultiDiffEditorInput } from '../../../multiDiffEditor/browser/multiDiffEditorInput.js'; -import { MultiDiffEditorItem } from '../../../multiDiffEditor/browser/multiDiffSourceResolverService.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IEditSessionEntryDiff } from '../../common/chatEditingService.js'; -import { IChatMultiDiffData, IChatMultiDiffInnerData } from '../../common/chatService.js'; -import { getChatSessionType } from '../../common/chatUri.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; -import { ChatTreeItem } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { ButtonWithIcon } from '../../../../../../base/browser/ui/button/button.js'; +import { IListRenderer, IListVirtualDelegate } from '../../../../../../base/browser/ui/list/list.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Disposable, DisposableStore, IDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { MarshalledId } from '../../../../../../base/common/marshallingIds.js'; +import { autorun, constObservable, IObservable, isObservable } from '../../../../../../base/common/observable.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { localize } from '../../../../../../nls.js'; +import { MenuWorkbenchToolBar } from '../../../../../../platform/actions/browser/toolbar.js'; +import { MenuId } from '../../../../../../platform/actions/common/actions.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { FileKind } from '../../../../../../platform/files/common/files.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { WorkbenchList } from '../../../../../../platform/list/browser/listService.js'; +import { IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { IResourceLabel, ResourceLabels } from '../../../../../browser/labels.js'; +import { ACTIVE_GROUP, IEditorService, SIDE_GROUP } from '../../../../../services/editor/common/editorService.js'; +import { createFileIconThemableTreeContainerScope } from '../../../../files/browser/views/explorerView.js'; +import { MultiDiffEditorInput } from '../../../../multiDiffEditor/browser/multiDiffEditorInput.js'; +import { MultiDiffEditorItem } from '../../../../multiDiffEditor/browser/multiDiffSourceResolverService.js'; +import { ChatContextKeys } from '../../../common/actions/chatContextKeys.js'; +import { IEditSessionEntryDiff } from '../../../common/editing/chatEditingService.js'; +import { IChatMultiDiffData, IChatMultiDiffInnerData } from '../../../common/chatService/chatService.js'; +import { getChatSessionType } from '../../../common/model/chatUri.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem } from '../../chat.js'; import { IChatContentPart } from './chatContentParts.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.ts similarity index 83% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.ts index 8655a5ec1fc..bd10f43a05b 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatProgressContentPart.ts @@ -3,27 +3,27 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { $, append } from '../../../../../base/browser/dom.js'; -import { alert } from '../../../../../base/browser/ui/aria/aria.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { createMarkdownCommandLink, MarkdownString, type IMarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IRenderedMarkdown } from '../../../../../base/browser/markdownRenderer.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { localize } from '../../../../../nls.js'; -import { IChatProgressMessage, IChatTask, IChatTaskSerialized, IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from '../../common/chatService.js'; -import { IChatRendererContent, isResponseVM } from '../../common/chatViewModel.js'; -import { ChatTreeItem } from '../chat.js'; -import { renderFileWidgets } from '../chatInlineAnchorWidget.js'; +import { $, append } from '../../../../../../base/browser/dom.js'; +import { alert } from '../../../../../../base/browser/ui/aria/aria.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { createMarkdownCommandLink, MarkdownString, type IMarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable, MutableDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IRenderedMarkdown } from '../../../../../../base/browser/markdownRenderer.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { localize } from '../../../../../../nls.js'; +import { IChatProgressMessage, IChatTask, IChatTaskSerialized, IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from '../../../common/chatService/chatService.js'; +import { IChatRendererContent, isResponseVM } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem } from '../../chat.js'; +import { renderFileWidgets } from './chatInlineAnchorWidget.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; import { IChatMarkdownAnchorService } from './chatMarkdownAnchorService.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { AccessibilityWorkbenchSettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; -import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; -import { HoverStyle } from '../../../../../base/browser/ui/hover/hover.js'; -import { ILanguageModelToolsService } from '../../common/languageModelToolsService.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { AccessibilityWorkbenchSettingId } from '../../../../accessibility/browser/accessibilityConfiguration.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; +import { HoverStyle } from '../../../../../../base/browser/ui/hover/hover.js'; +import { ILanguageModelToolsService } from '../../../common/tools/languageModelToolsService.js'; export class ChatProgressContentPart extends Disposable implements IChatContentPart { public readonly domNode: HTMLElement; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatPullRequestContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.ts similarity index 74% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatPullRequestContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.ts index 9ea411c9ef1..045b9005e30 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatPullRequestContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatPullRequestContentPart.ts @@ -4,19 +4,19 @@ *--------------------------------------------------------------------------------------------*/ import './media/chatPullRequestContent.css'; -import * as dom from '../../../../../base/browser/dom.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { IChatPullRequestContent } from '../../common/chatService.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; -import { ChatTreeItem } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { IChatPullRequestContent } from '../../../common/chatService/chatService.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem } from '../../chat.js'; import { IChatContentPart } from './chatContentParts.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { localize } from '../../../../../nls.js'; -import { addDisposableListener } from '../../../../../base/browser/dom.js'; -import { IOpenerService } from '../../../../../platform/opener/common/opener.js'; -import { renderAsPlaintext } from '../../../../../base/browser/markdownRenderer.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { localize } from '../../../../../../nls.js'; +import { addDisposableListener } from '../../../../../../base/browser/dom.js'; +import { IOpenerService } from '../../../../../../platform/opener/common/opener.js'; +import { renderAsPlaintext } from '../../../../../../base/browser/markdownRenderer.js'; export class ChatPullRequestContentPart extends Disposable implements IChatContentPart { public readonly domNode: HTMLElement; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatQuotaExceededPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.ts similarity index 78% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatQuotaExceededPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.ts index 1b52bd61b51..3d51867e4a4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatQuotaExceededPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatQuotaExceededPart.ts @@ -3,24 +3,24 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Button } from '../../../../../base/browser/ui/button/button.js'; -import { WorkbenchActionExecutedClassification, WorkbenchActionExecutedEvent } from '../../../../../base/common/actions.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { assertType } from '../../../../../base/common/types.js'; -import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { localize } from '../../../../../nls.js'; -import { ICommandService } from '../../../../../platform/commands/common/commands.js'; -import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; -import { defaultButtonStyles } from '../../../../../platform/theme/browser/defaultStyles.js'; -import { asCssVariable, textLinkForeground } from '../../../../../platform/theme/common/colorRegistry.js'; -import { ChatEntitlement, IChatEntitlementService } from '../../../../services/chat/common/chatEntitlementService.js'; -import { IChatErrorDetailsPart, IChatRendererContent, IChatResponseViewModel } from '../../common/chatViewModel.js'; -import { IChatWidgetService } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { WorkbenchActionExecutedClassification, WorkbenchActionExecutedEvent } from '../../../../../../base/common/actions.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { assertType } from '../../../../../../base/common/types.js'; +import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { localize } from '../../../../../../nls.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { defaultButtonStyles } from '../../../../../../platform/theme/browser/defaultStyles.js'; +import { asCssVariable, textLinkForeground } from '../../../../../../platform/theme/common/colorRegistry.js'; +import { ChatEntitlement, IChatEntitlementService } from '../../../../../services/chat/common/chatEntitlementService.js'; +import { IChatErrorDetailsPart, IChatRendererContent, IChatResponseViewModel } from '../../../common/model/chatViewModel.js'; +import { IChatWidgetService } from '../../chat.js'; import { IChatContentPart } from './chatContentParts.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.ts similarity index 88% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.ts index a3ceae76572..b45a9b609c8 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatReferencesContentPart.ts @@ -3,46 +3,46 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { IListRenderer, IListVirtualDelegate } from '../../../../../base/browser/ui/list/list.js'; -import { IListOptions } from '../../../../../base/browser/ui/list/listWidget.js'; -import { coalesce } from '../../../../../base/common/arrays.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Event } from '../../../../../base/common/event.js'; -import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable, DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { matchesSomeScheme, Schemas } from '../../../../../base/common/network.js'; -import { basename } from '../../../../../base/common/path.js'; -import { basenameOrAuthority, isEqualAuthority } from '../../../../../base/common/resources.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { IRange } from '../../../../../editor/common/core/range.js'; -import { localize, localize2 } from '../../../../../nls.js'; -import { getFlatContextMenuActions } from '../../../../../platform/actions/browser/menuEntryActionViewItem.js'; -import { MenuWorkbenchToolBar } from '../../../../../platform/actions/browser/toolbar.js'; -import { Action2, IMenuService, MenuId, registerAction2 } from '../../../../../platform/actions/common/actions.js'; -import { IClipboardService } from '../../../../../platform/clipboard/common/clipboardService.js'; -import { ContextKeyExpr, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; -import { FileKind } from '../../../../../platform/files/common/files.js'; -import { IInstantiationService, ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; -import { ILabelService } from '../../../../../platform/label/common/label.js'; -import { WorkbenchList } from '../../../../../platform/list/browser/listService.js'; -import { IOpenerService } from '../../../../../platform/opener/common/opener.js'; -import { IProductService } from '../../../../../platform/product/common/productService.js'; -import { isDark } from '../../../../../platform/theme/common/theme.js'; -import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; -import { fillEditorsDragData } from '../../../../browser/dnd.js'; -import { IResourceLabel, IResourceLabelProps, ResourceLabels } from '../../../../browser/labels.js'; -import { ResourceContextKey } from '../../../../common/contextkeys.js'; -import { SETTINGS_AUTHORITY } from '../../../../services/preferences/common/preferences.js'; -import { createFileIconThemableTreeContainerScope } from '../../../files/browser/views/explorerView.js'; -import { ExplorerFolderContext } from '../../../files/common/files.js'; -import { chatEditingWidgetFileStateContextKey, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { ChatResponseReferencePartStatusKind, IChatContentReference, IChatWarningMessage } from '../../common/chatService.js'; -import { IChatRendererContent, IChatResponseViewModel } from '../../common/chatViewModel.js'; -import { ChatTreeItem, IChatWidgetService } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { IListRenderer, IListVirtualDelegate } from '../../../../../../base/browser/ui/list/list.js'; +import { IListOptions } from '../../../../../../base/browser/ui/list/listWidget.js'; +import { coalesce } from '../../../../../../base/common/arrays.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { IMarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable, DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { matchesSomeScheme, Schemas } from '../../../../../../base/common/network.js'; +import { basename } from '../../../../../../base/common/path.js'; +import { basenameOrAuthority, isEqualAuthority } from '../../../../../../base/common/resources.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { IRange } from '../../../../../../editor/common/core/range.js'; +import { localize, localize2 } from '../../../../../../nls.js'; +import { getFlatContextMenuActions } from '../../../../../../platform/actions/browser/menuEntryActionViewItem.js'; +import { MenuWorkbenchToolBar } from '../../../../../../platform/actions/browser/toolbar.js'; +import { Action2, IMenuService, MenuId, registerAction2 } from '../../../../../../platform/actions/common/actions.js'; +import { IClipboardService } from '../../../../../../platform/clipboard/common/clipboardService.js'; +import { ContextKeyExpr, IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.js'; +import { FileKind } from '../../../../../../platform/files/common/files.js'; +import { IInstantiationService, ServicesAccessor } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { ILabelService } from '../../../../../../platform/label/common/label.js'; +import { WorkbenchList } from '../../../../../../platform/list/browser/listService.js'; +import { IOpenerService } from '../../../../../../platform/opener/common/opener.js'; +import { IProductService } from '../../../../../../platform/product/common/productService.js'; +import { isDark } from '../../../../../../platform/theme/common/theme.js'; +import { IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { fillEditorsDragData } from '../../../../../browser/dnd.js'; +import { IResourceLabel, IResourceLabelProps, ResourceLabels } from '../../../../../browser/labels.js'; +import { ResourceContextKey } from '../../../../../common/contextkeys.js'; +import { SETTINGS_AUTHORITY } from '../../../../../services/preferences/common/preferences.js'; +import { createFileIconThemableTreeContainerScope } from '../../../../files/browser/views/explorerView.js'; +import { ExplorerFolderContext } from '../../../../files/common/files.js'; +import { chatEditingWidgetFileStateContextKey, ModifiedFileEntryState } from '../../../common/editing/chatEditingService.js'; +import { ChatResponseReferencePartStatusKind, IChatContentReference, IChatWarningMessage } from '../../../common/chatService/chatService.js'; +import { IChatRendererContent, IChatResponseViewModel } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem, IChatWidgetService } from '../../chat.js'; import { ChatCollapsibleContentPart } from './chatCollapsibleContentPart.js'; import { IDisposableReference, ResourcePool } from './chatCollections.js'; import { IChatContentPartRenderContext } from './chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatSuggestNextWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.ts similarity index 90% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatSuggestNextWidget.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.ts index 6cb9874b29f..16925c376b4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatSuggestNextWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatSuggestNextWidget.ts @@ -3,17 +3,17 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Action } from '../../../../../base/common/actions.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { Disposable, DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { localize } from '../../../../../nls.js'; -import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; -import { IChatMode } from '../../common/chatModes.js'; -import { IChatSessionsService } from '../../common/chatSessionsService.js'; -import { IHandOff } from '../../common/promptSyntax/promptFileParser.js'; -import { AgentSessionProviders, getAgentSessionProviderIcon, getAgentSessionProviderName } from '../agentSessions/agentSessions.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Action } from '../../../../../../base/common/actions.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Disposable, DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { localize } from '../../../../../../nls.js'; +import { IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.js'; +import { IChatMode } from '../../../common/chatModes.js'; +import { IChatSessionsService } from '../../../common/chatSessionsService.js'; +import { IHandOff } from '../../../common/promptSyntax/promptFileParser.js'; +import { AgentSessionProviders, getAgentSessionProviderIcon, getAgentSessionProviderName } from '../../agentSessions/agentSessions.js'; export interface INextPromptSelection { readonly handoff: IHandOff; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.ts similarity index 79% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.ts index 78c23e52fdd..288390fdd56 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTaskContentPart.ts @@ -3,13 +3,13 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Event } from '../../../../../base/common/event.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IChatProgressRenderableResponseContent } from '../../common/chatModel.js'; -import { IChatTask, IChatTaskSerialized } from '../../common/chatService.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatProgressRenderableResponseContent } from '../../../common/model/chatModel.js'; +import { IChatTask, IChatTaskSerialized } from '../../../common/chatService/chatService.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; import { ChatProgressContentPart } from './chatProgressContentPart.js'; import { ChatCollapsibleListContentPart, CollapsibleListPool } from './chatReferencesContentPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.ts similarity index 81% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.ts index 64b72d4e47a..959ef8b2347 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.ts @@ -3,29 +3,29 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { CancellationTokenSource } from '../../../../../base/common/cancellation.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { Disposable, IDisposable, IReference, RefCountedDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../../base/common/network.js'; -import { isEqual } from '../../../../../base/common/resources.js'; -import { assertType } from '../../../../../base/common/types.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { generateUuid } from '../../../../../base/common/uuid.js'; -import { ISingleEditOperation } from '../../../../../editor/common/core/editOperation.js'; -import { TextEdit } from '../../../../../editor/common/languages.js'; -import { createTextBufferFactoryFromSnapshot } from '../../../../../editor/common/model/textModel.js'; -import { IModelService } from '../../../../../editor/common/services/model.js'; -import { DefaultModelSHA1Computer } from '../../../../../editor/common/services/modelService.js'; -import { IResolvedTextEditorModel, ITextModelService } from '../../../../../editor/common/services/resolverService.js'; -import { localize } from '../../../../../nls.js'; -import { InstantiationType, registerSingleton } from '../../../../../platform/instantiation/common/extensions.js'; -import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IChatProgressRenderableResponseContent, IChatTextEditGroup } from '../../common/chatModel.js'; -import { IChatService } from '../../common/chatService.js'; -import { IChatResponseViewModel, isResponseVM } from '../../common/chatViewModel.js'; -import { IChatListItemRendererOptions } from '../chat.js'; -import { CodeCompareBlockPart, ICodeCompareBlockData, ICodeCompareBlockDiffData } from '../codeBlockPart.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { CancellationTokenSource } from '../../../../../../base/common/cancellation.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Disposable, IDisposable, IReference, RefCountedDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../../base/common/network.js'; +import { isEqual } from '../../../../../../base/common/resources.js'; +import { assertType } from '../../../../../../base/common/types.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../../base/common/uuid.js'; +import { ISingleEditOperation } from '../../../../../../editor/common/core/editOperation.js'; +import { TextEdit } from '../../../../../../editor/common/languages.js'; +import { createTextBufferFactoryFromSnapshot } from '../../../../../../editor/common/model/textModel.js'; +import { IModelService } from '../../../../../../editor/common/services/model.js'; +import { DefaultModelSHA1Computer } from '../../../../../../editor/common/services/modelService.js'; +import { IResolvedTextEditorModel, ITextModelService } from '../../../../../../editor/common/services/resolverService.js'; +import { localize } from '../../../../../../nls.js'; +import { InstantiationType, registerSingleton } from '../../../../../../platform/instantiation/common/extensions.js'; +import { createDecorator } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatProgressRenderableResponseContent, IChatTextEditGroup } from '../../../common/model/chatModel.js'; +import { IChatService } from '../../../common/chatService/chatService.js'; +import { IChatResponseViewModel, isResponseVM } from '../../../common/model/chatViewModel.js'; +import { IChatListItemRendererOptions } from '../../chat.js'; +import { CodeCompareBlockPart, ICodeCompareBlockData, ICodeCompareBlockDiffData } from './codeBlockPart.js'; import { IDisposableReference } from './chatCollections.js'; import { DiffEditorPool } from './chatContentCodePools.js'; import { IChatContentPart, IChatContentPartRenderContext } from './chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatThinkingContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.ts similarity index 93% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatThinkingContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.ts index 5c2a4f3d14b..4d40891ff35 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatThinkingContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.ts @@ -3,26 +3,26 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { $, clearNode } from '../../../../../base/browser/dom.js'; -import { IChatThinkingPart, IChatToolInvocation, IChatToolInvocationSerialized } from '../../common/chatService.js'; +import { $, clearNode } from '../../../../../../base/browser/dom.js'; +import { IChatThinkingPart, IChatToolInvocation, IChatToolInvocationSerialized } from '../../../common/chatService/chatService.js'; import { IChatContentPartRenderContext, IChatContentPart } from './chatContentParts.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; -import { ChatConfiguration, ThinkingDisplayMode } from '../../common/constants.js'; -import { ChatTreeItem } from '../chat.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { IRenderedMarkdown } from '../../../../../base/browser/markdownRenderer.js'; -import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { ChatConfiguration, ThinkingDisplayMode } from '../../../common/constants.js'; +import { ChatTreeItem } from '../../chat.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { IRenderedMarkdown } from '../../../../../../base/browser/markdownRenderer.js'; +import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; import { ChatCollapsibleContentPart } from './chatCollapsibleContentPart.js'; -import { localize } from '../../../../../nls.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { autorun } from '../../../../../base/common/observable.js'; -import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { localize } from '../../../../../../nls.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { autorun } from '../../../../../../base/common/observable.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; import { IChatMarkdownAnchorService } from './chatMarkdownAnchorService.js'; -import { ChatMessageRole, ILanguageModelsService } from '../../common/languageModels.js'; -import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js'; +import { ChatMessageRole, ILanguageModelsService } from '../../../common/languageModels.js'; +import { ExtensionIdentifier } from '../../../../../../platform/extensions/common/extensions.js'; import './media/chatThinkingContent.css'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTodoListWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.ts similarity index 92% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatTodoListWidget.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.ts index a6c61093503..fd7d48a05e3 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTodoListWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTodoListWidget.ts @@ -3,23 +3,23 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Button } from '../../../../../base/browser/ui/button/button.js'; -import { IconLabel } from '../../../../../base/browser/ui/iconLabel/iconLabel.js'; -import { IListRenderer, IListVirtualDelegate } from '../../../../../base/browser/ui/list/list.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { Disposable, DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { localize } from '../../../../../nls.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { WorkbenchList } from '../../../../../platform/list/browser/listService.js'; -import { IChatTodoListService, IChatTodo } from '../../common/chatTodoListService.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { TodoListToolDescriptionFieldSettingId } from '../../common/tools/manageTodoListTool.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { isEqual } from '../../../../../base/common/resources.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { IconLabel } from '../../../../../../base/browser/ui/iconLabel/iconLabel.js'; +import { IListRenderer, IListVirtualDelegate } from '../../../../../../base/browser/ui/list/list.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Disposable, DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../nls.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { WorkbenchList } from '../../../../../../platform/list/browser/listService.js'; +import { IChatTodoListService, IChatTodo } from '../../../common/tools/chatTodoListService.js'; +import { ChatContextKeys } from '../../../common/actions/chatContextKeys.js'; +import { TodoListToolDescriptionFieldSettingId } from '../../../common/tools/builtinTools/manageTodoListTool.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { isEqual } from '../../../../../../base/common/resources.js'; class TodoListDelegate implements IListVirtualDelegate { getHeight(element: IChatTodo): number { diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolInputOutputContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.ts similarity index 85% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolInputOutputContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.ts index 0d19a3f98d8..49b09d111fd 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolInputOutputContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.ts @@ -3,25 +3,25 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { ButtonWithIcon } from '../../../../../base/browser/ui/button/button.js'; -import { HoverStyle } from '../../../../../base/browser/ui/hover/hover.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { autorun, ISettableObservable, observableValue } from '../../../../../base/common/observable.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { ITextModel } from '../../../../../editor/common/model.js'; -import { localize } from '../../../../../nls.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IChatRendererContent } from '../../common/chatViewModel.js'; -import { LanguageModelPartAudience } from '../../common/languageModels.js'; -import { ChatTreeItem, IChatCodeBlockInfo } from '../chat.js'; -import { CodeBlockPart, ICodeBlockData, ICodeBlockRenderOptions } from '../codeBlockPart.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { ButtonWithIcon } from '../../../../../../base/browser/ui/button/button.js'; +import { HoverStyle } from '../../../../../../base/browser/ui/hover/hover.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { IMarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { autorun, ISettableObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { ITextModel } from '../../../../../../editor/common/model.js'; +import { localize } from '../../../../../../nls.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatRendererContent } from '../../../common/model/chatViewModel.js'; +import { LanguageModelPartAudience } from '../../../common/languageModels.js'; +import { ChatTreeItem, IChatCodeBlockInfo } from '../../chat.js'; +import { CodeBlockPart, ICodeBlockData, ICodeBlockRenderOptions } from './codeBlockPart.js'; import { IDisposableReference } from './chatCollections.js'; import { ChatQueryTitlePart } from './chatConfirmationWidget.js'; import { IChatContentPartRenderContext } from './chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolOutputContentSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.ts similarity index 82% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolOutputContentSubPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.ts index 9d10743b613..dea0e48b78c 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolOutputContentSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolOutputContentSubPart.ts @@ -3,33 +3,33 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter } from '../../../../../base/common/event.js'; -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { basename, joinPath } from '../../../../../base/common/resources.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { generateUuid } from '../../../../../base/common/uuid.js'; -import { localize, localize2 } from '../../../../../nls.js'; -import { MenuWorkbenchToolBar } from '../../../../../platform/actions/browser/toolbar.js'; -import { Action2, MenuId, registerAction2 } from '../../../../../platform/actions/common/actions.js'; -import { ICommandService } from '../../../../../platform/commands/common/commands.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; -import { IFileDialogService } from '../../../../../platform/dialogs/common/dialogs.js'; -import { IFileService } from '../../../../../platform/files/common/files.js'; -import { IInstantiationService, ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ILabelService } from '../../../../../platform/label/common/label.js'; -import { INotificationService } from '../../../../../platform/notification/common/notification.js'; -import { IProgressService, ProgressLocation } from '../../../../../platform/progress/common/progress.js'; -import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; -import { REVEAL_IN_EXPLORER_COMMAND_ID } from '../../../files/browser/fileConstants.js'; -import { getAttachableImageExtension } from '../../common/chatModel.js'; -import { IMarkdownString, MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { IMarkdownRendererService } from '../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IChatRequestVariableEntry } from '../../common/chatVariableEntries.js'; -import { IChatCodeBlockInfo } from '../chat.js'; -import { CodeBlockPart, ICodeBlockData } from '../codeBlockPart.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { basename, joinPath } from '../../../../../../base/common/resources.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../../base/common/uuid.js'; +import { localize, localize2 } from '../../../../../../nls.js'; +import { MenuWorkbenchToolBar } from '../../../../../../platform/actions/browser/toolbar.js'; +import { Action2, MenuId, registerAction2 } from '../../../../../../platform/actions/common/actions.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.js'; +import { IFileDialogService } from '../../../../../../platform/dialogs/common/dialogs.js'; +import { IFileService } from '../../../../../../platform/files/common/files.js'; +import { IInstantiationService, ServicesAccessor } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ILabelService } from '../../../../../../platform/label/common/label.js'; +import { INotificationService } from '../../../../../../platform/notification/common/notification.js'; +import { IProgressService, ProgressLocation } from '../../../../../../platform/progress/common/progress.js'; +import { IWorkspaceContextService } from '../../../../../../platform/workspace/common/workspace.js'; +import { REVEAL_IN_EXPLORER_COMMAND_ID } from '../../../../files/browser/fileConstants.js'; +import { getAttachableImageExtension } from '../../../common/model/chatModel.js'; +import { IMarkdownString, MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { IMarkdownRendererService } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IChatRequestVariableEntry } from '../../../common/attachments/chatVariableEntries.js'; +import { IChatCodeBlockInfo } from '../../chat.js'; +import { CodeBlockPart, ICodeBlockData } from './codeBlockPart.js'; import { ChatAttachmentsContentPart } from './chatAttachmentsContentPart.js'; import { IDisposableReference } from './chatCollections.js'; import { IChatContentPartRenderContext } from './chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.ts similarity index 82% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.ts index f9871130e5d..1cc53f4712d 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTreeContentPart.ts @@ -3,29 +3,29 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { IListVirtualDelegate } from '../../../../../base/browser/ui/list/list.js'; -import { ITreeCompressionDelegate } from '../../../../../base/browser/ui/tree/asyncDataTree.js'; -import { ICompressedTreeNode } from '../../../../../base/browser/ui/tree/compressedObjectTreeModel.js'; -import { ICompressibleTreeRenderer } from '../../../../../base/browser/ui/tree/objectTree.js'; -import { IAsyncDataSource, ITreeNode } from '../../../../../base/browser/ui/tree/tree.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { Disposable, DisposableStore, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { localize } from '../../../../../nls.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { FileKind, FileType } from '../../../../../platform/files/common/files.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { WorkbenchCompressibleAsyncDataTree } from '../../../../../platform/list/browser/listService.js'; -import { IOpenerService } from '../../../../../platform/opener/common/opener.js'; -import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; -import { IResourceLabel, ResourceLabels } from '../../../../browser/labels.js'; -import { ChatTreeItem } from '../chat.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { IListVirtualDelegate } from '../../../../../../base/browser/ui/list/list.js'; +import { ITreeCompressionDelegate } from '../../../../../../base/browser/ui/tree/asyncDataTree.js'; +import { ICompressedTreeNode } from '../../../../../../base/browser/ui/tree/compressedObjectTreeModel.js'; +import { ICompressibleTreeRenderer } from '../../../../../../base/browser/ui/tree/objectTree.js'; +import { IAsyncDataSource, ITreeNode } from '../../../../../../base/browser/ui/tree/tree.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Disposable, DisposableStore, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../nls.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { FileKind, FileType } from '../../../../../../platform/files/common/files.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { WorkbenchCompressibleAsyncDataTree } from '../../../../../../platform/list/browser/listService.js'; +import { IOpenerService } from '../../../../../../platform/opener/common/opener.js'; +import { IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { IResourceLabel, ResourceLabels } from '../../../../../browser/labels.js'; +import { ChatTreeItem } from '../../chat.js'; import { IDisposableReference, ResourcePool } from './chatCollections.js'; import { IChatContentPart } from './chatContentParts.js'; -import { IChatProgressRenderableResponseContent } from '../../common/chatModel.js'; -import { IChatResponseProgressFileTreeData } from '../../common/chatService.js'; -import { createFileIconThemableTreeContainerScope } from '../../../files/browser/views/explorerView.js'; -import { IFilesConfiguration } from '../../../files/common/files.js'; +import { IChatProgressRenderableResponseContent } from '../../../common/model/chatModel.js'; +import { IChatResponseProgressFileTreeData } from '../../../common/chatService/chatService.js'; +import { createFileIconThemableTreeContainerScope } from '../../../../files/browser/views/explorerView.js'; +import { IFilesConfiguration } from '../../../../files/common/files.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/codeBlockPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.ts similarity index 85% rename from src/vs/workbench/contrib/chat/browser/codeBlockPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.ts index beb2c820b3c..eac8d7063fb 100644 --- a/src/vs/workbench/contrib/chat/browser/codeBlockPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/codeBlockPart.ts @@ -3,75 +3,75 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import './codeBlockPart.css'; +import './media/codeBlockPart.css'; -import * as dom from '../../../../base/browser/dom.js'; -import { renderFormattedText } from '../../../../base/browser/formattedTextRenderer.js'; -import { Button } from '../../../../base/browser/ui/button/button.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { combinedDisposable, Disposable, MutableDisposable } from '../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { isEqual } from '../../../../base/common/resources.js'; -import { assertType } from '../../../../base/common/types.js'; -import { URI, UriComponents } from '../../../../base/common/uri.js'; -import { IEditorConstructionOptions } from '../../../../editor/browser/config/editorConfiguration.js'; -import { IDiffEditor } from '../../../../editor/browser/editorBrowser.js'; -import { EditorExtensionsRegistry } from '../../../../editor/browser/editorExtensions.js'; -import { ICodeEditorService } from '../../../../editor/browser/services/codeEditorService.js'; -import { CodeEditorWidget, ICodeEditorWidgetOptions } from '../../../../editor/browser/widget/codeEditor/codeEditorWidget.js'; -import { DiffEditorWidget } from '../../../../editor/browser/widget/diffEditor/diffEditorWidget.js'; -import { EditorOption, IEditorOptions } from '../../../../editor/common/config/editorOptions.js'; -import { EDITOR_FONT_DEFAULTS } from '../../../../editor/common/config/fontInfo.js'; -import { IRange, Range } from '../../../../editor/common/core/range.js'; -import { ScrollType } from '../../../../editor/common/editorCommon.js'; -import { TextEdit } from '../../../../editor/common/languages.js'; -import { EndOfLinePreference, ITextModel } from '../../../../editor/common/model.js'; -import { TextModelText } from '../../../../editor/common/model/textModelText.js'; -import { IModelService } from '../../../../editor/common/services/model.js'; -import { DefaultModelSHA1Computer } from '../../../../editor/common/services/modelService.js'; -import { ITextModelContentProvider, ITextModelService } from '../../../../editor/common/services/resolverService.js'; -import { BracketMatchingController } from '../../../../editor/contrib/bracketMatching/browser/bracketMatching.js'; -import { ColorDetector } from '../../../../editor/contrib/colorPicker/browser/colorDetector.js'; -import { ContextMenuController } from '../../../../editor/contrib/contextmenu/browser/contextmenu.js'; -import { GotoDefinitionAtPositionEditorContribution } from '../../../../editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js'; -import { ContentHoverController } from '../../../../editor/contrib/hover/browser/contentHoverController.js'; -import { GlyphHoverController } from '../../../../editor/contrib/hover/browser/glyphHoverController.js'; -import { LinkDetector } from '../../../../editor/contrib/links/browser/links.js'; -import { MessageController } from '../../../../editor/contrib/message/browser/messageController.js'; -import { ViewportSemanticTokensContribution } from '../../../../editor/contrib/semanticTokens/browser/viewportSemanticTokens.js'; -import { SmartSelectController } from '../../../../editor/contrib/smartSelect/browser/smartSelect.js'; -import { WordHighlighterContribution } from '../../../../editor/contrib/wordHighlighter/browser/wordHighlighter.js'; -import { localize } from '../../../../nls.js'; -import { IAccessibilityService } from '../../../../platform/accessibility/common/accessibility.js'; -import { MenuWorkbenchToolBar } from '../../../../platform/actions/browser/toolbar.js'; -import { MenuId } from '../../../../platform/actions/common/actions.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js'; -import { FileKind } from '../../../../platform/files/common/files.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js'; -import { ILabelService } from '../../../../platform/label/common/label.js'; -import { IOpenerService } from '../../../../platform/opener/common/opener.js'; -import { ResourceLabel } from '../../../browser/labels.js'; -import { ResourceContextKey } from '../../../common/contextkeys.js'; -import { AccessibilityVerbositySettingId } from '../../accessibility/browser/accessibilityConfiguration.js'; -import { InspectEditorTokensController } from '../../codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js'; -import { MenuPreventer } from '../../codeEditor/browser/menuPreventer.js'; -import { SelectionClipboardContributionID } from '../../codeEditor/browser/selectionClipboard.js'; -import { getSimpleEditorOptions } from '../../codeEditor/browser/simpleEditorOptions.js'; -import { IMarkdownVulnerability } from '../common/annotations.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IChatResponseModel, IChatTextEditGroup } from '../common/chatModel.js'; -import { IChatResponseViewModel, isRequestVM, isResponseVM } from '../common/chatViewModel.js'; -import { ChatTreeItem } from './chat.js'; -import { IChatRendererDelegate } from './chatListRenderer.js'; -import { ChatEditorOptions } from './chatOptions.js'; -import { emptyProgressRunner, IEditorProgressService } from '../../../../platform/progress/common/progress.js'; -import { SuggestController } from '../../../../editor/contrib/suggest/browser/suggestController.js'; -import { SnippetController2 } from '../../../../editor/contrib/snippet/browser/snippetController2.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { renderFormattedText } from '../../../../../../base/browser/formattedTextRenderer.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { combinedDisposable, Disposable, MutableDisposable } from '../../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../../base/common/network.js'; +import { isEqual } from '../../../../../../base/common/resources.js'; +import { assertType } from '../../../../../../base/common/types.js'; +import { URI, UriComponents } from '../../../../../../base/common/uri.js'; +import { IEditorConstructionOptions } from '../../../../../../editor/browser/config/editorConfiguration.js'; +import { IDiffEditor } from '../../../../../../editor/browser/editorBrowser.js'; +import { EditorExtensionsRegistry } from '../../../../../../editor/browser/editorExtensions.js'; +import { ICodeEditorService } from '../../../../../../editor/browser/services/codeEditorService.js'; +import { CodeEditorWidget, ICodeEditorWidgetOptions } from '../../../../../../editor/browser/widget/codeEditor/codeEditorWidget.js'; +import { DiffEditorWidget } from '../../../../../../editor/browser/widget/diffEditor/diffEditorWidget.js'; +import { EditorOption, IEditorOptions } from '../../../../../../editor/common/config/editorOptions.js'; +import { EDITOR_FONT_DEFAULTS } from '../../../../../../editor/common/config/fontInfo.js'; +import { IRange, Range } from '../../../../../../editor/common/core/range.js'; +import { ScrollType } from '../../../../../../editor/common/editorCommon.js'; +import { TextEdit } from '../../../../../../editor/common/languages.js'; +import { EndOfLinePreference, ITextModel } from '../../../../../../editor/common/model.js'; +import { TextModelText } from '../../../../../../editor/common/model/textModelText.js'; +import { IModelService } from '../../../../../../editor/common/services/model.js'; +import { DefaultModelSHA1Computer } from '../../../../../../editor/common/services/modelService.js'; +import { ITextModelContentProvider, ITextModelService } from '../../../../../../editor/common/services/resolverService.js'; +import { BracketMatchingController } from '../../../../../../editor/contrib/bracketMatching/browser/bracketMatching.js'; +import { ColorDetector } from '../../../../../../editor/contrib/colorPicker/browser/colorDetector.js'; +import { ContextMenuController } from '../../../../../../editor/contrib/contextmenu/browser/contextmenu.js'; +import { GotoDefinitionAtPositionEditorContribution } from '../../../../../../editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js'; +import { ContentHoverController } from '../../../../../../editor/contrib/hover/browser/contentHoverController.js'; +import { GlyphHoverController } from '../../../../../../editor/contrib/hover/browser/glyphHoverController.js'; +import { LinkDetector } from '../../../../../../editor/contrib/links/browser/links.js'; +import { MessageController } from '../../../../../../editor/contrib/message/browser/messageController.js'; +import { ViewportSemanticTokensContribution } from '../../../../../../editor/contrib/semanticTokens/browser/viewportSemanticTokens.js'; +import { SmartSelectController } from '../../../../../../editor/contrib/smartSelect/browser/smartSelect.js'; +import { WordHighlighterContribution } from '../../../../../../editor/contrib/wordHighlighter/browser/wordHighlighter.js'; +import { localize } from '../../../../../../nls.js'; +import { IAccessibilityService } from '../../../../../../platform/accessibility/common/accessibility.js'; +import { MenuWorkbenchToolBar } from '../../../../../../platform/actions/browser/toolbar.js'; +import { MenuId } from '../../../../../../platform/actions/common/actions.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IDialogService } from '../../../../../../platform/dialogs/common/dialogs.js'; +import { FileKind } from '../../../../../../platform/files/common/files.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { ILabelService } from '../../../../../../platform/label/common/label.js'; +import { IOpenerService } from '../../../../../../platform/opener/common/opener.js'; +import { ResourceLabel } from '../../../../../browser/labels.js'; +import { ResourceContextKey } from '../../../../../common/contextkeys.js'; +import { AccessibilityVerbositySettingId } from '../../../../accessibility/browser/accessibilityConfiguration.js'; +import { InspectEditorTokensController } from '../../../../codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js'; +import { MenuPreventer } from '../../../../codeEditor/browser/menuPreventer.js'; +import { SelectionClipboardContributionID } from '../../../../codeEditor/browser/selectionClipboard.js'; +import { getSimpleEditorOptions } from '../../../../codeEditor/browser/simpleEditorOptions.js'; +import { IMarkdownVulnerability } from '../../../common/widget/annotations.js'; +import { ChatContextKeys } from '../../../common/actions/chatContextKeys.js'; +import { IChatResponseModel, IChatTextEditGroup } from '../../../common/model/chatModel.js'; +import { IChatResponseViewModel, isRequestVM, isResponseVM } from '../../../common/model/chatViewModel.js'; +import { ChatTreeItem } from '../../chat.js'; +import { IChatRendererDelegate } from '../chatListRenderer.js'; +import { ChatEditorOptions } from '../chatOptions.js'; +import { emptyProgressRunner, IEditorProgressService } from '../../../../../../platform/progress/common/progress.js'; +import { SuggestController } from '../../../../../../editor/contrib/suggest/browser/suggestController.js'; +import { SnippetController2 } from '../../../../../../editor/contrib/snippet/browser/snippetController2.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/media/chatCodeBlockPill.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCodeBlockPill.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatCodeBlockPill.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatCodeBlockPill.css diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatConfirmationWidget.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatConfirmationWidget.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatConfirmationWidget.css diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatExtensionsContent.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatExtensionsContent.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatExtensionsContent.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatExtensionsContent.css diff --git a/src/vs/workbench/contrib/chat/browser/media/chatInlineAnchorWidget.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatInlineAnchorWidget.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatInlineAnchorWidget.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatInlineAnchorWidget.css diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatMarkdownPart.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatMarkdownPart.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatMarkdownPart.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatMarkdownPart.css diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatMcpServersInteractionContent.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatMcpServersInteractionContent.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatMcpServersInteractionContent.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatMcpServersInteractionContent.css diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatPullRequestContent.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPullRequestContent.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatPullRequestContent.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatPullRequestContent.css diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatTerminalToolProgressPart.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatTerminalToolProgressPart.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatTerminalToolProgressPart.css diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatThinkingContent.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/media/chatThinkingContent.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/chatThinkingContent.css diff --git a/src/vs/workbench/contrib/chat/browser/codeBlockPart.css b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/codeBlockPart.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/codeBlockPart.css rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/media/codeBlockPart.css diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.ts similarity index 83% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.ts index c2ac795f45e..ebab096e1cd 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/abstractToolConfirmationSubPart.ts @@ -3,17 +3,17 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Separator } from '../../../../../../base/common/actions.js'; -import { Codicon } from '../../../../../../base/common/codicons.js'; -import { toDisposable } from '../../../../../../base/common/lifecycle.js'; -import { localize } from '../../../../../../nls.js'; -import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; -import { ChatContextKeys } from '../../../common/chatContextKeys.js'; -import { ConfirmedReason, IChatToolInvocation, ToolConfirmKind } from '../../../common/chatService.js'; -import { ILanguageModelToolsService } from '../../../common/languageModelToolsService.js'; -import { IChatWidgetService } from '../../chat.js'; +import { Separator } from '../../../../../../../base/common/actions.js'; +import { Codicon } from '../../../../../../../base/common/codicons.js'; +import { toDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../../nls.js'; +import { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js'; +import { ChatContextKeys } from '../../../../common/actions/chatContextKeys.js'; +import { ConfirmedReason, IChatToolInvocation, ToolConfirmKind } from '../../../../common/chatService/chatService.js'; +import { ILanguageModelToolsService } from '../../../../common/tools/languageModelToolsService.js'; +import { IChatWidgetService } from '../../../chat.js'; import { ChatCustomConfirmationWidget, IChatConfirmationButton } from '../chatConfirmationWidget.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { BaseChatToolInvocationSubPart } from './chatToolInvocationSubPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/autoApproveMessageWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/autoApproveMessageWidget.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/autoApproveMessageWidget.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/autoApproveMessageWidget.ts index 4d741e7d703..45dc267ac9c 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/autoApproveMessageWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/autoApproveMessageWidget.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IMarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { IMarkdownString } from '../../../../../../../base/common/htmlContent.js'; export class AutoApproveMessageWidget { constructor(public readonly message: IMarkdownString) { } diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.ts similarity index 79% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.ts index 7f19ecc763a..726ce214681 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatExtensionsInstallToolSubPart.ts @@ -3,20 +3,20 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../../base/browser/dom.js'; -import { Emitter } from '../../../../../../base/common/event.js'; -import { toDisposable } from '../../../../../../base/common/lifecycle.js'; -import { localize } from '../../../../../../nls.js'; -import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; -import { IExtensionManagementService } from '../../../../../../platform/extensionManagement/common/extensionManagement.js'; -import { areSameExtensions } from '../../../../../../platform/extensionManagement/common/extensionManagementUtil.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; -import { ChatContextKeys } from '../../../common/chatContextKeys.js'; -import { ConfirmedReason, IChatToolInvocation, ToolConfirmKind } from '../../../common/chatService.js'; -import { CancelChatActionId } from '../../actions/chatExecuteActions.js'; -import { AcceptToolConfirmationActionId } from '../../actions/chatToolActions.js'; -import { IChatWidgetService } from '../../chat.js'; +import * as dom from '../../../../../../../base/browser/dom.js'; +import { Emitter } from '../../../../../../../base/common/event.js'; +import { toDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../../nls.js'; +import { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js'; +import { IExtensionManagementService } from '../../../../../../../platform/extensionManagement/common/extensionManagement.js'; +import { areSameExtensions } from '../../../../../../../platform/extensionManagement/common/extensionManagementUtil.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js'; +import { ChatContextKeys } from '../../../../common/actions/chatContextKeys.js'; +import { ConfirmedReason, IChatToolInvocation, ToolConfirmKind } from '../../../../common/chatService/chatService.js'; +import { CancelChatActionId } from '../../../actions/chatExecuteActions.js'; +import { AcceptToolConfirmationActionId } from '../../../actions/chatToolActions.js'; +import { IChatWidgetService } from '../../../chat.js'; import { ChatConfirmationWidget, IChatConfirmationButton } from '../chatConfirmationWidget.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { ChatExtensionsContentPart } from '../chatExtensionsContentPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.ts similarity index 83% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.ts index 0ad61f169b5..7393e039236 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatInputOutputMarkdownProgressPart.ts @@ -3,22 +3,22 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { ProgressBar } from '../../../../../../base/browser/ui/progressbar/progressbar.js'; -import { decodeBase64 } from '../../../../../../base/common/buffer.js'; -import { IMarkdownString, createMarkdownCommandLink, MarkdownString } from '../../../../../../base/common/htmlContent.js'; -import { Lazy } from '../../../../../../base/common/lazy.js'; -import { toDisposable } from '../../../../../../base/common/lifecycle.js'; -import { getExtensionForMimeType } from '../../../../../../base/common/mime.js'; -import { autorun } from '../../../../../../base/common/observable.js'; -import { basename } from '../../../../../../base/common/resources.js'; -import { ILanguageService } from '../../../../../../editor/common/languages/language.js'; -import { IModelService } from '../../../../../../editor/common/services/model.js'; -import { localize } from '../../../../../../nls.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { ChatResponseResource } from '../../../common/chatModel.js'; -import { IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from '../../../common/chatService.js'; -import { IToolResultInputOutputDetails } from '../../../common/languageModelToolsService.js'; -import { IChatCodeBlockInfo } from '../../chat.js'; +import { ProgressBar } from '../../../../../../../base/browser/ui/progressbar/progressbar.js'; +import { decodeBase64 } from '../../../../../../../base/common/buffer.js'; +import { IMarkdownString, createMarkdownCommandLink, MarkdownString } from '../../../../../../../base/common/htmlContent.js'; +import { Lazy } from '../../../../../../../base/common/lazy.js'; +import { toDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { getExtensionForMimeType } from '../../../../../../../base/common/mime.js'; +import { autorun } from '../../../../../../../base/common/observable.js'; +import { basename } from '../../../../../../../base/common/resources.js'; +import { ILanguageService } from '../../../../../../../editor/common/languages/language.js'; +import { IModelService } from '../../../../../../../editor/common/services/model.js'; +import { localize } from '../../../../../../../nls.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { ChatResponseResource } from '../../../../common/model/chatModel.js'; +import { IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from '../../../../common/chatService/chatService.js'; +import { IToolResultInputOutputDetails } from '../../../../common/tools/languageModelToolsService.js'; +import { IChatCodeBlockInfo } from '../../../chat.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { ChatCollapsibleInputOutputContentPart, ChatCollapsibleIOPart, IChatCollapsibleIOCodePart } from '../chatToolInputOutputContentPart.js'; import { BaseChatToolInvocationSubPart } from './chatToolInvocationSubPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatResultListSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.ts similarity index 78% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatResultListSubPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.ts index 5df65ab89fd..c68edabacab 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatResultListSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatResultListSubPart.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IMarkdownString } from '../../../../../../base/common/htmlContent.js'; -import { URI } from '../../../../../../base/common/uri.js'; -import { Location } from '../../../../../../editor/common/languages.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IChatToolInvocation, IChatToolInvocationSerialized } from '../../../common/chatService.js'; -import { IChatCodeBlockInfo } from '../../chat.js'; +import { IMarkdownString } from '../../../../../../../base/common/htmlContent.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { Location } from '../../../../../../../editor/common/languages.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatToolInvocation, IChatToolInvocationSerialized } from '../../../../common/chatService/chatService.js'; +import { IChatCodeBlockInfo } from '../../../chat.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { ChatCollapsibleListContentPart, CollapsibleListPool, IChatCollapsibleListItem } from '../chatReferencesContentPart.js'; import { BaseChatToolInvocationSubPart } from './chatToolInvocationSubPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts index ffd78ae9466..977c707d471 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts @@ -3,42 +3,42 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { append, h } from '../../../../../../base/browser/dom.js'; -import { HoverStyle } from '../../../../../../base/browser/ui/hover/hover.js'; -import { HoverPosition } from '../../../../../../base/browser/ui/hover/hoverWidget.js'; -import { Separator } from '../../../../../../base/common/actions.js'; -import { asArray } from '../../../../../../base/common/arrays.js'; -import { Codicon } from '../../../../../../base/common/codicons.js'; -import { ErrorNoTelemetry } from '../../../../../../base/common/errors.js'; -import { createCommandUri, MarkdownString, type IMarkdownString } from '../../../../../../base/common/htmlContent.js'; -import { thenIfNotDisposed, thenRegisterOrDispose, toDisposable } from '../../../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../../../base/common/network.js'; -import Severity from '../../../../../../base/common/severity.js'; -import { isObject } from '../../../../../../base/common/types.js'; -import { URI } from '../../../../../../base/common/uri.js'; -import { generateUuid } from '../../../../../../base/common/uuid.js'; -import { ILanguageService } from '../../../../../../editor/common/languages/language.js'; -import { IModelService } from '../../../../../../editor/common/services/model.js'; -import { ITextModelService } from '../../../../../../editor/common/services/resolverService.js'; -import { localize } from '../../../../../../nls.js'; -import { ConfigurationTarget, IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; -import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; -import { IDialogService } from '../../../../../../platform/dialogs/common/dialogs.js'; -import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; -import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../../../platform/storage/common/storage.js'; -import { IPreferencesService } from '../../../../../services/preferences/common/preferences.js'; -import { ITerminalChatService } from '../../../../terminal/browser/terminal.js'; -import { TerminalContribCommandId, TerminalContribSettingId } from '../../../../terminal/terminalContribExports.js'; -import { migrateLegacyTerminalToolSpecificData } from '../../../common/chat.js'; -import { ChatContextKeys } from '../../../common/chatContextKeys.js'; -import { IChatToolInvocation, ToolConfirmKind, type IChatTerminalToolInvocationData, type ILegacyChatTerminalToolInvocationData } from '../../../common/chatService.js'; -import type { CodeBlockModelCollection } from '../../../common/codeBlockModelCollection.js'; -import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '../../actions/chatToolActions.js'; -import { IChatCodeBlockInfo, IChatWidgetService } from '../../chat.js'; -import { ICodeBlockRenderOptions } from '../../codeBlockPart.js'; +import { append, h } from '../../../../../../../base/browser/dom.js'; +import { HoverStyle } from '../../../../../../../base/browser/ui/hover/hover.js'; +import { HoverPosition } from '../../../../../../../base/browser/ui/hover/hoverWidget.js'; +import { Separator } from '../../../../../../../base/common/actions.js'; +import { asArray } from '../../../../../../../base/common/arrays.js'; +import { Codicon } from '../../../../../../../base/common/codicons.js'; +import { ErrorNoTelemetry } from '../../../../../../../base/common/errors.js'; +import { createCommandUri, MarkdownString, type IMarkdownString } from '../../../../../../../base/common/htmlContent.js'; +import { thenIfNotDisposed, thenRegisterOrDispose, toDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../../../base/common/network.js'; +import Severity from '../../../../../../../base/common/severity.js'; +import { isObject } from '../../../../../../../base/common/types.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../../../base/common/uuid.js'; +import { ILanguageService } from '../../../../../../../editor/common/languages/language.js'; +import { IModelService } from '../../../../../../../editor/common/services/model.js'; +import { ITextModelService } from '../../../../../../../editor/common/services/resolverService.js'; +import { localize } from '../../../../../../../nls.js'; +import { ConfigurationTarget, IConfigurationService } from '../../../../../../../platform/configuration/common/configuration.js'; +import { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js'; +import { IDialogService } from '../../../../../../../platform/dialogs/common/dialogs.js'; +import { IHoverService } from '../../../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js'; +import { IMarkdownRenderer } from '../../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../../../platform/storage/common/storage.js'; +import { IPreferencesService } from '../../../../../../services/preferences/common/preferences.js'; +import { ITerminalChatService } from '../../../../../terminal/browser/terminal.js'; +import { TerminalContribCommandId, TerminalContribSettingId } from '../../../../../terminal/terminalContribExports.js'; +import { migrateLegacyTerminalToolSpecificData } from '../../../../common/chat.js'; +import { ChatContextKeys } from '../../../../common/actions/chatContextKeys.js'; +import { IChatToolInvocation, ToolConfirmKind, type IChatTerminalToolInvocationData, type ILegacyChatTerminalToolInvocationData } from '../../../../common/chatService/chatService.js'; +import type { CodeBlockModelCollection } from '../../../../common/widget/codeBlockModelCollection.js'; +import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '../../../actions/chatToolActions.js'; +import { IChatCodeBlockInfo, IChatWidgetService } from '../../../chat.js'; +import { ICodeBlockRenderOptions } from '../codeBlockPart.js'; import { ChatCustomConfirmationWidget, IChatConfirmationButton } from '../chatConfirmationWidget.js'; import { EditorPool } from '../chatContentCodePools.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts similarity index 93% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts index c6240ef2759..c3f6c7a565d 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts @@ -3,52 +3,52 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { h } from '../../../../../../base/browser/dom.js'; -import { ActionBar } from '../../../../../../base/browser/ui/actionbar/actionbar.js'; -import { isMarkdownString, MarkdownString } from '../../../../../../base/common/htmlContent.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { migrateLegacyTerminalToolSpecificData } from '../../../common/chat.js'; -import { IChatToolInvocation, IChatToolInvocationSerialized, type IChatMarkdownContent, type IChatTerminalToolInvocationData, type ILegacyChatTerminalToolInvocationData } from '../../../common/chatService.js'; -import { CodeBlockModelCollection } from '../../../common/codeBlockModelCollection.js'; -import { IChatCodeBlockInfo, IChatWidgetService } from '../../chat.js'; +import { h } from '../../../../../../../base/browser/dom.js'; +import { ActionBar } from '../../../../../../../base/browser/ui/actionbar/actionbar.js'; +import { isMarkdownString, MarkdownString } from '../../../../../../../base/common/htmlContent.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { migrateLegacyTerminalToolSpecificData } from '../../../../common/chat.js'; +import { IChatToolInvocation, IChatToolInvocationSerialized, type IChatMarkdownContent, type IChatTerminalToolInvocationData, type ILegacyChatTerminalToolInvocationData } from '../../../../common/chatService/chatService.js'; +import { CodeBlockModelCollection } from '../../../../common/widget/codeBlockModelCollection.js'; +import { IChatCodeBlockInfo, IChatWidgetService } from '../../../chat.js'; import { ChatQueryTitlePart } from '../chatConfirmationWidget.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { ChatMarkdownContentPart, type IChatMarkdownContentPartOptions } from '../chatMarkdownContentPart.js'; import { ChatProgressSubPart } from '../chatProgressContentPart.js'; import { BaseChatToolInvocationSubPart } from './chatToolInvocationSubPart.js'; import '../media/chatTerminalToolProgressPart.css'; -import type { ICodeBlockRenderOptions } from '../../codeBlockPart.js'; -import { Action, IAction } from '../../../../../../base/common/actions.js'; -import { IChatTerminalToolProgressPart, ITerminalChatService, ITerminalConfigurationService, ITerminalEditorService, ITerminalGroupService, ITerminalInstance, ITerminalService } from '../../../../terminal/browser/terminal.js'; -import { Disposable, MutableDisposable, toDisposable, type IDisposable } from '../../../../../../base/common/lifecycle.js'; -import { Emitter } from '../../../../../../base/common/event.js'; -import { ThemeIcon } from '../../../../../../base/common/themables.js'; -import { DecorationSelector, getTerminalCommandDecorationState, getTerminalCommandDecorationTooltip } from '../../../../terminal/browser/xterm/decorationStyles.js'; -import * as dom from '../../../../../../base/browser/dom.js'; -import { DomScrollableElement } from '../../../../../../base/browser/ui/scrollbar/scrollableElement.js'; -import { ScrollbarVisibility } from '../../../../../../base/common/scrollable.js'; -import { localize } from '../../../../../../nls.js'; -import { ITerminalCommand, TerminalCapability, type ICommandDetectionCapability } from '../../../../../../platform/terminal/common/capabilities/capabilities.js'; -import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; -import { URI } from '../../../../../../base/common/uri.js'; -import { stripIcons } from '../../../../../../base/common/iconLabels.js'; -import { IAccessibleViewService } from '../../../../../../platform/accessibility/browser/accessibleView.js'; -import { IContextKey, IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; -import { AccessibilityVerbositySettingId } from '../../../../accessibility/browser/accessibilityConfiguration.js'; -import { ChatContextKeys } from '../../../common/chatContextKeys.js'; +import type { ICodeBlockRenderOptions } from '../codeBlockPart.js'; +import { Action, IAction } from '../../../../../../../base/common/actions.js'; +import { IChatTerminalToolProgressPart, ITerminalChatService, ITerminalConfigurationService, ITerminalEditorService, ITerminalGroupService, ITerminalInstance, ITerminalService } from '../../../../../terminal/browser/terminal.js'; +import { Disposable, MutableDisposable, toDisposable, type IDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { Emitter } from '../../../../../../../base/common/event.js'; +import { ThemeIcon } from '../../../../../../../base/common/themables.js'; +import { DecorationSelector, getTerminalCommandDecorationState, getTerminalCommandDecorationTooltip } from '../../../../../terminal/browser/xterm/decorationStyles.js'; +import * as dom from '../../../../../../../base/browser/dom.js'; +import { DomScrollableElement } from '../../../../../../../base/browser/ui/scrollbar/scrollableElement.js'; +import { ScrollbarVisibility } from '../../../../../../../base/common/scrollable.js'; +import { localize } from '../../../../../../../nls.js'; +import { ITerminalCommand, TerminalCapability, type ICommandDetectionCapability } from '../../../../../../../platform/terminal/common/capabilities/capabilities.js'; +import { IMarkdownRenderer } from '../../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IHoverService } from '../../../../../../../platform/hover/browser/hover.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { stripIcons } from '../../../../../../../base/common/iconLabels.js'; +import { IAccessibleViewService } from '../../../../../../../platform/accessibility/browser/accessibleView.js'; +import { IContextKey, IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js'; +import { AccessibilityVerbositySettingId } from '../../../../../accessibility/browser/accessibilityConfiguration.js'; +import { ChatContextKeys } from '../../../../common/actions/chatContextKeys.js'; import { EditorPool } from '../chatContentCodePools.js'; -import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; -import { DetachedTerminalCommandMirror, DetachedTerminalSnapshotMirror } from '../../../../terminal/browser/chatTerminalCommandMirror.js'; -import { TerminalLocation } from '../../../../../../platform/terminal/common/terminal.js'; -import { Codicon } from '../../../../../../base/common/codicons.js'; -import { TerminalContribCommandId } from '../../../../terminal/terminalContribExports.js'; -import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; -import { isNumber } from '../../../../../../base/common/types.js'; -import { removeAnsiEscapeCodes } from '../../../../../../base/common/strings.js'; -import { PANEL_BACKGROUND } from '../../../../../common/theme.js'; -import { editorBackground } from '../../../../../../platform/theme/common/colorRegistry.js'; -import { IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js'; +import { DetachedTerminalCommandMirror, DetachedTerminalSnapshotMirror } from '../../../../../terminal/browser/chatTerminalCommandMirror.js'; +import { TerminalLocation } from '../../../../../../../platform/terminal/common/terminal.js'; +import { Codicon } from '../../../../../../../base/common/codicons.js'; +import { TerminalContribCommandId } from '../../../../../terminal/terminalContribExports.js'; +import { ITelemetryService } from '../../../../../../../platform/telemetry/common/telemetry.js'; +import { isNumber } from '../../../../../../../base/common/types.js'; +import { removeAnsiEscapeCodes } from '../../../../../../../base/common/strings.js'; +import { PANEL_BACKGROUND } from '../../../../../../common/theme.js'; +import { editorBackground } from '../../../../../../../platform/theme/common/colorRegistry.js'; +import { IThemeService } from '../../../../../../../platform/theme/common/themeService.js'; const MIN_OUTPUT_ROWS = 1; const MAX_OUTPUT_ROWS = 10; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts similarity index 85% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts index 5b87b41dbc0..859421939a0 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts @@ -3,32 +3,32 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../../base/browser/dom.js'; -import { Separator } from '../../../../../../base/common/actions.js'; -import { RunOnceScheduler } from '../../../../../../base/common/async.js'; -import { IMarkdownString, MarkdownString } from '../../../../../../base/common/htmlContent.js'; -import { toDisposable } from '../../../../../../base/common/lifecycle.js'; -import { count } from '../../../../../../base/common/strings.js'; -import { isEmptyObject } from '../../../../../../base/common/types.js'; -import { generateUuid } from '../../../../../../base/common/uuid.js'; -import { ElementSizeObserver } from '../../../../../../editor/browser/config/elementSizeObserver.js'; -import { ILanguageService } from '../../../../../../editor/common/languages/language.js'; -import { IModelService } from '../../../../../../editor/common/services/model.js'; -import { localize } from '../../../../../../nls.js'; -import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; -import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; -import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IMarkerData, IMarkerService, MarkerSeverity } from '../../../../../../platform/markers/common/markers.js'; -import { IChatToolInvocation, ToolConfirmKind } from '../../../common/chatService.js'; -import { CodeBlockModelCollection } from '../../../common/codeBlockModelCollection.js'; -import { createToolInputUri, createToolSchemaUri, ILanguageModelToolsService } from '../../../common/languageModelToolsService.js'; -import { ILanguageModelToolsConfirmationService } from '../../../common/languageModelToolsConfirmationService.js'; -import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '../../actions/chatToolActions.js'; -import { IChatCodeBlockInfo, IChatWidgetService } from '../../chat.js'; -import { renderFileWidgets } from '../../chatInlineAnchorWidget.js'; -import { ICodeBlockRenderOptions } from '../../codeBlockPart.js'; +import * as dom from '../../../../../../../base/browser/dom.js'; +import { Separator } from '../../../../../../../base/common/actions.js'; +import { RunOnceScheduler } from '../../../../../../../base/common/async.js'; +import { IMarkdownString, MarkdownString } from '../../../../../../../base/common/htmlContent.js'; +import { toDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { count } from '../../../../../../../base/common/strings.js'; +import { isEmptyObject } from '../../../../../../../base/common/types.js'; +import { generateUuid } from '../../../../../../../base/common/uuid.js'; +import { ElementSizeObserver } from '../../../../../../../editor/browser/config/elementSizeObserver.js'; +import { ILanguageService } from '../../../../../../../editor/common/languages/language.js'; +import { IModelService } from '../../../../../../../editor/common/services/model.js'; +import { localize } from '../../../../../../../nls.js'; +import { ICommandService } from '../../../../../../../platform/commands/common/commands.js'; +import { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js'; +import { IMarkdownRenderer } from '../../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IMarkerData, IMarkerService, MarkerSeverity } from '../../../../../../../platform/markers/common/markers.js'; +import { IChatToolInvocation, ToolConfirmKind } from '../../../../common/chatService/chatService.js'; +import { CodeBlockModelCollection } from '../../../../common/widget/codeBlockModelCollection.js'; +import { createToolInputUri, createToolSchemaUri, ILanguageModelToolsService } from '../../../../common/tools/languageModelToolsService.js'; +import { ILanguageModelToolsConfirmationService } from '../../../../common/tools/languageModelToolsConfirmationService.js'; +import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '../../../actions/chatToolActions.js'; +import { IChatCodeBlockInfo, IChatWidgetService } from '../../../chat.js'; +import { renderFileWidgets } from '../chatInlineAnchorWidget.js'; +import { ICodeBlockRenderOptions } from '../codeBlockPart.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { IChatMarkdownAnchorService } from '../chatMarkdownAnchorService.js'; import { ChatMarkdownContentPart } from '../chatMarkdownContentPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts similarity index 90% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts index 44a8fc91a9e..3444afbdc55 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts @@ -3,17 +3,17 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../../base/browser/dom.js'; -import { Emitter } from '../../../../../../base/common/event.js'; -import { Disposable, DisposableStore, IDisposable } from '../../../../../../base/common/lifecycle.js'; -import { autorun } from '../../../../../../base/common/observable.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IChatToolInvocation, IChatToolInvocationSerialized } from '../../../common/chatService.js'; -import { IChatRendererContent } from '../../../common/chatViewModel.js'; -import { CodeBlockModelCollection } from '../../../common/codeBlockModelCollection.js'; -import { isToolResultInputOutputDetails, isToolResultOutputDetails, ToolInvocationPresentation } from '../../../common/languageModelToolsService.js'; -import { ChatTreeItem, IChatCodeBlockInfo } from '../../chat.js'; +import * as dom from '../../../../../../../base/browser/dom.js'; +import { Emitter } from '../../../../../../../base/common/event.js'; +import { Disposable, DisposableStore, IDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { autorun } from '../../../../../../../base/common/observable.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IMarkdownRenderer } from '../../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IChatToolInvocation, IChatToolInvocationSerialized } from '../../../../common/chatService/chatService.js'; +import { IChatRendererContent } from '../../../../common/model/chatViewModel.js'; +import { CodeBlockModelCollection } from '../../../../common/widget/codeBlockModelCollection.js'; +import { isToolResultInputOutputDetails, isToolResultOutputDetails, ToolInvocationPresentation } from '../../../../common/tools/languageModelToolsService.js'; +import { ChatTreeItem, IChatCodeBlockInfo } from '../../../chat.js'; import { EditorPool } from '../chatContentCodePools.js'; import { IChatContentPart, IChatContentPartRenderContext } from '../chatContentParts.js'; import { CollapsibleListPool } from '../chatReferencesContentPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.ts similarity index 80% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.ts index 0b81b3c8649..c6f9cbf585f 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationSubPart.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Codicon } from '../../../../../../base/common/codicons.js'; -import { Emitter } from '../../../../../../base/common/event.js'; -import { Disposable } from '../../../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../../../base/common/themables.js'; -import { IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from '../../../common/chatService.js'; -import { IChatCodeBlockInfo } from '../../chat.js'; +import { Codicon } from '../../../../../../../base/common/codicons.js'; +import { Emitter } from '../../../../../../../base/common/event.js'; +import { Disposable } from '../../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../../base/common/themables.js'; +import { IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from '../../../../common/chatService/chatService.js'; +import { IChatCodeBlockInfo } from '../../../chat.js'; export abstract class BaseChatToolInvocationSubPart extends Disposable { protected static idPool = 0; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolOutputPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolOutputPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.ts index 78165f8709c..a796242c2f3 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolOutputPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputPart.ts @@ -3,20 +3,20 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../../base/browser/dom.js'; -import { renderMarkdown } from '../../../../../../base/browser/markdownRenderer.js'; -import { decodeBase64 } from '../../../../../../base/common/buffer.js'; -import { CancellationTokenSource } from '../../../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../../../base/common/codicons.js'; -import { ThemeIcon } from '../../../../../../base/common/themables.js'; -import { generateUuid } from '../../../../../../base/common/uuid.js'; -import { localize } from '../../../../../../nls.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IChatToolInvocation, IChatToolInvocationSerialized, IToolResultOutputDetailsSerialized } from '../../../common/chatService.js'; -import { IChatViewModel } from '../../../common/chatViewModel.js'; -import { IToolResultOutputDetails } from '../../../common/languageModelToolsService.js'; -import { IChatCodeBlockInfo, IChatWidgetService } from '../../chat.js'; -import { IChatOutputRendererService } from '../../chatOutputItemRenderer.js'; +import * as dom from '../../../../../../../base/browser/dom.js'; +import { renderMarkdown } from '../../../../../../../base/browser/markdownRenderer.js'; +import { decodeBase64 } from '../../../../../../../base/common/buffer.js'; +import { CancellationTokenSource } from '../../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../../base/common/codicons.js'; +import { ThemeIcon } from '../../../../../../../base/common/themables.js'; +import { generateUuid } from '../../../../../../../base/common/uuid.js'; +import { localize } from '../../../../../../../nls.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatToolInvocation, IChatToolInvocationSerialized, IToolResultOutputDetailsSerialized } from '../../../../common/chatService/chatService.js'; +import { IChatViewModel } from '../../../../common/model/chatViewModel.js'; +import { IToolResultOutputDetails } from '../../../../common/tools/languageModelToolsService.js'; +import { IChatCodeBlockInfo, IChatWidgetService } from '../../../chat.js'; +import { IChatOutputRendererService } from '../../../chatOutputItemRenderer.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { ChatProgressSubPart } from '../chatProgressContentPart.js'; import { BaseChatToolInvocationSubPart } from './chatToolInvocationSubPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts similarity index 88% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts index afe76061708..54ba1affb72 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts @@ -3,21 +3,21 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../../base/browser/dom.js'; -import { Separator } from '../../../../../../base/common/actions.js'; -import { getExtensionForMimeType } from '../../../../../../base/common/mime.js'; -import { ILanguageService } from '../../../../../../editor/common/languages/language.js'; -import { IModelService } from '../../../../../../editor/common/services/model.js'; -import { localize } from '../../../../../../nls.js'; -import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; -import { ChatResponseResource } from '../../../common/chatModel.js'; -import { IChatToolInvocation, ToolConfirmKind } from '../../../common/chatService.js'; -import { ILanguageModelToolsConfirmationService } from '../../../common/languageModelToolsConfirmationService.js'; -import { ILanguageModelToolsService, IToolResultDataPart, IToolResultPromptTsxPart, IToolResultTextPart, stringifyPromptTsxPart } from '../../../common/languageModelToolsService.js'; -import { AcceptToolPostConfirmationActionId, SkipToolPostConfirmationActionId } from '../../actions/chatToolActions.js'; -import { IChatCodeBlockInfo, IChatWidgetService } from '../../chat.js'; +import * as dom from '../../../../../../../base/browser/dom.js'; +import { Separator } from '../../../../../../../base/common/actions.js'; +import { getExtensionForMimeType } from '../../../../../../../base/common/mime.js'; +import { ILanguageService } from '../../../../../../../editor/common/languages/language.js'; +import { IModelService } from '../../../../../../../editor/common/services/model.js'; +import { localize } from '../../../../../../../nls.js'; +import { IContextKeyService } from '../../../../../../../platform/contextkey/common/contextkey.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js'; +import { ChatResponseResource } from '../../../../common/model/chatModel.js'; +import { IChatToolInvocation, ToolConfirmKind } from '../../../../common/chatService/chatService.js'; +import { ILanguageModelToolsConfirmationService } from '../../../../common/tools/languageModelToolsConfirmationService.js'; +import { ILanguageModelToolsService, IToolResultDataPart, IToolResultPromptTsxPart, IToolResultTextPart, stringifyPromptTsxPart } from '../../../../common/tools/languageModelToolsService.js'; +import { AcceptToolPostConfirmationActionId, SkipToolPostConfirmationActionId } from '../../../actions/chatToolActions.js'; +import { IChatCodeBlockInfo, IChatWidgetService } from '../../../chat.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { ChatCollapsibleIOPart } from '../chatToolInputOutputContentPart.js'; import { ChatToolOutputContentSubPart } from '../chatToolOutputContentSubPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolProgressPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.ts similarity index 84% rename from src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolProgressPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.ts index c61e3262c9c..94c0c5a3602 100644 --- a/src/vs/workbench/contrib/chat/browser/chatContentParts/toolInvocationParts/chatToolProgressPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../../base/browser/dom.js'; -import { status } from '../../../../../../base/browser/ui/aria/aria.js'; -import { IMarkdownString, MarkdownString } from '../../../../../../base/common/htmlContent.js'; -import { autorun } from '../../../../../../base/common/observable.js'; -import { IMarkdownRenderer } from '../../../../../../platform/markdown/browser/markdownRenderer.js'; -import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; -import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; -import { IChatProgressMessage, IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from '../../../common/chatService.js'; -import { AccessibilityWorkbenchSettingId } from '../../../../accessibility/browser/accessibilityConfiguration.js'; -import { IChatCodeBlockInfo } from '../../chat.js'; +import * as dom from '../../../../../../../base/browser/dom.js'; +import { status } from '../../../../../../../base/browser/ui/aria/aria.js'; +import { IMarkdownString, MarkdownString } from '../../../../../../../base/common/htmlContent.js'; +import { autorun } from '../../../../../../../base/common/observable.js'; +import { IMarkdownRenderer } from '../../../../../../../platform/markdown/browser/markdownRenderer.js'; +import { IConfigurationService } from '../../../../../../../platform/configuration/common/configuration.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatProgressMessage, IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind } from '../../../../common/chatService/chatService.js'; +import { AccessibilityWorkbenchSettingId } from '../../../../../accessibility/browser/accessibilityConfiguration.js'; +import { IChatCodeBlockInfo } from '../../../chat.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; import { ChatProgressContentPart } from '../chatProgressContentPart.js'; import { BaseChatToolInvocationSubPart } from './chatToolInvocationSubPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/chatDragAndDrop.ts b/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.ts similarity index 89% rename from src/vs/workbench/contrib/chat/browser/chatDragAndDrop.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.ts index 5a2be7d6697..fa166677003 100644 --- a/src/vs/workbench/contrib/chat/browser/chatDragAndDrop.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatDragAndDrop.ts @@ -3,29 +3,29 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { DataTransfers } from '../../../../base/browser/dnd.js'; -import { $, DragAndDropObserver } from '../../../../base/browser/dom.js'; -import { renderLabelWithIcons } from '../../../../base/browser/ui/iconLabel/iconLabels.js'; -import { coalesce } from '../../../../base/common/arrays.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { UriList } from '../../../../base/common/dataTransfer.js'; -import { IDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { Mimes } from '../../../../base/common/mime.js'; -import { URI } from '../../../../base/common/uri.js'; -import { localize } from '../../../../nls.js'; -import { CodeDataTransfers, containsDragType, extractEditorsDropData, extractMarkerDropData, extractNotebookCellOutputDropData, extractSymbolDropData } from '../../../../platform/dnd/browser/dnd.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { IThemeService, Themable } from '../../../../platform/theme/common/themeService.js'; -import { ISharedWebContentExtractorService } from '../../../../platform/webContentExtractor/common/webContentExtractor.js'; -import { IExtensionService, isProposedApiEnabled } from '../../../services/extensions/common/extensions.js'; -import { extractSCMHistoryItemDropData } from '../../scm/browser/scmHistoryChatContext.js'; -import { IChatRequestVariableEntry } from '../common/chatVariableEntries.js'; -import { IChatWidget } from './chat.js'; -import { ChatAttachmentModel } from './chatAttachmentModel.js'; -import { IChatAttachmentResolveService, ImageTransferData } from './chatAttachmentResolveService.js'; -import { IChatInputStyles } from './chatInputPart.js'; -import { convertStringToUInt8Array } from './chatImageUtils.js'; +import { DataTransfers } from '../../../../../base/browser/dnd.js'; +import { $, DragAndDropObserver } from '../../../../../base/browser/dom.js'; +import { renderLabelWithIcons } from '../../../../../base/browser/ui/iconLabel/iconLabels.js'; +import { coalesce } from '../../../../../base/common/arrays.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { UriList } from '../../../../../base/common/dataTransfer.js'; +import { IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { Mimes } from '../../../../../base/common/mime.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { localize } from '../../../../../nls.js'; +import { CodeDataTransfers, containsDragType, extractEditorsDropData, extractMarkerDropData, extractNotebookCellOutputDropData, extractSymbolDropData } from '../../../../../platform/dnd/browser/dnd.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { IThemeService, Themable } from '../../../../../platform/theme/common/themeService.js'; +import { ISharedWebContentExtractorService } from '../../../../../platform/webContentExtractor/common/webContentExtractor.js'; +import { IExtensionService, isProposedApiEnabled } from '../../../../services/extensions/common/extensions.js'; +import { extractSCMHistoryItemDropData } from '../../../scm/browser/scmHistoryChatContext.js'; +import { IChatRequestVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { IChatWidget } from '../chat.js'; +import { ChatAttachmentModel } from '../attachments/chatAttachmentModel.js'; +import { IChatAttachmentResolveService, ImageTransferData } from '../attachments/chatAttachmentResolveService.js'; +import { IChatInputStyles } from './input/chatInputPart.js'; +import { convertStringToUInt8Array } from '../chatImageUtils.js'; enum ChatDragAndDropType { FILE_INTERNAL, diff --git a/src/vs/workbench/contrib/chat/browser/chatLayoutService.ts b/src/vs/workbench/contrib/chat/browser/widget/chatLayoutService.ts similarity index 70% rename from src/vs/workbench/contrib/chat/browser/chatLayoutService.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatLayoutService.ts index f14a3b67a93..3a53810cb5e 100644 --- a/src/vs/workbench/contrib/chat/browser/chatLayoutService.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatLayoutService.ts @@ -3,11 +3,11 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { derived, IObservable } from '../../../../base/common/observable.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { observableConfigValue } from '../../../../platform/observable/common/platformObservableUtils.js'; -import { IChatLayoutService } from '../common/chatLayoutService.js'; +import { Disposable } from '../../../../../base/common/lifecycle.js'; +import { derived, IObservable } from '../../../../../base/common/observable.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { observableConfigValue } from '../../../../../platform/observable/common/platformObservableUtils.js'; +import { IChatLayoutService } from '../../common/widget/chatLayoutService.js'; const FONT_SIZE = 13; diff --git a/src/vs/workbench/contrib/chat/browser/chatListRenderer.ts b/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.ts similarity index 94% rename from src/vs/workbench/contrib/chat/browser/chatListRenderer.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.ts index 4e55356a20b..10343133fd5 100644 --- a/src/vs/workbench/contrib/chat/browser/chatListRenderer.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.ts @@ -3,66 +3,66 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { renderFormattedText } from '../../../../base/browser/formattedTextRenderer.js'; -import { StandardKeyboardEvent } from '../../../../base/browser/keyboardEvent.js'; -import { IActionViewItemOptions } from '../../../../base/browser/ui/actionbar/actionViewItems.js'; -import { alert } from '../../../../base/browser/ui/aria/aria.js'; -import { DropdownMenuActionViewItem, IDropdownMenuActionViewItemOptions } from '../../../../base/browser/ui/dropdown/dropdownActionViewItem.js'; -import { getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js'; -import { IListElementRenderDetails, IListVirtualDelegate } from '../../../../base/browser/ui/list/list.js'; -import { ITreeNode, ITreeRenderer } from '../../../../base/browser/ui/tree/tree.js'; -import { IAction } from '../../../../base/common/actions.js'; -import { coalesce, distinct } from '../../../../base/common/arrays.js'; -import { findLast } from '../../../../base/common/arraysFind.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { toErrorMessage } from '../../../../base/common/errorMessage.js'; -import { canceledName } from '../../../../base/common/errors.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { FuzzyScore } from '../../../../base/common/filters.js'; -import { IMarkdownString, MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { KeyCode } from '../../../../base/common/keyCodes.js'; -import { Disposable, DisposableStore, IDisposable, dispose, thenIfNotDisposed, toDisposable } from '../../../../base/common/lifecycle.js'; -import { ResourceMap } from '../../../../base/common/map.js'; -import { FileAccess, Schemas } from '../../../../base/common/network.js'; -import { clamp } from '../../../../base/common/numbers.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { localize } from '../../../../nls.js'; -import { IMenuEntryActionViewItemOptions, createActionViewItem } from '../../../../platform/actions/browser/menuEntryActionViewItem.js'; -import { MenuWorkbenchToolBar } from '../../../../platform/actions/browser/toolbar.js'; -import { MenuId, MenuItemAction } from '../../../../platform/actions/common/actions.js'; -import { ICommandService } from '../../../../platform/commands/common/commands.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.js'; -import { IHoverService } from '../../../../platform/hover/browser/hover.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { IMarkdownRenderer } from '../../../../platform/markdown/browser/markdownRenderer.js'; -import { isDark } from '../../../../platform/theme/common/theme.js'; -import { IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { IChatEntitlementService } from '../../../services/chat/common/chatEntitlementService.js'; -import { IWorkbenchIssueService } from '../../issue/common/issue.js'; -import { CodiconActionViewItem } from '../../notebook/browser/view/cellParts/cellActionView.js'; -import { annotateSpecialMarkdownContent } from '../common/annotations.js'; -import { checkModeOption } from '../common/chat.js'; -import { IChatAgentMetadata } from '../common/chatAgents.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IChatTextEditGroup } from '../common/chatModel.js'; -import { chatSubcommandLeader } from '../common/chatParserTypes.js'; -import { ChatAgentVoteDirection, ChatAgentVoteDownReason, ChatErrorLevel, IChatConfirmation, IChatContentReference, IChatElicitationRequest, IChatElicitationRequestSerialized, IChatExtensionsContent, IChatFollowup, IChatMarkdownContent, IChatMcpServersStarting, IChatMultiDiffData, IChatPullRequestContent, IChatTask, IChatTaskSerialized, IChatThinkingPart, IChatToolInvocation, IChatToolInvocationSerialized, IChatTreeData, IChatUndoStop, isChatFollowup } from '../common/chatService.js'; -import { localChatSessionType } from '../common/chatSessionsService.js'; -import { getChatSessionType } from '../common/chatUri.js'; -import { IChatRequestVariableEntry } from '../common/chatVariableEntries.js'; -import { IChatChangesSummaryPart, IChatCodeCitations, IChatErrorDetailsPart, IChatReferences, IChatRendererContent, IChatRequestViewModel, IChatResponseViewModel, IChatViewModel, isRequestVM, isResponseVM } from '../common/chatViewModel.js'; -import { getNWords } from '../common/chatWordCounter.js'; -import { CodeBlockModelCollection } from '../common/codeBlockModelCollection.js'; -import { ChatAgentLocation, ChatConfiguration, ChatModeKind, CollapsedToolsDisplayMode, ThinkingDisplayMode } from '../common/constants.js'; -import { MarkUnhelpfulActionId } from './actions/chatTitleActions.js'; -import { ChatTreeItem, IChatCodeBlockInfo, IChatFileTreeInfo, IChatListItemRendererOptions, IChatWidgetService } from './chat.js'; +import * as dom from '../../../../../base/browser/dom.js'; +import { renderFormattedText } from '../../../../../base/browser/formattedTextRenderer.js'; +import { StandardKeyboardEvent } from '../../../../../base/browser/keyboardEvent.js'; +import { IActionViewItemOptions } from '../../../../../base/browser/ui/actionbar/actionViewItems.js'; +import { alert } from '../../../../../base/browser/ui/aria/aria.js'; +import { DropdownMenuActionViewItem, IDropdownMenuActionViewItemOptions } from '../../../../../base/browser/ui/dropdown/dropdownActionViewItem.js'; +import { getDefaultHoverDelegate } from '../../../../../base/browser/ui/hover/hoverDelegateFactory.js'; +import { IListElementRenderDetails, IListVirtualDelegate } from '../../../../../base/browser/ui/list/list.js'; +import { ITreeNode, ITreeRenderer } from '../../../../../base/browser/ui/tree/tree.js'; +import { IAction } from '../../../../../base/common/actions.js'; +import { coalesce, distinct } from '../../../../../base/common/arrays.js'; +import { findLast } from '../../../../../base/common/arraysFind.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { toErrorMessage } from '../../../../../base/common/errorMessage.js'; +import { canceledName } from '../../../../../base/common/errors.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { FuzzyScore } from '../../../../../base/common/filters.js'; +import { IMarkdownString, MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; +import { KeyCode } from '../../../../../base/common/keyCodes.js'; +import { Disposable, DisposableStore, IDisposable, dispose, thenIfNotDisposed, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { ResourceMap } from '../../../../../base/common/map.js'; +import { FileAccess, Schemas } from '../../../../../base/common/network.js'; +import { clamp } from '../../../../../base/common/numbers.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { localize } from '../../../../../nls.js'; +import { IMenuEntryActionViewItemOptions, createActionViewItem } from '../../../../../platform/actions/browser/menuEntryActionViewItem.js'; +import { MenuWorkbenchToolBar } from '../../../../../platform/actions/browser/toolbar.js'; +import { MenuId, MenuItemAction } from '../../../../../platform/actions/common/actions.js'; +import { ICommandService } from '../../../../../platform/commands/common/commands.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; +import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { IMarkdownRenderer } from '../../../../../platform/markdown/browser/markdownRenderer.js'; +import { isDark } from '../../../../../platform/theme/common/theme.js'; +import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; +import { IChatEntitlementService } from '../../../../services/chat/common/chatEntitlementService.js'; +import { IWorkbenchIssueService } from '../../../issue/common/issue.js'; +import { CodiconActionViewItem } from '../../../notebook/browser/view/cellParts/cellActionView.js'; +import { annotateSpecialMarkdownContent } from '../../common/widget/annotations.js'; +import { checkModeOption } from '../../common/chat.js'; +import { IChatAgentMetadata } from '../../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatTextEditGroup } from '../../common/model/chatModel.js'; +import { chatSubcommandLeader } from '../../common/requestParser/chatParserTypes.js'; +import { ChatAgentVoteDirection, ChatAgentVoteDownReason, ChatErrorLevel, IChatConfirmation, IChatContentReference, IChatElicitationRequest, IChatElicitationRequestSerialized, IChatExtensionsContent, IChatFollowup, IChatMarkdownContent, IChatMcpServersStarting, IChatMultiDiffData, IChatPullRequestContent, IChatTask, IChatTaskSerialized, IChatThinkingPart, IChatToolInvocation, IChatToolInvocationSerialized, IChatTreeData, IChatUndoStop, isChatFollowup } from '../../common/chatService/chatService.js'; +import { localChatSessionType } from '../../common/chatSessionsService.js'; +import { getChatSessionType } from '../../common/model/chatUri.js'; +import { IChatRequestVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { IChatChangesSummaryPart, IChatCodeCitations, IChatErrorDetailsPart, IChatReferences, IChatRendererContent, IChatRequestViewModel, IChatResponseViewModel, IChatViewModel, isRequestVM, isResponseVM } from '../../common/model/chatViewModel.js'; +import { getNWords } from '../../common/model/chatWordCounter.js'; +import { CodeBlockModelCollection } from '../../common/widget/codeBlockModelCollection.js'; +import { ChatAgentLocation, ChatConfiguration, ChatModeKind, CollapsedToolsDisplayMode, ThinkingDisplayMode } from '../../common/constants.js'; +import { MarkUnhelpfulActionId } from '../actions/chatTitleActions.js'; +import { ChatTreeItem, IChatCodeBlockInfo, IChatFileTreeInfo, IChatListItemRendererOptions, IChatWidgetService } from '../chat.js'; import { ChatAgentHover, getChatAgentHoverOptions } from './chatAgentHover.js'; import { ChatContentMarkdownRenderer } from './chatContentMarkdownRenderer.js'; import { ChatAgentCommandContentPart } from './chatContentParts/chatAgentCommandContentPart.js'; @@ -89,11 +89,10 @@ import { ChatTaskContentPart } from './chatContentParts/chatTaskContentPart.js'; import { ChatTextEditContentPart } from './chatContentParts/chatTextEditContentPart.js'; import { ChatThinkingContentPart } from './chatContentParts/chatThinkingContentPart.js'; import { ChatTreeContentPart, TreePool } from './chatContentParts/chatTreeContentPart.js'; -import './chatContentParts/media/chatMcpServersInteractionContent.css'; import { ChatToolInvocationPart } from './chatContentParts/toolInvocationParts/chatToolInvocationPart.js'; -import { ChatMarkdownDecorationsRenderer } from './chatMarkdownDecorationsRenderer.js'; +import { ChatMarkdownDecorationsRenderer } from './chatContentParts/chatMarkdownDecorationsRenderer.js'; import { ChatEditorOptions } from './chatOptions.js'; -import { ChatCodeBlockContentProvider, CodeBlockPart } from './codeBlockPart.js'; +import { ChatCodeBlockContentProvider, CodeBlockPart } from './chatContentParts/codeBlockPart.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatOptions.ts b/src/vs/workbench/contrib/chat/browser/widget/chatOptions.ts similarity index 90% rename from src/vs/workbench/contrib/chat/browser/chatOptions.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatOptions.ts index 054a323f3fe..2c8a3abf418 100644 --- a/src/vs/workbench/contrib/chat/browser/chatOptions.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatOptions.ts @@ -3,13 +3,13 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Color } from '../../../../base/common/color.js'; -import { Emitter } from '../../../../base/common/event.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { IBracketPairColorizationOptions, IEditorOptions } from '../../../../editor/common/config/editorOptions.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { IViewDescriptorService } from '../../../common/views.js'; +import { Color } from '../../../../../base/common/color.js'; +import { Emitter } from '../../../../../base/common/event.js'; +import { Disposable } from '../../../../../base/common/lifecycle.js'; +import { IBracketPairColorizationOptions, IEditorOptions } from '../../../../../editor/common/config/editorOptions.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; +import { IViewDescriptorService } from '../../../../common/views.js'; export interface IChatConfiguration { editor: { diff --git a/src/vs/workbench/contrib/chat/browser/chatWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts similarity index 94% rename from src/vs/workbench/contrib/chat/browser/chatWidget.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts index 037fb766e8c..de7afd2ab9a 100644 --- a/src/vs/workbench/contrib/chat/browser/chatWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts @@ -6,84 +6,84 @@ import './media/chat.css'; import './media/chatAgentHover.css'; import './media/chatViewWelcome.css'; -import * as dom from '../../../../base/browser/dom.js'; -import { IMouseWheelEvent } from '../../../../base/browser/mouseEvent.js'; -import { Button } from '../../../../base/browser/ui/button/button.js'; -import { ITreeContextMenuEvent, ITreeElement } from '../../../../base/browser/ui/tree/tree.js'; -import { disposableTimeout, timeout } from '../../../../base/common/async.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { toErrorMessage } from '../../../../base/common/errorMessage.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { FuzzyScore } from '../../../../base/common/filters.js'; -import { IMarkdownString, MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { Disposable, DisposableStore, IDisposable, MutableDisposable, thenIfNotDisposed } from '../../../../base/common/lifecycle.js'; -import { ResourceSet } from '../../../../base/common/map.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { filter } from '../../../../base/common/objects.js'; -import { autorun, observableFromEvent, observableValue } from '../../../../base/common/observable.js'; -import { basename, extUri, isEqual } from '../../../../base/common/resources.js'; -import { MicrotaskDelay } from '../../../../base/common/symbols.js'; -import { isDefined } from '../../../../base/common/types.js'; -import { URI } from '../../../../base/common/uri.js'; -import { ICodeEditor } from '../../../../editor/browser/editorBrowser.js'; -import { ICodeEditorService } from '../../../../editor/browser/services/codeEditorService.js'; -import { OffsetRange } from '../../../../editor/common/core/ranges/offsetRange.js'; -import { localize } from '../../../../nls.js'; -import { MenuId } from '../../../../platform/actions/common/actions.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { ContextKeyExpr, IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.js'; -import { ITextResourceEditorInput } from '../../../../platform/editor/common/editor.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js'; -import { WorkbenchObjectTree } from '../../../../platform/list/browser/listService.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { bindContextKey } from '../../../../platform/observable/common/platformObservableUtils.js'; -import product from '../../../../platform/product/common/product.js'; -import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js'; -import { buttonSecondaryBackground, buttonSecondaryForeground, buttonSecondaryHoverBackground } from '../../../../platform/theme/common/colorRegistry.js'; -import { asCssVariable } from '../../../../platform/theme/common/colorUtils.js'; -import { IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { IWorkspaceContextService, WorkbenchState } from '../../../../platform/workspace/common/workspace.js'; -import { EditorResourceAccessor } from '../../../../workbench/common/editor.js'; -import { IEditorService } from '../../../../workbench/services/editor/common/editorService.js'; -import { IChatEntitlementService } from '../../../services/chat/common/chatEntitlementService.js'; -import { ILifecycleService } from '../../../services/lifecycle/common/lifecycle.js'; -import { katexContainerClassName } from '../../markdown/common/markedKatexExtension.js'; -import { checkModeOption } from '../common/chat.js'; -import { IChatAgentAttachmentCapabilities, IChatAgentCommand, IChatAgentData, IChatAgentService } from '../common/chatAgents.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { applyingChatEditsFailedContextKey, decidedChatEditingResourceContextKey, hasAppliedChatEditsContextKey, hasUndecidedChatEditingResourceContextKey, IChatEditingService, IChatEditingSession, inChatEditingSessionContextKey, ModifiedFileEntryState } from '../common/chatEditingService.js'; -import { IChatLayoutService } from '../common/chatLayoutService.js'; -import { IChatModel, IChatModelInputState, IChatResponseModel } from '../common/chatModel.js'; -import { ChatMode, IChatModeService } from '../common/chatModes.js'; -import { chatAgentLeader, ChatRequestAgentPart, ChatRequestDynamicVariablePart, ChatRequestSlashPromptPart, ChatRequestToolPart, ChatRequestToolSetPart, chatSubcommandLeader, formatChatQuestion, IParsedChatRequest } from '../common/chatParserTypes.js'; -import { ChatRequestParser } from '../common/chatRequestParser.js'; -import { IChatLocationData, IChatSendRequestOptions, IChatService } from '../common/chatService.js'; -import { IChatSessionsService } from '../common/chatSessionsService.js'; -import { IChatSlashCommandService } from '../common/chatSlashCommands.js'; -import { IChatTodoListService } from '../common/chatTodoListService.js'; -import { ChatRequestVariableSet, IChatRequestVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, isWorkspaceVariableEntry, PromptFileVariableKind, toPromptFileVariableEntry } from '../common/chatVariableEntries.js'; -import { ChatViewModel, IChatRequestViewModel, IChatResponseViewModel, isRequestVM, isResponseVM } from '../common/chatViewModel.js'; -import { CodeBlockModelCollection } from '../common/codeBlockModelCollection.js'; -import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../common/constants.js'; -import { ILanguageModelToolsService, ToolSet } from '../common/languageModelToolsService.js'; -import { ComputeAutomaticInstructions } from '../common/promptSyntax/computeAutomaticInstructions.js'; -import { PromptsConfig } from '../common/promptSyntax/config/config.js'; -import { IHandOff, PromptHeader, Target } from '../common/promptSyntax/promptFileParser.js'; -import { IPromptsService } from '../common/promptSyntax/service/promptsService.js'; -import { handleModeSwitch } from './actions/chatActions.js'; -import { ChatTreeItem, IChatAcceptInputOptions, IChatAccessibilityService, IChatCodeBlockInfo, IChatFileTreeInfo, IChatListItemRendererOptions, IChatWidget, IChatWidgetService, IChatWidgetViewContext, IChatWidgetViewModelChangeEvent, IChatWidgetViewOptions, isIChatResourceViewContext, isIChatViewViewContext } from './chat.js'; -import { ChatAccessibilityProvider } from './chatAccessibilityProvider.js'; -import { ChatAttachmentModel } from './chatAttachmentModel.js'; +import * as dom from '../../../../../base/browser/dom.js'; +import { IMouseWheelEvent } from '../../../../../base/browser/mouseEvent.js'; +import { Button } from '../../../../../base/browser/ui/button/button.js'; +import { ITreeContextMenuEvent, ITreeElement } from '../../../../../base/browser/ui/tree/tree.js'; +import { disposableTimeout, timeout } from '../../../../../base/common/async.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { toErrorMessage } from '../../../../../base/common/errorMessage.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { FuzzyScore } from '../../../../../base/common/filters.js'; +import { IMarkdownString, MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; +import { Disposable, DisposableStore, IDisposable, MutableDisposable, thenIfNotDisposed } from '../../../../../base/common/lifecycle.js'; +import { ResourceSet } from '../../../../../base/common/map.js'; +import { Schemas } from '../../../../../base/common/network.js'; +import { filter } from '../../../../../base/common/objects.js'; +import { autorun, observableFromEvent, observableValue } from '../../../../../base/common/observable.js'; +import { basename, extUri, isEqual } from '../../../../../base/common/resources.js'; +import { MicrotaskDelay } from '../../../../../base/common/symbols.js'; +import { isDefined } from '../../../../../base/common/types.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { ICodeEditor } from '../../../../../editor/browser/editorBrowser.js'; +import { ICodeEditorService } from '../../../../../editor/browser/services/codeEditorService.js'; +import { OffsetRange } from '../../../../../editor/common/core/ranges/offsetRange.js'; +import { localize } from '../../../../../nls.js'; +import { MenuId } from '../../../../../platform/actions/common/actions.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { ContextKeyExpr, IContextKey, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../platform/contextview/browser/contextView.js'; +import { ITextResourceEditorInput } from '../../../../../platform/editor/common/editor.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; +import { WorkbenchObjectTree } from '../../../../../platform/list/browser/listService.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { bindContextKey } from '../../../../../platform/observable/common/platformObservableUtils.js'; +import product from '../../../../../platform/product/common/product.js'; +import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; +import { buttonSecondaryBackground, buttonSecondaryForeground, buttonSecondaryHoverBackground } from '../../../../../platform/theme/common/colorRegistry.js'; +import { asCssVariable } from '../../../../../platform/theme/common/colorUtils.js'; +import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; +import { IWorkspaceContextService, WorkbenchState } from '../../../../../platform/workspace/common/workspace.js'; +import { EditorResourceAccessor } from '../../../../common/editor.js'; +import { IEditorService } from '../../../../services/editor/common/editorService.js'; +import { IChatEntitlementService } from '../../../../services/chat/common/chatEntitlementService.js'; +import { ILifecycleService } from '../../../../services/lifecycle/common/lifecycle.js'; +import { katexContainerClassName } from '../../../markdown/common/markedKatexExtension.js'; +import { checkModeOption } from '../../common/chat.js'; +import { IChatAgentAttachmentCapabilities, IChatAgentCommand, IChatAgentData, IChatAgentService } from '../../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { applyingChatEditsFailedContextKey, decidedChatEditingResourceContextKey, hasAppliedChatEditsContextKey, hasUndecidedChatEditingResourceContextKey, IChatEditingService, IChatEditingSession, inChatEditingSessionContextKey, ModifiedFileEntryState } from '../../common/editing/chatEditingService.js'; +import { IChatLayoutService } from '../../common/widget/chatLayoutService.js'; +import { IChatModel, IChatModelInputState, IChatResponseModel } from '../../common/model/chatModel.js'; +import { ChatMode, IChatModeService } from '../../common/chatModes.js'; +import { chatAgentLeader, ChatRequestAgentPart, ChatRequestDynamicVariablePart, ChatRequestSlashPromptPart, ChatRequestToolPart, ChatRequestToolSetPart, chatSubcommandLeader, formatChatQuestion, IParsedChatRequest } from '../../common/requestParser/chatParserTypes.js'; +import { ChatRequestParser } from '../../common/requestParser/chatRequestParser.js'; +import { IChatLocationData, IChatSendRequestOptions, IChatService } from '../../common/chatService/chatService.js'; +import { IChatSessionsService } from '../../common/chatSessionsService.js'; +import { IChatSlashCommandService } from '../../common/participants/chatSlashCommands.js'; +import { IChatTodoListService } from '../../common/tools/chatTodoListService.js'; +import { ChatRequestVariableSet, IChatRequestVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, isWorkspaceVariableEntry, PromptFileVariableKind, toPromptFileVariableEntry } from '../../common/attachments/chatVariableEntries.js'; +import { ChatViewModel, IChatRequestViewModel, IChatResponseViewModel, isRequestVM, isResponseVM } from '../../common/model/chatViewModel.js'; +import { CodeBlockModelCollection } from '../../common/widget/codeBlockModelCollection.js'; +import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../common/constants.js'; +import { ILanguageModelToolsService, ToolSet } from '../../common/tools/languageModelToolsService.js'; +import { ComputeAutomaticInstructions } from '../../common/promptSyntax/computeAutomaticInstructions.js'; +import { PromptsConfig } from '../../common/promptSyntax/config/config.js'; +import { IHandOff, PromptHeader, Target } from '../../common/promptSyntax/promptFileParser.js'; +import { IPromptsService } from '../../common/promptSyntax/service/promptsService.js'; +import { handleModeSwitch } from '../actions/chatActions.js'; +import { ChatTreeItem, IChatAcceptInputOptions, IChatAccessibilityService, IChatCodeBlockInfo, IChatFileTreeInfo, IChatListItemRendererOptions, IChatWidget, IChatWidgetService, IChatWidgetViewContext, IChatWidgetViewModelChangeEvent, IChatWidgetViewOptions, isIChatResourceViewContext, isIChatViewViewContext } from '../chat.js'; +import { ChatAccessibilityProvider } from '../accessibility/chatAccessibilityProvider.js'; +import { ChatAttachmentModel } from '../attachments/chatAttachmentModel.js'; import { ChatSuggestNextWidget } from './chatContentParts/chatSuggestNextWidget.js'; -import { ChatInputPart, IChatInputPartOptions, IChatInputStyles } from './chatInputPart.js'; +import { ChatInputPart, IChatInputPartOptions, IChatInputStyles } from './input/chatInputPart.js'; import { ChatListDelegate, ChatListItemRenderer, IChatListItemTemplate, IChatRendererDelegate } from './chatListRenderer.js'; import { ChatEditorOptions } from './chatOptions.js'; -import { ChatViewWelcomePart, IChatSuggestedPrompts, IChatViewWelcomeContent } from './viewsWelcome/chatViewWelcomeController.js'; -import { IAgentSessionsService } from './agentSessions/agentSessionsService.js'; +import { ChatViewWelcomePart, IChatSuggestedPrompts, IChatViewWelcomeContent } from '../viewsWelcome/chatViewWelcomeController.js'; +import { IAgentSessionsService } from '../agentSessions/agentSessionsService.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatWidgetService.ts b/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.ts similarity index 88% rename from src/vs/workbench/contrib/chat/browser/chatWidgetService.ts rename to src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.ts index 23b50acbd50..82725f4a25b 100644 --- a/src/vs/workbench/contrib/chat/browser/chatWidgetService.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.ts @@ -3,22 +3,22 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { raceCancellablePromises, timeout } from '../../../../base/common/async.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { combinedDisposable, Disposable, IDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { isEqual } from '../../../../base/common/resources.js'; -import { URI } from '../../../../base/common/uri.js'; -import { ILayoutService } from '../../../../platform/layout/browser/layoutService.js'; -import { ACTIVE_GROUP, IEditorService, type PreferredGroup } from '../../../../workbench/services/editor/common/editorService.js'; -import { IEditorGroup, IEditorGroupsService, isEditorGroup } from '../../../services/editor/common/editorGroupsService.js'; -import { IViewsService } from '../../../services/views/common/viewsService.js'; -import { IChatService } from '../common/chatService.js'; -import { ChatAgentLocation } from '../common/constants.js'; -import { ChatViewId, ChatViewPaneTarget, IChatWidget, IChatWidgetService, IQuickChatService, isIChatViewViewContext } from './chat.js'; -import { ChatEditor, IChatEditorOptions } from './chatEditor.js'; -import { ChatEditorInput } from './chatEditorInput.js'; -import { ChatViewPane } from './chatViewPane.js'; +import * as dom from '../../../../../base/browser/dom.js'; +import { raceCancellablePromises, timeout } from '../../../../../base/common/async.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { combinedDisposable, Disposable, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { isEqual } from '../../../../../base/common/resources.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { ILayoutService } from '../../../../../platform/layout/browser/layoutService.js'; +import { ACTIVE_GROUP, IEditorService, type PreferredGroup } from '../../../../services/editor/common/editorService.js'; +import { IEditorGroup, IEditorGroupsService, isEditorGroup } from '../../../../services/editor/common/editorGroupsService.js'; +import { IViewsService } from '../../../../services/views/common/viewsService.js'; +import { IChatService } from '../../common/chatService/chatService.js'; +import { ChatAgentLocation } from '../../common/constants.js'; +import { ChatViewId, ChatViewPaneTarget, IChatWidget, IChatWidgetService, IQuickChatService, isIChatViewViewContext } from '../chat.js'; +import { ChatEditor, IChatEditorOptions } from '../widgetHosts/editor/chatEditor.js'; +import { ChatEditorInput } from '../widgetHosts/editor/chatEditorInput.js'; +import { ChatViewPane } from '../widgetHosts/viewPane/chatViewPane.js'; export class ChatWidgetService extends Disposable implements IChatWidgetService { diff --git a/src/vs/workbench/contrib/chat/browser/chatFollowups.ts b/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.ts similarity index 76% rename from src/vs/workbench/contrib/chat/browser/chatFollowups.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.ts index 2c2bd77a0c6..8358ddf2ce6 100644 --- a/src/vs/workbench/contrib/chat/browser/chatFollowups.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/chatFollowups.ts @@ -3,15 +3,15 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { Button, IButtonStyles } from '../../../../base/browser/ui/button/button.js'; -import { MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { localize } from '../../../../nls.js'; -import { IChatAgentService } from '../common/chatAgents.js'; -import { formatChatQuestion } from '../common/chatParserTypes.js'; -import { IChatFollowup } from '../common/chatService.js'; -import { ChatAgentLocation } from '../common/constants.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Button, IButtonStyles } from '../../../../../../base/browser/ui/button/button.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../nls.js'; +import { IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { formatChatQuestion } from '../../../common/requestParser/chatParserTypes.js'; +import { IChatFollowup } from '../../../common/chatService/chatService.js'; +import { ChatAgentLocation } from '../../../common/constants.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatInputPart.ts b/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts similarity index 92% rename from src/vs/workbench/contrib/chat/browser/chatInputPart.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts index ee24501aaa4..a7af6c250b8 100644 --- a/src/vs/workbench/contrib/chat/browser/chatInputPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts @@ -3,117 +3,117 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { addDisposableListener } from '../../../../base/browser/dom.js'; -import { DEFAULT_FONT_FAMILY } from '../../../../base/browser/fonts.js'; -import { IHistoryNavigationWidget } from '../../../../base/browser/history.js'; -import { hasModifierKeys, StandardKeyboardEvent } from '../../../../base/browser/keyboardEvent.js'; -import { ActionViewItem, IActionViewItemOptions } from '../../../../base/browser/ui/actionbar/actionViewItems.js'; -import * as aria from '../../../../base/browser/ui/aria/aria.js'; -import { Button, ButtonWithIcon } from '../../../../base/browser/ui/button/button.js'; -import { createInstantHoverDelegate, getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js'; -import { renderLabelWithIcons } from '../../../../base/browser/ui/iconLabel/iconLabels.js'; -import { IAction } from '../../../../base/common/actions.js'; -import { equals as arraysEqual } from '../../../../base/common/arrays.js'; -import { DeferredPromise, RunOnceScheduler } from '../../../../base/common/async.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { KeyCode } from '../../../../base/common/keyCodes.js'; -import { Lazy } from '../../../../base/common/lazy.js'; -import { Disposable, DisposableStore, IDisposable, MutableDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { ResourceSet } from '../../../../base/common/map.js'; -import { MarshalledId } from '../../../../base/common/marshallingIds.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { autorun, derived, derivedOpts, IObservable, ISettableObservable, observableFromEvent, observableValue } from '../../../../base/common/observable.js'; -import { isMacintosh } from '../../../../base/common/platform.js'; -import { isEqual } from '../../../../base/common/resources.js'; -import { ScrollbarVisibility } from '../../../../base/common/scrollable.js'; -import { assertType } from '../../../../base/common/types.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IEditorConstructionOptions } from '../../../../editor/browser/config/editorConfiguration.js'; -import { EditorExtensionsRegistry } from '../../../../editor/browser/editorExtensions.js'; -import { CodeEditorWidget } from '../../../../editor/browser/widget/codeEditor/codeEditorWidget.js'; -import { EditorOptions, IEditorOptions } from '../../../../editor/common/config/editorOptions.js'; -import { IDimension } from '../../../../editor/common/core/2d/dimension.js'; -import { IPosition } from '../../../../editor/common/core/position.js'; -import { IRange, Range } from '../../../../editor/common/core/range.js'; -import { isLocation } from '../../../../editor/common/languages.js'; -import { ITextModel } from '../../../../editor/common/model.js'; -import { IModelService } from '../../../../editor/common/services/model.js'; -import { ITextModelService } from '../../../../editor/common/services/resolverService.js'; -import { CopyPasteController } from '../../../../editor/contrib/dropOrPasteInto/browser/copyPasteController.js'; -import { DropIntoEditorController } from '../../../../editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js'; -import { ContentHoverController } from '../../../../editor/contrib/hover/browser/contentHoverController.js'; -import { GlyphHoverController } from '../../../../editor/contrib/hover/browser/glyphHoverController.js'; -import { LinkDetector } from '../../../../editor/contrib/links/browser/links.js'; -import { SuggestController } from '../../../../editor/contrib/suggest/browser/suggestController.js'; -import { localize } from '../../../../nls.js'; -import { IAccessibilityService } from '../../../../platform/accessibility/common/accessibility.js'; -import { MenuWorkbenchButtonBar } from '../../../../platform/actions/browser/buttonbar.js'; -import { HiddenItemStrategy, MenuWorkbenchToolBar } from '../../../../platform/actions/browser/toolbar.js'; -import { MenuId, MenuItemAction } from '../../../../platform/actions/common/actions.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IFileService } from '../../../../platform/files/common/files.js'; -import { registerAndCreateHistoryNavigationContext } from '../../../../platform/history/browser/contextScopedHistoryWidget.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js'; -import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js'; -import { ILabelService } from '../../../../platform/label/common/label.js'; -import { WorkbenchList } from '../../../../platform/list/browser/listService.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { ObservableMemento, observableMemento } from '../../../../platform/observable/common/observableMemento.js'; -import { bindContextKey } from '../../../../platform/observable/common/platformObservableUtils.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { ISharedWebContentExtractorService } from '../../../../platform/webContentExtractor/common/webContentExtractor.js'; -import { ResourceLabels } from '../../../browser/labels.js'; -import { IWorkbenchAssignmentService } from '../../../services/assignment/common/assignmentService.js'; -import { IChatEntitlementService } from '../../../services/chat/common/chatEntitlementService.js'; -import { ACTIVE_GROUP, IEditorService, SIDE_GROUP } from '../../../services/editor/common/editorService.js'; -import { AccessibilityVerbositySettingId } from '../../accessibility/browser/accessibilityConfiguration.js'; -import { AccessibilityCommandId } from '../../accessibility/common/accessibilityCommands.js'; -import { getSimpleCodeEditorWidgetOptions, getSimpleEditorOptions, setupSimpleEditorSelectionStyling } from '../../codeEditor/browser/simpleEditorOptions.js'; -import { InlineChatConfigKeys } from '../../inlineChat/common/inlineChat.js'; -import { IChatViewTitleActionContext } from '../common/chatActions.js'; -import { IChatAgentService } from '../common/chatAgents.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IChatEditingSession, IModifiedFileEntry, ModifiedFileEntryState } from '../common/chatEditingService.js'; -import { IChatModelInputState, IChatRequestModeInfo, IInputModel } from '../common/chatModel.js'; -import { ChatMode, IChatMode, IChatModeService } from '../common/chatModes.js'; -import { IChatFollowup, IChatService } from '../common/chatService.js'; -import { IChatSessionFileChange, IChatSessionProviderOptionItem, IChatSessionsService, localChatSessionType } from '../common/chatSessionsService.js'; -import { getChatSessionType } from '../common/chatUri.js'; -import { ChatRequestVariableSet, IChatRequestVariableEntry, isElementVariableEntry, isImageVariableEntry, isNotebookOutputVariableEntry, isPasteVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, isSCMHistoryItemChangeRangeVariableEntry, isSCMHistoryItemChangeVariableEntry, isSCMHistoryItemVariableEntry, isStringVariableEntry } from '../common/chatVariableEntries.js'; -import { IChatResponseViewModel } from '../common/chatViewModel.js'; -import { ChatHistoryNavigator } from '../common/chatWidgetHistoryService.js'; -import { ChatAgentLocation, ChatConfiguration, ChatModeKind, validateChatMode } from '../common/constants.js'; -import { ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier, ILanguageModelsService } from '../common/languageModels.js'; -import { ILanguageModelToolsService } from '../common/languageModelToolsService.js'; -import { ActionLocation, ChatContinueInSessionActionItem, ContinueChatInSessionAction } from './actions/chatContinueInAction.js'; -import { ChatOpenModelPickerActionId, ChatSessionPrimaryPickerAction, ChatSubmitAction, IChatExecuteActionContext, OpenModePickerAction } from './actions/chatExecuteActions.js'; -import { IAgentSessionsService } from './agentSessions/agentSessionsService.js'; -import { ImplicitContextAttachmentWidget } from './attachments/implicitContextAttachment.js'; -import { IChatWidget } from './chat.js'; -import { ChatAttachmentModel } from './chatAttachmentModel.js'; -import { DefaultChatAttachmentWidget, ElementChatAttachmentWidget, FileAttachmentWidget, ImageAttachmentWidget, NotebookCellOutputChatAttachmentWidget, PasteAttachmentWidget, PromptFileAttachmentWidget, PromptTextAttachmentWidget, SCMHistoryItemAttachmentWidget, SCMHistoryItemChangeAttachmentWidget, SCMHistoryItemChangeRangeAttachmentWidget, TerminalCommandAttachmentWidget, ToolSetOrToolItemAttachmentWidget } from './chatAttachmentWidgets.js'; -import { IDisposableReference } from './chatContentParts/chatCollections.js'; -import { CollapsibleListPool, IChatCollapsibleListItem } from './chatContentParts/chatReferencesContentPart.js'; -import { ChatTodoListWidget } from './chatContentParts/chatTodoListWidget.js'; -import { IChatContextService } from './chatContextService.js'; -import { ChatDragAndDrop } from './chatDragAndDrop.js'; -import { ChatEditingShowChangesAction, ViewAllSessionChangesAction, ViewPreviousEditsAction } from './chatEditing/chatEditingActions.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { addDisposableListener } from '../../../../../../base/browser/dom.js'; +import { DEFAULT_FONT_FAMILY } from '../../../../../../base/browser/fonts.js'; +import { IHistoryNavigationWidget } from '../../../../../../base/browser/history.js'; +import { hasModifierKeys, StandardKeyboardEvent } from '../../../../../../base/browser/keyboardEvent.js'; +import { ActionViewItem, IActionViewItemOptions } from '../../../../../../base/browser/ui/actionbar/actionViewItems.js'; +import * as aria from '../../../../../../base/browser/ui/aria/aria.js'; +import { Button, ButtonWithIcon } from '../../../../../../base/browser/ui/button/button.js'; +import { createInstantHoverDelegate, getDefaultHoverDelegate } from '../../../../../../base/browser/ui/hover/hoverDelegateFactory.js'; +import { renderLabelWithIcons } from '../../../../../../base/browser/ui/iconLabel/iconLabels.js'; +import { IAction } from '../../../../../../base/common/actions.js'; +import { equals as arraysEqual } from '../../../../../../base/common/arrays.js'; +import { DeferredPromise, RunOnceScheduler } from '../../../../../../base/common/async.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Iterable } from '../../../../../../base/common/iterator.js'; +import { KeyCode } from '../../../../../../base/common/keyCodes.js'; +import { Lazy } from '../../../../../../base/common/lazy.js'; +import { Disposable, DisposableStore, IDisposable, MutableDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ResourceSet } from '../../../../../../base/common/map.js'; +import { MarshalledId } from '../../../../../../base/common/marshallingIds.js'; +import { Schemas } from '../../../../../../base/common/network.js'; +import { autorun, derived, derivedOpts, IObservable, ISettableObservable, observableFromEvent, observableValue } from '../../../../../../base/common/observable.js'; +import { isMacintosh } from '../../../../../../base/common/platform.js'; +import { isEqual } from '../../../../../../base/common/resources.js'; +import { ScrollbarVisibility } from '../../../../../../base/common/scrollable.js'; +import { assertType } from '../../../../../../base/common/types.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { IEditorConstructionOptions } from '../../../../../../editor/browser/config/editorConfiguration.js'; +import { EditorExtensionsRegistry } from '../../../../../../editor/browser/editorExtensions.js'; +import { CodeEditorWidget } from '../../../../../../editor/browser/widget/codeEditor/codeEditorWidget.js'; +import { EditorOptions, IEditorOptions } from '../../../../../../editor/common/config/editorOptions.js'; +import { IDimension } from '../../../../../../editor/common/core/2d/dimension.js'; +import { IPosition } from '../../../../../../editor/common/core/position.js'; +import { IRange, Range } from '../../../../../../editor/common/core/range.js'; +import { isLocation } from '../../../../../../editor/common/languages.js'; +import { ITextModel } from '../../../../../../editor/common/model.js'; +import { IModelService } from '../../../../../../editor/common/services/model.js'; +import { ITextModelService } from '../../../../../../editor/common/services/resolverService.js'; +import { CopyPasteController } from '../../../../../../editor/contrib/dropOrPasteInto/browser/copyPasteController.js'; +import { DropIntoEditorController } from '../../../../../../editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js'; +import { ContentHoverController } from '../../../../../../editor/contrib/hover/browser/contentHoverController.js'; +import { GlyphHoverController } from '../../../../../../editor/contrib/hover/browser/glyphHoverController.js'; +import { LinkDetector } from '../../../../../../editor/contrib/links/browser/links.js'; +import { SuggestController } from '../../../../../../editor/contrib/suggest/browser/suggestController.js'; +import { localize } from '../../../../../../nls.js'; +import { IAccessibilityService } from '../../../../../../platform/accessibility/common/accessibility.js'; +import { MenuWorkbenchButtonBar } from '../../../../../../platform/actions/browser/buttonbar.js'; +import { HiddenItemStrategy, MenuWorkbenchToolBar } from '../../../../../../platform/actions/browser/toolbar.js'; +import { MenuId, MenuItemAction } from '../../../../../../platform/actions/common/actions.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IContextKey, IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IFileService } from '../../../../../../platform/files/common/files.js'; +import { registerAndCreateHistoryNavigationContext } from '../../../../../../platform/history/browser/contextScopedHistoryWidget.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; +import { ILabelService } from '../../../../../../platform/label/common/label.js'; +import { WorkbenchList } from '../../../../../../platform/list/browser/listService.js'; +import { ILogService } from '../../../../../../platform/log/common/log.js'; +import { ObservableMemento, observableMemento } from '../../../../../../platform/observable/common/observableMemento.js'; +import { bindContextKey } from '../../../../../../platform/observable/common/platformObservableUtils.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../../platform/storage/common/storage.js'; +import { IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { ISharedWebContentExtractorService } from '../../../../../../platform/webContentExtractor/common/webContentExtractor.js'; +import { ResourceLabels } from '../../../../../browser/labels.js'; +import { IWorkbenchAssignmentService } from '../../../../../services/assignment/common/assignmentService.js'; +import { IChatEntitlementService } from '../../../../../services/chat/common/chatEntitlementService.js'; +import { ACTIVE_GROUP, IEditorService, SIDE_GROUP } from '../../../../../services/editor/common/editorService.js'; +import { AccessibilityVerbositySettingId } from '../../../../accessibility/browser/accessibilityConfiguration.js'; +import { AccessibilityCommandId } from '../../../../accessibility/common/accessibilityCommands.js'; +import { getSimpleCodeEditorWidgetOptions, getSimpleEditorOptions, setupSimpleEditorSelectionStyling } from '../../../../codeEditor/browser/simpleEditorOptions.js'; +import { InlineChatConfigKeys } from '../../../../inlineChat/common/inlineChat.js'; +import { IChatViewTitleActionContext } from '../../../common/actions/chatActions.js'; +import { IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../../common/actions/chatContextKeys.js'; +import { IChatEditingSession, IModifiedFileEntry, ModifiedFileEntryState } from '../../../common/editing/chatEditingService.js'; +import { IChatModelInputState, IChatRequestModeInfo, IInputModel } from '../../../common/model/chatModel.js'; +import { ChatMode, IChatMode, IChatModeService } from '../../../common/chatModes.js'; +import { IChatFollowup, IChatService } from '../../../common/chatService/chatService.js'; +import { IChatSessionFileChange, IChatSessionProviderOptionItem, IChatSessionsService, localChatSessionType } from '../../../common/chatSessionsService.js'; +import { getChatSessionType } from '../../../common/model/chatUri.js'; +import { ChatRequestVariableSet, IChatRequestVariableEntry, isElementVariableEntry, isImageVariableEntry, isNotebookOutputVariableEntry, isPasteVariableEntry, isPromptFileVariableEntry, isPromptTextVariableEntry, isSCMHistoryItemChangeRangeVariableEntry, isSCMHistoryItemChangeVariableEntry, isSCMHistoryItemVariableEntry, isStringVariableEntry } from '../../../common/attachments/chatVariableEntries.js'; +import { IChatResponseViewModel } from '../../../common/model/chatViewModel.js'; +import { ChatHistoryNavigator } from '../../../common/widget/chatWidgetHistoryService.js'; +import { ChatAgentLocation, ChatConfiguration, ChatModeKind, validateChatMode } from '../../../common/constants.js'; +import { ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier, ILanguageModelsService } from '../../../common/languageModels.js'; +import { ILanguageModelToolsService } from '../../../common/tools/languageModelToolsService.js'; +import { ActionLocation, ChatContinueInSessionActionItem, ContinueChatInSessionAction } from '../../actions/chatContinueInAction.js'; +import { ChatOpenModelPickerActionId, ChatSessionPrimaryPickerAction, ChatSubmitAction, IChatExecuteActionContext, OpenModePickerAction } from '../../actions/chatExecuteActions.js'; +import { IAgentSessionsService } from '../../agentSessions/agentSessionsService.js'; +import { ImplicitContextAttachmentWidget } from '../../attachments/implicitContextAttachment.js'; +import { IChatWidget } from '../../chat.js'; +import { ChatAttachmentModel } from '../../attachments/chatAttachmentModel.js'; +import { DefaultChatAttachmentWidget, ElementChatAttachmentWidget, FileAttachmentWidget, ImageAttachmentWidget, NotebookCellOutputChatAttachmentWidget, PasteAttachmentWidget, PromptFileAttachmentWidget, PromptTextAttachmentWidget, SCMHistoryItemAttachmentWidget, SCMHistoryItemChangeAttachmentWidget, SCMHistoryItemChangeRangeAttachmentWidget, TerminalCommandAttachmentWidget, ToolSetOrToolItemAttachmentWidget } from '../../attachments/chatAttachmentWidgets.js'; +import { IDisposableReference } from '../chatContentParts/chatCollections.js'; +import { CollapsibleListPool, IChatCollapsibleListItem } from '../chatContentParts/chatReferencesContentPart.js'; +import { ChatTodoListWidget } from '../chatContentParts/chatTodoListWidget.js'; +import { IChatContextService } from '../../contextContrib/chatContextService.js'; +import { ChatDragAndDrop } from '../chatDragAndDrop.js'; +import { ChatEditingShowChangesAction, ViewAllSessionChangesAction, ViewPreviousEditsAction } from '../../chatEditing/chatEditingActions.js'; import { ChatFollowups } from './chatFollowups.js'; import { ChatInputPartWidgetController } from './chatInputPartWidgets.js'; import { ChatSelectedTools } from './chatSelectedTools.js'; -import { ChatSessionPickerActionItem, IChatSessionPickerDelegate } from './chatSessions/chatSessionPickerActionItem.js'; -import { ChatImplicitContext } from './contrib/chatImplicitContext.js'; -import { ChatRelatedFiles } from './contrib/chatInputRelatedFilesContrib.js'; -import { resizeImage } from './chatImageUtils.js'; -import { IModelPickerDelegate, ModelPickerActionItem } from './modelPicker/modelPickerActionItem.js'; -import { IModePickerDelegate, ModePickerActionItem } from './modelPicker/modePickerActionItem.js'; +import { ChatSessionPickerActionItem, IChatSessionPickerDelegate } from '../../chatSessions/chatSessionPickerActionItem.js'; +import { ChatImplicitContext } from '../../attachments/chatImplicitContext.js'; +import { ChatRelatedFiles } from '../../attachments/chatInputRelatedFilesContrib.js'; +import { resizeImage } from '../../chatImageUtils.js'; +import { IModelPickerDelegate, ModelPickerActionItem } from './modelPickerActionItem.js'; +import { IModePickerDelegate, ModePickerActionItem } from './modePickerActionItem.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatInputPartWidgets.ts b/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPartWidgets.ts similarity index 95% rename from src/vs/workbench/contrib/chat/browser/chatInputPartWidgets.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/chatInputPartWidgets.ts index 21c61f667b7..20193224eff 100644 --- a/src/vs/workbench/contrib/chat/browser/chatInputPartWidgets.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPartWidgets.ts @@ -3,10 +3,10 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Emitter, Event } from '../../../../base/common/event.js'; -import { Disposable, DisposableStore, IDisposable } from '../../../../base/common/lifecycle.js'; -import { ContextKeyExpression, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { BrandedService, IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Disposable, DisposableStore, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ContextKeyExpression, IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { BrandedService, IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; /** * A widget that can be rendered on top of the chat input part. diff --git a/src/vs/workbench/contrib/chat/browser/chatSelectedTools.ts b/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.ts similarity index 87% rename from src/vs/workbench/contrib/chat/browser/chatSelectedTools.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.ts index d2a16b4b830..21a4c37ece4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatSelectedTools.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/chatSelectedTools.ts @@ -3,20 +3,20 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { derived, IObservable, ObservableMap } from '../../../../base/common/observable.js'; -import { isObject } from '../../../../base/common/types.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ObservableMemento, observableMemento } from '../../../../platform/observable/common/observableMemento.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { UserSelectedTools } from '../common/chatAgents.js'; -import { IChatMode } from '../common/chatModes.js'; -import { ChatModeKind } from '../common/constants.js'; -import { ILanguageModelToolsService, IToolAndToolSetEnablementMap, IToolData, ToolSet } from '../common/languageModelToolsService.js'; -import { PromptsStorage } from '../common/promptSyntax/service/promptsService.js'; -import { PromptFileRewriter } from './promptSyntax/promptFileRewriter.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { derived, IObservable, ObservableMap } from '../../../../../../base/common/observable.js'; +import { isObject } from '../../../../../../base/common/types.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ObservableMemento, observableMemento } from '../../../../../../platform/observable/common/observableMemento.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../../platform/storage/common/storage.js'; +import { UserSelectedTools } from '../../../common/participants/chatAgents.js'; +import { IChatMode } from '../../../common/chatModes.js'; +import { ChatModeKind } from '../../../common/constants.js'; +import { ILanguageModelToolsService, IToolAndToolSetEnablementMap, IToolData, ToolSet } from '../../../common/tools/languageModelToolsService.js'; +import { PromptsStorage } from '../../../common/promptSyntax/service/promptsService.js'; +import { PromptFileRewriter } from '../../promptSyntax/promptFileRewriter.js'; type ToolEnablementStates = { diff --git a/src/vs/workbench/contrib/chat/browser/chatStatusWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.ts similarity index 81% rename from src/vs/workbench/contrib/chat/browser/chatStatusWidget.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.ts index c4d622e6280..cf67ac6e113 100644 --- a/src/vs/workbench/contrib/chat/browser/chatStatusWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.ts @@ -4,19 +4,19 @@ *--------------------------------------------------------------------------------------------*/ import './media/chatStatusWidget.css'; -import * as dom from '../../../../base/browser/dom.js'; -import { Button } from '../../../../base/browser/ui/button/button.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { localize } from '../../../../nls.js'; -import { ICommandService } from '../../../../platform/commands/common/commands.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { ContextKeyExpr } from '../../../../platform/contextkey/common/contextkey.js'; -import { defaultButtonStyles } from '../../../../platform/theme/browser/defaultStyles.js'; -import { ChatEntitlement, ChatEntitlementContextKeys, IChatEntitlementService } from '../../../services/chat/common/chatEntitlementService.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { Button } from '../../../../../../base/browser/ui/button/button.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { localize } from '../../../../../../nls.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { ContextKeyExpr } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { defaultButtonStyles } from '../../../../../../platform/theme/browser/defaultStyles.js'; +import { ChatEntitlement, ChatEntitlementContextKeys, IChatEntitlementService } from '../../../../../services/chat/common/chatEntitlementService.js'; import { ChatInputPartWidgetsRegistry, IChatInputPartWidget } from './chatInputPartWidgets.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { CHAT_SETUP_ACTION_ID } from './actions/chatActions.js'; +import { ChatContextKeys } from '../../../common/actions/chatContextKeys.js'; +import { CHAT_SETUP_ACTION_ID } from '../../actions/chatActions.js'; const $ = dom.$; diff --git a/src/vs/workbench/contrib/chat/browser/chatEdinputInputContentProvider.ts b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatEditorInputContentProvider.ts similarity index 68% rename from src/vs/workbench/contrib/chat/browser/chatEdinputInputContentProvider.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/editor/chatEditorInputContentProvider.ts index d114f65a86f..391cc889e34 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEdinputInputContentProvider.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatEditorInputContentProvider.ts @@ -3,13 +3,13 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { URI } from '../../../../base/common/uri.js'; -import { ILanguageService } from '../../../../editor/common/languages/language.js'; -import { ITextModel } from '../../../../editor/common/model.js'; -import { IModelService } from '../../../../editor/common/services/model.js'; -import { ITextModelContentProvider, ITextModelService } from '../../../../editor/common/services/resolverService.js'; +import { Disposable } from '../../../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../../../base/common/network.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ILanguageService } from '../../../../../../../editor/common/languages/language.js'; +import { ITextModel } from '../../../../../../../editor/common/model.js'; +import { IModelService } from '../../../../../../../editor/common/services/model.js'; +import { ITextModelContentProvider, ITextModelService } from '../../../../../../../editor/common/services/resolverService.js'; export class ChatInputBoxContentProvider extends Disposable implements ITextModelContentProvider { diff --git a/src/vs/workbench/contrib/chat/browser/contrib/chatInputCompletions.ts b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.ts similarity index 90% rename from src/vs/workbench/contrib/chat/browser/contrib/chatInputCompletions.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.ts index 95960c5c16d..8efd46da9e1 100644 --- a/src/vs/workbench/contrib/chat/browser/contrib/chatInputCompletions.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.ts @@ -3,63 +3,63 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { coalesce } from '../../../../../base/common/arrays.js'; -import { raceTimeout } from '../../../../../base/common/async.js'; -import { decodeBase64 } from '../../../../../base/common/buffer.js'; -import { CancellationToken, CancellationTokenSource } from '../../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { StopWatch } from '../../../../../base/common/stopwatch.js'; -import { isPatternInWord } from '../../../../../base/common/filters.js'; -import { Disposable, DisposableStore, toDisposable } from '../../../../../base/common/lifecycle.js'; -import { ResourceSet } from '../../../../../base/common/map.js'; -import { Schemas } from '../../../../../base/common/network.js'; -import { basename } from '../../../../../base/common/resources.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { assertType } from '../../../../../base/common/types.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { generateUuid } from '../../../../../base/common/uuid.js'; -import { ICodeEditor, getCodeEditor, isCodeEditor } from '../../../../../editor/browser/editorBrowser.js'; -import { ICodeEditorService } from '../../../../../editor/browser/services/codeEditorService.js'; -import { Position } from '../../../../../editor/common/core/position.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { IWordAtPosition, getWordAtText } from '../../../../../editor/common/core/wordHelper.js'; -import { CompletionContext, CompletionItem, CompletionItemKind, CompletionItemProvider, CompletionList, DocumentSymbol, Location, ProviderResult, SymbolKind, SymbolKinds } from '../../../../../editor/common/languages.js'; -import { ITextModel } from '../../../../../editor/common/model.js'; -import { ILanguageFeaturesService } from '../../../../../editor/common/services/languageFeatures.js'; -import { IOutlineModelService } from '../../../../../editor/contrib/documentSymbols/browser/outlineModel.js'; -import { localize } from '../../../../../nls.js'; -import { Action2, registerAction2 } from '../../../../../platform/actions/common/actions.js'; -import { CommandsRegistry } from '../../../../../platform/commands/common/commands.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { FileKind, IFileService } from '../../../../../platform/files/common/files.js'; -import { IInstantiationService, ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ILabelService } from '../../../../../platform/label/common/label.js'; -import { INotificationService } from '../../../../../platform/notification/common/notification.js'; -import { Registry } from '../../../../../platform/registry/common/platform.js'; -import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; -import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from '../../../../common/contributions.js'; -import { EditorsOrder } from '../../../../common/editor.js'; -import { IEditorService } from '../../../../services/editor/common/editorService.js'; -import { IHistoryService } from '../../../../services/history/common/history.js'; -import { LifecyclePhase } from '../../../../services/lifecycle/common/lifecycle.js'; -import { ISearchService } from '../../../../services/search/common/search.js'; -import { McpPromptArgumentPick } from '../../../mcp/browser/mcpPromptArgumentPick.js'; -import { IMcpPrompt, IMcpPromptMessage, IMcpServer, IMcpService, McpResourceURI } from '../../../mcp/common/mcpTypes.js'; -import { searchFilesAndFolders } from '../../../search/browser/searchChatContext.js'; -import { IChatAgentData, IChatAgentNameService, IChatAgentService, getFullyQualifiedId } from '../../common/chatAgents.js'; -import { IChatEditingService } from '../../common/chatEditingService.js'; -import { getAttachableImageExtension } from '../../common/chatModel.js'; -import { ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, ChatRequestToolSetPart, chatAgentLeader, chatSubcommandLeader, chatVariableLeader } from '../../common/chatParserTypes.js'; -import { IChatSlashCommandService } from '../../common/chatSlashCommands.js'; -import { IChatRequestVariableEntry } from '../../common/chatVariableEntries.js'; -import { IDynamicVariable } from '../../common/chatVariables.js'; -import { ChatAgentLocation, ChatModeKind, isSupportedChatFileScheme } from '../../common/constants.js'; -import { ToolSet } from '../../common/languageModelToolsService.js'; -import { IPromptsService } from '../../common/promptSyntax/service/promptsService.js'; -import { ChatSubmitAction, IChatExecuteActionContext } from '../actions/chatExecuteActions.js'; -import { IChatWidget, IChatWidgetService } from '../chat.js'; -import { resizeImage } from '../chatImageUtils.js'; -import { ChatDynamicVariableModel } from './chatDynamicVariables.js'; +import { coalesce } from '../../../../../../../base/common/arrays.js'; +import { raceTimeout } from '../../../../../../../base/common/async.js'; +import { decodeBase64 } from '../../../../../../../base/common/buffer.js'; +import { CancellationToken, CancellationTokenSource } from '../../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../../base/common/codicons.js'; +import { StopWatch } from '../../../../../../../base/common/stopwatch.js'; +import { isPatternInWord } from '../../../../../../../base/common/filters.js'; +import { Disposable, DisposableStore, toDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { ResourceSet } from '../../../../../../../base/common/map.js'; +import { Schemas } from '../../../../../../../base/common/network.js'; +import { basename } from '../../../../../../../base/common/resources.js'; +import { ThemeIcon } from '../../../../../../../base/common/themables.js'; +import { assertType } from '../../../../../../../base/common/types.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../../../base/common/uuid.js'; +import { ICodeEditor, getCodeEditor, isCodeEditor } from '../../../../../../../editor/browser/editorBrowser.js'; +import { ICodeEditorService } from '../../../../../../../editor/browser/services/codeEditorService.js'; +import { Position } from '../../../../../../../editor/common/core/position.js'; +import { Range } from '../../../../../../../editor/common/core/range.js'; +import { IWordAtPosition, getWordAtText } from '../../../../../../../editor/common/core/wordHelper.js'; +import { CompletionContext, CompletionItem, CompletionItemKind, CompletionItemProvider, CompletionList, DocumentSymbol, Location, ProviderResult, SymbolKind, SymbolKinds } from '../../../../../../../editor/common/languages.js'; +import { ITextModel } from '../../../../../../../editor/common/model.js'; +import { ILanguageFeaturesService } from '../../../../../../../editor/common/services/languageFeatures.js'; +import { IOutlineModelService } from '../../../../../../../editor/contrib/documentSymbols/browser/outlineModel.js'; +import { localize } from '../../../../../../../nls.js'; +import { Action2, registerAction2 } from '../../../../../../../platform/actions/common/actions.js'; +import { CommandsRegistry } from '../../../../../../../platform/commands/common/commands.js'; +import { IConfigurationService } from '../../../../../../../platform/configuration/common/configuration.js'; +import { FileKind, IFileService } from '../../../../../../../platform/files/common/files.js'; +import { IInstantiationService, ServicesAccessor } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { ILabelService } from '../../../../../../../platform/label/common/label.js'; +import { INotificationService } from '../../../../../../../platform/notification/common/notification.js'; +import { Registry } from '../../../../../../../platform/registry/common/platform.js'; +import { IWorkspaceContextService } from '../../../../../../../platform/workspace/common/workspace.js'; +import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from '../../../../../../common/contributions.js'; +import { EditorsOrder } from '../../../../../../common/editor.js'; +import { IEditorService } from '../../../../../../services/editor/common/editorService.js'; +import { IHistoryService } from '../../../../../../services/history/common/history.js'; +import { LifecyclePhase } from '../../../../../../services/lifecycle/common/lifecycle.js'; +import { ISearchService } from '../../../../../../services/search/common/search.js'; +import { McpPromptArgumentPick } from '../../../../../mcp/browser/mcpPromptArgumentPick.js'; +import { IMcpPrompt, IMcpPromptMessage, IMcpServer, IMcpService, McpResourceURI } from '../../../../../mcp/common/mcpTypes.js'; +import { searchFilesAndFolders } from '../../../../../search/browser/searchChatContext.js'; +import { IChatAgentData, IChatAgentNameService, IChatAgentService, getFullyQualifiedId } from '../../../../common/participants/chatAgents.js'; +import { IChatEditingService } from '../../../../common/editing/chatEditingService.js'; +import { getAttachableImageExtension } from '../../../../common/model/chatModel.js'; +import { ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, ChatRequestToolSetPart, chatAgentLeader, chatSubcommandLeader, chatVariableLeader } from '../../../../common/requestParser/chatParserTypes.js'; +import { IChatSlashCommandService } from '../../../../common/participants/chatSlashCommands.js'; +import { IChatRequestVariableEntry } from '../../../../common/attachments/chatVariableEntries.js'; +import { IDynamicVariable } from '../../../../common/attachments/chatVariables.js'; +import { ChatAgentLocation, ChatModeKind, isSupportedChatFileScheme } from '../../../../common/constants.js'; +import { ToolSet } from '../../../../common/tools/languageModelToolsService.js'; +import { IPromptsService } from '../../../../common/promptSyntax/service/promptsService.js'; +import { ChatSubmitAction, IChatExecuteActionContext } from '../../../actions/chatExecuteActions.js'; +import { IChatWidget, IChatWidgetService } from '../../../chat.js'; +import { resizeImage } from '../../../chatImageUtils.js'; +import { ChatDynamicVariableModel } from '../../../attachments/chatDynamicVariables.js'; class SlashCommandCompletions extends Disposable { constructor( diff --git a/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.ts b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.ts similarity index 89% rename from src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.ts index ebe6188fc4b..477895be331 100644 --- a/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.ts @@ -3,31 +3,31 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { Disposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; -import { autorun } from '../../../../../base/common/observable.js'; -import { themeColorFromId } from '../../../../../base/common/themables.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { ICodeEditorService } from '../../../../../editor/browser/services/codeEditorService.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { IDecorationOptions } from '../../../../../editor/common/editorCommon.js'; -import { TrackedRangeStickiness } from '../../../../../editor/common/model.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ILabelService } from '../../../../../platform/label/common/label.js'; -import { inputPlaceholderForeground } from '../../../../../platform/theme/common/colorRegistry.js'; -import { IThemeService } from '../../../../../platform/theme/common/themeService.js'; -import { IChatAgentCommand, IChatAgentData, IChatAgentService } from '../../common/chatAgents.js'; -import { chatSlashCommandBackground, chatSlashCommandForeground } from '../../common/chatColors.js'; -import { ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestDynamicVariablePart, ChatRequestSlashCommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, ChatRequestToolSetPart, IParsedChatRequestPart, chatAgentLeader, chatSubcommandLeader } from '../../common/chatParserTypes.js'; -import { ChatRequestParser } from '../../common/chatRequestParser.js'; -import { IPromptsService } from '../../common/promptSyntax/service/promptsService.js'; -import { IChatWidget } from '../chat.js'; -import { ChatWidget } from '../chatWidget.js'; -import { dynamicVariableDecorationType } from './chatDynamicVariables.js'; -import { NativeEditContextRegistry } from '../../../../../editor/browser/controller/editContext/native/nativeEditContextRegistry.js'; -import { TextAreaEditContextRegistry } from '../../../../../editor/browser/controller/editContext/textArea/textAreaEditContextRegistry.js'; -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { ThrottledDelayer } from '../../../../../base/common/async.js'; +import { MarkdownString } from '../../../../../../../base/common/htmlContent.js'; +import { Disposable, MutableDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { autorun } from '../../../../../../../base/common/observable.js'; +import { themeColorFromId } from '../../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ICodeEditorService } from '../../../../../../../editor/browser/services/codeEditorService.js'; +import { Range } from '../../../../../../../editor/common/core/range.js'; +import { IDecorationOptions } from '../../../../../../../editor/common/editorCommon.js'; +import { TrackedRangeStickiness } from '../../../../../../../editor/common/model.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { ILabelService } from '../../../../../../../platform/label/common/label.js'; +import { inputPlaceholderForeground } from '../../../../../../../platform/theme/common/colorRegistry.js'; +import { IThemeService } from '../../../../../../../platform/theme/common/themeService.js'; +import { IChatAgentCommand, IChatAgentData, IChatAgentService } from '../../../../common/participants/chatAgents.js'; +import { chatSlashCommandBackground, chatSlashCommandForeground } from '../../../../common/widget/chatColors.js'; +import { ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestDynamicVariablePart, ChatRequestSlashCommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, ChatRequestToolSetPart, IParsedChatRequestPart, chatAgentLeader, chatSubcommandLeader } from '../../../../common/requestParser/chatParserTypes.js'; +import { ChatRequestParser } from '../../../../common/requestParser/chatRequestParser.js'; +import { IPromptsService } from '../../../../common/promptSyntax/service/promptsService.js'; +import { IChatWidget } from '../../../chat.js'; +import { ChatWidget } from '../../chatWidget.js'; +import { dynamicVariableDecorationType } from '../../../attachments/chatDynamicVariables.js'; +import { NativeEditContextRegistry } from '../../../../../../../editor/browser/controller/editContext/native/nativeEditContextRegistry.js'; +import { TextAreaEditContextRegistry } from '../../../../../../../editor/browser/controller/editContext/textArea/textAreaEditContextRegistry.js'; +import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; +import { ThrottledDelayer } from '../../../../../../../base/common/async.js'; const decorationDescription = 'chat'; const placeholderDecorationType = 'chat-session-detail'; diff --git a/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.ts b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.ts similarity index 77% rename from src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.ts index 51808206d1a..21c36b41078 100644 --- a/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.ts @@ -3,19 +3,19 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { ICodeEditor } from '../../../../../editor/browser/editorBrowser.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { IModelDecoration } from '../../../../../editor/common/model.js'; -import { HoverAnchor, HoverAnchorType, HoverParticipantRegistry, IEditorHoverParticipant, IEditorHoverRenderContext, IHoverPart, IRenderedHoverPart, IRenderedHoverParts, RenderedHoverParts } from '../../../../../editor/contrib/hover/browser/hoverTypes.js'; -import { ICommandService } from '../../../../../platform/commands/common/commands.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IChatWidgetService } from '../chat.js'; -import { ChatAgentHover, getChatAgentHoverOptions } from '../chatAgentHover.js'; +import { DisposableStore } from '../../../../../../../base/common/lifecycle.js'; +import { ICodeEditor } from '../../../../../../../editor/browser/editorBrowser.js'; +import { Range } from '../../../../../../../editor/common/core/range.js'; +import { IModelDecoration } from '../../../../../../../editor/common/model.js'; +import { HoverAnchor, HoverAnchorType, HoverParticipantRegistry, IEditorHoverParticipant, IEditorHoverRenderContext, IHoverPart, IRenderedHoverPart, IRenderedHoverParts, RenderedHoverParts } from '../../../../../../../editor/contrib/hover/browser/hoverTypes.js'; +import { ICommandService } from '../../../../../../../platform/commands/common/commands.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatWidgetService } from '../../../chat.js'; +import { ChatAgentHover, getChatAgentHoverOptions } from '../../chatAgentHover.js'; import { ChatEditorHoverWrapper } from './editorHoverWrapper.js'; -import { IChatAgentData } from '../../common/chatAgents.js'; -import { extractAgentAndCommand } from '../../common/chatParserTypes.js'; -import * as nls from '../../../../../nls.js'; +import { IChatAgentData } from '../../../../common/participants/chatAgents.js'; +import { extractAgentAndCommand } from '../../../../common/requestParser/chatParserTypes.js'; +import * as nls from '../../../../../../../nls.js'; export class ChatAgentHoverParticipant implements IEditorHoverParticipant { diff --git a/src/vs/workbench/contrib/chat/browser/chatPasteProviders.ts b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.ts similarity index 88% rename from src/vs/workbench/contrib/chat/browser/chatPasteProviders.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.ts index 13b0819dafe..65089b20200 100644 --- a/src/vs/workbench/contrib/chat/browser/chatPasteProviders.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.ts @@ -2,32 +2,32 @@ * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { createStringDataTransferItem, IDataTransferItem, IReadonlyVSDataTransfer, VSDataTransfer } from '../../../../base/common/dataTransfer.js'; -import { HierarchicalKind } from '../../../../base/common/hierarchicalKind.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { revive } from '../../../../base/common/marshalling.js'; -import { Mimes } from '../../../../base/common/mime.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { basename, joinPath } from '../../../../base/common/resources.js'; -import { URI, UriComponents } from '../../../../base/common/uri.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { DocumentPasteContext, DocumentPasteEdit, DocumentPasteEditProvider, DocumentPasteEditsSession } from '../../../../editor/common/languages.js'; -import { ITextModel } from '../../../../editor/common/model.js'; -import { ILanguageFeaturesService } from '../../../../editor/common/services/languageFeatures.js'; -import { IModelService } from '../../../../editor/common/services/model.js'; -import { localize } from '../../../../nls.js'; -import { IEnvironmentService } from '../../../../platform/environment/common/environment.js'; -import { IFileService } from '../../../../platform/files/common/files.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { IExtensionService, isProposedApiEnabled } from '../../../services/extensions/common/extensions.js'; -import { IChatRequestPasteVariableEntry, IChatRequestVariableEntry } from '../common/chatVariableEntries.js'; -import { IChatVariablesService, IDynamicVariable } from '../common/chatVariables.js'; -import { IChatWidgetService } from './chat.js'; -import { ChatDynamicVariableModel } from './contrib/chatDynamicVariables.js'; -import { cleanupOldImages, createFileForMedia, resizeImage } from './chatImageUtils.js'; +import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../../base/common/codicons.js'; +import { createStringDataTransferItem, IDataTransferItem, IReadonlyVSDataTransfer, VSDataTransfer } from '../../../../../../../base/common/dataTransfer.js'; +import { HierarchicalKind } from '../../../../../../../base/common/hierarchicalKind.js'; +import { Disposable } from '../../../../../../../base/common/lifecycle.js'; +import { revive } from '../../../../../../../base/common/marshalling.js'; +import { Mimes } from '../../../../../../../base/common/mime.js'; +import { Schemas } from '../../../../../../../base/common/network.js'; +import { basename, joinPath } from '../../../../../../../base/common/resources.js'; +import { URI, UriComponents } from '../../../../../../../base/common/uri.js'; +import { IRange } from '../../../../../../../editor/common/core/range.js'; +import { DocumentPasteContext, DocumentPasteEdit, DocumentPasteEditProvider, DocumentPasteEditsSession } from '../../../../../../../editor/common/languages.js'; +import { ITextModel } from '../../../../../../../editor/common/model.js'; +import { ILanguageFeaturesService } from '../../../../../../../editor/common/services/languageFeatures.js'; +import { IModelService } from '../../../../../../../editor/common/services/model.js'; +import { localize } from '../../../../../../../nls.js'; +import { IEnvironmentService } from '../../../../../../../platform/environment/common/environment.js'; +import { IFileService } from '../../../../../../../platform/files/common/files.js'; +import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; +import { ILogService } from '../../../../../../../platform/log/common/log.js'; +import { IExtensionService, isProposedApiEnabled } from '../../../../../../services/extensions/common/extensions.js'; +import { IChatRequestPasteVariableEntry, IChatRequestVariableEntry } from '../../../../common/attachments/chatVariableEntries.js'; +import { IChatVariablesService, IDynamicVariable } from '../../../../common/attachments/chatVariables.js'; +import { IChatWidgetService } from '../../../chat.js'; +import { ChatDynamicVariableModel } from '../../../attachments/chatDynamicVariables.js'; +import { cleanupOldImages, createFileForMedia, resizeImage } from '../../../chatImageUtils.js'; const COPY_MIME_TYPES = 'application/vnd.code.additional-editor-data'; diff --git a/src/vs/workbench/contrib/chat/browser/contrib/editorHoverWrapper.ts b/src/vs/workbench/contrib/chat/browser/widget/input/editor/editorHoverWrapper.ts similarity index 83% rename from src/vs/workbench/contrib/chat/browser/contrib/editorHoverWrapper.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/editor/editorHoverWrapper.ts index 01f5adf945d..2645ae304d1 100644 --- a/src/vs/workbench/contrib/chat/browser/contrib/editorHoverWrapper.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/editor/editorHoverWrapper.ts @@ -4,10 +4,10 @@ *--------------------------------------------------------------------------------------------*/ import './media/editorHoverWrapper.css'; -import * as dom from '../../../../../base/browser/dom.js'; -import { IHoverAction } from '../../../../../base/browser/ui/hover/hover.js'; -import { HoverAction } from '../../../../../base/browser/ui/hover/hoverWidget.js'; -import { IKeybindingService } from '../../../../../platform/keybinding/common/keybinding.js'; +import * as dom from '../../../../../../../base/browser/dom.js'; +import { IHoverAction } from '../../../../../../../base/browser/ui/hover/hover.js'; +import { HoverAction } from '../../../../../../../base/browser/ui/hover/hoverWidget.js'; +import { IKeybindingService } from '../../../../../../../platform/keybinding/common/keybinding.js'; const $ = dom.$; const h = dom.h; diff --git a/src/vs/workbench/contrib/chat/browser/contrib/media/editorHoverWrapper.css b/src/vs/workbench/contrib/chat/browser/widget/input/editor/media/editorHoverWrapper.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/contrib/media/editorHoverWrapper.css rename to src/vs/workbench/contrib/chat/browser/widget/input/editor/media/editorHoverWrapper.css diff --git a/src/vs/workbench/contrib/chat/browser/media/chatStatusWidget.css b/src/vs/workbench/contrib/chat/browser/widget/input/media/chatStatusWidget.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatStatusWidget.css rename to src/vs/workbench/contrib/chat/browser/widget/input/media/chatStatusWidget.css diff --git a/src/vs/workbench/contrib/chat/browser/modelPicker/modePickerActionItem.ts b/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.ts similarity index 75% rename from src/vs/workbench/contrib/chat/browser/modelPicker/modePickerActionItem.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.ts index 94c4044490f..b4a6c1b98eb 100644 --- a/src/vs/workbench/contrib/chat/browser/modelPicker/modePickerActionItem.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/modePickerActionItem.ts @@ -3,33 +3,33 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../../base/browser/dom.js'; -import { renderLabelWithIcons } from '../../../../../base/browser/ui/iconLabel/iconLabels.js'; -import { IAction } from '../../../../../base/common/actions.js'; -import { coalesce } from '../../../../../base/common/arrays.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { groupBy } from '../../../../../base/common/collections.js'; -import { IDisposable } from '../../../../../base/common/lifecycle.js'; -import { autorun, IObservable } from '../../../../../base/common/observable.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { localize } from '../../../../../nls.js'; -import { ActionWidgetDropdownActionViewItem } from '../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js'; -import { getFlatActionBarActions } from '../../../../../platform/actions/browser/menuEntryActionViewItem.js'; -import { IMenuService, MenuId, MenuItemAction } from '../../../../../platform/actions/common/actions.js'; -import { IActionWidgetService } from '../../../../../platform/actionWidget/browser/actionWidget.js'; -import { IActionWidgetDropdownAction, IActionWidgetDropdownActionProvider, IActionWidgetDropdownOptions } from '../../../../../platform/actionWidget/browser/actionWidgetDropdown.js'; -import { ICommandService } from '../../../../../platform/commands/common/commands.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IKeybindingService } from '../../../../../platform/keybinding/common/keybinding.js'; -import { IProductService } from '../../../../../platform/product/common/productService.js'; -import { IChatAgentService } from '../../common/chatAgents.js'; -import { ChatMode, IChatMode, IChatModeService } from '../../common/chatModes.js'; -import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../common/constants.js'; -import { ExtensionAgentSourceType, PromptsStorage } from '../../common/promptSyntax/service/promptsService.js'; -import { getOpenChatActionIdForMode } from '../actions/chatActions.js'; -import { IToggleChatModeArgs, ToggleAgentModeActionId } from '../actions/chatExecuteActions.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { renderLabelWithIcons } from '../../../../../../base/browser/ui/iconLabel/iconLabels.js'; +import { IAction } from '../../../../../../base/common/actions.js'; +import { coalesce } from '../../../../../../base/common/arrays.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { groupBy } from '../../../../../../base/common/collections.js'; +import { IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { autorun, IObservable } from '../../../../../../base/common/observable.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { localize } from '../../../../../../nls.js'; +import { ActionWidgetDropdownActionViewItem } from '../../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js'; +import { getFlatActionBarActions } from '../../../../../../platform/actions/browser/menuEntryActionViewItem.js'; +import { IMenuService, MenuId, MenuItemAction } from '../../../../../../platform/actions/common/actions.js'; +import { IActionWidgetService } from '../../../../../../platform/actionWidget/browser/actionWidget.js'; +import { IActionWidgetDropdownAction, IActionWidgetDropdownActionProvider, IActionWidgetDropdownOptions } from '../../../../../../platform/actionWidget/browser/actionWidgetDropdown.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; +import { IProductService } from '../../../../../../platform/product/common/productService.js'; +import { IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { ChatMode, IChatMode, IChatModeService } from '../../../common/chatModes.js'; +import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../../common/constants.js'; +import { ExtensionAgentSourceType, PromptsStorage } from '../../../common/promptSyntax/service/promptsService.js'; +import { getOpenChatActionIdForMode } from '../../actions/chatActions.js'; +import { IToggleChatModeArgs, ToggleAgentModeActionId } from '../../actions/chatExecuteActions.js'; export interface IModePickerDelegate { readonly currentMode: IObservable; diff --git a/src/vs/workbench/contrib/chat/browser/modelPicker/modelPickerActionItem.ts b/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.ts similarity index 81% rename from src/vs/workbench/contrib/chat/browser/modelPicker/modelPickerActionItem.ts rename to src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.ts index dcadc5e729f..90833c9aa74 100644 --- a/src/vs/workbench/contrib/chat/browser/modelPicker/modelPickerActionItem.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/modelPickerActionItem.ts @@ -3,27 +3,27 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IAction } from '../../../../../base/common/actions.js'; -import { Event } from '../../../../../base/common/event.js'; -import { ILanguageModelChatMetadataAndIdentifier } from '../../common/languageModels.js'; -import { localize } from '../../../../../nls.js'; -import * as dom from '../../../../../base/browser/dom.js'; -import { renderIcon, renderLabelWithIcons } from '../../../../../base/browser/ui/iconLabel/iconLabels.js'; -import { IDisposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; -import { ActionWidgetDropdownActionViewItem } from '../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js'; -import { IActionWidgetService } from '../../../../../platform/actionWidget/browser/actionWidget.js'; -import { IActionWidgetDropdownAction, IActionWidgetDropdownActionProvider, IActionWidgetDropdownOptions } from '../../../../../platform/actionWidget/browser/actionWidgetDropdown.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { ICommandService } from '../../../../../platform/commands/common/commands.js'; -import { ChatEntitlement, IChatEntitlementService } from '../../../../services/chat/common/chatEntitlementService.js'; -import { IKeybindingService } from '../../../../../platform/keybinding/common/keybinding.js'; -import { DEFAULT_MODEL_PICKER_CATEGORY } from '../../common/modelPicker/modelPickerWidget.js'; -import { IActionProvider } from '../../../../../base/browser/ui/dropdown/dropdown.js'; -import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; -import { IProductService } from '../../../../../platform/product/common/productService.js'; -import { MANAGE_CHAT_COMMAND_ID } from '../../common/constants.js'; -import { TelemetryTrustedValue } from '../../../../../platform/telemetry/common/telemetryUtils.js'; -import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; +import { IAction } from '../../../../../../base/common/actions.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { ILanguageModelChatMetadataAndIdentifier } from '../../../common/languageModels.js'; +import { localize } from '../../../../../../nls.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { renderIcon, renderLabelWithIcons } from '../../../../../../base/browser/ui/iconLabel/iconLabels.js'; +import { IDisposable, MutableDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ActionWidgetDropdownActionViewItem } from '../../../../../../platform/actions/browser/actionWidgetDropdownActionViewItem.js'; +import { IActionWidgetService } from '../../../../../../platform/actionWidget/browser/actionWidget.js'; +import { IActionWidgetDropdownAction, IActionWidgetDropdownActionProvider, IActionWidgetDropdownOptions } from '../../../../../../platform/actionWidget/browser/actionWidgetDropdown.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { ICommandService } from '../../../../../../platform/commands/common/commands.js'; +import { ChatEntitlement, IChatEntitlementService } from '../../../../../services/chat/common/chatEntitlementService.js'; +import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; +import { DEFAULT_MODEL_PICKER_CATEGORY } from '../../../common/widget/input/modelPickerWidget.js'; +import { IActionProvider } from '../../../../../../base/browser/ui/dropdown/dropdown.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { IProductService } from '../../../../../../platform/product/common/productService.js'; +import { MANAGE_CHAT_COMMAND_ID } from '../../../common/constants.js'; +import { TelemetryTrustedValue } from '../../../../../../platform/telemetry/common/telemetryUtils.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; export interface IModelPickerDelegate { readonly onDidChangeModel: Event; diff --git a/src/vs/workbench/contrib/chat/browser/media/chat.css b/src/vs/workbench/contrib/chat/browser/widget/media/chat.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chat.css rename to src/vs/workbench/contrib/chat/browser/widget/media/chat.css diff --git a/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css b/src/vs/workbench/contrib/chat/browser/widget/media/chatAgentHover.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css rename to src/vs/workbench/contrib/chat/browser/widget/media/chatAgentHover.css diff --git a/src/vs/workbench/contrib/chat/browser/media/chatViewWelcome.css b/src/vs/workbench/contrib/chat/browser/widget/media/chatViewWelcome.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatViewWelcome.css rename to src/vs/workbench/contrib/chat/browser/widget/media/chatViewWelcome.css diff --git a/src/vs/workbench/contrib/chat/browser/chatQuick.ts b/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.ts similarity index 85% rename from src/vs/workbench/contrib/chat/browser/chatQuick.ts rename to src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.ts index 823afbe817b..fda57a33cdc 100644 --- a/src/vs/workbench/contrib/chat/browser/chatQuick.ts +++ b/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.ts @@ -3,34 +3,34 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { Orientation, Sash } from '../../../../base/browser/ui/sash/sash.js'; -import { disposableTimeout } from '../../../../base/common/async.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Disposable, DisposableStore, IDisposable, MutableDisposable } from '../../../../base/common/lifecycle.js'; -import { autorun } from '../../../../base/common/observable.js'; -import { URI } from '../../../../base/common/uri.js'; -import { Selection } from '../../../../editor/common/core/selection.js'; -import { localize } from '../../../../nls.js'; -import { MenuId } from '../../../../platform/actions/common/actions.js'; -import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js'; -import { IMarkdownRendererService } from '../../../../platform/markdown/browser/markdownRenderer.js'; -import product from '../../../../platform/product/common/product.js'; -import { IQuickInputService, IQuickWidget } from '../../../../platform/quickinput/common/quickInput.js'; -import { editorBackground, inputBackground, quickInputBackground, quickInputForeground } from '../../../../platform/theme/common/colorRegistry.js'; -import { EDITOR_DRAG_AND_DROP_BACKGROUND } from '../../../common/theme.js'; -import { IChatEntitlementService } from '../../../services/chat/common/chatEntitlementService.js'; -import { IWorkbenchLayoutService } from '../../../services/layout/browser/layoutService.js'; -import { isCellTextEditOperationArray } from '../common/chatModel.js'; -import { ChatMode } from '../common/chatModes.js'; -import { IParsedChatRequest } from '../common/chatParserTypes.js'; -import { IChatModelReference, IChatProgress, IChatService } from '../common/chatService.js'; -import { ChatAgentLocation } from '../common/constants.js'; -import { IChatWidgetService, IQuickChatOpenOptions, IQuickChatService } from './chat.js'; -import { ChatWidget } from './chatWidget.js'; +import * as dom from '../../../../../base/browser/dom.js'; +import { Orientation, Sash } from '../../../../../base/browser/ui/sash/sash.js'; +import { disposableTimeout } from '../../../../../base/common/async.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Disposable, DisposableStore, IDisposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; +import { autorun } from '../../../../../base/common/observable.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { Selection } from '../../../../../editor/common/core/selection.js'; +import { localize } from '../../../../../nls.js'; +import { MenuId } from '../../../../../platform/actions/common/actions.js'; +import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; +import { IMarkdownRendererService } from '../../../../../platform/markdown/browser/markdownRenderer.js'; +import product from '../../../../../platform/product/common/product.js'; +import { IQuickInputService, IQuickWidget } from '../../../../../platform/quickinput/common/quickInput.js'; +import { editorBackground, inputBackground, quickInputBackground, quickInputForeground } from '../../../../../platform/theme/common/colorRegistry.js'; +import { EDITOR_DRAG_AND_DROP_BACKGROUND } from '../../../../common/theme.js'; +import { IChatEntitlementService } from '../../../../services/chat/common/chatEntitlementService.js'; +import { IWorkbenchLayoutService } from '../../../../services/layout/browser/layoutService.js'; +import { isCellTextEditOperationArray } from '../../common/model/chatModel.js'; +import { ChatMode } from '../../common/chatModes.js'; +import { IParsedChatRequest } from '../../common/requestParser/chatParserTypes.js'; +import { IChatModelReference, IChatProgress, IChatService } from '../../common/chatService/chatService.js'; +import { ChatAgentLocation } from '../../common/constants.js'; +import { IChatWidgetService, IQuickChatOpenOptions, IQuickChatService } from '../chat.js'; +import { ChatWidget } from '../widget/chatWidget.js'; export class QuickChatService extends Disposable implements IQuickChatService { readonly _serviceBrand: undefined; diff --git a/src/vs/workbench/contrib/chat/browser/chatEditor.ts b/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.ts similarity index 80% rename from src/vs/workbench/contrib/chat/browser/chatEditor.ts rename to src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.ts index 352bea104ef..fffb5a27aa8 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditor.ts +++ b/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.ts @@ -3,33 +3,33 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as dom from '../../../../base/browser/dom.js'; -import { renderIcon } from '../../../../base/browser/ui/iconLabel/iconLabels.js'; -import { raceCancellationError } from '../../../../base/common/async.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import * as nls from '../../../../nls.js'; -import { IContextKeyService, IScopedContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IEditorOptions } from '../../../../platform/editor/common/editor.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js'; -import { IStorageService } from '../../../../platform/storage/common/storage.js'; -import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js'; -import { editorBackground, editorForeground, inputBackground } from '../../../../platform/theme/common/colorRegistry.js'; -import { IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { EditorPane } from '../../../browser/parts/editor/editorPane.js'; -import { IEditorOpenContext } from '../../../common/editor.js'; -import { EDITOR_DRAG_AND_DROP_BACKGROUND } from '../../../common/theme.js'; -import { IEditorGroup } from '../../../services/editor/common/editorGroupsService.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IChatModel, IChatModelInputState, IExportableChatData, ISerializableChatData } from '../common/chatModel.js'; -import { IChatService } from '../common/chatService.js'; -import { IChatSessionsService, localChatSessionType } from '../common/chatSessionsService.js'; -import { ChatAgentLocation, ChatModeKind } from '../common/constants.js'; -import { clearChatEditor } from './actions/chatClear.js'; +import * as dom from '../../../../../../base/browser/dom.js'; +import { renderIcon } from '../../../../../../base/browser/ui/iconLabel/iconLabels.js'; +import { raceCancellationError } from '../../../../../../base/common/async.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import * as nls from '../../../../../../nls.js'; +import { IContextKeyService, IScopedContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IEditorOptions } from '../../../../../../platform/editor/common/editor.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { IStorageService } from '../../../../../../platform/storage/common/storage.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { editorBackground, editorForeground, inputBackground } from '../../../../../../platform/theme/common/colorRegistry.js'; +import { IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { EditorPane } from '../../../../../browser/parts/editor/editorPane.js'; +import { IEditorOpenContext } from '../../../../../common/editor.js'; +import { EDITOR_DRAG_AND_DROP_BACKGROUND } from '../../../../../common/theme.js'; +import { IEditorGroup } from '../../../../../services/editor/common/editorGroupsService.js'; +import { ChatContextKeys } from '../../../common/actions/chatContextKeys.js'; +import { IChatModel, IChatModelInputState, IExportableChatData, ISerializableChatData } from '../../../common/model/chatModel.js'; +import { IChatService } from '../../../common/chatService/chatService.js'; +import { IChatSessionsService, localChatSessionType } from '../../../common/chatSessionsService.js'; +import { ChatAgentLocation, ChatModeKind } from '../../../common/constants.js'; +import { clearChatEditor } from '../../actions/chatClear.js'; import { ChatEditorInput } from './chatEditorInput.js'; -import { ChatWidget } from './chatWidget.js'; +import { ChatWidget } from '../../widget/chatWidget.js'; export interface IChatEditorOptions extends IEditorOptions { /** diff --git a/src/vs/workbench/contrib/chat/browser/chatEditorInput.ts b/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.ts similarity index 90% rename from src/vs/workbench/contrib/chat/browser/chatEditorInput.ts rename to src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.ts index 540accfae31..86799310b0e 100644 --- a/src/vs/workbench/contrib/chat/browser/chatEditorInput.ts +++ b/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.ts @@ -3,27 +3,27 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../base/common/codicons.js'; -import { Disposable, MutableDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { isEqual } from '../../../../base/common/resources.js'; -import { truncate } from '../../../../base/common/strings.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import * as nls from '../../../../nls.js'; -import { ConfirmResult, IDialogService } from '../../../../platform/dialogs/common/dialogs.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { registerIcon } from '../../../../platform/theme/common/iconRegistry.js'; -import { EditorInputCapabilities, IEditorIdentifier, IEditorSerializer, IUntypedEditorInput, Verbosity } from '../../../common/editor.js'; -import { EditorInput, IEditorCloseHandler } from '../../../common/editor/editorInput.js'; -import { IChatEditingSession, ModifiedFileEntryState } from '../common/chatEditingService.js'; -import { IChatModel } from '../common/chatModel.js'; -import { IChatModelReference, IChatService } from '../common/chatService.js'; -import { IChatSessionsService, localChatSessionType } from '../common/chatSessionsService.js'; -import { LocalChatSessionUri, getChatSessionType } from '../common/chatUri.js'; -import { ChatAgentLocation, ChatEditorTitleMaxLength } from '../common/constants.js'; -import { IClearEditingSessionConfirmationOptions } from './actions/chatActions.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Disposable, MutableDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../../base/common/network.js'; +import { isEqual } from '../../../../../../base/common/resources.js'; +import { truncate } from '../../../../../../base/common/strings.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import * as nls from '../../../../../../nls.js'; +import { ConfirmResult, IDialogService } from '../../../../../../platform/dialogs/common/dialogs.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { registerIcon } from '../../../../../../platform/theme/common/iconRegistry.js'; +import { EditorInputCapabilities, IEditorIdentifier, IEditorSerializer, IUntypedEditorInput, Verbosity } from '../../../../../common/editor.js'; +import { EditorInput, IEditorCloseHandler } from '../../../../../common/editor/editorInput.js'; +import { IChatEditingSession, ModifiedFileEntryState } from '../../../common/editing/chatEditingService.js'; +import { IChatModel } from '../../../common/model/chatModel.js'; +import { IChatModelReference, IChatService } from '../../../common/chatService/chatService.js'; +import { IChatSessionsService, localChatSessionType } from '../../../common/chatSessionsService.js'; +import { LocalChatSessionUri, getChatSessionType } from '../../../common/model/chatUri.js'; +import { ChatAgentLocation, ChatEditorTitleMaxLength } from '../../../common/constants.js'; +import { IClearEditingSessionConfirmationOptions } from '../../actions/chatActions.js'; import type { IChatEditorOptions } from './chatEditor.js'; const ChatEditorIcon = registerIcon('chat-editor-label-icon', Codicon.chatSparkle, nls.localize('chatEditorLabelIcon', 'Icon of the chat editor label.')); diff --git a/src/vs/workbench/contrib/chat/browser/chatViewPane.ts b/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.ts similarity index 89% rename from src/vs/workbench/contrib/chat/browser/chatViewPane.ts rename to src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.ts index 02e29f23337..de27b8f6f4d 100644 --- a/src/vs/workbench/contrib/chat/browser/chatViewPane.ts +++ b/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.ts @@ -4,59 +4,59 @@ *--------------------------------------------------------------------------------------------*/ import './media/chatViewPane.css'; -import { $, addDisposableListener, append, EventHelper, EventType, getWindow, setVisibility } from '../../../../base/browser/dom.js'; -import { StandardMouseEvent } from '../../../../base/browser/mouseEvent.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Event } from '../../../../base/common/event.js'; -import { MutableDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { MarshalledId } from '../../../../base/common/marshallingIds.js'; -import { autorun, IReader } from '../../../../base/common/observable.js'; -import { URI } from '../../../../base/common/uri.js'; -import { localize } from '../../../../nls.js'; -import { MenuWorkbenchToolBar } from '../../../../platform/actions/browser/toolbar.js'; -import { MenuId } from '../../../../platform/actions/common/actions.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.js'; -import { IHoverService } from '../../../../platform/hover/browser/hover.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js'; -import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { IOpenerService } from '../../../../platform/opener/common/opener.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js'; -import { editorBackground } from '../../../../platform/theme/common/colorRegistry.js'; +import { $, addDisposableListener, append, EventHelper, EventType, getWindow, setVisibility } from '../../../../../../base/browser/dom.js'; +import { StandardMouseEvent } from '../../../../../../base/browser/mouseEvent.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { MutableDisposable, toDisposable } from '../../../../../../base/common/lifecycle.js'; +import { MarshalledId } from '../../../../../../base/common/marshallingIds.js'; +import { autorun, IReader } from '../../../../../../base/common/observable.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { localize } from '../../../../../../nls.js'; +import { MenuWorkbenchToolBar } from '../../../../../../platform/actions/browser/toolbar.js'; +import { MenuId } from '../../../../../../platform/actions/common/actions.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IContextKey, IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IContextMenuService } from '../../../../../../platform/contextview/browser/contextView.js'; +import { IHoverService } from '../../../../../../platform/hover/browser/hover.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { IKeybindingService } from '../../../../../../platform/keybinding/common/keybinding.js'; +import { ILogService } from '../../../../../../platform/log/common/log.js'; +import { IOpenerService } from '../../../../../../platform/opener/common/opener.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../../platform/storage/common/storage.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { editorBackground } from '../../../../../../platform/theme/common/colorRegistry.js'; import { ChatViewTitleControl } from './chatViewTitleControl.js'; -import { IThemeService } from '../../../../platform/theme/common/themeService.js'; -import { IViewPaneOptions, ViewPane } from '../../../browser/parts/views/viewPane.js'; -import { Memento } from '../../../common/memento.js'; -import { SIDE_BAR_FOREGROUND } from '../../../common/theme.js'; -import { IViewDescriptorService, ViewContainerLocation } from '../../../common/views.js'; -import { ILifecycleService, StartupKind } from '../../../services/lifecycle/common/lifecycle.js'; -import { IChatViewTitleActionContext } from '../common/chatActions.js'; -import { IChatAgentService } from '../common/chatAgents.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; -import { IChatModel, IChatModelInputState } from '../common/chatModel.js'; -import { CHAT_PROVIDER_ID } from '../common/chatParticipantContribTypes.js'; -import { IChatModelReference, IChatService } from '../common/chatService.js'; -import { IChatSessionsService, localChatSessionType } from '../common/chatSessionsService.js'; -import { LocalChatSessionUri, getChatSessionType } from '../common/chatUri.js'; -import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../common/constants.js'; -import { AgentSessionsControl } from './agentSessions/agentSessionsControl.js'; -import { AgentSessionsListDelegate } from './agentSessions/agentSessionsViewer.js'; -import { ChatWidget } from './chatWidget.js'; -import { ChatViewWelcomeController, IViewWelcomeDelegate } from './viewsWelcome/chatViewWelcomeController.js'; -import { IWorkbenchLayoutService, LayoutSettings, Position } from '../../../services/layout/browser/layoutService.js'; -import { AgentSessionsViewerOrientation, AgentSessionsViewerPosition } from './agentSessions/agentSessions.js'; -import { Link } from '../../../../platform/opener/browser/link.js'; -import { IProgressService } from '../../../../platform/progress/common/progress.js'; -import { ChatViewId } from './chat.js'; -import { disposableTimeout } from '../../../../base/common/async.js'; -import { AgentSessionsFilter } from './agentSessions/agentSessionsFilter.js'; -import { IAgentSessionsService } from './agentSessions/agentSessionsService.js'; -import { HoverPosition } from '../../../../base/browser/ui/hover/hoverWidget.js'; -import { IAgentSession } from './agentSessions/agentSessionsModel.js'; +import { IThemeService } from '../../../../../../platform/theme/common/themeService.js'; +import { IViewPaneOptions, ViewPane } from '../../../../../browser/parts/views/viewPane.js'; +import { Memento } from '../../../../../common/memento.js'; +import { SIDE_BAR_FOREGROUND } from '../../../../../common/theme.js'; +import { IViewDescriptorService, ViewContainerLocation } from '../../../../../common/views.js'; +import { ILifecycleService, StartupKind } from '../../../../../services/lifecycle/common/lifecycle.js'; +import { IChatViewTitleActionContext } from '../../../common/actions/chatActions.js'; +import { IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../../common/actions/chatContextKeys.js'; +import { IChatModel, IChatModelInputState } from '../../../common/model/chatModel.js'; +import { CHAT_PROVIDER_ID } from '../../../common/participants/chatParticipantContribTypes.js'; +import { IChatModelReference, IChatService } from '../../../common/chatService/chatService.js'; +import { IChatSessionsService, localChatSessionType } from '../../../common/chatSessionsService.js'; +import { LocalChatSessionUri, getChatSessionType } from '../../../common/model/chatUri.js'; +import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../../common/constants.js'; +import { AgentSessionsControl } from '../../agentSessions/agentSessionsControl.js'; +import { AgentSessionsListDelegate } from '../../agentSessions/agentSessionsViewer.js'; +import { ChatWidget } from '../../widget/chatWidget.js'; +import { ChatViewWelcomeController, IViewWelcomeDelegate } from '../../viewsWelcome/chatViewWelcomeController.js'; +import { IWorkbenchLayoutService, LayoutSettings, Position } from '../../../../../services/layout/browser/layoutService.js'; +import { AgentSessionsViewerOrientation, AgentSessionsViewerPosition } from '../../agentSessions/agentSessions.js'; +import { Link } from '../../../../../../platform/opener/browser/link.js'; +import { IProgressService } from '../../../../../../platform/progress/common/progress.js'; +import { ChatViewId } from '../../chat.js'; +import { disposableTimeout } from '../../../../../../base/common/async.js'; +import { AgentSessionsFilter } from '../../agentSessions/agentSessionsFilter.js'; +import { IAgentSessionsService } from '../../agentSessions/agentSessionsService.js'; +import { HoverPosition } from '../../../../../../base/browser/ui/hover/hoverWidget.js'; +import { IAgentSession } from '../../agentSessions/agentSessionsModel.js'; interface IChatViewPaneState extends Partial { sessionId?: string; diff --git a/src/vs/workbench/contrib/chat/browser/chatViewTitleControl.ts b/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.ts similarity index 85% rename from src/vs/workbench/contrib/chat/browser/chatViewTitleControl.ts rename to src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.ts index f820cc1f3c6..184abd325c0 100644 --- a/src/vs/workbench/contrib/chat/browser/chatViewTitleControl.ts +++ b/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.ts @@ -4,26 +4,26 @@ *--------------------------------------------------------------------------------------------*/ import './media/chatViewTitleControl.css'; -import { addDisposableListener, EventType, h } from '../../../../base/browser/dom.js'; -import { renderAsPlaintext } from '../../../../base/browser/markdownRenderer.js'; -import { Gesture, EventType as TouchEventType } from '../../../../base/browser/touch.js'; -import { Emitter } from '../../../../base/common/event.js'; -import { MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Disposable, MutableDisposable } from '../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { MarshalledId } from '../../../../base/common/marshallingIds.js'; -import { localize } from '../../../../nls.js'; -import { HiddenItemStrategy, MenuWorkbenchToolBar } from '../../../../platform/actions/browser/toolbar.js'; -import { Action2, MenuId, registerAction2 } from '../../../../platform/actions/common/actions.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IInstantiationService, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; -import { IChatViewTitleActionContext } from '../common/chatActions.js'; -import { IChatModel } from '../common/chatModel.js'; -import { ChatConfiguration } from '../common/constants.js'; -import { AgentSessionProviders, getAgentSessionProviderIcon } from './agentSessions/agentSessions.js'; -import { ActionViewItem, IActionViewItemOptions } from '../../../../base/browser/ui/actionbar/actionViewItems.js'; -import { IAction } from '../../../../base/common/actions.js'; -import { AgentSessionsPicker } from './agentSessions/agentSessionsPicker.js'; +import { addDisposableListener, EventType, h } from '../../../../../../base/browser/dom.js'; +import { renderAsPlaintext } from '../../../../../../base/browser/markdownRenderer.js'; +import { Gesture, EventType as TouchEventType } from '../../../../../../base/browser/touch.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable, MutableDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { MarshalledId } from '../../../../../../base/common/marshallingIds.js'; +import { localize } from '../../../../../../nls.js'; +import { HiddenItemStrategy, MenuWorkbenchToolBar } from '../../../../../../platform/actions/browser/toolbar.js'; +import { Action2, MenuId, registerAction2 } from '../../../../../../platform/actions/common/actions.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IInstantiationService, ServicesAccessor } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IChatViewTitleActionContext } from '../../../common/actions/chatActions.js'; +import { IChatModel } from '../../../common/model/chatModel.js'; +import { ChatConfiguration } from '../../../common/constants.js'; +import { AgentSessionProviders, getAgentSessionProviderIcon } from '../../agentSessions/agentSessions.js'; +import { ActionViewItem, IActionViewItemOptions } from '../../../../../../base/browser/ui/actionbar/actionViewItems.js'; +import { IAction } from '../../../../../../base/common/actions.js'; +import { AgentSessionsPicker } from '../../agentSessions/agentSessionsPicker.js'; export interface IChatViewTitleDelegate { focusChat(): void; diff --git a/src/vs/workbench/contrib/chat/browser/media/chatViewPane.css b/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatViewPane.css rename to src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css diff --git a/src/vs/workbench/contrib/chat/browser/media/chatViewTitleControl.css b/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewTitleControl.css similarity index 100% rename from src/vs/workbench/contrib/chat/browser/media/chatViewTitleControl.css rename to src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewTitleControl.css diff --git a/src/vs/workbench/contrib/chat/chatCodeOrganization.md b/src/vs/workbench/contrib/chat/chatCodeOrganization.md new file mode 100644 index 00000000000..bccc1226465 --- /dev/null +++ b/src/vs/workbench/contrib/chat/chatCodeOrganization.md @@ -0,0 +1,25 @@ +# workbench/contrib/chat Code Organization + +This contrib is, as of the end of 2025, the largest workbench contrib in VS Code by a substantial margin. Let's try to keep it organized! Here's a rough description of some of the key folders. + +## Key Folders + +### `browser/` + +- `accessibility/` - Screen reader support and accessible views. +- `actions/` - All chat action registrations. +- `attachments/` - Context attachment model, pickers, context widgets. +- `chatContentParts/` - Rendering components for different response content types (markdown, code blocks, tool output, etc.). +- `chatEditing/` - The edit session model, edit diff UI, edit snapshots. +- `chatSetup/` - Placeholder registrations before the chat extentension is set up. Running the chat auth/install flow. +- `contextContrib/` - The contribution point for chat context providers - note the difference from `attachments/`. +- `widget/` - The core files related to rendering parts of the ChatWidget, including the list, the input, the model/agent pickers, and other main UI parts. Must have direct references from ChatWidget itself. +- `widgetHosts/` - Hosts that embed chat widgets in other places (view pane, editor, quick chat). + +### `common/` + +- `chatService/` - IChatService interface, implementation, and related code. +- `model/` - Chat data model, view model, and session storage. +- `participants/` - Chat participant management (sometimes called "agents" in code). +- `tools/` - Language model tools infrastructure and services. + - `builtinTools/` - Implementations of some built-in tools. diff --git a/src/vs/workbench/contrib/chat/common/chatActions.ts b/src/vs/workbench/contrib/chat/common/actions/chatActions.ts similarity index 84% rename from src/vs/workbench/contrib/chat/common/chatActions.ts rename to src/vs/workbench/contrib/chat/common/actions/chatActions.ts index b311e98d6f2..d65670d076b 100644 --- a/src/vs/workbench/contrib/chat/common/chatActions.ts +++ b/src/vs/workbench/contrib/chat/common/actions/chatActions.ts @@ -3,8 +3,8 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { MarshalledId } from '../../../../base/common/marshallingIds.js'; -import { URI } from '../../../../base/common/uri.js'; +import { MarshalledId } from '../../../../../base/common/marshallingIds.js'; +import { URI } from '../../../../../base/common/uri.js'; export interface IChatViewTitleActionContext { readonly $mid: MarshalledId.ChatViewContext; diff --git a/src/vs/workbench/contrib/chat/common/chatContextKeys.ts b/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.ts similarity index 96% rename from src/vs/workbench/contrib/chat/common/chatContextKeys.ts rename to src/vs/workbench/contrib/chat/common/actions/chatContextKeys.ts index bbc9a2c5944..62efc919657 100644 --- a/src/vs/workbench/contrib/chat/common/chatContextKeys.ts +++ b/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.ts @@ -3,13 +3,13 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { localize } from '../../../../nls.js'; -import { ContextKeyExpr, RawContextKey } from '../../../../platform/contextkey/common/contextkey.js'; -import { IsWebContext } from '../../../../platform/contextkey/common/contextkeys.js'; -import { RemoteNameContext } from '../../../common/contextkeys.js'; -import { ViewContainerLocation } from '../../../common/views.js'; -import { ChatEntitlementContextKeys } from '../../../services/chat/common/chatEntitlementService.js'; -import { ChatAgentLocation, ChatModeKind } from './constants.js'; +import { localize } from '../../../../../nls.js'; +import { ContextKeyExpr, RawContextKey } from '../../../../../platform/contextkey/common/contextkey.js'; +import { IsWebContext } from '../../../../../platform/contextkey/common/contextkeys.js'; +import { RemoteNameContext } from '../../../../common/contextkeys.js'; +import { ViewContainerLocation } from '../../../../common/views.js'; +import { ChatEntitlementContextKeys } from '../../../../services/chat/common/chatEntitlementService.js'; +import { ChatAgentLocation, ChatModeKind } from '../constants.js'; export namespace ChatContextKeys { export const responseVote = new RawContextKey('chatSessionResponseVote', '', { type: 'string', description: localize('interactiveSessionResponseVote', "When the response has been voted up, is set to 'up'. When voted down, is set to 'down'. Otherwise an empty string.") }); diff --git a/src/vs/workbench/contrib/chat/common/chatVariableEntries.ts b/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.ts similarity index 94% rename from src/vs/workbench/contrib/chat/common/chatVariableEntries.ts rename to src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.ts index d19cab58f19..492cc1f956c 100644 --- a/src/vs/workbench/contrib/chat/common/chatVariableEntries.ts +++ b/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.ts @@ -3,19 +3,19 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Codicon } from '../../../../base/common/codicons.js'; -import { basename } from '../../../../base/common/resources.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { IOffsetRange } from '../../../../editor/common/core/ranges/offsetRange.js'; -import { isLocation, Location, SymbolKind } from '../../../../editor/common/languages.js'; -import { localize } from '../../../../nls.js'; -import { MarkerSeverity, IMarker } from '../../../../platform/markers/common/markers.js'; -import { ISCMHistoryItem } from '../../scm/common/history.js'; -import { IChatContentReference } from './chatService.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { basename } from '../../../../../base/common/resources.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { IRange } from '../../../../../editor/common/core/range.js'; +import { IOffsetRange } from '../../../../../editor/common/core/ranges/offsetRange.js'; +import { isLocation, Location, SymbolKind } from '../../../../../editor/common/languages.js'; +import { localize } from '../../../../../nls.js'; +import { MarkerSeverity, IMarker } from '../../../../../platform/markers/common/markers.js'; +import { ISCMHistoryItem } from '../../../scm/common/history.js'; +import { IChatContentReference } from '../chatService/chatService.js'; import { IChatRequestVariableValue } from './chatVariables.js'; -import { IToolData, ToolSet } from './languageModelToolsService.js'; +import { IToolData, ToolSet } from '../tools/languageModelToolsService.js'; interface IBaseChatRequestVariableEntry { diff --git a/src/vs/workbench/contrib/chat/common/chatVariables.ts b/src/vs/workbench/contrib/chat/common/attachments/chatVariables.ts similarity index 74% rename from src/vs/workbench/contrib/chat/common/chatVariables.ts rename to src/vs/workbench/contrib/chat/common/attachments/chatVariables.ts index 1df89127dca..40cee25c13f 100644 --- a/src/vs/workbench/contrib/chat/common/chatVariables.ts +++ b/src/vs/workbench/contrib/chat/common/attachments/chatVariables.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { Location } from '../../../../editor/common/languages.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IChatModel } from './chatModel.js'; -import { IChatContentReference, IChatProgressMessage } from './chatService.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { IRange } from '../../../../../editor/common/core/range.js'; +import { Location } from '../../../../../editor/common/languages.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IChatModel } from '../model/chatModel.js'; +import { IChatContentReference, IChatProgressMessage } from '../chatService/chatService.js'; import { IDiagnosticVariableEntryFilterData, StringChatContextValue } from './chatVariableEntries.js'; -import { IToolAndToolSetEnablementMap } from './languageModelToolsService.js'; +import { IToolAndToolSetEnablementMap } from '../tools/languageModelToolsService.js'; export interface IChatVariableData { id: string; diff --git a/src/vs/workbench/contrib/chat/common/chat.ts b/src/vs/workbench/contrib/chat/common/chat.ts index 3b95abb4fb5..4fc05e23b91 100644 --- a/src/vs/workbench/contrib/chat/common/chat.ts +++ b/src/vs/workbench/contrib/chat/common/chat.ts @@ -4,9 +4,9 @@ *--------------------------------------------------------------------------------------------*/ import { ResourceSet } from '../../../../base/common/map.js'; -import { chatEditingSessionIsReady } from './chatEditingService.js'; -import { IChatModel } from './chatModel.js'; -import { isLegacyChatTerminalToolInvocationData, type IChatSessionStats, type IChatTerminalToolInvocationData, type ILegacyChatTerminalToolInvocationData } from './chatService.js'; +import { chatEditingSessionIsReady } from './editing/chatEditingService.js'; +import { IChatModel } from './model/chatModel.js'; +import { isLegacyChatTerminalToolInvocationData, type IChatSessionStats, type IChatTerminalToolInvocationData, type ILegacyChatTerminalToolInvocationData } from './chatService/chatService.js'; import { ChatModeKind } from './constants.js'; export function checkModeOption(mode: ChatModeKind, option: boolean | ((mode: ChatModeKind) => boolean) | undefined): boolean | undefined { diff --git a/src/vs/workbench/contrib/chat/common/chatModes.ts b/src/vs/workbench/contrib/chat/common/chatModes.ts index 598f4776b65..4d6a1cd5c59 100644 --- a/src/vs/workbench/contrib/chat/common/chatModes.ts +++ b/src/vs/workbench/contrib/chat/common/chatModes.ts @@ -16,8 +16,8 @@ import { ExtensionIdentifier } from '../../../../platform/extensions/common/exte import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; import { ILogService } from '../../../../platform/log/common/log.js'; import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { IChatAgentService } from './chatAgents.js'; -import { ChatContextKeys } from './chatContextKeys.js'; +import { IChatAgentService } from './participants/chatAgents.js'; +import { ChatContextKeys } from './actions/chatContextKeys.js'; import { ChatConfiguration, ChatModeKind } from './constants.js'; import { IHandOff } from './promptSyntax/promptFileParser.js'; import { ExtensionAgentSourceType, IAgentSource, ICustomAgent, IPromptsService, PromptsStorage } from './promptSyntax/service/promptsService.js'; diff --git a/src/vs/workbench/contrib/chat/common/chatService.ts b/src/vs/workbench/contrib/chat/common/chatService/chatService.ts similarity index 94% rename from src/vs/workbench/contrib/chat/common/chatService.ts rename to src/vs/workbench/contrib/chat/common/chatService/chatService.ts index 25561518e6e..51f62c610e5 100644 --- a/src/vs/workbench/contrib/chat/common/chatService.ts +++ b/src/vs/workbench/contrib/chat/common/chatService/chatService.ts @@ -3,33 +3,33 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IAction } from '../../../../base/common/actions.js'; -import { DeferredPromise } from '../../../../base/common/async.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Event } from '../../../../base/common/event.js'; -import { IMarkdownString } from '../../../../base/common/htmlContent.js'; -import { DisposableStore, IReference } from '../../../../base/common/lifecycle.js'; -import { autorun, autorunSelfDisposable, IObservable, IReader } from '../../../../base/common/observable.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { hasKey } from '../../../../base/common/types.js'; -import { URI, UriComponents } from '../../../../base/common/uri.js'; -import { IRange, Range } from '../../../../editor/common/core/range.js'; -import { ISelection } from '../../../../editor/common/core/selection.js'; -import { Command, Location, TextEdit } from '../../../../editor/common/languages.js'; -import { FileType } from '../../../../platform/files/common/files.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IAutostartResult } from '../../mcp/common/mcpTypes.js'; -import { ICellEditOperation } from '../../notebook/common/notebookCommon.js'; -import { IWorkspaceSymbol } from '../../search/common/search.js'; -import { IChatAgentCommand, IChatAgentData, IChatAgentResult, UserSelectedTools } from './chatAgents.js'; -import { IChatEditingSession } from './chatEditingService.js'; -import { IChatModel, IChatRequestModeInfo, IChatRequestModel, IChatRequestVariableData, IChatResponseModel, IExportableChatData, ISerializableChatData } from './chatModel.js'; -import { IParsedChatRequest } from './chatParserTypes.js'; -import { IChatParserContext } from './chatRequestParser.js'; -import { IChatRequestVariableEntry } from './chatVariableEntries.js'; -import { IChatRequestVariableValue } from './chatVariables.js'; -import { ChatAgentLocation } from './constants.js'; -import { IPreparedToolInvocation, IToolConfirmationMessages, IToolResult, IToolResultInputOutputDetails, ToolDataSource } from './languageModelToolsService.js'; +import { IAction } from '../../../../../base/common/actions.js'; +import { DeferredPromise } from '../../../../../base/common/async.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { Event } from '../../../../../base/common/event.js'; +import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; +import { DisposableStore, IReference } from '../../../../../base/common/lifecycle.js'; +import { autorun, autorunSelfDisposable, IObservable, IReader } from '../../../../../base/common/observable.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { hasKey } from '../../../../../base/common/types.js'; +import { URI, UriComponents } from '../../../../../base/common/uri.js'; +import { IRange, Range } from '../../../../../editor/common/core/range.js'; +import { ISelection } from '../../../../../editor/common/core/selection.js'; +import { Command, Location, TextEdit } from '../../../../../editor/common/languages.js'; +import { FileType } from '../../../../../platform/files/common/files.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IAutostartResult } from '../../../mcp/common/mcpTypes.js'; +import { ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; +import { IWorkspaceSymbol } from '../../../search/common/search.js'; +import { IChatAgentCommand, IChatAgentData, IChatAgentResult, UserSelectedTools } from '../participants/chatAgents.js'; +import { IChatEditingSession } from '../editing/chatEditingService.js'; +import { IChatModel, IChatRequestModeInfo, IChatRequestModel, IChatRequestVariableData, IChatResponseModel, IExportableChatData, ISerializableChatData } from '../model/chatModel.js'; +import { IParsedChatRequest } from '../requestParser/chatParserTypes.js'; +import { IChatParserContext } from '../requestParser/chatRequestParser.js'; +import { IChatRequestVariableEntry } from '../attachments/chatVariableEntries.js'; +import { IChatRequestVariableValue } from '../attachments/chatVariables.js'; +import { ChatAgentLocation } from '../constants.js'; +import { IPreparedToolInvocation, IToolConfirmationMessages, IToolResult, IToolResultInputOutputDetails, ToolDataSource } from '../tools/languageModelToolsService.js'; export interface IChatRequest { message: string; diff --git a/src/vs/workbench/contrib/chat/common/chatServiceImpl.ts b/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.ts similarity index 94% rename from src/vs/workbench/contrib/chat/common/chatServiceImpl.ts rename to src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.ts index 6d1a4cab988..5722b61e570 100644 --- a/src/vs/workbench/contrib/chat/common/chatServiceImpl.ts +++ b/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.ts @@ -3,51 +3,51 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { DeferredPromise } from '../../../../base/common/async.js'; -import { CancellationToken, CancellationTokenSource } from '../../../../base/common/cancellation.js'; -import { toErrorMessage } from '../../../../base/common/errorMessage.js'; -import { BugIndicatingError, ErrorNoTelemetry } from '../../../../base/common/errors.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { Disposable, DisposableResourceMap, DisposableStore, IDisposable, MutableDisposable } from '../../../../base/common/lifecycle.js'; -import { revive } from '../../../../base/common/marshalling.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { autorun, derived, IObservable } from '../../../../base/common/observable.js'; -import { isEqual } from '../../../../base/common/resources.js'; -import { StopWatch } from '../../../../base/common/stopwatch.js'; -import { isDefined } from '../../../../base/common/types.js'; -import { URI } from '../../../../base/common/uri.js'; -import { generateUuid } from '../../../../base/common/uuid.js'; -import { OffsetRange } from '../../../../editor/common/core/ranges/offsetRange.js'; -import { localize } from '../../../../nls.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { Progress } from '../../../../platform/progress/common/progress.js'; -import { IStorageService, StorageScope } from '../../../../platform/storage/common/storage.js'; -import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.js'; -import { IExtensionService } from '../../../services/extensions/common/extensions.js'; -import { InlineChatConfigKeys } from '../../inlineChat/common/inlineChat.js'; -import { IMcpService } from '../../mcp/common/mcpTypes.js'; -import { awaitStatsForSession } from './chat.js'; -import { IChatAgentCommand, IChatAgentData, IChatAgentHistoryEntry, IChatAgentRequest, IChatAgentResult, IChatAgentService } from './chatAgents.js'; -import { chatEditingSessionIsReady } from './chatEditingService.js'; -import { ChatModel, ChatRequestModel, ChatRequestRemovalReason, IChatModel, IChatRequestModel, IChatRequestVariableData, IChatResponseModel, IExportableChatData, ISerializableChatData, ISerializableChatDataIn, ISerializableChatsData, normalizeSerializableChatData, toChatHistoryContent, updateRanges } from './chatModel.js'; -import { ChatModelStore, IStartSessionProps } from './chatModelStore.js'; -import { chatAgentLeader, ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart, ChatRequestTextPart, chatSubcommandLeader, getPromptText, IParsedChatRequest } from './chatParserTypes.js'; -import { ChatRequestParser } from './chatRequestParser.js'; +import { DeferredPromise } from '../../../../../base/common/async.js'; +import { CancellationToken, CancellationTokenSource } from '../../../../../base/common/cancellation.js'; +import { toErrorMessage } from '../../../../../base/common/errorMessage.js'; +import { BugIndicatingError, ErrorNoTelemetry } from '../../../../../base/common/errors.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; +import { Disposable, DisposableResourceMap, DisposableStore, IDisposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; +import { revive } from '../../../../../base/common/marshalling.js'; +import { Schemas } from '../../../../../base/common/network.js'; +import { autorun, derived, IObservable } from '../../../../../base/common/observable.js'; +import { isEqual } from '../../../../../base/common/resources.js'; +import { StopWatch } from '../../../../../base/common/stopwatch.js'; +import { isDefined } from '../../../../../base/common/types.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../base/common/uuid.js'; +import { OffsetRange } from '../../../../../editor/common/core/ranges/offsetRange.js'; +import { localize } from '../../../../../nls.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { Progress } from '../../../../../platform/progress/common/progress.js'; +import { IStorageService, StorageScope } from '../../../../../platform/storage/common/storage.js'; +import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; +import { IExtensionService } from '../../../../services/extensions/common/extensions.js'; +import { InlineChatConfigKeys } from '../../../inlineChat/common/inlineChat.js'; +import { IMcpService } from '../../../mcp/common/mcpTypes.js'; +import { awaitStatsForSession } from '../chat.js'; +import { IChatAgentCommand, IChatAgentData, IChatAgentHistoryEntry, IChatAgentRequest, IChatAgentResult, IChatAgentService } from '../participants/chatAgents.js'; +import { chatEditingSessionIsReady } from '../editing/chatEditingService.js'; +import { ChatModel, ChatRequestModel, ChatRequestRemovalReason, IChatModel, IChatRequestModel, IChatRequestVariableData, IChatResponseModel, IExportableChatData, ISerializableChatData, ISerializableChatDataIn, ISerializableChatsData, normalizeSerializableChatData, toChatHistoryContent, updateRanges } from '../model/chatModel.js'; +import { ChatModelStore, IStartSessionProps } from '../model/chatModelStore.js'; +import { chatAgentLeader, ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart, ChatRequestTextPart, chatSubcommandLeader, getPromptText, IParsedChatRequest } from '../requestParser/chatParserTypes.js'; +import { ChatRequestParser } from '../requestParser/chatRequestParser.js'; import { ChatMcpServersStarting, IChatCompleteResponse, IChatDetail, IChatFollowup, IChatModelReference, IChatProgress, IChatSendRequestData, IChatSendRequestOptions, IChatSendRequestResponseState, IChatService, IChatSessionContext, IChatSessionStartOptions, IChatUserActionEvent, ResponseModelState } from './chatService.js'; import { ChatRequestTelemetry, ChatServiceTelemetry } from './chatServiceTelemetry.js'; -import { IChatSessionsService } from './chatSessionsService.js'; -import { ChatSessionStore, IChatSessionEntryMetadata } from './chatSessionStore.js'; -import { IChatSlashCommandService } from './chatSlashCommands.js'; -import { IChatTransferService } from './chatTransferService.js'; -import { LocalChatSessionUri } from './chatUri.js'; -import { IChatRequestVariableEntry } from './chatVariableEntries.js'; -import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from './constants.js'; -import { ChatMessageRole, IChatMessage } from './languageModels.js'; -import { ILanguageModelToolsService } from './languageModelToolsService.js'; +import { IChatSessionsService } from '../chatSessionsService.js'; +import { ChatSessionStore, IChatSessionEntryMetadata } from '../model/chatSessionStore.js'; +import { IChatSlashCommandService } from '../participants/chatSlashCommands.js'; +import { IChatTransferService } from '../model/chatTransferService.js'; +import { LocalChatSessionUri } from '../model/chatUri.js'; +import { IChatRequestVariableEntry } from '../attachments/chatVariableEntries.js'; +import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../constants.js'; +import { ChatMessageRole, IChatMessage } from '../languageModels.js'; +import { ILanguageModelToolsService } from '../tools/languageModelToolsService.js'; const serializedChatKey = 'interactive.sessions'; diff --git a/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.ts b/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.ts similarity index 96% rename from src/vs/workbench/contrib/chat/common/chatServiceTelemetry.ts rename to src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.ts index 16d4225f19a..6cd2769fbec 100644 --- a/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.ts +++ b/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { URI } from '../../../../base/common/uri.js'; -import { isLocation } from '../../../../editor/common/languages.js'; -import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js'; -import { IChatAgentData } from './chatAgents.js'; -import { ChatRequestModel, IChatRequestVariableData } from './chatModel.js'; -import { ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart } from './chatParserTypes.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { isLocation } from '../../../../../editor/common/languages.js'; +import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; +import { IChatAgentData } from '../participants/chatAgents.js'; +import { ChatRequestModel, IChatRequestVariableData } from '../model/chatModel.js'; +import { ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart } from '../requestParser/chatParserTypes.js'; import { ChatAgentVoteDirection, ChatCopyKind, IChatSendRequestOptions, IChatUserActionEvent } from './chatService.js'; -import { isImageVariableEntry } from './chatVariableEntries.js'; -import { ChatAgentLocation } from './constants.js'; -import { ILanguageModelsService } from './languageModels.js'; +import { isImageVariableEntry } from '../attachments/chatVariableEntries.js'; +import { ChatAgentLocation } from '../constants.js'; +import { ILanguageModelsService } from '../languageModels.js'; type ChatVoteEvent = { direction: 'up' | 'down'; diff --git a/src/vs/workbench/contrib/chat/common/chatSessionsService.ts b/src/vs/workbench/contrib/chat/common/chatSessionsService.ts index 9367d752315..6e50c8e5a7b 100644 --- a/src/vs/workbench/contrib/chat/common/chatSessionsService.ts +++ b/src/vs/workbench/contrib/chat/common/chatSessionsService.ts @@ -11,10 +11,10 @@ import { IObservable } from '../../../../base/common/observable.js'; import { ThemeIcon } from '../../../../base/common/themables.js'; import { URI } from '../../../../base/common/uri.js'; import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IChatAgentAttachmentCapabilities, IChatAgentRequest } from './chatAgents.js'; -import { IChatEditingSession } from './chatEditingService.js'; -import { IChatModel, IChatRequestVariableData, ISerializableChatModelInputState } from './chatModel.js'; -import { IChatProgress, IChatService } from './chatService.js'; +import { IChatAgentAttachmentCapabilities, IChatAgentRequest } from './participants/chatAgents.js'; +import { IChatEditingSession } from './editing/chatEditingService.js'; +import { IChatModel, IChatRequestVariableData, ISerializableChatModelInputState } from './model/chatModel.js'; +import { IChatProgress, IChatService } from './chatService/chatService.js'; export const enum ChatSessionStatus { Failed = 0, diff --git a/src/vs/workbench/contrib/chat/common/chatContext.ts b/src/vs/workbench/contrib/chat/common/contextContrib/chatContext.ts similarity index 82% rename from src/vs/workbench/contrib/chat/common/chatContext.ts rename to src/vs/workbench/contrib/chat/common/contextContrib/chatContext.ts index 915d7f5141c..854d415e208 100644 --- a/src/vs/workbench/contrib/chat/common/chatContext.ts +++ b/src/vs/workbench/contrib/chat/common/contextContrib/chatContext.ts @@ -3,9 +3,9 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; export interface IChatContextItem { icon: ThemeIcon; diff --git a/src/vs/workbench/contrib/chat/common/chatCodeMapperService.ts b/src/vs/workbench/contrib/chat/common/editing/chatCodeMapperService.ts similarity index 83% rename from src/vs/workbench/contrib/chat/common/chatCodeMapperService.ts rename to src/vs/workbench/contrib/chat/common/editing/chatCodeMapperService.ts index 25fe2146cb9..438168778c5 100644 --- a/src/vs/workbench/contrib/chat/common/chatCodeMapperService.ts +++ b/src/vs/workbench/contrib/chat/common/editing/chatCodeMapperService.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { IDisposable } from '../../../../base/common/lifecycle.js'; -import { URI } from '../../../../base/common/uri.js'; -import { TextEdit } from '../../../../editor/common/languages.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { ICellEditOperation } from '../../notebook/common/notebookCommon.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { IDisposable } from '../../../../../base/common/lifecycle.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { TextEdit } from '../../../../../editor/common/languages.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; export interface ICodeMapperResponse { textEdit: (resource: URI, textEdit: TextEdit[]) => void; diff --git a/src/vs/workbench/contrib/chat/common/chatEditingService.ts b/src/vs/workbench/contrib/chat/common/editing/chatEditingService.ts similarity index 91% rename from src/vs/workbench/contrib/chat/common/chatEditingService.ts rename to src/vs/workbench/contrib/chat/common/editing/chatEditingService.ts index 3403a2235ee..a8935339e4d 100644 --- a/src/vs/workbench/contrib/chat/common/chatEditingService.ts +++ b/src/vs/workbench/contrib/chat/common/editing/chatEditingService.ts @@ -3,26 +3,26 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { decodeHex, encodeHex, VSBuffer } from '../../../../base/common/buffer.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { CancellationError } from '../../../../base/common/errors.js'; -import { Event } from '../../../../base/common/event.js'; -import { IDisposable } from '../../../../base/common/lifecycle.js'; -import { autorunSelfDisposable, IObservable, IReader } from '../../../../base/common/observable.js'; -import { hasKey } from '../../../../base/common/types.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IDocumentDiff } from '../../../../editor/common/diff/documentDiffProvider.js'; -import { Location, TextEdit } from '../../../../editor/common/languages.js'; -import { ITextModel } from '../../../../editor/common/model.js'; -import { EditSuggestionId } from '../../../../editor/common/textModelEditSource.js'; -import { localize } from '../../../../nls.js'; -import { RawContextKey } from '../../../../platform/contextkey/common/contextkey.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IEditorPane } from '../../../common/editor.js'; -import { ICellEditOperation } from '../../notebook/common/notebookCommon.js'; -import { IChatAgentResult } from './chatAgents.js'; -import { ChatModel, IChatRequestDisablement, IChatResponseModel } from './chatModel.js'; -import { IChatMultiDiffData, IChatProgress } from './chatService.js'; +import { decodeHex, encodeHex, VSBuffer } from '../../../../../base/common/buffer.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { CancellationError } from '../../../../../base/common/errors.js'; +import { Event } from '../../../../../base/common/event.js'; +import { IDisposable } from '../../../../../base/common/lifecycle.js'; +import { autorunSelfDisposable, IObservable, IReader } from '../../../../../base/common/observable.js'; +import { hasKey } from '../../../../../base/common/types.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { IDocumentDiff } from '../../../../../editor/common/diff/documentDiffProvider.js'; +import { Location, TextEdit } from '../../../../../editor/common/languages.js'; +import { ITextModel } from '../../../../../editor/common/model.js'; +import { EditSuggestionId } from '../../../../../editor/common/textModelEditSource.js'; +import { localize } from '../../../../../nls.js'; +import { RawContextKey } from '../../../../../platform/contextkey/common/contextkey.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IEditorPane } from '../../../../common/editor.js'; +import { ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; +import { IChatAgentResult } from '../participants/chatAgents.js'; +import { ChatModel, IChatRequestDisablement, IChatResponseModel } from '../model/chatModel.js'; +import { IChatMultiDiffData, IChatProgress } from '../chatService/chatService.js'; export const IChatEditingService = createDecorator('chatEditingService'); diff --git a/src/vs/workbench/contrib/chat/common/languageModels.ts b/src/vs/workbench/contrib/chat/common/languageModels.ts index 512734b9bc4..42a89de7c3b 100644 --- a/src/vs/workbench/contrib/chat/common/languageModels.ts +++ b/src/vs/workbench/contrib/chat/common/languageModels.ts @@ -23,7 +23,7 @@ import { IStorageService, StorageScope, StorageTarget } from '../../../../platfo import { ChatEntitlement, IChatEntitlementService } from '../../../services/chat/common/chatEntitlementService.js'; import { IExtensionService } from '../../../services/extensions/common/extensions.js'; import { ExtensionsRegistry } from '../../../services/extensions/common/extensionsRegistry.js'; -import { ChatContextKeys } from './chatContextKeys.js'; +import { ChatContextKeys } from './actions/chatContextKeys.js'; export const enum ChatMessageRole { System, diff --git a/src/vs/workbench/contrib/chat/common/chatModel.ts b/src/vs/workbench/contrib/chat/common/model/chatModel.ts similarity index 97% rename from src/vs/workbench/contrib/chat/common/chatModel.ts rename to src/vs/workbench/contrib/chat/common/model/chatModel.ts index 0ffcf336cdd..ea306440ecc 100644 --- a/src/vs/workbench/contrib/chat/common/chatModel.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatModel.ts @@ -3,40 +3,40 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { asArray } from '../../../../base/common/arrays.js'; -import { softAssertNever } from '../../../../base/common/assert.js'; -import { VSBuffer, decodeHex, encodeHex } from '../../../../base/common/buffer.js'; -import { BugIndicatingError } from '../../../../base/common/errors.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { IMarkdownString, MarkdownString, isMarkdownString } from '../../../../base/common/htmlContent.js'; -import { Disposable, IDisposable, MutableDisposable } from '../../../../base/common/lifecycle.js'; -import { ResourceMap } from '../../../../base/common/map.js'; -import { revive } from '../../../../base/common/marshalling.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { equals } from '../../../../base/common/objects.js'; -import { IObservable, autorun, autorunSelfDisposable, derived, observableFromEvent, observableSignalFromEvent, observableValue, observableValueOpts } from '../../../../base/common/observable.js'; -import { basename, isEqual } from '../../../../base/common/resources.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { WithDefinedProps } from '../../../../base/common/types.js'; -import { URI, UriComponents, UriDto, isUriComponents } from '../../../../base/common/uri.js'; -import { generateUuid } from '../../../../base/common/uuid.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { OffsetRange } from '../../../../editor/common/core/ranges/offsetRange.js'; -import { ISelection } from '../../../../editor/common/core/selection.js'; -import { TextEdit } from '../../../../editor/common/languages.js'; -import { EditSuggestionId } from '../../../../editor/common/textModelEditSource.js'; -import { localize } from '../../../../nls.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { CellUri, ICellEditOperation } from '../../notebook/common/notebookCommon.js'; -import { migrateLegacyTerminalToolSpecificData } from './chat.js'; -import { IChatAgentCommand, IChatAgentData, IChatAgentResult, IChatAgentService, UserSelectedTools, reviveSerializedAgent } from './chatAgents.js'; -import { IChatEditingService, IChatEditingSession, ModifiedFileEntryState, editEntriesToMultiDiffData } from './chatEditingService.js'; -import { ChatRequestTextPart, IParsedChatRequest, reviveParsedChatRequest } from './chatParserTypes.js'; -import { ChatAgentVoteDirection, ChatAgentVoteDownReason, ChatResponseClearToPreviousToolInvocationReason, ElicitationState, IChatAgentMarkdownContentWithVulnerability, IChatClearToPreviousToolInvocation, IChatCodeCitation, IChatCommandButton, IChatConfirmation, IChatContentInlineReference, IChatContentReference, IChatEditingSessionAction, IChatElicitationRequest, IChatElicitationRequestSerialized, IChatExtensionsContent, IChatFollowup, IChatLocationData, IChatMarkdownContent, IChatMcpServersStarting, IChatModelReference, IChatMultiDiffData, IChatMultiDiffDataSerialized, IChatNotebookEdit, IChatPrepareToolInvocationPart, IChatProgress, IChatProgressMessage, IChatPullRequestContent, IChatResponseCodeblockUriPart, IChatResponseProgressFileTreeData, IChatService, IChatSessionContext, IChatSessionTiming, IChatTask, IChatTaskSerialized, IChatTextEdit, IChatThinkingPart, IChatToolInvocation, IChatToolInvocationSerialized, IChatTreeData, IChatUndoStop, IChatUsedContext, IChatWarningMessage, ResponseModelState, isIUsedContext } from './chatService.js'; +import { asArray } from '../../../../../base/common/arrays.js'; +import { softAssertNever } from '../../../../../base/common/assert.js'; +import { VSBuffer, decodeHex, encodeHex } from '../../../../../base/common/buffer.js'; +import { BugIndicatingError } from '../../../../../base/common/errors.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { IMarkdownString, MarkdownString, isMarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Disposable, IDisposable, MutableDisposable } from '../../../../../base/common/lifecycle.js'; +import { ResourceMap } from '../../../../../base/common/map.js'; +import { revive } from '../../../../../base/common/marshalling.js'; +import { Schemas } from '../../../../../base/common/network.js'; +import { equals } from '../../../../../base/common/objects.js'; +import { IObservable, autorun, autorunSelfDisposable, derived, observableFromEvent, observableSignalFromEvent, observableValue, observableValueOpts } from '../../../../../base/common/observable.js'; +import { basename, isEqual } from '../../../../../base/common/resources.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { WithDefinedProps } from '../../../../../base/common/types.js'; +import { URI, UriComponents, UriDto, isUriComponents } from '../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../base/common/uuid.js'; +import { IRange } from '../../../../../editor/common/core/range.js'; +import { OffsetRange } from '../../../../../editor/common/core/ranges/offsetRange.js'; +import { ISelection } from '../../../../../editor/common/core/selection.js'; +import { TextEdit } from '../../../../../editor/common/languages.js'; +import { EditSuggestionId } from '../../../../../editor/common/textModelEditSource.js'; +import { localize } from '../../../../../nls.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { CellUri, ICellEditOperation } from '../../../notebook/common/notebookCommon.js'; +import { migrateLegacyTerminalToolSpecificData } from '../chat.js'; +import { IChatAgentCommand, IChatAgentData, IChatAgentResult, IChatAgentService, UserSelectedTools, reviveSerializedAgent } from '../participants/chatAgents.js'; +import { IChatEditingService, IChatEditingSession, ModifiedFileEntryState, editEntriesToMultiDiffData } from '../editing/chatEditingService.js'; +import { ChatRequestTextPart, IParsedChatRequest, reviveParsedChatRequest } from '../requestParser/chatParserTypes.js'; +import { ChatAgentVoteDirection, ChatAgentVoteDownReason, ChatResponseClearToPreviousToolInvocationReason, ElicitationState, IChatAgentMarkdownContentWithVulnerability, IChatClearToPreviousToolInvocation, IChatCodeCitation, IChatCommandButton, IChatConfirmation, IChatContentInlineReference, IChatContentReference, IChatEditingSessionAction, IChatElicitationRequest, IChatElicitationRequestSerialized, IChatExtensionsContent, IChatFollowup, IChatLocationData, IChatMarkdownContent, IChatMcpServersStarting, IChatModelReference, IChatMultiDiffData, IChatMultiDiffDataSerialized, IChatNotebookEdit, IChatPrepareToolInvocationPart, IChatProgress, IChatProgressMessage, IChatPullRequestContent, IChatResponseCodeblockUriPart, IChatResponseProgressFileTreeData, IChatService, IChatSessionContext, IChatSessionTiming, IChatTask, IChatTaskSerialized, IChatTextEdit, IChatThinkingPart, IChatToolInvocation, IChatToolInvocationSerialized, IChatTreeData, IChatUndoStop, IChatUsedContext, IChatWarningMessage, ResponseModelState, isIUsedContext } from '../chatService/chatService.js'; import { LocalChatSessionUri } from './chatUri.js'; -import { ChatRequestToolReferenceEntry, IChatRequestVariableEntry } from './chatVariableEntries.js'; -import { ChatAgentLocation, ChatModeKind } from './constants.js'; -import { ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier } from './languageModels.js'; +import { ChatRequestToolReferenceEntry, IChatRequestVariableEntry } from '../attachments/chatVariableEntries.js'; +import { ChatAgentLocation, ChatModeKind } from '../constants.js'; +import { ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier } from '../languageModels.js'; export const CHAT_ATTACHABLE_IMAGE_MIME_TYPES: Record = { diff --git a/src/vs/workbench/contrib/chat/common/chatModelStore.ts b/src/vs/workbench/contrib/chat/common/model/chatModelStore.ts similarity index 90% rename from src/vs/workbench/contrib/chat/common/chatModelStore.ts rename to src/vs/workbench/contrib/chat/common/model/chatModelStore.ts index f2f8db03da1..dd3e4e19900 100644 --- a/src/vs/workbench/contrib/chat/common/chatModelStore.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatModelStore.ts @@ -3,14 +3,14 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Emitter } from '../../../../base/common/event.js'; -import { DisposableStore, IDisposable, IReference, ReferenceCollection } from '../../../../base/common/lifecycle.js'; -import { ObservableMap } from '../../../../base/common/observable.js'; -import { URI } from '../../../../base/common/uri.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { IChatEditingSession } from './chatEditingService.js'; +import { Emitter } from '../../../../../base/common/event.js'; +import { DisposableStore, IDisposable, IReference, ReferenceCollection } from '../../../../../base/common/lifecycle.js'; +import { ObservableMap } from '../../../../../base/common/observable.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { IChatEditingSession } from '../editing/chatEditingService.js'; import { ChatModel, IExportableChatData, ISerializableChatData, ISerializableChatModelInputState } from './chatModel.js'; -import { ChatAgentLocation } from './constants.js'; +import { ChatAgentLocation } from '../constants.js'; export interface IStartSessionProps { readonly initialData?: IExportableChatData | ISerializableChatData; diff --git a/src/vs/workbench/contrib/chat/browser/chatElicitationRequestPart.ts b/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.ts similarity index 83% rename from src/vs/workbench/contrib/chat/browser/chatElicitationRequestPart.ts rename to src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.ts index 42c1f86b0ef..aefae323291 100644 --- a/src/vs/workbench/contrib/chat/browser/chatElicitationRequestPart.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IAction } from '../../../../base/common/actions.js'; -import { IMarkdownString } from '../../../../base/common/htmlContent.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { IObservable, observableValue } from '../../../../base/common/observable.js'; -import { ElicitationState, IChatElicitationRequest, IChatElicitationRequestSerialized } from '../common/chatService.js'; -import { ToolDataSource } from '../common/languageModelToolsService.js'; +import { IAction } from '../../../../../../base/common/actions.js'; +import { IMarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { IObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { ElicitationState, IChatElicitationRequest, IChatElicitationRequestSerialized } from '../../chatService/chatService.js'; +import { ToolDataSource } from '../../tools/languageModelToolsService.js'; export class ChatElicitationRequestPart extends Disposable implements IChatElicitationRequest { public readonly kind = 'elicitation2'; diff --git a/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.ts b/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.ts similarity index 94% rename from src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.ts rename to src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.ts index 7c2a78bbe9b..f6a27cf8bca 100644 --- a/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.ts @@ -3,12 +3,12 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { encodeBase64 } from '../../../../../base/common/buffer.js'; -import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; -import { IObservable, ISettableObservable, observableValue } from '../../../../../base/common/observable.js'; -import { localize } from '../../../../../nls.js'; -import { ConfirmedReason, IChatExtensionsContent, IChatTodoListContent, IChatToolInputInvocationData, IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind, type IChatTerminalToolInvocationData } from '../chatService.js'; -import { IPreparedToolInvocation, isToolResultOutputDetails, IToolConfirmationMessages, IToolData, IToolProgressStep, IToolResult, ToolDataSource } from '../languageModelToolsService.js'; +import { encodeBase64 } from '../../../../../../base/common/buffer.js'; +import { IMarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { IObservable, ISettableObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { localize } from '../../../../../../nls.js'; +import { ConfirmedReason, IChatExtensionsContent, IChatTodoListContent, IChatToolInputInvocationData, IChatToolInvocation, IChatToolInvocationSerialized, ToolConfirmKind, type IChatTerminalToolInvocationData } from '../../chatService/chatService.js'; +import { IPreparedToolInvocation, isToolResultOutputDetails, IToolConfirmationMessages, IToolData, IToolProgressStep, IToolResult, ToolDataSource } from '../../tools/languageModelToolsService.js'; export class ChatToolInvocation implements IChatToolInvocation { public readonly kind: 'toolInvocation' = 'toolInvocation'; diff --git a/src/vs/workbench/contrib/chat/common/chatSessionStore.ts b/src/vs/workbench/contrib/chat/common/model/chatSessionStore.ts similarity index 93% rename from src/vs/workbench/contrib/chat/common/chatSessionStore.ts rename to src/vs/workbench/contrib/chat/common/model/chatSessionStore.ts index 5cf7af39024..03ee51514f7 100644 --- a/src/vs/workbench/contrib/chat/common/chatSessionStore.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatSessionStore.ts @@ -3,30 +3,30 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Sequencer } from '../../../../base/common/async.js'; -import { VSBuffer } from '../../../../base/common/buffer.js'; -import { toErrorMessage } from '../../../../base/common/errorMessage.js'; -import { MarkdownString } from '../../../../base/common/htmlContent.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { revive } from '../../../../base/common/marshalling.js'; -import { joinPath } from '../../../../base/common/resources.js'; -import { URI } from '../../../../base/common/uri.js'; -import { localize } from '../../../../nls.js'; -import { IEnvironmentService } from '../../../../platform/environment/common/environment.js'; -import { FileOperationResult, IFileService, toFileOperationResult } from '../../../../platform/files/common/files.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js'; -import { IUserDataProfilesService } from '../../../../platform/userDataProfile/common/userDataProfile.js'; -import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.js'; -import { Dto } from '../../../services/extensions/common/proxyIdentifier.js'; -import { ILifecycleService } from '../../../services/lifecycle/common/lifecycle.js'; -import { awaitStatsForSession } from './chat.js'; -import { ModifiedFileEntryState } from './chatEditingService.js'; +import { Sequencer } from '../../../../../base/common/async.js'; +import { VSBuffer } from '../../../../../base/common/buffer.js'; +import { toErrorMessage } from '../../../../../base/common/errorMessage.js'; +import { MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Disposable } from '../../../../../base/common/lifecycle.js'; +import { revive } from '../../../../../base/common/marshalling.js'; +import { joinPath } from '../../../../../base/common/resources.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { localize } from '../../../../../nls.js'; +import { IEnvironmentService } from '../../../../../platform/environment/common/environment.js'; +import { FileOperationResult, IFileService, toFileOperationResult } from '../../../../../platform/files/common/files.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; +import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; +import { IUserDataProfilesService } from '../../../../../platform/userDataProfile/common/userDataProfile.js'; +import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; +import { Dto } from '../../../../services/extensions/common/proxyIdentifier.js'; +import { ILifecycleService } from '../../../../services/lifecycle/common/lifecycle.js'; +import { awaitStatsForSession } from '../chat.js'; +import { ModifiedFileEntryState } from '../editing/chatEditingService.js'; import { ChatModel, ISerializableChatData, ISerializableChatDataIn, ISerializableChatsData, normalizeSerializableChatData } from './chatModel.js'; -import { IChatSessionStats, IChatSessionTiming, ResponseModelState } from './chatService.js'; +import { IChatSessionStats, IChatSessionTiming, ResponseModelState } from '../chatService/chatService.js'; import { LocalChatSessionUri } from './chatUri.js'; -import { ChatAgentLocation } from './constants.js'; +import { ChatAgentLocation } from '../constants.js'; const maxPersistedSessions = 25; diff --git a/src/vs/workbench/contrib/chat/common/chatTransferService.ts b/src/vs/workbench/contrib/chat/common/model/chatTransferService.ts similarity index 82% rename from src/vs/workbench/contrib/chat/common/chatTransferService.ts rename to src/vs/workbench/contrib/chat/common/model/chatTransferService.ts index 2bd380085b2..0d2f65a0ad7 100644 --- a/src/vs/workbench/contrib/chat/common/chatTransferService.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatTransferService.ts @@ -2,13 +2,13 @@ * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { IFileService } from '../../../../platform/files/common/files.js'; -import { IWorkspaceTrustManagementService } from '../../../../platform/workspace/common/workspaceTrust.js'; -import { areWorkspaceFoldersEmpty } from '../../../services/workspaces/common/workspaceUtils.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { URI } from '../../../../base/common/uri.js'; +import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; +import { IFileService } from '../../../../../platform/files/common/files.js'; +import { IWorkspaceTrustManagementService } from '../../../../../platform/workspace/common/workspaceTrust.js'; +import { areWorkspaceFoldersEmpty } from '../../../../services/workspaces/common/workspaceUtils.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { URI } from '../../../../../base/common/uri.js'; export const IChatTransferService = createDecorator('chatTransferService'); const transferredWorkspacesKey = 'chat.transferedWorkspaces'; diff --git a/src/vs/workbench/contrib/chat/common/chatUri.ts b/src/vs/workbench/contrib/chat/common/model/chatUri.ts similarity index 92% rename from src/vs/workbench/contrib/chat/common/chatUri.ts rename to src/vs/workbench/contrib/chat/common/model/chatUri.ts index 792a10caa5a..8bbc1ff00a6 100644 --- a/src/vs/workbench/contrib/chat/common/chatUri.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatUri.ts @@ -3,10 +3,10 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { encodeBase64, VSBuffer, decodeBase64 } from '../../../../base/common/buffer.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { URI } from '../../../../base/common/uri.js'; -import { localChatSessionType } from './chatSessionsService.js'; +import { encodeBase64, VSBuffer, decodeBase64 } from '../../../../../base/common/buffer.js'; +import { Schemas } from '../../../../../base/common/network.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { localChatSessionType } from '../chatSessionsService.js'; type ChatSessionIdentifier = { readonly chatSessionType: string; diff --git a/src/vs/workbench/contrib/chat/common/chatViewModel.ts b/src/vs/workbench/contrib/chat/common/model/chatViewModel.ts similarity index 93% rename from src/vs/workbench/contrib/chat/common/chatViewModel.ts rename to src/vs/workbench/contrib/chat/common/model/chatViewModel.ts index 447a45fae30..29d1fb2fae9 100644 --- a/src/vs/workbench/contrib/chat/common/chatViewModel.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatViewModel.ts @@ -3,24 +3,24 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Codicon } from '../../../../base/common/codicons.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { hash } from '../../../../base/common/hash.js'; -import { IMarkdownString } from '../../../../base/common/htmlContent.js'; -import { Disposable, dispose } from '../../../../base/common/lifecycle.js'; -import * as marked from '../../../../base/common/marked/marked.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { annotateVulnerabilitiesInText } from './annotations.js'; -import { getFullyQualifiedId, IChatAgentCommand, IChatAgentData, IChatAgentNameService, IChatAgentResult } from './chatAgents.js'; +import { Codicon } from '../../../../../base/common/codicons.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { hash } from '../../../../../base/common/hash.js'; +import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Disposable, dispose } from '../../../../../base/common/lifecycle.js'; +import * as marked from '../../../../../base/common/marked/marked.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { annotateVulnerabilitiesInText } from '../widget/annotations.js'; +import { getFullyQualifiedId, IChatAgentCommand, IChatAgentData, IChatAgentNameService, IChatAgentResult } from '../participants/chatAgents.js'; import { IChatModel, IChatProgressRenderableResponseContent, IChatRequestDisablement, IChatRequestModel, IChatResponseModel, IChatTextEditGroup, IResponse } from './chatModel.js'; -import { IParsedChatRequest } from './chatParserTypes.js'; -import { ChatAgentVoteDirection, ChatAgentVoteDownReason, IChatCodeCitation, IChatContentReference, IChatFollowup, IChatMcpServersStarting, IChatProgressMessage, IChatResponseErrorDetails, IChatTask, IChatUsedContext } from './chatService.js'; -import { IChatRequestVariableEntry } from './chatVariableEntries.js'; +import { IParsedChatRequest } from '../requestParser/chatParserTypes.js'; +import { ChatAgentVoteDirection, ChatAgentVoteDownReason, IChatCodeCitation, IChatContentReference, IChatFollowup, IChatMcpServersStarting, IChatProgressMessage, IChatResponseErrorDetails, IChatTask, IChatUsedContext } from '../chatService/chatService.js'; +import { IChatRequestVariableEntry } from '../attachments/chatVariableEntries.js'; import { countWords } from './chatWordCounter.js'; -import { CodeBlockModelCollection } from './codeBlockModelCollection.js'; -import { ChatStreamStatsTracker, IChatStreamStats } from './model/chatStreamStats.js'; +import { CodeBlockModelCollection } from '../widget/codeBlockModelCollection.js'; +import { ChatStreamStatsTracker, IChatStreamStats } from './chatStreamStats.js'; export function isRequestVM(item: unknown): item is IChatRequestViewModel { return !!item && typeof item === 'object' && 'message' in item; diff --git a/src/vs/workbench/contrib/chat/common/chatWordCounter.ts b/src/vs/workbench/contrib/chat/common/model/chatWordCounter.ts similarity index 96% rename from src/vs/workbench/contrib/chat/common/chatWordCounter.ts rename to src/vs/workbench/contrib/chat/common/model/chatWordCounter.ts index 82a94408020..5f95217c5a5 100644 --- a/src/vs/workbench/contrib/chat/common/chatWordCounter.ts +++ b/src/vs/workbench/contrib/chat/common/model/chatWordCounter.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import * as markedKatexExtension from '../../markdown/common/markedKatexExtension.js'; +import * as markedKatexExtension from '../../../markdown/common/markedKatexExtension.js'; export interface IWordCountResult { value: string; diff --git a/src/vs/workbench/contrib/chat/common/chatAgents.ts b/src/vs/workbench/contrib/chat/common/participants/chatAgents.ts similarity index 94% rename from src/vs/workbench/contrib/chat/common/chatAgents.ts rename to src/vs/workbench/contrib/chat/common/participants/chatAgents.ts index 4789ef0b615..b209685e82a 100644 --- a/src/vs/workbench/contrib/chat/common/chatAgents.ts +++ b/src/vs/workbench/contrib/chat/common/participants/chatAgents.ts @@ -3,32 +3,32 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { findLast } from '../../../../base/common/arraysFind.js'; -import { timeout } from '../../../../base/common/async.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { IMarkdownString } from '../../../../base/common/htmlContent.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { Disposable, IDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { revive, Revived } from '../../../../base/common/marshalling.js'; -import { IObservable, observableValue } from '../../../../base/common/observable.js'; -import { equalsIgnoreCase } from '../../../../base/common/strings.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { Command } from '../../../../editor/common/languages.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { ContextKeyExpr, IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { ExtensionIdentifier } from '../../../../platform/extensions/common/extensions.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { ILogService } from '../../../../platform/log/common/log.js'; -import { IProductService } from '../../../../platform/product/common/productService.js'; -import { asJson, IRequestService } from '../../../../platform/request/common/request.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { ChatContextKeys } from './chatContextKeys.js'; -import { IChatAgentEditedFileEvent, IChatProgressHistoryResponseContent, IChatRequestModeInstructions, IChatRequestVariableData, ISerializableChatAgentData } from './chatModel.js'; +import { findLast } from '../../../../../base/common/arraysFind.js'; +import { timeout } from '../../../../../base/common/async.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; +import { Disposable, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { revive, Revived } from '../../../../../base/common/marshalling.js'; +import { IObservable, observableValue } from '../../../../../base/common/observable.js'; +import { equalsIgnoreCase } from '../../../../../base/common/strings.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { Command } from '../../../../../editor/common/languages.js'; +import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; +import { ContextKeyExpr, IContextKey, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; +import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { ILogService } from '../../../../../platform/log/common/log.js'; +import { IProductService } from '../../../../../platform/product/common/productService.js'; +import { asJson, IRequestService } from '../../../../../platform/request/common/request.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; +import { ChatContextKeys } from '../actions/chatContextKeys.js'; +import { IChatAgentEditedFileEvent, IChatProgressHistoryResponseContent, IChatRequestModeInstructions, IChatRequestVariableData, ISerializableChatAgentData } from '../model/chatModel.js'; import { IRawChatCommandContribution } from './chatParticipantContribTypes.js'; -import { IChatFollowup, IChatLocationData, IChatProgress, IChatResponseErrorDetails, IChatTaskDto } from './chatService.js'; -import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from './constants.js'; +import { IChatFollowup, IChatLocationData, IChatProgress, IChatResponseErrorDetails, IChatTaskDto } from '../chatService/chatService.js'; +import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../constants.js'; //#region agent service, commands etc diff --git a/src/vs/workbench/contrib/chat/common/chatParticipantContribTypes.ts b/src/vs/workbench/contrib/chat/common/participants/chatParticipantContribTypes.ts similarity index 94% rename from src/vs/workbench/contrib/chat/common/chatParticipantContribTypes.ts rename to src/vs/workbench/contrib/chat/common/participants/chatParticipantContribTypes.ts index f5020a8f97f..051cead1034 100644 --- a/src/vs/workbench/contrib/chat/common/chatParticipantContribTypes.ts +++ b/src/vs/workbench/contrib/chat/common/participants/chatParticipantContribTypes.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { ChatModeKind, RawChatParticipantLocation } from './constants.js'; +import { ChatModeKind, RawChatParticipantLocation } from '../constants.js'; export interface IRawChatCommandContribution { name: string; diff --git a/src/vs/workbench/contrib/chat/common/chatSlashCommands.ts b/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.ts similarity index 85% rename from src/vs/workbench/contrib/chat/common/chatSlashCommands.ts rename to src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.ts index 6f10eac66fa..9964cfaa4d2 100644 --- a/src/vs/workbench/contrib/chat/common/chatSlashCommands.ts +++ b/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { Disposable, IDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IProgress } from '../../../../platform/progress/common/progress.js'; -import { IChatMessage } from './languageModels.js'; -import { IChatFollowup, IChatProgress, IChatResponseProgressFileTreeData } from './chatService.js'; -import { IExtensionService } from '../../../services/extensions/common/extensions.js'; -import { ChatAgentLocation, ChatModeKind } from './constants.js'; -import { URI } from '../../../../base/common/uri.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { Disposable, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IProgress } from '../../../../../platform/progress/common/progress.js'; +import { IChatMessage } from '../languageModels.js'; +import { IChatFollowup, IChatProgress, IChatResponseProgressFileTreeData } from '../chatService/chatService.js'; +import { IExtensionService } from '../../../../services/extensions/common/extensions.js'; +import { ChatAgentLocation, ChatModeKind } from '../constants.js'; +import { URI } from '../../../../../base/common/uri.js'; //#region slash service, commands etc diff --git a/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.ts b/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.ts index 6a34125ba4a..3c44061648b 100644 --- a/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.ts +++ b/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.ts @@ -16,8 +16,8 @@ import { ILabelService } from '../../../../../platform/label/common/label.js'; import { ILogService } from '../../../../../platform/log/common/log.js'; import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; -import { ChatRequestVariableSet, IChatRequestVariableEntry, isPromptFileVariableEntry, toPromptFileVariableEntry, toPromptTextVariableEntry, PromptFileVariableKind, IPromptTextVariableEntry, ChatRequestToolReferenceEntry, toToolVariableEntry } from '../chatVariableEntries.js'; -import { ILanguageModelToolsService, IToolAndToolSetEnablementMap, IToolData, VSCodeToolReference } from '../languageModelToolsService.js'; +import { ChatRequestVariableSet, IChatRequestVariableEntry, isPromptFileVariableEntry, toPromptFileVariableEntry, toPromptTextVariableEntry, PromptFileVariableKind, IPromptTextVariableEntry, ChatRequestToolReferenceEntry, toToolVariableEntry } from '../attachments/chatVariableEntries.js'; +import { ILanguageModelToolsService, IToolAndToolSetEnablementMap, IToolData, VSCodeToolReference } from '../tools/languageModelToolsService.js'; import { PromptsConfig } from './config/config.js'; import { isPromptOrInstructionsFile } from './config/promptFileLocations.js'; import { PromptsType } from './promptTypes.js'; diff --git a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.ts b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.ts index f995b002895..2ccd9e56124 100644 --- a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.ts +++ b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.ts @@ -13,8 +13,8 @@ import { CompletionContext, CompletionItem, CompletionItemKind, CompletionItemPr import { Range } from '../../../../../../editor/common/core/range.js'; import { CharCode } from '../../../../../../base/common/charCode.js'; import { getWordAtText } from '../../../../../../editor/common/core/wordHelper.js'; -import { chatVariableLeader } from '../../chatParserTypes.js'; -import { ILanguageModelToolsService } from '../../languageModelToolsService.js'; +import { chatVariableLeader } from '../../requestParser/chatParserTypes.js'; +import { ILanguageModelToolsService } from '../../tools/languageModelToolsService.js'; /** * Provides autocompletion for the variables inside prompt bodies. diff --git a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.ts b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.ts index 1930fb63db2..f229164fb33 100644 --- a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.ts +++ b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.ts @@ -8,7 +8,7 @@ import { Range } from '../../../../../../editor/common/core/range.js'; import { CodeAction, CodeActionContext, CodeActionList, CodeActionProvider, IWorkspaceFileEdit, IWorkspaceTextEdit, TextEdit } from '../../../../../../editor/common/languages.js'; import { ITextModel } from '../../../../../../editor/common/model.js'; import { localize } from '../../../../../../nls.js'; -import { ILanguageModelToolsService } from '../../languageModelToolsService.js'; +import { ILanguageModelToolsService } from '../../tools/languageModelToolsService.js'; import { getPromptsTypeForLanguageId, PromptsType } from '../promptTypes.js'; import { IPromptsService } from '../service/promptsService.js'; import { ParsedPromptFile, PromptHeaderAttributes } from '../promptFileParser.js'; diff --git a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.ts b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.ts index 065dbcdc10f..682dcd01ea2 100644 --- a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.ts +++ b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.ts @@ -10,7 +10,7 @@ import { Range } from '../../../../../../editor/common/core/range.js'; import { CompletionContext, CompletionItem, CompletionItemInsertTextRule, CompletionItemKind, CompletionItemProvider, CompletionList } from '../../../../../../editor/common/languages.js'; import { ITextModel } from '../../../../../../editor/common/model.js'; import { ILanguageModelChatMetadata, ILanguageModelsService } from '../../languageModels.js'; -import { ILanguageModelToolsService } from '../../languageModelToolsService.js'; +import { ILanguageModelToolsService } from '../../tools/languageModelToolsService.js'; import { IChatModeService } from '../../chatModes.js'; import { getPromptsTypeForLanguageId, PromptsType } from '../promptTypes.js'; import { IPromptsService } from '../service/promptsService.js'; diff --git a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.ts b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.ts index a2ffb850307..ecaad1af949 100644 --- a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.ts +++ b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.ts @@ -11,7 +11,7 @@ import { Hover, HoverContext, HoverProvider } from '../../../../../../editor/com import { ITextModel } from '../../../../../../editor/common/model.js'; import { localize } from '../../../../../../nls.js'; import { ILanguageModelChatMetadata, ILanguageModelsService } from '../../languageModels.js'; -import { ILanguageModelToolsService, ToolSet } from '../../languageModelToolsService.js'; +import { ILanguageModelToolsService, ToolSet } from '../../tools/languageModelToolsService.js'; import { IChatModeService, isBuiltinChatMode } from '../../chatModes.js'; import { getPromptsTypeForLanguageId, PromptsType } from '../promptTypes.js'; import { IPromptsService } from '../service/promptsService.js'; diff --git a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.ts b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.ts index cb05edd187c..b7e91c439c1 100644 --- a/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.ts +++ b/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.ts @@ -14,7 +14,7 @@ import { IMarkerData, IMarkerService, MarkerSeverity } from '../../../../../../p import { IChatMode, IChatModeService } from '../../chatModes.js'; import { ChatModeKind } from '../../constants.js'; import { ILanguageModelChatMetadata, ILanguageModelsService } from '../../languageModels.js'; -import { ILanguageModelToolsService, SpecedToolAliases } from '../../languageModelToolsService.js'; +import { ILanguageModelToolsService, SpecedToolAliases } from '../../tools/languageModelToolsService.js'; import { getPromptsTypeForLanguageId, PromptsType } from '../promptTypes.js'; import { GithubPromptHeaderAttributes, IArrayValue, IHeaderAttribute, IStringValue, ParsedPromptFile, PromptHeaderAttributes, Target } from '../promptFileParser.js'; import { Disposable, DisposableStore, toDisposable } from '../../../../../../base/common/lifecycle.js'; diff --git a/src/vs/workbench/contrib/chat/common/chatParserTypes.ts b/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.ts similarity index 94% rename from src/vs/workbench/contrib/chat/common/chatParserTypes.ts rename to src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.ts index 66627a288f9..47ecffdb0a5 100644 --- a/src/vs/workbench/contrib/chat/common/chatParserTypes.ts +++ b/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { revive } from '../../../../base/common/marshalling.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { IOffsetRange, OffsetRange } from '../../../../editor/common/core/ranges/offsetRange.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { IChatAgentCommand, IChatAgentData, IChatAgentService, reviveSerializedAgent } from './chatAgents.js'; -import { IChatSlashData } from './chatSlashCommands.js'; -import { IChatRequestProblemsVariable, IChatRequestVariableValue } from './chatVariables.js'; -import { ChatAgentLocation } from './constants.js'; -import { IToolData } from './languageModelToolsService.js'; -import { IChatRequestToolEntry, IChatRequestToolSetEntry, IChatRequestVariableEntry, IDiagnosticVariableEntryFilterData } from './chatVariableEntries.js'; +import { revive } from '../../../../../base/common/marshalling.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { IOffsetRange, OffsetRange } from '../../../../../editor/common/core/ranges/offsetRange.js'; +import { IRange } from '../../../../../editor/common/core/range.js'; +import { IChatAgentCommand, IChatAgentData, IChatAgentService, reviveSerializedAgent } from '../participants/chatAgents.js'; +import { IChatSlashData } from '../participants/chatSlashCommands.js'; +import { IChatRequestProblemsVariable, IChatRequestVariableValue } from '../attachments/chatVariables.js'; +import { ChatAgentLocation } from '../constants.js'; +import { IToolData } from '../tools/languageModelToolsService.js'; +import { IChatRequestToolEntry, IChatRequestToolSetEntry, IChatRequestVariableEntry, IDiagnosticVariableEntryFilterData } from '../attachments/chatVariableEntries.js'; // These are in a separate file to avoid circular dependencies with the dependencies of the parser diff --git a/src/vs/workbench/contrib/chat/common/chatRequestParser.ts b/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.ts similarity index 93% rename from src/vs/workbench/contrib/chat/common/chatRequestParser.ts rename to src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.ts index 799b9807fb3..127dc2f71df 100644 --- a/src/vs/workbench/contrib/chat/common/chatRequestParser.ts +++ b/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.ts @@ -3,17 +3,17 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { URI } from '../../../../base/common/uri.js'; -import { IPosition, Position } from '../../../../editor/common/core/position.js'; -import { Range } from '../../../../editor/common/core/range.js'; -import { OffsetRange } from '../../../../editor/common/core/ranges/offsetRange.js'; -import { IChatAgentData, IChatAgentService } from './chatAgents.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { IPosition, Position } from '../../../../../editor/common/core/position.js'; +import { Range } from '../../../../../editor/common/core/range.js'; +import { OffsetRange } from '../../../../../editor/common/core/ranges/offsetRange.js'; +import { IChatAgentData, IChatAgentService } from '../participants/chatAgents.js'; import { ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestDynamicVariablePart, ChatRequestSlashCommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, ChatRequestToolSetPart, IParsedChatRequest, IParsedChatRequestPart, chatAgentLeader, chatSubcommandLeader, chatVariableLeader } from './chatParserTypes.js'; -import { IChatSlashCommandService } from './chatSlashCommands.js'; -import { IChatVariablesService, IDynamicVariable } from './chatVariables.js'; -import { ChatAgentLocation, ChatModeKind } from './constants.js'; -import { IToolData, ToolSet } from './languageModelToolsService.js'; -import { IPromptsService } from './promptSyntax/service/promptsService.js'; +import { IChatSlashCommandService } from '../participants/chatSlashCommands.js'; +import { IChatVariablesService, IDynamicVariable } from '../attachments/chatVariables.js'; +import { ChatAgentLocation, ChatModeKind } from '../constants.js'; +import { IToolData, ToolSet } from '../tools/languageModelToolsService.js'; +import { IPromptsService } from '../promptSyntax/service/promptsService.js'; const agentReg = /^@([\w_\-\.]+)(?=(\s|$|\b))/i; // An @-agent const variableReg = /^#([\w_\-]+)(:\d+)?(?=(\s|$|\b))/i; // A #-variable with an optional numeric : arg (@response:2) diff --git a/src/vs/workbench/contrib/chat/common/chatUrlFetchingConfirmation.ts b/src/vs/workbench/contrib/chat/common/tools/builtinTools/chatUrlFetchingConfirmation.ts similarity index 92% rename from src/vs/workbench/contrib/chat/common/chatUrlFetchingConfirmation.ts rename to src/vs/workbench/contrib/chat/common/tools/builtinTools/chatUrlFetchingConfirmation.ts index 39b4946bdca..a21adf7211a 100644 --- a/src/vs/workbench/contrib/chat/common/chatUrlFetchingConfirmation.ts +++ b/src/vs/workbench/contrib/chat/common/tools/builtinTools/chatUrlFetchingConfirmation.ts @@ -3,23 +3,23 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Codicon } from '../../../../base/common/codicons.js'; -import { DisposableStore } from '../../../../base/common/lifecycle.js'; -import { ResourceMap } from '../../../../base/common/map.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { localize } from '../../../../nls.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IQuickInputButton, IQuickInputService, IQuickTreeItem } from '../../../../platform/quickinput/common/quickInput.js'; -import { IPreferencesService } from '../../../services/preferences/common/preferences.js'; -import { ConfirmedReason, ToolConfirmKind } from './chatService.js'; -import { ChatConfiguration } from './constants.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { ResourceMap } from '../../../../../../base/common/map.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { localize } from '../../../../../../nls.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IQuickInputButton, IQuickInputService, IQuickTreeItem } from '../../../../../../platform/quickinput/common/quickInput.js'; +import { IPreferencesService } from '../../../../../services/preferences/common/preferences.js'; +import { ConfirmedReason, ToolConfirmKind } from '../../chatService/chatService.js'; +import { ChatConfiguration } from '../../constants.js'; import { ILanguageModelToolConfirmationActions, ILanguageModelToolConfirmationContribution, ILanguageModelToolConfirmationContributionQuickTreeItem, ILanguageModelToolConfirmationRef -} from './languageModelToolsConfirmationService.js'; +} from '../languageModelToolsConfirmationService.js'; import { extractUrlPatterns, getPatternLabel, isUrlApproved, IUrlApprovalSettings } from './chatUrlFetchingPatterns.js'; const trashButton: IQuickInputButton = { diff --git a/src/vs/workbench/contrib/chat/common/chatUrlFetchingPatterns.ts b/src/vs/workbench/contrib/chat/common/tools/builtinTools/chatUrlFetchingPatterns.ts similarity index 95% rename from src/vs/workbench/contrib/chat/common/chatUrlFetchingPatterns.ts rename to src/vs/workbench/contrib/chat/common/tools/builtinTools/chatUrlFetchingPatterns.ts index c5189f35863..4112a6da011 100644 --- a/src/vs/workbench/contrib/chat/common/chatUrlFetchingPatterns.ts +++ b/src/vs/workbench/contrib/chat/common/tools/builtinTools/chatUrlFetchingPatterns.ts @@ -3,9 +3,9 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { URI } from '../../../../base/common/uri.js'; -import { normalizeURL } from '../../../../platform/url/common/trustedDomains.js'; -import { testUrlMatchesGlob } from '../../../../platform/url/common/urlGlob.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { normalizeURL } from '../../../../../../platform/url/common/trustedDomains.js'; +import { testUrlMatchesGlob } from '../../../../../../platform/url/common/urlGlob.js'; /** * Approval settings for a URL pattern diff --git a/src/vs/workbench/contrib/chat/common/tools/confirmationTool.ts b/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.ts similarity index 93% rename from src/vs/workbench/contrib/chat/common/tools/confirmationTool.ts rename to src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.ts index be0ea9ce410..7548a6b36e2 100644 --- a/src/vs/workbench/contrib/chat/common/tools/confirmationTool.ts +++ b/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.ts @@ -3,9 +3,9 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { IChatTerminalToolInvocationData } from '../chatService.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { IChatTerminalToolInvocationData } from '../../chatService/chatService.js'; import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolInvocationPresentation, ToolProgress } from '../languageModelToolsService.js'; export const ConfirmationToolId = 'vscode_get_confirmation'; diff --git a/src/vs/workbench/contrib/chat/common/tools/editFileTool.ts b/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.ts similarity index 84% rename from src/vs/workbench/contrib/chat/common/tools/editFileTool.ts rename to src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.ts index d620262ad00..8a582a9210d 100644 --- a/src/vs/workbench/contrib/chat/common/tools/editFileTool.ts +++ b/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.ts @@ -3,18 +3,18 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { IDisposable } from '../../../../../base/common/lifecycle.js'; -import { autorun } from '../../../../../base/common/observable.js'; -import { URI, UriComponents } from '../../../../../base/common/uri.js'; -import { CellUri } from '../../../notebook/common/notebookCommon.js'; -import { INotebookService } from '../../../notebook/common/notebookService.js'; -import { ICodeMapperService } from '../../common/chatCodeMapperService.js'; -import { ChatModel } from '../../common/chatModel.js'; -import { IChatService } from '../../common/chatService.js'; -import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolInvocationPresentation, ToolProgress } from '../../common/languageModelToolsService.js'; -import { LocalChatSessionUri } from '../chatUri.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { autorun } from '../../../../../../base/common/observable.js'; +import { URI, UriComponents } from '../../../../../../base/common/uri.js'; +import { CellUri } from '../../../../notebook/common/notebookCommon.js'; +import { INotebookService } from '../../../../notebook/common/notebookService.js'; +import { ICodeMapperService } from '../../editing/chatCodeMapperService.js'; +import { ChatModel } from '../../model/chatModel.js'; +import { IChatService } from '../../chatService/chatService.js'; +import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolInvocationPresentation, ToolProgress } from '../languageModelToolsService.js'; +import { LocalChatSessionUri } from '../../model/chatUri.js'; export const ExtensionEditToolId = 'vscode_editFile'; export const InternalEditToolId = 'vscode_editFile_internal'; diff --git a/src/vs/workbench/contrib/chat/common/tools/manageTodoListTool.ts b/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.ts similarity index 95% rename from src/vs/workbench/contrib/chat/common/tools/manageTodoListTool.ts rename to src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.ts index dd4fbf3717c..4196cc92735 100644 --- a/src/vs/workbench/contrib/chat/common/tools/manageTodoListTool.ts +++ b/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.ts @@ -3,10 +3,10 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; import { IToolData, IToolImpl, @@ -16,13 +16,13 @@ import { IToolInvocationPreparationContext, IPreparedToolInvocation } from '../languageModelToolsService.js'; -import { ILogService } from '../../../../../platform/log/common/log.js'; -import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; +import { ILogService } from '../../../../../../platform/log/common/log.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; import { IChatTodo, IChatTodoListService } from '../chatTodoListService.js'; -import { localize } from '../../../../../nls.js'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { chatSessionResourceToId, LocalChatSessionUri } from '../chatUri.js'; +import { localize } from '../../../../../../nls.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { chatSessionResourceToId, LocalChatSessionUri } from '../../model/chatUri.js'; export const TodoListToolWriteOnlySettingId = 'chat.todoListTool.writeOnly'; export const TodoListToolDescriptionFieldSettingId = 'chat.todoListTool.descriptionField'; diff --git a/src/vs/workbench/contrib/chat/common/tools/runSubagentTool.ts b/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.ts similarity index 89% rename from src/vs/workbench/contrib/chat/common/tools/runSubagentTool.ts rename to src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.ts index 67ffed45d57..e9001142f86 100644 --- a/src/vs/workbench/contrib/chat/common/tools/runSubagentTool.ts +++ b/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.ts @@ -3,24 +3,24 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Event } from '../../../../../base/common/event.js'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { IJSONSchema, IJSONSchemaMap } from '../../../../../base/common/jsonSchema.js'; -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { localize } from '../../../../../nls.js'; -import { IConfigurationChangeEvent, IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { ILogService } from '../../../../../platform/log/common/log.js'; -import { IChatAgentRequest, IChatAgentService, UserSelectedTools } from '../chatAgents.js'; -import { ChatModel, IChatRequestModeInstructions } from '../chatModel.js'; -import { IChatModeService } from '../chatModes.js'; -import { IChatProgress, IChatService } from '../chatService.js'; -import { ChatRequestVariableSet } from '../chatVariableEntries.js'; -import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../constants.js'; -import { ILanguageModelChatMetadata, ILanguageModelsService } from '../languageModels.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { IJSONSchema, IJSONSchemaMap } from '../../../../../../base/common/jsonSchema.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { localize } from '../../../../../../nls.js'; +import { IConfigurationChangeEvent, IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { ILogService } from '../../../../../../platform/log/common/log.js'; +import { IChatAgentRequest, IChatAgentService, UserSelectedTools } from '../../participants/chatAgents.js'; +import { ChatModel, IChatRequestModeInstructions } from '../../model/chatModel.js'; +import { IChatModeService } from '../../chatModes.js'; +import { IChatProgress, IChatService } from '../../chatService/chatService.js'; +import { ChatRequestVariableSet } from '../../attachments/chatVariableEntries.js'; +import { ChatAgentLocation, ChatConfiguration, ChatModeKind } from '../../constants.js'; +import { ILanguageModelChatMetadata, ILanguageModelsService } from '../../languageModels.js'; import { CountTokensCallback, ILanguageModelToolsService, @@ -36,7 +36,7 @@ import { VSCodeToolReference, IToolAndToolSetEnablementMap } from '../languageModelToolsService.js'; -import { ComputeAutomaticInstructions } from '../promptSyntax/computeAutomaticInstructions.js'; +import { ComputeAutomaticInstructions } from '../../promptSyntax/computeAutomaticInstructions.js'; import { ManageTodoListToolToolId } from './manageTodoListTool.js'; import { createToolSimpleTextResult } from './toolHelpers.js'; diff --git a/src/vs/workbench/contrib/chat/common/tools/toolHelpers.ts b/src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.ts similarity index 100% rename from src/vs/workbench/contrib/chat/common/tools/toolHelpers.ts rename to src/vs/workbench/contrib/chat/common/tools/builtinTools/toolHelpers.ts diff --git a/src/vs/workbench/contrib/chat/common/tools/tools.ts b/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.ts similarity index 84% rename from src/vs/workbench/contrib/chat/common/tools/tools.ts rename to src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.ts index 04620784fac..38eaedc5d9a 100644 --- a/src/vs/workbench/contrib/chat/common/tools/tools.ts +++ b/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.ts @@ -3,14 +3,14 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { localize } from '../../../../../nls.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; -import { IWorkbenchContribution } from '../../../../common/contributions.js'; -import { ILanguageModelToolsService, SpecedToolAliases, ToolDataSource } from '../../common/languageModelToolsService.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { localize } from '../../../../../../nls.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { IInstantiationService } from '../../../../../../platform/instantiation/common/instantiation.js'; +import { IWorkbenchContribution } from '../../../../../common/contributions.js'; +import { ILanguageModelToolsService, SpecedToolAliases, ToolDataSource } from '../languageModelToolsService.js'; import { ConfirmationTool, ConfirmationToolData } from './confirmationTool.js'; import { EditTool, EditToolData } from './editFileTool.js'; import { createManageTodoListToolData, ManageTodoListTool, TodoListToolDescriptionFieldSettingId, TodoListToolWriteOnlySettingId } from './manageTodoListTool.js'; diff --git a/src/vs/workbench/contrib/chat/common/chatTodoListService.ts b/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.ts similarity index 85% rename from src/vs/workbench/contrib/chat/common/chatTodoListService.ts rename to src/vs/workbench/contrib/chat/common/tools/chatTodoListService.ts index 716f4309a49..b950bf3ccdc 100644 --- a/src/vs/workbench/contrib/chat/common/chatTodoListService.ts +++ b/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.ts @@ -3,13 +3,13 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Emitter, Event } from '../../../../base/common/event.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { URI } from '../../../../base/common/uri.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { Memento } from '../../../common/memento.js'; -import { chatSessionResourceToId } from './chatUri.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { Disposable } from '../../../../../base/common/lifecycle.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; +import { Memento } from '../../../../common/memento.js'; +import { chatSessionResourceToId } from '../model/chatUri.js'; export interface IChatTodo { id: number; diff --git a/src/vs/workbench/contrib/chat/common/languageModelToolsConfirmationService.ts b/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.ts similarity index 91% rename from src/vs/workbench/contrib/chat/common/languageModelToolsConfirmationService.ts rename to src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.ts index a34a79660f1..d85a081db7c 100644 --- a/src/vs/workbench/contrib/chat/common/languageModelToolsConfirmationService.ts +++ b/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.ts @@ -3,10 +3,10 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IDisposable } from '../../../../base/common/lifecycle.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IQuickInputButton, IQuickTreeItem } from '../../../../platform/quickinput/common/quickInput.js'; -import { ConfirmedReason } from './chatService.js'; +import { IDisposable } from '../../../../../base/common/lifecycle.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IQuickInputButton, IQuickTreeItem } from '../../../../../platform/quickinput/common/quickInput.js'; +import { ConfirmedReason } from '../chatService/chatService.js'; import { IToolData, ToolDataSource } from './languageModelToolsService.js'; export interface ILanguageModelToolConfirmationActions { diff --git a/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.ts b/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.ts index 0b2f1b8cb39..ac3977f1424 100644 --- a/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.ts +++ b/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.ts @@ -21,7 +21,7 @@ import { IWorkbenchContribution } from '../../../../common/contributions.js'; import { Extensions, IExtensionFeaturesRegistry, IExtensionFeatureTableRenderer, IRenderedData, IRowData, ITableData } from '../../../../services/extensionManagement/common/extensionFeatures.js'; import { isProposedApiEnabled } from '../../../../services/extensions/common/extensions.js'; import * as extensionsRegistry from '../../../../services/extensions/common/extensionsRegistry.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource, ToolSet } from '../languageModelToolsService.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource, ToolSet } from './languageModelToolsService.js'; import { toolsParametersSchemaSchemaId } from './languageModelToolsParametersSchema.js'; export interface IRawToolContribution { diff --git a/src/vs/workbench/contrib/chat/common/languageModelToolsService.ts b/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.ts similarity index 89% rename from src/vs/workbench/contrib/chat/common/languageModelToolsService.ts rename to src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.ts index 7ce9ecfea10..601142acc97 100644 --- a/src/vs/workbench/contrib/chat/common/languageModelToolsService.ts +++ b/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.ts @@ -3,31 +3,31 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Separator } from '../../../../base/common/actions.js'; -import { VSBuffer } from '../../../../base/common/buffer.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { Event } from '../../../../base/common/event.js'; -import { IMarkdownString } from '../../../../base/common/htmlContent.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { IJSONSchema } from '../../../../base/common/jsonSchema.js'; -import { Disposable, IDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { derived, IObservable, IReader, ITransaction, ObservableSet } from '../../../../base/common/observable.js'; -import { ThemeIcon } from '../../../../base/common/themables.js'; -import { URI } from '../../../../base/common/uri.js'; -import { Location } from '../../../../editor/common/languages.js'; -import { localize } from '../../../../nls.js'; -import { ContextKeyExpression } from '../../../../platform/contextkey/common/contextkey.js'; -import { ExtensionIdentifier } from '../../../../platform/extensions/common/extensions.js'; -import { ByteSize } from '../../../../platform/files/common/files.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IProgress } from '../../../../platform/progress/common/progress.js'; -import { UserSelectedTools } from './chatAgents.js'; -import { IVariableReference } from './chatModes.js'; -import { IChatExtensionsContent, IChatTodoListContent, IChatToolInputInvocationData, type IChatTerminalToolInvocationData } from './chatService.js'; -import { ChatRequestToolReferenceEntry } from './chatVariableEntries.js'; -import { LanguageModelPartAudience } from './languageModels.js'; -import { PromptElementJSON, stringifyPromptElementJSON } from './tools/promptTsxTypes.js'; +import { Separator } from '../../../../../base/common/actions.js'; +import { VSBuffer } from '../../../../../base/common/buffer.js'; +import { CancellationToken } from '../../../../../base/common/cancellation.js'; +import { Event } from '../../../../../base/common/event.js'; +import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; +import { IJSONSchema } from '../../../../../base/common/jsonSchema.js'; +import { Disposable, IDisposable, toDisposable } from '../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../base/common/network.js'; +import { derived, IObservable, IReader, ITransaction, ObservableSet } from '../../../../../base/common/observable.js'; +import { ThemeIcon } from '../../../../../base/common/themables.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { Location } from '../../../../../editor/common/languages.js'; +import { localize } from '../../../../../nls.js'; +import { ContextKeyExpression } from '../../../../../platform/contextkey/common/contextkey.js'; +import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js'; +import { ByteSize } from '../../../../../platform/files/common/files.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IProgress } from '../../../../../platform/progress/common/progress.js'; +import { UserSelectedTools } from '../participants/chatAgents.js'; +import { IVariableReference } from '../chatModes.js'; +import { IChatExtensionsContent, IChatTodoListContent, IChatToolInputInvocationData, type IChatTerminalToolInvocationData } from '../chatService/chatService.js'; +import { ChatRequestToolReferenceEntry } from '../attachments/chatVariableEntries.js'; +import { LanguageModelPartAudience } from '../languageModels.js'; +import { PromptElementJSON, stringifyPromptElementJSON } from './promptTsxTypes.js'; export interface IToolData { readonly id: string; diff --git a/src/vs/workbench/contrib/chat/common/voiceChatService.ts b/src/vs/workbench/contrib/chat/common/voiceChatService.ts index bcf91b3a5b5..39cc65a7f18 100644 --- a/src/vs/workbench/contrib/chat/common/voiceChatService.ts +++ b/src/vs/workbench/contrib/chat/common/voiceChatService.ts @@ -10,9 +10,9 @@ import { Disposable, DisposableStore } from '../../../../base/common/lifecycle.j import { rtrim } from '../../../../base/common/strings.js'; import { IContextKey, IContextKeyService, RawContextKey } from '../../../../platform/contextkey/common/contextkey.js'; import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IChatAgentService } from './chatAgents.js'; -import { IChatModel } from './chatModel.js'; -import { chatAgentLeader, chatSubcommandLeader } from './chatParserTypes.js'; +import { IChatAgentService } from './participants/chatAgents.js'; +import { IChatModel } from './model/chatModel.js'; +import { chatAgentLeader, chatSubcommandLeader } from './requestParser/chatParserTypes.js'; import { ISpeechService, ISpeechToTextEvent, SpeechToTextStatus } from '../../speech/common/speechService.js'; export const IVoiceChatService = createDecorator('voiceChatService'); diff --git a/src/vs/workbench/contrib/chat/common/annotations.ts b/src/vs/workbench/contrib/chat/common/widget/annotations.ts similarity index 93% rename from src/vs/workbench/contrib/chat/common/annotations.ts rename to src/vs/workbench/contrib/chat/common/widget/annotations.ts index 5e9a8cb4d23..fad9bf57793 100644 --- a/src/vs/workbench/contrib/chat/common/annotations.ts +++ b/src/vs/workbench/contrib/chat/common/widget/annotations.ts @@ -2,14 +2,14 @@ * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { findLastIdx } from '../../../../base/common/arraysFind.js'; -import { MarkdownString } from '../../../../base/common/htmlContent.js'; -import { basename } from '../../../../base/common/resources.js'; -import { URI } from '../../../../base/common/uri.js'; -import { IRange } from '../../../../editor/common/core/range.js'; -import { isLocation } from '../../../../editor/common/languages.js'; -import { IChatProgressRenderableResponseContent, IChatProgressResponseContent, appendMarkdownString, canMergeMarkdownStrings } from './chatModel.js'; -import { IChatAgentVulnerabilityDetails, IChatMarkdownContent } from './chatService.js'; +import { findLastIdx } from '../../../../../base/common/arraysFind.js'; +import { MarkdownString } from '../../../../../base/common/htmlContent.js'; +import { basename } from '../../../../../base/common/resources.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { IRange } from '../../../../../editor/common/core/range.js'; +import { isLocation } from '../../../../../editor/common/languages.js'; +import { IChatProgressRenderableResponseContent, IChatProgressResponseContent, appendMarkdownString, canMergeMarkdownStrings } from '../model/chatModel.js'; +import { IChatAgentVulnerabilityDetails, IChatMarkdownContent } from '../chatService/chatService.js'; export const contentRefUrl = 'http://_vscodecontentref_'; // must be lowercase for URI diff --git a/src/vs/workbench/contrib/chat/common/chatColors.ts b/src/vs/workbench/contrib/chat/common/widget/chatColors.ts similarity index 94% rename from src/vs/workbench/contrib/chat/common/chatColors.ts rename to src/vs/workbench/contrib/chat/common/widget/chatColors.ts index 43eca32a105..bc5d77c816a 100644 --- a/src/vs/workbench/contrib/chat/common/chatColors.ts +++ b/src/vs/workbench/contrib/chat/common/widget/chatColors.ts @@ -3,9 +3,9 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Color, RGBA } from '../../../../base/common/color.js'; -import { localize } from '../../../../nls.js'; -import { badgeBackground, badgeForeground, contrastBorder, editorBackground, editorSelectionBackground, editorWidgetBackground, foreground, registerColor, transparent } from '../../../../platform/theme/common/colorRegistry.js'; +import { Color, RGBA } from '../../../../../base/common/color.js'; +import { localize } from '../../../../../nls.js'; +import { badgeBackground, badgeForeground, contrastBorder, editorBackground, editorSelectionBackground, editorWidgetBackground, foreground, registerColor, transparent } from '../../../../../platform/theme/common/colorRegistry.js'; export const chatRequestBorder = registerColor( 'chat.requestBorder', diff --git a/src/vs/workbench/contrib/chat/common/chatLayoutService.ts b/src/vs/workbench/contrib/chat/common/widget/chatLayoutService.ts similarity index 78% rename from src/vs/workbench/contrib/chat/common/chatLayoutService.ts rename to src/vs/workbench/contrib/chat/common/widget/chatLayoutService.ts index 62c5bff443c..4fbe693af01 100644 --- a/src/vs/workbench/contrib/chat/common/chatLayoutService.ts +++ b/src/vs/workbench/contrib/chat/common/widget/chatLayoutService.ts @@ -3,8 +3,8 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IObservable } from '../../../../base/common/observable.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; +import { IObservable } from '../../../../../base/common/observable.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; export const IChatLayoutService = createDecorator('chatLayoutService'); diff --git a/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.ts b/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.ts similarity index 87% rename from src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.ts rename to src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.ts index 2ea2bf75975..d1d069424dd 100644 --- a/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.ts +++ b/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { decodeBase64, VSBuffer } from '../../../../base/common/buffer.js'; -import { Event } from '../../../../base/common/event.js'; -import { Disposable, IDisposable } from '../../../../base/common/lifecycle.js'; -import { newWriteableStream, ReadableStreamEvents } from '../../../../base/common/stream.js'; -import { URI } from '../../../../base/common/uri.js'; -import { createFileSystemProviderError, FileSystemProviderCapabilities, FileSystemProviderErrorCode, FileType, IFileService, IFileSystemProviderWithFileAtomicReadCapability, IFileSystemProviderWithFileReadStreamCapability, IFileSystemProviderWithFileReadWriteCapability, IStat } from '../../../../platform/files/common/files.js'; -import { IWorkbenchContribution } from '../../../common/contributions.js'; -import { ChatResponseResource } from './chatModel.js'; -import { IChatService, IChatToolInvocation, IChatToolInvocationSerialized } from './chatService.js'; -import { isToolResultInputOutputDetails } from './languageModelToolsService.js'; +import { decodeBase64, VSBuffer } from '../../../../../base/common/buffer.js'; +import { Event } from '../../../../../base/common/event.js'; +import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; +import { newWriteableStream, ReadableStreamEvents } from '../../../../../base/common/stream.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { createFileSystemProviderError, FileSystemProviderCapabilities, FileSystemProviderErrorCode, FileType, IFileService, IFileSystemProviderWithFileAtomicReadCapability, IFileSystemProviderWithFileReadStreamCapability, IFileSystemProviderWithFileReadWriteCapability, IStat } from '../../../../../platform/files/common/files.js'; +import { IWorkbenchContribution } from '../../../../common/contributions.js'; +import { ChatResponseResource } from '../model/chatModel.js'; +import { IChatService, IChatToolInvocation, IChatToolInvocationSerialized } from '../chatService/chatService.js'; +import { isToolResultInputOutputDetails } from '../tools/languageModelToolsService.js'; export class ChatResponseResourceFileSystemProvider extends Disposable implements IWorkbenchContribution, diff --git a/src/vs/workbench/contrib/chat/common/chatWidgetHistoryService.ts b/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.ts similarity index 91% rename from src/vs/workbench/contrib/chat/common/chatWidgetHistoryService.ts rename to src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.ts index b15095e15a0..9f511624920 100644 --- a/src/vs/workbench/contrib/chat/common/chatWidgetHistoryService.ts +++ b/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { equals as arraysEqual } from '../../../../base/common/arrays.js'; -import { Emitter, Event } from '../../../../base/common/event.js'; -import { Disposable } from '../../../../base/common/lifecycle.js'; -import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js'; -import { Memento } from '../../../common/memento.js'; -import { IChatModelInputState } from './chatModel.js'; -import { CHAT_PROVIDER_ID } from './chatParticipantContribTypes.js'; -import { IChatRequestVariableEntry } from './chatVariableEntries.js'; -import { ChatAgentLocation, ChatModeKind } from './constants.js'; +import { equals as arraysEqual } from '../../../../../base/common/arrays.js'; +import { Emitter, Event } from '../../../../../base/common/event.js'; +import { Disposable } from '../../../../../base/common/lifecycle.js'; +import { createDecorator } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; +import { Memento } from '../../../../common/memento.js'; +import { IChatModelInputState } from '../model/chatModel.js'; +import { CHAT_PROVIDER_ID } from '../participants/chatParticipantContribTypes.js'; +import { IChatRequestVariableEntry } from '../attachments/chatVariableEntries.js'; +import { ChatAgentLocation, ChatModeKind } from '../constants.js'; interface IChatHistoryEntry { text: string; diff --git a/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.ts b/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.ts similarity index 90% rename from src/vs/workbench/contrib/chat/common/codeBlockModelCollection.ts rename to src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.ts index b059297fb05..b6396b21050 100644 --- a/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.ts +++ b/src/vs/workbench/contrib/chat/common/widget/codeBlockModelCollection.ts @@ -3,19 +3,19 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { encodeBase64, VSBuffer } from '../../../../base/common/buffer.js'; -import { Iterable } from '../../../../base/common/iterator.js'; -import { Disposable, IReference } from '../../../../base/common/lifecycle.js'; -import { Schemas } from '../../../../base/common/network.js'; -import { URI } from '../../../../base/common/uri.js'; -import { Range } from '../../../../editor/common/core/range.js'; -import { ILanguageService } from '../../../../editor/common/languages/language.js'; -import { PLAINTEXT_LANGUAGE_ID } from '../../../../editor/common/languages/modesRegistry.js'; -import { EndOfLinePreference, ITextModel } from '../../../../editor/common/model.js'; -import { IResolvedTextEditorModel, ITextModelService } from '../../../../editor/common/services/resolverService.js'; +import { encodeBase64, VSBuffer } from '../../../../../base/common/buffer.js'; +import { Iterable } from '../../../../../base/common/iterator.js'; +import { Disposable, IReference } from '../../../../../base/common/lifecycle.js'; +import { Schemas } from '../../../../../base/common/network.js'; +import { URI } from '../../../../../base/common/uri.js'; +import { Range } from '../../../../../editor/common/core/range.js'; +import { ILanguageService } from '../../../../../editor/common/languages/language.js'; +import { PLAINTEXT_LANGUAGE_ID } from '../../../../../editor/common/languages/modesRegistry.js'; +import { EndOfLinePreference, ITextModel } from '../../../../../editor/common/model.js'; +import { IResolvedTextEditorModel, ITextModelService } from '../../../../../editor/common/services/resolverService.js'; import { extractCodeblockUrisFromText, extractVulnerabilitiesFromText, IMarkdownVulnerability } from './annotations.js'; -import { isChatContentVariableReference } from './chatService.js'; -import { IChatRequestViewModel, IChatResponseViewModel, isResponseVM } from './chatViewModel.js'; +import { isChatContentVariableReference } from '../chatService/chatService.js'; +import { IChatRequestViewModel, IChatResponseViewModel, isResponseVM } from '../model/chatViewModel.js'; interface CodeBlockContent { diff --git a/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.ts b/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.ts similarity index 90% rename from src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.ts rename to src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.ts index 779c011f797..5d5f437c1db 100644 --- a/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.ts +++ b/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.ts @@ -3,6 +3,6 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { localize } from '../../../../../nls.js'; +import { localize } from '../../../../../../nls.js'; export const DEFAULT_MODEL_PICKER_CATEGORY = { label: localize('chat.modelPicker.other', "Other Models"), order: Number.MAX_SAFE_INTEGER }; diff --git a/src/vs/workbench/contrib/chat/electron-browser/actions/chatDeveloperActions.ts b/src/vs/workbench/contrib/chat/electron-browser/actions/chatDeveloperActions.ts index 72b00481cda..ed1be679048 100644 --- a/src/vs/workbench/contrib/chat/electron-browser/actions/chatDeveloperActions.ts +++ b/src/vs/workbench/contrib/chat/electron-browser/actions/chatDeveloperActions.ts @@ -8,8 +8,8 @@ import { localize2 } from '../../../../../nls.js'; import { Categories } from '../../../../../platform/action/common/actionCommonCategories.js'; import { Action2, registerAction2 } from '../../../../../platform/actions/common/actions.js'; import { INativeHostService } from '../../../../../platform/native/common/native.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatService } from '../../common/chatService.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatService } from '../../common/chatService/chatService.js'; export function registerChatDeveloperActions() { registerAction2(OpenChatStorageFolderAction); diff --git a/src/vs/workbench/contrib/chat/electron-browser/actions/voiceChatActions.ts b/src/vs/workbench/contrib/chat/electron-browser/actions/voiceChatActions.ts index bc3089ddf0c..48a9aab9bf9 100644 --- a/src/vs/workbench/contrib/chat/electron-browser/actions/voiceChatActions.ts +++ b/src/vs/workbench/contrib/chat/electron-browser/actions/voiceChatActions.ts @@ -46,11 +46,11 @@ import { TextToSpeechInProgress as GlobalTextToSpeechInProgress, HasSpeechProvid import { CHAT_CATEGORY } from '../../browser/actions/chatActions.js'; import { IChatExecuteActionContext } from '../../browser/actions/chatExecuteActions.js'; import { IChatWidget, IChatWidgetService, IQuickChatService } from '../../browser/chat.js'; -import { IChatAgentService } from '../../common/chatAgents.js'; -import { ChatContextKeys } from '../../common/chatContextKeys.js'; -import { IChatResponseModel } from '../../common/chatModel.js'; -import { KEYWORD_ACTIVIATION_SETTING_ID } from '../../common/chatService.js'; -import { ChatResponseViewModel, IChatResponseViewModel, isResponseVM } from '../../common/chatViewModel.js'; +import { IChatAgentService } from '../../common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../common/actions/chatContextKeys.js'; +import { IChatResponseModel } from '../../common/model/chatModel.js'; +import { KEYWORD_ACTIVIATION_SETTING_ID } from '../../common/chatService/chatService.js'; +import { ChatResponseViewModel, IChatResponseViewModel, isResponseVM } from '../../common/model/chatViewModel.js'; import { ChatAgentLocation } from '../../common/constants.js'; import { VoiceChatInProgress as GlobalVoiceChatInProgress, IVoiceChatService } from '../../common/voiceChatService.js'; import './media/voiceChatActions.css'; diff --git a/src/vs/workbench/contrib/chat/electron-browser/tools/fetchPageTool.ts b/src/vs/workbench/contrib/chat/electron-browser/builtInTools/fetchPageTool.ts similarity index 97% rename from src/vs/workbench/contrib/chat/electron-browser/tools/fetchPageTool.ts rename to src/vs/workbench/contrib/chat/electron-browser/builtInTools/fetchPageTool.ts index ba9f76a290a..d920da6f8af 100644 --- a/src/vs/workbench/contrib/chat/electron-browser/tools/fetchPageTool.ts +++ b/src/vs/workbench/contrib/chat/electron-browser/builtInTools/fetchPageTool.ts @@ -15,11 +15,11 @@ import { IFileService } from '../../../../../platform/files/common/files.js'; import { IWebContentExtractorService, WebContentExtractResult } from '../../../../../platform/webContentExtractor/common/webContentExtractor.js'; import { detectEncodingFromBuffer } from '../../../../services/textfile/common/encoding.js'; import { ITrustedDomainService } from '../../../url/browser/trustedDomainService.js'; -import { IChatService } from '../../common/chatService.js'; -import { LocalChatSessionUri } from '../../common/chatUri.js'; +import { IChatService } from '../../common/chatService/chatService.js'; +import { LocalChatSessionUri } from '../../common/model/chatUri.js'; import { ChatImageMimeType } from '../../common/languageModels.js'; -import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, IToolResultDataPart, IToolResultTextPart, ToolDataSource, ToolProgress } from '../../common/languageModelToolsService.js'; -import { InternalFetchWebPageToolId } from '../../common/tools/tools.js'; +import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, IToolResultDataPart, IToolResultTextPart, ToolDataSource, ToolProgress } from '../../common/tools/languageModelToolsService.js'; +import { InternalFetchWebPageToolId } from '../../common/tools/builtinTools/tools.js'; export const FetchWebPageToolData: IToolData = { id: InternalFetchWebPageToolId, diff --git a/src/vs/workbench/contrib/chat/electron-browser/builtInTools/tools.ts b/src/vs/workbench/contrib/chat/electron-browser/builtInTools/tools.ts new file mode 100644 index 00000000000..7eae1ea5e71 --- /dev/null +++ b/src/vs/workbench/contrib/chat/electron-browser/builtInTools/tools.ts @@ -0,0 +1,37 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import { Disposable } from '../../../../../base/common/lifecycle.js'; +import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; +import { IWorkbenchContribution } from '../../../../common/contributions.js'; +import { ChatUrlFetchingConfirmationContribution } from '../../common/tools/builtinTools/chatUrlFetchingConfirmation.js'; +import { ILanguageModelToolsConfirmationService } from '../../common/tools/languageModelToolsConfirmationService.js'; +import { ILanguageModelToolsService } from '../../common/tools/languageModelToolsService.js'; +import { InternalFetchWebPageToolId } from '../../common/tools/builtinTools/tools.js'; +import { FetchWebPageTool, FetchWebPageToolData, IFetchWebPageToolParams } from './fetchPageTool.js'; + +export class NativeBuiltinToolsContribution extends Disposable implements IWorkbenchContribution { + + static readonly ID = 'chat.nativeBuiltinTools'; + + constructor( + @ILanguageModelToolsService toolsService: ILanguageModelToolsService, + @IInstantiationService instantiationService: IInstantiationService, + @ILanguageModelToolsConfirmationService confirmationService: ILanguageModelToolsConfirmationService, + ) { + super(); + + const editTool = instantiationService.createInstance(FetchWebPageTool); + this._register(toolsService.registerTool(FetchWebPageToolData, editTool)); + + this._register(confirmationService.registerConfirmationContribution( + InternalFetchWebPageToolId, + instantiationService.createInstance( + ChatUrlFetchingConfirmationContribution, + params => (params as IFetchWebPageToolParams).urls + ) + )); + } +} diff --git a/src/vs/workbench/contrib/chat/electron-browser/chat.contribution.ts b/src/vs/workbench/contrib/chat/electron-browser/chat.contribution.ts index 1a06a26cad2..4ab40ef6a76 100644 --- a/src/vs/workbench/contrib/chat/electron-browser/chat.contribution.ts +++ b/src/vs/workbench/contrib/chat/electron-browser/chat.contribution.ts @@ -15,11 +15,10 @@ import { ICommandService } from '../../../../platform/commands/common/commands.j import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js'; -import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; import { ILogService } from '../../../../platform/log/common/log.js'; import { INativeHostService } from '../../../../platform/native/common/native.js'; import { IWorkspaceTrustRequestService } from '../../../../platform/workspace/common/workspaceTrust.js'; -import { IWorkbenchContribution, WorkbenchPhase, registerWorkbenchContribution2 } from '../../../common/contributions.js'; +import { WorkbenchPhase, registerWorkbenchContribution2 } from '../../../common/contributions.js'; import { ViewContainerLocation } from '../../../common/views.js'; import { INativeWorkbenchEnvironmentService } from '../../../services/environment/electron-browser/environmentService.js'; import { IExtensionService } from '../../../services/extensions/common/extensions.js'; @@ -27,40 +26,12 @@ import { IWorkbenchLayoutService } from '../../../services/layout/browser/layout import { ILifecycleService, ShutdownReason } from '../../../services/lifecycle/common/lifecycle.js'; import { ACTION_ID_NEW_CHAT, CHAT_OPEN_ACTION_ID, IChatViewOpenOptions } from '../browser/actions/chatActions.js'; import { IChatWidgetService } from '../browser/chat.js'; -import { ChatContextKeys } from '../common/chatContextKeys.js'; +import { ChatContextKeys } from '../common/actions/chatContextKeys.js'; import { ChatConfiguration, ChatModeKind } from '../common/constants.js'; -import { IChatService } from '../common/chatService.js'; -import { ChatUrlFetchingConfirmationContribution } from '../common/chatUrlFetchingConfirmation.js'; -import { ILanguageModelToolsConfirmationService } from '../common/languageModelToolsConfirmationService.js'; -import { ILanguageModelToolsService } from '../common/languageModelToolsService.js'; -import { InternalFetchWebPageToolId } from '../common/tools/tools.js'; +import { IChatService } from '../common/chatService/chatService.js'; import { registerChatDeveloperActions } from './actions/chatDeveloperActions.js'; import { HoldToVoiceChatInChatViewAction, InlineVoiceChatAction, KeywordActivationContribution, QuickVoiceChatAction, ReadChatResponseAloud, StartVoiceChatAction, StopListeningAction, StopListeningAndSubmitAction, StopReadAloud, StopReadChatItemAloud, VoiceChatInChatViewAction } from './actions/voiceChatActions.js'; -import { FetchWebPageTool, FetchWebPageToolData, IFetchWebPageToolParams } from './tools/fetchPageTool.js'; - -class NativeBuiltinToolsContribution extends Disposable implements IWorkbenchContribution { - - static readonly ID = 'chat.nativeBuiltinTools'; - - constructor( - @ILanguageModelToolsService toolsService: ILanguageModelToolsService, - @IInstantiationService instantiationService: IInstantiationService, - @ILanguageModelToolsConfirmationService confirmationService: ILanguageModelToolsConfirmationService, - ) { - super(); - - const editTool = instantiationService.createInstance(FetchWebPageTool); - this._register(toolsService.registerTool(FetchWebPageToolData, editTool)); - - this._register(confirmationService.registerConfirmationContribution( - InternalFetchWebPageToolId, - instantiationService.createInstance( - ChatUrlFetchingConfirmationContribution, - params => (params as IFetchWebPageToolParams).urls - ) - )); - } -} +import { NativeBuiltinToolsContribution } from './builtInTools/tools.js'; class ChatCommandLineHandler extends Disposable { diff --git a/src/vs/workbench/contrib/chat/test/browser/agentSessionViewModel.test.ts b/src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionViewModel.test.ts similarity index 97% rename from src/vs/workbench/contrib/chat/test/browser/agentSessionViewModel.test.ts rename to src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionViewModel.test.ts index 3cee9c07c2e..0d1d693dcd0 100644 --- a/src/vs/workbench/contrib/chat/test/browser/agentSessionViewModel.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionViewModel.test.ts @@ -4,25 +4,25 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { Event } from '../../../../../base/common/event.js'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { AgentSessionsModel, IAgentSession, isAgentSession, isAgentSessionsModel, isLocalAgentSessionItem } from '../../browser/agentSessions/agentSessionsModel.js'; -import { AgentSessionsFilter } from '../../browser/agentSessions/agentSessionsFilter.js'; -import { ChatSessionStatus, IChatSessionItem, IChatSessionItemProvider, IChatSessionsService, localChatSessionType } from '../../common/chatSessionsService.js'; -import { LocalChatSessionUri } from '../../common/chatUri.js'; -import { MockChatSessionsService } from '../common/mockChatSessionsService.js'; -import { TestLifecycleService, workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; -import { runWithFakedTimers } from '../../../../../base/test/common/timeTravelScheduler.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { MenuId } from '../../../../../platform/actions/common/actions.js'; -import { ILifecycleService } from '../../../../services/lifecycle/common/lifecycle.js'; -import { TestInstantiationService } from '../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; -import { AgentSessionProviders, getAgentSessionProviderIcon, getAgentSessionProviderName } from '../../browser/agentSessions/agentSessions.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { AgentSessionsModel, IAgentSession, isAgentSession, isAgentSessionsModel, isLocalAgentSessionItem } from '../../../browser/agentSessions/agentSessionsModel.js'; +import { AgentSessionsFilter } from '../../../browser/agentSessions/agentSessionsFilter.js'; +import { ChatSessionStatus, IChatSessionItem, IChatSessionItemProvider, IChatSessionsService, localChatSessionType } from '../../../common/chatSessionsService.js'; +import { LocalChatSessionUri } from '../../../common/model/chatUri.js'; +import { MockChatSessionsService } from '../../common/mockChatSessionsService.js'; +import { TestLifecycleService, workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; +import { runWithFakedTimers } from '../../../../../../base/test/common/timeTravelScheduler.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { MenuId } from '../../../../../../platform/actions/common/actions.js'; +import { ILifecycleService } from '../../../../../services/lifecycle/common/lifecycle.js'; +import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { IStorageService, StorageScope, StorageTarget } from '../../../../../../platform/storage/common/storage.js'; +import { AgentSessionProviders, getAgentSessionProviderIcon, getAgentSessionProviderName } from '../../../browser/agentSessions/agentSessions.js'; suite('Agent Sessions', () => { diff --git a/src/vs/workbench/contrib/chat/test/browser/agentSessionsDataSource.test.ts b/src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionsDataSource.test.ts similarity index 96% rename from src/vs/workbench/contrib/chat/test/browser/agentSessionsDataSource.test.ts rename to src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionsDataSource.test.ts index 96b55c84b51..0d9b4d70e9d 100644 --- a/src/vs/workbench/contrib/chat/test/browser/agentSessionsDataSource.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/agentSessions/agentSessionsDataSource.test.ts @@ -4,14 +4,14 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { URI } from '../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { AgentSessionsDataSource, AgentSessionListItem, IAgentSessionsFilter } from '../../browser/agentSessions/agentSessionsViewer.js'; -import { AgentSessionSection, IAgentSession, IAgentSessionSection, IAgentSessionsModel, isAgentSessionSection } from '../../browser/agentSessions/agentSessionsModel.js'; -import { ChatSessionStatus, isSessionInProgressStatus } from '../../common/chatSessionsService.js'; -import { ITreeSorter } from '../../../../../base/browser/ui/tree/tree.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Event } from '../../../../../base/common/event.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { AgentSessionsDataSource, AgentSessionListItem, IAgentSessionsFilter } from '../../../browser/agentSessions/agentSessionsViewer.js'; +import { AgentSessionSection, IAgentSession, IAgentSessionSection, IAgentSessionsModel, isAgentSessionSection } from '../../../browser/agentSessions/agentSessionsModel.js'; +import { ChatSessionStatus, isSessionInProgressStatus } from '../../../common/chatSessionsService.js'; +import { ITreeSorter } from '../../../../../../base/browser/ui/tree/tree.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Event } from '../../../../../../base/common/event.js'; suite('AgentSessionsDataSource', () => { diff --git a/src/vs/workbench/contrib/chat/test/browser/localAgentSessionsProvider.test.ts b/src/vs/workbench/contrib/chat/test/browser/agentSessions/localAgentSessionsProvider.test.ts similarity index 95% rename from src/vs/workbench/contrib/chat/test/browser/localAgentSessionsProvider.test.ts rename to src/vs/workbench/contrib/chat/test/browser/agentSessions/localAgentSessionsProvider.test.ts index 65d21245c4b..04e96b80adc 100644 --- a/src/vs/workbench/contrib/chat/test/browser/localAgentSessionsProvider.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/agentSessions/localAgentSessionsProvider.test.ts @@ -4,24 +4,24 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { ISettableObservable, observableValue } from '../../../../../base/common/observable.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { runWithFakedTimers } from '../../../../../base/test/common/timeTravelScheduler.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { TestInstantiationService } from '../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; -import { LocalAgentsSessionsProvider } from '../../browser/agentSessions/localAgentSessionsProvider.js'; -import { ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { IChatModel, IChatRequestModel, IChatResponseModel } from '../../common/chatModel.js'; -import { IChatDetail, IChatService, IChatSessionStartOptions, ResponseModelState } from '../../common/chatService.js'; -import { ChatSessionStatus, IChatSessionsService, localChatSessionType } from '../../common/chatSessionsService.js'; -import { LocalChatSessionUri } from '../../common/chatUri.js'; -import { ChatAgentLocation } from '../../common/constants.js'; -import { MockChatSessionsService } from '../common/mockChatSessionsService.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { ISettableObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { runWithFakedTimers } from '../../../../../../base/test/common/timeTravelScheduler.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; +import { LocalAgentsSessionsProvider } from '../../../browser/agentSessions/localAgentSessionsProvider.js'; +import { ModifiedFileEntryState } from '../../../common/editing/chatEditingService.js'; +import { IChatModel, IChatRequestModel, IChatResponseModel } from '../../../common/model/chatModel.js'; +import { IChatDetail, IChatService, IChatSessionStartOptions, ResponseModelState } from '../../../common/chatService/chatService.js'; +import { ChatSessionStatus, IChatSessionsService, localChatSessionType } from '../../../common/chatSessionsService.js'; +import { LocalChatSessionUri } from '../../../common/model/chatUri.js'; +import { ChatAgentLocation } from '../../../common/constants.js'; +import { MockChatSessionsService } from '../../common/mockChatSessionsService.js'; class MockChatService implements IChatService { private readonly _chatModels: ISettableObservable> = observableValue('chatModels', []); diff --git a/src/vs/workbench/contrib/chat/test/browser/chatEditingCheckpointTimeline.test.ts b/src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingCheckpointTimeline.test.ts similarity index 97% rename from src/vs/workbench/contrib/chat/test/browser/chatEditingCheckpointTimeline.test.ts rename to src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingCheckpointTimeline.test.ts index 01678a563eb..57478466f4f 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatEditingCheckpointTimeline.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingCheckpointTimeline.test.ts @@ -4,20 +4,20 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { ResourceMap } from '../../../../../base/common/map.js'; -import { transaction } from '../../../../../base/common/observable.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { upcastPartial } from '../../../../../base/test/common/mock.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { SyncDescriptor } from '../../../../../platform/instantiation/common/descriptors.js'; -import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; -import { workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; -import { INotebookService } from '../../../notebook/common/notebookService.js'; -import { ChatEditingCheckpointTimelineImpl, IChatEditingTimelineFsDelegate } from '../../browser/chatEditing/chatEditingCheckpointTimelineImpl.js'; -import { FileOperation, FileOperationType } from '../../browser/chatEditing/chatEditingOperations.js'; -import { IModifiedEntryTelemetryInfo } from '../../common/chatEditingService.js'; +import { DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { ResourceMap } from '../../../../../../base/common/map.js'; +import { transaction } from '../../../../../../base/common/observable.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { upcastPartial } from '../../../../../../base/test/common/mock.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { Range } from '../../../../../../editor/common/core/range.js'; +import { SyncDescriptor } from '../../../../../../platform/instantiation/common/descriptors.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; +import { INotebookService } from '../../../../notebook/common/notebookService.js'; +import { ChatEditingCheckpointTimelineImpl, IChatEditingTimelineFsDelegate } from '../../../browser/chatEditing/chatEditingCheckpointTimelineImpl.js'; +import { FileOperation, FileOperationType } from '../../../browser/chatEditing/chatEditingOperations.js'; +import { IModifiedEntryTelemetryInfo } from '../../../common/editing/chatEditingService.js'; suite('ChatEditingCheckpointTimeline', function () { @@ -1255,5 +1255,3 @@ class TestNotebookService { getNotebookTextModel() { return undefined; } hasSupportedNotebooks() { return false; } } - - diff --git a/src/vs/workbench/contrib/chat/test/browser/chatEditingModifiedNotebookEntry.test.ts b/src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingModifiedNotebookEntry.test.ts similarity index 99% rename from src/vs/workbench/contrib/chat/test/browser/chatEditingModifiedNotebookEntry.test.ts rename to src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingModifiedNotebookEntry.test.ts index 4a9b629ae7b..997d7387915 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatEditingModifiedNotebookEntry.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingModifiedNotebookEntry.test.ts @@ -4,16 +4,16 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { adjustCellDiffAndOriginalModelBasedOnCellAddDelete, adjustCellDiffAndOriginalModelBasedOnCellMovements, adjustCellDiffForKeepingADeletedCell, adjustCellDiffForKeepingAnInsertedCell, adjustCellDiffForRevertingADeletedCell, adjustCellDiffForRevertingAnInsertedCell } from '../../browser/chatEditing/notebook/helpers.js'; -import { ICellDiffInfo } from '../../browser/chatEditing/notebook/notebookCellChanges.js'; -import { nullDocumentDiff } from '../../../../../editor/common/diff/documentDiffProvider.js'; -import { ObservablePromise, observableValue } from '../../../../../base/common/observable.js'; -import { CellEditType, CellKind, ICell, ICellEditOperation, NotebookCellsChangeType } from '../../../notebook/common/notebookCommon.js'; -import { ITextModel } from '../../../../../editor/common/model.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { hash } from '../../../../../base/common/hash.js'; -import { generateUuid } from '../../../../../base/common/uuid.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { adjustCellDiffAndOriginalModelBasedOnCellAddDelete, adjustCellDiffAndOriginalModelBasedOnCellMovements, adjustCellDiffForKeepingADeletedCell, adjustCellDiffForKeepingAnInsertedCell, adjustCellDiffForRevertingADeletedCell, adjustCellDiffForRevertingAnInsertedCell } from '../../../browser/chatEditing/notebook/helpers.js'; +import { ICellDiffInfo } from '../../../browser/chatEditing/notebook/notebookCellChanges.js'; +import { nullDocumentDiff } from '../../../../../../editor/common/diff/documentDiffProvider.js'; +import { ObservablePromise, observableValue } from '../../../../../../base/common/observable.js'; +import { CellEditType, CellKind, ICell, ICellEditOperation, NotebookCellsChangeType } from '../../../../notebook/common/notebookCommon.js'; +import { ITextModel } from '../../../../../../editor/common/model.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { hash } from '../../../../../../base/common/hash.js'; +import { generateUuid } from '../../../../../../base/common/uuid.js'; suite('ChatEditingModifiedNotebookEntry', function () { suite('Keep Inserted Cell', function () { diff --git a/src/vs/workbench/contrib/chat/test/browser/chatEditingService.test.ts b/src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingService.test.ts similarity index 78% rename from src/vs/workbench/contrib/chat/test/browser/chatEditingService.test.ts rename to src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingService.test.ts index 16906452620..50d5b38401e 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatEditingService.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingService.test.ts @@ -4,48 +4,48 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { Disposable, DisposableStore, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { waitForState } from '../../../../../base/common/observable.js'; -import { isEqual } from '../../../../../base/common/resources.js'; -import { assertType } from '../../../../../base/common/types.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { mock } from '../../../../../base/test/common/mock.js'; -import { runWithFakedTimers } from '../../../../../base/test/common/timeTravelScheduler.js'; -import { assertThrowsAsync, ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { EditOperation } from '../../../../../editor/common/core/editOperation.js'; -import { Position } from '../../../../../editor/common/core/position.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { TextEdit } from '../../../../../editor/common/languages.js'; -import { IEditorWorkerService } from '../../../../../editor/common/services/editorWorker.js'; -import { IModelService } from '../../../../../editor/common/services/model.js'; -import { ITextModelService } from '../../../../../editor/common/services/resolverService.js'; -import { SyncDescriptor } from '../../../../../platform/instantiation/common/descriptors.js'; -import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; -import { IWorkbenchAssignmentService } from '../../../../services/assignment/common/assignmentService.js'; -import { NullWorkbenchAssignmentService } from '../../../../services/assignment/test/common/nullAssignmentService.js'; -import { nullExtensionDescription } from '../../../../services/extensions/common/extensions.js'; -import { workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; -import { TestWorkerService } from '../../../inlineChat/test/browser/testWorkerService.js'; -import { IMcpService } from '../../../mcp/common/mcpTypes.js'; -import { TestMcpService } from '../../../mcp/test/common/testMcpService.js'; -import { IMultiDiffSourceResolver, IMultiDiffSourceResolverService } from '../../../multiDiffEditor/browser/multiDiffSourceResolverService.js'; -import { NotebookTextModel } from '../../../notebook/common/model/notebookTextModel.js'; -import { INotebookService } from '../../../notebook/common/notebookService.js'; -import { ChatEditingService } from '../../browser/chatEditing/chatEditingServiceImpl.js'; -import { ChatSessionsService } from '../../browser/chatSessions.contribution.js'; -import { ChatAgentService, IChatAgentData, IChatAgentImplementation, IChatAgentService } from '../../common/chatAgents.js'; -import { ChatEditingSessionState, IChatEditingService, IChatEditingSession, ModifiedFileEntryState } from '../../common/chatEditingService.js'; -import { ChatModel } from '../../common/chatModel.js'; -import { IChatService } from '../../common/chatService.js'; -import { ChatService } from '../../common/chatServiceImpl.js'; -import { IChatSessionsService } from '../../common/chatSessionsService.js'; -import { IChatSlashCommandService } from '../../common/chatSlashCommands.js'; -import { ChatTransferService, IChatTransferService } from '../../common/chatTransferService.js'; -import { IChatVariablesService } from '../../common/chatVariables.js'; -import { ChatAgentLocation, ChatModeKind } from '../../common/constants.js'; -import { ILanguageModelsService } from '../../common/languageModels.js'; -import { NullLanguageModelsService } from '../common/languageModels.js'; -import { MockChatVariablesService } from '../common/mockChatVariables.js'; +import { Disposable, DisposableStore, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { waitForState } from '../../../../../../base/common/observable.js'; +import { isEqual } from '../../../../../../base/common/resources.js'; +import { assertType } from '../../../../../../base/common/types.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { mock } from '../../../../../../base/test/common/mock.js'; +import { runWithFakedTimers } from '../../../../../../base/test/common/timeTravelScheduler.js'; +import { assertThrowsAsync, ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { EditOperation } from '../../../../../../editor/common/core/editOperation.js'; +import { Position } from '../../../../../../editor/common/core/position.js'; +import { Range } from '../../../../../../editor/common/core/range.js'; +import { TextEdit } from '../../../../../../editor/common/languages.js'; +import { IEditorWorkerService } from '../../../../../../editor/common/services/editorWorker.js'; +import { IModelService } from '../../../../../../editor/common/services/model.js'; +import { ITextModelService } from '../../../../../../editor/common/services/resolverService.js'; +import { SyncDescriptor } from '../../../../../../platform/instantiation/common/descriptors.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { IWorkbenchAssignmentService } from '../../../../../services/assignment/common/assignmentService.js'; +import { NullWorkbenchAssignmentService } from '../../../../../services/assignment/test/common/nullAssignmentService.js'; +import { nullExtensionDescription } from '../../../../../services/extensions/common/extensions.js'; +import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; +import { TestWorkerService } from '../../../../inlineChat/test/browser/testWorkerService.js'; +import { IMcpService } from '../../../../mcp/common/mcpTypes.js'; +import { TestMcpService } from '../../../../mcp/test/common/testMcpService.js'; +import { IMultiDiffSourceResolver, IMultiDiffSourceResolverService } from '../../../../multiDiffEditor/browser/multiDiffSourceResolverService.js'; +import { NotebookTextModel } from '../../../../notebook/common/model/notebookTextModel.js'; +import { INotebookService } from '../../../../notebook/common/notebookService.js'; +import { ChatEditingService } from '../../../browser/chatEditing/chatEditingServiceImpl.js'; +import { ChatSessionsService } from '../../../browser/chatSessions/chatSessions.contribution.js'; +import { ChatAgentService, IChatAgentData, IChatAgentImplementation, IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { ChatEditingSessionState, IChatEditingService, IChatEditingSession, ModifiedFileEntryState } from '../../../common/editing/chatEditingService.js'; +import { ChatModel } from '../../../common/model/chatModel.js'; +import { IChatService } from '../../../common/chatService/chatService.js'; +import { ChatService } from '../../../common/chatService/chatServiceImpl.js'; +import { IChatSessionsService } from '../../../common/chatSessionsService.js'; +import { IChatSlashCommandService } from '../../../common/participants/chatSlashCommands.js'; +import { ChatTransferService, IChatTransferService } from '../../../common/model/chatTransferService.js'; +import { IChatVariablesService } from '../../../common/attachments/chatVariables.js'; +import { ChatAgentLocation, ChatModeKind } from '../../../common/constants.js'; +import { ILanguageModelsService } from '../../../common/languageModels.js'; +import { NullLanguageModelsService } from '../../common/languageModels.js'; +import { MockChatVariablesService } from '../../common/mockChatVariables.js'; function getAgentData(id: string): IChatAgentData { return { diff --git a/src/vs/workbench/contrib/chat/test/browser/chatEditingSessionStorage.test.ts b/src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingSessionStorage.test.ts similarity index 77% rename from src/vs/workbench/contrib/chat/test/browser/chatEditingSessionStorage.test.ts rename to src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingSessionStorage.test.ts index 3acda209469..c4b859cc1b6 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatEditingSessionStorage.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/chatEditing/chatEditingSessionStorage.test.ts @@ -4,18 +4,18 @@ *--------------------------------------------------------------------------------------------*/ import * as assert from 'assert'; -import { ResourceMap } from '../../../../../base/common/map.js'; -import { cloneAndChange } from '../../../../../base/common/objects.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { generateUuid } from '../../../../../base/common/uuid.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { FileService } from '../../../../../platform/files/common/fileService.js'; -import { InMemoryFileSystemProvider } from '../../../../../platform/files/common/inMemoryFilesystemProvider.js'; -import { NullLogService } from '../../../../../platform/log/common/log.js'; -import { TestEnvironmentService } from '../../../../test/browser/workbenchTestServices.js'; -import { ChatEditingSessionStorage, IChatEditingSessionStop, StoredSessionState } from '../../browser/chatEditing/chatEditingSessionStorage.js'; -import { ChatEditingSnapshotTextModelContentProvider } from '../../browser/chatEditing/chatEditingTextModelContentProviders.js'; -import { ISnapshotEntry, ModifiedFileEntryState } from '../../common/chatEditingService.js'; +import { ResourceMap } from '../../../../../../base/common/map.js'; +import { cloneAndChange } from '../../../../../../base/common/objects.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { generateUuid } from '../../../../../../base/common/uuid.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { FileService } from '../../../../../../platform/files/common/fileService.js'; +import { InMemoryFileSystemProvider } from '../../../../../../platform/files/common/inMemoryFilesystemProvider.js'; +import { NullLogService } from '../../../../../../platform/log/common/log.js'; +import { TestEnvironmentService } from '../../../../../test/browser/workbenchTestServices.js'; +import { ChatEditingSessionStorage, IChatEditingSessionStop, StoredSessionState } from '../../../browser/chatEditing/chatEditingSessionStorage.js'; +import { ChatEditingSnapshotTextModelContentProvider } from '../../../browser/chatEditing/chatEditingTextModelContentProviders.js'; +import { ISnapshotEntry, ModifiedFileEntryState } from '../../../common/editing/chatEditingService.js'; suite('ChatEditingSessionStorage', () => { const ds = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/browser/chatModelsViewModel.test.ts b/src/vs/workbench/contrib/chat/test/browser/chatManagement/chatModelsViewModel.test.ts similarity index 98% rename from src/vs/workbench/contrib/chat/test/browser/chatModelsViewModel.test.ts rename to src/vs/workbench/contrib/chat/test/browser/chatManagement/chatModelsViewModel.test.ts index 4db40bc1983..4e4ccf1db5b 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatModelsViewModel.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/chatManagement/chatModelsViewModel.test.ts @@ -4,14 +4,14 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { DisposableStore, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier, ILanguageModelChatProvider, ILanguageModelChatSelector, ILanguageModelsService, IUserFriendlyLanguageModel } from '../../common/languageModels.js'; -import { ChatModelGroup, ChatModelsViewModel, IModelItemEntry, IVendorItemEntry, isVendorEntry, isGroupEntry, IGroupItemEntry } from '../../browser/chatManagement/chatModelsViewModel.js'; -import { IChatEntitlementService, ChatEntitlement } from '../../../../services/chat/common/chatEntitlementService.js'; -import { IObservable, observableValue } from '../../../../../base/common/observable.js'; -import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js'; +import { Emitter, Event } from '../../../../../../base/common/event.js'; +import { DisposableStore, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { ILanguageModelChatMetadata, ILanguageModelChatMetadataAndIdentifier, ILanguageModelChatProvider, ILanguageModelChatSelector, ILanguageModelsService, IUserFriendlyLanguageModel } from '../../../common/languageModels.js'; +import { ChatModelGroup, ChatModelsViewModel, IModelItemEntry, IVendorItemEntry, isVendorEntry, isGroupEntry, IGroupItemEntry } from '../../../browser/chatManagement/chatModelsViewModel.js'; +import { IChatEntitlementService, ChatEntitlement } from '../../../../../services/chat/common/chatEntitlementService.js'; +import { IObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { ExtensionIdentifier } from '../../../../../../platform/extensions/common/extensions.js'; class MockLanguageModelsService implements ILanguageModelsService { _serviceBrand: undefined; diff --git a/src/vs/workbench/contrib/chat/test/browser/chatSessionsService.test.ts b/src/vs/workbench/contrib/chat/test/browser/chatSessions/chatSessionsService.test.ts similarity index 94% rename from src/vs/workbench/contrib/chat/test/browser/chatSessionsService.test.ts rename to src/vs/workbench/contrib/chat/test/browser/chatSessions/chatSessionsService.test.ts index b79d376ecc2..cc0e45205dd 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatSessionsService.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/chatSessions/chatSessionsService.test.ts @@ -4,9 +4,9 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { ChatSessionsService } from '../../browser/chatSessions.contribution.js'; -import { workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { ChatSessionsService } from '../../../browser/chatSessions/chatSessions.contribution.js'; +import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; suite.skip('ChatSessionsService', () => { const store = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptBodyAutocompletion.test.ts b/src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptBodyAutocompletion.test.ts similarity index 76% rename from src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptBodyAutocompletion.test.ts rename to src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptBodyAutocompletion.test.ts index 4e61fcd82e8..144c48c01fe 100644 --- a/src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptBodyAutocompletion.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptBodyAutocompletion.test.ts @@ -4,29 +4,29 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { CancellationToken } from '../../../../../../base/common/cancellation.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; -import { Position } from '../../../../../../editor/common/core/position.js'; -import { CompletionContext, CompletionTriggerKind } from '../../../../../../editor/common/languages.js'; -import { ContextKeyService } from '../../../../../../platform/contextkey/browser/contextKeyService.js'; -import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { ExtensionIdentifier } from '../../../../../../platform/extensions/common/extensions.js'; -import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; -import { LanguageModelToolsService } from '../../../browser/languageModelToolsService.js'; -import { ChatConfiguration } from '../../../common/constants.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../../common/languageModelToolsService.js'; -import { PromptBodyAutocompletion } from '../../../common/promptSyntax/languageProviders/promptBodyAutocompletion.js'; -import { createTextModel } from '../../../../../../editor/test/common/testTextModel.js'; -import { URI } from '../../../../../../base/common/uri.js'; -import { getLanguageIdForPromptsType, PromptsType } from '../../../common/promptSyntax/promptTypes.js'; -import { getPromptFileExtension } from '../../../common/promptSyntax/config/promptFileLocations.js'; -import { IFileService } from '../../../../../../platform/files/common/files.js'; -import { FileService } from '../../../../../../platform/files/common/fileService.js'; -import { VSBuffer } from '../../../../../../base/common/buffer.js'; -import { InMemoryFileSystemProvider } from '../../../../../../platform/files/common/inMemoryFilesystemProvider.js'; -import { ILogService, NullLogService } from '../../../../../../platform/log/common/log.js'; -import { Range } from '../../../../../../editor/common/core/range.js'; +import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { Position } from '../../../../../../../editor/common/core/position.js'; +import { CompletionContext, CompletionTriggerKind } from '../../../../../../../editor/common/languages.js'; +import { ContextKeyService } from '../../../../../../../platform/contextkey/browser/contextKeyService.js'; +import { TestConfigurationService } from '../../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { ExtensionIdentifier } from '../../../../../../../platform/extensions/common/extensions.js'; +import { TestInstantiationService } from '../../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { workbenchInstantiationService } from '../../../../../../test/browser/workbenchTestServices.js'; +import { LanguageModelToolsService } from '../../../../browser/tools/languageModelToolsService.js'; +import { ChatConfiguration } from '../../../../common/constants.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../../../common/tools/languageModelToolsService.js'; +import { PromptBodyAutocompletion } from '../../../../common/promptSyntax/languageProviders/promptBodyAutocompletion.js'; +import { createTextModel } from '../../../../../../../editor/test/common/testTextModel.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { getLanguageIdForPromptsType, PromptsType } from '../../../../common/promptSyntax/promptTypes.js'; +import { getPromptFileExtension } from '../../../../common/promptSyntax/config/promptFileLocations.js'; +import { IFileService } from '../../../../../../../platform/files/common/files.js'; +import { FileService } from '../../../../../../../platform/files/common/fileService.js'; +import { VSBuffer } from '../../../../../../../base/common/buffer.js'; +import { InMemoryFileSystemProvider } from '../../../../../../../platform/files/common/inMemoryFilesystemProvider.js'; +import { ILogService, NullLogService } from '../../../../../../../platform/log/common/log.js'; +import { Range } from '../../../../../../../editor/common/core/range.js'; suite('PromptBodyAutocompletion', () => { const disposables = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptCodeActions.test.ts b/src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptCodeActions.test.ts similarity index 85% rename from src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptCodeActions.test.ts rename to src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptCodeActions.test.ts index dee8addb319..2a1a20b946b 100644 --- a/src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptCodeActions.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptCodeActions.test.ts @@ -4,28 +4,28 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { CancellationToken } from '../../../../../../base/common/cancellation.js'; -import { URI } from '../../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; -import { Range } from '../../../../../../editor/common/core/range.js'; -import { CodeActionContext, CodeActionTriggerType, IWorkspaceTextEdit, IWorkspaceFileEdit } from '../../../../../../editor/common/languages.js'; -import { createTextModel } from '../../../../../../editor/test/common/testTextModel.js'; -import { ITextModel } from '../../../../../../editor/common/model.js'; -import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { ContextKeyService } from '../../../../../../platform/contextkey/browser/contextKeyService.js'; -import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { IMarkerService } from '../../../../../../platform/markers/common/markers.js'; -import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; -import { ChatConfiguration } from '../../../common/constants.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../../common/languageModelToolsService.js'; -import { LanguageModelToolsService } from '../../../browser/languageModelToolsService.js'; -import { IPromptsService } from '../../../common/promptSyntax/service/promptsService.js'; -import { getLanguageIdForPromptsType, PromptsType } from '../../../common/promptSyntax/promptTypes.js'; -import { getPromptFileExtension } from '../../../common/promptSyntax/config/promptFileLocations.js'; -import { PromptFileParser } from '../../../common/promptSyntax/promptFileParser.js'; -import { PromptCodeActionProvider } from '../../../common/promptSyntax/languageProviders/promptCodeActions.js'; -import { IFileService } from '../../../../../../platform/files/common/files.js'; -import { CodeActionKind } from '../../../../../../editor/contrib/codeAction/common/types.js'; +import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { Range } from '../../../../../../../editor/common/core/range.js'; +import { CodeActionContext, CodeActionTriggerType, IWorkspaceTextEdit, IWorkspaceFileEdit } from '../../../../../../../editor/common/languages.js'; +import { createTextModel } from '../../../../../../../editor/test/common/testTextModel.js'; +import { ITextModel } from '../../../../../../../editor/common/model.js'; +import { TestConfigurationService } from '../../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { ContextKeyService } from '../../../../../../../platform/contextkey/browser/contextKeyService.js'; +import { TestInstantiationService } from '../../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { IMarkerService } from '../../../../../../../platform/markers/common/markers.js'; +import { workbenchInstantiationService } from '../../../../../../test/browser/workbenchTestServices.js'; +import { ChatConfiguration } from '../../../../common/constants.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../../../common/tools/languageModelToolsService.js'; +import { LanguageModelToolsService } from '../../../../browser/tools/languageModelToolsService.js'; +import { IPromptsService } from '../../../../common/promptSyntax/service/promptsService.js'; +import { getLanguageIdForPromptsType, PromptsType } from '../../../../common/promptSyntax/promptTypes.js'; +import { getPromptFileExtension } from '../../../../common/promptSyntax/config/promptFileLocations.js'; +import { PromptFileParser } from '../../../../common/promptSyntax/promptFileParser.js'; +import { PromptCodeActionProvider } from '../../../../common/promptSyntax/languageProviders/promptCodeActions.js'; +import { IFileService } from '../../../../../../../platform/files/common/files.js'; +import { CodeActionKind } from '../../../../../../../editor/contrib/codeAction/common/types.js'; suite('PromptCodeActionProvider', () => { const disposables = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptHovers.test.ts b/src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptHovers.test.ts similarity index 87% rename from src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptHovers.test.ts rename to src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptHovers.test.ts index a22ece4134f..fc209823326 100644 --- a/src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptHovers.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptHovers.test.ts @@ -4,29 +4,29 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { CancellationToken } from '../../../../../../base/common/cancellation.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; -import { Position } from '../../../../../../editor/common/core/position.js'; -import { ContextKeyService } from '../../../../../../platform/contextkey/browser/contextKeyService.js'; -import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { ExtensionIdentifier } from '../../../../../../platform/extensions/common/extensions.js'; -import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; -import { LanguageModelToolsService } from '../../../browser/languageModelToolsService.js'; -import { ChatMode, CustomChatMode, IChatModeService } from '../../../common/chatModes.js'; -import { ChatConfiguration } from '../../../common/constants.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../../common/languageModelToolsService.js'; -import { ILanguageModelChatMetadata, ILanguageModelsService } from '../../../common/languageModels.js'; -import { PromptHoverProvider } from '../../../common/promptSyntax/languageProviders/promptHovers.js'; -import { IPromptsService, PromptsStorage } from '../../../common/promptSyntax/service/promptsService.js'; -import { MockChatModeService } from '../../common/mockChatModeService.js'; -import { createTextModel } from '../../../../../../editor/test/common/testTextModel.js'; -import { URI } from '../../../../../../base/common/uri.js'; -import { PromptFileParser } from '../../../common/promptSyntax/promptFileParser.js'; -import { ITextModel } from '../../../../../../editor/common/model.js'; -import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; -import { getLanguageIdForPromptsType, PromptsType } from '../../../common/promptSyntax/promptTypes.js'; -import { getPromptFileExtension } from '../../../common/promptSyntax/config/promptFileLocations.js'; +import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { Position } from '../../../../../../../editor/common/core/position.js'; +import { ContextKeyService } from '../../../../../../../platform/contextkey/browser/contextKeyService.js'; +import { TestConfigurationService } from '../../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { ExtensionIdentifier } from '../../../../../../../platform/extensions/common/extensions.js'; +import { TestInstantiationService } from '../../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { workbenchInstantiationService } from '../../../../../../test/browser/workbenchTestServices.js'; +import { LanguageModelToolsService } from '../../../../browser/tools/languageModelToolsService.js'; +import { ChatMode, CustomChatMode, IChatModeService } from '../../../../common/chatModes.js'; +import { ChatConfiguration } from '../../../../common/constants.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../../../common/tools/languageModelToolsService.js'; +import { ILanguageModelChatMetadata, ILanguageModelsService } from '../../../../common/languageModels.js'; +import { PromptHoverProvider } from '../../../../common/promptSyntax/languageProviders/promptHovers.js'; +import { IPromptsService, PromptsStorage } from '../../../../common/promptSyntax/service/promptsService.js'; +import { MockChatModeService } from '../../../common/mockChatModeService.js'; +import { createTextModel } from '../../../../../../../editor/test/common/testTextModel.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { PromptFileParser } from '../../../../common/promptSyntax/promptFileParser.js'; +import { ITextModel } from '../../../../../../../editor/common/model.js'; +import { MarkdownString } from '../../../../../../../base/common/htmlContent.js'; +import { getLanguageIdForPromptsType, PromptsType } from '../../../../common/promptSyntax/promptTypes.js'; +import { getPromptFileExtension } from '../../../../common/promptSyntax/config/promptFileLocations.js'; suite('PromptHoverProvider', () => { const disposables = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptValidator.test.ts b/src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptValidator.test.ts similarity index 95% rename from src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptValidator.test.ts rename to src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptValidator.test.ts index 971f555b9a6..a59e2adf9ac 100644 --- a/src/vs/workbench/contrib/chat/test/browser/promptSytntax/promptValidator.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/promptSyntax/languageProviders/promptValidator.test.ts @@ -5,28 +5,28 @@ import assert from 'assert'; -import { ResourceSet } from '../../../../../../base/common/map.js'; -import { URI } from '../../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; -import { ContextKeyService } from '../../../../../../platform/contextkey/browser/contextKeyService.js'; -import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { ExtensionIdentifier } from '../../../../../../platform/extensions/common/extensions.js'; -import { IFileService } from '../../../../../../platform/files/common/files.js'; -import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { ILabelService } from '../../../../../../platform/label/common/label.js'; -import { IMarkerData, MarkerSeverity } from '../../../../../../platform/markers/common/markers.js'; -import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; -import { LanguageModelToolsService } from '../../../browser/languageModelToolsService.js'; -import { ChatMode, CustomChatMode, IChatModeService } from '../../../common/chatModes.js'; -import { ChatConfiguration } from '../../../common/constants.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../../common/languageModelToolsService.js'; -import { ILanguageModelChatMetadata, ILanguageModelsService } from '../../../common/languageModels.js'; -import { getPromptFileExtension } from '../../../common/promptSyntax/config/promptFileLocations.js'; -import { PromptValidator } from '../../../common/promptSyntax/languageProviders/promptValidator.js'; -import { PromptsType } from '../../../common/promptSyntax/promptTypes.js'; -import { PromptFileParser } from '../../../common/promptSyntax/promptFileParser.js'; -import { PromptsStorage } from '../../../common/promptSyntax/service/promptsService.js'; -import { MockChatModeService } from '../../common/mockChatModeService.js'; +import { ResourceSet } from '../../../../../../../base/common/map.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { ContextKeyService } from '../../../../../../../platform/contextkey/browser/contextKeyService.js'; +import { TestConfigurationService } from '../../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { ExtensionIdentifier } from '../../../../../../../platform/extensions/common/extensions.js'; +import { IFileService } from '../../../../../../../platform/files/common/files.js'; +import { TestInstantiationService } from '../../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { ILabelService } from '../../../../../../../platform/label/common/label.js'; +import { IMarkerData, MarkerSeverity } from '../../../../../../../platform/markers/common/markers.js'; +import { workbenchInstantiationService } from '../../../../../../test/browser/workbenchTestServices.js'; +import { LanguageModelToolsService } from '../../../../browser/tools/languageModelToolsService.js'; +import { ChatMode, CustomChatMode, IChatModeService } from '../../../../common/chatModes.js'; +import { ChatConfiguration } from '../../../../common/constants.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../../../common/tools/languageModelToolsService.js'; +import { ILanguageModelChatMetadata, ILanguageModelsService } from '../../../../common/languageModels.js'; +import { getPromptFileExtension } from '../../../../common/promptSyntax/config/promptFileLocations.js'; +import { PromptValidator } from '../../../../common/promptSyntax/languageProviders/promptValidator.js'; +import { PromptsType } from '../../../../common/promptSyntax/promptTypes.js'; +import { PromptFileParser } from '../../../../common/promptSyntax/promptFileParser.js'; +import { PromptsStorage } from '../../../../common/promptSyntax/service/promptsService.js'; +import { MockChatModeService } from '../../../common/mockChatModeService.js'; suite('PromptValidator', () => { const disposables = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/browser/languageModelToolsConfirmationService.test.ts b/src/vs/workbench/contrib/chat/test/browser/tools/languageModelToolsConfirmationService.test.ts similarity index 97% rename from src/vs/workbench/contrib/chat/test/browser/languageModelToolsConfirmationService.test.ts rename to src/vs/workbench/contrib/chat/test/browser/tools/languageModelToolsConfirmationService.test.ts index 61be238530b..653cc47feb7 100644 --- a/src/vs/workbench/contrib/chat/test/browser/languageModelToolsConfirmationService.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/tools/languageModelToolsConfirmationService.test.ts @@ -4,13 +4,13 @@ *--------------------------------------------------------------------------------------------*/ import * as assert from 'assert'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { TestInstantiationService } from '../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { IStorageService, InMemoryStorageService } from '../../../../../platform/storage/common/storage.js'; -import { LanguageModelToolsConfirmationService } from '../../browser/languageModelToolsConfirmationService.js'; -import { ToolConfirmKind } from '../../common/chatService.js'; -import { ILanguageModelToolConfirmationActions, ILanguageModelToolConfirmationContribution, ILanguageModelToolConfirmationRef } from '../../common/languageModelToolsConfirmationService.js'; -import { ToolDataSource } from '../../common/languageModelToolsService.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { IStorageService, InMemoryStorageService } from '../../../../../../platform/storage/common/storage.js'; +import { LanguageModelToolsConfirmationService } from '../../../browser/tools/languageModelToolsConfirmationService.js'; +import { ToolConfirmKind } from '../../../common/chatService/chatService.js'; +import { ILanguageModelToolConfirmationActions, ILanguageModelToolConfirmationContribution, ILanguageModelToolConfirmationRef } from '../../../common/tools/languageModelToolsConfirmationService.js'; +import { ToolDataSource } from '../../../common/tools/languageModelToolsService.js'; suite('LanguageModelToolsConfirmationService', () => { const store = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/browser/languageModelToolsService.test.ts b/src/vs/workbench/contrib/chat/test/browser/tools/languageModelToolsService.test.ts similarity index 98% rename from src/vs/workbench/contrib/chat/test/browser/languageModelToolsService.test.ts rename to src/vs/workbench/contrib/chat/test/browser/tools/languageModelToolsService.test.ts index 6faf6b6b7db..8e2751e2fe0 100644 --- a/src/vs/workbench/contrib/chat/test/browser/languageModelToolsService.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/tools/languageModelToolsService.test.ts @@ -4,33 +4,33 @@ *--------------------------------------------------------------------------------------------*/ import * as assert from 'assert'; -import { Barrier } from '../../../../../base/common/async.js'; -import { VSBuffer } from '../../../../../base/common/buffer.js'; -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { CancellationError, isCancellationError } from '../../../../../base/common/errors.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { IAccessibilityService } from '../../../../../platform/accessibility/common/accessibility.js'; -import { TestAccessibilityService } from '../../../../../platform/accessibility/test/common/testAccessibilityService.js'; -import { AccessibilitySignal, IAccessibilitySignalService } from '../../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; -import { ConfigurationTarget, IConfigurationChangeEvent } from '../../../../../platform/configuration/common/configuration.js'; -import { TestConfigurationService } from '../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { ContextKeyService } from '../../../../../platform/contextkey/browser/contextKeyService.js'; -import { ContextKeyEqualsExpr, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js'; -import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; -import { workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; -import { LanguageModelToolsService } from '../../browser/languageModelToolsService.js'; -import { ChatModel, IChatModel } from '../../common/chatModel.js'; -import { IChatService, IChatToolInputInvocationData, IChatToolInvocation, ToolConfirmKind } from '../../common/chatService.js'; -import { ChatConfiguration } from '../../common/constants.js'; -import { SpecedToolAliases, isToolResultInputOutputDetails, IToolData, IToolImpl, IToolInvocation, ToolDataSource, ToolSet } from '../../common/languageModelToolsService.js'; -import { MockChatService } from '../common/mockChatService.js'; -import { ChatToolInvocation } from '../../common/chatProgressTypes/chatToolInvocation.js'; -import { LocalChatSessionUri } from '../../common/chatUri.js'; -import { ILanguageModelToolsConfirmationService } from '../../common/languageModelToolsConfirmationService.js'; -import { MockLanguageModelToolsConfirmationService } from '../common/mockLanguageModelToolsConfirmationService.js'; -import { runWithFakedTimers } from '../../../../../base/test/common/timeTravelScheduler.js'; +import { Barrier } from '../../../../../../base/common/async.js'; +import { VSBuffer } from '../../../../../../base/common/buffer.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { CancellationError, isCancellationError } from '../../../../../../base/common/errors.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { IAccessibilityService } from '../../../../../../platform/accessibility/common/accessibility.js'; +import { TestAccessibilityService } from '../../../../../../platform/accessibility/test/common/testAccessibilityService.js'; +import { AccessibilitySignal, IAccessibilitySignalService } from '../../../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; +import { ConfigurationTarget, IConfigurationChangeEvent } from '../../../../../../platform/configuration/common/configuration.js'; +import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { ContextKeyService } from '../../../../../../platform/contextkey/browser/contextKeyService.js'; +import { ContextKeyEqualsExpr, IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { ExtensionIdentifier } from '../../../../../../platform/extensions/common/extensions.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; +import { LanguageModelToolsService } from '../../../browser/tools/languageModelToolsService.js'; +import { ChatModel, IChatModel } from '../../../common/model/chatModel.js'; +import { IChatService, IChatToolInputInvocationData, IChatToolInvocation, ToolConfirmKind } from '../../../common/chatService/chatService.js'; +import { ChatConfiguration } from '../../../common/constants.js'; +import { SpecedToolAliases, isToolResultInputOutputDetails, IToolData, IToolImpl, IToolInvocation, ToolDataSource, ToolSet } from '../../../common/tools/languageModelToolsService.js'; +import { MockChatService } from '../../common/chatService/mockChatService.js'; +import { ChatToolInvocation } from '../../../common/model/chatProgressTypes/chatToolInvocation.js'; +import { LocalChatSessionUri } from '../../../common/model/chatUri.js'; +import { ILanguageModelToolsConfirmationService } from '../../../common/tools/languageModelToolsConfirmationService.js'; +import { MockLanguageModelToolsConfirmationService } from '../../common/tools/mockLanguageModelToolsConfirmationService.js'; +import { runWithFakedTimers } from '../../../../../../base/test/common/timeTravelScheduler.js'; // --- Test helpers to reduce repetition and improve readability --- diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_CDATA.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_CDATA.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_CDATA.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_CDATA.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_html_comments.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_html_comments.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_html_comments.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_html_comments.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_invalid_HTML.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_invalid_HTML.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_invalid_HTML.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_invalid_HTML.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_invalid_HTML_with_attributes.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_invalid_HTML_with_attributes.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_invalid_HTML_with_attributes.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_invalid_HTML_with_attributes.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_mixed_valid_and_invalid_HTML.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_mixed_valid_and_invalid_HTML.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_mixed_valid_and_invalid_HTML.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_mixed_valid_and_invalid_HTML.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_remote_images_are_disallowed.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_remote_images_are_disallowed.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_remote_images_are_disallowed.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_remote_images_are_disallowed.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_self-closing_elements.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_self-closing_elements.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_self-closing_elements.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_self-closing_elements.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_self-closing_elements.1.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_self-closing_elements.1.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_self-closing_elements.1.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_self-closing_elements.1.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_simple.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_simple.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_simple.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_simple.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_supportHtml_with_one-line_markdown.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_supportHtml_with_one-line_markdown.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_supportHtml_with_one-line_markdown.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_supportHtml_with_one-line_markdown.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_supportHtml_with_one-line_markdown.1.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_supportHtml_with_one-line_markdown.1.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_supportHtml_with_one-line_markdown.1.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_supportHtml_with_one-line_markdown.1.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_valid_HTML.0.snap b/src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_valid_HTML.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/browser/__snapshots__/ChatMarkdownRenderer_valid_HTML.0.snap rename to src/vs/workbench/contrib/chat/test/browser/widget/__snapshots__/ChatMarkdownRenderer_valid_HTML.0.snap diff --git a/src/vs/workbench/contrib/chat/test/browser/chatTodoListWidget.test.ts b/src/vs/workbench/contrib/chat/test/browser/widget/chatContentParts/chatTodoListWidget.test.ts similarity index 92% rename from src/vs/workbench/contrib/chat/test/browser/chatTodoListWidget.test.ts rename to src/vs/workbench/contrib/chat/test/browser/widget/chatContentParts/chatTodoListWidget.test.ts index f69c5a308d1..55e3022ca7b 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatTodoListWidget.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/widget/chatContentParts/chatTodoListWidget.test.ts @@ -6,15 +6,15 @@ /* eslint-disable no-restricted-syntax */ import assert from 'assert'; -import { Event } from '../../../../../base/common/event.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { ChatTodoListWidget } from '../../browser/chatContentParts/chatTodoListWidget.js'; -import { IChatTodo, IChatTodoListService } from '../../common/chatTodoListService.js'; -import { mainWindow } from '../../../../../base/browser/window.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { TestConfigurationService } from '../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; -import { URI } from '../../../../../base/common/uri.js'; +import { Event } from '../../../../../../../base/common/event.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { ChatTodoListWidget } from '../../../../browser/widget/chatContentParts/chatTodoListWidget.js'; +import { IChatTodo, IChatTodoListService } from '../../../../common/tools/chatTodoListService.js'; +import { mainWindow } from '../../../../../../../base/browser/window.js'; +import { IConfigurationService } from '../../../../../../../platform/configuration/common/configuration.js'; +import { TestConfigurationService } from '../../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { workbenchInstantiationService } from '../../../../../../test/browser/workbenchTestServices.js'; +import { URI } from '../../../../../../../base/common/uri.js'; const testSessionUri = URI.parse('chat-session://test/session1'); diff --git a/src/vs/workbench/contrib/chat/test/browser/chatMarkdownRenderer.test.ts b/src/vs/workbench/contrib/chat/test/browser/widget/chatMarkdownRenderer.test.ts similarity index 90% rename from src/vs/workbench/contrib/chat/test/browser/chatMarkdownRenderer.test.ts rename to src/vs/workbench/contrib/chat/test/browser/widget/chatMarkdownRenderer.test.ts index 1c26d03fe08..4666ec04907 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatMarkdownRenderer.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/widget/chatMarkdownRenderer.test.ts @@ -3,11 +3,11 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { assertSnapshot } from '../../../../../base/test/common/snapshot.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { ChatContentMarkdownRenderer } from '../../browser/chatContentMarkdownRenderer.js'; -import { workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { assertSnapshot } from '../../../../../../base/test/common/snapshot.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { ChatContentMarkdownRenderer } from '../../../browser/widget/chatContentMarkdownRenderer.js'; +import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; suite('ChatMarkdownRenderer', () => { const store = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/browser/chatSelectedTools.test.ts b/src/vs/workbench/contrib/chat/test/browser/widget/input/chatSelectedTools.test.ts similarity index 81% rename from src/vs/workbench/contrib/chat/test/browser/chatSelectedTools.test.ts rename to src/vs/workbench/contrib/chat/test/browser/widget/input/chatSelectedTools.test.ts index 47a89e8237e..3462416b317 100644 --- a/src/vs/workbench/contrib/chat/test/browser/chatSelectedTools.test.ts +++ b/src/vs/workbench/contrib/chat/test/browser/widget/input/chatSelectedTools.test.ts @@ -4,22 +4,22 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { TestConfigurationService } from '../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { ContextKeyService } from '../../../../../platform/contextkey/browser/contextKeyService.js'; -import { workbenchInstantiationService } from '../../../../test/browser/workbenchTestServices.js'; -import { LanguageModelToolsService } from '../../browser/languageModelToolsService.js'; -import { IChatService } from '../../common/chatService.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource, ToolSet } from '../../common/languageModelToolsService.js'; -import { MockChatService } from '../common/mockChatService.js'; -import { ChatSelectedTools } from '../../browser/chatSelectedTools.js'; -import { constObservable } from '../../../../../base/common/observable.js'; -import { Iterable } from '../../../../../base/common/iterator.js'; -import { DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { runWithFakedTimers } from '../../../../../base/test/common/timeTravelScheduler.js'; -import { timeout } from '../../../../../base/common/async.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { ChatMode } from '../../common/chatModes.js'; +import { TestConfigurationService } from '../../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { ContextKeyService } from '../../../../../../../platform/contextkey/browser/contextKeyService.js'; +import { workbenchInstantiationService } from '../../../../../../test/browser/workbenchTestServices.js'; +import { LanguageModelToolsService } from '../../../../browser/tools/languageModelToolsService.js'; +import { IChatService } from '../../../../common/chatService/chatService.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource, ToolSet } from '../../../../common/tools/languageModelToolsService.js'; +import { MockChatService } from '../../../common/chatService/mockChatService.js'; +import { ChatSelectedTools } from '../../../../browser/widget/input/chatSelectedTools.js'; +import { constObservable } from '../../../../../../../base/common/observable.js'; +import { Iterable } from '../../../../../../../base/common/iterator.js'; +import { DisposableStore } from '../../../../../../../base/common/lifecycle.js'; +import { runWithFakedTimers } from '../../../../../../../base/test/common/timeTravelScheduler.js'; +import { timeout } from '../../../../../../../base/common/async.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ChatMode } from '../../../../common/chatModes.js'; suite('ChatSelectedTools', () => { diff --git a/src/vs/workbench/contrib/chat/test/browser/mockChatWidget.ts b/src/vs/workbench/contrib/chat/test/browser/widget/mockChatWidget.ts similarity index 81% rename from src/vs/workbench/contrib/chat/test/browser/mockChatWidget.ts rename to src/vs/workbench/contrib/chat/test/browser/widget/mockChatWidget.ts index 9293a817221..2014bd9b9d4 100644 --- a/src/vs/workbench/contrib/chat/test/browser/mockChatWidget.ts +++ b/src/vs/workbench/contrib/chat/test/browser/widget/mockChatWidget.ts @@ -3,11 +3,11 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Event } from '../../../../../base/common/event.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { IChatWidget, IChatWidgetService } from '../../browser/chat.js'; -import { ChatAgentLocation } from '../../common/constants.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { IChatWidget, IChatWidgetService } from '../../../browser/chat.js'; +import { ChatAgentLocation } from '../../../common/constants.js'; export class MockChatWidgetService implements IChatWidgetService { readonly onDidAddWidget: Event = Event.None; diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_async_content.0.snap b/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_async_content.0.snap deleted file mode 100644 index 2abf0a346b4..00000000000 --- a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_async_content.0.snap +++ /dev/null @@ -1,12 +0,0 @@ -[ - { - resolvedContent: { }, - content: "text", - kind: "asyncContent" - }, - { - resolvedContent: { }, - content: "text2", - kind: "asyncContent" - } -] \ No newline at end of file diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_async_content.1.snap b/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_async_content.1.snap deleted file mode 100644 index 9a2a0ee7bb2..00000000000 --- a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_async_content.1.snap +++ /dev/null @@ -1,26 +0,0 @@ -[ - { - content: { - value: "resolved", - isTrusted: false, - supportThemeIcons: false, - supportHtml: false - }, - kind: "markdownContent" - }, - { - kind: "treeData", - treeData: { - label: "label", - uri: { - scheme: "https", - authority: "microsoft.com", - path: "/", - query: "", - fragment: "", - _formatted: null, - _fsPath: null - } - } - } -] \ No newline at end of file diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_content__markdown.0.snap b/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_content__markdown.0.snap deleted file mode 100644 index b923c5ded84..00000000000 --- a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_content__markdown.0.snap +++ /dev/null @@ -1,11 +0,0 @@ -[ - { - content: { - value: "textmarkdown", - isTrusted: { enabledCommands: [ ] }, - supportThemeIcons: false, - supportHtml: false - }, - kind: "markdownContent" - } -] \ No newline at end of file diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_markdown__content.0.snap b/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_markdown__content.0.snap deleted file mode 100644 index 0643f935d8f..00000000000 --- a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_markdown__content.0.snap +++ /dev/null @@ -1,11 +0,0 @@ -[ - { - content: { - value: "markdowntext", - isTrusted: false, - supportThemeIcons: false, - supportHtml: false - }, - kind: "markdownContent" - } -] \ No newline at end of file diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_markdown__markdown.0.snap b/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_markdown__markdown.0.snap deleted file mode 100644 index a7cb1f9bd3a..00000000000 --- a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_markdown__markdown.0.snap +++ /dev/null @@ -1,11 +0,0 @@ -[ - { - content: { - value: "markdown1markdown2", - isTrusted: { enabledCommands: [ ] }, - supportThemeIcons: false, - supportHtml: false - }, - kind: "markdownContent" - } -] \ No newline at end of file diff --git a/src/vs/workbench/contrib/chat/test/common/chatModeService.test.ts b/src/vs/workbench/contrib/chat/test/common/chatModeService.test.ts index dd8fe702e02..fe448e3fd95 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatModeService.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/chatModeService.test.ts @@ -16,11 +16,11 @@ import { ILogService, NullLogService } from '../../../../../platform/log/common/ import { IStorageService } from '../../../../../platform/storage/common/storage.js'; import { TestConfigurationService } from '../../../../../platform/configuration/test/common/testConfigurationService.js'; import { TestStorageService } from '../../../../test/common/workbenchTestServices.js'; -import { IChatAgentService } from '../../common/chatAgents.js'; +import { IChatAgentService } from '../../common/participants/chatAgents.js'; import { ChatMode, ChatModeService } from '../../common/chatModes.js'; import { ChatModeKind } from '../../common/constants.js'; import { IAgentSource, ICustomAgent, IPromptsService, PromptsStorage } from '../../common/promptSyntax/service/promptsService.js'; -import { MockPromptsService } from './mockPromptsService.js'; +import { MockPromptsService } from './promptSyntax/service/mockPromptsService.js'; class TestChatAgentService implements Partial { _serviceBrand: undefined; diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_can_deserialize.0.snap b/src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_can_deserialize.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_can_deserialize.0.snap rename to src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_can_deserialize.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_can_deserialize_with_response.0.snap b/src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_can_deserialize_with_response.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_can_deserialize_with_response.0.snap rename to src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_can_deserialize_with_response.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_can_serialize.0.snap b/src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_can_serialize.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_can_serialize.0.snap rename to src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_can_serialize.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_can_serialize.1.snap b/src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_can_serialize.1.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_can_serialize.1.snap rename to src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_can_serialize.1.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_sendRequest_fails.0.snap b/src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_sendRequest_fails.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatService_sendRequest_fails.0.snap rename to src/vs/workbench/contrib/chat/test/common/chatService/__snapshots__/ChatService_sendRequest_fails.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/chatService.test.ts b/src/vs/workbench/contrib/chat/test/common/chatService/chatService.test.ts similarity index 83% rename from src/vs/workbench/contrib/chat/test/common/chatService.test.ts rename to src/vs/workbench/contrib/chat/test/common/chatService/chatService.test.ts index e8b59b9fbbe..4b1c94e37e3 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatService.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/chatService/chatService.test.ts @@ -4,46 +4,46 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { Event } from '../../../../../base/common/event.js'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { DisposableStore } from '../../../../../base/common/lifecycle.js'; -import { constObservable, observableValue } from '../../../../../base/common/observable.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { assertSnapshot } from '../../../../../base/test/common/snapshot.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { TestConfigurationService } from '../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IEnvironmentService } from '../../../../../platform/environment/common/environment.js'; -import { IFileService } from '../../../../../platform/files/common/files.js'; -import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; -import { TestInstantiationService } from '../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { MockContextKeyService } from '../../../../../platform/keybinding/test/common/mockKeybindingService.js'; -import { ILogService, NullLogService } from '../../../../../platform/log/common/log.js'; -import { IStorageService } from '../../../../../platform/storage/common/storage.js'; -import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; -import { NullTelemetryService } from '../../../../../platform/telemetry/common/telemetryUtils.js'; -import { IUserDataProfilesService, toUserDataProfile } from '../../../../../platform/userDataProfile/common/userDataProfile.js'; -import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; -import { IWorkbenchAssignmentService } from '../../../../services/assignment/common/assignmentService.js'; -import { NullWorkbenchAssignmentService } from '../../../../services/assignment/test/common/nullAssignmentService.js'; -import { IExtensionService, nullExtensionDescription } from '../../../../services/extensions/common/extensions.js'; -import { ILifecycleService } from '../../../../services/lifecycle/common/lifecycle.js'; -import { IViewsService } from '../../../../services/views/common/viewsService.js'; -import { InMemoryTestFileService, mock, TestContextService, TestExtensionService, TestStorageService } from '../../../../test/common/workbenchTestServices.js'; -import { IMcpService } from '../../../mcp/common/mcpTypes.js'; -import { TestMcpService } from '../../../mcp/test/common/testMcpService.js'; -import { ChatAgentService, IChatAgent, IChatAgentData, IChatAgentImplementation, IChatAgentService } from '../../common/chatAgents.js'; -import { IChatEditingService, IChatEditingSession } from '../../common/chatEditingService.js'; -import { ChatModel, IChatModel, ISerializableChatData } from '../../common/chatModel.js'; -import { IChatFollowup, IChatModelReference, IChatService } from '../../common/chatService.js'; -import { ChatService } from '../../common/chatServiceImpl.js'; -import { ChatSlashCommandService, IChatSlashCommandService } from '../../common/chatSlashCommands.js'; -import { IChatVariablesService } from '../../common/chatVariables.js'; -import { ChatAgentLocation, ChatModeKind } from '../../common/constants.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { DisposableStore } from '../../../../../../base/common/lifecycle.js'; +import { constObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { assertSnapshot } from '../../../../../../base/test/common/snapshot.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { Range } from '../../../../../../editor/common/core/range.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { IEnvironmentService } from '../../../../../../platform/environment/common/environment.js'; +import { IFileService } from '../../../../../../platform/files/common/files.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { MockContextKeyService } from '../../../../../../platform/keybinding/test/common/mockKeybindingService.js'; +import { ILogService, NullLogService } from '../../../../../../platform/log/common/log.js'; +import { IStorageService } from '../../../../../../platform/storage/common/storage.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { NullTelemetryService } from '../../../../../../platform/telemetry/common/telemetryUtils.js'; +import { IUserDataProfilesService, toUserDataProfile } from '../../../../../../platform/userDataProfile/common/userDataProfile.js'; +import { IWorkspaceContextService } from '../../../../../../platform/workspace/common/workspace.js'; +import { IWorkbenchAssignmentService } from '../../../../../services/assignment/common/assignmentService.js'; +import { NullWorkbenchAssignmentService } from '../../../../../services/assignment/test/common/nullAssignmentService.js'; +import { IExtensionService, nullExtensionDescription } from '../../../../../services/extensions/common/extensions.js'; +import { ILifecycleService } from '../../../../../services/lifecycle/common/lifecycle.js'; +import { IViewsService } from '../../../../../services/views/common/viewsService.js'; +import { InMemoryTestFileService, mock, TestContextService, TestExtensionService, TestStorageService } from '../../../../../test/common/workbenchTestServices.js'; +import { IMcpService } from '../../../../mcp/common/mcpTypes.js'; +import { TestMcpService } from '../../../../mcp/test/common/testMcpService.js'; +import { ChatAgentService, IChatAgent, IChatAgentData, IChatAgentImplementation, IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { IChatEditingService, IChatEditingSession } from '../../../common/editing/chatEditingService.js'; +import { ChatModel, IChatModel, ISerializableChatData } from '../../../common/model/chatModel.js'; +import { IChatFollowup, IChatModelReference, IChatService } from '../../../common/chatService/chatService.js'; +import { ChatService } from '../../../common/chatService/chatServiceImpl.js'; +import { ChatSlashCommandService, IChatSlashCommandService } from '../../../common/participants/chatSlashCommands.js'; +import { IChatVariablesService } from '../../../common/attachments/chatVariables.js'; +import { ChatAgentLocation, ChatModeKind } from '../../../common/constants.js'; import { MockChatService } from './mockChatService.js'; -import { MockChatVariablesService } from './mockChatVariables.js'; +import { MockChatVariablesService } from '../mockChatVariables.js'; const chatAgentWithUsedContextId = 'ChatProviderWithUsedContext'; const chatAgentWithUsedContext: IChatAgent = { diff --git a/src/vs/workbench/contrib/chat/test/common/mockChatService.ts b/src/vs/workbench/contrib/chat/test/common/chatService/mockChatService.ts similarity index 88% rename from src/vs/workbench/contrib/chat/test/common/mockChatService.ts rename to src/vs/workbench/contrib/chat/test/common/chatService/mockChatService.ts index d826d3e2461..a7a5cce8e4b 100644 --- a/src/vs/workbench/contrib/chat/test/common/mockChatService.ts +++ b/src/vs/workbench/contrib/chat/test/common/chatService/mockChatService.ts @@ -3,15 +3,15 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { Event } from '../../../../../base/common/event.js'; -import { ResourceMap } from '../../../../../base/common/map.js'; -import { IObservable, observableValue } from '../../../../../base/common/observable.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { IChatModel, IChatRequestModel, IChatRequestVariableData, ISerializableChatData } from '../../common/chatModel.js'; -import { IParsedChatRequest } from '../../common/chatParserTypes.js'; -import { IChatCompleteResponse, IChatDetail, IChatModelReference, IChatProgress, IChatProviderInfo, IChatSendRequestData, IChatSendRequestOptions, IChatService, IChatSessionContext, IChatSessionStartOptions, IChatUserActionEvent } from '../../common/chatService.js'; -import { ChatAgentLocation } from '../../common/constants.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { ResourceMap } from '../../../../../../base/common/map.js'; +import { IObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { IChatModel, IChatRequestModel, IChatRequestVariableData, ISerializableChatData } from '../../../common/model/chatModel.js'; +import { IParsedChatRequest } from '../../../common/requestParser/chatParserTypes.js'; +import { IChatCompleteResponse, IChatDetail, IChatModelReference, IChatProgress, IChatProviderInfo, IChatSendRequestData, IChatSendRequestOptions, IChatService, IChatSessionContext, IChatSessionStartOptions, IChatUserActionEvent } from '../../../common/chatService/chatService.js'; +import { ChatAgentLocation } from '../../../common/constants.js'; export class MockChatService implements IChatService { chatModels: IObservable> = observableValue('chatModels', []); diff --git a/src/vs/workbench/contrib/chat/test/common/languageModels.test.ts b/src/vs/workbench/contrib/chat/test/common/languageModels.test.ts index ac50ccf476a..871281c33e1 100644 --- a/src/vs/workbench/contrib/chat/test/common/languageModels.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/languageModels.test.ts @@ -13,7 +13,7 @@ import { NullLogService } from '../../../../../platform/log/common/log.js'; import { ChatMessageRole, languageModelChatProviderExtensionPoint, LanguageModelsService, IChatMessage, IChatResponsePart } from '../../common/languageModels.js'; import { IExtensionService, nullExtensionDescription } from '../../../../services/extensions/common/extensions.js'; import { ExtensionsRegistry } from '../../../../services/extensions/common/extensionsRegistry.js'; -import { DEFAULT_MODEL_PICKER_CATEGORY } from '../../common/modelPicker/modelPickerWidget.js'; +import { DEFAULT_MODEL_PICKER_CATEGORY } from '../../common/widget/input/modelPickerWidget.js'; import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js'; import { TestChatEntitlementService, TestStorageService } from '../../../../test/common/workbenchTestServices.js'; import { Event } from '../../../../../base/common/event.js'; diff --git a/src/vs/workbench/contrib/chat/test/common/mockChatSessionsService.ts b/src/vs/workbench/contrib/chat/test/common/mockChatSessionsService.ts index ba984a2221d..0fdb89b1a55 100644 --- a/src/vs/workbench/contrib/chat/test/common/mockChatSessionsService.ts +++ b/src/vs/workbench/contrib/chat/test/common/mockChatSessionsService.ts @@ -9,9 +9,9 @@ import { IDisposable } from '../../../../../base/common/lifecycle.js'; import { ResourceMap } from '../../../../../base/common/map.js'; import { ThemeIcon } from '../../../../../base/common/themables.js'; import { URI } from '../../../../../base/common/uri.js'; -import { IChatAgentAttachmentCapabilities } from '../../common/chatAgents.js'; -import { IChatModel } from '../../common/chatModel.js'; -import { IChatService } from '../../common/chatService.js'; +import { IChatAgentAttachmentCapabilities } from '../../common/participants/chatAgents.js'; +import { IChatModel } from '../../common/model/chatModel.js'; +import { IChatService } from '../../common/chatService/chatService.js'; import { IChatSession, IChatSessionContentProvider, IChatSessionItem, IChatSessionItemProvider, IChatSessionProviderOptionGroup, IChatSessionsExtensionPoint, IChatSessionsService, SessionOptionsChangedCallback } from '../../common/chatSessionsService.js'; export class MockChatSessionsService implements IChatSessionsService { diff --git a/src/vs/workbench/contrib/chat/test/common/mockChatVariables.ts b/src/vs/workbench/contrib/chat/test/common/mockChatVariables.ts index b075db33b8c..7e8d3e487a2 100644 --- a/src/vs/workbench/contrib/chat/test/common/mockChatVariables.ts +++ b/src/vs/workbench/contrib/chat/test/common/mockChatVariables.ts @@ -5,8 +5,8 @@ import { ResourceMap } from '../../../../../base/common/map.js'; import { URI } from '../../../../../base/common/uri.js'; -import { IChatVariablesService, IDynamicVariable } from '../../common/chatVariables.js'; -import { IToolAndToolSetEnablementMap } from '../../common/languageModelToolsService.js'; +import { IChatVariablesService, IDynamicVariable } from '../../common/attachments/chatVariables.js'; +import { IToolAndToolSetEnablementMap } from '../../common/tools/languageModelToolsService.js'; export class MockChatVariablesService implements IChatVariablesService { _serviceBrand: undefined; diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_inline_reference.0.snap b/src/vs/workbench/contrib/chat/test/common/model/__snapshots__/Response_inline_reference.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_inline_reference.0.snap rename to src/vs/workbench/contrib/chat/test/common/model/__snapshots__/Response_inline_reference.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_mergeable_markdown.0.snap b/src/vs/workbench/contrib/chat/test/common/model/__snapshots__/Response_mergeable_markdown.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_mergeable_markdown.0.snap rename to src/vs/workbench/contrib/chat/test/common/model/__snapshots__/Response_mergeable_markdown.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_not_mergeable_markdown.0.snap b/src/vs/workbench/contrib/chat/test/common/model/__snapshots__/Response_not_mergeable_markdown.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Response_not_mergeable_markdown.0.snap rename to src/vs/workbench/contrib/chat/test/common/model/__snapshots__/Response_not_mergeable_markdown.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/chatModel.test.ts b/src/vs/workbench/contrib/chat/test/common/model/chatModel.test.ts similarity index 91% rename from src/vs/workbench/contrib/chat/test/common/chatModel.test.ts rename to src/vs/workbench/contrib/chat/test/common/model/chatModel.test.ts index 6bf9afae24e..aee05c464d1 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatModel.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/model/chatModel.test.ts @@ -5,28 +5,28 @@ import assert from 'assert'; import * as sinon from 'sinon'; -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { observableValue } from '../../../../../base/common/observable.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { assertSnapshot } from '../../../../../base/test/common/snapshot.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { Range } from '../../../../../editor/common/core/range.js'; -import { OffsetRange } from '../../../../../editor/common/core/ranges/offsetRange.js'; -import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; -import { TestConfigurationService } from '../../../../../platform/configuration/test/common/testConfigurationService.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { TestInstantiationService } from '../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { MockContextKeyService } from '../../../../../platform/keybinding/test/common/mockKeybindingService.js'; -import { ILogService, NullLogService } from '../../../../../platform/log/common/log.js'; -import { IStorageService } from '../../../../../platform/storage/common/storage.js'; -import { IExtensionService } from '../../../../services/extensions/common/extensions.js'; -import { TestExtensionService, TestStorageService } from '../../../../test/common/workbenchTestServices.js'; -import { ChatAgentService, IChatAgentService } from '../../common/chatAgents.js'; -import { ChatModel, IExportableChatData, ISerializableChatData1, ISerializableChatData2, ISerializableChatData3, isExportableSessionData, isSerializableSessionData, normalizeSerializableChatData, Response } from '../../common/chatModel.js'; -import { ChatRequestTextPart } from '../../common/chatParserTypes.js'; -import { IChatService, IChatToolInvocation } from '../../common/chatService.js'; -import { ChatAgentLocation } from '../../common/constants.js'; -import { MockChatService } from './mockChatService.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { observableValue } from '../../../../../../base/common/observable.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { assertSnapshot } from '../../../../../../base/test/common/snapshot.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { Range } from '../../../../../../editor/common/core/range.js'; +import { OffsetRange } from '../../../../../../editor/common/core/ranges/offsetRange.js'; +import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; +import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { MockContextKeyService } from '../../../../../../platform/keybinding/test/common/mockKeybindingService.js'; +import { ILogService, NullLogService } from '../../../../../../platform/log/common/log.js'; +import { IStorageService } from '../../../../../../platform/storage/common/storage.js'; +import { IExtensionService } from '../../../../../services/extensions/common/extensions.js'; +import { TestExtensionService, TestStorageService } from '../../../../../test/common/workbenchTestServices.js'; +import { ChatAgentService, IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { ChatModel, IExportableChatData, ISerializableChatData1, ISerializableChatData2, ISerializableChatData3, isExportableSessionData, isSerializableSessionData, normalizeSerializableChatData, Response } from '../../../common/model/chatModel.js'; +import { ChatRequestTextPart } from '../../../common/requestParser/chatParserTypes.js'; +import { IChatService, IChatToolInvocation } from '../../../common/chatService/chatService.js'; +import { ChatAgentLocation } from '../../../common/constants.js'; +import { MockChatService } from '../chatService/mockChatService.js'; suite('ChatModel', () => { const testDisposables = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/common/chatModelStore.test.ts b/src/vs/workbench/contrib/chat/test/common/model/chatModelStore.test.ts similarity index 91% rename from src/vs/workbench/contrib/chat/test/common/chatModelStore.test.ts rename to src/vs/workbench/contrib/chat/test/common/model/chatModelStore.test.ts index 92a59b2c6df..19bebd6283a 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatModelStore.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/model/chatModelStore.test.ts @@ -4,13 +4,13 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { DeferredPromise } from '../../../../../base/common/async.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { NullLogService } from '../../../../../platform/log/common/log.js'; -import { ChatModel } from '../../common/chatModel.js'; -import { ChatModelStore, IStartSessionProps } from '../../common/chatModelStore.js'; -import { ChatAgentLocation } from '../../common/constants.js'; +import { DeferredPromise } from '../../../../../../base/common/async.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { NullLogService } from '../../../../../../platform/log/common/log.js'; +import { ChatModel } from '../../../common/model/chatModel.js'; +import { ChatModelStore, IStartSessionProps } from '../../../common/model/chatModelStore.js'; +import { ChatAgentLocation } from '../../../common/constants.js'; import { MockChatModel } from './mockChatModel.js'; suite('ChatModelStore', () => { diff --git a/src/vs/workbench/contrib/chat/test/common/chatSessionStore.test.ts b/src/vs/workbench/contrib/chat/test/common/model/chatSessionStore.test.ts similarity index 90% rename from src/vs/workbench/contrib/chat/test/common/chatSessionStore.test.ts rename to src/vs/workbench/contrib/chat/test/common/model/chatSessionStore.test.ts index f347bfc1604..0510c2b7afc 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatSessionStore.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/model/chatSessionStore.test.ts @@ -4,24 +4,24 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { URI } from '../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { IEnvironmentService } from '../../../../../platform/environment/common/environment.js'; -import { IFileService } from '../../../../../platform/files/common/files.js'; -import { ServiceCollection } from '../../../../../platform/instantiation/common/serviceCollection.js'; -import { TestInstantiationService } from '../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { ILogService, NullLogService } from '../../../../../platform/log/common/log.js'; -import { IStorageService } from '../../../../../platform/storage/common/storage.js'; -import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; -import { NullTelemetryService } from '../../../../../platform/telemetry/common/telemetryUtils.js'; -import { IUserDataProfilesService, toUserDataProfile } from '../../../../../platform/userDataProfile/common/userDataProfile.js'; -import { IWorkspaceContextService, WorkspaceFolder } from '../../../../../platform/workspace/common/workspace.js'; -import { TestWorkspace, Workspace } from '../../../../../platform/workspace/test/common/testWorkspace.js'; -import { ILifecycleService } from '../../../../services/lifecycle/common/lifecycle.js'; -import { InMemoryTestFileService, TestContextService, TestLifecycleService, TestStorageService } from '../../../../test/common/workbenchTestServices.js'; -import { ChatModel } from '../../common/chatModel.js'; -import { ChatSessionStore, IChatTransfer } from '../../common/chatSessionStore.js'; -import { LocalChatSessionUri } from '../../common/chatUri.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { IEnvironmentService } from '../../../../../../platform/environment/common/environment.js'; +import { IFileService } from '../../../../../../platform/files/common/files.js'; +import { ServiceCollection } from '../../../../../../platform/instantiation/common/serviceCollection.js'; +import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { ILogService, NullLogService } from '../../../../../../platform/log/common/log.js'; +import { IStorageService } from '../../../../../../platform/storage/common/storage.js'; +import { ITelemetryService } from '../../../../../../platform/telemetry/common/telemetry.js'; +import { NullTelemetryService } from '../../../../../../platform/telemetry/common/telemetryUtils.js'; +import { IUserDataProfilesService, toUserDataProfile } from '../../../../../../platform/userDataProfile/common/userDataProfile.js'; +import { IWorkspaceContextService, WorkspaceFolder } from '../../../../../../platform/workspace/common/workspace.js'; +import { TestWorkspace, Workspace } from '../../../../../../platform/workspace/test/common/testWorkspace.js'; +import { ILifecycleService } from '../../../../../services/lifecycle/common/lifecycle.js'; +import { InMemoryTestFileService, TestContextService, TestLifecycleService, TestStorageService } from '../../../../../test/common/workbenchTestServices.js'; +import { ChatModel } from '../../../common/model/chatModel.js'; +import { ChatSessionStore, IChatTransfer } from '../../../common/model/chatSessionStore.js'; +import { LocalChatSessionUri } from '../../../common/model/chatUri.js'; import { MockChatModel } from './mockChatModel.js'; function createMockChatModel(sessionResource: URI, options?: { customTitle?: string }): ChatModel { diff --git a/src/vs/workbench/contrib/chat/test/common/chatWordCounter.test.ts b/src/vs/workbench/contrib/chat/test/common/model/chatWordCounter.test.ts similarity index 96% rename from src/vs/workbench/contrib/chat/test/common/chatWordCounter.test.ts rename to src/vs/workbench/contrib/chat/test/common/model/chatWordCounter.test.ts index 3281a16c9d1..6ae135ef22c 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatWordCounter.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/model/chatWordCounter.test.ts @@ -4,8 +4,8 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { getNWords, IWordCountResult } from '../../common/chatWordCounter.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { getNWords, IWordCountResult } from '../../../common/model/chatWordCounter.js'; suite('ChatWordCounter', () => { ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/common/mockChatModel.ts b/src/vs/workbench/contrib/chat/test/common/model/mockChatModel.ts similarity index 84% rename from src/vs/workbench/contrib/chat/test/common/mockChatModel.ts rename to src/vs/workbench/contrib/chat/test/common/model/mockChatModel.ts index 851ad51d5c5..35ae57d3cc5 100644 --- a/src/vs/workbench/contrib/chat/test/common/mockChatModel.ts +++ b/src/vs/workbench/contrib/chat/test/common/model/mockChatModel.ts @@ -3,13 +3,13 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Emitter } from '../../../../../base/common/event.js'; -import { Disposable } from '../../../../../base/common/lifecycle.js'; -import { IObservable, observableValue } from '../../../../../base/common/observable.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { IChatEditingSession } from '../../common/chatEditingService.js'; -import { IChatChangeEvent, IChatModel, IChatRequestModel, IChatRequestNeedsInputInfo, IExportableChatData, IInputModel, ISerializableChatData } from '../../common/chatModel.js'; -import { ChatAgentLocation } from '../../common/constants.js'; +import { Emitter } from '../../../../../../base/common/event.js'; +import { Disposable } from '../../../../../../base/common/lifecycle.js'; +import { IObservable, observableValue } from '../../../../../../base/common/observable.js'; +import { URI } from '../../../../../../base/common/uri.js'; +import { IChatEditingSession } from '../../../common/editing/chatEditingService.js'; +import { IChatChangeEvent, IChatModel, IChatRequestModel, IChatRequestNeedsInputInfo, IExportableChatData, IInputModel, ISerializableChatData } from '../../../common/model/chatModel.js'; +import { ChatAgentLocation } from '../../../common/constants.js'; export class MockChatModel extends Disposable implements IChatModel { readonly onDidDispose = this._register(new Emitter()).event; diff --git a/src/vs/workbench/contrib/chat/test/common/chatAgents.test.ts b/src/vs/workbench/contrib/chat/test/common/participants/chatAgents.test.ts similarity index 87% rename from src/vs/workbench/contrib/chat/test/common/chatAgents.test.ts rename to src/vs/workbench/contrib/chat/test/common/participants/chatAgents.test.ts index 3c43f4e22de..98a8e87fb76 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatAgents.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/participants/chatAgents.test.ts @@ -4,12 +4,12 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { ContextKeyExpression } from '../../../../../platform/contextkey/common/contextkey.js'; -import { ExtensionIdentifier } from '../../../../../platform/extensions/common/extensions.js'; -import { MockContextKeyService } from '../../../../../platform/keybinding/test/common/mockKeybindingService.js'; -import { ChatAgentService, IChatAgentData, IChatAgentImplementation } from '../../common/chatAgents.js'; -import { TestConfigurationService } from '../../../../../platform/configuration/test/common/testConfigurationService.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { ContextKeyExpression } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { ExtensionIdentifier } from '../../../../../../platform/extensions/common/extensions.js'; +import { MockContextKeyService } from '../../../../../../platform/keybinding/test/common/mockKeybindingService.js'; +import { ChatAgentService, IChatAgentData, IChatAgentImplementation } from '../../../common/participants/chatAgents.js'; +import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; const testAgentId = 'testAgent'; const testAgentData: IChatAgentData = { diff --git a/src/vs/workbench/contrib/chat/test/common/promptSyntax/promptFileLocations.test.ts b/src/vs/workbench/contrib/chat/test/common/promptSyntax/config/promptFileLocations.test.ts similarity index 94% rename from src/vs/workbench/contrib/chat/test/common/promptSyntax/promptFileLocations.test.ts rename to src/vs/workbench/contrib/chat/test/common/promptSyntax/config/promptFileLocations.test.ts index f850fd6fb2f..38d354c19a0 100644 --- a/src/vs/workbench/contrib/chat/test/common/promptSyntax/promptFileLocations.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/promptSyntax/config/promptFileLocations.test.ts @@ -4,10 +4,10 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { URI } from '../../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; -import { getPromptFileType, getCleanPromptName } from '../../../common/promptSyntax/config/promptFileLocations.js'; -import { PromptsType } from '../../../common/promptSyntax/promptTypes.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { getPromptFileType, getCleanPromptName } from '../../../../common/promptSyntax/config/promptFileLocations.js'; +import { PromptsType } from '../../../../common/promptSyntax/promptTypes.js'; suite('promptFileLocations', function () { ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/common/mockPromptsService.ts b/src/vs/workbench/contrib/chat/test/common/promptSyntax/service/mockPromptsService.ts similarity index 83% rename from src/vs/workbench/contrib/chat/test/common/mockPromptsService.ts rename to src/vs/workbench/contrib/chat/test/common/promptSyntax/service/mockPromptsService.ts index 1d377684316..04fb873efef 100644 --- a/src/vs/workbench/contrib/chat/test/common/mockPromptsService.ts +++ b/src/vs/workbench/contrib/chat/test/common/promptSyntax/service/mockPromptsService.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { Emitter, Event } from '../../../../../base/common/event.js'; -import { IDisposable } from '../../../../../base/common/lifecycle.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { ITextModel } from '../../../../../editor/common/model.js'; -import { IExtensionDescription } from '../../../../../platform/extensions/common/extensions.js'; -import { PromptsType } from '../../common/promptSyntax/promptTypes.js'; -import { ParsedPromptFile } from '../../common/promptSyntax/promptFileParser.js'; -import { IAgentSkill, ICustomAgent, ICustomAgentQueryOptions, IExternalCustomAgent, IPromptPath, IPromptsService, PromptsStorage } from '../../common/promptSyntax/service/promptsService.js'; -import { ResourceSet } from '../../../../../base/common/map.js'; +import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; +import { Emitter, Event } from '../../../../../../../base/common/event.js'; +import { IDisposable } from '../../../../../../../base/common/lifecycle.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ITextModel } from '../../../../../../../editor/common/model.js'; +import { IExtensionDescription } from '../../../../../../../platform/extensions/common/extensions.js'; +import { PromptsType } from '../../../../common/promptSyntax/promptTypes.js'; +import { ParsedPromptFile } from '../../../../common/promptSyntax/promptFileParser.js'; +import { IAgentSkill, ICustomAgent, ICustomAgentQueryOptions, IExternalCustomAgent, IPromptPath, IPromptsService, PromptsStorage } from '../../../../common/promptSyntax/service/promptsService.js'; +import { ResourceSet } from '../../../../../../../base/common/map.js'; export class MockPromptsService implements IPromptsService { diff --git a/src/vs/workbench/contrib/chat/test/common/promptSyntax/service/promptsService.test.ts b/src/vs/workbench/contrib/chat/test/common/promptSyntax/service/promptsService.test.ts index e39deb1a92f..8179652e429 100644 --- a/src/vs/workbench/contrib/chat/test/common/promptSyntax/service/promptsService.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/promptSyntax/service/promptsService.test.ts @@ -31,7 +31,7 @@ import { IWorkbenchEnvironmentService } from '../../../../../../services/environ import { IFilesConfigurationService } from '../../../../../../services/filesConfiguration/common/filesConfigurationService.js'; import { IUserDataProfileService } from '../../../../../../services/userDataProfile/common/userDataProfile.js'; import { TestContextService, TestUserDataProfileService } from '../../../../../../test/common/workbenchTestServices.js'; -import { ChatRequestVariableSet, isPromptFileVariableEntry, toFileVariableEntry } from '../../../../common/chatVariableEntries.js'; +import { ChatRequestVariableSet, isPromptFileVariableEntry, toFileVariableEntry } from '../../../../common/attachments/chatVariableEntries.js'; import { ComputeAutomaticInstructions, newInstructionsCollectionEvent } from '../../../../common/promptSyntax/computeAutomaticInstructions.js'; import { PromptsConfig } from '../../../../common/promptSyntax/config/config.js'; import { INSTRUCTION_FILE_EXTENSION, INSTRUCTIONS_DEFAULT_SOURCE_FOLDER, LEGACY_MODE_DEFAULT_SOURCE_FOLDER, PROMPT_DEFAULT_SOURCE_FOLDER, PROMPT_FILE_EXTENSION } from '../../../../common/promptSyntax/config/promptFileLocations.js'; diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_and_subcommand_after_newline.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_and_subcommand_after_newline.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_and_subcommand_after_newline.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_and_subcommand_after_newline.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_and_subcommand_with_leading_whitespace.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_and_subcommand_with_leading_whitespace.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_and_subcommand_with_leading_whitespace.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_and_subcommand_with_leading_whitespace.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_but_edit_mode.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_but_edit_mode.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_but_edit_mode.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_but_edit_mode.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_not_first.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_not_first.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_not_first.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_not_first.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_with_question_mark.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_with_question_mark.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_with_question_mark.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_with_question_mark.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_with_subcommand_after_text.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_with_subcommand_after_text.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agent_with_subcommand_after_text.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agent_with_subcommand_after_text.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agents__subCommand.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agents__subCommand.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agents__subCommand.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agents__subCommand.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agents_and_tools_and_multiline.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agents_and_tools_and_multiline.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agents_and_tools_and_multiline.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agents_and_tools_and_multiline.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agents_and_tools_and_multiline__part2.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agents_and_tools_and_multiline__part2.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_agents_and_tools_and_multiline__part2.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_agents_and_tools_and_multiline__part2.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_invalid_slash_command.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_invalid_slash_command.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_invalid_slash_command.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_invalid_slash_command.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_multiple_slash_commands.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_multiple_slash_commands.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_multiple_slash_commands.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_multiple_slash_commands.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_plain_text.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_plain_text.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_plain_text.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_plain_text.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_plain_text_with_newlines.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_plain_text_with_newlines.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_plain_text_with_newlines.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_plain_text_with_newlines.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_prompt_slash_command.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_prompt_slash_command.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_prompt_slash_command.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_prompt_slash_command.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_prompt_slash_command_after_slash.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_prompt_slash_command_after_slash.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_prompt_slash_command_after_slash.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_prompt_slash_command_after_slash.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_prompt_slash_command_after_text.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_prompt_slash_command_after_text.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_prompt_slash_command_after_text.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_prompt_slash_command_after_text.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_prompt_slash_command_with_numbers.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_prompt_slash_command_with_numbers.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_prompt_slash_command_with_numbers.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_prompt_slash_command_with_numbers.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_slash_command.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_slash_command.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_slash_command.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_slash_command.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_slash_command_after_whitespace.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_slash_command_after_whitespace.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_slash_command_after_whitespace.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_slash_command_after_whitespace.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_slash_command_not_first.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_slash_command_not_first.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_slash_command_not_first.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_slash_command_not_first.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_slash_in_text.0.snap b/src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_slash_in_text.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/ChatRequestParser_slash_in_text.0.snap rename to src/vs/workbench/contrib/chat/test/common/requestParser/__snapshots__/ChatRequestParser_slash_in_text.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/chatRequestParser.test.ts b/src/vs/workbench/contrib/chat/test/common/requestParser/chatRequestParser.test.ts similarity index 89% rename from src/vs/workbench/contrib/chat/test/common/chatRequestParser.test.ts rename to src/vs/workbench/contrib/chat/test/common/requestParser/chatRequestParser.test.ts index 35d449091ad..1ec95eed15f 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatRequestParser.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/requestParser/chatRequestParser.test.ts @@ -3,28 +3,28 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { mockObject } from '../../../../../base/test/common/mock.js'; -import { assertSnapshot } from '../../../../../base/test/common/snapshot.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { TestInstantiationService } from '../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { MockContextKeyService } from '../../../../../platform/keybinding/test/common/mockKeybindingService.js'; -import { ILogService, NullLogService } from '../../../../../platform/log/common/log.js'; -import { IStorageService } from '../../../../../platform/storage/common/storage.js'; -import { IExtensionService, nullExtensionDescription } from '../../../../services/extensions/common/extensions.js'; -import { TestExtensionService, TestStorageService } from '../../../../test/common/workbenchTestServices.js'; -import { ChatAgentService, IChatAgentCommand, IChatAgentData, IChatAgentService } from '../../common/chatAgents.js'; -import { ChatRequestParser } from '../../common/chatRequestParser.js'; -import { IChatService } from '../../common/chatService.js'; -import { IChatSlashCommandService } from '../../common/chatSlashCommands.js'; -import { LocalChatSessionUri } from '../../common/chatUri.js'; -import { IChatVariablesService } from '../../common/chatVariables.js'; -import { ChatAgentLocation, ChatModeKind } from '../../common/constants.js'; -import { IToolData, ToolDataSource, ToolSet } from '../../common/languageModelToolsService.js'; -import { IPromptsService } from '../../common/promptSyntax/service/promptsService.js'; -import { MockChatService } from './mockChatService.js'; -import { MockChatVariablesService } from './mockChatVariables.js'; -import { MockPromptsService } from './mockPromptsService.js'; +import { mockObject } from '../../../../../../base/test/common/mock.js'; +import { assertSnapshot } from '../../../../../../base/test/common/snapshot.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { IContextKeyService } from '../../../../../../platform/contextkey/common/contextkey.js'; +import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { MockContextKeyService } from '../../../../../../platform/keybinding/test/common/mockKeybindingService.js'; +import { ILogService, NullLogService } from '../../../../../../platform/log/common/log.js'; +import { IStorageService } from '../../../../../../platform/storage/common/storage.js'; +import { IExtensionService, nullExtensionDescription } from '../../../../../services/extensions/common/extensions.js'; +import { TestExtensionService, TestStorageService } from '../../../../../test/common/workbenchTestServices.js'; +import { ChatAgentService, IChatAgentCommand, IChatAgentData, IChatAgentService } from '../../../common/participants/chatAgents.js'; +import { ChatRequestParser } from '../../../common/requestParser/chatRequestParser.js'; +import { IChatService } from '../../../common/chatService/chatService.js'; +import { IChatSlashCommandService } from '../../../common/participants/chatSlashCommands.js'; +import { LocalChatSessionUri } from '../../../common/model/chatUri.js'; +import { IChatVariablesService } from '../../../common/attachments/chatVariables.js'; +import { ChatAgentLocation, ChatModeKind } from '../../../common/constants.js'; +import { IToolData, ToolDataSource, ToolSet } from '../../../common/tools/languageModelToolsService.js'; +import { IPromptsService } from '../../../common/promptSyntax/service/promptsService.js'; +import { MockChatService } from '../chatService/mockChatService.js'; +import { MockChatVariablesService } from '../mockChatVariables.js'; +import { MockPromptsService } from '../promptSyntax/service/mockPromptsService.js'; const testSessionUri = LocalChatSessionUri.forSession('test-session'); diff --git a/src/vs/workbench/contrib/chat/test/common/chatUrlFetchingPatterns.test.ts b/src/vs/workbench/contrib/chat/test/common/tools/builtinTools/chatUrlFetchingPatterns.test.ts similarity index 96% rename from src/vs/workbench/contrib/chat/test/common/chatUrlFetchingPatterns.test.ts rename to src/vs/workbench/contrib/chat/test/common/tools/builtinTools/chatUrlFetchingPatterns.test.ts index dbe0a40f39b..4d07a805464 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatUrlFetchingPatterns.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/tools/builtinTools/chatUrlFetchingPatterns.test.ts @@ -4,9 +4,9 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { URI } from '../../../../../base/common/uri.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { extractUrlPatterns, getPatternLabel, isUrlApproved, getMatchingPattern, IUrlApprovalSettings } from '../../common/chatUrlFetchingPatterns.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { extractUrlPatterns, getPatternLabel, isUrlApproved, getMatchingPattern, IUrlApprovalSettings } from '../../../../common/tools/builtinTools/chatUrlFetchingPatterns.js'; suite('ChatUrlFetchingPatterns', () => { ensureNoDisposablesAreLeakedInTestSuite(); @@ -189,4 +189,3 @@ suite('ChatUrlFetchingPatterns', () => { }); }); }); - diff --git a/src/vs/workbench/contrib/chat/test/common/tools/manageTodoListTool.test.ts b/src/vs/workbench/contrib/chat/test/common/tools/builtinTools/manageTodoListTool.test.ts similarity index 88% rename from src/vs/workbench/contrib/chat/test/common/tools/manageTodoListTool.test.ts rename to src/vs/workbench/contrib/chat/test/common/tools/builtinTools/manageTodoListTool.test.ts index 54983142a6c..477f81e5505 100644 --- a/src/vs/workbench/contrib/chat/test/common/tools/manageTodoListTool.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/tools/builtinTools/manageTodoListTool.test.ts @@ -4,10 +4,10 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; -import { createManageTodoListToolData } from '../../../common/tools/manageTodoListTool.js'; -import { IToolData } from '../../../common/languageModelToolsService.js'; -import { IJSONSchema } from '../../../../../../base/common/jsonSchema.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { createManageTodoListToolData } from '../../../../common/tools/builtinTools/manageTodoListTool.js'; +import { IToolData } from '../../../../common/tools/languageModelToolsService.js'; +import { IJSONSchema } from '../../../../../../../base/common/jsonSchema.js'; suite('ManageTodoListTool Description Field Setting', () => { ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/common/mockLanguageModelToolsConfirmationService.ts b/src/vs/workbench/contrib/chat/test/common/tools/mockLanguageModelToolsConfirmationService.ts similarity index 81% rename from src/vs/workbench/contrib/chat/test/common/mockLanguageModelToolsConfirmationService.ts rename to src/vs/workbench/contrib/chat/test/common/tools/mockLanguageModelToolsConfirmationService.ts index a04f3222edc..e8d3da161cb 100644 --- a/src/vs/workbench/contrib/chat/test/common/mockLanguageModelToolsConfirmationService.ts +++ b/src/vs/workbench/contrib/chat/test/common/tools/mockLanguageModelToolsConfirmationService.ts @@ -3,10 +3,10 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IDisposable } from '../../../../../base/common/lifecycle.js'; -import { ConfirmedReason } from '../../common/chatService.js'; -import { ILanguageModelToolConfirmationActions, ILanguageModelToolConfirmationContribution, ILanguageModelToolConfirmationRef, ILanguageModelToolsConfirmationService } from '../../common/languageModelToolsConfirmationService.js'; -import { IToolData } from '../../common/languageModelToolsService.js'; +import { IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { ConfirmedReason } from '../../../common/chatService/chatService.js'; +import { ILanguageModelToolConfirmationActions, ILanguageModelToolConfirmationContribution, ILanguageModelToolConfirmationRef, ILanguageModelToolsConfirmationService } from '../../../common/tools/languageModelToolsConfirmationService.js'; +import { IToolData } from '../../../common/tools/languageModelToolsService.js'; export class MockLanguageModelToolsConfirmationService implements ILanguageModelToolsConfirmationService { manageConfirmationPreferences(tools: readonly IToolData[], options?: { defaultScope?: 'workspace' | 'profile' | 'session' }): void { diff --git a/src/vs/workbench/contrib/chat/test/common/mockLanguageModelToolsService.ts b/src/vs/workbench/contrib/chat/test/common/tools/mockLanguageModelToolsService.ts similarity index 82% rename from src/vs/workbench/contrib/chat/test/common/mockLanguageModelToolsService.ts rename to src/vs/workbench/contrib/chat/test/common/tools/mockLanguageModelToolsService.ts index 21e15394445..d51bb8aa884 100644 --- a/src/vs/workbench/contrib/chat/test/common/mockLanguageModelToolsService.ts +++ b/src/vs/workbench/contrib/chat/test/common/tools/mockLanguageModelToolsService.ts @@ -3,16 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { Codicon } from '../../../../../base/common/codicons.js'; -import { Event } from '../../../../../base/common/event.js'; -import { Disposable, IDisposable } from '../../../../../base/common/lifecycle.js'; -import { constObservable, IObservable } from '../../../../../base/common/observable.js'; -import { ThemeIcon } from '../../../../../base/common/themables.js'; -import { IProgressStep } from '../../../../../platform/progress/common/progress.js'; -import { IVariableReference } from '../../common/chatModes.js'; -import { ChatRequestToolReferenceEntry } from '../../common/chatVariableEntries.js'; -import { CountTokensCallback, ILanguageModelToolsService, IToolAndToolSetEnablementMap, IToolData, IToolImpl, IToolInvocation, IToolResult, ToolDataSource, ToolSet } from '../../common/languageModelToolsService.js'; +import { CancellationToken } from '../../../../../../base/common/cancellation.js'; +import { Codicon } from '../../../../../../base/common/codicons.js'; +import { Event } from '../../../../../../base/common/event.js'; +import { Disposable, IDisposable } from '../../../../../../base/common/lifecycle.js'; +import { constObservable, IObservable } from '../../../../../../base/common/observable.js'; +import { ThemeIcon } from '../../../../../../base/common/themables.js'; +import { IProgressStep } from '../../../../../../platform/progress/common/progress.js'; +import { IVariableReference } from '../../../common/chatModes.js'; +import { ChatRequestToolReferenceEntry } from '../../../common/attachments/chatVariableEntries.js'; +import { CountTokensCallback, ILanguageModelToolsService, IToolAndToolSetEnablementMap, IToolData, IToolImpl, IToolInvocation, IToolResult, ToolDataSource, ToolSet } from '../../../common/tools/languageModelToolsService.js'; export class MockLanguageModelToolsService implements ILanguageModelToolsService { _serviceBrand: undefined; diff --git a/src/vs/workbench/contrib/chat/test/common/voiceChatService.test.ts b/src/vs/workbench/contrib/chat/test/common/voiceChatService.test.ts index f9182eaa062..8264b98c30f 100644 --- a/src/vs/workbench/contrib/chat/test/common/voiceChatService.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/voiceChatService.test.ts @@ -12,9 +12,9 @@ import { ExtensionIdentifier } from '../../../../../platform/extensions/common/e import { MockContextKeyService } from '../../../../../platform/keybinding/test/common/mockKeybindingService.js'; import { nullExtensionDescription } from '../../../../services/extensions/common/extensions.js'; import { ISpeechProvider, ISpeechService, ISpeechToTextEvent, ISpeechToTextSession, ITextToSpeechSession, KeywordRecognitionStatus, SpeechToTextStatus } from '../../../speech/common/speechService.js'; -import { IChatAgent, IChatAgentCommand, IChatAgentCompletionItem, IChatAgentData, IChatAgentHistoryEntry, IChatAgentImplementation, IChatAgentMetadata, IChatAgentRequest, IChatAgentResult, IChatAgentService, IChatParticipantDetectionProvider, UserSelectedTools } from '../../common/chatAgents.js'; -import { IChatModel } from '../../common/chatModel.js'; -import { IChatFollowup, IChatProgress } from '../../common/chatService.js'; +import { IChatAgent, IChatAgentCommand, IChatAgentCompletionItem, IChatAgentData, IChatAgentHistoryEntry, IChatAgentImplementation, IChatAgentMetadata, IChatAgentRequest, IChatAgentResult, IChatAgentService, IChatParticipantDetectionProvider, UserSelectedTools } from '../../common/participants/chatAgents.js'; +import { IChatModel } from '../../common/model/chatModel.js'; +import { IChatFollowup, IChatProgress } from '../../common/chatService/chatService.js'; import { ChatAgentLocation, ChatModeKind } from '../../common/constants.js'; import { IVoiceChatSessionOptions, IVoiceChatTextEvent, VoiceChatService } from '../../common/voiceChatService.js'; diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiline.0.snap b/src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiline.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiline.0.snap rename to src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiline.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiline.1.snap b/src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiline.1.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiline.1.snap rename to src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiline.1.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiple_vulns.0.snap b/src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiple_vulns.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiple_vulns.0.snap rename to src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiple_vulns.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiple_vulns.1.snap b/src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiple_vulns.1.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiple_vulns.1.snap rename to src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_multiple_vulns.1.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_single_line.0.snap b/src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_single_line.0.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_single_line.0.snap rename to src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_single_line.0.snap diff --git a/src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_single_line.1.snap b/src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_single_line.1.snap similarity index 100% rename from src/vs/workbench/contrib/chat/test/common/__snapshots__/Annotations_extractVulnerabilitiesFromText_single_line.1.snap rename to src/vs/workbench/contrib/chat/test/common/widget/__snapshots__/Annotations_extractVulnerabilitiesFromText_single_line.1.snap diff --git a/src/vs/workbench/contrib/chat/test/common/annotations.test.ts b/src/vs/workbench/contrib/chat/test/common/widget/annotations.test.ts similarity index 89% rename from src/vs/workbench/contrib/chat/test/common/annotations.test.ts rename to src/vs/workbench/contrib/chat/test/common/widget/annotations.test.ts index 9f57b0ad6b4..18e36131d3d 100644 --- a/src/vs/workbench/contrib/chat/test/common/annotations.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/widget/annotations.test.ts @@ -3,11 +3,11 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { assertSnapshot } from '../../../../../base/test/common/snapshot.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { IChatMarkdownContent } from '../../common/chatService.js'; -import { annotateSpecialMarkdownContent, extractVulnerabilitiesFromText } from '../../common/annotations.js'; +import { MarkdownString } from '../../../../../../base/common/htmlContent.js'; +import { assertSnapshot } from '../../../../../../base/test/common/snapshot.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { IChatMarkdownContent } from '../../../common/chatService/chatService.js'; +import { annotateSpecialMarkdownContent, extractVulnerabilitiesFromText } from '../../../common/widget/annotations.js'; function content(str: string): IChatMarkdownContent { return { kind: 'markdownContent', content: new MarkdownString(str) }; diff --git a/src/vs/workbench/contrib/chat/test/common/chatWidgetHistoryService.test.ts b/src/vs/workbench/contrib/chat/test/common/widget/chatWidgetHistoryService.test.ts similarity index 95% rename from src/vs/workbench/contrib/chat/test/common/chatWidgetHistoryService.test.ts rename to src/vs/workbench/contrib/chat/test/common/widget/chatWidgetHistoryService.test.ts index 47da30fcf21..9b8c79ba4cb 100644 --- a/src/vs/workbench/contrib/chat/test/common/chatWidgetHistoryService.test.ts +++ b/src/vs/workbench/contrib/chat/test/common/widget/chatWidgetHistoryService.test.ts @@ -4,14 +4,14 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { TestInstantiationService } from '../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; -import { IStorageService, StorageScope } from '../../../../../platform/storage/common/storage.js'; -import { TestStorageService } from '../../../../test/common/workbenchTestServices.js'; -import { IChatModelInputState } from '../../common/chatModel.js'; -import { ChatAgentLocation, ChatModeKind } from '../../common/constants.js'; -import { ChatHistoryNavigator, ChatInputHistoryMaxEntries, ChatWidgetHistoryService, IChatWidgetHistoryService } from '../../common/chatWidgetHistoryService.js'; -import { Memento } from '../../../../common/memento.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; +import { IStorageService, StorageScope } from '../../../../../../platform/storage/common/storage.js'; +import { TestStorageService } from '../../../../../test/common/workbenchTestServices.js'; +import { IChatModelInputState } from '../../../common/model/chatModel.js'; +import { ChatAgentLocation, ChatModeKind } from '../../../common/constants.js'; +import { ChatHistoryNavigator, ChatInputHistoryMaxEntries, ChatWidgetHistoryService, IChatWidgetHistoryService } from '../../../common/widget/chatWidgetHistoryService.js'; +import { Memento } from '../../../../../common/memento.js'; suite('ChatWidgetHistoryService', () => { const testDisposables = ensureNoDisposablesAreLeakedInTestSuite(); diff --git a/src/vs/workbench/contrib/chat/test/electron-browser/voiceChatActions.test.ts b/src/vs/workbench/contrib/chat/test/electron-browser/actions/voiceChatActions.test.ts similarity index 93% rename from src/vs/workbench/contrib/chat/test/electron-browser/voiceChatActions.test.ts rename to src/vs/workbench/contrib/chat/test/electron-browser/actions/voiceChatActions.test.ts index bcf00d4b79f..dc58646011c 100644 --- a/src/vs/workbench/contrib/chat/test/electron-browser/voiceChatActions.test.ts +++ b/src/vs/workbench/contrib/chat/test/electron-browser/actions/voiceChatActions.test.ts @@ -4,8 +4,8 @@ *--------------------------------------------------------------------------------------------*/ import assert from 'assert'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { parseNextChatResponseChunk } from '../../electron-browser/actions/voiceChatActions.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../base/test/common/utils.js'; +import { parseNextChatResponseChunk } from '../../../electron-browser/actions/voiceChatActions.js'; suite('VoiceChatActions', function () { diff --git a/src/vs/workbench/contrib/chat/test/electron-browser/fetchPageTool.test.ts b/src/vs/workbench/contrib/chat/test/electron-browser/tools/builtinTools/fetchPageTool.test.ts similarity index 97% rename from src/vs/workbench/contrib/chat/test/electron-browser/fetchPageTool.test.ts rename to src/vs/workbench/contrib/chat/test/electron-browser/tools/builtinTools/fetchPageTool.test.ts index 016d96026b9..9a93089dcce 100644 --- a/src/vs/workbench/contrib/chat/test/electron-browser/fetchPageTool.test.ts +++ b/src/vs/workbench/contrib/chat/test/electron-browser/tools/builtinTools/fetchPageTool.test.ts @@ -4,20 +4,20 @@ *--------------------------------------------------------------------------------------------*/ import * as assert from 'assert'; -import { CancellationToken } from '../../../../../base/common/cancellation.js'; -import { VSBuffer } from '../../../../../base/common/buffer.js'; -import { URI } from '../../../../../base/common/uri.js'; -import { ResourceMap } from '../../../../../base/common/map.js'; -import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../base/test/common/utils.js'; -import { IFileContent, IReadFileOptions } from '../../../../../platform/files/common/files.js'; -import { IWebContentExtractorService, WebContentExtractResult } from '../../../../../platform/webContentExtractor/common/webContentExtractor.js'; -import { FetchWebPageTool } from '../../electron-browser/tools/fetchPageTool.js'; -import { TestFileService } from '../../../../test/common/workbenchTestServices.js'; -import { MockTrustedDomainService } from '../../../url/test/browser/mockTrustedDomainService.js'; -import { InternalFetchWebPageToolId } from '../../common/tools/tools.js'; -import { MockChatService } from '../common/mockChatService.js'; -import { upcastDeepPartial } from '../../../../../base/test/common/mock.js'; -import { IChatService } from '../../common/chatService.js'; +import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; +import { VSBuffer } from '../../../../../../../base/common/buffer.js'; +import { URI } from '../../../../../../../base/common/uri.js'; +import { ResourceMap } from '../../../../../../../base/common/map.js'; +import { ensureNoDisposablesAreLeakedInTestSuite } from '../../../../../../../base/test/common/utils.js'; +import { IFileContent, IReadFileOptions } from '../../../../../../../platform/files/common/files.js'; +import { IWebContentExtractorService, WebContentExtractResult } from '../../../../../../../platform/webContentExtractor/common/webContentExtractor.js'; +import { FetchWebPageTool } from '../../../../electron-browser/builtInTools/fetchPageTool.js'; +import { TestFileService } from '../../../../../../test/common/workbenchTestServices.js'; +import { MockTrustedDomainService } from '../../../../../url/test/browser/mockTrustedDomainService.js'; +import { InternalFetchWebPageToolId } from '../../../../common/tools/builtinTools/tools.js'; +import { MockChatService } from '../../../common/chatService/mockChatService.js'; +import { upcastDeepPartial } from '../../../../../../../base/test/common/mock.js'; +import { IChatService } from '../../../../common/chatService/chatService.js'; class TestWebContentExtractorService implements IWebContentExtractorService { _serviceBrand: undefined; diff --git a/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.ts b/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.ts index acd2306dcf1..7656f9306ff 100644 --- a/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.ts +++ b/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.ts @@ -28,7 +28,7 @@ import { ChangeLanguageAction } from '../../../../browser/parts/editor/editorSta import { LOG_MODE_ID, OUTPUT_MODE_ID } from '../../../../services/output/common/output.js'; import { SEARCH_RESULT_LANGUAGE_ID } from '../../../../services/search/common/search.js'; import { AccessibilityVerbositySettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; -import { IChatAgentService } from '../../../chat/common/chatAgents.js'; +import { IChatAgentService } from '../../../chat/common/participants/chatAgents.js'; import { ChatAgentLocation } from '../../../chat/common/constants.js'; import { IInlineChatSessionService } from '../../../inlineChat/browser/inlineChatSessionService.js'; import './emptyTextEditorHint.css'; diff --git a/src/vs/workbench/contrib/debug/browser/debugChatIntegration.ts b/src/vs/workbench/contrib/debug/browser/debugChatIntegration.ts index 08d82ea5f62..7594b98ba75 100644 --- a/src/vs/workbench/contrib/debug/browser/debugChatIntegration.ts +++ b/src/vs/workbench/contrib/debug/browser/debugChatIntegration.ts @@ -15,9 +15,9 @@ import { Action2, MenuId, registerAction2 } from '../../../../platform/actions/c import { IInstantiationService, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; import { IWorkbenchContribution } from '../../../common/contributions.js'; import { IChatWidget, IChatWidgetService } from '../../chat/browser/chat.js'; -import { ChatContextPick, IChatContextPicker, IChatContextPickerItem, IChatContextPickService } from '../../chat/browser/chatContextPickService.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; -import { IChatRequestFileEntry, IChatRequestVariableEntry, IDebugVariableEntry } from '../../chat/common/chatVariableEntries.js'; +import { ChatContextPick, IChatContextPicker, IChatContextPickerItem, IChatContextPickService } from '../../chat/browser/attachments/chatContextPickService.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; +import { IChatRequestFileEntry, IChatRequestVariableEntry, IDebugVariableEntry } from '../../chat/common/attachments/chatVariableEntries.js'; import { IDebugService, IExpression, IScope, IStackFrame, State } from '../common/debug.js'; import { Variable } from '../common/debugModel.js'; diff --git a/src/vs/workbench/contrib/debug/browser/debugCommands.ts b/src/vs/workbench/contrib/debug/browser/debugCommands.ts index a03c0e5dc52..18210209161 100644 --- a/src/vs/workbench/contrib/debug/browser/debugCommands.ts +++ b/src/vs/workbench/contrib/debug/browser/debugCommands.ts @@ -33,7 +33,7 @@ import { ViewContainerLocation } from '../../../common/views.js'; import { IEditorService } from '../../../services/editor/common/editorService.js'; import { IPaneCompositePartService } from '../../../services/panecomposite/browser/panecomposite.js'; import { IViewsService } from '../../../services/views/common/viewsService.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { IExtensionsWorkbenchService } from '../../extensions/common/extensions.js'; import { TEXT_FILE_EDITOR_ID } from '../../files/common/files.js'; import { CONTEXT_BREAKPOINT_INPUT_FOCUSED, CONTEXT_BREAKPOINTS_FOCUSED, CONTEXT_DEBUG_STATE, CONTEXT_DEBUGGERS_AVAILABLE, CONTEXT_DISASSEMBLY_VIEW_FOCUS, CONTEXT_EXPRESSION_SELECTED, CONTEXT_FOCUSED_SESSION_IS_ATTACH, CONTEXT_IN_DEBUG_MODE, CONTEXT_IN_DEBUG_REPL, CONTEXT_JUMP_TO_CURSOR_SUPPORTED, CONTEXT_STEP_INTO_TARGETS_SUPPORTED, CONTEXT_VARIABLES_FOCUSED, CONTEXT_WATCH_EXPRESSIONS_FOCUSED, DataBreakpointSetType, EDITOR_CONTRIBUTION_ID, getStateLabel, IConfig, IDataBreakpointInfoResponse, IDebugConfiguration, IDebugEditorContribution, IDebugService, IDebugSession, IEnablement, IExceptionBreakpoint, isFrameDeemphasized, IStackFrame, IThread, REPL_VIEW_ID, State, VIEWLET_ID } from '../common/debug.js'; diff --git a/src/vs/workbench/contrib/debug/browser/debugEditorActions.ts b/src/vs/workbench/contrib/debug/browser/debugEditorActions.ts index e196fe59530..f45cdbb0b9c 100644 --- a/src/vs/workbench/contrib/debug/browser/debugEditorActions.ts +++ b/src/vs/workbench/contrib/debug/browser/debugEditorActions.ts @@ -23,7 +23,7 @@ import { ServicesAccessor } from '../../../../platform/instantiation/common/inst import { KeybindingWeight } from '../../../../platform/keybinding/common/keybindingsRegistry.js'; import { IUriIdentityService } from '../../../../platform/uriIdentity/common/uriIdentity.js'; import { PanelFocusContext } from '../../../common/contextkeys.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { openBreakpointSource } from './breakpointsView.js'; import { DisassemblyView, IDisassembledInstructionEntry } from './disassemblyView.js'; import { Repl } from './repl.js'; diff --git a/src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts b/src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts index 7930eaa4d7e..f6c294e4912 100644 --- a/src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts +++ b/src/vs/workbench/contrib/extensions/browser/extensions.contribution.ts @@ -62,7 +62,7 @@ import { IPreferencesService } from '../../../services/preferences/common/prefer import { CONTEXT_SYNC_ENABLEMENT } from '../../../services/userDataSync/common/userDataSync.js'; import { IViewsService } from '../../../services/views/common/viewsService.js'; import { WORKSPACE_TRUST_EXTENSION_SUPPORT } from '../../../services/workspaces/common/workspaceTrust.js'; -import { ILanguageModelToolsService } from '../../chat/common/languageModelToolsService.js'; +import { ILanguageModelToolsService } from '../../chat/common/tools/languageModelToolsService.js'; import { CONTEXT_KEYBINDINGS_EDITOR } from '../../preferences/common/preferences.js'; import { IWebview } from '../../webview/browser/webview.js'; import { Query } from '../common/extensionQuery.js'; diff --git a/src/vs/workbench/contrib/extensions/common/installExtensionsTool.ts b/src/vs/workbench/contrib/extensions/common/installExtensionsTool.ts index b893c621156..d174c8c97e6 100644 --- a/src/vs/workbench/contrib/extensions/common/installExtensionsTool.ts +++ b/src/vs/workbench/contrib/extensions/common/installExtensionsTool.ts @@ -7,7 +7,7 @@ import { CancellationToken } from '../../../../base/common/cancellation.js'; import { MarkdownString } from '../../../../base/common/htmlContent.js'; import { localize } from '../../../../nls.js'; import { areSameExtensions } from '../../../../platform/extensionManagement/common/extensionManagementUtil.js'; -import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolProgress } from '../../chat/common/languageModelToolsService.js'; +import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolProgress } from '../../chat/common/tools/languageModelToolsService.js'; import { IExtensionsWorkbenchService } from './extensions.js'; export const InstallExtensionsToolId = 'vscode_installExtensions'; diff --git a/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.ts b/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.ts index 2d86eda8a2a..91541b6ac4d 100644 --- a/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.ts +++ b/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.ts @@ -9,7 +9,7 @@ import { ThemeIcon } from '../../../../base/common/themables.js'; import { localize } from '../../../../nls.js'; import { SortBy } from '../../../../platform/extensionManagement/common/extensionManagement.js'; import { EXTENSION_CATEGORIES } from '../../../../platform/extensions/common/extensions.js'; -import { CountTokensCallback, IToolData, IToolImpl, IToolInvocation, IToolResult, ToolDataSource, ToolProgress } from '../../chat/common/languageModelToolsService.js'; +import { CountTokensCallback, IToolData, IToolImpl, IToolInvocation, IToolResult, ToolDataSource, ToolProgress } from '../../chat/common/tools/languageModelToolsService.js'; import { ExtensionState, IExtension, IExtensionsWorkbenchService } from '../common/extensions.js'; export const SearchExtensionsToolId = 'vscode_searchExtensions_internal'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.ts index a8e43324fbb..33033f1aff0 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.ts @@ -19,7 +19,7 @@ import { InlineChatEnabler, InlineChatEscapeToolContribution, InlineChatSessionS import { AccessibleViewRegistry } from '../../../../platform/accessibility/browser/accessibleViewRegistry.js'; import { CancelAction, ChatSubmitAction } from '../../chat/browser/actions/chatExecuteActions.js'; import { localize } from '../../../../nls.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { ContextKeyExpr } from '../../../../platform/contextkey/common/contextkey.js'; import { InlineChatAccessibilityHelp } from './inlineChatAccessibilityHelp.js'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.ts index bce9724997c..c7983f6fe1f 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.ts @@ -9,7 +9,7 @@ import { AccessibleViewType } from '../../../../platform/accessibility/browser/a import { IAccessibleViewImplementation } from '../../../../platform/accessibility/browser/accessibleViewRegistry.js'; import { ContextKeyExpr } from '../../../../platform/contextkey/common/contextkey.js'; import { getChatAccessibilityHelpProvider } from '../../chat/browser/actions/chatAccessibilityHelp.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { CTX_INLINE_CHAT_RESPONSE_FOCUSED } from '../common/inlineChat.js'; export class InlineChatAccessibilityHelp implements IAccessibleViewImplementation { diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.ts index 7955eea2369..5dbbfdfe02e 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.ts @@ -25,8 +25,8 @@ import { CommandsRegistry } from '../../../../platform/commands/common/commands. import { registerIcon } from '../../../../platform/theme/common/iconRegistry.js'; import { IPreferencesService } from '../../../services/preferences/common/preferences.js'; import { ILogService } from '../../../../platform/log/common/log.js'; -import { IChatService } from '../../chat/common/chatService.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { IChatService } from '../../chat/common/chatService/chatService.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { HunkInformation } from './inlineChatSession.js'; import { IChatWidgetService } from '../../chat/browser/chat.js'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.ts index fe90192a417..8b07715aa04 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.ts @@ -48,15 +48,15 @@ import { ILogService } from '../../../../platform/log/common/log.js'; import { observableConfigValue } from '../../../../platform/observable/common/platformObservableUtils.js'; import { ISharedWebContentExtractorService } from '../../../../platform/webContentExtractor/common/webContentExtractor.js'; import { IEditorService, SIDE_GROUP } from '../../../services/editor/common/editorService.js'; -import { IChatAttachmentResolveService } from '../../chat/browser/chatAttachmentResolveService.js'; -import { IChatWidgetLocationOptions } from '../../chat/browser/chatWidget.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; -import { IChatEditingSession, ModifiedFileEntryState } from '../../chat/common/chatEditingService.js'; -import { ChatModel, ChatRequestRemovalReason, IChatRequestModel, IChatTextEditGroup, IChatTextEditGroupState, IResponse } from '../../chat/common/chatModel.js'; +import { IChatAttachmentResolveService } from '../../chat/browser/attachments/chatAttachmentResolveService.js'; +import { IChatWidgetLocationOptions } from '../../chat/browser/widget/chatWidget.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; +import { IChatEditingSession, ModifiedFileEntryState } from '../../chat/common/editing/chatEditingService.js'; +import { ChatModel, ChatRequestRemovalReason, IChatRequestModel, IChatTextEditGroup, IChatTextEditGroupState, IResponse } from '../../chat/common/model/chatModel.js'; import { ChatMode } from '../../chat/common/chatModes.js'; -import { IChatService } from '../../chat/common/chatService.js'; -import { IChatRequestVariableEntry, IDiagnosticVariableEntryFilterData } from '../../chat/common/chatVariableEntries.js'; -import { isResponseVM } from '../../chat/common/chatViewModel.js'; +import { IChatService } from '../../chat/common/chatService/chatService.js'; +import { IChatRequestVariableEntry, IDiagnosticVariableEntryFilterData } from '../../chat/common/attachments/chatVariableEntries.js'; +import { isResponseVM } from '../../chat/common/model/chatViewModel.js'; import { ChatAgentLocation } from '../../chat/common/constants.js'; import { ILanguageModelChatSelector, ILanguageModelsService, isILanguageModelChatSelector } from '../../chat/common/languageModels.js'; import { isNotebookContainingCellEditor as isNotebookWithCellEditor } from '../../notebook/browser/notebookEditor.js'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.ts index da4c13c0818..72752f91792 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.ts @@ -21,9 +21,9 @@ import { DisposableStore, IDisposable } from '../../../../base/common/lifecycle. import { ICodeEditor } from '../../../../editor/browser/editorBrowser.js'; import { IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; import { ILogService } from '../../../../platform/log/common/log.js'; -import { IChatModel, IChatRequestModel, IChatTextEditGroupState } from '../../chat/common/chatModel.js'; +import { IChatModel, IChatRequestModel, IChatTextEditGroupState } from '../../chat/common/model/chatModel.js'; import { ExtensionIdentifier } from '../../../../platform/extensions/common/extensions.js'; -import { IChatAgent } from '../../chat/common/chatAgents.js'; +import { IChatAgent } from '../../chat/common/participants/chatAgents.js'; import { IDocumentDiff } from '../../../../editor/common/diff/documentDiffProvider.js'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.ts index dbd9f34c16b..8396def2c6b 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.ts @@ -13,9 +13,9 @@ import { Selection } from '../../../../editor/common/core/selection.js'; import { IValidEditOperation } from '../../../../editor/common/model.js'; import { createDecorator, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; import { ChatViewPaneTarget, IChatWidgetService } from '../../chat/browser/chat.js'; -import { IChatEditingSession } from '../../chat/common/chatEditingService.js'; -import { IChatModel, IChatModelInputState, IChatRequestModel } from '../../chat/common/chatModel.js'; -import { IChatService } from '../../chat/common/chatService.js'; +import { IChatEditingSession } from '../../chat/common/editing/chatEditingService.js'; +import { IChatModel, IChatModelInputState, IChatRequestModel } from '../../chat/common/model/chatModel.js'; +import { IChatService } from '../../chat/common/chatService/chatService.js'; import { ChatAgentLocation } from '../../chat/common/constants.js'; import { Session, StashedSession } from './inlineChatSession.js'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.ts index e0af52ee69b..784f4c1dea3 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.ts @@ -36,12 +36,12 @@ import { IEditorService } from '../../../services/editor/common/editorService.js import { ITextFileService } from '../../../services/textfile/common/textfiles.js'; import { UntitledTextEditorInput } from '../../../services/untitled/common/untitledTextEditorInput.js'; import { IChatWidgetService } from '../../chat/browser/chat.js'; -import { IChatAgentService } from '../../chat/common/chatAgents.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; -import { ModifiedFileEntryState } from '../../chat/common/chatEditingService.js'; -import { IChatService } from '../../chat/common/chatService.js'; +import { IChatAgentService } from '../../chat/common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; +import { ModifiedFileEntryState } from '../../chat/common/editing/chatEditingService.js'; +import { IChatService } from '../../chat/common/chatService/chatService.js'; import { ChatAgentLocation } from '../../chat/common/constants.js'; -import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../chat/common/languageModelToolsService.js'; +import { ILanguageModelToolsService, IToolData, ToolDataSource } from '../../chat/common/tools/languageModelToolsService.js'; import { CTX_INLINE_CHAT_HAS_AGENT2, CTX_INLINE_CHAT_HAS_NOTEBOOK_AGENT, CTX_INLINE_CHAT_HAS_NOTEBOOK_INLINE, CTX_INLINE_CHAT_POSSIBLE, InlineChatConfigKeys } from '../common/inlineChat.js'; import { HunkData, Session, SessionWholeRange, StashedSession, TelemetryData, TelemetryDataClassification } from './inlineChatSession.js'; import { askInPanelChat, IInlineChatSession2, IInlineChatSessionEndEvent, IInlineChatSessionEvent, IInlineChatSessionService, ISessionKeyComputer } from './inlineChatSessionService.js'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.ts index 41de2f7e794..e273a6f436b 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.ts @@ -22,7 +22,7 @@ import { IEditorWorkerService } from '../../../../editor/common/services/editorW import { IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; import { Progress } from '../../../../platform/progress/common/progress.js'; import { SaveReason } from '../../../common/editor.js'; -import { countWords } from '../../chat/common/chatWordCounter.js'; +import { countWords } from '../../chat/common/model/chatWordCounter.js'; import { HunkInformation, Session, HunkState } from './inlineChatSession.js'; import { InlineChatZoneWidget } from './inlineChatZoneWidget.js'; import { ACTION_TOGGLE_DIFF, CTX_INLINE_CHAT_CHANGE_HAS_DIFF, CTX_INLINE_CHAT_CHANGE_SHOWS_DIFF, MENU_INLINE_CHAT_ZONE, minimapInlineChatDiffInserted, overviewRulerInlineChatDiffInserted } from '../common/inlineChat.js'; @@ -32,7 +32,7 @@ import { ITextFileService } from '../../../services/textfile/common/textfiles.js import { IUntitledTextEditorModel } from '../../../services/untitled/common/untitledTextEditorModel.js'; import { Schemas } from '../../../../base/common/network.js'; import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { DefaultChatTextEditor } from '../../chat/browser/codeBlockPart.js'; +import { DefaultChatTextEditor } from '../../chat/browser/widget/chatContentParts/codeBlockPart.js'; import { isEqual } from '../../../../base/common/resources.js'; import { Iterable } from '../../../../base/common/iterator.js'; import { ConflictActionsFactory, IContentWidgetAction } from '../../mergeEditor/browser/view/conflictActions.js'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.ts index 85d0874770e..051fe25b923 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.ts @@ -47,14 +47,14 @@ import { AccessibilityVerbositySettingId } from '../../accessibility/browser/acc import { AccessibilityCommandId } from '../../accessibility/common/accessibilityCommands.js'; import { MarkUnhelpfulActionId } from '../../chat/browser/actions/chatTitleActions.js'; import { IChatWidgetViewOptions } from '../../chat/browser/chat.js'; -import { ChatVoteDownButton } from '../../chat/browser/chatListRenderer.js'; -import { ChatWidget, IChatWidgetLocationOptions } from '../../chat/browser/chatWidget.js'; -import { chatRequestBackground } from '../../chat/common/chatColors.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; -import { IChatModel } from '../../chat/common/chatModel.js'; +import { ChatVoteDownButton } from '../../chat/browser/widget/chatListRenderer.js'; +import { ChatWidget, IChatWidgetLocationOptions } from '../../chat/browser/widget/chatWidget.js'; +import { chatRequestBackground } from '../../chat/common/widget/chatColors.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; +import { IChatModel } from '../../chat/common/model/chatModel.js'; import { ChatMode } from '../../chat/common/chatModes.js'; -import { ChatAgentVoteDirection, IChatService } from '../../chat/common/chatService.js'; -import { isResponseVM } from '../../chat/common/chatViewModel.js'; +import { ChatAgentVoteDirection, IChatService } from '../../chat/common/chatService/chatService.js'; +import { isResponseVM } from '../../chat/common/model/chatViewModel.js'; import { CTX_INLINE_CHAT_FOCUSED, CTX_INLINE_CHAT_RESPONSE_FOCUSED, inlineChatBackground, inlineChatForeground } from '../common/inlineChat.js'; import { HunkInformation, Session } from './inlineChatSession.js'; import './media/inlineChat.css'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.ts b/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.ts index 1b331466ef4..e1b7c4e4c96 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.ts @@ -20,9 +20,9 @@ import { IContextKey, IContextKeyService } from '../../../../platform/contextkey import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; import { ILogService } from '../../../../platform/log/common/log.js'; import { IChatWidgetViewOptions } from '../../chat/browser/chat.js'; -import { IChatWidgetLocationOptions } from '../../chat/browser/chatWidget.js'; +import { IChatWidgetLocationOptions } from '../../chat/browser/widget/chatWidget.js'; import { ChatMode } from '../../chat/common/chatModes.js'; -import { isResponseVM } from '../../chat/common/chatViewModel.js'; +import { isResponseVM } from '../../chat/common/model/chatViewModel.js'; import { INotebookEditor } from '../../notebook/browser/notebookBrowser.js'; import { ACTION_REGENERATE_RESPONSE, ACTION_REPORT_ISSUE, ACTION_TOGGLE_DIFF, CTX_INLINE_CHAT_OUTER_CURSOR_POSITION, MENU_INLINE_CHAT_SIDE, MENU_INLINE_CHAT_WIDGET_SECONDARY, MENU_INLINE_CHAT_WIDGET_STATUS } from '../common/inlineChat.js'; import { EditorBasedInlineChatWidget } from './inlineChatWidget.js'; diff --git a/src/vs/workbench/contrib/inlineChat/browser/utils.ts b/src/vs/workbench/contrib/inlineChat/browser/utils.ts index df93be8528c..45af959a2ae 100644 --- a/src/vs/workbench/contrib/inlineChat/browser/utils.ts +++ b/src/vs/workbench/contrib/inlineChat/browser/utils.ts @@ -10,7 +10,7 @@ import { IEditObserver } from './inlineChatStrategies.js'; import { IProgress } from '../../../../platform/progress/common/progress.js'; import { IntervalTimer, AsyncIterableSource } from '../../../../base/common/async.js'; import { CancellationToken } from '../../../../base/common/cancellation.js'; -import { getNWords } from '../../chat/common/chatWordCounter.js'; +import { getNWords } from '../../chat/common/model/chatWordCounter.js'; import { TextModelEditSource } from '../../../../editor/common/textModelEditSource.js'; diff --git a/src/vs/workbench/contrib/inlineChat/test/browser/inlineChatController.test.ts b/src/vs/workbench/contrib/inlineChat/test/browser/inlineChatController.test.ts index 45cfc8e148e..e404b130280 100644 --- a/src/vs/workbench/contrib/inlineChat/test/browser/inlineChatController.test.ts +++ b/src/vs/workbench/contrib/inlineChat/test/browser/inlineChatController.test.ts @@ -52,31 +52,31 @@ import { TestViewsService, workbenchInstantiationService } from '../../../../tes import { TestChatEntitlementService, TestContextService, TestExtensionService } from '../../../../test/common/workbenchTestServices.js'; import { AccessibilityVerbositySettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; import { IChatAccessibilityService, IChatWidget, IChatWidgetService, IQuickChatService } from '../../../chat/browser/chat.js'; -import { ChatContextService, IChatContextService } from '../../../chat/browser/chatContextService.js'; -import { ChatInputBoxContentProvider } from '../../../chat/browser/chatEdinputInputContentProvider.js'; -import { ChatLayoutService } from '../../../chat/browser/chatLayoutService.js'; -import { ChatVariablesService } from '../../../chat/browser/chatVariables.js'; -import { ChatWidget } from '../../../chat/browser/chatWidget.js'; -import { ChatWidgetService } from '../../../chat/browser/chatWidgetService.js'; -import { ChatAgentService, IChatAgentData, IChatAgentNameService, IChatAgentService } from '../../../chat/common/chatAgents.js'; -import { IChatEditingService, IChatEditingSession } from '../../../chat/common/chatEditingService.js'; -import { IChatLayoutService } from '../../../chat/common/chatLayoutService.js'; +import { ChatContextService, IChatContextService } from '../../../chat/browser/contextContrib/chatContextService.js'; +import { ChatInputBoxContentProvider } from '../../../chat/browser/widget/input/editor/chatEditorInputContentProvider.js'; +import { ChatLayoutService } from '../../../chat/browser/widget/chatLayoutService.js'; +import { ChatVariablesService } from '../../../chat/browser/attachments/chatVariables.js'; +import { ChatWidget } from '../../../chat/browser/widget/chatWidget.js'; +import { ChatWidgetService } from '../../../chat/browser/widget/chatWidgetService.js'; +import { ChatAgentService, IChatAgentData, IChatAgentNameService, IChatAgentService } from '../../../chat/common/participants/chatAgents.js'; +import { IChatEditingService, IChatEditingSession } from '../../../chat/common/editing/chatEditingService.js'; +import { IChatLayoutService } from '../../../chat/common/widget/chatLayoutService.js'; import { IChatModeService } from '../../../chat/common/chatModes.js'; -import { IChatProgress, IChatService } from '../../../chat/common/chatService.js'; -import { ChatService } from '../../../chat/common/chatServiceImpl.js'; -import { ChatSlashCommandService, IChatSlashCommandService } from '../../../chat/common/chatSlashCommands.js'; -import { IChatTodo, IChatTodoListService } from '../../../chat/common/chatTodoListService.js'; -import { ChatTransferService, IChatTransferService } from '../../../chat/common/chatTransferService.js'; -import { IChatVariablesService } from '../../../chat/common/chatVariables.js'; -import { IChatResponseViewModel } from '../../../chat/common/chatViewModel.js'; -import { ChatWidgetHistoryService, IChatWidgetHistoryService } from '../../../chat/common/chatWidgetHistoryService.js'; +import { IChatProgress, IChatService } from '../../../chat/common/chatService/chatService.js'; +import { ChatService } from '../../../chat/common/chatService/chatServiceImpl.js'; +import { ChatSlashCommandService, IChatSlashCommandService } from '../../../chat/common/participants/chatSlashCommands.js'; +import { IChatTodo, IChatTodoListService } from '../../../chat/common/tools/chatTodoListService.js'; +import { ChatTransferService, IChatTransferService } from '../../../chat/common/model/chatTransferService.js'; +import { IChatVariablesService } from '../../../chat/common/attachments/chatVariables.js'; +import { IChatResponseViewModel } from '../../../chat/common/model/chatViewModel.js'; +import { ChatWidgetHistoryService, IChatWidgetHistoryService } from '../../../chat/common/widget/chatWidgetHistoryService.js'; import { ChatAgentLocation, ChatModeKind } from '../../../chat/common/constants.js'; import { ILanguageModelsService, LanguageModelsService } from '../../../chat/common/languageModels.js'; -import { ILanguageModelToolsService } from '../../../chat/common/languageModelToolsService.js'; +import { ILanguageModelToolsService } from '../../../chat/common/tools/languageModelToolsService.js'; import { PromptsType } from '../../../chat/common/promptSyntax/promptTypes.js'; import { IPromptPath, IPromptsService } from '../../../chat/common/promptSyntax/service/promptsService.js'; import { MockChatModeService } from '../../../chat/test/common/mockChatModeService.js'; -import { MockLanguageModelToolsService } from '../../../chat/test/common/mockLanguageModelToolsService.js'; +import { MockLanguageModelToolsService } from '../../../chat/test/common/tools/mockLanguageModelToolsService.js'; import { IMcpService } from '../../../mcp/common/mcpTypes.js'; import { TestMcpService } from '../../../mcp/test/common/testMcpService.js'; import { INotebookEditorService } from '../../../notebook/browser/services/notebookEditorService.js'; diff --git a/src/vs/workbench/contrib/inlineChat/test/browser/inlineChatSession.test.ts b/src/vs/workbench/contrib/inlineChat/test/browser/inlineChatSession.test.ts index a7ac0eab34d..46d1a03ad10 100644 --- a/src/vs/workbench/contrib/inlineChat/test/browser/inlineChatSession.test.ts +++ b/src/vs/workbench/contrib/inlineChat/test/browser/inlineChatSession.test.ts @@ -45,32 +45,32 @@ import { workbenchInstantiationService } from '../../../../test/browser/workbenc import { TestContextService, TestExtensionService } from '../../../../test/common/workbenchTestServices.js'; import { AccessibilityVerbositySettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; import { IChatAccessibilityService, IChatWidgetService, IQuickChatService } from '../../../chat/browser/chat.js'; -import { ChatSessionsService } from '../../../chat/browser/chatSessions.contribution.js'; -import { ChatVariablesService } from '../../../chat/browser/chatVariables.js'; -import { ChatWidget } from '../../../chat/browser/chatWidget.js'; -import { ChatAgentService, IChatAgentService } from '../../../chat/common/chatAgents.js'; -import { IChatEditingService, IChatEditingSession } from '../../../chat/common/chatEditingService.js'; -import { IChatRequestModel } from '../../../chat/common/chatModel.js'; -import { IChatService } from '../../../chat/common/chatService.js'; -import { ChatService } from '../../../chat/common/chatServiceImpl.js'; +import { ChatSessionsService } from '../../../chat/browser/chatSessions/chatSessions.contribution.js'; +import { ChatVariablesService } from '../../../chat/browser/attachments/chatVariables.js'; +import { ChatWidget } from '../../../chat/browser/widget/chatWidget.js'; +import { ChatAgentService, IChatAgentService } from '../../../chat/common/participants/chatAgents.js'; +import { IChatEditingService, IChatEditingSession } from '../../../chat/common/editing/chatEditingService.js'; +import { IChatRequestModel } from '../../../chat/common/model/chatModel.js'; +import { IChatService } from '../../../chat/common/chatService/chatService.js'; +import { ChatService } from '../../../chat/common/chatService/chatServiceImpl.js'; import { IChatSessionsService } from '../../../chat/common/chatSessionsService.js'; -import { ChatSlashCommandService, IChatSlashCommandService } from '../../../chat/common/chatSlashCommands.js'; -import { ChatTransferService, IChatTransferService } from '../../../chat/common/chatTransferService.js'; -import { IChatVariablesService } from '../../../chat/common/chatVariables.js'; -import { IChatResponseViewModel } from '../../../chat/common/chatViewModel.js'; -import { ChatWidgetHistoryService, IChatWidgetHistoryService } from '../../../chat/common/chatWidgetHistoryService.js'; +import { ChatSlashCommandService, IChatSlashCommandService } from '../../../chat/common/participants/chatSlashCommands.js'; +import { ChatTransferService, IChatTransferService } from '../../../chat/common/model/chatTransferService.js'; +import { IChatVariablesService } from '../../../chat/common/attachments/chatVariables.js'; +import { IChatResponseViewModel } from '../../../chat/common/model/chatViewModel.js'; +import { ChatWidgetHistoryService, IChatWidgetHistoryService } from '../../../chat/common/widget/chatWidgetHistoryService.js'; import { ChatAgentLocation, ChatModeKind } from '../../../chat/common/constants.js'; import { ILanguageModelsService } from '../../../chat/common/languageModels.js'; -import { ILanguageModelToolsService } from '../../../chat/common/languageModelToolsService.js'; +import { ILanguageModelToolsService } from '../../../chat/common/tools/languageModelToolsService.js'; import { NullLanguageModelsService } from '../../../chat/test/common/languageModels.js'; -import { MockLanguageModelToolsService } from '../../../chat/test/common/mockLanguageModelToolsService.js'; +import { MockLanguageModelToolsService } from '../../../chat/test/common/tools/mockLanguageModelToolsService.js'; import { IMcpService } from '../../../mcp/common/mcpTypes.js'; import { TestMcpService } from '../../../mcp/test/common/testMcpService.js'; import { HunkState } from '../../browser/inlineChatSession.js'; import { IInlineChatSessionService } from '../../browser/inlineChatSessionService.js'; import { InlineChatSessionServiceImpl } from '../../browser/inlineChatSessionServiceImpl.js'; import { TestWorkerService } from './testWorkerService.js'; -import { ChatWidgetService } from '../../../chat/browser/chatWidgetService.js'; +import { ChatWidgetService } from '../../../chat/browser/widget/chatWidgetService.js'; import { URI } from '../../../../../base/common/uri.js'; suite('InlineChatSession', function () { diff --git a/src/vs/workbench/contrib/markers/browser/markersChatContext.ts b/src/vs/workbench/contrib/markers/browser/markersChatContext.ts index 1d862978895..1df4e1967bb 100644 --- a/src/vs/workbench/contrib/markers/browser/markersChatContext.ts +++ b/src/vs/workbench/contrib/markers/browser/markersChatContext.ts @@ -17,8 +17,8 @@ import { IQuickPickSeparator } from '../../../../platform/quickinput/common/quic import { EditorResourceAccessor } from '../../../common/editor.js'; import { IWorkbenchContribution } from '../../../common/contributions.js'; import { IEditorService } from '../../../services/editor/common/editorService.js'; -import { IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPickService, IChatContextPicker, picksWithPromiseFn } from '../../chat/browser/chatContextPickService.js'; -import { IDiagnosticVariableEntryFilterData } from '../../chat/common/chatVariableEntries.js'; +import { IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPickService, IChatContextPicker, picksWithPromiseFn } from '../../chat/browser/attachments/chatContextPickService.js'; +import { IDiagnosticVariableEntryFilterData } from '../../chat/common/attachments/chatVariableEntries.js'; import { IChatWidget } from '../../chat/browser/chat.js'; class MarkerChatContextPick implements IChatContextPickerItem { diff --git a/src/vs/workbench/contrib/mcp/browser/mcpAddContextContribution.ts b/src/vs/workbench/contrib/mcp/browser/mcpAddContextContribution.ts index c4310dfe68b..ea735f845e9 100644 --- a/src/vs/workbench/contrib/mcp/browser/mcpAddContextContribution.ts +++ b/src/vs/workbench/contrib/mcp/browser/mcpAddContextContribution.ts @@ -10,7 +10,7 @@ import { autorun, derived } from '../../../../base/common/observable.js'; import { localize } from '../../../../nls.js'; import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; import { IWorkbenchContribution } from '../../../common/contributions.js'; -import { ChatContextPick, IChatContextPickService } from '../../chat/browser/chatContextPickService.js'; +import { ChatContextPick, IChatContextPickService } from '../../chat/browser/attachments/chatContextPickService.js'; import { IMcpService, McpCapability } from '../common/mcpTypes.js'; import { McpResourcePickHelper } from './mcpResourceQuickAccess.js'; diff --git a/src/vs/workbench/contrib/mcp/browser/mcpCommands.ts b/src/vs/workbench/contrib/mcp/browser/mcpCommands.ts index b9a8dd4bde1..7e4b7cc5460 100644 --- a/src/vs/workbench/contrib/mcp/browser/mcpCommands.ts +++ b/src/vs/workbench/contrib/mcp/browser/mcpCommands.ts @@ -50,11 +50,11 @@ import { IUserDataProfileService } from '../../../services/userDataProfile/commo import { IViewsService } from '../../../services/views/common/viewsService.js'; import { CHAT_CONFIG_MENU_ID } from '../../chat/browser/actions/chatActions.js'; import { ChatViewId, IChatWidgetService } from '../../chat/browser/chat.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; -import { IChatElicitationRequest, IChatToolInvocation } from '../../chat/common/chatService.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; +import { IChatElicitationRequest, IChatToolInvocation } from '../../chat/common/chatService/chatService.js'; import { ChatModeKind } from '../../chat/common/constants.js'; import { ILanguageModelsService } from '../../chat/common/languageModels.js'; -import { ILanguageModelToolsService } from '../../chat/common/languageModelToolsService.js'; +import { ILanguageModelToolsService } from '../../chat/common/tools/languageModelToolsService.js'; import { VIEW_CONTAINER } from '../../extensions/browser/extensions.contribution.js'; import { extensionsFilterSubMenu, IExtensionsWorkbenchService } from '../../extensions/common/extensions.js'; import { TEXT_FILE_EDITOR_ID } from '../../files/common/files.js'; diff --git a/src/vs/workbench/contrib/mcp/browser/mcpElicitationService.ts b/src/vs/workbench/contrib/mcp/browser/mcpElicitationService.ts index b11f9b251b2..2b1b21e5bb0 100644 --- a/src/vs/workbench/contrib/mcp/browser/mcpElicitationService.ts +++ b/src/vs/workbench/contrib/mcp/browser/mcpElicitationService.ts @@ -16,10 +16,10 @@ import { localize } from '../../../../nls.js'; import { INotificationService, Severity } from '../../../../platform/notification/common/notification.js'; import { IOpenerService } from '../../../../platform/opener/common/opener.js'; import { IQuickInputService, IQuickPick, IQuickPickItem } from '../../../../platform/quickinput/common/quickInput.js'; -import { ChatElicitationRequestPart } from '../../chat/browser/chatElicitationRequestPart.js'; -import { ChatModel } from '../../chat/common/chatModel.js'; -import { ElicitationState, IChatService } from '../../chat/common/chatService.js'; -import { LocalChatSessionUri } from '../../chat/common/chatUri.js'; +import { ChatElicitationRequestPart } from '../../chat/common/model/chatProgressTypes/chatElicitationRequestPart.js'; +import { ChatModel } from '../../chat/common/model/chatModel.js'; +import { ElicitationState, IChatService } from '../../chat/common/chatService/chatService.js'; +import { LocalChatSessionUri } from '../../chat/common/model/chatUri.js'; import { ElicitationKind, ElicitResult, IFormModeElicitResult, IMcpElicitationService, IMcpServer, IMcpToolCallContext, IUrlModeElicitResult, McpConnectionState, MpcResponseError } from '../common/mcpTypes.js'; import { mcpServerToSourceData } from '../common/mcpTypesUtils.js'; import { MCP } from '../common/modelContextProtocol.js'; diff --git a/src/vs/workbench/contrib/mcp/browser/mcpResourceQuickAccess.ts b/src/vs/workbench/contrib/mcp/browser/mcpResourceQuickAccess.ts index 7257eac5e37..054d2edfa18 100644 --- a/src/vs/workbench/contrib/mcp/browser/mcpResourceQuickAccess.ts +++ b/src/vs/workbench/contrib/mcp/browser/mcpResourceQuickAccess.ts @@ -21,14 +21,14 @@ import { IQuickInputService, IQuickPick, IQuickPickItem, IQuickPickSeparator } f import { IEditorService } from '../../../services/editor/common/editorService.js'; import { IViewsService } from '../../../services/views/common/viewsService.js'; import { IChatWidgetService } from '../../chat/browser/chat.js'; -import { IChatAttachmentResolveService } from '../../chat/browser/chatAttachmentResolveService.js'; -import { IChatRequestVariableEntry } from '../../chat/common/chatVariableEntries.js'; +import { IChatAttachmentResolveService } from '../../chat/browser/attachments/chatAttachmentResolveService.js'; +import { IChatRequestVariableEntry } from '../../chat/common/attachments/chatVariableEntries.js'; import { IMcpResource, IMcpResourceTemplate, IMcpServer, IMcpService, isMcpResourceTemplate, McpCapability, McpConnectionState, McpResourceURI } from '../common/mcpTypes.js'; import { McpIcons } from '../common/mcpIcons.js'; import { IUriTemplateVariable } from '../common/uriTemplate.js'; import { openPanelChatAndGetWidget } from './openPanelChatAndGetWidget.js'; import { LinkedList } from '../../../../base/common/linkedList.js'; -import { ChatContextPickAttachment } from '../../chat/browser/chatContextPickService.js'; +import { ChatContextPickAttachment } from '../../chat/browser/attachments/chatContextPickService.js'; import { asArray } from '../../../../base/common/arrays.js'; export class McpResourcePickHelper extends Disposable { diff --git a/src/vs/workbench/contrib/mcp/browser/mcpServersView.ts b/src/vs/workbench/contrib/mcp/browser/mcpServersView.ts index d8ddc372102..7f4dfea45e3 100644 --- a/src/vs/workbench/contrib/mcp/browser/mcpServersView.ts +++ b/src/vs/workbench/contrib/mcp/browser/mcpServersView.ts @@ -39,7 +39,7 @@ import { IWorkbenchContribution } from '../../../common/contributions.js'; import { SyncDescriptor } from '../../../../platform/instantiation/common/descriptors.js'; import { DefaultViewsContext, SearchMcpServersContext } from '../../extensions/common/extensions.js'; import { VIEW_CONTAINER } from '../../extensions/browser/extensions.contribution.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { Button } from '../../../../base/browser/ui/button/button.js'; import { defaultButtonStyles } from '../../../../platform/theme/browser/defaultStyles.js'; import { AbstractExtensionsListView } from '../../extensions/browser/extensionsViews.js'; diff --git a/src/vs/workbench/contrib/mcp/common/mcpLanguageModelToolContribution.ts b/src/vs/workbench/contrib/mcp/common/mcpLanguageModelToolContribution.ts index 47d01a58d02..082e55958da 100644 --- a/src/vs/workbench/contrib/mcp/common/mcpLanguageModelToolContribution.ts +++ b/src/vs/workbench/contrib/mcp/common/mcpLanguageModelToolContribution.ts @@ -21,9 +21,9 @@ import { IInstantiationService } from '../../../../platform/instantiation/common import { IProductService } from '../../../../platform/product/common/productService.js'; import { StorageScope } from '../../../../platform/storage/common/storage.js'; import { IWorkbenchContribution } from '../../../common/contributions.js'; -import { ChatResponseResource, getAttachableImageExtension } from '../../chat/common/chatModel.js'; +import { ChatResponseResource, getAttachableImageExtension } from '../../chat/common/model/chatModel.js'; import { LanguageModelPartAudience } from '../../chat/common/languageModels.js'; -import { CountTokensCallback, ILanguageModelToolsService, IPreparedToolInvocation, IToolConfirmationMessages, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, IToolResultInputOutputDetails, ToolDataSource, ToolProgress, ToolSet } from '../../chat/common/languageModelToolsService.js'; +import { CountTokensCallback, ILanguageModelToolsService, IPreparedToolInvocation, IToolConfirmationMessages, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, IToolResultInputOutputDetails, ToolDataSource, ToolProgress, ToolSet } from '../../chat/common/tools/languageModelToolsService.js'; import { IMcpRegistry } from './mcpRegistryTypes.js'; import { IMcpServer, IMcpService, IMcpTool, IMcpToolResourceLinkContents, McpResourceURI, McpToolResourceLinkMimeType } from './mcpTypes.js'; import { mcpServerToSourceData } from './mcpTypesUtils.js'; diff --git a/src/vs/workbench/contrib/mcp/common/mcpServer.ts b/src/vs/workbench/contrib/mcp/common/mcpServer.ts index b566d20cf7b..cdd421ab2c6 100644 --- a/src/vs/workbench/contrib/mcp/common/mcpServer.ts +++ b/src/vs/workbench/contrib/mcp/common/mcpServer.ts @@ -30,7 +30,7 @@ import { IEditorService } from '../../../services/editor/common/editorService.js import { IWorkbenchEnvironmentService } from '../../../services/environment/common/environmentService.js'; import { IExtensionService } from '../../../services/extensions/common/extensions.js'; import { IOutputService } from '../../../services/output/common/output.js'; -import { ToolProgress } from '../../chat/common/languageModelToolsService.js'; +import { ToolProgress } from '../../chat/common/tools/languageModelToolsService.js'; import { mcpActivationEvent } from './mcpConfiguration.js'; import { McpDevModeServerAttache } from './mcpDevMode.js'; import { McpIcons, parseAndValidateMcpIcon, StoredMcpIcons } from './mcpIcons.js'; diff --git a/src/vs/workbench/contrib/mcp/common/mcpTypes.ts b/src/vs/workbench/contrib/mcp/common/mcpTypes.ts index 4dc545bf320..81b228991a1 100644 --- a/src/vs/workbench/contrib/mcp/common/mcpTypes.ts +++ b/src/vs/workbench/contrib/mcp/common/mcpTypes.ts @@ -28,7 +28,7 @@ import { IMcpDevModeConfig, IMcpServerConfiguration } from '../../../../platform import { StorageScope } from '../../../../platform/storage/common/storage.js'; import { IWorkspaceFolder, IWorkspaceFolderData } from '../../../../platform/workspace/common/workspace.js'; import { IWorkbenchLocalMcpServer, IWorkbencMcpServerInstallOptions } from '../../../services/mcp/common/mcpWorkbenchManagementService.js'; -import { ToolProgress } from '../../chat/common/languageModelToolsService.js'; +import { ToolProgress } from '../../chat/common/tools/languageModelToolsService.js'; import { IMcpServerSamplingConfiguration } from './mcpConfiguration.js'; import { McpServerRequestHandler } from './mcpServerRequestHandler.js'; import { MCP } from './modelContextProtocol.js'; diff --git a/src/vs/workbench/contrib/mcp/common/mcpTypesUtils.ts b/src/vs/workbench/contrib/mcp/common/mcpTypesUtils.ts index 0b4e97d81b1..450fdab6a22 100644 --- a/src/vs/workbench/contrib/mcp/common/mcpTypesUtils.ts +++ b/src/vs/workbench/contrib/mcp/common/mcpTypesUtils.ts @@ -8,7 +8,7 @@ import { CancellationToken } from '../../../../base/common/cancellation.js'; import { CancellationError } from '../../../../base/common/errors.js'; import { DisposableStore } from '../../../../base/common/lifecycle.js'; import { autorun, IReader } from '../../../../base/common/observable.js'; -import { ToolDataSource } from '../../chat/common/languageModelToolsService.js'; +import { ToolDataSource } from '../../chat/common/tools/languageModelToolsService.js'; import { IMcpServer, IMcpServerStartOpts, IMcpService, McpConnectionState, McpServerCacheState, McpServerTransportType } from './mcpTypes.js'; import { MCP } from './modelContextProtocol.js'; diff --git a/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.ts b/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.ts index dfd645ce241..5494fe02d06 100644 --- a/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.ts +++ b/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.ts @@ -13,7 +13,7 @@ import { INotebookEditor, INotebookEditorContribution } from '../../notebookBrow import { registerNotebookContribution } from '../../notebookEditorExtensions.js'; import { CodeCellViewModel } from '../../viewModel/codeCellViewModel.js'; import { Event } from '../../../../../../base/common/event.js'; -import { IChatAgentService } from '../../../../chat/common/chatAgents.js'; +import { IChatAgentService } from '../../../../chat/common/participants/chatAgents.js'; import { ChatAgentLocation } from '../../../../chat/common/constants.js'; import { autorun } from '../../../../../../base/common/observable.js'; diff --git a/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/diagnosticCellStatusBarContrib.ts b/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/diagnosticCellStatusBarContrib.ts index f10ea92275c..9b39c639a3b 100644 --- a/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/diagnosticCellStatusBarContrib.ts +++ b/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/diagnosticCellStatusBarContrib.ts @@ -15,7 +15,7 @@ import { registerNotebookContribution } from '../../notebookEditorExtensions.js' import { CodeCellViewModel } from '../../viewModel/codeCellViewModel.js'; import { INotebookCellStatusBarItem, CellStatusbarAlignment } from '../../../common/notebookCommon.js'; import { ICellExecutionError } from '../../../common/notebookExecutionStateService.js'; -import { IChatAgentService } from '../../../../chat/common/chatAgents.js'; +import { IChatAgentService } from '../../../../chat/common/participants/chatAgents.js'; import { ChatAgentLocation } from '../../../../chat/common/constants.js'; export class DiagnosticCellStatusBarContrib extends Disposable implements INotebookEditorContribution { diff --git a/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.ts b/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.ts index c67c5f4ad7a..99a9f731620 100644 --- a/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.ts +++ b/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.ts @@ -7,7 +7,7 @@ import { normalizeDriveLetter } from '../../../../../../base/common/labels.js'; import { basenameOrAuthority } from '../../../../../../base/common/resources.js'; import { ThemeIcon } from '../../../../../../base/common/themables.js'; import { localize } from '../../../../../../nls.js'; -import { INotebookOutputVariableEntry } from '../../../../chat/common/chatVariableEntries.js'; +import { INotebookOutputVariableEntry } from '../../../../chat/common/attachments/chatVariableEntries.js'; import { CellUri } from '../../../common/notebookCommon.js'; import { ICellOutputViewModel, INotebookEditor } from '../../notebookBrowser.js'; diff --git a/src/vs/workbench/contrib/notebook/browser/contrib/editorHint/emptyCellEditorHint.ts b/src/vs/workbench/contrib/notebook/browser/contrib/editorHint/emptyCellEditorHint.ts index 0870ac79d1b..cc43314944a 100644 --- a/src/vs/workbench/contrib/notebook/browser/contrib/editorHint/emptyCellEditorHint.ts +++ b/src/vs/workbench/contrib/notebook/browser/contrib/editorHint/emptyCellEditorHint.ts @@ -7,7 +7,7 @@ import { Schemas } from '../../../../../../base/common/network.js'; import { ICodeEditor } from '../../../../../../editor/browser/editorBrowser.js'; import { EditorContributionInstantiation, registerEditorContribution } from '../../../../../../editor/browser/editorExtensions.js'; import { IConfigurationService } from '../../../../../../platform/configuration/common/configuration.js'; -import { IChatAgentService } from '../../../../chat/common/chatAgents.js'; +import { IChatAgentService } from '../../../../chat/common/participants/chatAgents.js'; import { EmptyTextEditorHintContribution } from '../../../../codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.js'; import { IInlineChatSessionService } from '../../../../inlineChat/browser/inlineChatSessionService.js'; import { getNotebookEditorFromEditorPane } from '../../notebookBrowser.js'; diff --git a/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.ts b/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.ts index 55310ea8efb..12f5e4d2e88 100644 --- a/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.ts +++ b/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.ts @@ -22,7 +22,7 @@ import { NOTEBOOK_EDITOR_EDITABLE, NOTEBOOK_EDITOR_FOCUSED } from '../../../comm import { Iterable } from '../../../../../../base/common/iterator.js'; import { ICodeEditor } from '../../../../../../editor/browser/editorBrowser.js'; import { IEditorService } from '../../../../../services/editor/common/editorService.js'; -import { ChatContextKeys } from '../../../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../../../chat/common/actions/chatContextKeys.js'; import { InlineChatController } from '../../../../inlineChat/browser/inlineChatController.js'; import { EditorAction2 } from '../../../../../../editor/browser/editorExtensions.js'; diff --git a/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.ts b/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.ts index 771bffc7bb5..251cf6b7521 100644 --- a/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.ts +++ b/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.ts @@ -22,12 +22,12 @@ import { IQuickInputService, IQuickPickItem } from '../../../../../../platform/q import { IWorkbenchContribution, registerWorkbenchContribution2, WorkbenchPhase } from '../../../../../common/contributions.js'; import { IEditorService } from '../../../../../services/editor/common/editorService.js'; import { IChatWidget, IChatWidgetService } from '../../../../chat/browser/chat.js'; -import { IChatContextPicker, IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPickService } from '../../../../chat/browser/chatContextPickService.js'; -import { ChatDynamicVariableModel } from '../../../../chat/browser/contrib/chatDynamicVariables.js'; -import { computeCompletionRanges } from '../../../../chat/browser/contrib/chatInputCompletions.js'; -import { IChatAgentService } from '../../../../chat/common/chatAgents.js'; -import { ChatContextKeys } from '../../../../chat/common/chatContextKeys.js'; -import { chatVariableLeader } from '../../../../chat/common/chatParserTypes.js'; +import { IChatContextPicker, IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPickService } from '../../../../chat/browser/attachments/chatContextPickService.js'; +import { ChatDynamicVariableModel } from '../../../../chat/browser/attachments/chatDynamicVariables.js'; +import { computeCompletionRanges } from '../../../../chat/browser/widget/input/editor/chatInputCompletions.js'; +import { IChatAgentService } from '../../../../chat/common/participants/chatAgents.js'; +import { ChatContextKeys } from '../../../../chat/common/actions/chatContextKeys.js'; +import { chatVariableLeader } from '../../../../chat/common/requestParser/chatParserTypes.js'; import { ChatAgentLocation } from '../../../../chat/common/constants.js'; import { NOTEBOOK_CELL_HAS_OUTPUTS, NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT, NOTEBOOK_CELL_OUTPUT_MIMETYPE } from '../../../common/notebookContextKeys.js'; import { INotebookKernelService } from '../../../common/notebookKernelService.js'; diff --git a/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.ts b/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.ts index 8007f857b45..91655a29370 100644 --- a/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.ts +++ b/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import { AsyncReferenceCollection, IReference, ReferenceCollection } from '../../../../../../base/common/lifecycle.js'; -import { IModifiedFileEntry } from '../../../../chat/common/chatEditingService.js'; +import { IModifiedFileEntry } from '../../../../chat/common/editing/chatEditingService.js'; import { INotebookService } from '../../../common/notebookService.js'; import { bufferToStream, VSBuffer } from '../../../../../../base/common/buffer.js'; import { NotebookTextModel } from '../../../common/model/notebookTextModel.js'; diff --git a/src/vs/workbench/contrib/notebook/test/browser/contrib/notebookCellDiagnostics.test.ts b/src/vs/workbench/contrib/notebook/test/browser/contrib/notebookCellDiagnostics.test.ts index b7a87cdbc51..836da5ad28d 100644 --- a/src/vs/workbench/contrib/notebook/test/browser/contrib/notebookCellDiagnostics.test.ts +++ b/src/vs/workbench/contrib/notebook/test/browser/contrib/notebookCellDiagnostics.test.ts @@ -14,7 +14,7 @@ import { IConfigurationService } from '../../../../../../platform/configuration/ import { TestConfigurationService } from '../../../../../../platform/configuration/test/common/testConfigurationService.js'; import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; import { IMarkerData, IMarkerService } from '../../../../../../platform/markers/common/markers.js'; -import { IChatAgent, IChatAgentData, IChatAgentService } from '../../../../chat/common/chatAgents.js'; +import { IChatAgent, IChatAgentData, IChatAgentService } from '../../../../chat/common/participants/chatAgents.js'; import { CellDiagnostics } from '../../../browser/contrib/cellDiagnostics/cellDiagnosticEditorContrib.js'; import { CodeCellViewModel } from '../../../browser/viewModel/codeCellViewModel.js'; import { CellKind, NotebookSetting } from '../../../common/notebookCommon.js'; diff --git a/src/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.ts b/src/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.ts index 71cabee0115..e05b71bd72c 100644 --- a/src/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.ts +++ b/src/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.ts @@ -38,7 +38,7 @@ import { createKeybindingCommandQuery } from '../../../services/preferences/brow import { IPreferencesService } from '../../../services/preferences/common/preferences.js'; import { CHAT_OPEN_ACTION_ID } from '../../chat/browser/actions/chatActions.js'; import { ASK_QUICK_QUESTION_ACTION_ID } from '../../chat/browser/actions/chatQuickInputActions.js'; -import { IChatAgentService } from '../../chat/common/chatAgents.js'; +import { IChatAgentService } from '../../chat/common/participants/chatAgents.js'; import { ChatAgentLocation } from '../../chat/common/constants.js'; export class CommandsQuickAccessProvider extends AbstractEditorCommandsQuickAccessProvider { diff --git a/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.ts b/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.ts index 24c7421ca2e..7dbb23f10bb 100644 --- a/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.ts +++ b/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.ts @@ -8,7 +8,7 @@ import { Event } from '../../../../base/common/event.js'; import { ContextKeyExpr, IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; import { InstantiationType, registerSingleton } from '../../../../platform/instantiation/common/extensions.js'; import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; export interface IRemoteCodingAgent { id: string; diff --git a/src/vs/workbench/contrib/scm/browser/quickDiffModel.ts b/src/vs/workbench/contrib/scm/browser/quickDiffModel.ts index 831a688a267..68c2c261db0 100644 --- a/src/vs/workbench/contrib/scm/browser/quickDiffModel.ts +++ b/src/vs/workbench/contrib/scm/browser/quickDiffModel.ts @@ -26,7 +26,7 @@ import { LineRangeMapping } from '../../../../editor/common/diff/rangeMapping.js import { IDiffEditorModel } from '../../../../editor/common/editorCommon.js'; import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; import { IProgressService, ProgressLocation } from '../../../../platform/progress/common/progress.js'; -import { IChatEditingService, ModifiedFileEntryState } from '../../chat/common/chatEditingService.js'; +import { IChatEditingService, ModifiedFileEntryState } from '../../chat/common/editing/chatEditingService.js'; import { Emitter, Event } from '../../../../base/common/event.js'; import { autorun } from '../../../../base/common/observable.js'; diff --git a/src/vs/workbench/contrib/scm/browser/scm.contribution.ts b/src/vs/workbench/contrib/scm/browser/scm.contribution.ts index fe12782b6f6..6f533f17b43 100644 --- a/src/vs/workbench/contrib/scm/browser/scm.contribution.ts +++ b/src/vs/workbench/contrib/scm/browser/scm.contribution.ts @@ -46,7 +46,7 @@ import { AccessibleViewRegistry } from '../../../../platform/accessibility/brows import { SCMAccessibilityHelp } from './scmAccessibilityHelp.js'; import { EditorContextKeys } from '../../../../editor/common/editorContextKeys.js'; import { SCMHistoryItemContextContribution } from './scmHistoryChatContext.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { CHAT_SETUP_SUPPORT_ANONYMOUS_ACTION_ID } from '../../chat/browser/actions/chatActions.js'; import product from '../../../../platform/product/common/product.js'; diff --git a/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.ts b/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.ts index 0dcdd640b47..3f9548e3448 100644 --- a/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.ts +++ b/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.ts @@ -21,9 +21,9 @@ import { CodeDataTransfers } from '../../../../platform/dnd/browser/dnd.js'; import { IInstantiationService, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js'; import { IWorkbenchContribution } from '../../../common/contributions.js'; import { IChatWidget, IChatWidgetService } from '../../chat/browser/chat.js'; -import { IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPickService, picksWithPromiseFn } from '../../chat/browser/chatContextPickService.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; -import { ISCMHistoryItemChangeVariableEntry, ISCMHistoryItemVariableEntry } from '../../chat/common/chatVariableEntries.js'; +import { IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPickService, picksWithPromiseFn } from '../../chat/browser/attachments/chatContextPickService.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; +import { ISCMHistoryItemChangeVariableEntry, ISCMHistoryItemVariableEntry } from '../../chat/common/attachments/chatVariableEntries.js'; import { ScmHistoryItemResolver } from '../../multiDiffEditor/browser/scmMultiDiffSourceResolver.js'; import { ISCMHistoryItem, ISCMHistoryItemChange } from '../common/history.js'; import { ISCMProvider, ISCMService, ISCMViewService } from '../common/scm.js'; diff --git a/src/vs/workbench/contrib/scm/browser/scmViewPane.ts b/src/vs/workbench/contrib/scm/browser/scmViewPane.ts index 7d4c97e1462..e9977c33a87 100644 --- a/src/vs/workbench/contrib/scm/browser/scmViewPane.ts +++ b/src/vs/workbench/contrib/scm/browser/scmViewPane.ts @@ -108,7 +108,7 @@ import { observableConfigValue } from '../../../../platform/observable/common/pl import { AccessibilityVerbositySettingId } from '../../accessibility/browser/accessibilityConfiguration.js'; import { IAccessibilityService } from '../../../../platform/accessibility/common/accessibility.js'; import { AccessibilityCommandId } from '../../accessibility/common/accessibilityCommands.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import product from '../../../../platform/product/common/product.js'; import { CHAT_SETUP_SUPPORT_ANONYMOUS_ACTION_ID } from '../../chat/browser/actions/chatActions.js'; diff --git a/src/vs/workbench/contrib/search/browser/searchChatContext.ts b/src/vs/workbench/contrib/search/browser/searchChatContext.ts index ce0f46ef2d0..8a5f8d560c6 100644 --- a/src/vs/workbench/contrib/search/browser/searchChatContext.ts +++ b/src/vs/workbench/contrib/search/browser/searchChatContext.ts @@ -13,8 +13,8 @@ import { ILabelService } from '../../../../platform/label/common/label.js'; import { IWorkbenchContribution } from '../../../common/contributions.js'; import { getExcludes, IFileQuery, ISearchComplete, ISearchConfiguration, ISearchService, QueryType, VIEW_ID } from '../../../services/search/common/search.js'; import { IViewsService } from '../../../services/views/common/viewsService.js'; -import { IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPickService, IChatContextValueItem, picksWithPromiseFn } from '../../chat/browser/chatContextPickService.js'; -import { IChatRequestVariableEntry, ISymbolVariableEntry } from '../../chat/common/chatVariableEntries.js'; +import { IChatContextPickerItem, IChatContextPickerPickItem, IChatContextPickService, IChatContextValueItem, picksWithPromiseFn } from '../../chat/browser/attachments/chatContextPickService.js'; +import { IChatRequestVariableEntry, ISymbolVariableEntry } from '../../chat/common/attachments/chatVariableEntries.js'; import { SearchContext } from '../common/constants.js'; import { SearchView } from './searchView.js'; import { CancellationToken } from '../../../../base/common/cancellation.js'; diff --git a/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts b/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts index 6e2ddbcf2f2..a84dc5c18e5 100644 --- a/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts +++ b/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts @@ -86,8 +86,8 @@ import { IPreferencesService } from '../../../services/preferences/common/prefer import { IRemoteAgentService } from '../../../services/remote/common/remoteAgentService.js'; import { IViewsService } from '../../../services/views/common/viewsService.js'; import { CHAT_OPEN_ACTION_ID } from '../../chat/browser/actions/chatActions.js'; -import { IChatAgentService } from '../../chat/common/chatAgents.js'; -import { IChatService } from '../../chat/common/chatService.js'; +import { IChatAgentService } from '../../chat/common/participants/chatAgents.js'; +import { IChatService } from '../../chat/common/chatService/chatService.js'; import { configureTaskIcon, isWorkspaceFolder, ITaskQuickPickEntry, QUICKOPEN_DETAIL_CONFIG, QUICKOPEN_SKIP_CONFIG, TaskQuickPick } from './taskQuickPick.js'; import { IHostService } from '../../../services/host/browser/host.js'; import * as dom from '../../../../base/browser/dom.js'; diff --git a/src/vs/workbench/contrib/tasks/electron-browser/taskService.ts b/src/vs/workbench/contrib/tasks/electron-browser/taskService.ts index 32477960bae..bffaa341d92 100644 --- a/src/vs/workbench/contrib/tasks/electron-browser/taskService.ts +++ b/src/vs/workbench/contrib/tasks/electron-browser/taskService.ts @@ -48,8 +48,8 @@ import { IThemeService } from '../../../../platform/theme/common/themeService.js import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; import { IRemoteAgentService } from '../../../services/remote/common/remoteAgentService.js'; import { IAccessibilitySignalService } from '../../../../platform/accessibilitySignal/browser/accessibilitySignalService.js'; -import { IChatService } from '../../chat/common/chatService.js'; -import { IChatAgentService } from '../../chat/common/chatAgents.js'; +import { IChatService } from '../../chat/common/chatService/chatService.js'; +import { IChatAgentService } from '../../chat/common/participants/chatAgents.js'; import { IHostService } from '../../../services/host/browser/host.js'; interface IWorkspaceFolderConfigurationResult { diff --git a/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.ts b/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.ts index 4b91cd3f2d7..68ee0de4c4c 100644 --- a/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.ts +++ b/src/vs/workbench/contrib/terminal/browser/chatTerminalCommandMirror.ts @@ -12,10 +12,10 @@ import { XtermTerminal } from './xterm/xtermTerminal.js'; import { TERMINAL_BACKGROUND_COLOR } from '../common/terminalColorRegistry.js'; import { PANEL_BACKGROUND } from '../../../common/theme.js'; import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; -import { ChatContextKeys } from '../../chat/common/chatContextKeys.js'; +import { ChatContextKeys } from '../../chat/common/actions/chatContextKeys.js'; import { editorBackground } from '../../../../platform/theme/common/colorRegistry.js'; import { Color } from '../../../../base/common/color.js'; -import type { IChatTerminalToolInvocationData } from '../../chat/common/chatService.js'; +import type { IChatTerminalToolInvocationData } from '../../chat/common/chatService/chatService.js'; import type { IColorTheme } from '../../../../platform/theme/common/themeService.js'; function getChatTerminalBackgroundColor(theme: IColorTheme, contextKeyService: IContextKeyService, storedBackground?: string): Color | undefined { diff --git a/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.ts b/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.ts index f9b6dd44170..68e2c80e2ca 100644 --- a/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.ts +++ b/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.ts @@ -27,7 +27,7 @@ import { TERMINAL_COMMAND_DECORATION_DEFAULT_BACKGROUND_COLOR, TERMINAL_COMMAND_ import { ILifecycleService } from '../../../../services/lifecycle/common/lifecycle.js'; import { IHoverService } from '../../../../../platform/hover/browser/hover.js'; import { MarkdownString } from '../../../../../base/common/htmlContent.js'; -import { IChatContextPickService } from '../../../chat/browser/chatContextPickService.js'; +import { IChatContextPickService } from '../../../chat/browser/attachments/chatContextPickService.js'; import { IChatWidgetService } from '../../../chat/browser/chat.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; import { TerminalContext } from '../../../chat/browser/actions/chatContext.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.ts b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.ts index b07810ca9b2..897e9d8c88d 100644 --- a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.ts +++ b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.ts @@ -11,9 +11,9 @@ import { Action2, MenuId, MenuRegistry, registerAction2 } from '../../../../../p import { ContextKeyExpr } from '../../../../../platform/contextkey/common/contextkey.js'; import { KeybindingsRegistry, KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js'; import { ChatViewId, IChatWidgetService } from '../../../chat/browser/chat.js'; -import { ChatContextKeys } from '../../../chat/common/chatContextKeys.js'; -import { IChatService } from '../../../chat/common/chatService.js'; -import { LocalChatSessionUri } from '../../../chat/common/chatUri.js'; +import { ChatContextKeys } from '../../../chat/common/actions/chatContextKeys.js'; +import { IChatService } from '../../../chat/common/chatService/chatService.js'; +import { LocalChatSessionUri } from '../../../chat/common/model/chatUri.js'; import { ChatAgentLocation, ChatConfiguration } from '../../../chat/common/constants.js'; import { AbstractInline1ChatAction } from '../../../inlineChat/browser/inlineChatActions.js'; import { isDetachedTerminalInstance, ITerminalChatService, ITerminalEditorService, ITerminalGroupService, ITerminalInstance, ITerminalService } from '../../../terminal/browser/terminal.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.ts b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.ts index 359a8e2bbf4..5160470b037 100644 --- a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.ts +++ b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.ts @@ -9,11 +9,11 @@ import { Disposable } from '../../../../../base/common/lifecycle.js'; import { IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; import { IInstantiationService, type ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; import { IChatCodeBlockContextProviderService, IChatWidgetService } from '../../../chat/browser/chat.js'; -import { IChatService } from '../../../chat/common/chatService.js'; +import { IChatService } from '../../../chat/common/chatService/chatService.js'; import { isDetachedTerminalInstance, ITerminalContribution, ITerminalInstance, ITerminalService, IXtermTerminal } from '../../../terminal/browser/terminal.js'; import { TerminalChatWidget } from './terminalChatWidget.js'; import type { ITerminalContributionContext } from '../../../terminal/browser/terminalExtensions.js'; -import type { IChatModel } from '../../../chat/common/chatModel.js'; +import type { IChatModel } from '../../../chat/common/model/chatModel.js'; import { IChatEntitlementService } from '../../../../services/chat/common/chatEntitlementService.js'; export class TerminalChatController extends Disposable implements ITerminalContribution { diff --git a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.ts b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.ts index cbdeafdd383..d971ecc21fa 100644 --- a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.ts +++ b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.ts @@ -6,7 +6,7 @@ import { Event } from '../../../../../base/common/event.js'; import { DisposableStore } from '../../../../../base/common/lifecycle.js'; import { IContextKey, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; -import { IChatAgentService } from '../../../chat/common/chatAgents.js'; +import { IChatAgentService } from '../../../chat/common/participants/chatAgents.js'; import { ChatAgentLocation } from '../../../chat/common/constants.js'; import { TerminalChatContextKeys } from './terminalChat.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.ts b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.ts index 6e176da9fd6..653772adfc3 100644 --- a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.ts +++ b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.ts @@ -9,9 +9,9 @@ import { ILogService } from '../../../../../platform/log/common/log.js'; import { IChatTerminalToolProgressPart, ITerminalChatService, ITerminalInstance, ITerminalService } from '../../../terminal/browser/terminal.js'; import { IContextKey, IContextKeyService } from '../../../../../platform/contextkey/common/contextkey.js'; import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; -import { IChatService } from '../../../chat/common/chatService.js'; +import { IChatService } from '../../../chat/common/chatService/chatService.js'; import { TerminalChatContextKeys } from './terminalChat.js'; -import { LocalChatSessionUri } from '../../../chat/common/chatUri.js'; +import { LocalChatSessionUri } from '../../../chat/common/model/chatUri.js'; import { isNumber, isString } from '../../../../../base/common/types.js'; const enum StorageKeys { diff --git a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.ts b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.ts index f501656ede6..6ea0563ac8a 100644 --- a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.ts +++ b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.ts @@ -17,10 +17,10 @@ import { IContextKey, IContextKeyService } from '../../../../../platform/context import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; import { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js'; import { IChatAcceptInputOptions, IChatWidgetService } from '../../../chat/browser/chat.js'; -import { IChatAgentService } from '../../../chat/common/chatAgents.js'; -import { IChatResponseModel, isCellTextEditOperationArray } from '../../../chat/common/chatModel.js'; +import { IChatAgentService } from '../../../chat/common/participants/chatAgents.js'; +import { IChatResponseModel, isCellTextEditOperationArray } from '../../../chat/common/model/chatModel.js'; import { ChatMode } from '../../../chat/common/chatModes.js'; -import { IChatModelReference, IChatProgress, IChatService } from '../../../chat/common/chatService.js'; +import { IChatModelReference, IChatProgress, IChatService } from '../../../chat/common/chatService/chatService.js'; import { ChatAgentLocation } from '../../../chat/common/constants.js'; import { InlineChatWidget } from '../../../inlineChat/browser/inlineChatWidget.js'; import { MENU_INLINE_CHAT_WIDGET_SECONDARY } from '../../../inlineChat/common/inlineChat.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.ts index 265d7255eb5..da3f3980009 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.ts @@ -3,7 +3,7 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import type { ILanguageModelToolsService } from '../../../chat/common/languageModelToolsService.js'; +import type { ILanguageModelToolsService } from '../../../chat/common/tools/languageModelToolsService.js'; let previouslyRecommededInSession = false; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.ts index d36d891f74c..fbbc47ec2b7 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.ts @@ -9,8 +9,8 @@ import { posix as pathPosix, win32 as pathWin32 } from '../../../../../base/comm import { OperatingSystem } from '../../../../../base/common/platform.js'; import { escapeRegExpCharacters, removeAnsiEscapeCodes } from '../../../../../base/common/strings.js'; import { localize } from '../../../../../nls.js'; -import type { TerminalNewAutoApproveButtonData } from '../../../chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js'; -import type { ToolConfirmationAction } from '../../../chat/common/languageModelToolsService.js'; +import type { TerminalNewAutoApproveButtonData } from '../../../chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js'; +import type { ToolConfirmationAction } from '../../../chat/common/tools/languageModelToolsService.js'; import type { ICommandApprovalResultWithReason } from './commandLineAutoApprover.js'; export function isPowerShell(envShell: string, os: OperatingSystem): boolean { diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.ts index 45b283566b1..10d7575374d 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.ts @@ -13,7 +13,7 @@ import { Range } from '../../../../../editor/common/core/range.js'; import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; import { IInstantiationService } from '../../../../../platform/instantiation/common/instantiation.js'; import { IMarkerData } from '../../../../../platform/markers/common/markers.js'; -import { IToolInvocationContext, ToolProgress } from '../../../chat/common/languageModelToolsService.js'; +import { IToolInvocationContext, ToolProgress } from '../../../chat/common/tools/languageModelToolsService.js'; import { ConfiguringTask, ITaskDependency, Task } from '../../../tasks/common/tasks.js'; import { ITaskService } from '../../../tasks/common/taskService.js'; import { ITerminalInstance } from '../../../terminal/browser/terminal.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.ts index 3456c2979f8..3b847a23f87 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.ts @@ -14,8 +14,8 @@ import { IInstantiationService } from '../../../../../platform/instantiation/com import { TerminalSettingId } from '../../../../../platform/terminal/common/terminal.js'; import { registerWorkbenchContribution2, WorkbenchPhase, type IWorkbenchContribution } from '../../../../common/contributions.js'; import { IChatWidgetService } from '../../../chat/browser/chat.js'; -import { ChatContextKeys } from '../../../chat/common/chatContextKeys.js'; -import { ILanguageModelToolsService } from '../../../chat/common/languageModelToolsService.js'; +import { ChatContextKeys } from '../../../chat/common/actions/chatContextKeys.js'; +import { ILanguageModelToolsService } from '../../../chat/common/tools/languageModelToolsService.js'; import { registerActiveInstanceAction, sharedWhenClause } from '../../../terminal/browser/terminalActions.js'; import { TerminalContextMenuGroup } from '../../../terminal/browser/terminalMenus.js'; import { TerminalContextKeys } from '../../../terminal/common/terminalContextKey.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.ts index 8a70c590465..b31cb17d046 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.ts @@ -7,7 +7,7 @@ import type { IMarkdownString } from '../../../../../../../base/common/htmlConte import type { IDisposable } from '../../../../../../../base/common/lifecycle.js'; import type { OperatingSystem } from '../../../../../../../base/common/platform.js'; import type { URI } from '../../../../../../../base/common/uri.js'; -import type { ToolConfirmationAction } from '../../../../../chat/common/languageModelToolsService.js'; +import type { ToolConfirmationAction } from '../../../../../chat/common/tools/languageModelToolsService.js'; import type { TreeSitterCommandParserLanguage } from '../../treeSitterCommandParser.js'; export interface ICommandLineAnalyzer extends IDisposable { diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.ts index cb8181c67df..ae37e973246 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.ts @@ -12,9 +12,9 @@ import { IConfigurationService } from '../../../../../../../platform/configurati import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; import { ITerminalChatService } from '../../../../../terminal/browser/terminal.js'; import { IStorageService, StorageScope } from '../../../../../../../platform/storage/common/storage.js'; -import { TerminalToolConfirmationStorageKeys } from '../../../../../chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js'; +import { TerminalToolConfirmationStorageKeys } from '../../../../../chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js'; import { ChatConfiguration } from '../../../../../chat/common/constants.js'; -import type { ToolConfirmationAction } from '../../../../../chat/common/languageModelToolsService.js'; +import type { ToolConfirmationAction } from '../../../../../chat/common/tools/languageModelToolsService.js'; import { TerminalChatAgentToolsSettingId } from '../../../common/terminalChatAgentToolsConfiguration.js'; import { CommandLineAutoApprover, type IAutoApproveRule, type ICommandApprovalResult, type ICommandApprovalResultWithReason } from '../../commandLineAutoApprover.js'; import { dedupeRules, generateAutoApproveActions, isPowerShell } from '../../runInTerminalHelpers.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.ts index 82239ac70eb..7d0810cabd6 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.ts @@ -8,7 +8,7 @@ import { Codicon } from '../../../../../../base/common/codicons.js'; import { Disposable } from '../../../../../../base/common/lifecycle.js'; import { localize } from '../../../../../../nls.js'; import { TerminalCapability } from '../../../../../../platform/terminal/common/capabilities/capabilities.js'; -import { ToolDataSource, type IPreparedToolInvocation, type IToolData, type IToolImpl, type IToolInvocation, type IToolInvocationPreparationContext, type IToolResult, type CountTokensCallback, type ToolProgress } from '../../../../chat/common/languageModelToolsService.js'; +import { ToolDataSource, type IPreparedToolInvocation, type IToolData, type IToolImpl, type IToolInvocation, type IToolInvocationPreparationContext, type IToolResult, type CountTokensCallback, type ToolProgress } from '../../../../chat/common/tools/languageModelToolsService.js'; import { ITerminalService } from '../../../../terminal/browser/terminal.js'; export const GetTerminalLastCommandToolData: IToolData = { diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.ts index a1003be0961..ce814bf621a 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.ts @@ -7,7 +7,7 @@ import type { CancellationToken } from '../../../../../../base/common/cancellati import { Codicon } from '../../../../../../base/common/codicons.js'; import { Disposable } from '../../../../../../base/common/lifecycle.js'; import { localize } from '../../../../../../nls.js'; -import { ToolDataSource, type CountTokensCallback, type IPreparedToolInvocation, type IToolData, type IToolImpl, type IToolInvocation, type IToolInvocationPreparationContext, type IToolResult, type ToolProgress } from '../../../../chat/common/languageModelToolsService.js'; +import { ToolDataSource, type CountTokensCallback, type IPreparedToolInvocation, type IToolData, type IToolImpl, type IToolInvocation, type IToolInvocationPreparationContext, type IToolResult, type ToolProgress } from '../../../../chat/common/tools/languageModelToolsService.js'; import { RunInTerminalTool } from './runInTerminalTool.js'; export const GetTerminalOutputToolData: IToolData = { diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.ts index 8560964feb2..5f4b8b7b3dd 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.ts @@ -7,7 +7,7 @@ import type { CancellationToken } from '../../../../../../base/common/cancellati import { Codicon } from '../../../../../../base/common/codicons.js'; import { Disposable } from '../../../../../../base/common/lifecycle.js'; import { localize } from '../../../../../../nls.js'; -import { ToolDataSource, type IPreparedToolInvocation, type IToolData, type IToolImpl, type IToolInvocation, type IToolInvocationPreparationContext, type IToolResult, type CountTokensCallback, type ToolProgress } from '../../../../chat/common/languageModelToolsService.js'; +import { ToolDataSource, type IPreparedToolInvocation, type IToolData, type IToolImpl, type IToolInvocation, type IToolInvocationPreparationContext, type IToolResult, type CountTokensCallback, type ToolProgress } from '../../../../chat/common/tools/languageModelToolsService.js'; import { ITerminalService } from '../../../../terminal/browser/terminal.js'; export const GetTerminalSelectionToolData: IToolData = { diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.ts index 1b04d61bc24..db346101787 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.ts @@ -14,12 +14,12 @@ import { isObject, isString } from '../../../../../../../base/common/types.js'; import { localize } from '../../../../../../../nls.js'; import { ExtensionIdentifier } from '../../../../../../../platform/extensions/common/extensions.js'; import { IChatWidgetService } from '../../../../../chat/browser/chat.js'; -import { ChatElicitationRequestPart } from '../../../../../chat/browser/chatElicitationRequestPart.js'; -import { ChatModel } from '../../../../../chat/common/chatModel.js'; -import { ElicitationState, IChatService } from '../../../../../chat/common/chatService.js'; +import { ChatElicitationRequestPart } from '../../../../../chat/common/model/chatProgressTypes/chatElicitationRequestPart.js'; +import { ChatModel } from '../../../../../chat/common/model/chatModel.js'; +import { ElicitationState, IChatService } from '../../../../../chat/common/chatService/chatService.js'; import { ChatAgentLocation } from '../../../../../chat/common/constants.js'; import { ChatMessageRole, ILanguageModelsService } from '../../../../../chat/common/languageModels.js'; -import { IToolInvocationContext } from '../../../../../chat/common/languageModelToolsService.js'; +import { IToolInvocationContext } from '../../../../../chat/common/tools/languageModelToolsService.js'; import { ITaskService } from '../../../../../tasks/common/taskService.js'; import { ILinkLocation } from '../../taskHelpers.js'; import { IConfirmationPrompt, IExecution, IPollingResult, OutputMonitorState, PollingConsts } from './types.js'; @@ -28,7 +28,7 @@ import { IConfigurationService } from '../../../../../../../platform/configurati import { TerminalChatAgentToolsSettingId } from '../../../common/terminalChatAgentToolsConfiguration.js'; import { ILogService } from '../../../../../../../platform/log/common/log.js'; import { ITerminalService } from '../../../../../terminal/browser/terminal.js'; -import { LocalChatSessionUri } from '../../../../../chat/common/chatUri.js'; +import { LocalChatSessionUri } from '../../../../../chat/common/model/chatUri.js'; export interface IOutputMonitor extends Disposable { readonly pollingResult: IPollingResult & { pollDurationMs: number } | undefined; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts index b8237de9d03..c05c0757388 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.ts @@ -7,7 +7,7 @@ import { CancellationToken } from '../../../../../../base/common/cancellation.js import { Codicon } from '../../../../../../base/common/codicons.js'; import { URI } from '../../../../../../base/common/uri.js'; import { localize } from '../../../../../../nls.js'; -import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolInvocationPresentation, ToolProgress } from '../../../../chat/common/languageModelToolsService.js'; +import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolInvocationPresentation, ToolProgress } from '../../../../chat/common/tools/languageModelToolsService.js'; import { RunInTerminalTool } from './runInTerminalTool.js'; export const ConfirmTerminalCommandToolData: IToolData = { diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.ts index 82864a5b186..e46f742d430 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.ts @@ -22,9 +22,9 @@ import { IStorageService, StorageScope, StorageTarget } from '../../../../../../ import { TerminalCapability } from '../../../../../../platform/terminal/common/capabilities/capabilities.js'; import { ITerminalLogService, ITerminalProfile } from '../../../../../../platform/terminal/common/terminal.js'; import { IRemoteAgentService } from '../../../../../services/remote/common/remoteAgentService.js'; -import { TerminalToolConfirmationStorageKeys } from '../../../../chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js'; -import { IChatService, type IChatTerminalToolInvocationData } from '../../../../chat/common/chatService.js'; -import { CountTokensCallback, ILanguageModelToolsService, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolInvocationPresentation, ToolProgress } from '../../../../chat/common/languageModelToolsService.js'; +import { TerminalToolConfirmationStorageKeys } from '../../../../chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js'; +import { IChatService, type IChatTerminalToolInvocationData } from '../../../../chat/common/chatService/chatService.js'; +import { CountTokensCallback, ILanguageModelToolsService, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolInvocationPresentation, ToolProgress } from '../../../../chat/common/tools/languageModelToolsService.js'; import { ITerminalChatService, ITerminalService, type ITerminalInstance } from '../../../../terminal/browser/terminal.js'; import type { XtermTerminal } from '../../../../terminal/browser/xterm/xtermTerminal.js'; import { ITerminalProfileResolverService } from '../../../../terminal/common/terminal.js'; @@ -44,7 +44,7 @@ import { CommandLineAutoApproveAnalyzer } from './commandLineAnalyzer/commandLin import { CommandLineFileWriteAnalyzer } from './commandLineAnalyzer/commandLineFileWriteAnalyzer.js'; import { OutputMonitor } from './monitoring/outputMonitor.js'; import { IPollingResult, OutputMonitorState } from './monitoring/types.js'; -import { LocalChatSessionUri } from '../../../../chat/common/chatUri.js'; +import { LocalChatSessionUri } from '../../../../chat/common/model/chatUri.js'; import type { ICommandLineRewriter } from './commandLineRewriter/commandLineRewriter.js'; import { CommandLineCdPrefixRewriter } from './commandLineRewriter/commandLineCdPrefixRewriter.js'; import { CommandLinePwshChainOperatorRewriter } from './commandLineRewriter/commandLinePwshChainOperatorRewriter.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.ts index 2cd650f0af3..b5ec1c14644 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.ts @@ -7,7 +7,7 @@ import { timeout } from '../../../../../../../base/common/async.js'; import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; import { localize } from '../../../../../../../nls.js'; import { ITelemetryService } from '../../../../../../../platform/telemetry/common/telemetry.js'; -import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolProgress } from '../../../../../chat/common/languageModelToolsService.js'; +import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolProgress } from '../../../../../chat/common/tools/languageModelToolsService.js'; import { ITaskService, ITaskSummary, Task } from '../../../../../tasks/common/taskService.js'; import { TaskRunSource } from '../../../../../tasks/common/tasks.js'; import { ITerminalInstance, ITerminalService } from '../../../../../terminal/browser/terminal.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.ts index e3b3a9a9145..5d0a0589c25 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.ts @@ -10,7 +10,7 @@ import { localize } from '../../../../../../../nls.js'; import { IConfigurationService } from '../../../../../../../platform/configuration/common/configuration.js'; import { IInstantiationService } from '../../../../../../../platform/instantiation/common/instantiation.js'; import { ITelemetryService } from '../../../../../../../platform/telemetry/common/telemetry.js'; -import { ToolDataSource, type CountTokensCallback, type IPreparedToolInvocation, type IToolData, type IToolImpl, type IToolInvocation, type IToolInvocationPreparationContext, type IToolResult, type ToolProgress } from '../../../../../chat/common/languageModelToolsService.js'; +import { ToolDataSource, type CountTokensCallback, type IPreparedToolInvocation, type IToolData, type IToolImpl, type IToolInvocation, type IToolInvocationPreparationContext, type IToolResult, type ToolProgress } from '../../../../../chat/common/tools/languageModelToolsService.js'; import { ITaskService, Task, TasksAvailableContext } from '../../../../../tasks/common/taskService.js'; import { ITerminalService } from '../../../../../terminal/browser/terminal.js'; import { collectTerminalResults, getTaskDefinition, getTaskForTool, resolveDependencyTasks, tasksMatch } from '../../taskHelpers.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.ts index 0f0dd791128..f92fe12ab6f 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.ts @@ -7,7 +7,7 @@ import { timeout } from '../../../../../../../base/common/async.js'; import { CancellationToken } from '../../../../../../../base/common/cancellation.js'; import { localize } from '../../../../../../../nls.js'; import { ITelemetryService } from '../../../../../../../platform/telemetry/common/telemetry.js'; -import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolProgress } from '../../../../../chat/common/languageModelToolsService.js'; +import { CountTokensCallback, IPreparedToolInvocation, IToolData, IToolImpl, IToolInvocation, IToolInvocationPreparationContext, IToolResult, ToolDataSource, ToolProgress } from '../../../../../chat/common/tools/languageModelToolsService.js'; import { ITaskService, ITaskSummary, Task, TasksAvailableContext } from '../../../../../tasks/common/taskService.js'; import { TaskRunSource } from '../../../../../tasks/common/tasks.js'; import { ITerminalService } from '../../../../../terminal/browser/terminal.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.ts index fd90030213d..bf982c4bc2f 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import { URI } from '../../../../../../base/common/uri.js'; -import { IChatTerminalToolInvocationData } from '../../../../chat/common/chatService.js'; +import { IChatTerminalToolInvocationData } from '../../../../chat/common/chatService/chatService.js'; import { ITerminalInstance } from '../../../../terminal/browser/terminal.js'; import { getCommandOutputSnapshot } from '../../../../terminal/browser/chatTerminalCommandMirror.js'; import { TerminalCapability, type ITerminalCommand } from '../../../../../../platform/terminal/common/capabilities/capabilities.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/browser/outputMonitor.test.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/browser/outputMonitor.test.ts index d54c95de0a7..75a535b8295 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/browser/outputMonitor.test.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/browser/outputMonitor.test.ts @@ -11,13 +11,13 @@ import { ITerminalInstance } from '../../../../terminal/browser/terminal.js'; import { IPollingResult, OutputMonitorState } from '../../browser/tools/monitoring/types.js'; import { TestInstantiationService } from '../../../../../../platform/instantiation/test/common/instantiationServiceMock.js'; import { ILanguageModelsService } from '../../../../chat/common/languageModels.js'; -import { IChatService } from '../../../../chat/common/chatService.js'; +import { IChatService } from '../../../../chat/common/chatService/chatService.js'; import { Emitter, Event } from '../../../../../../base/common/event.js'; -import { ChatModel } from '../../../../chat/common/chatModel.js'; +import { ChatModel } from '../../../../chat/common/model/chatModel.js'; import { ILogService, NullLogService } from '../../../../../../platform/log/common/log.js'; import { runWithFakedTimers } from '../../../../../../base/test/common/timeTravelScheduler.js'; -import { IToolInvocationContext } from '../../../../chat/common/languageModelToolsService.js'; -import { LocalChatSessionUri } from '../../../../chat/common/chatUri.js'; +import { IToolInvocationContext } from '../../../../chat/common/tools/languageModelToolsService.js'; +import { LocalChatSessionUri } from '../../../../chat/common/model/chatUri.js'; import { isNumber } from '../../../../../../base/common/types.js'; suite('OutputMonitor', () => { diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/electron-browser/runInTerminalTool.test.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/electron-browser/runInTerminalTool.test.ts index 5ecba8aa106..11f9a8b2b4d 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/electron-browser/runInTerminalTool.test.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/test/electron-browser/runInTerminalTool.test.ts @@ -29,10 +29,10 @@ import { TreeSitterLibraryService } from '../../../../../services/treeSitter/bro import { workbenchInstantiationService } from '../../../../../test/browser/workbenchTestServices.js'; import { TestContextService } from '../../../../../test/common/workbenchTestServices.js'; import { TestIPCFileSystemProvider } from '../../../../../test/electron-browser/workbenchTestServices.js'; -import { TerminalToolConfirmationStorageKeys } from '../../../../chat/browser/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js'; -import { IChatService, type IChatTerminalToolInvocationData } from '../../../../chat/common/chatService.js'; -import { LocalChatSessionUri } from '../../../../chat/common/chatUri.js'; -import { ILanguageModelToolsService, IPreparedToolInvocation, IToolInvocationPreparationContext, type ToolConfirmationAction } from '../../../../chat/common/languageModelToolsService.js'; +import { TerminalToolConfirmationStorageKeys } from '../../../../chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.js'; +import { IChatService, type IChatTerminalToolInvocationData } from '../../../../chat/common/chatService/chatService.js'; +import { LocalChatSessionUri } from '../../../../chat/common/model/chatUri.js'; +import { ILanguageModelToolsService, IPreparedToolInvocation, IToolInvocationPreparationContext, type ToolConfirmationAction } from '../../../../chat/common/tools/languageModelToolsService.js'; import { ITerminalChatService, ITerminalService, type ITerminalInstance } from '../../../../terminal/browser/terminal.js'; import { ITerminalProfileResolverService } from '../../../../terminal/common/terminal.js'; import { RunInTerminalTool, type IRunInTerminalInputParams } from '../../browser/tools/runInTerminalTool.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/inlineHint/browser/terminal.initialHint.contribution.ts b/src/vs/workbench/contrib/terminalContrib/inlineHint/browser/terminal.initialHint.contribution.ts index c7c079dfcc4..b8d75933b37 100644 --- a/src/vs/workbench/contrib/terminalContrib/inlineHint/browser/terminal.initialHint.contribution.ts +++ b/src/vs/workbench/contrib/terminalContrib/inlineHint/browser/terminal.initialHint.contribution.ts @@ -22,7 +22,7 @@ import { IKeybindingService } from '../../../../../platform/keybinding/common/ke import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.js'; import { ITerminalCapabilityStore, TerminalCapability } from '../../../../../platform/terminal/common/capabilities/capabilities.js'; import { AccessibilityVerbositySettingId } from '../../../accessibility/browser/accessibilityConfiguration.js'; -import { IChatAgent, IChatAgentService } from '../../../chat/common/chatAgents.js'; +import { IChatAgent, IChatAgentService } from '../../../chat/common/participants/chatAgents.js'; import { ChatAgentLocation } from '../../../chat/common/constants.js'; import { IDetachedTerminalInstance, ITerminalContribution, ITerminalInstance, IXtermTerminal } from '../../../terminal/browser/terminal.js'; import { registerTerminalContribution, type IDetachedCompatibleTerminalContributionContext, type ITerminalContributionContext } from '../../../terminal/browser/terminalExtensions.js'; diff --git a/src/vs/workbench/contrib/terminalContrib/inlineHint/test/browser/terminalInitialHint.test.ts b/src/vs/workbench/contrib/terminalContrib/inlineHint/test/browser/terminalInitialHint.test.ts index 6dbe4f8bf08..83f7cfacdc9 100644 --- a/src/vs/workbench/contrib/terminalContrib/inlineHint/test/browser/terminalInitialHint.test.ts +++ b/src/vs/workbench/contrib/terminalContrib/inlineHint/test/browser/terminalInitialHint.test.ts @@ -12,7 +12,7 @@ import { getActiveDocument } from '../../../../../../base/browser/dom.js'; import { Emitter } from '../../../../../../base/common/event.js'; import { strictEqual } from 'assert'; import { ExtensionIdentifier } from '../../../../../../platform/extensions/common/extensions.js'; -import { IChatAgent } from '../../../../chat/common/chatAgents.js'; +import { IChatAgent } from '../../../../chat/common/participants/chatAgents.js'; import { importAMDNodeModule } from '../../../../../../amdX.js'; import { ChatAgentLocation, ChatModeKind } from '../../../../chat/common/constants.js'; import { InitialHintAddon } from '../../browser/terminal.initialHint.contribution.js'; diff --git a/src/vs/workbench/contrib/testing/common/testingChatAgentTool.ts b/src/vs/workbench/contrib/testing/common/testingChatAgentTool.ts index 26e37446d2e..94cb8a0f182 100644 --- a/src/vs/workbench/contrib/testing/common/testingChatAgentTool.ts +++ b/src/vs/workbench/contrib/testing/common/testingChatAgentTool.ts @@ -29,7 +29,7 @@ import { IToolResult, ToolDataSource, ToolProgress, -} from '../../chat/common/languageModelToolsService.js'; +} from '../../chat/common/tools/languageModelToolsService.js'; import { TestId } from './testId.js'; import { FileCoverage, getTotalCoveragePercent } from './testCoverage.js'; import { TestingContextKeys } from './testingContextKeys.js'; diff --git a/src/vs/workbench/workbench.common.main.ts b/src/vs/workbench/workbench.common.main.ts index 5a623d39de5..e7c16a7de53 100644 --- a/src/vs/workbench/workbench.common.main.ts +++ b/src/vs/workbench/workbench.common.main.ts @@ -209,8 +209,8 @@ import './contrib/speech/browser/speech.contribution.js'; import './contrib/chat/browser/chat.contribution.js'; import './contrib/inlineChat/browser/inlineChat.contribution.js'; import './contrib/mcp/browser/mcp.contribution.js'; -import './contrib/chat/browser/chatSessions.contribution.js'; -import './contrib/chat/browser/chatContext.contribution.js'; +import './contrib/chat/browser/chatSessions/chatSessions.contribution.js'; +import './contrib/chat/browser/contextContrib/chatContext.contribution.js'; // Interactive import './contrib/interactive/browser/interactive.contribution.js';