@codingame/monaco-vscode-api 18.4.0 → 19.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (664) hide show
  1. package/missing-services.js +1217 -2932
  2. package/monaco.js +0 -3
  3. package/package.json +8 -8
  4. package/services.d.ts +12 -8
  5. package/services.js +12 -7
  6. package/vscode/product.json.js +1 -1
  7. package/vscode/src/vs/base/browser/dom.d.ts +83 -2
  8. package/vscode/src/vs/base/browser/dom.js +280 -3
  9. package/vscode/src/vs/base/browser/domStylesheets.d.ts +2 -0
  10. package/vscode/src/vs/base/browser/domStylesheets.js +11 -1
  11. package/vscode/src/vs/base/browser/markdownRenderer.d.ts +1 -0
  12. package/vscode/src/vs/base/browser/markdownRenderer.js +34 -18
  13. package/vscode/src/vs/base/browser/ui/button/button.js +4 -1
  14. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  15. package/vscode/src/vs/base/browser/ui/list/list.d.ts +1 -0
  16. package/vscode/src/vs/base/browser/ui/list/listView.d.ts +1 -1
  17. package/vscode/src/vs/base/browser/ui/list/listView.js +5 -5
  18. package/vscode/src/vs/base/browser/ui/list/listWidget.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/list/listWidget.js +5 -1
  20. package/vscode/src/vs/base/browser/ui/toggle/toggle.d.ts +3 -1
  21. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +21 -4
  22. package/vscode/src/vs/base/common/arrays.d.ts +0 -1
  23. package/vscode/src/vs/base/common/arrays.js +1 -6
  24. package/vscode/src/vs/base/common/async.d.ts +1 -0
  25. package/vscode/src/vs/base/common/async.js +2 -1
  26. package/vscode/src/vs/base/common/buffer.d.ts +1 -0
  27. package/vscode/src/vs/base/common/buffer.js +3 -0
  28. package/vscode/src/vs/base/common/codicons.d.ts +7 -0
  29. package/vscode/src/vs/base/common/codiconsLibrary.d.ts +7 -0
  30. package/vscode/src/vs/base/common/codiconsLibrary.js +7 -0
  31. package/vscode/src/vs/base/common/collections.d.ts +1 -0
  32. package/vscode/src/vs/base/common/collections.js +14 -1
  33. package/vscode/src/vs/base/common/color.js +2 -2
  34. package/vscode/src/vs/base/common/dataTransfer.d.ts +1 -1
  35. package/vscode/src/vs/base/common/decorators.d.ts +1 -1
  36. package/vscode/src/vs/base/common/event.d.ts +1 -1
  37. package/vscode/src/vs/base/common/glob.d.ts +1 -1
  38. package/vscode/src/vs/base/common/glob.js +2 -2
  39. package/vscode/src/vs/base/common/hotReloadHelpers.js +1 -1
  40. package/vscode/src/vs/base/common/iterator.d.ts +1 -1
  41. package/vscode/src/vs/base/common/network.d.ts +1 -0
  42. package/vscode/src/vs/base/common/network.js +1 -0
  43. package/vscode/src/vs/base/common/oauth.d.ts +34 -4
  44. package/vscode/src/vs/base/common/oauth.js +77 -6
  45. package/vscode/src/vs/base/common/observableInternal/index.d.ts +2 -2
  46. package/vscode/src/vs/base/common/observableInternal/logging/debugger/utils.js +8 -1
  47. package/vscode/src/vs/base/common/observableInternal/set.js +0 -1
  48. package/vscode/src/vs/base/common/performance.js +1 -1
  49. package/vscode/src/vs/base/common/product.d.ts +2 -1
  50. package/vscode/src/vs/base/common/types.d.ts +4 -8
  51. package/vscode/src/vs/base/common/types.js +3 -3
  52. package/vscode/src/vs/base/common/worker/webWorker.js +1 -1
  53. package/vscode/src/vs/editor/browser/config/migrateOptions.js +8 -0
  54. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.d.ts +2 -0
  55. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.js +18 -14
  56. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +5 -3
  57. package/vscode/src/vs/editor/browser/editorBrowser.d.ts +3 -1
  58. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.d.ts +3 -1
  59. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.js +5 -4
  60. package/vscode/src/vs/editor/browser/gpu/raster/glyphRasterizer.d.ts +3 -1
  61. package/vscode/src/vs/editor/browser/gpu/raster/glyphRasterizer.js +3 -3
  62. package/vscode/src/vs/editor/browser/gpu/viewGpuContext.js +2 -3
  63. package/vscode/src/vs/editor/browser/observableCodeEditor.d.ts +6 -0
  64. package/vscode/src/vs/editor/browser/observableCodeEditor.js +38 -1
  65. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +9 -1
  66. package/vscode/src/vs/editor/browser/services/bulkEditService.d.ts +2 -0
  67. package/vscode/src/vs/editor/browser/services/editorWorkerService.d.ts +4 -0
  68. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +18 -2
  69. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.d.ts +32 -0
  70. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.js +141 -0
  71. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.service.d.ts +11 -0
  72. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.service.js +6 -0
  73. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +2 -2
  74. package/vscode/src/vs/editor/browser/view/viewController.js +5 -1
  75. package/vscode/src/vs/editor/browser/view.d.ts +1 -1
  76. package/vscode/src/vs/editor/browser/view.js +5 -5
  77. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.d.ts +1 -1
  78. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +3 -3
  79. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLine.js +14 -6
  80. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLineOptions.d.ts +1 -0
  81. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLineOptions.js +3 -7
  82. package/vscode/src/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.js +12 -2
  83. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +4 -2
  84. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.d.ts +8 -2
  85. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +39 -9
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +12 -12
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.css +52 -49
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +15 -15
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +3 -1
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +2 -2
  91. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +7 -7
  92. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +5 -5
  93. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +1 -1
  94. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +7 -1
  95. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +1 -1
  96. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +7 -7
  97. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +5 -5
  98. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +2 -2
  99. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +5 -5
  100. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +54 -54
  101. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +173 -160
  102. package/vscode/src/vs/editor/common/config/editorOptions.js +645 -570
  103. package/vscode/src/vs/editor/common/config/fontInfo.js +1 -1
  104. package/vscode/src/vs/editor/common/core/2d/point.d.ts +5 -0
  105. package/vscode/src/vs/editor/common/core/2d/point.js +23 -0
  106. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +71 -71
  107. package/vscode/src/vs/editor/common/core/edits/edit.d.ts +6 -0
  108. package/vscode/src/vs/editor/common/core/edits/edit.js +41 -0
  109. package/vscode/src/vs/editor/common/core/edits/lineEdit.d.ts +17 -11
  110. package/vscode/src/vs/editor/common/core/edits/lineEdit.js +36 -9
  111. package/vscode/src/vs/editor/common/core/edits/stringEdit.d.ts +63 -16
  112. package/vscode/src/vs/editor/common/core/edits/stringEdit.js +205 -48
  113. package/vscode/src/vs/editor/common/core/edits/textEdit.d.ts +5 -1
  114. package/vscode/src/vs/editor/common/core/edits/textEdit.js +18 -2
  115. package/vscode/src/vs/editor/common/core/text/abstractText.d.ts +3 -1
  116. package/vscode/src/vs/editor/common/core/text/abstractText.js +10 -1
  117. package/vscode/src/vs/editor/common/core/text/getPositionOffsetTransformerFromTextModel.js +2 -1
  118. package/vscode/src/vs/editor/common/core/text/positionToOffset.d.ts +2 -28
  119. package/vscode/src/vs/editor/common/core/text/positionToOffset.js +11 -92
  120. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.d.ts +37 -0
  121. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.js +104 -0
  122. package/vscode/src/vs/editor/common/cursor/cursor.d.ts +3 -2
  123. package/vscode/src/vs/editor/common/cursor/cursor.js +24 -16
  124. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +3 -1
  125. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +1 -0
  126. package/vscode/src/vs/editor/common/diff/rangeMapping.js +11 -1
  127. package/vscode/src/vs/editor/common/editorCommon.d.ts +2 -1
  128. package/vscode/src/vs/editor/common/editorContextKeys.js +46 -46
  129. package/vscode/src/vs/editor/common/languages/defaultDocumentColorsComputer.js +1 -1
  130. package/vscode/src/vs/editor/common/languages/languageConfiguration.d.ts +5 -1
  131. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.d.ts +1 -0
  132. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +7 -1
  133. package/vscode/src/vs/editor/common/languages/modesRegistry.js +1 -1
  134. package/vscode/src/vs/editor/common/languages.d.ts +31 -27
  135. package/vscode/src/vs/editor/common/languages.js +57 -62
  136. package/vscode/src/vs/editor/common/model/editStack.d.ts +2 -1
  137. package/vscode/src/vs/editor/common/model/editStack.js +4 -3
  138. package/vscode/src/vs/editor/common/model/intervalTree.d.ts +2 -2
  139. package/vscode/src/vs/editor/common/model/intervalTree.js +24 -7
  140. package/vscode/src/vs/editor/common/model/textModel.d.ts +24 -10
  141. package/vscode/src/vs/editor/common/model/textModel.js +114 -53
  142. package/vscode/src/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js +1 -1
  143. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterSyntaxTokenBackend.d.ts +0 -3
  144. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterSyntaxTokenBackend.js +1 -13
  145. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.d.ts +2 -0
  146. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.js +13 -2
  147. package/vscode/src/vs/editor/common/model.d.ts +8 -2
  148. package/vscode/src/vs/editor/common/services/editorWebWorker.d.ts +4 -0
  149. package/vscode/src/vs/editor/common/services/editorWebWorker.js +14 -0
  150. package/vscode/src/vs/editor/common/services/editorWorker.service.d.ts +4 -0
  151. package/vscode/src/vs/editor/common/services/findSectionHeaders.js +7 -0
  152. package/vscode/src/vs/editor/common/services/languageFeatures.service.d.ts +1 -2
  153. package/vscode/src/vs/editor/common/services/languageFeaturesService.d.ts +1 -2
  154. package/vscode/src/vs/editor/common/services/languageFeaturesService.js +0 -1
  155. package/vscode/src/vs/editor/common/services/model.service.d.ts +2 -1
  156. package/vscode/src/vs/editor/common/services/modelService.d.ts +2 -1
  157. package/vscode/src/vs/editor/common/services/modelService.js +3 -2
  158. package/vscode/src/vs/editor/common/services/textResourceConfiguration.service.d.ts +1 -1
  159. package/vscode/src/vs/editor/common/standalone/standaloneEnums.d.ts +159 -157
  160. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +160 -159
  161. package/vscode/src/vs/editor/common/standaloneStrings.js +50 -49
  162. package/vscode/src/vs/editor/common/textModelEditReason.d.ts +94 -12
  163. package/vscode/src/vs/editor/common/textModelEditReason.js +86 -20
  164. package/vscode/src/vs/editor/common/textModelEvents.d.ts +24 -0
  165. package/vscode/src/vs/editor/common/textModelEvents.js +33 -1
  166. package/vscode/src/vs/editor/common/tokens/lineTokens.d.ts +22 -1
  167. package/vscode/src/vs/editor/common/tokens/lineTokens.js +79 -2
  168. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +2 -2
  169. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.d.ts +5 -1
  170. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.js +10 -4
  171. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.d.ts +3 -1
  172. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +39 -12
  173. package/vscode/src/vs/editor/common/viewModel/viewModelLines.d.ts +3 -3
  174. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +6 -6
  175. package/vscode/src/vs/editor/common/viewModel.d.ts +3 -1
  176. package/vscode/src/vs/editor/common/viewModel.js +2 -1
  177. package/vscode/src/vs/editor/common/viewModelEventDispatcher.d.ts +11 -3
  178. package/vscode/src/vs/editor/common/viewModelEventDispatcher.js +14 -1
  179. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
  180. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
  181. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
  182. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
  183. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +20 -20
  184. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +3 -1
  185. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +29 -29
  186. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
  187. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
  188. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
  189. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
  190. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
  191. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.css +2 -7
  192. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  193. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  194. package/vscode/src/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js +3 -3
  195. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +1 -1
  196. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
  197. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +6 -6
  198. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.d.ts +1 -1
  199. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +9 -5
  200. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +10 -10
  201. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
  202. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +4 -4
  203. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +9 -9
  204. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -8
  205. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  206. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +2 -2
  207. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +1 -1
  208. package/vscode/src/vs/editor/contrib/find/browser/findController.js +16 -16
  209. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +29 -29
  210. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +20 -20
  211. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +9 -9
  212. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
  213. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  214. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
  215. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +14 -14
  216. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -39
  217. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  218. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +3 -3
  219. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
  220. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  221. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
  222. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
  223. package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +10 -5
  224. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +3 -3
  225. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +2 -2
  226. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
  227. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +24 -24
  228. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +9 -9
  229. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +10 -6
  230. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
  231. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.d.ts +0 -1
  232. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +22 -47
  233. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +8 -8
  234. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +19 -19
  235. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +11 -11
  236. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +1 -1
  237. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
  238. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.d.ts +2 -2
  239. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +11 -12
  240. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +3 -2
  241. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/animation.d.ts +7 -0
  242. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/animation.js +5 -5
  243. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/changeRecorder.d.ts +3 -1
  244. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/changeRecorder.js +35 -30
  245. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/ghostText.js +2 -0
  246. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/graph.d.ts +9 -0
  247. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/graph.js +66 -0
  248. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.d.ts +12 -4
  249. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +144 -100
  250. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.d.ts +7 -5
  251. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +100 -49
  252. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineEdit.d.ts +3 -3
  253. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.d.ts +4 -1
  254. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +37 -29
  255. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.d.ts +39 -13
  256. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +150 -162
  257. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/structuredLogger.d.ts +0 -1
  258. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +2 -1
  259. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.d.ts +2 -0
  260. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +12 -0
  261. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineCompletionsView.js +9 -5
  262. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +13 -10
  263. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +2 -3
  264. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditWithChanges.d.ts +5 -5
  265. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditWithChanges.js +2 -2
  266. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.d.ts +5 -4
  267. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.js +5 -3
  268. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.d.ts +0 -1
  269. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +103 -62
  270. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewInterface.d.ts +25 -3
  271. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewInterface.js +13 -1
  272. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCollapsedView.js +1 -2
  273. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js +4 -6
  274. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.d.ts +1 -0
  275. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.js +7 -4
  276. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.d.ts +1 -0
  277. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js +16 -12
  278. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.d.ts +3 -4
  279. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +34 -34
  280. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.d.ts +1 -0
  281. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.js +13 -8
  282. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +6 -7
  283. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.d.ts +2 -1
  284. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.js +20 -2
  285. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +20 -20
  286. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js +4 -11
  287. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/view.css +10 -7
  288. package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
  289. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  290. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +30 -30
  291. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  292. package/vscode/src/vs/editor/contrib/links/browser/links.js +10 -10
  293. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +1 -1
  294. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScroll.contribution.d.ts +1 -0
  295. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScroll.contribution.js +5 -0
  296. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScroll.css +20 -0
  297. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.d.ts +9 -0
  298. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.js +132 -0
  299. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
  300. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
  301. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +9 -9
  302. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.d.ts +1 -0
  303. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +21 -17
  304. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  305. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.css +0 -1
  306. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
  307. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +14 -12
  308. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +6 -6
  309. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
  310. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.d.ts +2 -0
  311. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +5 -5
  312. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.d.ts +2 -1
  313. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +3 -2
  314. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  315. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css +24 -24
  316. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  317. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +13 -13
  318. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +18 -10
  319. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.d.ts +4 -3
  320. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +34 -39
  321. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.d.ts +5 -6
  322. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +65 -70
  323. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +8 -8
  324. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +13 -11
  325. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.d.ts +1 -1
  326. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +1 -1
  327. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.d.ts +1 -0
  328. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +18 -18
  329. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  330. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +4 -2
  331. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +1 -1
  332. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
  333. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  334. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  335. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  336. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  337. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +24 -24
  338. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  339. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  340. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
  341. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +1 -1
  342. package/vscode/src/vs/editor/standalone/browser/standaloneServices.d.ts +1 -1
  343. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +5 -2
  344. package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +1 -1
  345. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +79 -69
  346. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  347. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +4 -4
  348. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +7 -7
  349. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +5 -5
  350. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
  351. package/vscode/src/vs/platform/actions/common/actions.d.ts +0 -1
  352. package/vscode/src/vs/platform/actions/common/actions.js +0 -1
  353. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  354. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  355. package/vscode/src/vs/platform/configuration/common/configuration.js +4 -1
  356. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +11 -11
  357. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -1
  358. package/vscode/src/vs/platform/contextkey/common/contextkey.js +11 -11
  359. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  360. package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
  361. package/vscode/src/vs/platform/dialogs/common/dialogs.service.d.ts +1 -1
  362. package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
  363. package/vscode/src/vs/platform/environment/common/argv.d.ts +11 -0
  364. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +0 -1
  365. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
  366. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +19 -19
  367. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +1 -1
  368. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementUtil.js +1 -1
  369. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  370. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +7 -7
  371. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +20 -20
  372. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +9 -3
  373. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +9 -3
  374. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  375. package/vscode/src/vs/platform/files/common/files.d.ts +6 -1
  376. package/vscode/src/vs/platform/files/common/files.js +11 -7
  377. package/vscode/src/vs/platform/files/common/files.service.d.ts +1 -0
  378. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  379. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.d.ts +2 -2
  380. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
  381. package/vscode/src/vs/platform/keybinding/common/keybinding.service.d.ts +2 -1
  382. package/vscode/src/vs/platform/languagePacks/common/languagePacks.service.d.ts +1 -1
  383. package/vscode/src/vs/platform/list/browser/listService.d.ts +1 -7
  384. package/vscode/src/vs/platform/list/browser/listService.js +27 -27
  385. package/vscode/src/vs/platform/log/common/log.d.ts +4 -0
  386. package/vscode/src/vs/platform/log/common/log.js +15 -7
  387. package/vscode/src/vs/platform/markers/common/markerService.js +4 -3
  388. package/vscode/src/vs/platform/markers/common/markers.d.ts +2 -0
  389. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  390. package/vscode/src/vs/platform/mcp/common/mcpManagement.service.d.ts +9 -4
  391. package/vscode/src/vs/platform/mcp/common/mcpResourceScannerService.service.d.ts +10 -0
  392. package/vscode/src/vs/platform/mcp/common/mcpResourceScannerService.service.js +6 -0
  393. package/vscode/src/vs/platform/notification/common/notification.d.ts +1 -0
  394. package/vscode/src/vs/platform/notification/common/notification.js +12 -2
  395. package/vscode/src/vs/platform/product/common/product.js +3 -3
  396. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +10 -10
  397. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +3 -3
  398. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +7 -6
  399. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +7 -12
  400. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  401. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +2 -1
  402. package/vscode/src/vs/platform/remote/common/remoteAgentEnvironment.d.ts +1 -0
  403. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.d.ts +2 -2
  404. package/vscode/src/vs/platform/request/common/request.d.ts +1 -1
  405. package/vscode/src/vs/platform/request/common/request.js +18 -18
  406. package/vscode/src/vs/platform/request/common/request.service.d.ts +1 -1
  407. package/vscode/src/vs/platform/telemetry/common/commonProperties.d.ts +1 -1
  408. package/vscode/src/vs/platform/telemetry/common/telemetry.d.ts +2 -0
  409. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  410. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +2 -1
  411. package/vscode/src/vs/platform/terminal/common/terminal.service.d.ts +2 -1
  412. package/vscode/src/vs/platform/theme/browser/defaultStyles.d.ts +1 -1
  413. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  414. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +17 -17
  415. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
  416. package/vscode/src/vs/platform/theme/common/colors/editorColors.d.ts +1 -0
  417. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -94
  418. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +47 -47
  419. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  420. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  421. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  422. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +15 -15
  423. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +9 -9
  424. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  425. package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
  426. package/vscode/src/vs/platform/theme/common/themeService.d.ts +1 -1
  427. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  428. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.d.ts +3 -1
  429. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +6 -2
  430. package/vscode/src/vs/platform/userDataSync/common/userDataSync.d.ts +2 -1
  431. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +7 -6
  432. package/vscode/src/vs/platform/userDataSync/common/userDataSync.service.d.ts +1 -1
  433. package/vscode/src/vs/platform/window/common/window.d.ts +1 -0
  434. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  435. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +5 -7
  436. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +25 -24
  437. package/vscode/src/vs/workbench/api/common/extHostAuthentication.d.ts +10 -4
  438. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +109 -77
  439. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +2 -1
  440. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +22 -0
  441. package/vscode/src/vs/workbench/api/common/extHostCommands.js +3 -0
  442. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.d.ts +1 -1
  443. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  444. package/vscode/src/vs/workbench/api/common/extHostDocuments.d.ts +4 -2
  445. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +35 -5
  446. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +3 -3
  447. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +3 -4
  448. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.d.ts +1 -5
  449. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +34 -182
  450. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.d.ts +2 -2
  451. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +7 -2
  452. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +2 -3
  453. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  454. package/vscode/src/vs/workbench/api/common/extHostMcp.d.ts +3 -1
  455. package/vscode/src/vs/workbench/api/common/extHostMcp.js +71 -20
  456. package/vscode/src/vs/workbench/api/common/extHostNotebook.d.ts +1 -1
  457. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +7 -5
  458. package/vscode/src/vs/workbench/api/common/extHostNotebookEditor.js +1 -1
  459. package/vscode/src/vs/workbench/api/common/extHostSCM.d.ts +1 -1
  460. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  461. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +2 -1
  462. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +7 -3
  463. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.d.ts +4 -3
  464. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +5 -2
  465. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +3 -0
  466. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +1 -1
  467. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  468. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +16 -7
  469. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +20 -8
  470. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +16 -13
  471. package/vscode/src/vs/workbench/api/common/extHostTypes.js +11 -12
  472. package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.d.ts +2 -2
  473. package/vscode/src/vs/workbench/api/common/extHostWebviewPanels.d.ts +1 -1
  474. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  475. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +12 -12
  476. package/vscode/src/vs/workbench/browser/actions/developerActions.js +31 -31
  477. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  478. package/vscode/src/vs/workbench/browser/contextkeys.d.ts +1 -0
  479. package/vscode/src/vs/workbench/browser/contextkeys.js +6 -1
  480. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.service.d.ts +1 -1
  481. package/vscode/src/vs/workbench/common/configuration.js +9 -9
  482. package/vscode/src/vs/workbench/common/contextkeys.d.ts +1 -0
  483. package/vscode/src/vs/workbench/common/contextkeys.js +73 -72
  484. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +1 -1
  485. package/vscode/src/vs/workbench/common/editor.d.ts +2 -1
  486. package/vscode/src/vs/workbench/common/editor.js +6 -6
  487. package/vscode/src/vs/workbench/common/theme.js +160 -160
  488. package/vscode/src/vs/workbench/common/views.js +4 -4
  489. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +157 -160
  490. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  491. package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.d.ts +2 -2
  492. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.service.d.ts +18 -0
  493. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.service.js +6 -0
  494. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts.d.ts +2 -2
  495. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +6 -6
  496. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.service.d.ts +4 -3
  497. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.d.ts +9 -3
  498. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +62 -41
  499. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.d.ts +24 -5
  500. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.js +2 -2
  501. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.service.d.ts +1 -1
  502. package/vscode/src/vs/workbench/contrib/chat/common/chatEntitlementService.service.d.ts +1 -1
  503. package/vscode/src/vs/workbench/contrib/chat/common/chatService.d.ts +29 -9
  504. package/vscode/src/vs/workbench/contrib/chat/common/chatService.service.d.ts +2 -2
  505. package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.service.d.ts +2 -2
  506. package/vscode/src/vs/workbench/contrib/chat/common/chatVariableEntries.d.ts +152 -0
  507. package/vscode/src/vs/workbench/contrib/chat/common/chatVariableEntries.js +160 -0
  508. package/vscode/src/vs/workbench/contrib/chat/common/chatVariables.d.ts +2 -1
  509. package/vscode/src/vs/workbench/contrib/chat/common/chatWidgetHistoryService.service.d.ts +1 -1
  510. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +5 -5
  511. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +11 -24
  512. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.d.ts +8 -1
  513. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.js +4 -4
  514. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.service.d.ts +4 -2
  515. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +5 -1
  516. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +22 -7
  517. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/index.d.ts +5 -0
  518. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tokens.d.ts +20 -0
  519. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/types.d.ts +6 -4
  520. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/types.d.ts +2 -17
  521. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/{types.d.ts → promptsService.d.ts} +14 -7
  522. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/{types.service.d.ts → promptsService.service.d.ts} +6 -7
  523. package/vscode/src/vs/workbench/contrib/chat/common/tools/editFileTool.d.ts +2 -2
  524. package/vscode/src/vs/workbench/contrib/chat/common/tools/editFileTool.js +1 -1
  525. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +15 -15
  526. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +6 -6
  527. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  528. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  529. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  530. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  531. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  532. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  533. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  534. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -2
  535. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  536. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.service.d.ts +1 -1
  537. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  538. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +11 -11
  539. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  540. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +1 -0
  541. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +73 -65
  542. package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.js +7 -0
  543. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
  544. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.service.d.ts +1 -1
  545. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +4 -4
  546. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  547. package/vscode/src/vs/workbench/contrib/files/browser/files.service.d.ts +3 -3
  548. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  549. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  550. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  551. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  552. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  553. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +2 -2
  554. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +1 -1
  555. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  556. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  557. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +55 -9
  558. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +29 -13
  559. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +16 -6
  560. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.js +2 -1
  561. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocol.d.ts +119 -31
  562. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocol.js +1 -1
  563. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service.d.ts +1 -1
  564. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.d.ts +4 -4
  565. package/vscode/src/vs/workbench/contrib/notebook/common/notebookService.service.d.ts +2 -2
  566. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.service.d.ts +1 -1
  567. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.service.d.ts +8 -0
  568. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.service.js +6 -0
  569. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  570. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  571. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  572. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  573. package/vscode/src/vs/workbench/contrib/tasks/common/constants.d.ts +3 -0
  574. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +10 -0
  575. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +5 -5
  576. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.d.ts +4 -3
  577. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +13 -4
  578. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +6 -2
  579. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +1 -1
  580. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalCompletionService.service.d.ts +2 -2
  581. package/vscode/src/vs/workbench/contrib/testing/common/constants.d.ts +2 -0
  582. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +13 -11
  583. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  584. package/vscode/src/vs/workbench/contrib/webview/browser/webview.service.d.ts +1 -1
  585. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service.d.ts +2 -2
  586. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.d.ts +1 -0
  587. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.js +6 -4
  588. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +4 -0
  589. package/vscode/src/vs/workbench/services/authentication/common/authentication.service.d.ts +1 -0
  590. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.d.ts +132 -0
  591. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.service.d.ts +20 -0
  592. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.service.js +6 -0
  593. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.service.d.ts +2 -2
  594. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  595. package/vscode/src/vs/workbench/services/coreExperimentation/common/coreExperimentationService.service.d.ts +6 -0
  596. package/vscode/src/vs/workbench/services/coreExperimentation/common/coreExperimentationService.service.js +6 -0
  597. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +1 -1
  598. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +1 -1
  599. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +1 -1
  600. package/vscode/src/vs/workbench/services/editor/common/editorService.service.d.ts +2 -2
  601. package/vscode/src/vs/workbench/services/environment/common/environmentService.service.d.ts +1 -0
  602. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.d.ts +1 -0
  603. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +84 -84
  604. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.d.ts +1 -1
  605. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -1
  606. package/vscode/src/vs/workbench/services/language/common/languageService.js +28 -28
  607. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +2 -2
  608. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +17 -17
  609. package/vscode/src/vs/workbench/services/layout/browser/layoutService.service.d.ts +5 -1
  610. package/vscode/src/vs/workbench/services/localization/common/locale.service.d.ts +1 -1
  611. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  612. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.service.d.ts +16 -0
  613. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.service.js +6 -0
  614. package/vscode/src/vs/workbench/services/outline/browser/outline.service.d.ts +1 -1
  615. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.d.ts +1 -1
  616. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  617. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  618. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +3 -3
  619. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +1 -1
  620. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +22 -22
  621. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  622. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -12
  623. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackup.d.ts +1 -1
  624. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackup.service.d.ts +1 -1
  625. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyEditorService.service.d.ts +1 -1
  626. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +2 -2
  627. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyService.service.d.ts +1 -1
  628. package/vscode-dts/vscode.proposed.authProviderSpecific.d.ts +30 -0
  629. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +10 -0
  630. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +10 -0
  631. package/vscode-dts/vscode.proposed.chatProvider.d.ts +139 -10
  632. package/vscode-dts/vscode.proposed.d.ts +3 -1
  633. package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +5 -0
  634. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +21 -4
  635. package/vscode-dts/vscode.proposed.languageModelDataPart.d.ts +1 -0
  636. package/vscode-dts/vscode.proposed.remoteCodingAgents.d.ts +8 -0
  637. package/vscode-dts/vscode.proposed.terminalCompletionProvider.d.ts +2 -0
  638. package/vscode-dts/vscode.proposed.textDocumentChangeReason.d.ts +30 -0
  639. package/workbench.d.ts +1 -1
  640. package/vscode/src/vs/base/browser/domImpl/domObservable.d.ts +0 -3
  641. package/vscode/src/vs/base/browser/domImpl/domObservable.js +0 -16
  642. package/vscode/src/vs/base/browser/domImpl/n.d.ts +0 -83
  643. package/vscode/src/vs/base/browser/domImpl/n.js +0 -283
  644. package/vscode/src/vs/editor/common/codecs/frontMatterCodec/tokens/index.d.ts +0 -5
  645. package/vscode/src/vs/editor/common/codecs/simpleCodec/tokens/index.d.ts +0 -20
  646. package/vscode/src/vs/editor/common/tokens/tokenArray.d.ts +0 -25
  647. package/vscode/src/vs/editor/common/tokens/tokenArray.js +0 -84
  648. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineEditsAdapter.d.ts +0 -16
  649. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineEditsAdapter.js +0 -94
  650. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.d.ts +0 -243
  651. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +0 -426
  652. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.d.ts +0 -601
  653. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +0 -1185
  654. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.d.ts +0 -130
  655. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +0 -235
  656. package/vscode/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.d.ts +0 -4
  657. package/vscode/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.js +0 -6
  658. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/index.d.ts +0 -3
  659. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfigPathsService.service.d.ts +0 -7
  660. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfigPathsService.service.js +0 -6
  661. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExpService.service.d.ts +0 -6
  662. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExpService.service.js +0 -6
  663. package/vscode-dts/vscode.proposed.inlineEdit.d.ts +0 -103
  664. /package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/{types.service.js → promptsService.service.js} +0 -0
@@ -1,6 +1,6 @@
1
1
 
2
2
  import { __decorate, __param } from '../../../../../../../../../../external/tslib/tslib.es6.js';
3
- import { $ } from '../../../../../../../base/browser/dom.js';
3
+ import { $, n } from '../../../../../../../base/browser/dom.js';
4
4
  import { Emitter } from '../../../../../../../base/common/event.js';
5
5
  import { Disposable } from '../../../../../../../base/common/lifecycle.js';
6
6
  import '../../../../../../../base/common/observableInternal/index.js';
@@ -17,16 +17,14 @@ import '../../../../../../../platform/theme/common/colors/miscColors.js';
17
17
  import '../../../../../../../platform/theme/common/colors/quickpickColors.js';
18
18
  import '../../../../../../../platform/theme/common/colors/searchColors.js';
19
19
  import { observableCodeEditor } from '../../../../../../browser/observableCodeEditor.js';
20
- import { Rect } from '../../../../../../common/core/2d/rect.js';
21
20
  import { RenderOptions, renderLines, LineSource } from '../../../../../../browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js';
22
- import { EditorOption } from '../../../../../../common/config/editorOptions.js';
23
- import { LineRange } from '../../../../../../common/core/ranges/lineRange.js';
24
- import { OffsetRange } from '../../../../../../common/core/ranges/offsetRange.js';
21
+ import { Rect } from '../../../../../../common/core/2d/rect.js';
25
22
  import { Position } from '../../../../../../common/core/position.js';
26
23
  import { Range } from '../../../../../../common/core/range.js';
24
+ import { LineRange } from '../../../../../../common/core/ranges/lineRange.js';
25
+ import { OffsetRange } from '../../../../../../common/core/ranges/offsetRange.js';
27
26
  import { ILanguageService } from '../../../../../../common/languages/language.service.js';
28
- import { LineTokens } from '../../../../../../common/tokens/lineTokens.js';
29
- import { TokenArray } from '../../../../../../common/tokens/tokenArray.js';
27
+ import { TokenArray, LineTokens } from '../../../../../../common/tokens/lineTokens.js';
30
28
  import { InlineDecoration, InlineDecorationType } from '../../../../../../common/viewModel.js';
31
29
  import { GhostText, GhostTextPart } from '../../../model/ghostText.js';
32
30
  import { GhostTextView } from '../../ghostText/ghostTextView.js';
@@ -34,11 +32,11 @@ import { modifiedBackgroundColor, getModifiedBorderColor } from '../theme.js';
34
32
  import { getPrefixTrim, mapOutFalsy } from '../utils/utils.js';
35
33
  import { derived } from '../../../../../../../base/common/observableInternal/observables/derived.js';
36
34
  import { observableValue } from '../../../../../../../base/common/observableInternal/observables/observableValue.js';
37
- import { n } from '../../../../../../../base/browser/domImpl/n.js';
38
35
  import { constObservable } from '../../../../../../../base/common/observableInternal/observables/constObservable.js';
39
36
 
40
37
  const BORDER_WIDTH = 1;
41
38
  const WIDGET_SEPARATOR_WIDTH = 1;
39
+ const WIDGET_SEPARATOR_DIFF_EDITOR_WIDTH = 3;
42
40
  const BORDER_RADIUS = 4;
43
41
  let InlineEditsInsertionView = class InlineEditsInsertionView extends Disposable {
44
42
  constructor(_editor, _input, _tabAction, instantiationService, _languageService) {
@@ -63,11 +61,12 @@ let InlineEditsInsertionView = class InlineEditsInsertionView extends Disposable
63
61
  return { lineNumber: state.lineNumber, column: state.startColumn, text: state.text };
64
62
  });
65
63
  this._trimVertically = derived(this, reader => {
66
- const text = this._state.read(reader)?.text;
64
+ const state = this._state.read(reader);
65
+ const text = state?.text;
67
66
  if (!text || text.trim() === '') {
68
67
  return { topOffset: 0, bottomOffset: 0, linesTop: 0, linesBottom: 0 };
69
68
  }
70
- const lineHeight = this._editor.getOption(EditorOption.lineHeight);
69
+ const lineHeight = this._editor.getLineHeightForPosition(( new Position(state.lineNumber, 1)));
71
70
  const eol = this._editor.getModel().getEOL();
72
71
  let linesTop = 0;
73
72
  let linesBottom = 0;
@@ -185,17 +184,20 @@ let InlineEditsInsertionView = class InlineEditsInsertionView extends Disposable
185
184
  const overlayHider = ( overlayLayoutObs.map(
186
185
  layoutInfo => Rect.fromLeftTopRightBottom(layoutInfo.contentLeft - BORDER_RADIUS - BORDER_WIDTH, layoutInfo.overlay.top, layoutInfo.contentLeft, layoutInfo.overlay.bottom)
187
186
  )).read(reader);
187
+ const separatorWidth = ( this._input.map(
188
+ i => i?.inDiffEditor ? WIDGET_SEPARATOR_DIFF_EDITOR_WIDTH : WIDGET_SEPARATOR_WIDTH
189
+ )).read(reader);
188
190
  const overlayRect = ( overlayLayoutObs.map(
189
191
  l => l.overlay.withMargin(0, BORDER_WIDTH, 0, l.startsAtContentLeft ? 0 : BORDER_WIDTH).intersectHorizontal(( new OffsetRange(overlayHider.left, Number.MAX_SAFE_INTEGER)))
190
192
  ));
191
- const underlayRect = ( overlayRect.map(rect => rect.withMargin(WIDGET_SEPARATOR_WIDTH, WIDGET_SEPARATOR_WIDTH)));
193
+ const underlayRect = ( overlayRect.map(rect => rect.withMargin(separatorWidth, separatorWidth)));
192
194
  return [
193
195
  n.div({
194
196
  class: 'originalUnderlayInsertion',
195
197
  style: {
196
198
  ...underlayRect.read(reader).toStyles(),
197
199
  borderRadius: BORDER_RADIUS,
198
- border: `${BORDER_WIDTH + WIDGET_SEPARATOR_WIDTH}px solid ${asCssVariable(editorBackground)}`,
200
+ border: `${BORDER_WIDTH + separatorWidth}px solid ${asCssVariable(editorBackground)}`,
199
201
  boxSizing: 'border-box',
200
202
  }
201
203
  }),
@@ -236,6 +238,8 @@ let InlineEditsInsertionView = class InlineEditsInsertionView extends Disposable
236
238
  minReservedLineCount: constObservable(0),
237
239
  targetTextModel: ( this._editorObs.model.map(model => model ?? undefined)),
238
240
  warning: constObservable(undefined),
241
+ handleInlineCompletionShown: constObservable(() => {
242
+ }),
239
243
  }, observableValue(this, { syntaxHighlightingEnabled: true, extraClasses: ['inline-edit'] }), true, true));
240
244
  this.isHovered = this._ghostTextView.isHovered;
241
245
  this._register(this._ghostTextView.onDidClick((e) => {
@@ -3,20 +3,19 @@ import { Disposable } from "../../../../../../../base/common/lifecycle.js";
3
3
  import { IObservable } from "../../../../../../../base/common/observable.js";
4
4
  import { IThemeService } from "../../../../../../../platform/theme/common/themeService.service.js";
5
5
  import { ObservableCodeEditor } from "../../../../../../browser/observableCodeEditor.js";
6
- import { LineRange } from "../../../../../../common/core/ranges/lineRange.js";
7
6
  import { Range } from "../../../../../../common/core/range.js";
7
+ import { LineRange } from "../../../../../../common/core/ranges/lineRange.js";
8
8
  import { ILanguageService } from "../../../../../../common/languages/language.service.js";
9
9
  import { IInlineEditsView, InlineEditTabAction } from "../inlineEditsViewInterface.js";
10
10
  export declare class InlineEditsLineReplacementView extends Disposable implements IInlineEditsView {
11
11
  private readonly _editor;
12
12
  private readonly _edit;
13
+ private readonly _isInDiffEditor;
13
14
  private readonly _tabAction;
14
15
  private readonly _languageService;
15
16
  private readonly _themeService;
16
17
  private readonly _onDidClick;
17
18
  readonly onDidClick: import("../../../../../../../base/common/event.js").Event<IMouseEvent>;
18
- private readonly _originalBubblesDecorationCollection;
19
- private readonly _originalBubblesDecorationOptions;
20
19
  private readonly _maxPrefixTrim;
21
20
  private readonly _modifiedLineElements;
22
21
  private readonly _layout;
@@ -28,7 +27,7 @@ export declare class InlineEditsLineReplacementView extends Disposable implement
28
27
  modifiedRange: LineRange;
29
28
  modifiedLines: string[];
30
29
  replacements: Replacement[];
31
- } | undefined>, _tabAction: IObservable<InlineEditTabAction>, _languageService: ILanguageService, _themeService: IThemeService);
30
+ } | undefined>, _isInDiffEditor: IObservable<boolean>, _tabAction: IObservable<InlineEditTabAction>, _languageService: ILanguageService, _themeService: IThemeService);
32
31
  private _isMouseOverWidget;
33
32
  private _previousViewZoneInfo;
34
33
  private removePreviousViewZone;
@@ -1,6 +1,6 @@
1
1
 
2
2
  import { __decorate, __param } from '../../../../../../../../../../external/tslib/tslib.es6.js';
3
- import { getWindow, $ } from '../../../../../../../base/browser/dom.js';
3
+ import { n, getWindow, $ } from '../../../../../../../base/browser/dom.js';
4
4
  import { StandardMouseEvent } from '../../../../../../../base/browser/mouseEvent.js';
5
5
  import { Emitter } from '../../../../../../../base/common/event.js';
6
6
  import { Disposable, toDisposable } from '../../../../../../../base/common/lifecycle.js';
@@ -18,40 +18,32 @@ import '../../../../../../../platform/theme/common/colors/quickpickColors.js';
18
18
  import '../../../../../../../platform/theme/common/colors/searchColors.js';
19
19
  import { IThemeService } from '../../../../../../../platform/theme/common/themeService.service.js';
20
20
  import { EditorMouseEvent } from '../../../../../../browser/editorDom.js';
21
- import { Point } from '../../../../../../common/core/2d/point.js';
22
- import { Rect } from '../../../../../../common/core/2d/rect.js';
23
21
  import { renderLines, LineSource, RenderOptions } from '../../../../../../browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js';
24
22
  import { EditorOption } from '../../../../../../common/config/editorOptions.js';
25
- import { OffsetRange } from '../../../../../../common/core/ranges/offsetRange.js';
23
+ import { Point } from '../../../../../../common/core/2d/point.js';
24
+ import { Rect } from '../../../../../../common/core/2d/rect.js';
26
25
  import { Range } from '../../../../../../common/core/range.js';
26
+ import { OffsetRange } from '../../../../../../common/core/ranges/offsetRange.js';
27
27
  import { ILanguageService } from '../../../../../../common/languages/language.service.js';
28
- import { TrackedRangeStickiness } from '../../../../../../common/model.js';
29
- import { LineTokens } from '../../../../../../common/tokens/lineTokens.js';
30
- import { TokenArray } from '../../../../../../common/tokens/tokenArray.js';
28
+ import { TokenArray, LineTokens } from '../../../../../../common/tokens/lineTokens.js';
31
29
  import { InlineDecoration, InlineDecorationType } from '../../../../../../common/viewModel.js';
32
30
  import { getModifiedBorderColor, getOriginalBorderColor, originalBackgroundColor, getEditorBlendedColor, modifiedChangedLineBackgroundColor } from '../theme.js';
33
31
  import { getPrefixTrim, mapOutFalsy, rectToProps, getEditorValidOverlayRect } from '../utils/utils.js';
34
- import { autorunDelta, autorun } from '../../../../../../../base/common/observableInternal/reactions/autorun.js';
32
+ import { autorunDelta } from '../../../../../../../base/common/observableInternal/reactions/autorun.js';
35
33
  import { derived } from '../../../../../../../base/common/observableInternal/observables/derived.js';
36
- import { n } from '../../../../../../../base/browser/domImpl/n.js';
37
34
  import { constObservable } from '../../../../../../../base/common/observableInternal/observables/constObservable.js';
38
35
 
39
36
  let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extends Disposable {
40
- constructor(_editor, _edit, _tabAction, _languageService, _themeService) {
37
+ constructor(_editor, _edit, _isInDiffEditor, _tabAction, _languageService, _themeService) {
41
38
  super();
42
39
  this._editor = _editor;
43
40
  this._edit = _edit;
41
+ this._isInDiffEditor = _isInDiffEditor;
44
42
  this._tabAction = _tabAction;
45
43
  this._languageService = _languageService;
46
44
  this._themeService = _themeService;
47
45
  this._onDidClick = this._register(( new Emitter()));
48
46
  this.onDidClick = this._onDidClick.event;
49
- this._originalBubblesDecorationCollection = this._editor.editor.createDecorationsCollection();
50
- this._originalBubblesDecorationOptions = {
51
- description: 'inlineCompletions-original-bubble',
52
- className: 'inlineCompletions-original-bubble',
53
- stickiness: TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges
54
- };
55
47
  this._maxPrefixTrim = ( this._edit.map(
56
48
  e => e ? getPrefixTrim(e.replacements.flatMap(r => [r.originalRange, r.modifiedRange]), e.originalRange, e.modifiedLines, this._editor.editor) : undefined
57
49
  ));
@@ -88,8 +80,6 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
88
80
  for (const modified of modifiedBubbles.filter(b => b.startLineNumber === lineNumber)) {
89
81
  const validatedEndColumn = Math.min(modified.endColumn, modLine.length + 1);
90
82
  decorations.push(( new InlineDecoration(( new Range(1, modified.startColumn, 1, validatedEndColumn)), 'inlineCompletions-modified-bubble', InlineDecorationType.Regular)));
91
- decorations.push(( new InlineDecoration(( new Range(1, modified.startColumn, 1, modified.startColumn + 1)), 'start', InlineDecorationType.Regular)));
92
- decorations.push(( new InlineDecoration(( new Range(1, validatedEndColumn - 1, 1, validatedEndColumn)), 'end', InlineDecorationType.Regular)));
93
83
  }
94
84
  const result = renderLines(( new LineSource([tokens])), RenderOptions.fromEditor(this._editor.editor).withSetWidth(false).withScrollBeyondLastColumn(0), decorations, line, true);
95
85
  this._editor.getOption(EditorOption.fontInfo).read(reader);
@@ -107,7 +97,14 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
107
97
  }
108
98
  const { prefixLeftOffset } = maxPrefixTrim;
109
99
  const { requiredWidth } = modifiedLines;
110
- const lineHeight = this._editor.getOption(EditorOption.lineHeight).read(reader);
100
+ const originalLineHeights = this._editor.observeLineHeightsForLineRange(edit.originalRange).read(reader);
101
+ const modifiedLineHeights = (() => {
102
+ const lineHeights = originalLineHeights.slice(0, edit.modifiedRange.length);
103
+ while (lineHeights.length < edit.modifiedRange.length) {
104
+ lineHeights.push(originalLineHeights[originalLineHeights.length - 1]);
105
+ }
106
+ return lineHeights;
107
+ })();
111
108
  const contentLeft = this._editor.layoutInfoContentLeft.read(reader);
112
109
  const verticalScrollbarWidth = this._editor.layoutInfoVerticalScrollbarWidth.read(reader);
113
110
  const scrollLeft = this._editor.scrollLeft.read(reader);
@@ -121,7 +118,7 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
121
118
  const topOfOriginalLines = this._editor.editor.getTopForLineNumber(startLineNumber) - scrollTop;
122
119
  const bottomOfOriginalLines = this._editor.editor.getBottomForLineNumber(endLineNumber) - scrollTop;
123
120
  const originalLinesOverlay = Rect.fromLeftTopWidthHeight(editorLeftOffset + prefixLeftOffset, topOfOriginalLines, maxLineWidth, bottomOfOriginalLines - topOfOriginalLines);
124
- const modifiedLinesOverlay = Rect.fromLeftTopWidthHeight(originalLinesOverlay.left, originalLinesOverlay.bottom, originalLinesOverlay.width, edit.modifiedRange.length * lineHeight);
121
+ const modifiedLinesOverlay = Rect.fromLeftTopWidthHeight(originalLinesOverlay.left, originalLinesOverlay.bottom, originalLinesOverlay.width, modifiedLineHeights.reduce((sum, h) => sum + h, 0));
125
122
  const background = Rect.hull([originalLinesOverlay, modifiedLinesOverlay]);
126
123
  const lowerBackground = background.intersectVertical(( new OffsetRange(originalLinesOverlay.bottom, Number.MAX_SAFE_INTEGER)));
127
124
  const lowerText = ( new Rect(
@@ -136,6 +133,7 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
136
133
  background,
137
134
  lowerBackground,
138
135
  lowerText,
136
+ modifiedLineHeights,
139
137
  minContentWidthRequired: prefixLeftOffset + maxLineWidth + verticalScrollbarWidth,
140
138
  };
141
139
  });
@@ -164,10 +162,10 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
164
162
  }
165
163
  const layoutProps = layout.read(reader);
166
164
  const contentLeft = this._editor.layoutInfoContentLeft.read(reader);
167
- const lineHeight = this._editor.getOption(EditorOption.lineHeight).read(reader);
168
- modifiedLineElements.lines.forEach(l => {
165
+ const separatorWidth = this._isInDiffEditor.read(reader) ? 3 : 1;
166
+ modifiedLineElements.lines.forEach((l, i) => {
169
167
  l.style.width = `${layoutProps.lowerText.width}px`;
170
- l.style.height = `${lineHeight}px`;
168
+ l.style.height = `${layoutProps.modifiedLineHeights[i]}px`;
171
169
  l.style.position = 'relative';
172
170
  });
173
171
  const modifiedBorderColor = getModifiedBorderColor(this._tabAction).read(reader);
@@ -181,6 +179,17 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
181
179
  pointerEvents: 'none',
182
180
  }
183
181
  }, [
182
+ n.div({
183
+ class: 'borderAroundLineReplacement',
184
+ style: {
185
+ position: 'absolute',
186
+ ...rectToProps(reader => layout.read(reader).background.translateX(-contentLeft).withMargin(separatorWidth)),
187
+ borderRadius: '4px',
188
+ border: `${separatorWidth + 1}px solid ${asCssVariable(editorBackground)}`,
189
+ boxSizing: 'border-box',
190
+ pointerEvents: 'none',
191
+ }
192
+ }),
184
193
  n.div({
185
194
  class: 'originalOverlayLineReplacement',
186
195
  style: {
@@ -240,7 +249,6 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
240
249
  ]).keepUpdated(this._store);
241
250
  this.isHovered = this._editor.isTargetHovered((e) => this._isMouseOverWidget(e), this._store);
242
251
  this._previousViewZoneInfo = undefined;
243
- this._register(toDisposable(() => this._originalBubblesDecorationCollection.clear()));
244
252
  this._register(toDisposable(() => this._editor.editor.changeViewZones(accessor => this.removePreviousViewZone(accessor))));
245
253
  this._register(autorunDelta(this._viewZoneInfo, ({ lastValue, newValue }) => {
246
254
  if (lastValue === newValue || (lastValue?.height === newValue?.height && lastValue?.lineNumber === newValue?.lineNumber)) {
@@ -254,14 +262,6 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
254
262
  this.addViewZone(newValue, changeAccessor);
255
263
  });
256
264
  }));
257
- this._register(autorun(reader => {
258
- const edit = this._edit.read(reader);
259
- const originalBubbles = [];
260
- if (edit) {
261
- originalBubbles.push(...rangesToBubbleRanges(( edit.replacements.map(r => r.originalRange))));
262
- }
263
- this._originalBubblesDecorationCollection.set(( originalBubbles.map(r => ({ range: r, options: this._originalBubblesDecorationOptions }))));
264
- }));
265
265
  this._register(this._editor.createOverlayWidget({
266
266
  domNode: this._div.element,
267
267
  minContentWidthInPx: derived(reader => {
@@ -303,8 +303,8 @@ let InlineEditsLineReplacementView = class InlineEditsLineReplacementView extend
303
303
  }
304
304
  };
305
305
  InlineEditsLineReplacementView = ( __decorate([
306
- ( __param(3, ILanguageService)),
307
- ( __param(4, IThemeService))
306
+ ( __param(4, ILanguageService)),
307
+ ( __param(5, IThemeService))
308
308
  ], InlineEditsLineReplacementView));
309
309
  function rangesToBubbleRanges(ranges) {
310
310
  const result = [];
@@ -22,6 +22,7 @@ export declare class InlineEditsSideBySideView extends Disposable implements IIn
22
22
  readonly onDidClick: import("../../../../../../../base/common/event.js").Event<IMouseEvent>;
23
23
  constructor(_editor: ICodeEditor, _edit: IObservable<InlineEditWithChanges | undefined>, _previewTextModel: ITextModel, _uiState: IObservable<{
24
24
  newTextLineCount: number;
25
+ isInDiffEditor: boolean;
25
26
  } | undefined>, _tabAction: IObservable<InlineEditTabAction>, _instantiationService: IInstantiationService, _themeService: IThemeService);
26
27
  private readonly _display;
27
28
  private readonly previewRef;
@@ -1,6 +1,6 @@
1
1
 
2
2
  import { __decorate, __param } from '../../../../../../../../../../external/tslib/tslib.es6.js';
3
- import { getWindow, $ } from '../../../../../../../base/browser/dom.js';
3
+ import { n, getWindow, $ } from '../../../../../../../base/browser/dom.js';
4
4
  import { StandardMouseEvent } from '../../../../../../../base/browser/mouseEvent.js';
5
5
  import { Color } from '../../../../../../../base/common/color.js';
6
6
  import { Emitter } from '../../../../../../../base/common/event.js';
@@ -22,7 +22,6 @@ import { IThemeService } from '../../../../../../../platform/theme/common/themeS
22
22
  import { observableCodeEditor } from '../../../../../../browser/observableCodeEditor.js';
23
23
  import { Rect } from '../../../../../../common/core/2d/rect.js';
24
24
  import { EmbeddedCodeEditorWidget } from '../../../../../../browser/widget/codeEditor/embeddedCodeEditorWidget.js';
25
- import { EditorOption } from '../../../../../../common/config/editorOptions.js';
26
25
  import { OffsetRange } from '../../../../../../common/core/ranges/offsetRange.js';
27
26
  import { Position } from '../../../../../../common/core/position.js';
28
27
  import { Range } from '../../../../../../common/core/range.js';
@@ -31,7 +30,6 @@ import { InlineCompletionContextKeys } from '../../../controller/inlineCompletio
31
30
  import { originalBackgroundColor, getOriginalBorderColor, getEditorBlendedColor, getModifiedBorderColor, modifiedBackgroundColor } from '../theme.js';
32
31
  import { maxContentWidthInRange, getContentRenderWidth, getOffsetForPos, PathBuilder, mapOutFalsy } from '../utils/utils.js';
33
32
  import { derived } from '../../../../../../../base/common/observableInternal/observables/derived.js';
34
- import { n } from '../../../../../../../base/browser/domImpl/n.js';
35
33
  import { constObservable } from '../../../../../../../base/common/observableInternal/observables/constObservable.js';
36
34
  import { derivedObservableWithCache } from '../../../../../../../base/common/observableInternal/utils/utils.js';
37
35
  import { observableFromEvent } from '../../../../../../../base/common/observableInternal/observables/observableFromEvent.js';
@@ -41,6 +39,7 @@ const HORIZONTAL_PADDING = 0;
41
39
  const VERTICAL_PADDING = 0;
42
40
  const BORDER_WIDTH = 1;
43
41
  const WIDGET_SEPARATOR_WIDTH = 1;
42
+ const WIDGET_SEPARATOR_DIFF_EDITOR_WIDTH = 3;
44
43
  const BORDER_RADIUS = 4;
45
44
  const ORIGINAL_END_PADDING = 20;
46
45
  const MODIFIED_END_PADDING = 12;
@@ -71,6 +70,9 @@ let InlineEditsSideBySideView = class InlineEditsSideBySideView extends Disposab
71
70
  this.onDidClick = this._onDidClick.event;
72
71
  this._display = derived(this, reader => !!this._uiState.read(reader) ? 'block' : 'none');
73
72
  this.previewRef = n.ref();
73
+ const separatorWidthObs = ( this._uiState.map(
74
+ s => s?.isInDiffEditor ? WIDGET_SEPARATOR_DIFF_EDITOR_WIDTH : WIDGET_SEPARATOR_WIDTH
75
+ ));
74
76
  this._editorContainer = n.div({
75
77
  class: ['editorContainer'],
76
78
  style: { position: 'absolute', overflow: 'hidden', cursor: 'pointer' },
@@ -250,7 +252,8 @@ let InlineEditsSideBySideView = class InlineEditsSideBySideView extends Disposab
250
252
  if (!isInsertion) {
251
253
  codeRect = codeRect.withMargin(VERTICAL_PADDING, HORIZONTAL_PADDING);
252
254
  }
253
- const editHeight = this._editor.getOption(EditorOption.lineHeight) * inlineEdit.modifiedLineRange.length;
255
+ const previewLineHeights = this._previewEditorObs.observeLineHeightsForLineRange(inlineEdit.modifiedLineRange).read(reader);
256
+ const editHeight = previewLineHeights.reduce((acc, h) => acc + h, 0);
254
257
  const codeHeight = selectionBottom - selectionTop;
255
258
  const previewEditorHeight = Math.max(codeHeight, editHeight);
256
259
  const clipped = dist === 0;
@@ -319,8 +322,9 @@ let InlineEditsSideBySideView = class InlineEditsSideBySideView extends Disposab
319
322
  if (!layoutInfoObs) {
320
323
  return undefined;
321
324
  }
325
+ const separatorWidth = separatorWidthObs.read(reader);
322
326
  const borderStyling = ( getOriginalBorderColor(this._tabAction).map(bc => `${BORDER_WIDTH}px solid ${asCssVariable(bc)}`));
323
- const borderStylingSeparator = `${BORDER_WIDTH + WIDGET_SEPARATOR_WIDTH}px solid ${asCssVariable(editorBackground)}`;
327
+ const borderStylingSeparator = `${BORDER_WIDTH + separatorWidth}px solid ${asCssVariable(editorBackground)}`;
324
328
  const hasBorderLeft = layoutInfoObs.read(reader).codeScrollLeft !== 0;
325
329
  const isModifiedLower = ( layoutInfoObs.map(layoutInfo => layoutInfo.codeRect.bottom < layoutInfo.editRect.bottom));
326
330
  const transitionRectSize = BORDER_RADIUS * 2 + BORDER_WIDTH * 2;
@@ -330,7 +334,7 @@ let InlineEditsSideBySideView = class InlineEditsSideBySideView extends Disposab
330
334
  const intersectionLine = ( new OffsetRange(overlayHider.left, Number.MAX_SAFE_INTEGER));
331
335
  const overlayRect = ( layoutInfoObs.map(layoutInfo => layoutInfo.codeRect.intersectHorizontal(intersectionLine)));
332
336
  const separatorRect = ( overlayRect.map(
333
- overlayRect => overlayRect.withMargin(WIDGET_SEPARATOR_WIDTH, 0, WIDGET_SEPARATOR_WIDTH, WIDGET_SEPARATOR_WIDTH).intersectHorizontal(intersectionLine)
337
+ overlayRect => overlayRect.withMargin(separatorWidth, 0, separatorWidth, separatorWidth).intersectHorizontal(intersectionLine)
334
338
  ));
335
339
  const transitionRect = ( overlayRect.map(
336
340
  overlayRect => Rect.fromLeftTopWidthHeight(overlayRect.right - transitionRectSize + BORDER_WIDTH, overlayRect.bottom - BORDER_WIDTH, transitionRectSize, transitionRectSize).intersectHorizontal(intersectionLine)
@@ -403,14 +407,15 @@ let InlineEditsSideBySideView = class InlineEditsSideBySideView extends Disposab
403
407
  return undefined;
404
408
  }
405
409
  const isModifiedLower = ( layoutInfoObs.map(layoutInfo => layoutInfo.codeRect.bottom < layoutInfo.editRect.bottom));
410
+ const separatorWidth = separatorWidthObs.read(reader);
406
411
  const borderRadius = ( isModifiedLower.map(
407
412
  isLower => `0 ${BORDER_RADIUS}px ${BORDER_RADIUS}px ${isLower ? BORDER_RADIUS : 0}px`
408
413
  ));
409
414
  const borderStyling = ( getEditorBlendedColor(getModifiedBorderColor(this._tabAction), this._themeService).map(c => `1px solid ${( c.toString())}`));
410
- const borderStylingSeparator = `${BORDER_WIDTH + WIDGET_SEPARATOR_WIDTH}px solid ${asCssVariable(editorBackground)}`;
415
+ const borderStylingSeparator = `${BORDER_WIDTH + separatorWidth}px solid ${asCssVariable(editorBackground)}`;
411
416
  const overlayRect = ( layoutInfoObs.map(layoutInfo => layoutInfo.editRect.withMargin(0, BORDER_WIDTH)));
412
417
  const separatorRect = ( overlayRect.map(
413
- overlayRect => overlayRect.withMargin(WIDGET_SEPARATOR_WIDTH, WIDGET_SEPARATOR_WIDTH, WIDGET_SEPARATOR_WIDTH, 0)
418
+ overlayRect => overlayRect.withMargin(separatorWidth, separatorWidth, separatorWidth, 0)
414
419
  ));
415
420
  const insertionRect = derived(reader => {
416
421
  const overlay = overlayRect.read(reader);
@@ -1,6 +1,6 @@
1
1
 
2
2
  import { __decorate, __param } from '../../../../../../../../../../external/tslib/tslib.es6.js';
3
- import { getWindow } from '../../../../../../../base/browser/dom.js';
3
+ import { n, getWindow } from '../../../../../../../base/browser/dom.js';
4
4
  import { StandardMouseEvent } from '../../../../../../../base/browser/mouseEvent.js';
5
5
  import { Emitter } from '../../../../../../../base/common/event.js';
6
6
  import { Disposable } from '../../../../../../../base/common/lifecycle.js';
@@ -16,21 +16,19 @@ import '../../../../../../../platform/theme/common/colors/minimapColors.js';
16
16
  import '../../../../../../../platform/theme/common/colors/miscColors.js';
17
17
  import '../../../../../../../platform/theme/common/colors/quickpickColors.js';
18
18
  import '../../../../../../../platform/theme/common/colors/searchColors.js';
19
- import { Point } from '../../../../../../common/core/2d/point.js';
20
- import { Rect } from '../../../../../../common/core/2d/rect.js';
21
19
  import { renderLines, LineSource, RenderOptions } from '../../../../../../browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js';
22
20
  import { EditorOption } from '../../../../../../common/config/editorOptions.js';
21
+ import { Point } from '../../../../../../common/core/2d/point.js';
22
+ import { Rect } from '../../../../../../common/core/2d/rect.js';
23
23
  import { StringReplacement } from '../../../../../../common/core/edits/stringEdit.js';
24
24
  import { OffsetRange } from '../../../../../../common/core/ranges/offsetRange.js';
25
25
  import { ILanguageService } from '../../../../../../common/languages/language.service.js';
26
- import { LineTokens } from '../../../../../../common/tokens/lineTokens.js';
27
- import { TokenArray } from '../../../../../../common/tokens/tokenArray.js';
26
+ import { TokenArray, LineTokens } from '../../../../../../common/tokens/lineTokens.js';
28
27
  import { getOriginalBorderColor, getModifiedBorderColor, modifiedChangedTextOverlayColor, originalChangedTextOverlayColor } from '../theme.js';
29
28
  import { mapOutFalsy, rectToProps, getEditorValidOverlayRect } from '../utils/utils.js';
30
29
  import { constObservable } from '../../../../../../../base/common/observableInternal/observables/constObservable.js';
31
30
  import { observableValue } from '../../../../../../../base/common/observableInternal/observables/observableValue.js';
32
31
  import { derived } from '../../../../../../../base/common/observableInternal/observables/derived.js';
33
- import { n } from '../../../../../../../base/browser/domImpl/n.js';
34
32
 
35
33
  let InlineEditsWordReplacementView = class InlineEditsWordReplacementView extends Disposable {
36
34
  static { this.MAX_LENGTH = 100; }
@@ -64,6 +62,7 @@ let InlineEditsWordReplacementView = class InlineEditsWordReplacementView extend
64
62
  const res = renderLines(( new LineSource([tokens])), RenderOptions.fromEditor(this._editor.editor).withSetWidth(false).withScrollBeyondLastColumn(0), [], this._line, true);
65
63
  this._line.style.width = `${res.minWidthInPx}px`;
66
64
  });
65
+ const modifiedLineHeight = this._editor.observeLineHeightForPosition(this._edit.range.getStartPosition());
67
66
  this._layout = derived(this, reader => {
68
67
  this._renderTextEffect.read(reader);
69
68
  const widgetStart = this._start.read(reader);
@@ -71,7 +70,7 @@ let InlineEditsWordReplacementView = class InlineEditsWordReplacementView extend
71
70
  if (!widgetStart || !widgetEnd || widgetStart.x > widgetEnd.x || widgetStart.y > widgetEnd.y) {
72
71
  return undefined;
73
72
  }
74
- const lineHeight = this._editor.getOption(EditorOption.lineHeight).read(reader);
73
+ const lineHeight = modifiedLineHeight.read(reader);
75
74
  const scrollLeft = this._editor.scrollLeft.read(reader);
76
75
  const w = this._editor.getOption(EditorOption.fontInfo).read(reader).typicalHalfwidthCharacterWidth;
77
76
  const modifiedLeftOffset = 3 * w;
@@ -9,7 +9,8 @@ import { IInlineEditsView } from "../inlineEditsViewInterface.js";
9
9
  export interface IOriginalEditorInlineDiffViewState {
10
10
  diff: DetailedLineRangeMapping[];
11
11
  modifiedText: AbstractText;
12
- mode: "insertionInline" | "sideBySide" | "deletion";
12
+ mode: "insertionInline" | "sideBySide" | "deletion" | "lineReplacement";
13
+ isInDiffEditor: boolean;
13
14
  modifiedCodeEditor: ICodeEditor;
14
15
  }
15
16
  export declare class OriginalEditorInlineDiffView extends Disposable implements IInlineEditsView {
@@ -56,6 +56,7 @@ class OriginalEditorInlineDiffView extends Disposable {
56
56
  className: 'inlineCompletions-char-delete',
57
57
  description: 'char-delete',
58
58
  isWholeLine: false,
59
+ zIndex: 1,
59
60
  });
60
61
  const diffWholeLineAddDecoration = ModelDecorationOptions.register({
61
62
  className: 'inlineCompletions-char-insert',
@@ -71,8 +72,15 @@ class OriginalEditorInlineDiffView extends Disposable {
71
72
  className: 'inlineCompletions-char-insert diff-range-empty',
72
73
  description: 'char-insert diff-range-empty',
73
74
  });
75
+ const NESOriginalBackground = ModelDecorationOptions.register({
76
+ className: 'inlineCompletions-original-lines',
77
+ description: 'inlineCompletions-original-lines',
78
+ isWholeLine: false,
79
+ shouldFillLineOnLineBreak: true,
80
+ });
81
+ const showFullLineDecorations = diff.mode !== 'sideBySide' && diff.mode !== 'deletion' && diff.mode !== 'insertionInline' && diff.mode !== 'lineReplacement';
82
+ const hideEmptyInnerDecorations = diff.mode === 'lineReplacement';
74
83
  for (const m of diff.diff) {
75
- const showFullLineDecorations = diff.mode !== 'sideBySide' && diff.mode !== 'deletion' && diff.mode !== 'insertionInline';
76
84
  if (showFullLineDecorations) {
77
85
  if (!m.original.isEmpty) {
78
86
  originalDecorations.push({
@@ -98,7 +106,7 @@ class OriginalEditorInlineDiffView extends Disposable {
98
106
  else {
99
107
  const useInlineDiff = showInline && allowsTrueInlineDiffRendering(m);
100
108
  for (const i of m.innerChanges || []) {
101
- if (m.original.contains(i.originalRange.startLineNumber)) {
109
+ if (m.original.contains(i.originalRange.startLineNumber) && !(hideEmptyInnerDecorations && i.originalRange.isEmpty())) {
102
110
  const replacedText = this._originalEditor.getModel()?.getValueInRange(i.originalRange, EndOfLinePreference.LF);
103
111
  originalDecorations.push({
104
112
  range: i.originalRange,
@@ -154,6 +162,16 @@ class OriginalEditorInlineDiffView extends Disposable {
154
162
  }
155
163
  }
156
164
  }
165
+ if (diff.isInDiffEditor) {
166
+ for (const m of diff.diff) {
167
+ if (!m.original.isEmpty) {
168
+ originalDecorations.push({
169
+ range: m.original.toExclusiveRange(),
170
+ options: NESOriginalBackground,
171
+ });
172
+ }
173
+ }
174
+ }
157
175
  return { originalDecorations, modifiedDecorations };
158
176
  });
159
177
  this._register(observableCodeEditor(this._originalEditor).setDecorations(( this._decorations.map(d => d?.originalDecorations ?? []))));
@@ -16,14 +16,14 @@ import '../../../../../../platform/theme/common/colors/searchColors.js';
16
16
  import { InlineEditTabAction } from './inlineEditsViewInterface.js';
17
17
  import { observableFromEventOpts } from '../../../../../../base/common/observableInternal/observables/observableFromEvent.js';
18
18
 
19
- const originalBackgroundColor = registerColor('inlineEdit.originalBackground', ( transparent(diffRemoved, 0.2)), ( localize(1281, 'Background color for the original text in inline edits.')), true);
20
- const modifiedBackgroundColor = registerColor('inlineEdit.modifiedBackground', ( transparent(diffInserted, 0.3)), ( localize(1282, 'Background color for the modified text in inline edits.')), true);
19
+ const originalBackgroundColor = registerColor('inlineEdit.originalBackground', ( transparent(diffRemoved, 0.2)), ( localize(1292, 'Background color for the original text in inline edits.')), true);
20
+ const modifiedBackgroundColor = registerColor('inlineEdit.modifiedBackground', ( transparent(diffInserted, 0.3)), ( localize(1293, 'Background color for the modified text in inline edits.')), true);
21
21
  registerColor('inlineEdit.originalChangedLineBackground', ( transparent(diffRemoved, 0.8)), ( localize(
22
- 1283,
22
+ 1294,
23
23
  'Background color for the changed lines in the original text of inline edits.'
24
24
  )), true);
25
25
  const originalChangedTextOverlayColor = registerColor('inlineEdit.originalChangedTextBackground', ( transparent(diffRemoved, 0.8)), ( localize(
26
- 1284,
26
+ 1295,
27
27
  'Overlay color for the changed text in the original text of inline edits.'
28
28
  )), true);
29
29
  const modifiedChangedLineBackgroundColor = registerColor('inlineEdit.modifiedChangedLineBackground', {
@@ -32,52 +32,52 @@ const modifiedChangedLineBackgroundColor = registerColor('inlineEdit.modifiedCha
32
32
  hcDark: diffInsertedLine,
33
33
  hcLight: diffInsertedLine
34
34
  }, ( localize(
35
- 1285,
35
+ 1296,
36
36
  'Background color for the changed lines in the modified text of inline edits.'
37
37
  )), true);
38
38
  const modifiedChangedTextOverlayColor = registerColor('inlineEdit.modifiedChangedTextBackground', ( transparent(diffInserted, 0.7)), ( localize(
39
- 1286,
39
+ 1297,
40
40
  'Overlay color for the changed text in the modified text of inline edits.'
41
41
  )), true);
42
- const inlineEditIndicatorPrimaryForeground = registerColor('inlineEdit.gutterIndicator.primaryForeground', buttonForeground, ( localize(1287, 'Foreground color for the primary inline edit gutter indicator.')));
43
- const inlineEditIndicatorPrimaryBorder = registerColor('inlineEdit.gutterIndicator.primaryBorder', buttonBackground, ( localize(1288, 'Border color for the primary inline edit gutter indicator.')));
42
+ const inlineEditIndicatorPrimaryForeground = registerColor('inlineEdit.gutterIndicator.primaryForeground', buttonForeground, ( localize(1298, 'Foreground color for the primary inline edit gutter indicator.')));
43
+ const inlineEditIndicatorPrimaryBorder = registerColor('inlineEdit.gutterIndicator.primaryBorder', buttonBackground, ( localize(1299, 'Border color for the primary inline edit gutter indicator.')));
44
44
  const inlineEditIndicatorPrimaryBackground = registerColor('inlineEdit.gutterIndicator.primaryBackground', {
45
45
  light: ( transparent(inlineEditIndicatorPrimaryBorder, 0.5)),
46
46
  dark: ( transparent(inlineEditIndicatorPrimaryBorder, 0.4)),
47
47
  hcDark: ( transparent(inlineEditIndicatorPrimaryBorder, 0.4)),
48
48
  hcLight: ( transparent(inlineEditIndicatorPrimaryBorder, 0.5)),
49
- }, ( localize(1289, 'Background color for the primary inline edit gutter indicator.')));
50
- const inlineEditIndicatorSecondaryForeground = registerColor('inlineEdit.gutterIndicator.secondaryForeground', buttonSecondaryForeground, ( localize(1290, 'Foreground color for the secondary inline edit gutter indicator.')));
51
- const inlineEditIndicatorSecondaryBorder = registerColor('inlineEdit.gutterIndicator.secondaryBorder', buttonSecondaryBackground, ( localize(1291, 'Border color for the secondary inline edit gutter indicator.')));
52
- const inlineEditIndicatorSecondaryBackground = registerColor('inlineEdit.gutterIndicator.secondaryBackground', inlineEditIndicatorSecondaryBorder, ( localize(1292, 'Background color for the secondary inline edit gutter indicator.')));
53
- const inlineEditIndicatorsuccessfulForeground = registerColor('inlineEdit.gutterIndicator.successfulForeground', buttonForeground, ( localize(1293, 'Foreground color for the successful inline edit gutter indicator.')));
54
- const inlineEditIndicatorsuccessfulBorder = registerColor('inlineEdit.gutterIndicator.successfulBorder', buttonBackground, ( localize(1294, 'Border color for the successful inline edit gutter indicator.')));
55
- const inlineEditIndicatorsuccessfulBackground = registerColor('inlineEdit.gutterIndicator.successfulBackground', inlineEditIndicatorsuccessfulBorder, ( localize(1295, 'Background color for the successful inline edit gutter indicator.')));
49
+ }, ( localize(1300, 'Background color for the primary inline edit gutter indicator.')));
50
+ const inlineEditIndicatorSecondaryForeground = registerColor('inlineEdit.gutterIndicator.secondaryForeground', buttonSecondaryForeground, ( localize(1301, 'Foreground color for the secondary inline edit gutter indicator.')));
51
+ const inlineEditIndicatorSecondaryBorder = registerColor('inlineEdit.gutterIndicator.secondaryBorder', buttonSecondaryBackground, ( localize(1302, 'Border color for the secondary inline edit gutter indicator.')));
52
+ const inlineEditIndicatorSecondaryBackground = registerColor('inlineEdit.gutterIndicator.secondaryBackground', inlineEditIndicatorSecondaryBorder, ( localize(1303, 'Background color for the secondary inline edit gutter indicator.')));
53
+ const inlineEditIndicatorsuccessfulForeground = registerColor('inlineEdit.gutterIndicator.successfulForeground', buttonForeground, ( localize(1304, 'Foreground color for the successful inline edit gutter indicator.')));
54
+ const inlineEditIndicatorsuccessfulBorder = registerColor('inlineEdit.gutterIndicator.successfulBorder', buttonBackground, ( localize(1305, 'Border color for the successful inline edit gutter indicator.')));
55
+ const inlineEditIndicatorsuccessfulBackground = registerColor('inlineEdit.gutterIndicator.successfulBackground', inlineEditIndicatorsuccessfulBorder, ( localize(1306, 'Background color for the successful inline edit gutter indicator.')));
56
56
  const inlineEditIndicatorBackground = registerColor('inlineEdit.gutterIndicator.background', {
57
57
  hcDark: ( transparent('tab.inactiveBackground', 0.5)),
58
58
  hcLight: ( transparent('tab.inactiveBackground', 0.5)),
59
59
  dark: ( transparent('tab.inactiveBackground', 0.5)),
60
60
  light: '#5f5f5f18',
61
- }, ( localize(1296, 'Background color for the inline edit gutter indicator.')));
61
+ }, ( localize(1307, 'Background color for the inline edit gutter indicator.')));
62
62
  const originalBorder = registerColor('inlineEdit.originalBorder', {
63
63
  light: diffRemoved,
64
64
  dark: diffRemoved,
65
65
  hcDark: diffRemoved,
66
66
  hcLight: diffRemoved
67
- }, ( localize(1297, 'Border color for the original text in inline edits.')));
67
+ }, ( localize(1308, 'Border color for the original text in inline edits.')));
68
68
  const modifiedBorder = registerColor('inlineEdit.modifiedBorder', {
69
69
  light: ( darken(diffInserted, 0.6)),
70
70
  dark: diffInserted,
71
71
  hcDark: diffInserted,
72
72
  hcLight: diffInserted
73
- }, ( localize(1298, 'Border color for the modified text in inline edits.')));
73
+ }, ( localize(1309, 'Border color for the modified text in inline edits.')));
74
74
  const tabWillAcceptModifiedBorder = registerColor('inlineEdit.tabWillAcceptModifiedBorder', {
75
75
  light: ( darken(modifiedBorder, 0)),
76
76
  dark: ( darken(modifiedBorder, 0)),
77
77
  hcDark: ( darken(modifiedBorder, 0)),
78
78
  hcLight: ( darken(modifiedBorder, 0))
79
79
  }, ( localize(
80
- 1299,
80
+ 1310,
81
81
  'Modified border color for the inline edits widget when tab will accept it.'
82
82
  )));
83
83
  const tabWillAcceptOriginalBorder = registerColor('inlineEdit.tabWillAcceptOriginalBorder', {
@@ -86,7 +86,7 @@ const tabWillAcceptOriginalBorder = registerColor('inlineEdit.tabWillAcceptOrigi
86
86
  hcDark: ( darken(originalBorder, 0)),
87
87
  hcLight: ( darken(originalBorder, 0))
88
88
  }, ( localize(
89
- 1300,
89
+ 1311,
90
90
  'Original border color for the inline edits widget over the original text when tab will accept it.'
91
91
  )));
92
92
  function getModifiedBorderColor(tabAction) {