@vscode/chat-lib 0.0.1 → 0.0.3

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.
Files changed (476) hide show
  1. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts +2 -1
  2. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts.map +1 -1
  3. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js +70 -28
  4. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js.map +1 -1
  5. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.d.ts +4 -3
  6. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.d.ts.map +1 -1
  7. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.js +85 -109
  8. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.js.map +1 -1
  9. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts.map +1 -1
  10. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js +14 -6
  11. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js.map +1 -1
  12. package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts.map +1 -1
  13. package/dist/src/_internal/extension/xtab/common/promptCrafting.js +6 -5
  14. package/dist/src/_internal/extension/xtab/common/promptCrafting.js.map +1 -1
  15. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts +1 -0
  16. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts.map +1 -1
  17. package/dist/src/_internal/extension/xtab/node/xtabProvider.js +44 -42
  18. package/dist/src/_internal/extension/xtab/node/xtabProvider.js.map +1 -1
  19. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.d.ts.map +1 -1
  20. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.js +8 -4
  21. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.js.map +1 -1
  22. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts +8 -0
  23. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts.map +1 -1
  24. package/dist/src/_internal/platform/configuration/common/configurationService.js +11 -3
  25. package/dist/src/_internal/platform/configuration/common/configurationService.js.map +1 -1
  26. package/dist/src/_internal/platform/endpoint/common/capiClient.d.ts +1 -1
  27. package/dist/src/_internal/platform/endpoint/common/capiClient.d.ts.map +1 -1
  28. package/dist/src/_internal/platform/endpoint/common/capiClient.js +2 -2
  29. package/dist/src/_internal/platform/endpoint/common/capiClient.js.map +1 -1
  30. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.d.ts +4 -0
  31. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.d.ts.map +1 -1
  32. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js +7 -0
  33. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js.map +1 -1
  34. package/dist/src/_internal/platform/endpoint/node/capiClientImpl.d.ts.map +1 -1
  35. package/dist/src/_internal/platform/endpoint/node/capiClientImpl.js +1 -1
  36. package/dist/src/_internal/platform/endpoint/node/capiClientImpl.js.map +1 -1
  37. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts +1 -1
  38. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts.map +1 -1
  39. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js.map +1 -1
  40. package/dist/src/_internal/platform/endpoint/node/responsesApi.js +10 -4
  41. package/dist/src/_internal/platform/endpoint/node/responsesApi.js.map +1 -1
  42. package/dist/src/_internal/platform/env/common/envService.d.ts +5 -0
  43. package/dist/src/_internal/platform/env/common/envService.d.ts.map +1 -1
  44. package/dist/src/_internal/platform/env/common/envService.js +2 -1
  45. package/dist/src/_internal/platform/env/common/envService.js.map +1 -1
  46. package/dist/src/_internal/platform/env/common/nullEnvService.d.ts +3 -0
  47. package/dist/src/_internal/platform/env/common/nullEnvService.d.ts.map +1 -1
  48. package/dist/src/_internal/platform/env/common/nullEnvService.js +8 -1
  49. package/dist/src/_internal/platform/env/common/nullEnvService.js.map +1 -1
  50. package/dist/src/_internal/platform/github/common/githubService.d.ts +3 -3
  51. package/dist/src/_internal/platform/github/common/githubService.d.ts.map +1 -1
  52. package/dist/src/_internal/platform/github/common/githubService.js.map +1 -1
  53. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts +0 -3
  54. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts.map +1 -1
  55. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js +0 -5
  56. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js.map +1 -1
  57. package/dist/src/_internal/platform/networking/common/fetcherService.d.ts +2 -1
  58. package/dist/src/_internal/platform/networking/common/fetcherService.d.ts.map +1 -1
  59. package/dist/src/_internal/platform/networking/common/fetcherService.js.map +1 -1
  60. package/dist/src/_internal/platform/networking/common/networking.d.ts.map +1 -1
  61. package/dist/src/_internal/platform/networking/common/networking.js.map +1 -1
  62. package/dist/src/_internal/platform/telemetry/common/nullExperimentationService.d.ts +7 -0
  63. package/dist/src/_internal/platform/telemetry/common/nullExperimentationService.d.ts.map +1 -1
  64. package/dist/src/_internal/platform/telemetry/common/nullExperimentationService.js +1 -0
  65. package/dist/src/_internal/platform/telemetry/common/nullExperimentationService.js.map +1 -1
  66. package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts +1 -0
  67. package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts.map +1 -1
  68. package/dist/src/_internal/platform/telemetry/common/telemetry.js.map +1 -1
  69. package/dist/src/_internal/util/common/test/shims/chatTypes.d.ts +8 -0
  70. package/dist/src/_internal/util/common/test/shims/chatTypes.d.ts.map +1 -1
  71. package/dist/src/_internal/util/common/test/shims/chatTypes.js +19 -1
  72. package/dist/src/_internal/util/common/test/shims/chatTypes.js.map +1 -1
  73. package/dist/src/_internal/util/common/test/shims/enums.d.ts +6 -0
  74. package/dist/src/_internal/util/common/test/shims/enums.d.ts.map +1 -1
  75. package/dist/src/_internal/util/common/test/shims/enums.js +8 -1
  76. package/dist/src/_internal/util/common/test/shims/enums.js.map +1 -1
  77. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.d.ts.map +1 -1
  78. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js +9 -1
  79. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js.map +1 -1
  80. package/dist/src/_internal/vscodeTypes.d.ts +5 -0
  81. package/dist/src/_internal/vscodeTypes.d.ts.map +1 -1
  82. package/dist/src/_internal/vscodeTypes.js +6 -1
  83. package/dist/src/_internal/vscodeTypes.js.map +1 -1
  84. package/dist/src/main.d.ts +15 -1
  85. package/dist/src/main.d.ts.map +1 -1
  86. package/dist/src/main.js +73 -13
  87. package/dist/src/main.js.map +1 -1
  88. package/dist/src/package.json +70 -31
  89. package/package.json +7 -9
  90. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.d.ts +0 -42
  91. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.d.ts.map +0 -1
  92. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.js +0 -125
  93. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.js.map +0 -1
  94. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.d.ts +0 -60
  95. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.d.ts.map +0 -1
  96. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.js +0 -416
  97. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.js.map +0 -1
  98. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.d.ts +0 -30
  99. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.d.ts.map +0 -1
  100. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.js +0 -64
  101. package/dist/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.js.map +0 -1
  102. package/dist/src/_internal/extension/prompts/node/inline/visualization.d.ts +0 -26
  103. package/dist/src/_internal/extension/prompts/node/inline/visualization.d.ts.map +0 -1
  104. package/dist/src/_internal/extension/prompts/node/inline/visualization.js +0 -41
  105. package/dist/src/_internal/extension/prompts/node/inline/visualization.js.map +0 -1
  106. package/dist/src/_internal/platform/editing/common/abstractText.d.ts +0 -58
  107. package/dist/src/_internal/platform/editing/common/abstractText.d.ts.map +0 -1
  108. package/dist/src/_internal/platform/editing/common/abstractText.js +0 -129
  109. package/dist/src/_internal/platform/editing/common/abstractText.js.map +0 -1
  110. package/dist/src/_internal/platform/parser/node/nodes.d.ts +0 -93
  111. package/dist/src/_internal/platform/parser/node/nodes.d.ts.map +0 -1
  112. package/dist/src/_internal/platform/parser/node/nodes.js +0 -133
  113. package/dist/src/_internal/platform/parser/node/nodes.js.map +0 -1
  114. package/dist/src/_internal/platform/telemetry/common/nullTelemetryService.d.ts +0 -18
  115. package/dist/src/_internal/platform/telemetry/common/nullTelemetryService.d.ts.map +0 -1
  116. package/dist/src/_internal/platform/telemetry/common/nullTelemetryService.js +0 -50
  117. package/dist/src/_internal/platform/telemetry/common/nullTelemetryService.js.map +0 -1
  118. package/dist/src/_internal/util/common/arrays.d.ts +0 -18
  119. package/dist/src/_internal/util/common/arrays.d.ts.map +0 -1
  120. package/dist/src/_internal/util/common/arrays.js +0 -80
  121. package/dist/src/_internal/util/common/arrays.js.map +0 -1
  122. package/src/_internal/extension/byok/node/openAIEndpoint.ts +0 -171
  123. package/src/_internal/extension/common/constants.ts +0 -90
  124. package/src/_internal/extension/inlineEdits/common/delayer.ts +0 -108
  125. package/src/_internal/extension/inlineEdits/common/editRebase.ts +0 -268
  126. package/src/_internal/extension/inlineEdits/common/ghNearbyNesProvider.tsx +0 -163
  127. package/src/_internal/extension/inlineEdits/common/nearbyCursorInlineEditProvider.ts +0 -225
  128. package/src/_internal/extension/inlineEdits/common/rejectionCollector.ts +0 -164
  129. package/src/_internal/extension/inlineEdits/node/debugRecorder.ts +0 -205
  130. package/src/_internal/extension/inlineEdits/node/importFiltering.ts +0 -25
  131. package/src/_internal/extension/inlineEdits/node/nesConfigs.ts +0 -12
  132. package/src/_internal/extension/inlineEdits/node/nextEditCache.ts +0 -278
  133. package/src/_internal/extension/inlineEdits/node/nextEditProvider.ts +0 -778
  134. package/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.ts +0 -983
  135. package/src/_internal/extension/inlineEdits/node/nextEditResult.ts +0 -40
  136. package/src/_internal/extension/prompt/common/importStatement.ts +0 -25
  137. package/src/_internal/extension/prompt/node/chatMLFetcher.ts +0 -706
  138. package/src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.ts +0 -146
  139. package/src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.ts +0 -527
  140. package/src/_internal/extension/prompts/node/inline/summarizedDocument/projectedText.ts +0 -76
  141. package/src/_internal/extension/prompts/node/inline/visualization.ts +0 -65
  142. package/src/_internal/extension/vscode.proposed.activeComment.d.ts +0 -23
  143. package/src/_internal/extension/vscode.proposed.aiRelatedInformation.d.ts +0 -49
  144. package/src/_internal/extension/vscode.proposed.aiSettingsSearch.d.ts +0 -31
  145. package/src/_internal/extension/vscode.proposed.aiTextSearchProvider.d.ts +0 -41
  146. package/src/_internal/extension/vscode.proposed.authLearnMore.d.ts +0 -16
  147. package/src/_internal/extension/vscode.proposed.chatBinaryReferenceData.d.ts +0 -41
  148. package/src/_internal/extension/vscode.proposed.chatEditing.d.ts +0 -29
  149. package/src/_internal/extension/vscode.proposed.chatParticipantAdditions.d.ts +0 -636
  150. package/src/_internal/extension/vscode.proposed.chatParticipantPrivate.d.ts +0 -276
  151. package/src/_internal/extension/vscode.proposed.chatProvider.d.ts +0 -62
  152. package/src/_internal/extension/vscode.proposed.chatReadonlyPromptReference.d.ts +0 -17
  153. package/src/_internal/extension/vscode.proposed.chatReferenceDiagnostic.d.ts +0 -23
  154. package/src/_internal/extension/vscode.proposed.chatSessionsProvider.d.ts +0 -218
  155. package/src/_internal/extension/vscode.proposed.chatStatusItem.d.ts +0 -61
  156. package/src/_internal/extension/vscode.proposed.codeActionAI.d.ts +0 -16
  157. package/src/_internal/extension/vscode.proposed.commentReveal.d.ts +0 -32
  158. package/src/_internal/extension/vscode.proposed.contribCommentThreadAdditionalMenu.d.ts +0 -8
  159. package/src/_internal/extension/vscode.proposed.contribCommentsViewThreadMenus.d.ts +0 -6
  160. package/src/_internal/extension/vscode.proposed.contribSourceControlInputBoxMenu.d.ts +0 -7
  161. package/src/_internal/extension/vscode.proposed.dataChannels.d.ts +0 -19
  162. package/src/_internal/extension/vscode.proposed.defaultChatParticipant.d.ts +0 -52
  163. package/src/_internal/extension/vscode.proposed.documentFiltersExclusive.d.ts +0 -13
  164. package/src/_internal/extension/vscode.proposed.embeddings.d.ts +0 -33
  165. package/src/_internal/extension/vscode.proposed.extensionsAny.d.ts +0 -40
  166. package/src/_internal/extension/vscode.proposed.findFiles2.d.ts +0 -125
  167. package/src/_internal/extension/vscode.proposed.findTextInFiles.d.ts +0 -104
  168. package/src/_internal/extension/vscode.proposed.findTextInFiles2.d.ts +0 -144
  169. package/src/_internal/extension/vscode.proposed.inlineCompletionsAdditions.d.ts +0 -202
  170. package/src/_internal/extension/vscode.proposed.interactive.d.ts +0 -11
  171. package/src/_internal/extension/vscode.proposed.languageModelCapabilities.d.ts +0 -25
  172. package/src/_internal/extension/vscode.proposed.languageModelDataPart.d.ts +0 -163
  173. package/src/_internal/extension/vscode.proposed.languageModelSystem.d.ts +0 -17
  174. package/src/_internal/extension/vscode.proposed.languageModelThinkingPart.d.ts +0 -49
  175. package/src/_internal/extension/vscode.proposed.languageModelToolResultAudience.d.ts +0 -36
  176. package/src/_internal/extension/vscode.proposed.mappedEditsProvider.d.ts +0 -110
  177. package/src/_internal/extension/vscode.proposed.newSymbolNamesProvider.d.ts +0 -47
  178. package/src/_internal/extension/vscode.proposed.readonlyMessage.d.ts +0 -14
  179. package/src/_internal/extension/vscode.proposed.resolvers.d.ts +0 -475
  180. package/src/_internal/extension/vscode.proposed.scmInputBoxValueProvider.d.ts +0 -25
  181. package/src/_internal/extension/vscode.proposed.taskProblemMatcherStatus.d.ts +0 -42
  182. package/src/_internal/extension/vscode.proposed.terminalDataWriteEvent.d.ts +0 -32
  183. package/src/_internal/extension/vscode.proposed.terminalExecuteCommandEvent.d.ts +0 -48
  184. package/src/_internal/extension/vscode.proposed.terminalQuickFixProvider.d.ts +0 -87
  185. package/src/_internal/extension/vscode.proposed.terminalSelection.d.ts +0 -16
  186. package/src/_internal/extension/vscode.proposed.testObserver.d.ts +0 -199
  187. package/src/_internal/extension/vscode.proposed.textDocumentChangeReason.d.ts +0 -30
  188. package/src/_internal/extension/vscode.proposed.textSearchProvider.d.ts +0 -281
  189. package/src/_internal/extension/vscode.proposed.textSearchProvider2.d.ts +0 -297
  190. package/src/_internal/extension/xtab/common/promptCrafting.ts +0 -670
  191. package/src/_internal/extension/xtab/node/xtabEndpoint.ts +0 -102
  192. package/src/_internal/extension/xtab/node/xtabProvider.ts +0 -976
  193. package/src/_internal/extension/xtab/node/xtabUtils.ts +0 -62
  194. package/src/_internal/platform/authentication/common/authentication.ts +0 -309
  195. package/src/_internal/platform/authentication/common/copilotToken.ts +0 -300
  196. package/src/_internal/platform/authentication/common/copilotTokenManager.ts +0 -59
  197. package/src/_internal/platform/authentication/common/copilotTokenStore.ts +0 -40
  198. package/src/_internal/platform/authentication/common/staticGitHubAuthenticationService.ts +0 -96
  199. package/src/_internal/platform/authentication/node/copilotTokenManager.ts +0 -303
  200. package/src/_internal/platform/chat/common/chatMLFetcher.ts +0 -124
  201. package/src/_internal/platform/chat/common/chatQuotaService.ts +0 -63
  202. package/src/_internal/platform/chat/common/chatQuotaServiceImpl.ts +0 -96
  203. package/src/_internal/platform/chat/common/commonTypes.ts +0 -353
  204. package/src/_internal/platform/chat/common/conversationOptions.ts +0 -16
  205. package/src/_internal/platform/chat/common/globalStringUtils.ts +0 -54
  206. package/src/_internal/platform/chat/common/interactionService.ts +0 -35
  207. package/src/_internal/platform/configuration/common/configurationService.ts +0 -803
  208. package/src/_internal/platform/configuration/common/defaultsOnlyConfigurationService.ts +0 -39
  209. package/src/_internal/platform/configuration/common/jsonSchema.ts +0 -139
  210. package/src/_internal/platform/configuration/common/validator.ts +0 -242
  211. package/src/_internal/platform/diff/common/diffService.ts +0 -41
  212. package/src/_internal/platform/diff/common/diffWorker.ts +0 -83
  213. package/src/_internal/platform/diff/node/diffServiceImpl.ts +0 -85
  214. package/src/_internal/platform/editing/common/abstractText.ts +0 -177
  215. package/src/_internal/platform/editing/common/notebookDocumentSnapshot.ts +0 -122
  216. package/src/_internal/platform/editing/common/positionOffsetTransformer.ts +0 -202
  217. package/src/_internal/platform/editing/common/textDocumentSnapshot.ts +0 -274
  218. package/src/_internal/platform/endpoint/common/capiClient.ts +0 -37
  219. package/src/_internal/platform/endpoint/common/chatModelCapabilities.ts +0 -115
  220. package/src/_internal/platform/endpoint/common/domainService.ts +0 -27
  221. package/src/_internal/platform/endpoint/common/endpointProvider.ts +0 -104
  222. package/src/_internal/platform/endpoint/common/endpointTypes.ts +0 -12
  223. package/src/_internal/platform/endpoint/common/licenseAgreement.ts +0 -11
  224. package/src/_internal/platform/endpoint/common/statefulMarkerContainer.tsx +0 -85
  225. package/src/_internal/platform/endpoint/common/thinkingDataContainer.tsx +0 -44
  226. package/src/_internal/platform/endpoint/node/capiClientImpl.ts +0 -18
  227. package/src/_internal/platform/endpoint/node/chatEndpoint.ts +0 -435
  228. package/src/_internal/platform/endpoint/node/domainServiceImpl.ts +0 -80
  229. package/src/_internal/platform/endpoint/node/proxyXtabEndpoint.ts +0 -43
  230. package/src/_internal/platform/endpoint/node/responsesApi.ts +0 -326
  231. package/src/_internal/platform/env/common/envService.ts +0 -134
  232. package/src/_internal/platform/env/common/nullEnvService.ts +0 -68
  233. package/src/_internal/platform/env/common/packagejson.ts +0 -49
  234. package/src/_internal/platform/git/common/gitExtensionService.ts +0 -21
  235. package/src/_internal/platform/git/common/nullGitExtensionService.ts +0 -20
  236. package/src/_internal/platform/git/vscode/git.d.ts +0 -414
  237. package/src/_internal/platform/github/common/githubAPI.ts +0 -44
  238. package/src/_internal/platform/github/common/githubService.ts +0 -87
  239. package/src/_internal/platform/github/common/nullOctokitServiceImpl.ts +0 -21
  240. package/src/_internal/platform/ignore/common/ignoreService.ts +0 -72
  241. package/src/_internal/platform/inlineCompletions/common/api.ts +0 -198
  242. package/src/_internal/platform/inlineEdits/common/dataTypes/diagnosticData.ts +0 -32
  243. package/src/_internal/platform/inlineEdits/common/dataTypes/documentId.ts +0 -52
  244. package/src/_internal/platform/inlineEdits/common/dataTypes/edit.ts +0 -165
  245. package/src/_internal/platform/inlineEdits/common/dataTypes/editUtils.ts +0 -74
  246. package/src/_internal/platform/inlineEdits/common/dataTypes/fetchCancellationError.ts +0 -14
  247. package/src/_internal/platform/inlineEdits/common/dataTypes/languageContext.ts +0 -107
  248. package/src/_internal/platform/inlineEdits/common/dataTypes/languageId.ts +0 -14
  249. package/src/_internal/platform/inlineEdits/common/dataTypes/permutation.ts +0 -69
  250. package/src/_internal/platform/inlineEdits/common/dataTypes/rootedLineEdit.ts +0 -49
  251. package/src/_internal/platform/inlineEdits/common/dataTypes/textEditLength.ts +0 -74
  252. package/src/_internal/platform/inlineEdits/common/dataTypes/textEditLengthHelper/combineTextEditInfos.ts +0 -132
  253. package/src/_internal/platform/inlineEdits/common/dataTypes/textEditLengthHelper/length.ts +0 -184
  254. package/src/_internal/platform/inlineEdits/common/dataTypes/textEditLengthHelper/textEditInfo.ts +0 -32
  255. package/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.ts +0 -89
  256. package/src/_internal/platform/inlineEdits/common/debugRecorderBookmark.ts +0 -10
  257. package/src/_internal/platform/inlineEdits/common/editReason.ts +0 -134
  258. package/src/_internal/platform/inlineEdits/common/inlineEditLogContext.ts +0 -490
  259. package/src/_internal/platform/inlineEdits/common/observableGit.ts +0 -49
  260. package/src/_internal/platform/inlineEdits/common/observableWorkspace.ts +0 -239
  261. package/src/_internal/platform/inlineEdits/common/responseProcessor.ts +0 -249
  262. package/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.ts +0 -468
  263. package/src/_internal/platform/inlineEdits/common/statelessNextEditProviders.ts +0 -59
  264. package/src/_internal/platform/inlineEdits/common/utils/observable.ts +0 -54
  265. package/src/_internal/platform/inlineEdits/common/utils/stringifyChatMessages.ts +0 -29
  266. package/src/_internal/platform/inlineEdits/common/utils/utils.ts +0 -56
  267. package/src/_internal/platform/inlineEdits/common/workspaceEditTracker/historyContextProvider.ts +0 -60
  268. package/src/_internal/platform/inlineEdits/common/workspaceEditTracker/nesHistoryContextProvider.ts +0 -353
  269. package/src/_internal/platform/inlineEdits/common/workspaceEditTracker/nesXtabHistoryTracker.ts +0 -176
  270. package/src/_internal/platform/languageContextProvider/common/languageContextProviderService.ts +0 -25
  271. package/src/_internal/platform/languageContextProvider/common/nullLanguageContextProviderService.ts +0 -38
  272. package/src/_internal/platform/languageServer/common/languageContextService.ts +0 -186
  273. package/src/_internal/platform/languages/common/languageDiagnosticsService.ts +0 -67
  274. package/src/_internal/platform/languages/common/testLanguageDiagnosticsService.ts +0 -28
  275. package/src/_internal/platform/log/common/logService.ts +0 -232
  276. package/src/_internal/platform/nesFetch/common/completionsAPI.ts +0 -78
  277. package/src/_internal/platform/nesFetch/common/completionsFetchService.ts +0 -118
  278. package/src/_internal/platform/nesFetch/common/responseStream.ts +0 -151
  279. package/src/_internal/platform/nesFetch/node/completionsFetchServiceImpl.ts +0 -236
  280. package/src/_internal/platform/nesFetch/node/streamTransformer.ts +0 -95
  281. package/src/_internal/platform/networking/common/fetch.ts +0 -349
  282. package/src/_internal/platform/networking/common/fetcherService.ts +0 -84
  283. package/src/_internal/platform/networking/common/networking.ts +0 -442
  284. package/src/_internal/platform/networking/common/openai.ts +0 -273
  285. package/src/_internal/platform/networking/node/chatStream.ts +0 -137
  286. package/src/_internal/platform/networking/node/stream.ts +0 -749
  287. package/src/_internal/platform/notebook/common/alternativeContent.ts +0 -89
  288. package/src/_internal/platform/notebook/common/alternativeContentFormat.ts +0 -10
  289. package/src/_internal/platform/notebook/common/alternativeContentProvider.json.ts +0 -262
  290. package/src/_internal/platform/notebook/common/alternativeContentProvider.text.ts +0 -243
  291. package/src/_internal/platform/notebook/common/alternativeContentProvider.ts +0 -41
  292. package/src/_internal/platform/notebook/common/alternativeContentProvider.xml.ts +0 -205
  293. package/src/_internal/platform/notebook/common/alternativeNotebookDocument.ts +0 -155
  294. package/src/_internal/platform/notebook/common/helpers.ts +0 -212
  295. package/src/_internal/platform/notebook/common/notebookService.ts +0 -43
  296. package/src/_internal/platform/openai/node/fetch.ts +0 -596
  297. package/src/_internal/platform/parser/node/nodes.ts +0 -190
  298. package/src/_internal/platform/requestLogger/node/nullRequestLogger.ts +0 -26
  299. package/src/_internal/platform/requestLogger/node/requestLogger.ts +0 -383
  300. package/src/_internal/platform/simulationTestContext/common/simulationTestContext.ts +0 -29
  301. package/src/_internal/platform/snippy/common/snippyService.ts +0 -25
  302. package/src/_internal/platform/telemetry/common/nullExperimentationService.ts +0 -64
  303. package/src/_internal/platform/telemetry/common/nullTelemetryService.ts +0 -53
  304. package/src/_internal/platform/telemetry/common/telemetry.ts +0 -215
  305. package/src/_internal/platform/telemetry/common/telemetryData.ts +0 -205
  306. package/src/_internal/platform/thinking/common/thinking.ts +0 -61
  307. package/src/_internal/platform/thinking/common/thinkingUtils.ts +0 -57
  308. package/src/_internal/platform/tokenizer/node/parseTikTokens.ts +0 -23
  309. package/src/_internal/platform/tokenizer/node/tikTokenizerImpl.ts +0 -74
  310. package/src/_internal/platform/tokenizer/node/tikTokenizerWorker.ts +0 -24
  311. package/src/_internal/platform/tokenizer/node/tokenizer.ts +0 -357
  312. package/src/_internal/platform/workspace/common/workspaceService.ts +0 -226
  313. package/src/_internal/platform/workspaceRecorder/common/workspaceLog.ts +0 -118
  314. package/src/_internal/util/common/anomalyDetection.ts +0 -112
  315. package/src/_internal/util/common/arrays.ts +0 -81
  316. package/src/_internal/util/common/async.ts +0 -155
  317. package/src/_internal/util/common/cache.ts +0 -183
  318. package/src/_internal/util/common/crypto.ts +0 -41
  319. package/src/_internal/util/common/errors.ts +0 -22
  320. package/src/_internal/util/common/globals.d.ts +0 -12
  321. package/src/_internal/util/common/imageUtils.ts +0 -154
  322. package/src/_internal/util/common/languages.ts +0 -940
  323. package/src/_internal/util/common/notebooks.ts +0 -286
  324. package/src/_internal/util/common/result.ts +0 -71
  325. package/src/_internal/util/common/services.ts +0 -43
  326. package/src/_internal/util/common/test/shims/chatTypes.ts +0 -448
  327. package/src/_internal/util/common/test/shims/editing.ts +0 -233
  328. package/src/_internal/util/common/test/shims/enums.ts +0 -61
  329. package/src/_internal/util/common/test/shims/l10n.ts +0 -37
  330. package/src/_internal/util/common/test/shims/newSymbolName.ts +0 -23
  331. package/src/_internal/util/common/test/shims/terminal.ts +0 -33
  332. package/src/_internal/util/common/test/shims/vscodeTypesShim.ts +0 -115
  333. package/src/_internal/util/common/time.ts +0 -31
  334. package/src/_internal/util/common/tokenizer.ts +0 -30
  335. package/src/_internal/util/common/tracing.ts +0 -52
  336. package/src/_internal/util/common/types.ts +0 -33
  337. package/src/_internal/util/common/variableLengthQuantity.ts +0 -40
  338. package/src/_internal/util/node/worker.ts +0 -130
  339. package/src/_internal/util/vs/base/common/arrays.ts +0 -926
  340. package/src/_internal/util/vs/base/common/arraysFind.ts +0 -206
  341. package/src/_internal/util/vs/base/common/assert.ts +0 -89
  342. package/src/_internal/util/vs/base/common/async.ts +0 -2582
  343. package/src/_internal/util/vs/base/common/buffer.ts +0 -501
  344. package/src/_internal/util/vs/base/common/cache.ts +0 -122
  345. package/src/_internal/util/vs/base/common/cancellation.ts +0 -150
  346. package/src/_internal/util/vs/base/common/charCode.ts +0 -452
  347. package/src/_internal/util/vs/base/common/codicons.ts +0 -66
  348. package/src/_internal/util/vs/base/common/codiconsLibrary.ts +0 -618
  349. package/src/_internal/util/vs/base/common/codiconsUtil.ts +0 -30
  350. package/src/_internal/util/vs/base/common/collections.ts +0 -156
  351. package/src/_internal/util/vs/base/common/diff/diff.ts +0 -1317
  352. package/src/_internal/util/vs/base/common/diff/diffChange.ts +0 -62
  353. package/src/_internal/util/vs/base/common/equals.ts +0 -148
  354. package/src/_internal/util/vs/base/common/errors.ts +0 -342
  355. package/src/_internal/util/vs/base/common/event.ts +0 -1782
  356. package/src/_internal/util/vs/base/common/extpath.ts +0 -425
  357. package/src/_internal/util/vs/base/common/filters.ts +0 -928
  358. package/src/_internal/util/vs/base/common/functional.ts +0 -34
  359. package/src/_internal/util/vs/base/common/glob.ts +0 -839
  360. package/src/_internal/util/vs/base/common/hash.ts +0 -326
  361. package/src/_internal/util/vs/base/common/htmlContent.ts +0 -212
  362. package/src/_internal/util/vs/base/common/iconLabels.ts +0 -118
  363. package/src/_internal/util/vs/base/common/iterator.ts +0 -196
  364. package/src/_internal/util/vs/base/common/lazy.ts +0 -59
  365. package/src/_internal/util/vs/base/common/lifecycle.ts +0 -845
  366. package/src/_internal/util/vs/base/common/linkedList.ts +0 -144
  367. package/src/_internal/util/vs/base/common/map.ts +0 -954
  368. package/src/_internal/util/vs/base/common/marshallingIds.ts +0 -35
  369. package/src/_internal/util/vs/base/common/mime.ts +0 -136
  370. package/src/_internal/util/vs/base/common/naturalLanguage/korean.ts +0 -425
  371. package/src/_internal/util/vs/base/common/network.ts +0 -429
  372. package/src/_internal/util/vs/base/common/numbers.ts +0 -166
  373. package/src/_internal/util/vs/base/common/objects.ts +0 -242
  374. package/src/_internal/util/vs/base/common/observable.ts +0 -10
  375. package/src/_internal/util/vs/base/common/observableInternal/base.ts +0 -208
  376. package/src/_internal/util/vs/base/common/observableInternal/changeTracker.ts +0 -96
  377. package/src/_internal/util/vs/base/common/observableInternal/commonFacade/cancellation.ts +0 -9
  378. package/src/_internal/util/vs/base/common/observableInternal/commonFacade/deps.ts +0 -12
  379. package/src/_internal/util/vs/base/common/observableInternal/debugLocation.ts +0 -88
  380. package/src/_internal/util/vs/base/common/observableInternal/debugName.ts +0 -150
  381. package/src/_internal/util/vs/base/common/observableInternal/experimental/utils.ts +0 -62
  382. package/src/_internal/util/vs/base/common/observableInternal/index.ts +0 -61
  383. package/src/_internal/util/vs/base/common/observableInternal/logging/consoleObservableLogger.ts +0 -388
  384. package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/debuggerApi.d.ts +0 -154
  385. package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/debuggerRpc.ts +0 -80
  386. package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/devToolsLogger.ts +0 -485
  387. package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/rpc.ts +0 -103
  388. package/src/_internal/util/vs/base/common/observableInternal/logging/debugger/utils.ts +0 -69
  389. package/src/_internal/util/vs/base/common/observableInternal/logging/logging.ts +0 -133
  390. package/src/_internal/util/vs/base/common/observableInternal/map.ts +0 -81
  391. package/src/_internal/util/vs/base/common/observableInternal/observables/baseObservable.ts +0 -172
  392. package/src/_internal/util/vs/base/common/observableInternal/observables/constObservable.ts +0 -44
  393. package/src/_internal/util/vs/base/common/observableInternal/observables/derived.ts +0 -190
  394. package/src/_internal/util/vs/base/common/observableInternal/observables/derivedImpl.ts +0 -445
  395. package/src/_internal/util/vs/base/common/observableInternal/observables/lazyObservableValue.ts +0 -154
  396. package/src/_internal/util/vs/base/common/observableInternal/observables/observableFromEvent.ts +0 -174
  397. package/src/_internal/util/vs/base/common/observableInternal/observables/observableSignal.ts +0 -67
  398. package/src/_internal/util/vs/base/common/observableInternal/observables/observableSignalFromEvent.ts +0 -62
  399. package/src/_internal/util/vs/base/common/observableInternal/observables/observableValue.ts +0 -131
  400. package/src/_internal/util/vs/base/common/observableInternal/observables/observableValueOpts.ts +0 -37
  401. package/src/_internal/util/vs/base/common/observableInternal/reactions/autorun.ts +0 -188
  402. package/src/_internal/util/vs/base/common/observableInternal/reactions/autorunImpl.ts +0 -256
  403. package/src/_internal/util/vs/base/common/observableInternal/set.ts +0 -78
  404. package/src/_internal/util/vs/base/common/observableInternal/transaction.ts +0 -115
  405. package/src/_internal/util/vs/base/common/observableInternal/utils/promise.ts +0 -129
  406. package/src/_internal/util/vs/base/common/observableInternal/utils/runOnChange.ts +0 -65
  407. package/src/_internal/util/vs/base/common/observableInternal/utils/utils.ts +0 -281
  408. package/src/_internal/util/vs/base/common/observableInternal/utils/utilsCancellation.ts +0 -101
  409. package/src/_internal/util/vs/base/common/observableInternal/utils/valueWithChangeEvent.ts +0 -31
  410. package/src/_internal/util/vs/base/common/path.ts +0 -1591
  411. package/src/_internal/util/vs/base/common/platform.ts +0 -282
  412. package/src/_internal/util/vs/base/common/process.ts +0 -78
  413. package/src/_internal/util/vs/base/common/resources.ts +0 -446
  414. package/src/_internal/util/vs/base/common/sequence.ts +0 -36
  415. package/src/_internal/util/vs/base/common/sseParser.ts +0 -247
  416. package/src/_internal/util/vs/base/common/stopwatch.ts +0 -43
  417. package/src/_internal/util/vs/base/common/stream.ts +0 -792
  418. package/src/_internal/util/vs/base/common/strings.ts +0 -1364
  419. package/src/_internal/util/vs/base/common/symbols.ts +0 -11
  420. package/src/_internal/util/vs/base/common/themables.ts +0 -106
  421. package/src/_internal/util/vs/base/common/types.ts +0 -345
  422. package/src/_internal/util/vs/base/common/uint.ts +0 -61
  423. package/src/_internal/util/vs/base/common/uri.ts +0 -752
  424. package/src/_internal/util/vs/base/common/uuid.ts +0 -72
  425. package/src/_internal/util/vs/base-common.d.ts +0 -42
  426. package/src/_internal/util/vs/editor/common/core/editOperation.ts +0 -62
  427. package/src/_internal/util/vs/editor/common/core/edits/edit.ts +0 -399
  428. package/src/_internal/util/vs/editor/common/core/edits/lineEdit.ts +0 -414
  429. package/src/_internal/util/vs/editor/common/core/edits/stringEdit.ts +0 -568
  430. package/src/_internal/util/vs/editor/common/core/edits/textEdit.ts +0 -411
  431. package/src/_internal/util/vs/editor/common/core/position.ts +0 -186
  432. package/src/_internal/util/vs/editor/common/core/range.ts +0 -519
  433. package/src/_internal/util/vs/editor/common/core/ranges/lineRange.ts +0 -416
  434. package/src/_internal/util/vs/editor/common/core/ranges/offsetRange.ts +0 -275
  435. package/src/_internal/util/vs/editor/common/core/text/abstractText.ts +0 -127
  436. package/src/_internal/util/vs/editor/common/core/text/positionToOffset.ts +0 -26
  437. package/src/_internal/util/vs/editor/common/core/text/positionToOffsetImpl.ts +0 -144
  438. package/src/_internal/util/vs/editor/common/core/text/textLength.ts +0 -150
  439. package/src/_internal/util/vs/editor/common/core/wordHelper.ts +0 -177
  440. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.ts +0 -210
  441. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.ts +0 -109
  442. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.ts +0 -178
  443. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.ts +0 -331
  444. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.ts +0 -273
  445. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.ts +0 -475
  446. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.ts +0 -47
  447. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.ts +0 -248
  448. package/src/_internal/util/vs/editor/common/diff/defaultLinesDiffComputer/utils.ts +0 -76
  449. package/src/_internal/util/vs/editor/common/diff/legacyLinesDiffComputer.ts +0 -693
  450. package/src/_internal/util/vs/editor/common/diff/linesDiffComputer.ts +0 -61
  451. package/src/_internal/util/vs/editor/common/diff/rangeMapping.ts +0 -418
  452. package/src/_internal/util/vs/editor/common/model/prefixSumComputer.ts +0 -304
  453. package/src/_internal/util/vs/nls.messages.ts +0 -21
  454. package/src/_internal/util/vs/nls.ts +0 -243
  455. package/src/_internal/util/vs/platform/instantiation/common/descriptors.ts +0 -23
  456. package/src/_internal/util/vs/platform/instantiation/common/graph.ts +0 -113
  457. package/src/_internal/util/vs/platform/instantiation/common/instantiation.ts +0 -127
  458. package/src/_internal/util/vs/platform/instantiation/common/instantiationService.ts +0 -483
  459. package/src/_internal/util/vs/platform/instantiation/common/serviceCollection.ts +0 -34
  460. package/src/_internal/util/vs/vscode-globals-nls.d.ts +0 -42
  461. package/src/_internal/util/vs/vscode-globals-product.d.ts +0 -35
  462. package/src/_internal/util/vs/workbench/api/common/extHostTypes/diagnostic.ts +0 -109
  463. package/src/_internal/util/vs/workbench/api/common/extHostTypes/es5ClassCompat.ts +0 -34
  464. package/src/_internal/util/vs/workbench/api/common/extHostTypes/location.ts +0 -51
  465. package/src/_internal/util/vs/workbench/api/common/extHostTypes/markdownString.ts +0 -83
  466. package/src/_internal/util/vs/workbench/api/common/extHostTypes/notebooks.ts +0 -296
  467. package/src/_internal/util/vs/workbench/api/common/extHostTypes/position.ts +0 -195
  468. package/src/_internal/util/vs/workbench/api/common/extHostTypes/range.ts +0 -167
  469. package/src/_internal/util/vs/workbench/api/common/extHostTypes/selection.ts +0 -94
  470. package/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetString.ts +0 -103
  471. package/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetTextEdit.ts +0 -44
  472. package/src/_internal/util/vs/workbench/api/common/extHostTypes/symbolInformation.ts +0 -89
  473. package/src/_internal/util/vs/workbench/api/common/extHostTypes/textEdit.ts +0 -99
  474. package/src/_internal/vscodeTypes.ts +0 -100
  475. package/src/main.ts +0 -207
  476. package/src/package.json +0 -4063
@@ -1,62 +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 { IResponsePart } from '../../../platform/chat/common/chatMLFetcher';
7
- import { AsyncIterableObject } from '../../../util/vs/base/common/async';
8
-
9
-
10
- export function toLines(stream: AsyncIterableObject<IResponsePart>) {
11
- return new AsyncIterableObject<string>(async (emitter) => {
12
- let buffer = '';
13
-
14
- for await (const chunk of stream) {
15
- buffer += chunk.delta.text;
16
-
17
- const parts = buffer.split(/\r?\n/);
18
- buffer = parts.pop() ?? '';
19
-
20
- emitter.emitMany(parts);
21
- }
22
-
23
- if (buffer) {
24
- emitter.emitOne(buffer);
25
- }
26
- });
27
- }
28
-
29
- /**
30
- * Remove backticks on the first and last lines.
31
- */
32
- export function linesWithBackticksRemoved(linesStream: AsyncIterableObject<string>) {
33
- return new AsyncIterableObject<string>(async (emitter) => {
34
- let lineN = -1;
35
-
36
- let bufferedBacktickLine: string | undefined;
37
-
38
- for await (const line of linesStream) {
39
- ++lineN;
40
-
41
- if (bufferedBacktickLine) {
42
- emitter.emitOne(bufferedBacktickLine);
43
- bufferedBacktickLine = undefined;
44
- }
45
-
46
- if (line.match(/^```[a-z]*$/)) {
47
- if (lineN === 0) {
48
- continue;
49
- } else {
50
- // maybe middle of stream or last line
51
- // we set it to buffer; if it's midle of stream, it will be emitted
52
- // if last line, it will be omitted
53
- bufferedBacktickLine = line;
54
- }
55
- } else {
56
- emitter.emitOne(line);
57
- }
58
- }
59
-
60
- // ignore bufferedLine
61
- });
62
- }
@@ -1,309 +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
- import type { AuthenticationGetSessionOptions, AuthenticationSession } from 'vscode';
6
- import { createServiceIdentifier } from '../../../util/common/services';
7
- import { Emitter, Event } from '../../../util/vs/base/common/event';
8
- import { Disposable } from '../../../util/vs/base/common/lifecycle';
9
- import { derived } from '../../../util/vs/base/common/observableInternal';
10
- import { AuthPermissionMode, ConfigKey, IConfigurationService } from '../../configuration/common/configurationService';
11
- import { ILogService } from '../../log/common/logService';
12
- import { CopilotToken } from './copilotToken';
13
- import { ICopilotTokenManager } from './copilotTokenManager';
14
- import { ICopilotTokenStore } from './copilotTokenStore';
15
-
16
- // Minimum set of scopes needed for Copilot to work
17
- export const GITHUB_SCOPE_USER_EMAIL = ['user:email'];
18
-
19
- // Old list of scopes still used for backwards compatibility
20
- export const GITHUB_SCOPE_READ_USER = ['read:user'];
21
-
22
- // The same scopes that GitHub Pull Request, GitHub Repositories, and others use
23
- export const GITHUB_SCOPE_ALIGNED = ['read:user', 'user:email', 'repo', 'workflow'];
24
-
25
- export class MinimalModeError extends Error {
26
- constructor() {
27
- super('The authentication service is in minimal mode.');
28
- this.name = 'MinimalModeError';
29
- }
30
- }
31
-
32
- export const IAuthenticationService = createServiceIdentifier<IAuthenticationService>('IAuthenticationService');
33
- export interface IAuthenticationService {
34
-
35
- readonly _serviceBrand: undefined;
36
-
37
- /**
38
- * Whether the authentication service is in minimal mode. If true, the authentication service will not attempt to
39
- * fetch the permissive token. This means that:
40
- * * {@link getPermissiveGitHubSession} interactive flows will always throw an error
41
- * * {@link getPermissiveGitHubSession} silent flows and {@link permissiveGitHubSession} will always return undefined
42
- */
43
- readonly isMinimalMode: boolean;
44
-
45
- /**
46
- * Event emitter that will fire an event every time the authentication status changes. This is used for example to detect when the user
47
- * logs out of GitHub or when they log in with a more permissive token.
48
- *
49
- * @note For best practice of handling of the user's authentication state, you should react to this event.
50
- */
51
- readonly onDidAuthenticationChange: Event<void>;
52
-
53
- /**
54
- * @deprecated Use {@link onDidAuthenticationChange} instead. This event fires when the access token changes and not the copilot token.
55
- */
56
- readonly onDidAccessTokenChange: Event<void>;
57
-
58
- /**
59
- * Checks if there is currently any session available in the cache. Does not make any network requests and does not
60
- * call out to the underlying authentication provider.
61
- *
62
- * @note See {@link getAnyGitHubToken} for more information and for an async version by calling {@link getAnyGitHubSession} with `{ silent: true }`.
63
- * @note For best practice of handling of the user's authentication state, you should react to {@link onDidAuthenticationChange}.
64
- * @note This token will have at least the `user:email` scope to be able to access the minimum Copilot API.
65
- */
66
- readonly anyGitHubSession: AuthenticationSession | undefined;
67
-
68
- /**
69
- * Returns a currently valid GitHub session, also known as session or auth session. Skips the cache and calls
70
- * the underlying authentication provider using the options passed in.
71
- *
72
- * @note You should typically use the synchronous version {@link anyGitHubToken} if you are fetching a session silently.
73
- * @note For best practice of handling of the user's authentication state, you should react to {@link onDidAuthenticationChange}.
74
- * @note This token will have at least the `user:email` scope to be able to access the minimum Copilot API.
75
- * @returns an auth session or undefined if none is found.
76
- */
77
- getAnyGitHubSession(options?: AuthenticationGetSessionOptions): Promise<AuthenticationSession | undefined>;
78
-
79
- /**
80
- * Checks if there is currently a permissive session available in the cache. Does not make any network requests and does not
81
- * call out to the underlying authentication provider.
82
- *
83
- * @note See {@link getPermissiveGitHubToken} for more information and for an async version by calling {@link getPermissiveGitHubSession} with `{ silent: true }`.
84
- * @note For best practice of handling of the user's authentication state, you should react to {@link onDidAuthenticationChange}.
85
- * @returns undefined if no auth session is available or Minimal Mode is enabled. Otherwise, returns an auth session with the `repo` scope.
86
- */
87
- readonly permissiveGitHubSession: AuthenticationSession | undefined;
88
- /**
89
- * Returns a currently valid permissive GitHub session, also known as session or auth session. Skips the cache and calls
90
- * the underlying authentication provider using the options passed in.
91
- *
92
- * @note We have the {@link IAuthenticationChatUpgradeService} to upgrade the session to a permissive one. Use this for confirmation in Chat/Edits instead of showing the modal.
93
- * @note You should typically use the synchronous version {@link getPermissiveGitHubToken} if you are fetching a session silently.
94
- * @note For best practice of handling of the user's authentication state, you should react to {@link onDidAuthenticationChange}.
95
- * @note This token will have at least the `repo` scope to be able to access the extended features of the Copilot API.
96
- * @returns an auth session or undefined if none is found.
97
- * @throws MinimalModeError {@link MinimalModeError} if the authentication service is in minimal mode.
98
- */
99
- getPermissiveGitHubSession(options: AuthenticationGetSessionOptions): Promise<AuthenticationSession | undefined>;
100
-
101
- /**
102
- * Checks if there is currently a Copilot token available in the cache. Does not make any network requests.
103
- * See {@link getCopilotToken} for more information and for an async version.
104
- *
105
- * @note we omit token here because it is possibly expired. If you need it, use {@link getCopilotToken} instead as it includes a refresh mechanism.
106
- * @note For best practice of handling of the user's authentication state, you should react to {@link onDidAuthenticationChange}.
107
- */
108
- readonly copilotToken: Omit<CopilotToken, 'token'> | undefined;
109
-
110
-
111
- /**
112
- * Return the token needed to authenticate with the speculative decoding endpoint.
113
- * This token is public as it is set via a request to the ChatMLFetcher and reset either via expiration or a 403 response from the SD endpoint.
114
- * @note There is no guarantee this is a valid token and it can still reject due to 403 with the SD endpoint
115
- */
116
- speculativeDecodingEndpointToken: string | undefined;
117
-
118
- /**
119
- * Return a currently valid Copilot token, retrieving a fresh one if
120
- * necessary.
121
- *
122
- * @param force will force a refresh of the token, even if not expired
123
- * @returns a Copilot token or throws an error if none is found.
124
- * @note For best practice of handling of the user's authentication state, you should react to {@link onDidAuthenticationChange}.
125
- */
126
- getCopilotToken(force?: boolean): Promise<CopilotToken>;
127
-
128
- /**
129
- * Drop the current Copilot token as we received an HTTP error while trying
130
- * to use it that indicates it's no longer valid.
131
- */
132
- resetCopilotToken(httpError?: number): void;
133
-
134
- /**
135
- * Fired when the authentication state changes for ado.
136
- */
137
- readonly onDidAdoAuthenticationChange: Event<void>;
138
-
139
- /**
140
- * Returns a valid Azure DevOps session for the user
141
- */
142
- getAdoAccessTokenBase64(options?: AuthenticationGetSessionOptions): Promise<string | undefined>;
143
- }
144
-
145
- export abstract class BaseAuthenticationService extends Disposable implements IAuthenticationService {
146
- declare readonly _serviceBrand: undefined;
147
-
148
- protected readonly _onDidAuthenticationChange = this._register(new Emitter<void>());
149
- readonly onDidAuthenticationChange: Event<void> = this._onDidAuthenticationChange.event;
150
-
151
- protected readonly _onDidAccessTokenChange = this._register(new Emitter<void>());
152
- readonly onDidAccessTokenChange: Event<void> = this._onDidAccessTokenChange.event;
153
-
154
- protected readonly _onDidAdoAuthenticationChange = this._register(new Emitter<void>());
155
- readonly onDidAdoAuthenticationChange: Event<void> = this._onDidAdoAuthenticationChange.event;
156
-
157
- constructor(
158
- @ILogService protected readonly _logService: ILogService,
159
- @ICopilotTokenStore protected readonly _tokenStore: ICopilotTokenStore,
160
- @ICopilotTokenManager private readonly _tokenManager: ICopilotTokenManager,
161
- @IConfigurationService protected readonly _configurationService: IConfigurationService,
162
- ) {
163
- super();
164
- this._register(_tokenManager.onDidCopilotTokenRefresh(() => {
165
- this._logService.debug('Handling CopilotToken refresh.');
166
- void this._handleAuthChangeEvent();
167
- }));
168
- }
169
-
170
- //#region isMinimalMode
171
-
172
- protected _isMinimalMode = derived(r => this._configurationService.getConfigObservable(ConfigKey.Shared.AuthPermissions).read(r) === AuthPermissionMode.Minimal);
173
- get isMinimalMode(): boolean {
174
- return this._isMinimalMode.get();
175
- }
176
-
177
- //#endregion
178
-
179
- //#region Any GitHub Token
180
-
181
- protected _anyGitHubSession: AuthenticationSession | undefined;
182
- get anyGitHubSession(): AuthenticationSession | undefined {
183
- return this._anyGitHubSession;
184
- }
185
- abstract getAnyGitHubSession(options?: AuthenticationGetSessionOptions): Promise<AuthenticationSession | undefined>;
186
-
187
- //#endregion
188
-
189
- //#region Permissive GitHub Token
190
-
191
- protected _permissiveGitHubSession: AuthenticationSession | undefined;
192
- get permissiveGitHubSession(): AuthenticationSession | undefined {
193
- return this._permissiveGitHubSession;
194
- }
195
- abstract getPermissiveGitHubSession(options: AuthenticationGetSessionOptions): Promise<AuthenticationSession | undefined>;
196
-
197
- //#endregion
198
-
199
- //#region Ado
200
-
201
- protected _anyAdoSession: AuthenticationSession | undefined;
202
- get anyAdoSession(): AuthenticationSession | undefined {
203
- return this._anyAdoSession;
204
- }
205
- protected abstract getAnyAdoSession(options?: AuthenticationGetSessionOptions): Promise<AuthenticationSession | undefined>;
206
-
207
- //#endregion
208
-
209
- //#region Copilot Token
210
-
211
- private _copilotTokenError: Error | undefined;
212
- get copilotToken(): CopilotToken | undefined {
213
- return this._tokenStore.copilotToken;
214
- }
215
- async getCopilotToken(force?: boolean): Promise<CopilotToken> {
216
- try {
217
- await this.getAnyGitHubSession({ silent: true });
218
- // TODO: could this take in an auth session?
219
- const token = await this._tokenManager.getCopilotToken(force);
220
- this._tokenStore.copilotToken = token;
221
- this._copilotTokenError = undefined;
222
- return token;
223
- } catch (afterError) {
224
- this._tokenStore.copilotToken = undefined;
225
- const beforeError = this._copilotTokenError;
226
- this._copilotTokenError = afterError;
227
- // This handles the case where the user still can't get a Copilot Token,
228
- // but the error has change. I.e. They go from being not signed in (no copilot token can be minted)
229
- // to an account that doesn't have a valid subscription (no copilot token can be minted).
230
- // NOTE: if either error is undefined, this event should be fired elsewhere already.
231
- if (beforeError && afterError && beforeError.message !== afterError.message) {
232
- this._onDidAuthenticationChange.fire();
233
- }
234
- throw afterError;
235
- }
236
- }
237
-
238
- resetCopilotToken(httpError?: number): void {
239
- this._tokenStore.copilotToken = undefined;
240
- this._tokenManager.resetCopilotToken(httpError);
241
- }
242
-
243
- //#endregion
244
-
245
- // #region Speculative decoding endpoint token
246
- public speculativeDecodingEndpointToken: string | undefined;
247
- // #endregion
248
-
249
- //#region ADO Token
250
- abstract getAdoAccessTokenBase64(options?: AuthenticationGetSessionOptions): Promise<string | undefined>
251
- //#endregion
252
-
253
- protected async _handleAuthChangeEvent(): Promise<void> {
254
- const anyGitHubSessionBefore = this._anyGitHubSession;
255
- const permissiveGitHubSessionBefore = this._permissiveGitHubSession;
256
- const anyAdoSessionBefore = this._anyAdoSession;
257
- const copilotTokenBefore = this._tokenStore.copilotToken;
258
- const copilotTokenErrorBefore = this._copilotTokenError;
259
-
260
- // Update caches
261
- const resolved = await Promise.allSettled([
262
- this.getAnyGitHubSession({ silent: true }),
263
- this.getPermissiveGitHubSession({ silent: true }),
264
- this.getAnyAdoSession({ silent: true }),
265
- ]);
266
- for (const res of resolved) {
267
- if (res.status === 'rejected') {
268
- this._logService.error(`Error getting a session: ${res.reason}`);
269
- }
270
- }
271
-
272
- if (
273
- anyGitHubSessionBefore?.accessToken !== this._anyGitHubSession?.accessToken ||
274
- permissiveGitHubSessionBefore?.accessToken !== this._permissiveGitHubSession?.accessToken
275
- ) {
276
- this._onDidAccessTokenChange.fire();
277
- this._logService.debug('Auth state changed, minting a new CopilotToken...');
278
- // The auth state has changed, so mint a new Copilot token
279
- try {
280
- await this.getCopilotToken(true);
281
- } catch (e) {
282
- // Ignore errors
283
- }
284
- this._logService.debug('Minted a new CopilotToken.');
285
- return;
286
- }
287
-
288
- if (anyAdoSessionBefore?.accessToken !== this._anyAdoSession?.accessToken) {
289
- this._logService.debug(`Ado auth state changed, firing event. Had token before: ${!!anyAdoSessionBefore?.accessToken}. Has token now: ${!!this._anyAdoSession?.accessToken}.`);
290
- this._onDidAdoAuthenticationChange.fire();
291
- }
292
-
293
- // Auth state hasn't changed, but the Copilot token might have
294
- try {
295
- await this.getCopilotToken();
296
- } catch (e) {
297
- // Ignore errors
298
- }
299
-
300
- if (copilotTokenBefore?.token !== this._tokenStore.copilotToken?.token ||
301
- // React to errors changing too (i.e. I go from zero session to a session that doesn't have Copilot access)
302
- copilotTokenErrorBefore?.message !== this._copilotTokenError?.message
303
- ) {
304
- this._logService.debug('CopilotToken state changed, firing event.');
305
- this._onDidAuthenticationChange.fire();
306
- }
307
- this._logService.debug('Finished handling auth change event.');
308
- }
309
- }
@@ -1,300 +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 { CopilotUserQuotaInfo } from '../../chat/common/chatQuotaService';
7
-
8
- /**
9
- * A function used to determine if the org list contains an internal organization
10
- * @param orgList The list of organizations the user is a member of
11
- * Whether or not it contains an internal org
12
- */
13
- export function containsInternalOrg(orgList: string[]): boolean {
14
- return containsGitHubOrg(orgList) || containsMicrosoftOrg(orgList);
15
- }
16
-
17
- /**
18
- * A function used to determine if the org list contains a GitHub organization
19
- * @param orgList The list of organizations the user is a member of
20
- * Whether or not it contains a GitHub org
21
- */
22
- function containsGitHubOrg(orgList: string[]): boolean {
23
- const GITHUB_ORGANIZATIONS = ['4535c7beffc844b46bb1ed4aa04d759a'];
24
- // Check if the user is part of an allowed organization.
25
- for (const org of orgList) {
26
- if (GITHUB_ORGANIZATIONS.includes(org)) {
27
- return true;
28
- }
29
- }
30
- return false;
31
- }
32
-
33
- /**
34
- * A function used to determine if the org list contains a Microsoft organization
35
- * @param orgList The list of organizations the user is a member of
36
- * Whether or not it contains a Microsoft org
37
- */
38
- function containsMicrosoftOrg(orgList: string[]): boolean {
39
- const MICROSOFT_ORGANIZATIONS = ['a5db0bcaae94032fe715fb34a5e4bce2', '7184f66dfcee98cb5f08a1cb936d5225',
40
- '1cb18ac6eedd49b43d74a1c5beb0b955', 'ea9395b9a9248c05ee6847cbd24355ed'];
41
- // Check if the user is part of a Microsoft organization.
42
- for (const org of orgList) {
43
- if (MICROSOFT_ORGANIZATIONS.includes(org)) {
44
- return true;
45
- }
46
- }
47
- return false;
48
- }
49
-
50
- export class CopilotToken {
51
- private readonly tokenMap: Map<string, string>;
52
- constructor(private readonly _info: ExtendedTokenInfo) {
53
- this.tokenMap = this.parseToken(_info.token);
54
- }
55
-
56
- private parseToken(token: string): Map<string, string> {
57
- const result = new Map<string, string>();
58
- const firstPart = token?.split(':')[0];
59
- const fields = firstPart?.split(';');
60
- for (const field of fields) {
61
- const [key, value] = field.split('=');
62
- result.set(key, value);
63
- }
64
- return result;
65
- }
66
-
67
- get token(): string {
68
- return this._info.token;
69
- }
70
-
71
- get sku(): string | undefined {
72
- return this._info.sku;
73
- }
74
-
75
- /**
76
- * Evaluates `has_cfi_access?` which is defined as `!has_cfb_access? && !has_cfe_access?`
77
- * (cfb = copilot for business, cfe = copilot for enterprise).
78
- * So it's also true for copilot free users.
79
- */
80
- get isIndividual(): boolean {
81
- return this._info.individual ?? false;
82
- }
83
-
84
- get organizationList(): string[] {
85
- return this._info.organization_list || [];
86
- }
87
-
88
- get enterpriseList(): number[] {
89
- return this._info.enterprise_list || [];
90
- }
91
-
92
- get endpoints(): { api: string; telemetry: string; proxy: string; 'origin-tracker'?: string } | undefined {
93
- return this._info.endpoints;
94
- }
95
-
96
- get isInternal() {
97
- return containsInternalOrg(this.organizationList);
98
- }
99
-
100
- get isMicrosoftInternal(): boolean {
101
- return containsMicrosoftOrg(this.organizationList);
102
- }
103
-
104
- get isGitHubInternal(): boolean {
105
- return containsGitHubOrg(this.organizationList);
106
- }
107
-
108
- get isFreeUser(): boolean {
109
- return this.sku === 'free_limited_copilot';
110
- }
111
-
112
- get isChatQuotaExceeded(): boolean {
113
- return this.isFreeUser && (this._info.limited_user_quotas?.chat ?? 1) <= 0;
114
- }
115
-
116
- get isCompletionsQuotaExceeded(): boolean {
117
- return this.isFreeUser && (this._info.limited_user_quotas?.completions ?? 1) <= 0;
118
- }
119
-
120
- get codeQuoteEnabled(): boolean {
121
- return this._info.code_quote_enabled ?? false;
122
- }
123
-
124
- get isVscodeTeamMember(): boolean {
125
- return this._info.isVscodeTeamMember;
126
- }
127
-
128
- get copilotPlan(): 'free' | 'individual' | 'individual_pro' | 'business' | 'enterprise' {
129
- if (this.isFreeUser) {
130
- return 'free';
131
- }
132
- const plan = this._info.copilot_plan;
133
- switch (plan) {
134
- case 'individual':
135
- case 'individual_pro':
136
- case 'business':
137
- case 'enterprise':
138
- return plan;
139
- default:
140
- // Default to 'individual' for unexpected values
141
- return 'individual';
142
- }
143
- }
144
-
145
- get quotaInfo() {
146
- return { quota_snapshots: this._info.quota_snapshots, quota_reset_date: this._info.quota_reset_date };
147
- }
148
-
149
- get username(): string {
150
- return this._info.username;
151
- }
152
-
153
- private _isTelemetryEnabled: boolean | undefined;
154
- isTelemetryEnabled(): boolean {
155
- if (this._isTelemetryEnabled === undefined) {
156
- this._isTelemetryEnabled = this._info.telemetry === 'enabled';
157
- }
158
- return this._isTelemetryEnabled;
159
- }
160
-
161
- private _isPublicSuggestionsEnabled: boolean | undefined;
162
- isPublicSuggestionsEnabled(): boolean {
163
- if (this._isPublicSuggestionsEnabled === undefined) {
164
- this._isPublicSuggestionsEnabled = this._info.public_suggestions === 'enabled';
165
- }
166
- return this._isPublicSuggestionsEnabled;
167
- }
168
-
169
- isChatEnabled(): boolean {
170
- return this._info.chat_enabled ?? false;
171
- }
172
-
173
- isCopilotIgnoreEnabled(): boolean {
174
- return this._info.copilotignore_enabled ?? false;
175
- }
176
-
177
- get isCopilotCodeReviewEnabled(): boolean {
178
- return (this.getTokenValue('ccr') === '1');
179
- }
180
-
181
- isEditorPreviewFeaturesEnabled(): boolean {
182
- // Editor preview features are disabled if the flag is present and set to 0
183
- return this.getTokenValue('editor_preview_features') !== '0';
184
- }
185
-
186
- isMcpEnabled(): boolean {
187
- // MCP is disabled if the flag is present and set to 0
188
- return this.getTokenValue('mcp') !== '0';
189
- }
190
-
191
- getTokenValue(key: string): string | undefined {
192
- return this.tokenMap.get(key);
193
- }
194
-
195
- isExpandedClientSideIndexingEnabled(): boolean {
196
- return this._info.blackbird_clientside_indexing === true;
197
- }
198
- }
199
-
200
- /**
201
- * Details of the user's telemetry consent status we get from the server during token retrieval.
202
- *
203
- * `unconfigured` is a transitional state for pre-GA that indicates the user is in the Technical Preview
204
- * and needs to be asked about telemetry consent client-side. It can be removed post-GA as the server
205
- * will never return it again.
206
- *
207
- * `enabled` indicates that they agreed to full telemetry.
208
- *
209
- * `disabled` indicates that they opted out of full telemetry so we can only send the core messages
210
- * that users cannot opt-out of.
211
- *
212
- */
213
- export type UserTelemetryChoice = 'enabled' | 'disabled';
214
- /**
215
- * A notification we get from the server during token retrieval. Needs to be presented to the user.
216
- */
217
- type ServerSideNotification = {
218
- message: string;
219
- url: string;
220
- title: string;
221
- };
222
- /**
223
- * A notification that warns the user about upcoming problems.
224
- */
225
- type WarningNotification = ServerSideNotification & {
226
- notification_id: string;
227
- };
228
- /**
229
- * A notification in case of an error.
230
- */
231
- type ErrorNotification = ServerSideNotification;
232
- /**
233
- * A server response containing a Copilot token and metadata associated with it.
234
- */
235
- export interface TokenInfo {
236
- // v2 format: fields:mac
237
- // fields are ';' separated key=value pairs, including tid (tracking_id), dom (domain), and exp (unix_time).
238
- token: string;
239
- expires_at: number; // unix time UTC in seconds
240
- refresh_in: number; // seconds to refresh token
241
- user_notification?: WarningNotification;
242
- error_details?: ErrorNotification;
243
- organization_list?: string[];
244
- code_quote_enabled?: boolean;
245
- public_suggestions?: string;
246
- telemetry?: string;
247
- copilotignore_enabled?: boolean;
248
- endpoints?: { api: string; telemetry: string; proxy: string; 'origin-tracker'?: string };
249
- chat_enabled?: boolean;
250
- limited_user_quotas?: { chat: number; completions: number };
251
- enterprise_list?: number[];
252
- individual?: boolean;
253
- sku?: string; // e.g. 'copilot_enterprise_seat'
254
- message?: string; // error message
255
- }
256
-
257
- /**
258
- * A server response containing the user info for the copilot user from the /copilot_internal/user endpoint
259
- */
260
-
261
- export interface CopilotUserInfo extends CopilotUserQuotaInfo {
262
- access_type_sku: string;
263
- analytics_tracking_id: string;
264
- assigned_date: string;
265
- can_signup_for_limited: boolean;
266
- chat_enabled: boolean;
267
- copilot_plan: string;
268
- organization_login_list: string[];
269
- organization_list: Array<{
270
- login: string;
271
- name: string | null;
272
- }>;
273
- }
274
-
275
- // The token info extended with additional metadata that is helpful to have
276
- export type ExtendedTokenInfo = TokenInfo & { username: string; isVscodeTeamMember: boolean; blackbird_clientside_indexing?: boolean } & Pick<CopilotUserInfo, 'copilot_plan' | 'quota_snapshots' | 'quota_reset_date'>;
277
-
278
- export type TokenEnvelope = Omit<TokenInfo, 'token' | 'organization_list'>;
279
-
280
- export type TokenErrorReason = 'NotAuthorized' | 'FailedToGetToken' | 'TokenInvalid' | 'GitHubLoginFailed' | 'HTTP401' | 'RateLimited';
281
-
282
- export enum TokenErrorNotificationId {
283
- EnterPriseManagedUserAccount = 'enterprise_managed_user_account',
284
- NotSignedUp = 'not_signed_up',
285
- NoCopilotAccess = 'no_copilot_access',
286
- SubscriptionEnded = 'subscription_ended',
287
- ServerError = 'server_error',
288
- FeatureFlagBlocked = 'feature_flag_blocked',
289
- SpammyUser = 'spammy_user',
290
- CodespacesDemoInactive = 'codespaces_demo_inactive', //TODO: Handle this if this is still applicable
291
- SnippyNotConfigured = 'snippy_not_configured'
292
- }
293
-
294
- export type TokenError = {
295
- reason: TokenErrorReason;
296
- notification_id?: TokenErrorNotificationId;
297
- message?: string; // TODO: not used yet, but will be for 466 errors
298
- };
299
-
300
- export type TokenInfoOrError = ({ kind: 'success' } & ExtendedTokenInfo) | ({ kind: 'failure' } & TokenError);