@codingame/monaco-vscode-chat-service-override 16.1.0 → 17.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +6 -6
- package/package.json +30 -27
- package/vscode/src/vs/base/common/objectCache.d.ts +1 -1
- package/vscode/src/vs/base/common/objectCache.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +41 -41
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +16 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.d.ts +4 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +410 -443
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.d.ts +1 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +3 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +9 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTransfer.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +32 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatAttachInstructionsAction.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatAttachInstructionsAction.js +61 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatRunPromptAction.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatRunPromptAction.js +159 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatSaveToPromptAction.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/chatSaveToPromptAction.js +140 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/promptFilePickers.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/promptFilePickers.js +244 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/utils/attachInstructions.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/utils/attachInstructions.js +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/utils/runPrompt.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/dialogs/askToSelectPrompt/utils/runPrompt.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/index.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/promptActions/index.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +171 -168
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEdinputInputContentProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.d.ts +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +48 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +46 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +118 -123
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +5 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +45 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +12 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +48 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +53 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +32 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +9 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +80 -268
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +214 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +7 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +26 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.d.ts +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +186 -106
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +129 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +313 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +4 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +12 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.d.ts +0 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +42 -181
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +15 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +2 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +484 -384
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +187 -101
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatusItemService.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.d.ts +3 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +8 -52
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +264 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +28 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +41 -45
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css +8 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSetup.css +2 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatStatus.css +20 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/media/simpleBrowserOverlay.css +67 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/attachInstructionsCommand.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/attachInstructionsCommand.js +73 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/createPromptCommand.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/createPromptCommand.js +82 -67
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/dialogs/askForPromptName.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/dialogs/askForPromptName.js +44 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/dialogs/askForPromptSourceFolder.d.ts +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/dialogs/askForPromptSourceFolder.js +24 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/errors.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/createPromptCommand/utils/createPromptFile.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatCodeMapperService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +7 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +14 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +8 -7
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +84 -80
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatTransferService.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatTransferService.js +27 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/configMigration.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/configMigration.js +62 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/index.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/index.js +16 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/index.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/index.js +17 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/frontMatterDecoration.d.ts +29 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/frontMatterDecoration.js +74 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/frontMatterMarkerDecoration.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/frontMatterMarkerDecoration.js +40 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/utils/decorationBase.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/utils/decorationBase.js +40 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/utils/index.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/utils/index.js +9 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/utils/reactiveDecorationBase.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/utils/reactiveDecorationBase.js +68 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/decorations/utils/types.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/promptDecorationsProvider.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/promptDecorationsProvider.js +121 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/types.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/decorationsProvider/types.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/promptHeaderDiagnosticsProvider.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/promptHeaderDiagnosticsProvider.js +62 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/promptLinkDiagnosticsProvider.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/promptLinkDiagnosticsProvider.js +65 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{languageFeatures → contributions/languageFeatures/providers}/promptLinkProvider.js +3 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{languageFeatures → contributions/languageFeatures/providers}/promptPathAutocompletion.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{languageFeatures → contributions/languageFeatures/providers}/promptPathAutocompletion.js +14 -19
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/providerInstanceBase.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/providerInstanceBase.js +22 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/providerInstanceManagerBase.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contributions/languageFeatures/providers/providerInstanceManagerBase.js +83 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.js +8 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +17 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +223 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +5 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +28 -22
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/treeUtils.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/treeUtils.js +25 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +20 -31
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +15 -12
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +12 -12
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +2 -2
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceUtils.d.ts +0 -2
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceUtils.js +1 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/chatAttachPromptAction.d.ts +0 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/chatAttachPromptAction.js +0 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/askToSelectPrompt.d.ts +0 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/askToSelectPrompt.js +0 -79
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/constants.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/constants.js +0 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/utils/attachPrompts.d.ts +0 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/utils/attachPrompts.js +0 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/utils/createPlaceholderText.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/utils/createPlaceholderText.js +0 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/utils/createPromptPickItem.d.ts +0 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/utils/createPromptPickItem.js +0 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/utils/handleButtonClick.d.ts +0 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAttachPromptAction/dialogs/askToSelectPrompt/utils/handleButtonClick.js +0 -49
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/usePromptCommand.d.ts +0 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/contributions/usePromptCommand.js +0 -80
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/constants.d.ts +0 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/constants.js +0 -13
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider.d.ts +0 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider.js +0 -64
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageFeatures/promptLinkDiagnosticsProvider.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageFeatures/promptLinkDiagnosticsProvider.js +0 -117
- /package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/{languageFeatures → contributions/languageFeatures/providers}/promptLinkProvider.d.ts +0 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types.service';
|
|
4
|
+
import { ProviderInstanceBase } from './providerInstanceBase.js';
|
|
5
|
+
import { assert } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
|
|
6
|
+
import { NotPromptFile } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptFileReferenceErrors';
|
|
7
|
+
import { assertDefined } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
8
|
+
import { ProviderInstanceManagerBase } from './providerInstanceManagerBase.js';
|
|
9
|
+
import { MarkerSeverity } from '@codingame/monaco-vscode-api/vscode/vs/platform/markers/common/markers';
|
|
10
|
+
import { IMarkerService } from '@codingame/monaco-vscode-api/vscode/vs/platform/markers/common/markers.service';
|
|
11
|
+
|
|
12
|
+
const MARKERS_OWNER_ID = 'prompt-link-diagnostics-provider';
|
|
13
|
+
let PromptLinkDiagnosticsProvider = class PromptLinkDiagnosticsProvider extends ProviderInstanceBase {
|
|
14
|
+
constructor(model, promptsService, markerService) {
|
|
15
|
+
super(model, promptsService);
|
|
16
|
+
this.markerService = markerService;
|
|
17
|
+
}
|
|
18
|
+
async onPromptSettled() {
|
|
19
|
+
await this.parser.allSettled();
|
|
20
|
+
this.markerService.remove(MARKERS_OWNER_ID, [this.model.uri]);
|
|
21
|
+
const markers = [];
|
|
22
|
+
for (const link of this.parser.references) {
|
|
23
|
+
const { topError, linkRange } = link;
|
|
24
|
+
if (!topError || !linkRange) {
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
27
|
+
const { originalError } = topError;
|
|
28
|
+
if (originalError instanceof NotPromptFile) {
|
|
29
|
+
continue;
|
|
30
|
+
}
|
|
31
|
+
markers.push(toMarker(link));
|
|
32
|
+
}
|
|
33
|
+
this.markerService.changeOne(MARKERS_OWNER_ID, this.model.uri, markers);
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
toString() {
|
|
37
|
+
return `prompt-link-diagnostics:${this.model.uri.path}`;
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
PromptLinkDiagnosticsProvider = ( __decorate([
|
|
41
|
+
( __param(1, IPromptsService)),
|
|
42
|
+
( __param(2, IMarkerService))
|
|
43
|
+
], PromptLinkDiagnosticsProvider));
|
|
44
|
+
const toMarker = (link) => {
|
|
45
|
+
const { topError, linkRange } = link;
|
|
46
|
+
assertDefined(topError, 'Top error must to be defined.');
|
|
47
|
+
assertDefined(linkRange, 'Link range must to be defined.');
|
|
48
|
+
const { originalError } = topError;
|
|
49
|
+
assert(!(originalError instanceof NotPromptFile), 'Error must not be of "not prompt file" type.');
|
|
50
|
+
const severity = (topError.errorSubject === 'root')
|
|
51
|
+
? MarkerSeverity.Error
|
|
52
|
+
: MarkerSeverity.Warning;
|
|
53
|
+
return {
|
|
54
|
+
message: topError.localizedMessage,
|
|
55
|
+
severity,
|
|
56
|
+
...linkRange,
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
class PromptLinkDiagnosticsInstanceManager extends ProviderInstanceManagerBase {
|
|
60
|
+
get InstanceClass() {
|
|
61
|
+
return PromptLinkDiagnosticsProvider;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export { PromptLinkDiagnosticsInstanceManager };
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { LANGUAGE_SELECTOR } from '../constants.js';
|
|
4
3
|
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types.service';
|
|
5
4
|
import { assert } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
|
|
6
5
|
import { assertDefined } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
7
6
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
8
7
|
import { CancellationError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
|
|
9
|
-
import {
|
|
10
|
-
import { FolderReference, NotPromptFile } from '@codingame/monaco-vscode-
|
|
11
|
-
import { LifecyclePhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle';
|
|
12
|
-
import { Extensions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
|
|
8
|
+
import { PROMPT_AND_INSTRUCTIONS_LANGUAGE_SELECTOR } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/constants';
|
|
9
|
+
import { FolderReference, NotPromptFile } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptFileReferenceErrors';
|
|
13
10
|
import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
|
|
14
11
|
|
|
15
12
|
let PromptLinkProvider = class PromptLinkProvider extends Disposable {
|
|
@@ -17,7 +14,7 @@ let PromptLinkProvider = class PromptLinkProvider extends Disposable {
|
|
|
17
14
|
super();
|
|
18
15
|
this.promptsService = promptsService;
|
|
19
16
|
this.languageService = languageService;
|
|
20
|
-
this._register(this.languageService.linkProvider.register(
|
|
17
|
+
this._register(this.languageService.linkProvider.register(PROMPT_AND_INSTRUCTIONS_LANGUAGE_SELECTOR, this));
|
|
21
18
|
}
|
|
22
19
|
async provideLinks(model, token) {
|
|
23
20
|
assert(!token.isCancellationRequested, ( new CancellationError()));
|
|
@@ -55,7 +52,5 @@ PromptLinkProvider = ( __decorate([
|
|
|
55
52
|
( __param(0, IPromptsService)),
|
|
56
53
|
( __param(1, ILanguageFeaturesService))
|
|
57
54
|
], PromptLinkProvider));
|
|
58
|
-
( Registry.as(Extensions.Workbench))
|
|
59
|
-
.registerWorkbenchContribution(PromptLinkProvider, LifecyclePhase.Eventually);
|
|
60
55
|
|
|
61
56
|
export { PromptLinkProvider };
|
|
@@ -9,11 +9,11 @@ import { CompletionContext, CompletionItemProvider, CompletionList } from "@codi
|
|
|
9
9
|
type TTriggerCharacter = ":" | "." | "/";
|
|
10
10
|
export declare class PromptPathAutocompletion extends Disposable implements CompletionItemProvider {
|
|
11
11
|
private readonly fileService;
|
|
12
|
-
private readonly
|
|
12
|
+
private readonly promptsService;
|
|
13
13
|
private readonly languageService;
|
|
14
14
|
readonly _debugDisplayName: string;
|
|
15
15
|
readonly triggerCharacters: TTriggerCharacter[];
|
|
16
|
-
constructor(fileService: IFileService,
|
|
16
|
+
constructor(fileService: IFileService, promptsService: IPromptsService, languageService: ILanguageFeaturesService);
|
|
17
17
|
provideCompletionItems(model: ITextModel, position: Position, context: CompletionContext, token: CancellationToken): Promise<CompletionList | undefined>;
|
|
18
18
|
private getFolderSuggestions;
|
|
19
19
|
private getFirstFolderSuggestions;
|
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { LANGUAGE_SELECTOR } from '../constants.js';
|
|
4
3
|
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types.service';
|
|
4
|
+
import { extUri } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
5
5
|
import { assertOneOf } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
6
|
-
import { isWindows } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
|
|
7
6
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
8
7
|
import { CancellationError } from '@codingame/monaco-vscode-api/vscode/vs/base/common/errors';
|
|
9
|
-
import {
|
|
8
|
+
import { PROMPT_AND_INSTRUCTIONS_LANGUAGE_SELECTOR } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/constants';
|
|
10
9
|
import { assert, assertNever } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
|
|
11
10
|
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
12
|
-
import { Registry } from '@codingame/monaco-vscode-api/vscode/vs/platform/registry/common/platform';
|
|
13
|
-
import { LifecyclePhase } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle';
|
|
14
11
|
import { ILanguageFeaturesService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service';
|
|
15
|
-
import { Extensions } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions';
|
|
16
12
|
import { CompletionItemKind } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/languages';
|
|
17
13
|
|
|
18
14
|
const findFileReference = (references, position) => {
|
|
@@ -33,14 +29,14 @@ const findFileReference = (references, position) => {
|
|
|
33
29
|
return undefined;
|
|
34
30
|
};
|
|
35
31
|
let PromptPathAutocompletion = class PromptPathAutocompletion extends Disposable {
|
|
36
|
-
constructor(fileService,
|
|
32
|
+
constructor(fileService, promptsService, languageService) {
|
|
37
33
|
super();
|
|
38
34
|
this.fileService = fileService;
|
|
39
|
-
this.
|
|
35
|
+
this.promptsService = promptsService;
|
|
40
36
|
this.languageService = languageService;
|
|
41
37
|
this._debugDisplayName = 'PromptPathAutocompletion';
|
|
42
38
|
this.triggerCharacters = [':', '.', '/'];
|
|
43
|
-
this._register(this.languageService.completionProvider.register(
|
|
39
|
+
this._register(this.languageService.completionProvider.register(PROMPT_AND_INSTRUCTIONS_LANGUAGE_SELECTOR, this));
|
|
44
40
|
}
|
|
45
41
|
async provideCompletionItems(model, position, context, token) {
|
|
46
42
|
assert(!token.isCancellationRequested, ( new CancellationError()));
|
|
@@ -49,7 +45,7 @@ let PromptPathAutocompletion = class PromptPathAutocompletion extends Disposable
|
|
|
49
45
|
return undefined;
|
|
50
46
|
}
|
|
51
47
|
assertOneOf(triggerCharacter, this.triggerCharacters, `Prompt path autocompletion provider`);
|
|
52
|
-
const parser = this.
|
|
48
|
+
const parser = this.promptsService.getSyntaxParserFor(model);
|
|
53
49
|
assert(!parser.disposed, 'Prompt parser must not be disposed.');
|
|
54
50
|
const { references } = await parser
|
|
55
51
|
.start()
|
|
@@ -59,15 +55,18 @@ let PromptPathAutocompletion = class PromptPathAutocompletion extends Disposable
|
|
|
59
55
|
if (!fileReference) {
|
|
60
56
|
return undefined;
|
|
61
57
|
}
|
|
62
|
-
const
|
|
58
|
+
const { parentFolder } = parser;
|
|
59
|
+
if (parentFolder === null) {
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
63
62
|
if (triggerCharacter === ':' || (triggerCharacter === '.' && fileReference.path === '.')) {
|
|
64
63
|
return {
|
|
65
|
-
suggestions: await this.getFirstFolderSuggestions(triggerCharacter,
|
|
64
|
+
suggestions: await this.getFirstFolderSuggestions(triggerCharacter, parentFolder, fileReference),
|
|
66
65
|
};
|
|
67
66
|
}
|
|
68
67
|
if (triggerCharacter === '/' || triggerCharacter === '.') {
|
|
69
68
|
return {
|
|
70
|
-
suggestions: await this.getNonFirstFolderSuggestions(triggerCharacter,
|
|
69
|
+
suggestions: await this.getNonFirstFolderSuggestions(triggerCharacter, parentFolder, fileReference),
|
|
71
70
|
};
|
|
72
71
|
}
|
|
73
72
|
assertNever(triggerCharacter, `Unexpected trigger character '${triggerCharacter}'.`);
|
|
@@ -135,8 +134,8 @@ let PromptPathAutocompletion = class PromptPathAutocompletion extends Disposable
|
|
|
135
134
|
if (linkRange === undefined) {
|
|
136
135
|
return [];
|
|
137
136
|
}
|
|
138
|
-
const
|
|
139
|
-
let suggestions = await this.getFolderSuggestions(
|
|
137
|
+
const currentFolder = extUri.resolvePath(fileFolderUri, path);
|
|
138
|
+
let suggestions = await this.getFolderSuggestions(currentFolder);
|
|
140
139
|
if (character === '.') {
|
|
141
140
|
suggestions = suggestions.filter((suggestion) => {
|
|
142
141
|
return suggestion.label.startsWith('.');
|
|
@@ -166,9 +165,5 @@ PromptPathAutocompletion = ( __decorate([
|
|
|
166
165
|
( __param(1, IPromptsService)),
|
|
167
166
|
( __param(2, ILanguageFeaturesService))
|
|
168
167
|
], PromptPathAutocompletion));
|
|
169
|
-
if (!isWindows) {
|
|
170
|
-
( Registry.as(Extensions.Workbench))
|
|
171
|
-
.registerWorkbenchContribution(PromptPathAutocompletion, LifecyclePhase.Eventually);
|
|
172
|
-
}
|
|
173
168
|
|
|
174
169
|
export { PromptPathAutocompletion };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TSharedPrompt } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types";
|
|
2
|
+
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types.service";
|
|
3
|
+
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
4
|
+
import { ObservableDisposable } from "@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/base/common/observableDisposable";
|
|
5
|
+
export declare abstract class ProviderInstanceBase extends ObservableDisposable {
|
|
6
|
+
protected readonly model: ITextModel;
|
|
7
|
+
protected abstract onPromptSettled(error: Error | undefined): Promise<this>;
|
|
8
|
+
abstract toString(): string;
|
|
9
|
+
protected readonly parser: TSharedPrompt;
|
|
10
|
+
constructor(model: ITextModel, promptsService: IPromptsService);
|
|
11
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { IPromptsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types.service';
|
|
4
|
+
import { ObservableDisposable } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/base/common/observableDisposable';
|
|
5
|
+
|
|
6
|
+
let ProviderInstanceBase = class ProviderInstanceBase extends ObservableDisposable {
|
|
7
|
+
constructor(model, promptsService) {
|
|
8
|
+
super();
|
|
9
|
+
this.model = model;
|
|
10
|
+
this.parser = promptsService.getSyntaxParserFor(model);
|
|
11
|
+
this._register(this.parser.onSettled(this.onPromptSettled.bind(this)));
|
|
12
|
+
this.parser
|
|
13
|
+
.onDispose(this.dispose.bind(this))
|
|
14
|
+
.start();
|
|
15
|
+
setTimeout(this.onPromptSettled.bind(this));
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
ProviderInstanceBase = ( __decorate([
|
|
19
|
+
( __param(1, IPromptsService))
|
|
20
|
+
], ProviderInstanceBase));
|
|
21
|
+
|
|
22
|
+
export { ProviderInstanceBase };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ProviderInstanceBase } from "./providerInstanceBase.js";
|
|
2
|
+
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
3
|
+
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
4
|
+
import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service";
|
|
5
|
+
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
6
|
+
import { IEditor } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/editorCommon";
|
|
7
|
+
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
8
|
+
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
9
|
+
export interface IPromptFileEditor extends IEditor {
|
|
10
|
+
readonly getModel: () => ITextModel;
|
|
11
|
+
}
|
|
12
|
+
export declare abstract class ProviderInstanceManagerBase<TInstance extends ProviderInstanceBase> extends Disposable {
|
|
13
|
+
private readonly instances;
|
|
14
|
+
protected abstract get InstanceClass(): new (editor: ITextModel, ...args: any[]) => TInstance;
|
|
15
|
+
constructor(modelService: IModelService, editorService: IEditorService, initService: IInstantiationService, configService: IConfigurationService);
|
|
16
|
+
private handleNewEditor;
|
|
17
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
+
import { assert } from '@codingame/monaco-vscode-api/vscode/vs/base/common/assert';
|
|
4
|
+
import { assertDefined } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
|
|
5
|
+
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
|
+
import { ObjectCache } from '../../../../../../../../base/common/objectCache.js';
|
|
7
|
+
import { PROMPT_LANGUAGE_ID, INSTRUCTIONS_LANGUAGE_ID } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/constants';
|
|
8
|
+
import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
|
|
9
|
+
import { PromptsConfig } from '@codingame/monaco-vscode-51fed910-d648-5620-9b80-9232cd79d116-common/vscode/vs/platform/prompts/common/config';
|
|
10
|
+
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
11
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
12
|
+
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
13
|
+
|
|
14
|
+
let ProviderInstanceManagerBase = class ProviderInstanceManagerBase extends Disposable {
|
|
15
|
+
constructor(modelService, editorService, initService, configService) {
|
|
16
|
+
super();
|
|
17
|
+
this.instances = this._register(( new ObjectCache((model) => {
|
|
18
|
+
assert(model.isDisposed() === false, 'Text model must not be disposed.');
|
|
19
|
+
assertDefined(this.InstanceClass, 'Instance class field must be defined.');
|
|
20
|
+
const instance = initService.createInstance(this.InstanceClass, model);
|
|
21
|
+
instance.assertNotDisposed('Created instance must not be disposed.');
|
|
22
|
+
return instance;
|
|
23
|
+
})));
|
|
24
|
+
if (PromptsConfig.enabled(configService) === false) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
this._register(editorService.onDidActiveEditorChange(() => {
|
|
28
|
+
const { activeTextEditorControl } = editorService;
|
|
29
|
+
if (activeTextEditorControl === undefined) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
this.handleNewEditor(activeTextEditorControl);
|
|
33
|
+
}));
|
|
34
|
+
editorService
|
|
35
|
+
.visibleTextEditorControls
|
|
36
|
+
.forEach(this.handleNewEditor.bind(this));
|
|
37
|
+
this._register(modelService.onModelLanguageChanged((event) => {
|
|
38
|
+
const { model, oldLanguageId } = event;
|
|
39
|
+
if (isPromptFileModel(model)) {
|
|
40
|
+
this.instances.get(model);
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
if (isPromptOrInstructionsFile(oldLanguageId)) {
|
|
44
|
+
this.instances.remove(model, true);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
}));
|
|
48
|
+
}
|
|
49
|
+
handleNewEditor(editor) {
|
|
50
|
+
const model = editor.getModel();
|
|
51
|
+
if (model === null) {
|
|
52
|
+
return this;
|
|
53
|
+
}
|
|
54
|
+
if (isPromptFileModel(model) === false) {
|
|
55
|
+
return this;
|
|
56
|
+
}
|
|
57
|
+
this.instances.get(model);
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
ProviderInstanceManagerBase = ( __decorate([
|
|
62
|
+
( __param(0, IModelService)),
|
|
63
|
+
( __param(1, IEditorService)),
|
|
64
|
+
( __param(2, IInstantiationService)),
|
|
65
|
+
( __param(3, IConfigurationService))
|
|
66
|
+
], ProviderInstanceManagerBase));
|
|
67
|
+
const isPromptOrInstructionsFile = (languageId) => {
|
|
68
|
+
return (languageId === PROMPT_LANGUAGE_ID) || (languageId === INSTRUCTIONS_LANGUAGE_ID);
|
|
69
|
+
};
|
|
70
|
+
const isPromptFileModel = (model) => {
|
|
71
|
+
if ('modified' in model || 'model' in model) {
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
if (model.isDisposed()) {
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
if (isPromptOrInstructionsFile(model.getLanguageId()) === false) {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
return true;
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
export { ProviderInstanceManagerBase };
|
package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { BasePromptParser } from "@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser";
|
|
2
1
|
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
3
2
|
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
4
|
-
import {
|
|
3
|
+
import { BasePromptParser, IPromptParserOptions } from "@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser";
|
|
4
|
+
import { TextModelContentsProvider } from "@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider";
|
|
5
|
+
import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service";
|
|
5
6
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
6
7
|
export declare class TextModelPromptParser extends BasePromptParser<TextModelContentsProvider> {
|
|
7
|
-
constructor(model: ITextModel,
|
|
8
|
+
constructor(model: ITextModel, options: Partial<IPromptParserOptions> | undefined, initService: IInstantiationService, workspaceService: IWorkspaceContextService, logService: ILogService);
|
|
8
9
|
toString(): string;
|
|
9
10
|
}
|
package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/textModelPromptParser.js
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
|
-
import { BasePromptParser } from '@codingame/monaco-vscode-9a6d8b6c-ad4c-5ea3-9558-f43d6dc4c0ad-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser';
|
|
4
3
|
import { ILogService } from '@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service';
|
|
5
|
-
import {
|
|
4
|
+
import { BasePromptParser } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser';
|
|
5
|
+
import { TextModelContentsProvider } from '@codingame/monaco-vscode-fab30422-b487-5f4e-8d30-8b4d266e3fcd-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/textModelContentsProvider';
|
|
6
|
+
import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
|
|
6
7
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
7
8
|
|
|
8
9
|
let TextModelPromptParser = class TextModelPromptParser extends BasePromptParser {
|
|
9
|
-
constructor(model,
|
|
10
|
-
const contentsProvider = initService.createInstance(TextModelContentsProvider, model);
|
|
11
|
-
super(contentsProvider,
|
|
10
|
+
constructor(model, options = {}, initService, workspaceService, logService) {
|
|
11
|
+
const contentsProvider = initService.createInstance(TextModelContentsProvider, model, options);
|
|
12
|
+
super(contentsProvider, options, initService, workspaceService, logService);
|
|
12
13
|
this._register(contentsProvider);
|
|
13
14
|
}
|
|
14
15
|
toString() {
|
|
@@ -17,7 +18,8 @@ let TextModelPromptParser = class TextModelPromptParser extends BasePromptParser
|
|
|
17
18
|
};
|
|
18
19
|
TextModelPromptParser = ( __decorate([
|
|
19
20
|
( __param(2, IInstantiationService)),
|
|
20
|
-
( __param(3,
|
|
21
|
+
( __param(3, IWorkspaceContextService)),
|
|
22
|
+
( __param(4, ILogService))
|
|
21
23
|
], TextModelPromptParser));
|
|
22
24
|
|
|
23
25
|
export { TextModelPromptParser };
|
package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts
CHANGED
|
@@ -1,20 +1,32 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types.service";
|
|
1
|
+
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
3
2
|
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
4
3
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
5
4
|
import { TextModelPromptParser } from "../parsers/textModelPromptParser.js";
|
|
5
|
+
import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service";
|
|
6
|
+
import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service";
|
|
6
7
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
7
8
|
import { IUserDataProfileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/userDataProfile.service";
|
|
9
|
+
import { IChatPromptSlashCommand, TCombinedToolsMetadata, IMetadata, IPromptPath, TPromptsType } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types";
|
|
10
|
+
import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/types.service";
|
|
8
11
|
export declare class PromptsService extends Disposable implements IPromptsService {
|
|
12
|
+
private readonly labelService;
|
|
13
|
+
private readonly modelService;
|
|
9
14
|
private readonly initService;
|
|
10
15
|
private readonly userDataService;
|
|
11
16
|
readonly _serviceBrand: undefined;
|
|
12
17
|
private readonly cache;
|
|
13
18
|
private readonly fileLocator;
|
|
14
|
-
constructor(initService: IInstantiationService, userDataService: IUserDataProfileService);
|
|
19
|
+
constructor(labelService: ILabelService, modelService: IModelService, initService: IInstantiationService, userDataService: IUserDataProfileService);
|
|
15
20
|
getSyntaxParserFor(model: ITextModel): TextModelPromptParser & {
|
|
16
21
|
disposed: false;
|
|
17
22
|
};
|
|
18
|
-
listPromptFiles(): Promise<readonly IPromptPath[]>;
|
|
19
|
-
getSourceFolders(type:
|
|
23
|
+
listPromptFiles(type: TPromptsType): Promise<readonly IPromptPath[]>;
|
|
24
|
+
getSourceFolders(type: TPromptsType): readonly IPromptPath[];
|
|
25
|
+
asPromptSlashCommand(command: string): IChatPromptSlashCommand | undefined;
|
|
26
|
+
resolvePromptSlashCommand(data: IChatPromptSlashCommand): Promise<IPromptPath | undefined>;
|
|
27
|
+
findPromptSlashCommands(): Promise<IChatPromptSlashCommand[]>;
|
|
28
|
+
findInstructionFilesFor(files: readonly URI[]): Promise<readonly URI[]>;
|
|
29
|
+
getAllMetadata(promptUris: readonly URI[]): Promise<IMetadata[]>;
|
|
30
|
+
getCombinedToolsMetadata(promptUris: readonly URI[]): Promise<TCombinedToolsMetadata | null>;
|
|
20
31
|
}
|
|
32
|
+
export declare function getPromptCommandName(path: string): string;
|