@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,74 +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 { createTokenizer, getRegexByEncoder, getSpecialTokensByEncoder, TikTokenizer } from '@microsoft/tiktokenizer';
|
|
7
|
-
import { MovingAverage } from '../../../util/vs/base/common/numbers';
|
|
8
|
-
import { StopWatch } from '../../../util/vs/base/common/stopwatch';
|
|
9
|
-
import { parseTikTokenBinary } from './parseTikTokens';
|
|
10
|
-
|
|
11
|
-
export type TokenDictionaryParser = (file: string) => string | Map<Uint8Array, number>;
|
|
12
|
-
|
|
13
|
-
export class TikTokenImpl {
|
|
14
|
-
|
|
15
|
-
private static _instance: TikTokenImpl | undefined;
|
|
16
|
-
|
|
17
|
-
private _values: (TikTokenizer | undefined)[] = [];
|
|
18
|
-
private _stats = {
|
|
19
|
-
encodeDuration: new MovingAverage(),
|
|
20
|
-
textLength: new MovingAverage(),
|
|
21
|
-
callCount: 0,
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
private constructor() { }
|
|
25
|
-
|
|
26
|
-
static get instance(): TikTokenImpl {
|
|
27
|
-
if (!this._instance) {
|
|
28
|
-
this._instance = new TikTokenImpl();
|
|
29
|
-
}
|
|
30
|
-
return this._instance;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
init(tokenFilePath: string, encoderName: string, useBinaryTokens: boolean): number {
|
|
34
|
-
const handle = this._values.length;
|
|
35
|
-
const parser: TokenDictionaryParser = useBinaryTokens ? parseTikTokenBinary : f => f;
|
|
36
|
-
|
|
37
|
-
this._values.push(createTokenizer(
|
|
38
|
-
parser(tokenFilePath),
|
|
39
|
-
getSpecialTokensByEncoder(encoderName),
|
|
40
|
-
getRegexByEncoder(encoderName),
|
|
41
|
-
64000
|
|
42
|
-
));
|
|
43
|
-
|
|
44
|
-
return handle;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
encode(handle: number, text: string, allowedSpecial?: readonly string[]): number[] {
|
|
48
|
-
const sw = StopWatch.create(true);
|
|
49
|
-
const result = this._values[handle]!.encode(text, allowedSpecial);
|
|
50
|
-
|
|
51
|
-
this._stats.callCount += 1;
|
|
52
|
-
this._stats.encodeDuration.update(sw.elapsed());
|
|
53
|
-
this._stats.textLength.update(text.length);
|
|
54
|
-
|
|
55
|
-
return result;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
destroy(handle: number) {
|
|
59
|
-
this._values[handle] = undefined;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
resetStats() {
|
|
63
|
-
const oldValue = this._stats;
|
|
64
|
-
const result = {
|
|
65
|
-
callCount: oldValue.callCount,
|
|
66
|
-
encodeDuration: oldValue.encodeDuration.value,
|
|
67
|
-
textLength: oldValue.textLength.value
|
|
68
|
-
};
|
|
69
|
-
this._stats.encodeDuration = new MovingAverage();
|
|
70
|
-
this._stats.textLength = new MovingAverage();
|
|
71
|
-
this._stats.callCount = 0;
|
|
72
|
-
return result;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
@@ -1,24 +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 { parentPort } from 'worker_threads';
|
|
7
|
-
import { TikTokenImpl } from './tikTokenizerImpl';
|
|
8
|
-
|
|
9
|
-
function main() {
|
|
10
|
-
const port = parentPort;
|
|
11
|
-
if (!port) {
|
|
12
|
-
throw new Error(`This module should only be used in a worker thread.`);
|
|
13
|
-
}
|
|
14
|
-
port.on('message', async (message: { id: number; fn: string; args: any[] }) => {
|
|
15
|
-
try {
|
|
16
|
-
const res = await (<any>TikTokenImpl.instance)[message.fn](...message.args);
|
|
17
|
-
port.postMessage({ id: message.id, res });
|
|
18
|
-
} catch (err) {
|
|
19
|
-
port.postMessage({ id: message.id, err });
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
main();
|
|
@@ -1,357 +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 { OutputMode, Raw, toMode } from '@vscode/prompt-tsx';
|
|
7
|
-
import type { LanguageModelChatTool } from 'vscode';
|
|
8
|
-
import { LRUCache } from '../../../util/common/cache';
|
|
9
|
-
import { getImageDimensions } from '../../../util/common/imageUtils';
|
|
10
|
-
import { createServiceIdentifier } from '../../../util/common/services';
|
|
11
|
-
import { ITokenizer, TokenizerType } from '../../../util/common/tokenizer';
|
|
12
|
-
import { WorkerWithRpcProxy } from '../../../util/node/worker';
|
|
13
|
-
import { assertNever } from '../../../util/vs/base/common/assert';
|
|
14
|
-
import { Disposable, toDisposable } from '../../../util/vs/base/common/lifecycle';
|
|
15
|
-
import { basename, join } from '../../../util/vs/base/common/path';
|
|
16
|
-
import { ITelemetryService } from '../../telemetry/common/telemetry';
|
|
17
|
-
import { TikTokenImpl } from './tikTokenizerImpl';
|
|
18
|
-
|
|
19
|
-
export const ITokenizerProvider = createServiceIdentifier<ITokenizerProvider>('ITokenizerProvider');
|
|
20
|
-
|
|
21
|
-
export interface TokenizationEndpoint {
|
|
22
|
-
readonly tokenizer: TokenizerType;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export interface ITokenizerProvider {
|
|
26
|
-
readonly _serviceBrand: undefined;
|
|
27
|
-
|
|
28
|
-
acquireTokenizer(endpoint: TokenizationEndpoint): ITokenizer;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* BaseTokensPerCompletion is the minimum tokens for a completion request.
|
|
33
|
-
* Replies are primed with <|im_start|>assistant<|message|>, so these tokens represent the
|
|
34
|
-
* special token and the role name.
|
|
35
|
-
*/
|
|
36
|
-
export const BaseTokensPerCompletion = 3;
|
|
37
|
-
/*
|
|
38
|
-
* Each GPT 3.5 / GPT 4 message comes with 3 tokens per message due to special characters
|
|
39
|
-
*/
|
|
40
|
-
export const BaseTokensPerMessage = 3;
|
|
41
|
-
/*
|
|
42
|
-
* Since gpt-3.5-turbo-0613 each name costs 1 token
|
|
43
|
-
*/
|
|
44
|
-
export const BaseTokensPerName = 1;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
export class TokenizerProvider implements ITokenizerProvider {
|
|
48
|
-
declare readonly _serviceBrand: undefined;
|
|
49
|
-
|
|
50
|
-
// These files are copied to `dist` via the `build/postinstall.ts` script
|
|
51
|
-
private readonly _cl100kTokenizer: BPETokenizer;
|
|
52
|
-
private readonly _o200kTokenizer: BPETokenizer;
|
|
53
|
-
|
|
54
|
-
constructor(
|
|
55
|
-
useWorker: boolean,
|
|
56
|
-
@ITelemetryService telmetryService: ITelemetryService
|
|
57
|
-
) {
|
|
58
|
-
// if we're running from dist, the dictionary is compressed, but if we're running
|
|
59
|
-
// in e.g. a `spec` file we should load the dictionary using default behavior.
|
|
60
|
-
// todo: cleanup a bit, have an IS_BUILT constant?
|
|
61
|
-
this._cl100kTokenizer = new BPETokenizer(useWorker, join(__dirname, './cl100k_base.tiktoken'), 'cl100k_base', telmetryService);
|
|
62
|
-
this._o200kTokenizer = new BPETokenizer(useWorker, join(__dirname, './o200k_base.tiktoken'), 'o200k_base', telmetryService);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
dispose() {
|
|
66
|
-
this._cl100kTokenizer.dispose();
|
|
67
|
-
this._o200kTokenizer.dispose();
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* Gets a tokenizer for a given model family
|
|
72
|
-
* @param endpoint The endpoint you want to acquire a tokenizer for
|
|
73
|
-
*/
|
|
74
|
-
public acquireTokenizer(endpoint: TokenizationEndpoint): ITokenizer {
|
|
75
|
-
switch (endpoint.tokenizer) {
|
|
76
|
-
case TokenizerType.CL100K:
|
|
77
|
-
return this._cl100kTokenizer;
|
|
78
|
-
case TokenizerType.O200K:
|
|
79
|
-
return this._o200kTokenizer;
|
|
80
|
-
default:
|
|
81
|
-
throw new Error(`Unknown tokenizer: ${endpoint.tokenizer}`);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
type TikTokenWorker = {
|
|
87
|
-
encode(text: string, allowedSpecial?: ReadonlyArray<string>): Promise<number[]>;
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
class BPETokenizer extends Disposable implements ITokenizer {
|
|
91
|
-
|
|
92
|
-
private _tokenizer?: Promise<TikTokenWorker>;
|
|
93
|
-
|
|
94
|
-
/**
|
|
95
|
-
* TikToken has its own cache, but it still does some processing
|
|
96
|
-
* until a cache hit. We can have a much more efficient cache that
|
|
97
|
-
* directly looks up string -> token length
|
|
98
|
-
*/
|
|
99
|
-
private readonly _cache = new LRUCache<number>(5000);
|
|
100
|
-
|
|
101
|
-
protected readonly baseTokensPerMessage = BaseTokensPerMessage;
|
|
102
|
-
protected readonly baseTokensPerName = BaseTokensPerName;
|
|
103
|
-
|
|
104
|
-
public readonly mode = OutputMode.Raw;
|
|
105
|
-
|
|
106
|
-
constructor(
|
|
107
|
-
private readonly _useWorker: boolean,
|
|
108
|
-
private readonly _tokenFilePath: string,
|
|
109
|
-
private readonly _encoderName: string,
|
|
110
|
-
@ITelemetryService private readonly _telemetryService: ITelemetryService
|
|
111
|
-
) {
|
|
112
|
-
super();
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
async countMessagesTokens(messages: Raw.ChatMessage[]): Promise<number> {
|
|
116
|
-
let numTokens = BaseTokensPerMessage;
|
|
117
|
-
for (const message of messages) {
|
|
118
|
-
numTokens += await this.countMessageTokens(message);
|
|
119
|
-
}
|
|
120
|
-
return numTokens;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
/**
|
|
124
|
-
* Tokenizes the given text.
|
|
125
|
-
* @param text The text to tokenize.
|
|
126
|
-
* @returns The tokenized text.
|
|
127
|
-
*/
|
|
128
|
-
private async tokenize(text: string): Promise<number[]> {
|
|
129
|
-
return (await this.ensureTokenizer()).encode(text);
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
/**
|
|
133
|
-
* Calculates the token length of the given text.
|
|
134
|
-
* @param text The text to calculate the token length for.
|
|
135
|
-
* @returns The number of tokens in the text.
|
|
136
|
-
*/
|
|
137
|
-
async tokenLength(text: string | Raw.ChatCompletionContentPart): Promise<number> {
|
|
138
|
-
if (typeof text === 'string') {
|
|
139
|
-
return this._textTokenLength(text);
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
switch (text.type) {
|
|
143
|
-
case Raw.ChatCompletionContentPartKind.Text:
|
|
144
|
-
return this._textTokenLength(text.text);
|
|
145
|
-
case Raw.ChatCompletionContentPartKind.Opaque:
|
|
146
|
-
return text.tokenUsage || 0;
|
|
147
|
-
case Raw.ChatCompletionContentPartKind.Image:
|
|
148
|
-
if (text.imageUrl.url.startsWith('data:image/')) {
|
|
149
|
-
try {
|
|
150
|
-
return calculateImageTokenCost(text.imageUrl.url, text.imageUrl.detail);
|
|
151
|
-
} catch {
|
|
152
|
-
return this._textTokenLength(text.imageUrl.url);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
return this._textTokenLength(text.imageUrl.url);
|
|
156
|
-
case Raw.ChatCompletionContentPartKind.CacheBreakpoint:
|
|
157
|
-
return 0;
|
|
158
|
-
default:
|
|
159
|
-
assertNever(text, `unknown content part (${JSON.stringify(text)})`);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
private async _textTokenLength(text: string) {
|
|
164
|
-
if (!text) {
|
|
165
|
-
return 0;
|
|
166
|
-
}
|
|
167
|
-
let cacheValue = this._cache.get(text);
|
|
168
|
-
if (!cacheValue) {
|
|
169
|
-
cacheValue = (await this.tokenize(text)).length;
|
|
170
|
-
this._cache.put(text, cacheValue);
|
|
171
|
-
}
|
|
172
|
-
return cacheValue;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
/**
|
|
176
|
-
* Counts tokens for a single chat message within a completion request.
|
|
177
|
-
*
|
|
178
|
-
* Follows https://github.com/openai/openai-cookbook/blob/main/examples/How_to_count_tokens_with_tiktoken.ipynb for GPT 3.5/4 models.
|
|
179
|
-
*
|
|
180
|
-
* **Note**: The result does not include base tokens for the completion itself.
|
|
181
|
-
*/
|
|
182
|
-
async countMessageTokens(message: Raw.ChatMessage): Promise<number> {
|
|
183
|
-
return this.baseTokensPerMessage + (await this.countMessageObjectTokens(toMode(OutputMode.OpenAI, message)));
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
async countToolTokens(tools: LanguageModelChatTool[]): Promise<number> {
|
|
187
|
-
const baseToolTokens = 16;
|
|
188
|
-
let numTokens = 0;
|
|
189
|
-
if (tools.length) {
|
|
190
|
-
numTokens += baseToolTokens;
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
const baseTokensPerTool = 8;
|
|
194
|
-
for (const tool of tools) {
|
|
195
|
-
numTokens += baseTokensPerTool;
|
|
196
|
-
numTokens += await this.countObjectTokens({ name: tool.name, description: tool.description, parameters: tool.inputSchema });
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
// This is an estimate, so give a little safety margin
|
|
200
|
-
return Math.floor(numTokens * 1.1);
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
private async countMessageObjectTokens(obj: any): Promise<number> {
|
|
204
|
-
let numTokens = 0;
|
|
205
|
-
for (const [key, value] of Object.entries(obj)) {
|
|
206
|
-
if (!value) {
|
|
207
|
-
continue;
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
if (typeof value === 'string') {
|
|
211
|
-
numTokens += await this.tokenLength(value);
|
|
212
|
-
} else if (value) {
|
|
213
|
-
const casted = value as any;
|
|
214
|
-
if (casted.type === 'text') {
|
|
215
|
-
numTokens += await this.tokenLength(casted.text);
|
|
216
|
-
} else if (casted.type === 'image_url' && casted.image_url) {
|
|
217
|
-
if (casted.image_url.url.startsWith('data:image/')) {
|
|
218
|
-
try {
|
|
219
|
-
numTokens += calculateImageTokenCost(casted.image_url.url, casted.image_url.detail);
|
|
220
|
-
} catch {
|
|
221
|
-
numTokens += await this.tokenLength(casted.image_url.url);
|
|
222
|
-
}
|
|
223
|
-
} else {
|
|
224
|
-
numTokens += await this.tokenLength(casted.image_url.url);
|
|
225
|
-
}
|
|
226
|
-
} else {
|
|
227
|
-
let newTokens = await this.countMessageObjectTokens(value);
|
|
228
|
-
if (key === 'tool_calls') {
|
|
229
|
-
// This is an estimate, not including all of the overhead, so give a little safety margin
|
|
230
|
-
newTokens = Math.floor(newTokens * 1.5);
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
numTokens += newTokens;
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
if (key === 'name' && value !== undefined) {
|
|
238
|
-
numTokens += this.baseTokensPerName;
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
return numTokens;
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
private async countObjectTokens(obj: any): Promise<number> {
|
|
246
|
-
let numTokens = 0;
|
|
247
|
-
for (const [key, value] of Object.entries(obj)) {
|
|
248
|
-
if (!value) {
|
|
249
|
-
continue;
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
numTokens += await this.tokenLength(key);
|
|
253
|
-
if (typeof value === 'string') {
|
|
254
|
-
numTokens += await this.tokenLength(value);
|
|
255
|
-
} else if (value) {
|
|
256
|
-
numTokens += await this.countMessageObjectTokens(value);
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
return numTokens;
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
private ensureTokenizer(): Promise<TikTokenWorker> {
|
|
264
|
-
this._tokenizer ??= this.doInitTokenizer();
|
|
265
|
-
return this._tokenizer;
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
private async doInitTokenizer(): Promise<TikTokenWorker> {
|
|
269
|
-
|
|
270
|
-
const useBinaryTokens = basename(__dirname) === 'dist';
|
|
271
|
-
|
|
272
|
-
if (!this._useWorker) {
|
|
273
|
-
const handle = TikTokenImpl.instance.init(this._tokenFilePath, this._encoderName, useBinaryTokens);
|
|
274
|
-
|
|
275
|
-
const cleanup = toDisposable(() => {
|
|
276
|
-
TikTokenImpl.instance.destroy(handle);
|
|
277
|
-
this._store.deleteAndLeak(cleanup);
|
|
278
|
-
this._tokenizer = undefined;
|
|
279
|
-
});
|
|
280
|
-
this._store.add(cleanup);
|
|
281
|
-
|
|
282
|
-
return {
|
|
283
|
-
encode: async (text, allowedSpecial) => {
|
|
284
|
-
return TikTokenImpl.instance.encode(handle, text, allowedSpecial);
|
|
285
|
-
}
|
|
286
|
-
};
|
|
287
|
-
} else {
|
|
288
|
-
|
|
289
|
-
const workerPath = join(__dirname, 'tikTokenizerWorker.js');
|
|
290
|
-
const worker = new WorkerWithRpcProxy<TikTokenImpl>(workerPath, { name: `TikToken worker (${this._encoderName})` });
|
|
291
|
-
const handle = await worker.proxy.init(this._tokenFilePath, this._encoderName, useBinaryTokens);
|
|
292
|
-
|
|
293
|
-
const cleanup = toDisposable(() => {
|
|
294
|
-
worker.terminate();
|
|
295
|
-
this._store.deleteAndLeak(cleanup);
|
|
296
|
-
this._tokenizer = undefined;
|
|
297
|
-
});
|
|
298
|
-
|
|
299
|
-
let timeout: TimeoutHandle;
|
|
300
|
-
|
|
301
|
-
return {
|
|
302
|
-
encode: (text, allowedSpecial) => {
|
|
303
|
-
const result = worker.proxy.encode(handle, text, allowedSpecial);
|
|
304
|
-
|
|
305
|
-
clearTimeout(timeout);
|
|
306
|
-
timeout = setTimeout(() => cleanup.dispose(), 15000);
|
|
307
|
-
|
|
308
|
-
if (Math.random() < 1 / 1000) {
|
|
309
|
-
worker.proxy.resetStats().then(stats => {
|
|
310
|
-
/* __GDPR__
|
|
311
|
-
"tokenizer.stats" : {
|
|
312
|
-
"owner": "jrieken",
|
|
313
|
-
"comment": "Perf stats about tokenizers",
|
|
314
|
-
"callCount": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true, "comment": "How often tokenize was called" },
|
|
315
|
-
"encodeDuration": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true, "comment": "Average time encode took" },
|
|
316
|
-
"textLength": { "classification": "SystemMetaData", "purpose": "FeatureInsight", "isMeasurement": true, "comment": "Average length of text that got encoded" }
|
|
317
|
-
}
|
|
318
|
-
*/
|
|
319
|
-
this._telemetryService.sendMSFTTelemetryEvent('tokenizer.stats', undefined, stats);
|
|
320
|
-
});
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
return result;
|
|
324
|
-
}
|
|
325
|
-
};
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
//#region Image tokenizer helpers
|
|
332
|
-
|
|
333
|
-
// https://platform.openai.com/docs/guides/vision#calculating-costs
|
|
334
|
-
export function calculateImageTokenCost(imageUrl: string, detail: 'low' | 'high' | undefined): number {
|
|
335
|
-
let { width, height } = getImageDimensions(imageUrl);
|
|
336
|
-
|
|
337
|
-
if (detail === 'low') {
|
|
338
|
-
return 85;
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
// Scale image to fit within a 2048 x 2048 square if necessary.
|
|
342
|
-
if (width > 2048 || height > 2048) {
|
|
343
|
-
const scaleFactor = 2048 / Math.max(width, height);
|
|
344
|
-
width = Math.round(width * scaleFactor);
|
|
345
|
-
height = Math.round(height * scaleFactor);
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
const scaleFactor = 768 / Math.min(width, height);
|
|
349
|
-
width = Math.round(width * scaleFactor);
|
|
350
|
-
height = Math.round(height * scaleFactor);
|
|
351
|
-
|
|
352
|
-
const tiles = Math.ceil(width / 512) * Math.ceil(height / 512);
|
|
353
|
-
|
|
354
|
-
return tiles * 170 + 85;
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
//#endregion
|
|
@@ -1,226 +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 { Event, FileSystem, NotebookData, NotebookDocument, NotebookDocumentChangeEvent, TextDocument, TextDocumentChangeEvent, TextEditorSelectionChangeEvent, Uri, WorkspaceEdit, WorkspaceFolder, WorkspaceFoldersChangeEvent } from 'vscode';
|
|
7
|
-
import { findNotebook } from '../../../util/common/notebooks';
|
|
8
|
-
import { createServiceIdentifier } from '../../../util/common/services';
|
|
9
|
-
import * as path from '../../../util/vs/base/common/path';
|
|
10
|
-
import { extUriBiasedIgnorePathCase, relativePath } from '../../../util/vs/base/common/resources';
|
|
11
|
-
import { URI } from '../../../util/vs/base/common/uri';
|
|
12
|
-
import { NotebookDocumentSnapshot } from '../../editing/common/notebookDocumentSnapshot';
|
|
13
|
-
import { TextDocumentSnapshot } from '../../editing/common/textDocumentSnapshot';
|
|
14
|
-
import { DisposableStore, IDisposable } from '../../../util/vs/base/common/lifecycle';
|
|
15
|
-
import { Emitter } from '../../../util/vs/base/common/event';
|
|
16
|
-
|
|
17
|
-
export const IWorkspaceService = createServiceIdentifier<IWorkspaceService>('IWorkspaceService');
|
|
18
|
-
|
|
19
|
-
export interface IWorkspaceService {
|
|
20
|
-
readonly _serviceBrand: undefined;
|
|
21
|
-
textDocuments: readonly TextDocument[];
|
|
22
|
-
notebookDocuments: readonly NotebookDocument[];
|
|
23
|
-
readonly onDidOpenTextDocument: Event<TextDocument>;
|
|
24
|
-
readonly onDidCloseTextDocument: Event<TextDocument>;
|
|
25
|
-
readonly onDidOpenNotebookDocument: Event<NotebookDocument>;
|
|
26
|
-
readonly onDidCloseNotebookDocument: Event<NotebookDocument>;
|
|
27
|
-
readonly onDidChangeTextDocument: Event<TextDocumentChangeEvent>;
|
|
28
|
-
readonly onDidChangeNotebookDocument: Event<NotebookDocumentChangeEvent>;
|
|
29
|
-
readonly onDidChangeWorkspaceFolders: Event<WorkspaceFoldersChangeEvent>;
|
|
30
|
-
readonly onDidChangeTextEditorSelection: Event<TextEditorSelectionChangeEvent>;
|
|
31
|
-
openTextDocument(uri: Uri): Promise<TextDocument>;
|
|
32
|
-
fs: FileSystem;
|
|
33
|
-
showTextDocument(document: TextDocument): Promise<void>;
|
|
34
|
-
openTextDocumentAndSnapshot(uri: Uri): Promise<TextDocumentSnapshot>;
|
|
35
|
-
openNotebookDocumentAndSnapshot(uri: Uri, format: 'xml' | 'json' | 'text'): Promise<NotebookDocumentSnapshot>;
|
|
36
|
-
openNotebookDocument(uri: Uri): Promise<NotebookDocument>;
|
|
37
|
-
openNotebookDocument(notebookType: string, content?: NotebookData): Promise<NotebookDocument>;
|
|
38
|
-
getWorkspaceFolders(): URI[];
|
|
39
|
-
getWorkspaceFolder(resource: URI): URI | undefined;
|
|
40
|
-
getWorkspaceFolderName(workspaceFolderUri: URI): string;
|
|
41
|
-
showWorkspaceFolderPicker(): Promise<WorkspaceFolder | undefined>;
|
|
42
|
-
|
|
43
|
-
asRelativePath(pathOrUri: string | Uri, includeWorkspaceFolder?: boolean): string;
|
|
44
|
-
applyEdit(edit: WorkspaceEdit): Thenable<boolean>;
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Ensures that the workspace has fully loaded before returning. This is useful for
|
|
48
|
-
* virtual workspaces where we need to ensure that the contents of the workspace
|
|
49
|
-
* has been downloaded before we can use them.
|
|
50
|
-
*/
|
|
51
|
-
ensureWorkspaceIsFullyLoaded(): Promise<void>;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export abstract class AbstractWorkspaceService implements IWorkspaceService {
|
|
55
|
-
declare readonly _serviceBrand: undefined;
|
|
56
|
-
abstract textDocuments: readonly TextDocument[];
|
|
57
|
-
abstract notebookDocuments: readonly NotebookDocument[];
|
|
58
|
-
abstract readonly onDidOpenTextDocument: Event<TextDocument>;
|
|
59
|
-
abstract readonly onDidCloseTextDocument: Event<TextDocument>;
|
|
60
|
-
abstract readonly onDidOpenNotebookDocument: Event<NotebookDocument>;
|
|
61
|
-
abstract readonly onDidCloseNotebookDocument: Event<NotebookDocument>;
|
|
62
|
-
abstract readonly onDidChangeTextDocument: Event<TextDocumentChangeEvent>;
|
|
63
|
-
abstract readonly onDidChangeWorkspaceFolders: Event<WorkspaceFoldersChangeEvent>;
|
|
64
|
-
abstract readonly onDidChangeNotebookDocument: Event<NotebookDocumentChangeEvent>;
|
|
65
|
-
abstract readonly onDidChangeTextEditorSelection: Event<TextEditorSelectionChangeEvent>;
|
|
66
|
-
abstract openTextDocument(uri: Uri): Promise<TextDocument>;
|
|
67
|
-
abstract fs: FileSystem;
|
|
68
|
-
abstract showTextDocument(document: TextDocument): Promise<void>;
|
|
69
|
-
abstract openNotebookDocument(uri: Uri): Promise<NotebookDocument>;
|
|
70
|
-
abstract openNotebookDocument(notebookType: string, content?: NotebookData): Promise<NotebookDocument>;
|
|
71
|
-
abstract getWorkspaceFolders(): URI[];
|
|
72
|
-
abstract ensureWorkspaceIsFullyLoaded(): Promise<void>;
|
|
73
|
-
abstract showWorkspaceFolderPicker(): Promise<WorkspaceFolder | undefined>;
|
|
74
|
-
abstract getWorkspaceFolderName(workspaceFolderUri: URI): string;
|
|
75
|
-
abstract applyEdit(edit: WorkspaceEdit): Thenable<boolean>;
|
|
76
|
-
asRelativePath(pathOrUri: string | Uri, includeWorkspaceFolder?: boolean): string {
|
|
77
|
-
// Copied from the implementation in vscode/extHostWorkspace.ts
|
|
78
|
-
let resource: URI | undefined;
|
|
79
|
-
let path: string = '';
|
|
80
|
-
if (typeof pathOrUri === 'string') {
|
|
81
|
-
resource = URI.file(pathOrUri);
|
|
82
|
-
path = pathOrUri;
|
|
83
|
-
} else if (typeof pathOrUri !== 'undefined') {
|
|
84
|
-
resource = pathOrUri;
|
|
85
|
-
path = pathOrUri.fsPath;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
if (!resource) {
|
|
89
|
-
return path;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
const folder = this.getWorkspaceFolder(resource);
|
|
93
|
-
|
|
94
|
-
if (!folder) {
|
|
95
|
-
return path;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
if (typeof includeWorkspaceFolder === 'undefined') {
|
|
99
|
-
includeWorkspaceFolder = this.getWorkspaceFolders().length > 1;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
let result = relativePath(folder, resource);
|
|
103
|
-
if (includeWorkspaceFolder) {
|
|
104
|
-
const name = this.getWorkspaceFolderName(folder);
|
|
105
|
-
result = `${name}/${result}`;
|
|
106
|
-
}
|
|
107
|
-
return result!;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
async openTextDocumentAndSnapshot(uri: Uri): Promise<TextDocumentSnapshot> {
|
|
111
|
-
const doc = await this.openTextDocument(uri);
|
|
112
|
-
return TextDocumentSnapshot.create(doc);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
async openNotebookDocumentAndSnapshot(uri: Uri, format: 'xml' | 'json' | 'text'): Promise<NotebookDocumentSnapshot> {
|
|
116
|
-
// Possible we have an untitled file opened as a notebook.
|
|
117
|
-
const doc = findNotebook(uri, this.notebookDocuments) || await this.openNotebookDocument(uri);
|
|
118
|
-
|
|
119
|
-
return NotebookDocumentSnapshot.create(doc, format);
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
getWorkspaceFolder(resource: URI): URI | undefined {
|
|
123
|
-
return this.getWorkspaceFolders().find(folder => extUriBiasedIgnorePathCase.isEqualOrParent(resource, folder));
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
export function getWorkspaceFileDisplayPath(workspaceService: IWorkspaceService, file: URI): string {
|
|
128
|
-
const workspaceUri = workspaceService.getWorkspaceFolder(file);
|
|
129
|
-
return workspaceUri ? path.posix.relative(workspaceUri.path, file.path) : file.path;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
export class NullWorkspaceService extends AbstractWorkspaceService implements IDisposable {
|
|
133
|
-
override fs!: FileSystem;
|
|
134
|
-
private readonly disposables = new DisposableStore();
|
|
135
|
-
|
|
136
|
-
public readonly didOpenTextDocumentEmitter = this.disposables.add(new Emitter<TextDocument>());
|
|
137
|
-
public readonly didCloseTextDocumentEmitter = this.disposables.add(new Emitter<TextDocument>());
|
|
138
|
-
public readonly didOpenNotebookDocumentEmitter = this.disposables.add(new Emitter<NotebookDocument>());
|
|
139
|
-
public readonly didCloseNotebookDocumentEmitter = this.disposables.add(new Emitter<NotebookDocument>());
|
|
140
|
-
public readonly didChangeTextDocumentEmitter = this.disposables.add(new Emitter<TextDocumentChangeEvent>());
|
|
141
|
-
public readonly didChangeWorkspaceFoldersEmitter = this.disposables.add(new Emitter<WorkspaceFoldersChangeEvent>());
|
|
142
|
-
public readonly didChangeNotebookDocumentEmitter = this.disposables.add(new Emitter<NotebookDocumentChangeEvent>());
|
|
143
|
-
public readonly didChangeTextEditorSelectionEmitter = this.disposables.add(new Emitter<TextEditorSelectionChangeEvent>());
|
|
144
|
-
|
|
145
|
-
public override readonly onDidChangeTextDocument = this.didChangeTextDocumentEmitter.event;
|
|
146
|
-
public override readonly onDidCloseTextDocument = this.didCloseTextDocumentEmitter.event;
|
|
147
|
-
public override readonly onDidOpenNotebookDocument = this.didOpenNotebookDocumentEmitter.event;
|
|
148
|
-
public override readonly onDidCloseNotebookDocument = this.didCloseNotebookDocumentEmitter.event;
|
|
149
|
-
public override readonly onDidOpenTextDocument = this.didOpenTextDocumentEmitter.event;
|
|
150
|
-
public override readonly onDidChangeWorkspaceFolders = this.didChangeWorkspaceFoldersEmitter.event;
|
|
151
|
-
public override readonly onDidChangeNotebookDocument = this.didChangeNotebookDocumentEmitter.event;
|
|
152
|
-
public override readonly onDidChangeTextEditorSelection = this.didChangeTextEditorSelectionEmitter.event;
|
|
153
|
-
|
|
154
|
-
private readonly workspaceFolder: URI[];
|
|
155
|
-
private readonly _textDocuments: TextDocument[] = [];
|
|
156
|
-
private readonly _notebookDocuments: NotebookDocument[] = [];
|
|
157
|
-
|
|
158
|
-
constructor(workspaceFolders: URI[] = [], textDocuments: TextDocument[] = [], notebookDocuments: NotebookDocument[] = []) {
|
|
159
|
-
super();
|
|
160
|
-
this.workspaceFolder = workspaceFolders;
|
|
161
|
-
this._textDocuments = textDocuments;
|
|
162
|
-
this._notebookDocuments = notebookDocuments;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
get textDocuments(): TextDocument[] {
|
|
166
|
-
return this._textDocuments;
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
override showTextDocument(document: TextDocument): Promise<void> {
|
|
170
|
-
return Promise.resolve();
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
override async openTextDocument(uri: Uri): Promise<TextDocument> {
|
|
174
|
-
const doc = this.textDocuments.find(d => d.uri.toString() === uri.toString());
|
|
175
|
-
if (doc) {
|
|
176
|
-
return doc;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
throw new Error(`Unknown document: ${uri}`);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
override async openNotebookDocument(uri: Uri): Promise<NotebookDocument>;
|
|
183
|
-
override async openNotebookDocument(notebookType: string, content?: NotebookData): Promise<NotebookDocument>;
|
|
184
|
-
override async openNotebookDocument(arg1: Uri | string, arg2?: NotebookData): Promise<NotebookDocument> {
|
|
185
|
-
if (typeof arg1 === 'string') {
|
|
186
|
-
// Handle the overload for notebookType and content
|
|
187
|
-
throw new Error('Not implemented');
|
|
188
|
-
} else {
|
|
189
|
-
const notebook = this.notebookDocuments.find(d => d.uri.toString() === arg1.toString());
|
|
190
|
-
if (notebook) {
|
|
191
|
-
return notebook;
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
throw new Error(`Unknown notebook: ${arg1}`);
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
get notebookDocuments(): readonly NotebookDocument[] {
|
|
199
|
-
return this._notebookDocuments;
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
getWorkspaceFolders(): URI[] {
|
|
203
|
-
return this.workspaceFolder;
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
override getWorkspaceFolderName(workspaceFolderUri: URI): string {
|
|
207
|
-
return 'default';
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
override ensureWorkspaceIsFullyLoaded(): Promise<void> {
|
|
211
|
-
// We aren't using virtual workspaces here, so we can just return
|
|
212
|
-
return Promise.resolve();
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
showWorkspaceFolderPicker(): Promise<undefined> {
|
|
216
|
-
return Promise.resolve(undefined);
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
override applyEdit(): Promise<boolean> {
|
|
220
|
-
return Promise.resolve(true);
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
public dispose() {
|
|
224
|
-
this.disposables.dispose();
|
|
225
|
-
}
|
|
226
|
-
}
|