@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 +0,0 @@
1
- {"version":3,"file":"fragments.d.ts","sourceRoot":"","sources":["../../../../../../../../src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAqB,MAAM,4DAA4D,CAAC;AAC3G,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAC;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,2DAA2D,CAAC;AAEvF,8BAAsB,cAAc;IACnC,QAAQ,KAAK,MAAM,IAAI,MAAM,CAAC;IAE9B,QAAQ,KAAK,UAAU,IAAI,UAAU,CAAC;IAEtC,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC;IAE5B,QAAQ;IAER,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,UAAU;CAgCtD;AAED,qBAAa,qBAAsB,SAAQ,cAAc;aAEvC,IAAI,EAAE,MAAM;gBAAZ,IAAI,EAAE,MAAM;IAK7B,IAAI,MAAM,IAAI,MAAM,CAA6B;IAEjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgD;IAE5E,IAAI,UAAU,eAAqC;CACnD;AAED,qBAAa,sBAAuB,SAAQ,cAAc;aAExC,KAAK,EAAE,WAAW;aAClB,YAAY,EAAE,MAAM;gBADpB,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,MAAM;IAKrC,IAAI,MAAM,IAAI,MAAM,CAA8B;IAElD,IAAI,IAAI,IAAI,MAAM,CAAoD;IAEtE,SAAS,IAAI,sBAAsB;IAMnC,OAAO,IAAI,sBAAsB;IAMjC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAE9B,OAAO,CAAC,KAAK,EAAE,sBAAsB,GAAG,sBAAsB,GAAG,IAAI;IAOrE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAsE;IAElG,IAAI,UAAU,eAAqC;CACnD;AAED,qBAAa,0BAA2B,SAAQ,cAAc;aAc5C,SAAS,EAAE,SAAS,cAAc,EAAE;IAbrD,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,cAAc;IAUrD,QAAQ,CAAC,MAAM,SAA8D;gBAG5D,SAAS,EAAE,SAAS,cAAc,EAAE;IAKrD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqE;IAEjG,IAAI,UAAU,eAAqC;CACnD;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAWxF"}
@@ -1,125 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.ConcatenatedStringFragment = exports.OriginalStringFragment = exports.LiteralStringFragment = exports.StringFragment = void 0;
8
- exports.pushFragment = pushFragment;
9
- const lazy_1 = require("../../../../../util/vs/base/common/lazy");
10
- const stringEdit_1 = require("../../../../../util/vs/editor/common/core/edits/stringEdit");
11
- const offsetRange_1 = require("../../../../../util/vs/editor/common/core/ranges/offsetRange");
12
- const textLength_1 = require("../../../../../util/vs/editor/common/core/text/textLength");
13
- class StringFragment {
14
- toString() { return this.text; }
15
- toEditFromOriginal(originalLength) {
16
- const replacements = [];
17
- let lastOriginalIdx = 0;
18
- let text = '';
19
- function emit(originalPos) {
20
- if (lastOriginalIdx !== originalPos || text.length > 0) {
21
- replacements.push(new stringEdit_1.StringReplacement(new offsetRange_1.OffsetRange(lastOriginalIdx, originalPos), text));
22
- text = '';
23
- }
24
- }
25
- function process(fragment) {
26
- if (fragment instanceof ConcatenatedStringFragment) {
27
- for (const f of fragment.fragments) {
28
- process(f);
29
- }
30
- }
31
- else if (fragment instanceof LiteralStringFragment) {
32
- text += fragment.text;
33
- }
34
- else if (fragment instanceof OriginalStringFragment) {
35
- emit(fragment.range.start);
36
- lastOriginalIdx = fragment.range.endExclusive;
37
- }
38
- }
39
- process(this);
40
- emit(originalLength);
41
- return new stringEdit_1.StringEdit(replacements);
42
- }
43
- }
44
- exports.StringFragment = StringFragment;
45
- class LiteralStringFragment extends StringFragment {
46
- constructor(text) {
47
- super();
48
- this.text = text;
49
- this._textLength = new lazy_1.Lazy(() => textLength_1.TextLength.ofText(this.text));
50
- }
51
- get length() { return this.text.length; }
52
- get textLength() { return this._textLength.value; }
53
- }
54
- exports.LiteralStringFragment = LiteralStringFragment;
55
- class OriginalStringFragment extends StringFragment {
56
- constructor(range, originalText) {
57
- super();
58
- this.range = range;
59
- this.originalText = originalText;
60
- this._textLength = new lazy_1.Lazy(() => textLength_1.TextLength.ofSubstr(this.originalText, this.range));
61
- }
62
- get length() { return this.range.length; }
63
- get text() { return this.range.substring(this.originalText); }
64
- trimStart() {
65
- const trimmed = this.text.trimStart();
66
- if (trimmed.length === this.length) {
67
- return this;
68
- }
69
- return new OriginalStringFragment(new offsetRange_1.OffsetRange(this.range.endExclusive - trimmed.length, this.range.endExclusive), this.originalText);
70
- }
71
- trimEnd() {
72
- const trimmed = this.text.trimEnd();
73
- if (trimmed.length === this.length) {
74
- return this;
75
- }
76
- return new OriginalStringFragment(new offsetRange_1.OffsetRange(this.range.start, this.range.start + trimmed.length), this.originalText);
77
- }
78
- startsWith(str) { return this.text.startsWith(str); }
79
- endsWith(str) { return this.text.endsWith(str); }
80
- tryJoin(other) {
81
- if (this.range.endExclusive === other.range.start) {
82
- return new OriginalStringFragment(new offsetRange_1.OffsetRange(this.range.start, other.range.endExclusive), this.originalText);
83
- }
84
- return null;
85
- }
86
- get textLength() { return this._textLength.value; }
87
- }
88
- exports.OriginalStringFragment = OriginalStringFragment;
89
- class ConcatenatedStringFragment extends StringFragment {
90
- static from(result) {
91
- if (result.length === 0) {
92
- return new LiteralStringFragment('');
93
- }
94
- if (result.length === 1) {
95
- return result[0];
96
- }
97
- return new ConcatenatedStringFragment(result);
98
- }
99
- constructor(fragments) {
100
- super();
101
- this.fragments = fragments;
102
- this.length = this.fragments.reduce((prev, cur) => prev + cur.length, 0);
103
- this._textLength = new lazy_1.Lazy(() => textLength_1.TextLength.sum(this.fragments, f => f.textLength));
104
- }
105
- get text() {
106
- return this.fragments.map(f => f.text).join('');
107
- }
108
- get textLength() { return this._textLength.value; }
109
- }
110
- exports.ConcatenatedStringFragment = ConcatenatedStringFragment;
111
- function pushFragment(fragments, fragment) {
112
- if (fragment.length === 0) {
113
- return;
114
- }
115
- const last = fragments[fragments.length - 1];
116
- if (last && last instanceof OriginalStringFragment && fragment instanceof OriginalStringFragment) {
117
- const joined = last.tryJoin(fragment);
118
- if (joined) {
119
- fragments[fragments.length - 1] = joined;
120
- return;
121
- }
122
- }
123
- fragments.push(fragment);
124
- }
125
- //# sourceMappingURL=fragments.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fragments.js","sourceRoot":"","sources":["../../../../../../../../src/_internal/extension/prompts/node/inline/summarizedDocument/fragments.ts"],"names":[],"mappings":"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"}
@@ -1,60 +0,0 @@
1
- import { AbstractDocument } from '../../../../../platform/editing/common/abstractText';
2
- import { OverlayNode } from '../../../../../platform/parser/node/nodes';
3
- import { StringEdit } from '../../../../../util/vs/editor/common/core/edits/stringEdit';
4
- import { OffsetRange } from '../../../../../util/vs/editor/common/core/ranges/offsetRange';
5
- import { Range } from '../../../../../util/common/test/shims/vscodeTypesShim';
6
- import { IAstVisualization } from '../visualization';
7
- import { ProjectedText } from './projectedText';
8
- export interface IDocumentToSummarize<TDocument extends AbstractDocument> {
9
- document: TDocument;
10
- selection: Range | undefined;
11
- overlayNodeRoot: OverlayNode;
12
- }
13
- export interface ISummarizedDocumentSettings<TDocument extends AbstractDocument> {
14
- /**
15
- * Custom cost function. Return `false` to make sure a node is removed
16
- */
17
- costFnOverride?: ((node: RemovableNode, currentCost: number, document: TDocument) => number | false) | ICostFnFactory<TDocument>;
18
- /**
19
- * If set to true, summarization tries to preserve type checking, e.g. by not removing important imports or removing used method signatures.
20
- */
21
- tryPreserveTypeChecking?: boolean;
22
- /**
23
- * If set to true, summarization always uses ellipsis for elisions, like in between sibling AST nodes.
24
- */
25
- alwaysUseEllipsisForElisions?: boolean;
26
- /**
27
- * The style for line numbers in the summarized document.
28
- */
29
- lineNumberStyle?: SummarizedDocumentLineNumberStyle;
30
- }
31
- export interface ICostFnFactory<TDocument extends AbstractDocument> {
32
- createCostFn(doc: TDocument): (node: RemovableNode, currentCost: number) => number | false;
33
- }
34
- export declare class RemovableNode {
35
- readonly parent: RemovableNode | undefined;
36
- private readonly overlayNode;
37
- readonly range: OffsetRange;
38
- readonly children: readonly RemovableNode[];
39
- private readonly _document;
40
- constructor(parent: RemovableNode | undefined, overlayNode: OverlayNode, range: OffsetRange, children: readonly RemovableNode[], _document: AbstractDocument);
41
- get kind(): string;
42
- get text(): string;
43
- }
44
- export declare class ProjectedDocument<TDocument extends AbstractDocument = AbstractDocument> extends ProjectedText {
45
- readonly baseDocument: TDocument;
46
- constructor(baseDocument: TDocument, edits: StringEdit);
47
- getLanguageId(this: ProjectedDocument<AbstractDocument & {
48
- languageId: string;
49
- }>): string;
50
- }
51
- export interface IProjectedDocumentDebugInfo extends ProjectedText {
52
- getVisualization?(): IAstVisualization;
53
- }
54
- export declare function summarizeDocumentsSyncImpl<TDocument extends AbstractDocument>(charLimit: number, settings: ISummarizedDocumentSettings<TDocument>, docs: IDocumentToSummarize<TDocument>[]): ProjectedDocument<TDocument>[];
55
- export declare enum SummarizedDocumentLineNumberStyle {
56
- None = 0,
57
- OmittedRanges = 1,
58
- Full = 2
59
- }
60
- //# sourceMappingURL=implementation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"implementation.d.ts","sourceRoot":"","sources":["../../../../../../../../src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qDAAqD,CAAC;AACvF,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAIxE,OAAO,EAAE,UAAU,EAAqB,MAAM,4DAA4D,CAAC;AAE3G,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAC;AAG3F,OAAO,EAAE,KAAK,EAAE,MAAM,uDAAuD,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAA4B,MAAM,kBAAkB,CAAC;AAE/E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKhD,MAAM,WAAW,oBAAoB,CAAC,SAAS,SAAS,gBAAgB;IACvE,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,KAAK,GAAG,SAAS,CAAC;IAC7B,eAAe,EAAE,WAAW,CAAC;CAC7B;AAED,MAAM,WAAW,2BAA2B,CAAC,SAAS,SAAS,gBAAgB;IAE9E;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,KAAK,MAAM,GAAG,KAAK,CAAC,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAEjI;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;OAEG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;IAEvC;;OAEG;IACH,eAAe,CAAC,EAAE,iCAAiC,CAAC;CACpD;AAED,MAAM,WAAW,cAAc,CAAC,SAAS,SAAS,gBAAgB;IACjE,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,CAAC,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,KAAK,MAAM,GAAG,KAAK,CAAC;CAC3F;AAED,qBAAa,aAAa;aAER,MAAM,EAAE,aAAa,GAAG,SAAS;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW;aACZ,KAAK,EAAE,WAAW;aAClB,QAAQ,EAAE,SAAS,aAAa,EAAE;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAJV,MAAM,EAAE,aAAa,GAAG,SAAS,EAChC,WAAW,EAAE,WAAW,EACzB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,SAAS,aAAa,EAAE,EACjC,SAAS,EAAE,gBAAgB;IAG7C,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;CACD;AAED,qBAAa,iBAAiB,CAAC,SAAS,SAAS,gBAAgB,GAAG,gBAAgB,CAAE,SAAQ,aAAa;aAEzF,YAAY,EAAE,SAAS;gBAAvB,YAAY,EAAE,SAAS,EACvC,KAAK,EAAE,UAAU;IAKlB,aAAa,CAAC,IAAI,EAAE,iBAAiB,CAAC,gBAAgB,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,MAAM;CAGzF;AAED,MAAM,WAAW,2BAA4B,SAAQ,aAAa;IACjE,gBAAgB,CAAC,IAAI,iBAAiB,CAAC;CACvC;AAED,wBAAgB,0BAA0B,CAAC,SAAS,SAAS,gBAAgB,EAC5E,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,2BAA2B,CAAC,SAAS,CAAC,EAChD,IAAI,EAAE,oBAAoB,CAAC,SAAS,CAAC,EAAE,GACrC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAuLhC;AA0GD,oBAAY,iCAAiC;IAC5C,IAAI,IAAA;IACJ,aAAa,IAAA;IACb,IAAI,IAAA;CACJ"}
@@ -1,416 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SummarizedDocumentLineNumberStyle = exports.ProjectedDocument = exports.RemovableNode = void 0;
4
- exports.summarizeDocumentsSyncImpl = summarizeDocumentsSyncImpl;
5
- const arrays_1 = require("../../../../../util/common/arrays");
6
- const arrays_2 = require("../../../../../util/vs/base/common/arrays");
7
- const cache_1 = require("../../../../../util/vs/base/common/cache");
8
- const stringEdit_1 = require("../../../../../util/vs/editor/common/core/edits/stringEdit");
9
- const position_1 = require("../../../../../util/vs/editor/common/core/position");
10
- const offsetRange_1 = require("../../../../../util/vs/editor/common/core/ranges/offsetRange");
11
- const positionToOffset_1 = require("../../../../../util/vs/editor/common/core/text/positionToOffset");
12
- const textLength_1 = require("../../../../../util/vs/editor/common/core/text/textLength");
13
- const visualization_1 = require("../visualization");
14
- const fragments_1 = require("./fragments");
15
- const projectedText_1 = require("./projectedText");
16
- class RemovableNode {
17
- constructor(parent, overlayNode, range, children, _document) {
18
- this.parent = parent;
19
- this.overlayNode = overlayNode;
20
- this.range = range;
21
- this.children = children;
22
- this._document = _document;
23
- }
24
- get kind() {
25
- return this.overlayNode.kind;
26
- }
27
- get text() {
28
- return this._document.getTextInOffsetRange(this.range);
29
- }
30
- }
31
- exports.RemovableNode = RemovableNode;
32
- class ProjectedDocument extends projectedText_1.ProjectedText {
33
- constructor(baseDocument, edits) {
34
- super(baseDocument.getText(), edits);
35
- this.baseDocument = baseDocument;
36
- }
37
- getLanguageId() {
38
- return this.baseDocument.languageId;
39
- }
40
- }
41
- exports.ProjectedDocument = ProjectedDocument;
42
- function summarizeDocumentsSyncImpl(charLimit, settings, docs) {
43
- const rootMarkedNodes = [];
44
- const bestSummarizationResultsPerDocIdx = [];
45
- const allNodesWithScores = [];
46
- for (let i = 0; i < docs.length; i++) {
47
- const { document, overlayNodeRoot, selection } = docs[i];
48
- const text = document.getText();
49
- const offsetSelection = selection ? document.rangeToOffsetRange(selection) : undefined;
50
- const removableNodeRoot = createRemovableNodeFromOverlayNode(overlayNodeRoot, document);
51
- const rootTextNode = TextNode.fromRootNode(removableNodeRoot, document);
52
- const rootMarkedNode = SurvivingTextNode.fromNode(rootTextNode, !!settings.tryPreserveTypeChecking, !!settings.alwaysUseEllipsisForElisions, settings.lineNumberStyle ?? SummarizedDocumentLineNumberStyle.None);
53
- if (offsetSelection) {
54
- // mark all leaf nodes that intersect userSelection
55
- rootMarkedNode.visitAll(node => {
56
- if (!node.node.range.intersectsOrTouches(offsetSelection)) {
57
- return false;
58
- }
59
- if (node.node.children.length === 0) {
60
- node.markAsSurviving();
61
- }
62
- return true;
63
- });
64
- }
65
- rootMarkedNodes.push(rootMarkedNode);
66
- bestSummarizationResultsPerDocIdx.push(rootMarkedNode.getTextFragment());
67
- const distanceScoreToSelection = (node) => {
68
- if (!offsetSelection) {
69
- return 0;
70
- }
71
- if (node.range.endExclusive < offsetSelection.start) {
72
- // this node is above
73
- return offsetSelection.start - node.range.endExclusive;
74
- }
75
- if (node.range.start > offsetSelection.endExclusive) {
76
- // this node is below
77
- return 3 * (node.range.start - offsetSelection.endExclusive); // we will punish code that is below
78
- }
79
- // this node is intersecting
80
- return 0;
81
- };
82
- const scopeDistanceDown = new cache_1.CachedFunction(node => {
83
- if (!offsetSelection) {
84
- return 0;
85
- }
86
- if (node.children.length === 0) {
87
- return node.range.intersectsOrTouches(offsetSelection) ? 0 : Number.MAX_SAFE_INTEGER;
88
- }
89
- else {
90
- return (0, arrays_1.min)(node.children.map(n => scopeDistanceDown.get(n))) + 1;
91
- }
92
- });
93
- const scopeDistance = new cache_1.CachedFunction(node => {
94
- const parentScopeDistance = node.parent ? scopeDistance.get(node.parent) : Number.MAX_SAFE_INTEGER;
95
- const nodeScopeDistanceDown = scopeDistanceDown.get(node);
96
- return Math.min(parentScopeDistance, nodeScopeDistanceDown);
97
- });
98
- const tryPreserveTypeChecking = !!settings.tryPreserveTypeChecking;
99
- let costFn = node => {
100
- if (tryPreserveTypeChecking && node.node?.kind === 'import_statement') {
101
- return 0;
102
- }
103
- return 100 * scopeDistance.get(node)
104
- + node.depth
105
- + 10 * (distanceScoreToSelection(node) / text.length);
106
- };
107
- const costFnOverride = typeof settings.costFnOverride === 'object' ? settings.costFnOverride.createCostFn(document) : settings.costFnOverride;
108
- if (costFnOverride !== undefined) {
109
- const oldCostFn = costFn;
110
- costFn = (n) => {
111
- const currentScore = oldCostFn(n);
112
- if (currentScore === false) {
113
- return false;
114
- }
115
- if (!n.node) {
116
- return currentScore;
117
- }
118
- return costFnOverride(n.node, currentScore, document);
119
- };
120
- }
121
- const allNodes = rootMarkedNode.getDescendantsAndSelf();
122
- for (const node of allNodes) {
123
- if (!node.node.node) {
124
- continue;
125
- }
126
- const cost = costFn(node.node);
127
- if (cost === false) {
128
- continue;
129
- }
130
- allNodesWithScores.push({
131
- docIdx: i,
132
- node,
133
- cost
134
- });
135
- }
136
- }
137
- allNodesWithScores.sort((0, arrays_2.compareBy)(n => n.cost, arrays_2.numberComparator));
138
- const getLineNumberText = (lineNumber) => {
139
- return `${lineNumber}: `;
140
- };
141
- for (const { node, docIdx } of allNodesWithScores) {
142
- node.markAsSurviving();
143
- // total length of all nodes
144
- let totalLength = (0, arrays_2.sumBy)(rootMarkedNodes, c => c.getTextFragment().length);
145
- if (settings.lineNumberStyle === SummarizedDocumentLineNumberStyle.Full) {
146
- const textLen = textLength_1.TextLength.sum(rootMarkedNodes, c => c.getTextFragment().textLength);
147
- const maxLineNumber = docs[docIdx].document.getLineCount();
148
- const totalLineNumberChars = textLen.lineCount * getLineNumberText(maxLineNumber).length; // This is an upper bound approximation.
149
- totalLength += totalLineNumberChars;
150
- }
151
- if (totalLength > charLimit) {
152
- break;
153
- }
154
- bestSummarizationResultsPerDocIdx[docIdx] = rootMarkedNodes[docIdx].getTextFragment();
155
- }
156
- const result = [];
157
- for (let i = 0; i < bestSummarizationResultsPerDocIdx.length; i++) {
158
- const bestSummarizationResult = bestSummarizationResultsPerDocIdx[i];
159
- const { document } = docs[i];
160
- let e = bestSummarizationResult.toEditFromOriginal(document.getText().length);
161
- if (settings.lineNumberStyle === SummarizedDocumentLineNumberStyle.Full) {
162
- const summarizedDoc = e.apply(document.getText());
163
- const t = new positionToOffset_1.PositionOffsetTransformer(summarizedDoc);
164
- const lineNumberReplacements = [];
165
- const lineCount = t.textLength.lineCount;
166
- for (let curLine = 1; curLine <= lineCount; curLine++) {
167
- const offset = t.getOffset(new position_1.Position(curLine, 1));
168
- const offsetBefore = e.applyInverseToOffset(offset);
169
- const pos = document.getPositionAtOffset(offsetBefore);
170
- lineNumberReplacements.push(new stringEdit_1.StringReplacement(offsetRange_1.OffsetRange.emptyAt(offset), getLineNumberText(pos.line + 1)));
171
- }
172
- e = e.compose(new stringEdit_1.StringEdit(lineNumberReplacements));
173
- }
174
- const projectedDoc = new ProjectedDocument(document, e);
175
- const r = projectedDoc;
176
- const rootMarkedNode = rootMarkedNodes[i];
177
- r.getVisualization = () => ({
178
- ...{ $fileExtension: 'ast.w' },
179
- source: {
180
- value: projectedDoc.originalText,
181
- decorations: (0, visualization_1.subtractRange)(offsetRange_1.OffsetRange.ofLength(projectedDoc.originalText.length), projectedDoc.edits.replacements.map(e => e.replaceRange)).map(r => ({
182
- range: [r.start, r.endExclusive],
183
- color: 'lime',
184
- }))
185
- },
186
- root: (0, visualization_1.toAstNode)(rootMarkedNode, n => ({
187
- label: (n.node.node?.kind || 'unknown') + ` (${allNodesWithScores.find(nws => nws.node === n)?.cost})`,
188
- range: n.node.range,
189
- children: n.childNodes,
190
- isMarked: n['_surviving'],
191
- }))
192
- });
193
- result.push(projectedDoc);
194
- }
195
- return result;
196
- }
197
- function createRemovableNodeFromOverlayNode(node, document, parent = undefined) {
198
- const range = new offsetRange_1.OffsetRange(node.startIndex, node.endIndex);
199
- const children = [];
200
- const result = new RemovableNode(parent, node, range, children, document);
201
- for (const n of node.children) {
202
- children.push(createRemovableNodeFromOverlayNode(n, document, result));
203
- }
204
- return result;
205
- }
206
- /**
207
- * A dense representation of the text in a document.
208
- * Based on overlay nodes.
209
- *
210
- * **Dense**: every character is contained by some leaf node.
211
- */
212
- class TextNode {
213
- static fromRootNode(node, document) {
214
- const fullRange = new offsetRange_1.OffsetRange(0, document.length);
215
- if (node.range.equals(fullRange)) {
216
- return TextNode.fromNode(node, document);
217
- }
218
- // The root node does not cover the entire document!
219
- // So we have to create a virtual root that actually does cover the entire document.
220
- const startGap = new offsetRange_1.OffsetRange(0, node.range.start);
221
- const endGap = new offsetRange_1.OffsetRange(node.range.endExclusive, document.length);
222
- const children = [];
223
- const rootNode = new TextNode(undefined, fullRange, children, 0, null, document);
224
- if (!startGap.isEmpty) {
225
- children.push(new TextNode(undefined, startGap, [], 0, rootNode, document));
226
- }
227
- children.push(TextNode.fromNode(node, document, 1, null));
228
- if (!endGap.isEmpty) {
229
- children.push(new TextNode(undefined, endGap, [], 0, rootNode, document));
230
- }
231
- return rootNode;
232
- }
233
- static fromNode(node, document, depth = 0, parent = null) {
234
- const children = [];
235
- const result = new TextNode(node, node.range, children, depth, parent, document);
236
- if (node.children.length > 0) {
237
- let lastEnd = node.range.start;
238
- for (const n of node.children) {
239
- const gap = new offsetRange_1.OffsetRange(lastEnd, n.range.start);
240
- if (!gap.isEmpty) {
241
- children.push(new TextNode(undefined, gap, [], depth, result, document));
242
- }
243
- children.push(TextNode.fromNode(n, document, depth + 1, result));
244
- lastEnd = n.range.endExclusive;
245
- }
246
- const gap = new offsetRange_1.OffsetRange(lastEnd, node.range.endExclusive);
247
- if (!gap.isEmpty) {
248
- children.push(new TextNode(undefined, gap, [], depth, result, document));
249
- }
250
- }
251
- return result;
252
- }
253
- constructor(node, range, children, depth, parent, document) {
254
- this.node = node;
255
- this.range = range;
256
- this.children = children;
257
- this.depth = depth;
258
- this.parent = parent;
259
- this.document = document;
260
- }
261
- getLeadingWs() {
262
- return getLeadingWs(this.document.getText(), this.range);
263
- }
264
- getIndentation() {
265
- let indentation = this.getLeadingWs();
266
- const lastNewLineIdx = indentation.lastIndexOf('\n');
267
- if (lastNewLineIdx !== -1) {
268
- indentation = indentation.substring(lastNewLineIdx + 1);
269
- }
270
- return indentation;
271
- }
272
- getTrailingWs() {
273
- return getTrailingWs(this.document.getText(), this.range);
274
- }
275
- }
276
- function getLeadingWs(str, range) {
277
- const val = range.substring(str);
278
- const trimmed = val.length - val.trimStart().length;
279
- const ws = val.substring(0, trimmed);
280
- return ws;
281
- }
282
- function getTrailingWs(str, range) {
283
- const val = range.substring(str);
284
- const trimmed = val.length - val.trimEnd().length;
285
- const ws = val.substring(val.length - trimmed);
286
- return ws;
287
- }
288
- var SummarizedDocumentLineNumberStyle;
289
- (function (SummarizedDocumentLineNumberStyle) {
290
- SummarizedDocumentLineNumberStyle[SummarizedDocumentLineNumberStyle["None"] = 0] = "None";
291
- SummarizedDocumentLineNumberStyle[SummarizedDocumentLineNumberStyle["OmittedRanges"] = 1] = "OmittedRanges";
292
- SummarizedDocumentLineNumberStyle[SummarizedDocumentLineNumberStyle["Full"] = 2] = "Full";
293
- })(SummarizedDocumentLineNumberStyle || (exports.SummarizedDocumentLineNumberStyle = SummarizedDocumentLineNumberStyle = {}));
294
- class SurvivingTextNode {
295
- static fromNode(node, tryPreserveTypeChecking, alwaysUseEllipsisForElisions, lineNumberStyle) {
296
- return SurvivingTextNode.fromNodeParent(node, null, tryPreserveTypeChecking, alwaysUseEllipsisForElisions, lineNumberStyle);
297
- }
298
- static fromNodeParent(node, parent, tryPreserveTypeChecking, alwaysUseEllipsisForElisions, lineNumberStyle) {
299
- const children = [];
300
- const result = new SurvivingTextNode(node, parent, children, tryPreserveTypeChecking, alwaysUseEllipsisForElisions, lineNumberStyle);
301
- for (const child of node.children) {
302
- const childNode = SurvivingTextNode.fromNodeParent(child, result, tryPreserveTypeChecking, alwaysUseEllipsisForElisions, lineNumberStyle);
303
- children.push(childNode);
304
- }
305
- return result;
306
- }
307
- constructor(node, parent, childNodes, _tryPreserveTypeChecking, _alwaysUseEllipsisForElisions, _lineNumberStyle) {
308
- this.node = node;
309
- this.parent = parent;
310
- this.childNodes = childNodes;
311
- this._tryPreserveTypeChecking = _tryPreserveTypeChecking;
312
- this._alwaysUseEllipsisForElisions = _alwaysUseEllipsisForElisions;
313
- this._lineNumberStyle = _lineNumberStyle;
314
- this._surviving = false;
315
- this._textFragment = null;
316
- }
317
- visitAll(fn) {
318
- if (!fn(this)) {
319
- return;
320
- }
321
- for (const child of this.childNodes) {
322
- child.visitAll(fn);
323
- }
324
- }
325
- markAsSurviving() {
326
- if (this._surviving) {
327
- return;
328
- }
329
- this._surviving = true;
330
- if (this.parent) {
331
- this.parent.markAsSurviving();
332
- }
333
- this.invalidate();
334
- }
335
- invalidate() {
336
- if (!this._textFragment) {
337
- return;
338
- }
339
- this._textFragment = null;
340
- if (this.parent) {
341
- this.parent.invalidate();
342
- }
343
- }
344
- getTextFragment() {
345
- if (!this._textFragment) {
346
- this._textFragment = this._computeSummarization();
347
- }
348
- return this._textFragment;
349
- }
350
- _computeSummarization() {
351
- if (this.childNodes.length === 0 && (this._surviving || !this.node.node)) {
352
- return new fragments_1.OriginalStringFragment(this.node.range, this.node.document.getText());
353
- }
354
- if (!this._surviving) {
355
- return new fragments_1.LiteralStringFragment('');
356
- }
357
- const groups = Array.from((0, arrays_2.groupAdjacentBy)(this.childNodes.map(n => ({ node: n, fragment: n.getTextFragment() })), (f1, f2) => (f1.fragment.length === 0) === (f2.fragment.length === 0)));
358
- const getOmittedMessage = (omittedRange) => {
359
- if (this._lineNumberStyle === SummarizedDocumentLineNumberStyle.OmittedRanges) {
360
- const range = this.node.document.getPositionOffsetTransformer().getRange(omittedRange);
361
- if (range.startLineNumber !== range.endLineNumber) {
362
- return `/* Lines ${range.startLineNumber}-${range.endLineNumber} omitted */`;
363
- }
364
- return `/* Line ${range.startLineNumber} omitted */`;
365
- }
366
- return this._tryPreserveTypeChecking ? '/* ... */' : '…';
367
- };
368
- for (let i = 0; i < groups.length; i++) {
369
- // in one group, all elements either are all empty or non-empty. Also, no group is empty.
370
- const g = groups[i];
371
- const isEmpty = g[0].fragment.length === 0;
372
- if (isEmpty && i > 0 && i < groups.length - 1) {
373
- // All our fragments are empty.
374
- const prev = groups[i - 1].at(-1); // Non-empty before us
375
- const next = groups[i + 1].at(0); // Non-empty after us
376
- const fullRange = g.at(0).node.node.range.join(g.at(-1).node.node.range);
377
- if (prev.fragment instanceof fragments_1.OriginalStringFragment && next.fragment instanceof fragments_1.OriginalStringFragment) {
378
- const startTrimmed = prev.fragment.trimEnd();
379
- const endTrimmed = next.fragment.trimStart();
380
- if (startTrimmed.endsWith('{') && endTrimmed.startsWith('}')) {
381
- groups[i - 1][groups[i - 1].length - 1].fragment = startTrimmed;
382
- g.length = 1;
383
- g[0].fragment = new fragments_1.LiteralStringFragment(getOmittedMessage(fullRange));
384
- groups[i + 1][0].fragment = endTrimmed;
385
- continue;
386
- }
387
- }
388
- if (this._alwaysUseEllipsisForElisions || this._lineNumberStyle === SummarizedDocumentLineNumberStyle.OmittedRanges) {
389
- const indentation = g.at(0).node.node.getIndentation();
390
- const end = g.at(-1).node.node.getTrailingWs();
391
- g.length = 1;
392
- g[0].fragment = new fragments_1.LiteralStringFragment(indentation + getOmittedMessage(fullRange) + end);
393
- }
394
- }
395
- }
396
- const result = [];
397
- for (const group of groups) {
398
- for (const g of group) {
399
- (0, fragments_1.pushFragment)(result, g.fragment);
400
- }
401
- }
402
- return fragments_1.ConcatenatedStringFragment.from(result);
403
- }
404
- getDescendantsAndSelf() {
405
- const result = [];
406
- this._getDescendantsAndSelf(result);
407
- return result;
408
- }
409
- _getDescendantsAndSelf(result) {
410
- result.push(this);
411
- for (const child of this.childNodes) {
412
- child._getDescendantsAndSelf(result);
413
- }
414
- }
415
- }
416
- //# sourceMappingURL=implementation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"implementation.js","sourceRoot":"","sources":["../../../../../../../../src/_internal/extension/prompts/node/inline/summarizedDocument/implementation.ts"],"names":[],"mappings":"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"}