@vscode/chat-lib 0.0.1 → 0.0.2
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/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts.map +1 -1
- package/dist/src/_internal/extension/xtab/common/promptCrafting.js +6 -5
- package/dist/src/_internal/extension/xtab/common/promptCrafting.js.map +1 -1
- package/dist/src/_internal/platform/configuration/common/configurationService.d.ts +1 -0
- package/dist/src/_internal/platform/configuration/common/configurationService.d.ts.map +1 -1
- package/dist/src/_internal/platform/configuration/common/configurationService.js +1 -0
- package/dist/src/_internal/platform/configuration/common/configurationService.js.map +1 -1
- package/dist/src/_internal/platform/env/common/envService.d.ts +5 -0
- package/dist/src/_internal/platform/env/common/envService.d.ts.map +1 -1
- package/dist/src/_internal/platform/env/common/envService.js +2 -1
- package/dist/src/_internal/platform/env/common/envService.js.map +1 -1
- package/dist/src/_internal/platform/env/common/nullEnvService.d.ts +3 -0
- package/dist/src/_internal/platform/env/common/nullEnvService.d.ts.map +1 -1
- package/dist/src/_internal/platform/env/common/nullEnvService.js +8 -1
- package/dist/src/_internal/platform/env/common/nullEnvService.js.map +1 -1
- package/dist/src/_internal/platform/telemetry/common/nullExperimentationService.d.ts +7 -0
- package/dist/src/_internal/platform/telemetry/common/nullExperimentationService.d.ts.map +1 -1
- package/dist/src/_internal/platform/telemetry/common/nullExperimentationService.js +1 -0
- package/dist/src/_internal/platform/telemetry/common/nullExperimentationService.js.map +1 -1
- package/dist/src/_internal/util/common/test/shims/chatTypes.d.ts +8 -0
- package/dist/src/_internal/util/common/test/shims/chatTypes.d.ts.map +1 -1
- package/dist/src/_internal/util/common/test/shims/chatTypes.js +19 -1
- package/dist/src/_internal/util/common/test/shims/chatTypes.js.map +1 -1
- package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.d.ts.map +1 -1
- package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js +8 -1
- package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js.map +1 -1
- package/dist/src/_internal/vscodeTypes.d.ts +4 -0
- package/dist/src/_internal/vscodeTypes.d.ts.map +1 -1
- package/dist/src/_internal/vscodeTypes.js +5 -1
- package/dist/src/_internal/vscodeTypes.js.map +1 -1
- package/dist/src/main.d.ts +5 -0
- package/dist/src/main.d.ts.map +1 -1
- package/dist/src/main.js +12 -0
- package/dist/src/main.js.map +1 -1
- package/dist/src/package.json +46 -19
- package/package.json +3 -6
- package/src/_internal/extension/byok/node/openAIEndpoint.ts +0 -171
- package/src/_internal/extension/common/constants.ts +0 -90
- package/src/_internal/extension/inlineEdits/common/delayer.ts +0 -108
- package/src/_internal/extension/inlineEdits/common/editRebase.ts +0 -268
- package/src/_internal/extension/inlineEdits/common/ghNearbyNesProvider.tsx +0 -163
- package/src/_internal/extension/inlineEdits/common/nearbyCursorInlineEditProvider.ts +0 -225
- package/src/_internal/extension/inlineEdits/common/rejectionCollector.ts +0 -164
- package/src/_internal/extension/inlineEdits/node/debugRecorder.ts +0 -205
- package/src/_internal/extension/inlineEdits/node/importFiltering.ts +0 -25
- package/src/_internal/extension/inlineEdits/node/nesConfigs.ts +0 -12
- package/src/_internal/extension/inlineEdits/node/nextEditCache.ts +0 -278
- package/src/_internal/extension/inlineEdits/node/nextEditProvider.ts +0 -778
- package/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.ts +0 -983
- package/src/_internal/extension/inlineEdits/node/nextEditResult.ts +0 -40
- package/src/_internal/extension/prompt/common/importStatement.ts +0 -25
- package/src/_internal/extension/prompt/node/chatMLFetcher.ts +0 -706
- package/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.ts +0 -146
- package/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.ts +0 -527
- package/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.ts +0 -76
- package/src/_internal/extension/prompts/node/inline/visualization.ts +0 -65
- package/src/_internal/extension/vscode.proposed.activeComment.d.ts +0 -23
- package/src/_internal/extension/vscode.proposed.aiRelatedInformation.d.ts +0 -49
- package/src/_internal/extension/vscode.proposed.aiSettingsSearch.d.ts +0 -31
- package/src/_internal/extension/vscode.proposed.aiTextSearchProvider.d.ts +0 -41
- package/src/_internal/extension/vscode.proposed.authLearnMore.d.ts +0 -16
- package/src/_internal/extension/vscode.proposed.chatBinaryReferenceData.d.ts +0 -41
- package/src/_internal/extension/vscode.proposed.chatEditing.d.ts +0 -29
- package/src/_internal/extension/vscode.proposed.chatParticipantAdditions.d.ts +0 -636
- package/src/_internal/extension/vscode.proposed.chatParticipantPrivate.d.ts +0 -276
- package/src/_internal/extension/vscode.proposed.chatProvider.d.ts +0 -62
- package/src/_internal/extension/vscode.proposed.chatReadonlyPromptReference.d.ts +0 -17
- package/src/_internal/extension/vscode.proposed.chatReferenceDiagnostic.d.ts +0 -23
- package/src/_internal/extension/vscode.proposed.chatSessionsProvider.d.ts +0 -218
- package/src/_internal/extension/vscode.proposed.chatStatusItem.d.ts +0 -61
- package/src/_internal/extension/vscode.proposed.codeActionAI.d.ts +0 -16
- package/src/_internal/extension/vscode.proposed.commentReveal.d.ts +0 -32
- package/src/_internal/extension/vscode.proposed.contribCommentThreadAdditionalMenu.d.ts +0 -8
- package/src/_internal/extension/vscode.proposed.contribCommentsViewThreadMenus.d.ts +0 -6
- package/src/_internal/extension/vscode.proposed.contribSourceControlInputBoxMenu.d.ts +0 -7
- package/src/_internal/extension/vscode.proposed.dataChannels.d.ts +0 -19
- package/src/_internal/extension/vscode.proposed.defaultChatParticipant.d.ts +0 -52
- package/src/_internal/extension/vscode.proposed.documentFiltersExclusive.d.ts +0 -13
- package/src/_internal/extension/vscode.proposed.embeddings.d.ts +0 -33
- package/src/_internal/extension/vscode.proposed.extensionsAny.d.ts +0 -40
- package/src/_internal/extension/vscode.proposed.findFiles2.d.ts +0 -125
- package/src/_internal/extension/vscode.proposed.findTextInFiles.d.ts +0 -104
- package/src/_internal/extension/vscode.proposed.findTextInFiles2.d.ts +0 -144
- package/src/_internal/extension/vscode.proposed.inlineCompletionsAdditions.d.ts +0 -202
- package/src/_internal/extension/vscode.proposed.interactive.d.ts +0 -11
- package/src/_internal/extension/vscode.proposed.languageModelCapabilities.d.ts +0 -25
- package/src/_internal/extension/vscode.proposed.languageModelDataPart.d.ts +0 -163
- package/src/_internal/extension/vscode.proposed.languageModelSystem.d.ts +0 -17
- package/src/_internal/extension/vscode.proposed.languageModelThinkingPart.d.ts +0 -49
- package/src/_internal/extension/vscode.proposed.languageModelToolResultAudience.d.ts +0 -36
- package/src/_internal/extension/vscode.proposed.mappedEditsProvider.d.ts +0 -110
- package/src/_internal/extension/vscode.proposed.newSymbolNamesProvider.d.ts +0 -47
- package/src/_internal/extension/vscode.proposed.readonlyMessage.d.ts +0 -14
- package/src/_internal/extension/vscode.proposed.resolvers.d.ts +0 -475
- package/src/_internal/extension/vscode.proposed.scmInputBoxValueProvider.d.ts +0 -25
- package/src/_internal/extension/vscode.proposed.taskProblemMatcherStatus.d.ts +0 -42
- package/src/_internal/extension/vscode.proposed.terminalDataWriteEvent.d.ts +0 -32
- package/src/_internal/extension/vscode.proposed.terminalExecuteCommandEvent.d.ts +0 -48
- package/src/_internal/extension/vscode.proposed.terminalQuickFixProvider.d.ts +0 -87
- package/src/_internal/extension/vscode.proposed.terminalSelection.d.ts +0 -16
- package/src/_internal/extension/vscode.proposed.testObserver.d.ts +0 -199
- package/src/_internal/extension/vscode.proposed.textDocumentChangeReason.d.ts +0 -30
- package/src/_internal/extension/vscode.proposed.textSearchProvider.d.ts +0 -281
- package/src/_internal/extension/vscode.proposed.textSearchProvider2.d.ts +0 -297
- package/src/_internal/extension/xtab/common/promptCrafting.ts +0 -670
- package/src/_internal/extension/xtab/node/xtabEndpoint.ts +0 -102
- package/src/_internal/extension/xtab/node/xtabProvider.ts +0 -976
- package/src/_internal/extension/xtab/node/xtabUtils.ts +0 -62
- package/src/_internal/platform/authentication/common/authentication.ts +0 -309
- package/src/_internal/platform/authentication/common/copilotToken.ts +0 -300
- package/src/_internal/platform/authentication/common/copilotTokenManager.ts +0 -59
- package/src/_internal/platform/authentication/common/copilotTokenStore.ts +0 -40
- package/src/_internal/platform/authentication/common/staticGitHubAuthenticationService.ts +0 -96
- package/src/_internal/platform/authentication/node/copilotTokenManager.ts +0 -303
- package/src/_internal/platform/chat/common/chatMLFetcher.ts +0 -124
- package/src/_internal/platform/chat/common/chatQuotaService.ts +0 -63
- package/src/_internal/platform/chat/common/chatQuotaServiceImpl.ts +0 -96
- package/src/_internal/platform/chat/common/commonTypes.ts +0 -353
- package/src/_internal/platform/chat/common/conversationOptions.ts +0 -16
- package/src/_internal/platform/chat/common/globalStringUtils.ts +0 -54
- package/src/_internal/platform/chat/common/interactionService.ts +0 -35
- package/src/_internal/platform/configuration/common/configurationService.ts +0 -803
- package/src/_internal/platform/configuration/common/defaultsOnlyConfigurationService.ts +0 -39
- package/src/_internal/platform/configuration/common/jsonSchema.ts +0 -139
- package/src/_internal/platform/configuration/common/validator.ts +0 -242
- package/src/_internal/platform/diff/common/diffService.ts +0 -41
- package/src/_internal/platform/diff/common/diffWorker.ts +0 -83
- package/src/_internal/platform/diff/node/diffServiceImpl.ts +0 -85
- package/src/_internal/platform/editing/common/abstractText.ts +0 -177
- package/src/_internal/platform/editing/common/notebookDocumentSnapshot.ts +0 -122
- package/src/_internal/platform/editing/common/positionOffsetTransformer.ts +0 -202
- package/src/_internal/platform/editing/common/textDocumentSnapshot.ts +0 -274
- package/src/_internal/platform/endpoint/common/capiClient.ts +0 -37
- package/src/_internal/platform/endpoint/common/chatModelCapabilities.ts +0 -115
- package/src/_internal/platform/endpoint/common/domainService.ts +0 -27
- package/src/_internal/platform/endpoint/common/endpointProvider.ts +0 -104
- package/src/_internal/platform/endpoint/common/endpointTypes.ts +0 -12
- package/src/_internal/platform/endpoint/common/licenseAgreement.ts +0 -11
- package/src/_internal/platform/endpoint/common/statefulMarkerContainer.tsx +0 -85
- package/src/_internal/platform/endpoint/common/thinkingDataContainer.tsx +0 -44
- package/src/_internal/platform/endpoint/node/capiClientImpl.ts +0 -18
- package/src/_internal/platform/endpoint/node/chatEndpoint.ts +0 -435
- package/src/_internal/platform/endpoint/node/domainServiceImpl.ts +0 -80
- package/src/_internal/platform/endpoint/node/proxyXtabEndpoint.ts +0 -43
- package/src/_internal/platform/endpoint/node/responsesApi.ts +0 -326
- package/src/_internal/platform/env/common/envService.ts +0 -134
- package/src/_internal/platform/env/common/nullEnvService.ts +0 -68
- package/src/_internal/platform/env/common/packagejson.ts +0 -49
- package/src/_internal/platform/git/common/gitExtensionService.ts +0 -21
- package/src/_internal/platform/git/common/nullGitExtensionService.ts +0 -20
- package/src/_internal/platform/git/vscode/git.d.ts +0 -414
- package/src/_internal/platform/github/common/githubAPI.ts +0 -44
- package/src/_internal/platform/github/common/githubService.ts +0 -87
- package/src/_internal/platform/github/common/nullOctokitServiceImpl.ts +0 -21
- package/src/_internal/platform/ignore/common/ignoreService.ts +0 -72
- package/src/_internal/platform/inlineCompletions/common/api.ts +0 -198
- package/src/_internal/platform/inlineEdits/common/dataTypes/diagnosticData.ts +0 -32
- package/src/_internal/platform/inlineEdits/common/dataTypes/documentId.ts +0 -52
- package/src/_internal/platform/inlineEdits/common/dataTypes/edit.ts +0 -165
- package/src/_internal/platform/inlineEdits/common/dataTypes/editUtils.ts +0 -74
- package/src/_internal/platform/inlineEdits/common/dataTypes/fetchCancellationError.ts +0 -14
- package/src/_internal/platform/inlineEdits/common/dataTypes/languageContext.ts +0 -107
- package/src/_internal/platform/inlineEdits/common/dataTypes/languageId.ts +0 -14
- package/src/_internal/platform/inlineEdits/common/dataTypes/permutation.ts +0 -69
- package/src/_internal/platform/inlineEdits/common/dataTypes/rootedLineEdit.ts +0 -49
- package/src/_internal/platform/inlineEdits/common/dataTypes/textEditLength.ts +0 -74
- package/src/_internal/platform/inlineEdits/common/dataTypes/textEditLengthHelper/combineTextEditInfos.ts +0 -132
- package/src/_internal/platform/inlineEdits/common/dataTypes/textEditLengthHelper/length.ts +0 -184
- package/src/_internal/platform/inlineEdits/common/dataTypes/textEditLengthHelper/textEditInfo.ts +0 -32
- package/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.ts +0 -89
- package/src/_internal/platform/inlineEdits/common/debugRecorderBookmark.ts +0 -10
- package/src/_internal/platform/inlineEdits/common/editReason.ts +0 -134
- package/src/_internal/platform/inlineEdits/common/inlineEditLogContext.ts +0 -490
- package/src/_internal/platform/inlineEdits/common/observableGit.ts +0 -49
- package/src/_internal/platform/inlineEdits/common/observableWorkspace.ts +0 -239
- package/src/_internal/platform/inlineEdits/common/responseProcessor.ts +0 -249
- package/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.ts +0 -468
- package/src/_internal/platform/inlineEdits/common/statelessNextEditProviders.ts +0 -59
- package/src/_internal/platform/inlineEdits/common/utils/observable.ts +0 -54
- package/src/_internal/platform/inlineEdits/common/utils/stringifyChatMessages.ts +0 -29
- package/src/_internal/platform/inlineEdits/common/utils/utils.ts +0 -56
- package/src/_internal/platform/inlineEdits/common/workspaceEditTracker/historyContextProvider.ts +0 -60
- package/src/_internal/platform/inlineEdits/common/workspaceEditTracker/nesHistoryContextProvider.ts +0 -353
- package/src/_internal/platform/inlineEdits/common/workspaceEditTracker/nesXtabHistoryTracker.ts +0 -176
- package/src/_internal/platform/languageContextProvider/common/languageContextProviderService.ts +0 -25
- package/src/_internal/platform/languageContextProvider/common/nullLanguageContextProviderService.ts +0 -38
- package/src/_internal/platform/languageServer/common/languageContextService.ts +0 -186
- package/src/_internal/platform/languages/common/languageDiagnosticsService.ts +0 -67
- package/src/_internal/platform/languages/common/testLanguageDiagnosticsService.ts +0 -28
- package/src/_internal/platform/log/common/logService.ts +0 -232
- package/src/_internal/platform/nesFetch/common/completionsAPI.ts +0 -78
- package/src/_internal/platform/nesFetch/common/completionsFetchService.ts +0 -118
- package/src/_internal/platform/nesFetch/common/responseStream.ts +0 -151
- package/src/_internal/platform/nesFetch/node/completionsFetchServiceImpl.ts +0 -236
- package/src/_internal/platform/nesFetch/node/streamTransformer.ts +0 -95
- package/src/_internal/platform/networking/common/fetch.ts +0 -349
- package/src/_internal/platform/networking/common/fetcherService.ts +0 -84
- package/src/_internal/platform/networking/common/networking.ts +0 -442
- package/src/_internal/platform/networking/common/openai.ts +0 -273
- package/src/_internal/platform/networking/node/chatStream.ts +0 -137
- package/src/_internal/platform/networking/node/stream.ts +0 -749
- package/src/_internal/platform/notebook/common/alternativeContent.ts +0 -89
- package/src/_internal/platform/notebook/common/alternativeContentFormat.ts +0 -10
- package/src/_internal/platform/notebook/common/alternativeContentProvider.json.ts +0 -262
- package/src/_internal/platform/notebook/common/alternativeContentProvider.text.ts +0 -243
- package/src/_internal/platform/notebook/common/alternativeContentProvider.ts +0 -41
- package/src/_internal/platform/notebook/common/alternativeContentProvider.xml.ts +0 -205
- package/src/_internal/platform/notebook/common/alternativeNotebookDocument.ts +0 -155
- package/src/_internal/platform/notebook/common/helpers.ts +0 -212
- package/src/_internal/platform/notebook/common/notebookService.ts +0 -43
- package/src/_internal/platform/openai/node/fetch.ts +0 -596
- package/src/_internal/platform/parser/node/nodes.ts +0 -190
- package/src/_internal/platform/requestLogger/node/nullRequestLogger.ts +0 -26
- package/src/_internal/platform/requestLogger/node/requestLogger.ts +0 -383
- package/src/_internal/platform/simulationTestContext/common/simulationTestContext.ts +0 -29
- package/src/_internal/platform/snippy/common/snippyService.ts +0 -25
- package/src/_internal/platform/telemetry/common/nullExperimentationService.ts +0 -64
- package/src/_internal/platform/telemetry/common/nullTelemetryService.ts +0 -53
- package/src/_internal/platform/telemetry/common/telemetry.ts +0 -215
- package/src/_internal/platform/telemetry/common/telemetryData.ts +0 -205
- package/src/_internal/platform/thinking/common/thinking.ts +0 -61
- package/src/_internal/platform/thinking/common/thinkingUtils.ts +0 -57
- package/src/_internal/platform/tokenizer/node/parseTikTokens.ts +0 -23
- package/src/_internal/platform/tokenizer/node/tikTokenizerImpl.ts +0 -74
- package/src/_internal/platform/tokenizer/node/tikTokenizerWorker.ts +0 -24
- package/src/_internal/platform/tokenizer/node/tokenizer.ts +0 -357
- package/src/_internal/platform/workspace/common/workspaceService.ts +0 -226
- package/src/_internal/platform/workspaceRecorder/common/workspaceLog.ts +0 -118
- package/src/_internal/util/common/anomalyDetection.ts +0 -112
- package/src/_internal/util/common/arrays.ts +0 -81
- package/src/_internal/util/common/async.ts +0 -155
- package/src/_internal/util/common/cache.ts +0 -183
- package/src/_internal/util/common/crypto.ts +0 -41
- package/src/_internal/util/common/errors.ts +0 -22
- package/src/_internal/util/common/globals.d.ts +0 -12
- package/src/_internal/util/common/imageUtils.ts +0 -154
- package/src/_internal/util/common/languages.ts +0 -940
- package/src/_internal/util/common/notebooks.ts +0 -286
- package/src/_internal/util/common/result.ts +0 -71
- package/src/_internal/util/common/services.ts +0 -43
- package/src/_internal/util/common/test/shims/chatTypes.ts +0 -448
- package/src/_internal/util/common/test/shims/editing.ts +0 -233
- package/src/_internal/util/common/test/shims/enums.ts +0 -61
- package/src/_internal/util/common/test/shims/l10n.ts +0 -37
- package/src/_internal/util/common/test/shims/newSymbolName.ts +0 -23
- package/src/_internal/util/common/test/shims/terminal.ts +0 -33
- package/src/_internal/util/common/test/shims/vscodeTypesShim.ts +0 -115
- package/src/_internal/util/common/time.ts +0 -31
- package/src/_internal/util/common/tokenizer.ts +0 -30
- package/src/_internal/util/common/tracing.ts +0 -52
- package/src/_internal/util/common/types.ts +0 -33
- package/src/_internal/util/common/variableLengthQuantity.ts +0 -40
- package/src/_internal/util/node/worker.ts +0 -130
- package/src/_internal/util/vs/base/common/arrays.ts +0 -926
- package/src/_internal/util/vs/base/common/arraysFind.ts +0 -206
- package/src/_internal/util/vs/base/common/assert.ts +0 -89
- package/src/_internal/util/vs/base/common/async.ts +0 -2582
- package/src/_internal/util/vs/base/common/buffer.ts +0 -501
- package/src/_internal/util/vs/base/common/cache.ts +0 -122
- package/src/_internal/util/vs/base/common/cancellation.ts +0 -150
- package/src/_internal/util/vs/base/common/charCode.ts +0 -452
- package/src/_internal/util/vs/base/common/codicons.ts +0 -66
- package/src/_internal/util/vs/base/common/codiconsLibrary.ts +0 -618
- package/src/_internal/util/vs/base/common/codiconsUtil.ts +0 -30
- package/src/_internal/util/vs/base/common/collections.ts +0 -156
- package/src/_internal/util/vs/base/common/diff/diff.ts +0 -1317
- package/src/_internal/util/vs/base/common/diff/diffChange.ts +0 -62
- package/src/_internal/util/vs/base/common/equals.ts +0 -148
- package/src/_internal/util/vs/base/common/errors.ts +0 -342
- package/src/_internal/util/vs/base/common/event.ts +0 -1782
- package/src/_internal/util/vs/base/common/extpath.ts +0 -425
- package/src/_internal/util/vs/base/common/filters.ts +0 -928
- package/src/_internal/util/vs/base/common/functional.ts +0 -34
- package/src/_internal/util/vs/base/common/glob.ts +0 -839
- package/src/_internal/util/vs/base/common/hash.ts +0 -326
- package/src/_internal/util/vs/base/common/htmlContent.ts +0 -212
- package/src/_internal/util/vs/base/common/iconLabels.ts +0 -118
- package/src/_internal/util/vs/base/common/iterator.ts +0 -196
- package/src/_internal/util/vs/base/common/lazy.ts +0 -59
- package/src/_internal/util/vs/base/common/lifecycle.ts +0 -845
- package/src/_internal/util/vs/base/common/linkedList.ts +0 -144
- package/src/_internal/util/vs/base/common/map.ts +0 -954
- package/src/_internal/util/vs/base/common/marshallingIds.ts +0 -35
- package/src/_internal/util/vs/base/common/mime.ts +0 -136
- package/src/_internal/util/vs/base/common/naturalLanguage/korean.ts +0 -425
- package/src/_internal/util/vs/base/common/network.ts +0 -429
- package/src/_internal/util/vs/base/common/numbers.ts +0 -166
- package/src/_internal/util/vs/base/common/objects.ts +0 -242
- package/src/_internal/util/vs/base/common/observable.ts +0 -10
- package/src/_internal/util/vs/base/common/observableInternal/base.ts +0 -208
- package/src/_internal/util/vs/base/common/observableInternal/changeTracker.ts +0 -96
- package/src/_internal/util/vs/base/common/observableInternal/commonFacade/cancellation.ts +0 -9
- package/src/_internal/util/vs/base/common/observableInternal/commonFacade/deps.ts +0 -12
- package/src/_internal/util/vs/base/common/observableInternal/debugLocation.ts +0 -88
- package/src/_internal/util/vs/base/common/observableInternal/debugName.ts +0 -150
- package/src/_internal/util/vs/base/common/observableInternal/experimental/utils.ts +0 -62
- package/src/_internal/util/vs/base/common/observableInternal/index.ts +0 -61
- package/src/_internal/util/vs/base/common/observableInternal/logging/consoleObservableLogger.ts +0 -388
- package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/debuggerApi.d.ts +0 -154
- package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/debuggerRpc.ts +0 -80
- package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/devToolsLogger.ts +0 -485
- package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/rpc.ts +0 -103
- package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/utils.ts +0 -69
- package/src/_internal/util/vs/base/common/observableInternal/logging/logging.ts +0 -133
- package/src/_internal/util/vs/base/common/observableInternal/map.ts +0 -81
- package/src/_internal/util/vs/base/common/observableInternal/observables/baseObservable.ts +0 -172
- package/src/_internal/util/vs/base/common/observableInternal/observables/constObservable.ts +0 -44
- package/src/_internal/util/vs/base/common/observableInternal/observables/derived.ts +0 -190
- package/src/_internal/util/vs/base/common/observableInternal/observables/derivedImpl.ts +0 -445
- package/src/_internal/util/vs/base/common/observableInternal/observables/lazyObservableValue.ts +0 -154
- package/src/_internal/util/vs/base/common/observableInternal/observables/observableFromEvent.ts +0 -174
- package/src/_internal/util/vs/base/common/observableInternal/observables/observableSignal.ts +0 -67
- package/src/_internal/util/vs/base/common/observableInternal/observables/observableSignalFromEvent.ts +0 -62
- package/src/_internal/util/vs/base/common/observableInternal/observables/observableValue.ts +0 -131
- package/src/_internal/util/vs/base/common/observableInternal/observables/observableValueOpts.ts +0 -37
- package/src/_internal/util/vs/base/common/observableInternal/reactions/autorun.ts +0 -188
- package/src/_internal/util/vs/base/common/observableInternal/reactions/autorunImpl.ts +0 -256
- package/src/_internal/util/vs/base/common/observableInternal/set.ts +0 -78
- package/src/_internal/util/vs/base/common/observableInternal/transaction.ts +0 -115
- package/src/_internal/util/vs/base/common/observableInternal/utils/promise.ts +0 -129
- package/src/_internal/util/vs/base/common/observableInternal/utils/runOnChange.ts +0 -65
- package/src/_internal/util/vs/base/common/observableInternal/utils/utils.ts +0 -281
- package/src/_internal/util/vs/base/common/observableInternal/utils/utilsCancellation.ts +0 -101
- package/src/_internal/util/vs/base/common/observableInternal/utils/valueWithChangeEvent.ts +0 -31
- package/src/_internal/util/vs/base/common/path.ts +0 -1591
- package/src/_internal/util/vs/base/common/platform.ts +0 -282
- package/src/_internal/util/vs/base/common/process.ts +0 -78
- package/src/_internal/util/vs/base/common/resources.ts +0 -446
- package/src/_internal/util/vs/base/common/sequence.ts +0 -36
- package/src/_internal/util/vs/base/common/sseParser.ts +0 -247
- package/src/_internal/util/vs/base/common/stopwatch.ts +0 -43
- package/src/_internal/util/vs/base/common/stream.ts +0 -792
- package/src/_internal/util/vs/base/common/strings.ts +0 -1364
- package/src/_internal/util/vs/base/common/symbols.ts +0 -11
- package/src/_internal/util/vs/base/common/themables.ts +0 -106
- package/src/_internal/util/vs/base/common/types.ts +0 -345
- package/src/_internal/util/vs/base/common/uint.ts +0 -61
- package/src/_internal/util/vs/base/common/uri.ts +0 -752
- package/src/_internal/util/vs/base/common/uuid.ts +0 -72
- package/src/_internal/util/vs/base-common.d.ts +0 -42
- package/src/_internal/util/vs/editor/common/core/editOperation.ts +0 -62
- package/src/_internal/util/vs/editor/common/core/edits/edit.ts +0 -399
- package/src/_internal/util/vs/editor/common/core/edits/lineEdit.ts +0 -414
- package/src/_internal/util/vs/editor/common/core/edits/stringEdit.ts +0 -568
- package/src/_internal/util/vs/editor/common/core/edits/textEdit.ts +0 -411
- package/src/_internal/util/vs/editor/common/core/position.ts +0 -186
- package/src/_internal/util/vs/editor/common/core/range.ts +0 -519
- package/src/_internal/util/vs/editor/common/core/ranges/lineRange.ts +0 -416
- package/src/_internal/util/vs/editor/common/core/ranges/offsetRange.ts +0 -275
- package/src/_internal/util/vs/editor/common/core/text/abstractText.ts +0 -127
- package/src/_internal/util/vs/editor/common/core/text/positionToOffset.ts +0 -26
- package/src/_internal/util/vs/editor/common/core/text/positionToOffsetImpl.ts +0 -144
- package/src/_internal/util/vs/editor/common/core/text/textLength.ts +0 -150
- package/src/_internal/util/vs/editor/common/core/wordHelper.ts +0 -177
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.ts +0 -210
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.ts +0 -109
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.ts +0 -178
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.ts +0 -331
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.ts +0 -273
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.ts +0 -475
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.ts +0 -47
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.ts +0 -248
- package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/utils.ts +0 -76
- package/src/_internal/util/vs/editor/common/diff/legacyLinesDiffComputer.ts +0 -693
- package/src/_internal/util/vs/editor/common/diff/linesDiffComputer.ts +0 -61
- package/src/_internal/util/vs/editor/common/diff/rangeMapping.ts +0 -418
- package/src/_internal/util/vs/editor/common/model/prefixSumComputer.ts +0 -304
- package/src/_internal/util/vs/nls.messages.ts +0 -21
- package/src/_internal/util/vs/nls.ts +0 -243
- package/src/_internal/util/vs/platform/instantiation/common/descriptors.ts +0 -23
- package/src/_internal/util/vs/platform/instantiation/common/graph.ts +0 -113
- package/src/_internal/util/vs/platform/instantiation/common/instantiation.ts +0 -127
- package/src/_internal/util/vs/platform/instantiation/common/instantiationService.ts +0 -483
- package/src/_internal/util/vs/platform/instantiation/common/serviceCollection.ts +0 -34
- package/src/_internal/util/vs/vscode-globals-nls.d.ts +0 -42
- package/src/_internal/util/vs/vscode-globals-product.d.ts +0 -35
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/diagnostic.ts +0 -109
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/es5ClassCompat.ts +0 -34
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/location.ts +0 -51
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/markdownString.ts +0 -83
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/notebooks.ts +0 -296
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/position.ts +0 -195
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/range.ts +0 -167
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/selection.ts +0 -94
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetString.ts +0 -103
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetTextEdit.ts +0 -44
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/symbolInformation.ts +0 -89
- package/src/_internal/util/vs/workbench/api/common/extHostTypes/textEdit.ts +0 -99
- package/src/_internal/vscodeTypes.ts +0 -100
- package/src/main.ts +0 -207
- package/src/package.json +0 -4063
|
@@ -1,274 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
import type { EndOfLine, TextDocument, TextLine, Uri } from 'vscode';
|
|
7
|
-
import { isNumber, isString } from '../../../util/vs/base/common/types';
|
|
8
|
-
import { isUriComponents, URI, UriComponents } from '../../../util/vs/base/common/uri';
|
|
9
|
-
import { DEFAULT_WORD_REGEXP, getWordAtText } from '../../../util/vs/editor/common/core/wordHelper';
|
|
10
|
-
import { Position, Range } from '../../../util/common/test/shims/vscodeTypesShim';
|
|
11
|
-
import { PositionOffsetTransformer } from './positionOffsetTransformer';
|
|
12
|
-
|
|
13
|
-
export interface ITextDocumentSnapshotJSON {
|
|
14
|
-
readonly uri: UriComponents;
|
|
15
|
-
readonly _text: string;
|
|
16
|
-
readonly languageId: string;
|
|
17
|
-
readonly version: number;
|
|
18
|
-
readonly eol: EndOfLine;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export function isTextDocumentSnapshotJSON(thing: any): thing is ITextDocumentSnapshotJSON {
|
|
22
|
-
if (!thing || typeof thing !== 'object') {
|
|
23
|
-
return false;
|
|
24
|
-
}
|
|
25
|
-
return isUriComponents(thing.uri) && isString(thing._text) && isString(thing.languageId) && isNumber(thing.version) && isNumber(thing.eol);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export class TextDocumentSnapshot {
|
|
29
|
-
|
|
30
|
-
_textDocumentSnapshot: undefined;
|
|
31
|
-
|
|
32
|
-
static create(doc: TextDocument): TextDocumentSnapshot {
|
|
33
|
-
return new TextDocumentSnapshot(
|
|
34
|
-
doc,
|
|
35
|
-
doc.uri,
|
|
36
|
-
doc.getText(),
|
|
37
|
-
doc.languageId,
|
|
38
|
-
doc.eol,
|
|
39
|
-
doc.version,
|
|
40
|
-
);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
static fromNewText(text: string, doc: TextDocument) {
|
|
44
|
-
return new TextDocumentSnapshot(
|
|
45
|
-
doc,
|
|
46
|
-
doc.uri,
|
|
47
|
-
doc.getText(),
|
|
48
|
-
doc.languageId,
|
|
49
|
-
doc.eol,
|
|
50
|
-
doc.version + 1,
|
|
51
|
-
);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
static fromJSON(doc: TextDocument, json: ITextDocumentSnapshotJSON): TextDocumentSnapshot {
|
|
55
|
-
return new TextDocumentSnapshot(
|
|
56
|
-
doc,
|
|
57
|
-
URI.from(json.uri),
|
|
58
|
-
json._text,
|
|
59
|
-
json.languageId,
|
|
60
|
-
json.eol,
|
|
61
|
-
json.version,
|
|
62
|
-
);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
readonly document: TextDocument;
|
|
66
|
-
readonly uri: Uri;
|
|
67
|
-
readonly _text: string;
|
|
68
|
-
readonly languageId: string;
|
|
69
|
-
readonly version: number;
|
|
70
|
-
readonly eol: EndOfLine;
|
|
71
|
-
|
|
72
|
-
private _transformer: PositionOffsetTransformer | null = null;
|
|
73
|
-
public get transformer(): PositionOffsetTransformer {
|
|
74
|
-
if (!this._transformer) {
|
|
75
|
-
this._transformer = new PositionOffsetTransformer(this._text);
|
|
76
|
-
}
|
|
77
|
-
return this._transformer;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
get fileName(): string {
|
|
81
|
-
return this.uri.fsPath;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
get isUntitled(): boolean {
|
|
85
|
-
return this.uri.scheme === 'untitled';
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
get lineCount(): number {
|
|
89
|
-
return this.lines.length;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
private _lines: string[] | null = null;
|
|
93
|
-
get lines(): readonly string[] {
|
|
94
|
-
if (!this._lines) {
|
|
95
|
-
this._lines = this._text.split(/\r\n|\r|\n/g);
|
|
96
|
-
}
|
|
97
|
-
return this._lines;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
private constructor(document: TextDocument, uri: Uri, text: string, languageId: string, eol: EndOfLine, version: number) {
|
|
101
|
-
this.document = document;
|
|
102
|
-
this.uri = uri;
|
|
103
|
-
this._text = text;
|
|
104
|
-
this.languageId = languageId;
|
|
105
|
-
this.eol = eol;
|
|
106
|
-
this.version = version;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
lineAt(line: number): TextLine;
|
|
110
|
-
lineAt(position: Position): TextLine;
|
|
111
|
-
lineAt(lineOrPosition: number | Position): TextLine {
|
|
112
|
-
let line: number | undefined;
|
|
113
|
-
if (lineOrPosition instanceof Position) {
|
|
114
|
-
line = lineOrPosition.line;
|
|
115
|
-
} else if (typeof lineOrPosition === 'number') {
|
|
116
|
-
line = lineOrPosition;
|
|
117
|
-
} else {
|
|
118
|
-
throw new Error(`Invalid argument`);
|
|
119
|
-
}
|
|
120
|
-
if (line < 0 || line >= this.lines.length) {
|
|
121
|
-
throw new Error('Illegal value for `line`');
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
return new SnapshotDocumentLine(line, this.lines[line], line === this.lines.length - 1);
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
offsetAt(position: Position): number {
|
|
128
|
-
if (this.version === this.document.version) {
|
|
129
|
-
return this.document.offsetAt(position);
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
position = this.validatePosition(position);
|
|
133
|
-
return this.transformer.getOffset(position);
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
positionAt(offset: number): Position {
|
|
137
|
-
if (this.version === this.document.version) {
|
|
138
|
-
return this.document.positionAt(offset);
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
offset = Math.floor(offset);
|
|
142
|
-
offset = Math.max(0, offset);
|
|
143
|
-
|
|
144
|
-
return this.transformer.getPosition(offset);
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
getText(range?: Range): string {
|
|
148
|
-
return range ? this._getTextInRange(range) : this._text;
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
private _getTextInRange(_range: Range): string {
|
|
152
|
-
if (this.version === this.document.version) {
|
|
153
|
-
return this.document.getText(_range);
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
const range = this.validateRange(_range);
|
|
157
|
-
|
|
158
|
-
if (range.isEmpty) {
|
|
159
|
-
return '';
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
const offsetRange = this.transformer.toOffsetRange(range);
|
|
163
|
-
return this._text.substring(offsetRange.start, offsetRange.endExclusive);
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
getWordRangeAtPosition(_position: Position): Range | undefined {
|
|
167
|
-
const position = this.validatePosition(_position);
|
|
168
|
-
|
|
169
|
-
const wordAtText = getWordAtText(
|
|
170
|
-
position.character + 1,
|
|
171
|
-
DEFAULT_WORD_REGEXP,
|
|
172
|
-
this.lines[position.line],
|
|
173
|
-
0
|
|
174
|
-
);
|
|
175
|
-
|
|
176
|
-
if (wordAtText) {
|
|
177
|
-
return new Range(position.line, wordAtText.startColumn - 1, position.line, wordAtText.endColumn - 1);
|
|
178
|
-
}
|
|
179
|
-
return undefined;
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
validateRange(range: Range): Range {
|
|
183
|
-
const start = this.validatePosition(range.start);
|
|
184
|
-
const end = this.validatePosition(range.end);
|
|
185
|
-
|
|
186
|
-
if (start === range.start && end === range.end) {
|
|
187
|
-
return range;
|
|
188
|
-
}
|
|
189
|
-
return new Range(start.line, start.character, end.line, end.character);
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
validatePosition(position: Position): Position {
|
|
193
|
-
if (this._text.length === 0) {
|
|
194
|
-
return position.with(0, 0);
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
let { line, character } = position;
|
|
198
|
-
let hasChanged = false;
|
|
199
|
-
|
|
200
|
-
if (line < 0) {
|
|
201
|
-
line = 0;
|
|
202
|
-
character = 0;
|
|
203
|
-
hasChanged = true;
|
|
204
|
-
} else if (line >= this.lines.length) {
|
|
205
|
-
line = this.lines.length - 1;
|
|
206
|
-
character = this.lines[line].length;
|
|
207
|
-
hasChanged = true;
|
|
208
|
-
} else {
|
|
209
|
-
const maxCharacter = this.lines[line].length;
|
|
210
|
-
if (character < 0) {
|
|
211
|
-
character = 0;
|
|
212
|
-
hasChanged = true;
|
|
213
|
-
} else if (character > maxCharacter) {
|
|
214
|
-
character = maxCharacter;
|
|
215
|
-
hasChanged = true;
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
if (!hasChanged) {
|
|
220
|
-
return position;
|
|
221
|
-
}
|
|
222
|
-
return new Position(line, character);
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
toJSON(): ITextDocumentSnapshotJSON {
|
|
226
|
-
return {
|
|
227
|
-
uri: this.uri.toJSON(),
|
|
228
|
-
languageId: this.languageId,
|
|
229
|
-
version: this.version,
|
|
230
|
-
eol: this.eol,
|
|
231
|
-
_text: this._text
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
export class SnapshotDocumentLine implements TextLine {
|
|
237
|
-
private readonly _line: number;
|
|
238
|
-
private readonly _text: string;
|
|
239
|
-
private readonly _isLastLine: boolean;
|
|
240
|
-
|
|
241
|
-
constructor(line: number, text: string, isLastLine: boolean) {
|
|
242
|
-
this._line = line;
|
|
243
|
-
this._text = text;
|
|
244
|
-
this._isLastLine = isLastLine;
|
|
245
|
-
}
|
|
246
|
-
|
|
247
|
-
public get lineNumber(): number {
|
|
248
|
-
return this._line;
|
|
249
|
-
}
|
|
250
|
-
|
|
251
|
-
public get text(): string {
|
|
252
|
-
return this._text;
|
|
253
|
-
}
|
|
254
|
-
|
|
255
|
-
public get range(): Range {
|
|
256
|
-
return new Range(this._line, 0, this._line, this._text.length);
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
public get rangeIncludingLineBreak(): Range {
|
|
260
|
-
if (this._isLastLine) {
|
|
261
|
-
return this.range;
|
|
262
|
-
}
|
|
263
|
-
return new Range(this._line, 0, this._line + 1, 0);
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
public get firstNonWhitespaceCharacterIndex(): number {
|
|
267
|
-
//TODO@api, rename to 'leadingWhitespaceLength'
|
|
268
|
-
return /^(\s*)/.exec(this._text)![1].length;
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
public get isEmptyOrWhitespace(): boolean {
|
|
272
|
-
return this.firstNonWhitespaceCharacterIndex === this._text.length;
|
|
273
|
-
}
|
|
274
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
import { CAPIClient } from '@vscode/copilot-api';
|
|
7
|
-
import { createServiceIdentifier } from '../../../util/common/services';
|
|
8
|
-
import { IEnvService } from '../../env/common/envService';
|
|
9
|
-
import { IFetcherService } from '../../networking/common/fetcherService';
|
|
10
|
-
import { LICENSE_AGREEMENT } from './licenseAgreement';
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Interface for CAPI client service
|
|
14
|
-
*/
|
|
15
|
-
export interface ICAPIClientService extends CAPIClient {
|
|
16
|
-
readonly _serviceBrand: undefined;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export abstract class BaseCAPIClientService extends CAPIClient implements ICAPIClientService {
|
|
20
|
-
readonly _serviceBrand: undefined;
|
|
21
|
-
|
|
22
|
-
constructor(
|
|
23
|
-
hmac: string | undefined,
|
|
24
|
-
fetcherService: IFetcherService,
|
|
25
|
-
envService: IEnvService
|
|
26
|
-
) {
|
|
27
|
-
super({
|
|
28
|
-
machineId: envService.machineId,
|
|
29
|
-
sessionId: envService.sessionId,
|
|
30
|
-
vscodeVersion: envService.vscodeVersion,
|
|
31
|
-
buildType: envService.getBuildType(),
|
|
32
|
-
name: envService.getName(),
|
|
33
|
-
version: envService.getVersion(),
|
|
34
|
-
}, LICENSE_AGREEMENT, fetcherService, hmac);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
export const ICAPIClientService = createServiceIdentifier<ICAPIClientService>('ICAPIClientService');
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
import type { LanguageModelChat } from 'vscode';
|
|
7
|
-
import { encodeHex, VSBuffer } from '../../../util/vs/base/common/buffer';
|
|
8
|
-
import type { IChatEndpoint } from '../../networking/common/networking';
|
|
9
|
-
|
|
10
|
-
const _cachedHashes = new Map<string, string>();
|
|
11
|
-
|
|
12
|
-
async function getSha256Hash(text: string): Promise<string> {
|
|
13
|
-
if (_cachedHashes.has(text)) {
|
|
14
|
-
return _cachedHashes.get(text)!;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
const encoder = new TextEncoder();
|
|
18
|
-
const data = encoder.encode(text);
|
|
19
|
-
const hashBuffer = await crypto.subtle.digest('SHA-256', data);
|
|
20
|
-
const hash = encodeHex(VSBuffer.wrap(new Uint8Array(hashBuffer)));
|
|
21
|
-
_cachedHashes.set(text, hash);
|
|
22
|
-
return hash;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export async function isHiddenModelA(model: LanguageModelChat | IChatEndpoint) {
|
|
26
|
-
return await getSha256Hash(model.family) === 'a99dd17dfee04155d863268596b7f6dd36d0a6531cd326348dbe7416142a21a3';
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export async function isHiddenModelB(model: LanguageModelChat | IChatEndpoint) {
|
|
30
|
-
return await getSha256Hash(model.family) === '008ed1bfd28fb7f15ff17f6e308c417635da136603b83b32db4719bd1cd64c09';
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Returns whether the instructions should be given in a user message instead
|
|
35
|
-
* of a system message when talking to the model.
|
|
36
|
-
*/
|
|
37
|
-
export function modelPrefersInstructionsInUserMessage(modelFamily: string) {
|
|
38
|
-
return modelFamily.includes('claude-3.5-sonnet');
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Returns whether the instructions should be presented after the history
|
|
43
|
-
* for the given model.
|
|
44
|
-
*/
|
|
45
|
-
export function modelPrefersInstructionsAfterHistory(modelFamily: string) {
|
|
46
|
-
return modelFamily.includes('claude-3.5-sonnet');
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Model supports apply_patch as an edit tool.
|
|
51
|
-
*/
|
|
52
|
-
export async function modelSupportsApplyPatch(model: LanguageModelChat | IChatEndpoint): Promise<boolean> {
|
|
53
|
-
return (model.family.includes('gpt') && !model.family.includes('gpt-4o')) || model.family === 'o4-mini' || await isHiddenModelA(model);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* Model prefers JSON notebook representation.
|
|
58
|
-
*/
|
|
59
|
-
export function modelPrefersJsonNotebookRepresentation(model: LanguageModelChat | IChatEndpoint): boolean {
|
|
60
|
-
return (model.family.includes('gpt') && !model.family.includes('gpt-4o')) || model.family === 'o4-mini';
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Model supports replace_string_in_file as an edit tool.
|
|
65
|
-
*/
|
|
66
|
-
export function modelSupportsReplaceString(model: LanguageModelChat | IChatEndpoint): boolean {
|
|
67
|
-
return model.family.startsWith('claude') || model.family.startsWith('Anthropic') || model.family.includes('gemini');
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* Model supports multi_replace_string_in_file as an edit tool.
|
|
72
|
-
*/
|
|
73
|
-
export function modelSupportsMultiReplaceString(model: LanguageModelChat | IChatEndpoint): boolean {
|
|
74
|
-
return modelSupportsReplaceString(model) && !model.family.includes('gemini');
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* The model is capable of using replace_string_in_file exclusively,
|
|
79
|
-
* without needing insert_edit_into_file.
|
|
80
|
-
*/
|
|
81
|
-
export function modelCanUseReplaceStringExclusively(model: LanguageModelChat | IChatEndpoint): boolean {
|
|
82
|
-
return model.family.startsWith('claude') || model.family.startsWith('Anthropic');
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* The model can accept image urls as the `image_url` parameter in mcp tool results.
|
|
87
|
-
*/
|
|
88
|
-
export function modelCanUseMcpResultImageURL(model: LanguageModelChat | IChatEndpoint): boolean {
|
|
89
|
-
return !model.family.startsWith('claude') && !model.family.startsWith('Anthropic');
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* The model can accept image urls as the `image_url` parameter in requests.
|
|
94
|
-
*/
|
|
95
|
-
export function modelCanUseImageURL(model: LanguageModelChat | IChatEndpoint): boolean {
|
|
96
|
-
return !model.family.startsWith('gemini');
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* The model is capable of using apply_patch as an edit tool exclusively,
|
|
102
|
-
* without needing insert_edit_into_file.
|
|
103
|
-
*/
|
|
104
|
-
export function modelCanUseApplyPatchExclusively(model: LanguageModelChat | IChatEndpoint): boolean {
|
|
105
|
-
return model.family.startsWith('gpt-5');
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
/**
|
|
109
|
-
* Whether, when replace_string and insert_edit tools are both available,
|
|
110
|
-
* verbiage should be added in the system prompt directing the model to prefer
|
|
111
|
-
* replace_string.
|
|
112
|
-
*/
|
|
113
|
-
export function modelNeedsStrongReplaceStringHint(model: LanguageModelChat | IChatEndpoint): boolean {
|
|
114
|
-
return model.family.toLowerCase().includes('gemini');
|
|
115
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
import { createServiceIdentifier } from '../../../util/common/services';
|
|
7
|
-
import { Event } from '../../../util/vs/base/common/event';
|
|
8
|
-
|
|
9
|
-
export interface IDomainChangeEvent {
|
|
10
|
-
capiUrlChanged: boolean;
|
|
11
|
-
telemetryUrlChanged: boolean;
|
|
12
|
-
dotcomUrlChanged: boolean;
|
|
13
|
-
proxyUrlChanged: boolean;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
// This doesn't really have a great home, but this file talks about domains so seemed best
|
|
17
|
-
export const FEEDBACK_URL = 'https://aka.ms/microsoft/vscode-copilot-release';
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Very simple service used for dynamically setting the domains we use for API calls
|
|
21
|
-
* This allows better testing, SKU isolation, and Proxima
|
|
22
|
-
*/
|
|
23
|
-
export interface IDomainService {
|
|
24
|
-
readonly _serviceBrand: undefined;
|
|
25
|
-
readonly onDidChangeDomains: Event<IDomainChangeEvent>;
|
|
26
|
-
}
|
|
27
|
-
export const IDomainService = createServiceIdentifier<IDomainService>('IDomainService');
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
import { RequestMetadata } from '@vscode/copilot-api';
|
|
8
|
-
import type { LanguageModelChat } from 'vscode';
|
|
9
|
-
import { createServiceIdentifier } from '../../../util/common/services';
|
|
10
|
-
import { TokenizerType } from '../../../util/common/tokenizer';
|
|
11
|
-
import type { ChatRequest } from '../../../vscodeTypes';
|
|
12
|
-
import { IChatEndpoint } from '../../networking/common/networking';
|
|
13
|
-
|
|
14
|
-
export type ModelPolicy = {
|
|
15
|
-
state: 'enabled' | 'disabled' | 'unconfigured';
|
|
16
|
-
terms?: string;
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
export type IChatModelCapabilities = {
|
|
20
|
-
type: 'chat';
|
|
21
|
-
family: string;
|
|
22
|
-
tokenizer: TokenizerType;
|
|
23
|
-
limits?: {
|
|
24
|
-
max_prompt_tokens?: number;
|
|
25
|
-
max_output_tokens?: number;
|
|
26
|
-
max_context_window_tokens?: number;
|
|
27
|
-
};
|
|
28
|
-
supports: {
|
|
29
|
-
parallel_tool_calls?: boolean;
|
|
30
|
-
tool_calls?: boolean;
|
|
31
|
-
// Whether or not the model supports streaming, if not explicitly true we will try to parse the response as not streamed
|
|
32
|
-
streaming: boolean | undefined;
|
|
33
|
-
vision?: boolean;
|
|
34
|
-
prediction?: boolean;
|
|
35
|
-
thinking?: boolean;
|
|
36
|
-
};
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
type ICompletionModelCapabilities = {
|
|
40
|
-
type: 'completion';
|
|
41
|
-
family: string;
|
|
42
|
-
tokenizer: TokenizerType;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export enum ModelSupportedEndpoint {
|
|
46
|
-
ChatCompletions = '/chat/completions',
|
|
47
|
-
Responses = '/responses'
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export interface IModelAPIResponse {
|
|
51
|
-
id: string;
|
|
52
|
-
name: string;
|
|
53
|
-
policy?: ModelPolicy;
|
|
54
|
-
model_picker_enabled: boolean;
|
|
55
|
-
preview?: boolean;
|
|
56
|
-
is_chat_default: boolean;
|
|
57
|
-
is_chat_fallback: boolean;
|
|
58
|
-
version: string;
|
|
59
|
-
billing?: { is_premium: boolean; multiplier: number; restricted_to?: string[] };
|
|
60
|
-
capabilities: IChatModelCapabilities | ICompletionModelCapabilities;
|
|
61
|
-
supported_endpoints?: ModelSupportedEndpoint[];
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
export type IChatModelInformation = IModelAPIResponse & {
|
|
65
|
-
capabilities: IChatModelCapabilities;
|
|
66
|
-
urlOrRequestMetadata?: string | RequestMetadata;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
export function isChatModelInformation(model: IModelAPIResponse): model is IChatModelInformation {
|
|
70
|
-
return model.capabilities.type === 'chat';
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
export type ICompletionModelInformation = IModelAPIResponse & {
|
|
74
|
-
capabilities: ICompletionModelCapabilities;
|
|
75
|
-
};
|
|
76
|
-
|
|
77
|
-
export function isCompletionModelInformation(model: IModelAPIResponse): model is ICompletionModelInformation {
|
|
78
|
-
return model.capabilities.type === 'completion';
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export type ChatEndpointFamily = 'gpt-4.1' | 'gpt-4o-mini' | 'copilot-base';
|
|
82
|
-
export type EmbeddingsEndpointFamily = 'text3small' | 'metis';
|
|
83
|
-
|
|
84
|
-
export interface IEndpointProvider {
|
|
85
|
-
readonly _serviceBrand: undefined;
|
|
86
|
-
|
|
87
|
-
/**
|
|
88
|
-
* Gets all the completion models known by the endpoint provider.
|
|
89
|
-
*/
|
|
90
|
-
getAllCompletionModels(forceRefresh?: boolean): Promise<ICompletionModelInformation[]>;
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* Gets all the chat endpoints known by the endpoint provider. Mainly used by language model access
|
|
94
|
-
*/
|
|
95
|
-
getAllChatEndpoints(): Promise<IChatEndpoint[]>;
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* Given a chat request returns the appropriate chat endpoint to serve that request
|
|
99
|
-
* @param requestOrFamily The chat request to get the endpoint for, the family you want the endpoint for, or the LanguageModelChat.
|
|
100
|
-
*/
|
|
101
|
-
getChatEndpoint(requestOrFamily: LanguageModelChat | ChatRequest | ChatEndpointFamily): Promise<IChatEndpoint>;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
export const IEndpointProvider = createServiceIdentifier<IEndpointProvider>('IEndpointProvider');
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
export namespace CustomDataPartMimeTypes {
|
|
7
|
-
export const CacheControl = 'cache_control';
|
|
8
|
-
export const StatefulMarker = 'stateful_marker';
|
|
9
|
-
export const ThinkingData = 'thinking';
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export const CacheType = 'ephemeral';
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* This file is modified as part of the production build of the extension.
|
|
8
|
-
*
|
|
9
|
-
* WARNING: Do not move or rename this file.
|
|
10
|
-
*/
|
|
11
|
-
export const LICENSE_AGREEMENT: string | undefined = undefined;
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
|
|
6
|
-
import { BasePromptElementProps, PromptElement, Raw } from '@vscode/prompt-tsx';
|
|
7
|
-
import { CustomDataPartMimeTypes } from './endpointTypes';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* A type representing a stateful marker that can be stored in an opaque part in raw chat messages.
|
|
11
|
-
*/
|
|
12
|
-
interface IStatefulMarkerContainer {
|
|
13
|
-
type: typeof CustomDataPartMimeTypes.StatefulMarker;
|
|
14
|
-
value: StatefulMarkerWithModel;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
type StatefulMarkerWithModel = { modelId: string; marker: string };
|
|
18
|
-
|
|
19
|
-
export interface IStatefulMarkerContainerProps extends BasePromptElementProps {
|
|
20
|
-
statefulMarker: StatefulMarkerWithModel;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Helper to store the statefulMarker as part of a prompt-tsx assistant message
|
|
25
|
-
*/
|
|
26
|
-
export class StatefulMarkerContainer extends PromptElement<IStatefulMarkerContainerProps> {
|
|
27
|
-
render() {
|
|
28
|
-
const { statefulMarker } = this.props;
|
|
29
|
-
const container = { type: CustomDataPartMimeTypes.StatefulMarker, value: statefulMarker };
|
|
30
|
-
return <opaque value={container} />;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Check whether an opaque content part is a StatefulMarkerContainer and retrieve the stateful marker if so
|
|
36
|
-
*/
|
|
37
|
-
export function rawPartAsStatefulMarker(part: Raw.ChatCompletionContentPartOpaque): StatefulMarkerWithModel | undefined {
|
|
38
|
-
const value = part.value;
|
|
39
|
-
if (!value || typeof value !== 'object') {
|
|
40
|
-
return;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
const data = value as IStatefulMarkerContainer;
|
|
44
|
-
if (data.type === CustomDataPartMimeTypes.StatefulMarker && typeof data.value === 'object') {
|
|
45
|
-
return data.value;
|
|
46
|
-
}
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export function encodeStatefulMarker(modelId: string, marker: string): Uint8Array {
|
|
51
|
-
return new TextEncoder().encode(modelId + '\\' + marker);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export function decodeStatefulMarker(data: Uint8Array): StatefulMarkerWithModel {
|
|
55
|
-
const decoded = new TextDecoder().decode(data);
|
|
56
|
-
const [modelId, marker] = decoded.split('\\');
|
|
57
|
-
return { modelId, marker };
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/** Gets stateful markers from the messages, from the most to least recent */
|
|
61
|
-
export function* getAllStatefulMarkersAndIndicies(messages: readonly Raw.ChatMessage[]) {
|
|
62
|
-
for (let idx = messages.length - 1; idx >= 0; idx--) {
|
|
63
|
-
const message = messages[idx];
|
|
64
|
-
if (message.role === Raw.ChatRole.Assistant) {
|
|
65
|
-
for (const part of message.content) {
|
|
66
|
-
if (part.type === Raw.ChatCompletionContentPartKind.Opaque) {
|
|
67
|
-
const statefulMarker = rawPartAsStatefulMarker(part);
|
|
68
|
-
if (statefulMarker) {
|
|
69
|
-
yield { statefulMarker: statefulMarker, index: idx };
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
return undefined;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export function getStatefulMarkerAndIndex(modelId: string, messages: readonly Raw.ChatMessage[]): { statefulMarker: string; index: number } | undefined {
|
|
79
|
-
for (const marker of getAllStatefulMarkersAndIndicies(messages)) {
|
|
80
|
-
if (marker.statefulMarker.modelId === modelId) {
|
|
81
|
-
return { statefulMarker: marker.statefulMarker.marker, index: marker.index };
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
return undefined;
|
|
85
|
-
}
|