@codingame/monaco-vscode-api 18.4.0 → 19.0.1

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
@@ -29,11 +29,11 @@ import { PieceTreeTextBufferBuilder } from './pieceTreeTextBuffer/pieceTreeTextB
29
29
  import { SearchParams, TextModelSearch } from './textModelSearch.js';
30
30
  import { TokenizationTextModelPart } from './tokens/tokenizationTextModelPart.js';
31
31
  import { AttachedViews } from './tokens/abstractSyntaxTokenBackend.js';
32
- import { InternalModelContentChangeEvent, ModelRawContentChangedEvent, ModelRawFlush, ModelRawEOLChanged, LineInjectedText, ModelRawLineChanged, ModelRawLinesDeleted, ModelRawLinesInserted, ModelInjectedTextChangedEvent, ModelLineHeightChanged, ModelLineHeightChangedEvent } from '../textModelEvents.js';
32
+ import { InternalModelContentChangeEvent, ModelRawContentChangedEvent, ModelRawFlush, ModelRawEOLChanged, LineInjectedText, ModelRawLineChanged, ModelRawLinesDeleted, ModelRawLinesInserted, ModelInjectedTextChangedEvent, ModelLineHeightChanged, ModelLineHeightChangedEvent, ModelFontChanged, ModelFontChangedEvent } from '../textModelEvents.js';
33
33
  import { IInstantiationService } from '../../../platform/instantiation/common/instantiation.js';
34
34
  import { IUndoRedoService } from '../../../platform/undoRedo/common/undoRedo.service.js';
35
35
  import { SetWithKey } from '../../../base/common/collections.js';
36
- import { TextModelEditReason } from '../textModelEditReason.js';
36
+ import { EditReasons } from '../textModelEditReason.js';
37
37
 
38
38
  var TextModel_1;
39
39
  function createTextBufferFactory(text) {
@@ -181,7 +181,7 @@ let TextModel = class TextModel extends Disposable {
181
181
  this._onWillDispose = this._register(( new Emitter()));
182
182
  this.onWillDispose = this._onWillDispose.event;
183
183
  this._onDidChangeDecorations = this._register(( new DidChangeDecorationsEmitter(
184
- (affectedInjectedTextLines, affectedLineHeights) => this.handleBeforeFireDecorationsChangedEvent(affectedInjectedTextLines, affectedLineHeights)
184
+ (affectedInjectedTextLines, affectedLineHeights, affectedFontLines) => this.handleBeforeFireDecorationsChangedEvent(affectedInjectedTextLines, affectedLineHeights, affectedFontLines)
185
185
  )));
186
186
  this.onDidChangeDecorations = this._onDidChangeDecorations.event;
187
187
  this._onDidChangeOptions = this._register(( new Emitter()));
@@ -191,6 +191,8 @@ let TextModel = class TextModel extends Disposable {
191
191
  this._onDidChangeInjectedText = this._register(( new Emitter()));
192
192
  this._onDidChangeLineHeight = this._register(( new Emitter()));
193
193
  this.onDidChangeLineHeight = this._onDidChangeLineHeight.event;
194
+ this._onDidChangeFont = this._register(( new Emitter()));
195
+ this.onDidChangeFont = this._onDidChangeFont.event;
194
196
  this._eventEmitter = this._register(( new DidChangeContentEmitter()));
195
197
  this._languageSelectionListener = this._register(( new MutableDisposable()));
196
198
  this._deltaDecorationCallCnt = 0;
@@ -274,6 +276,7 @@ let TextModel = class TextModel extends Disposable {
274
276
  || this._onDidChangeAttached.hasListeners()
275
277
  || this._onDidChangeInjectedText.hasListeners()
276
278
  || this._onDidChangeLineHeight.hasListeners()
279
+ || this._onDidChangeFont.hasListeners()
277
280
  || this._eventEmitter.hasListeners());
278
281
  }
279
282
  _assertNotDisposed() {
@@ -297,15 +300,15 @@ let TextModel = class TextModel extends Disposable {
297
300
  this._bracketPairs.handleDidChangeContent(change);
298
301
  this._eventEmitter.fire(( new InternalModelContentChangeEvent(rawChange, change)));
299
302
  }
300
- setValue(value) {
303
+ setValue(value, reason = EditReasons.setValue()) {
301
304
  this._assertNotDisposed();
302
305
  if (value === null || value === undefined) {
303
306
  throw illegalArgument();
304
307
  }
305
308
  const { textBuffer, disposable } = createTextBuffer(value, this._options.defaultEOL);
306
- this._setValueFromTextBuffer(textBuffer, disposable);
309
+ this._setValueFromTextBuffer(textBuffer, disposable, reason);
307
310
  }
308
- _createContentChanged2(range, rangeOffset, rangeLength, rangeEndPosition, text, isUndoing, isRedoing, isFlush, isEolChange) {
311
+ _createContentChanged2(range, rangeOffset, rangeLength, rangeEndPosition, text, isUndoing, isRedoing, isFlush, isEolChange, reason) {
309
312
  return {
310
313
  changes: [{
311
314
  range: range,
@@ -318,10 +321,12 @@ let TextModel = class TextModel extends Disposable {
318
321
  versionId: this.getVersionId(),
319
322
  isUndoing: isUndoing,
320
323
  isRedoing: isRedoing,
321
- isFlush: isFlush
324
+ isFlush: isFlush,
325
+ detailedReasons: [reason],
326
+ detailedReasonsChangeLengths: [1],
322
327
  };
323
328
  }
324
- _setValueFromTextBuffer(textBuffer, textBufferDisposable) {
329
+ _setValueFromTextBuffer(textBuffer, textBufferDisposable, reason) {
325
330
  this._assertNotDisposed();
326
331
  const oldFullModelRange = this.getFullModelRange();
327
332
  const oldModelValueLength = this.getValueLengthInRange(oldFullModelRange);
@@ -337,7 +342,7 @@ let TextModel = class TextModel extends Disposable {
337
342
  this._trimAutoWhitespaceLines = null;
338
343
  this._emitContentChangedEvent(( new ModelRawContentChangedEvent([
339
344
  ( new ModelRawFlush())
340
- ], this._versionId, false, false)), this._createContentChanged2(( new Range(1, 1, endLineNumber, endColumn)), 0, oldModelValueLength, ( new Position(endLineNumber, endColumn)), this.getValue(), false, false, true, false));
345
+ ], this._versionId, false, false)), this._createContentChanged2(( new Range(1, 1, endLineNumber, endColumn)), 0, oldModelValueLength, ( new Position(endLineNumber, endColumn)), this.getValue(), false, false, true, false, reason));
341
346
  }
342
347
  setEOL(eol) {
343
348
  this._assertNotDisposed();
@@ -355,7 +360,7 @@ let TextModel = class TextModel extends Disposable {
355
360
  this._onAfterEOLChange();
356
361
  this._emitContentChangedEvent(( new ModelRawContentChangedEvent([
357
362
  ( new ModelRawEOLChanged())
358
- ], this._versionId, false, false)), this._createContentChanged2(( new Range(1, 1, endLineNumber, endColumn)), 0, oldModelValueLength, ( new Position(endLineNumber, endColumn)), this.getValue(), false, false, false, true));
363
+ ], this._versionId, false, false)), this._createContentChanged2(( new Range(1, 1, endLineNumber, endColumn)), 0, oldModelValueLength, ( new Position(endLineNumber, endColumn)), this.getValue(), false, false, false, true, EditReasons.eolChange()));
359
364
  }
360
365
  _onBeforeEOLChange() {
361
366
  this._decorationsTree.ensureAllNodesHaveRanges(this);
@@ -938,18 +943,21 @@ let TextModel = class TextModel extends Disposable {
938
943
  }
939
944
  return result;
940
945
  }
941
- pushEditOperations(beforeCursorState, editOperations, cursorStateComputer, group) {
946
+ edit(edit, options) {
947
+ this.pushEditOperations(null, ( edit.replacements.map(r => ({ range: r.range, text: r.text }))), null);
948
+ }
949
+ pushEditOperations(beforeCursorState, editOperations, cursorStateComputer, group, reason) {
942
950
  try {
943
951
  this._onDidChangeDecorations.beginDeferredEmit();
944
952
  this._eventEmitter.beginDeferredEmit();
945
- return this._pushEditOperations(beforeCursorState, this._validateEditOperations(editOperations), cursorStateComputer, group);
953
+ return this._pushEditOperations(beforeCursorState, this._validateEditOperations(editOperations), cursorStateComputer, group, reason);
946
954
  }
947
955
  finally {
948
956
  this._eventEmitter.endDeferredEmit();
949
957
  this._onDidChangeDecorations.endDeferredEmit();
950
958
  }
951
959
  }
952
- _pushEditOperations(beforeCursorState, editOperations, cursorStateComputer, group) {
960
+ _pushEditOperations(beforeCursorState, editOperations, cursorStateComputer, group, reason) {
953
961
  if (this._options.trimAutoWhitespace && this._trimAutoWhitespaceLines) {
954
962
  const incomingEdits = ( editOperations.map((op) => {
955
963
  return {
@@ -1010,7 +1018,7 @@ let TextModel = class TextModel extends Disposable {
1010
1018
  if (this._initialUndoRedoSnapshot === null) {
1011
1019
  this._initialUndoRedoSnapshot = this._undoRedoService.createSnapshot(this.uri);
1012
1020
  }
1013
- return this._commandManager.pushEditOperation(beforeCursorState, editOperations, cursorStateComputer, group);
1021
+ return this._commandManager.pushEditOperation(beforeCursorState, editOperations, cursorStateComputer, group, reason);
1014
1022
  }
1015
1023
  _applyUndo(changes, eol, resultingAlternativeVersionId, resultingSelection) {
1016
1024
  const edits = ( changes.map((change) => {
@@ -1061,19 +1069,19 @@ let TextModel = class TextModel extends Disposable {
1061
1069
  this._onDidChangeDecorations.endDeferredEmit();
1062
1070
  }
1063
1071
  }
1064
- applyEdits(rawOperations, computeUndoEdits = false) {
1072
+ applyEdits(rawOperations, computeUndoEdits, reason) {
1065
1073
  try {
1066
1074
  this._onDidChangeDecorations.beginDeferredEmit();
1067
1075
  this._eventEmitter.beginDeferredEmit();
1068
1076
  const operations = this._validateEditOperations(rawOperations);
1069
- return this._doApplyEdits(operations, computeUndoEdits);
1077
+ return this._doApplyEdits(operations, computeUndoEdits ?? false, reason ?? EditReasons.applyEdits());
1070
1078
  }
1071
1079
  finally {
1072
1080
  this._eventEmitter.endDeferredEmit();
1073
1081
  this._onDidChangeDecorations.endDeferredEmit();
1074
1082
  }
1075
1083
  }
1076
- _doApplyEdits(rawOperations, computeUndoEdits) {
1084
+ _doApplyEdits(rawOperations, computeUndoEdits, reason) {
1077
1085
  const oldLineCount = this._buffer.getLineCount();
1078
1086
  const result = this._buffer.applyEdits(rawOperations, this._options.trimAutoWhitespace, computeUndoEdits);
1079
1087
  const newLineCount = this._buffer.getLineCount();
@@ -1147,7 +1155,9 @@ let TextModel = class TextModel extends Disposable {
1147
1155
  versionId: this.getVersionId(),
1148
1156
  isUndoing: this._isUndoing,
1149
1157
  isRedoing: this._isRedoing,
1150
- isFlush: false
1158
+ isFlush: false,
1159
+ detailedReasons: [reason],
1160
+ detailedReasonsChangeLengths: [contentChanges.length],
1151
1161
  });
1152
1162
  }
1153
1163
  return (result.reverseEdits === null ? undefined : result.reverseEdits);
@@ -1164,7 +1174,7 @@ let TextModel = class TextModel extends Disposable {
1164
1174
  canRedo() {
1165
1175
  return this._undoRedoService.canRedo(this.uri);
1166
1176
  }
1167
- handleBeforeFireDecorationsChangedEvent(affectedInjectedTextLines, affectedLineHeights) {
1177
+ handleBeforeFireDecorationsChangedEvent(affectedInjectedTextLines, affectedLineHeights, affectedFontLines) {
1168
1178
  if (affectedInjectedTextLines && affectedInjectedTextLines.size > 0) {
1169
1179
  const affectedLines = Array.from(affectedInjectedTextLines);
1170
1180
  const lineChangeEvents = ( affectedLines.map(lineNumber => ( new ModelRawLineChanged(
@@ -1184,6 +1194,11 @@ let TextModel = class TextModel extends Disposable {
1184
1194
  ))));
1185
1195
  this._onDidChangeLineHeight.fire(( new ModelLineHeightChangedEvent(lineHeightChangeEvent)));
1186
1196
  }
1197
+ if (affectedFontLines && affectedFontLines.size > 0) {
1198
+ const affectedLines = Array.from(affectedFontLines);
1199
+ const fontChangeEvent = ( affectedLines.map(fontChange => ( new ModelFontChanged(fontChange.ownerId, fontChange.lineNumber))));
1200
+ this._onDidChangeFont.fire(( new ModelFontChangedEvent(fontChangeEvent)));
1201
+ }
1187
1202
  }
1188
1203
  changeDecorations(callback, ownerId = 0) {
1189
1204
  this._assertNotDisposed();
@@ -1302,30 +1317,30 @@ let TextModel = class TextModel extends Disposable {
1302
1317
  }
1303
1318
  return this._decorationsTree.getNodeRange(this, node);
1304
1319
  }
1305
- getLineDecorations(lineNumber, ownerId = 0, filterOutValidation = false) {
1320
+ getLineDecorations(lineNumber, ownerId = 0, filterOutValidation = false, filterFontDecorations = false) {
1306
1321
  if (lineNumber < 1 || lineNumber > this.getLineCount()) {
1307
1322
  return [];
1308
1323
  }
1309
- return this.getLinesDecorations(lineNumber, lineNumber, ownerId, filterOutValidation);
1324
+ return this.getLinesDecorations(lineNumber, lineNumber, ownerId, filterOutValidation, filterFontDecorations);
1310
1325
  }
1311
- getLinesDecorations(_startLineNumber, _endLineNumber, ownerId = 0, filterOutValidation = false, onlyMarginDecorations = false) {
1326
+ getLinesDecorations(_startLineNumber, _endLineNumber, ownerId = 0, filterOutValidation = false, filterFontDecorations = false, onlyMarginDecorations = false) {
1312
1327
  const lineCount = this.getLineCount();
1313
1328
  const startLineNumber = Math.min(lineCount, Math.max(1, _startLineNumber));
1314
1329
  const endLineNumber = Math.min(lineCount, Math.max(1, _endLineNumber));
1315
1330
  const endColumn = this.getLineMaxColumn(endLineNumber);
1316
1331
  const range = ( new Range(startLineNumber, 1, endLineNumber, endColumn));
1317
- const decorations = this._getDecorationsInRange(range, ownerId, filterOutValidation, onlyMarginDecorations);
1332
+ const decorations = this._getDecorationsInRange(range, ownerId, filterOutValidation, filterFontDecorations, onlyMarginDecorations);
1318
1333
  pushMany(decorations, this._decorationProvider.getDecorationsInRange(range, ownerId, filterOutValidation));
1319
1334
  return decorations;
1320
1335
  }
1321
- getDecorationsInRange(range, ownerId = 0, filterOutValidation = false, onlyMinimapDecorations = false, onlyMarginDecorations = false) {
1336
+ getDecorationsInRange(range, ownerId = 0, filterOutValidation = false, filterFontDecorations = false, onlyMinimapDecorations = false, onlyMarginDecorations = false) {
1322
1337
  const validatedRange = this.validateRange(range);
1323
- const decorations = this._getDecorationsInRange(validatedRange, ownerId, filterOutValidation, onlyMarginDecorations);
1338
+ const decorations = this._getDecorationsInRange(validatedRange, ownerId, filterOutValidation, filterFontDecorations, onlyMarginDecorations);
1324
1339
  pushMany(decorations, this._decorationProvider.getDecorationsInRange(validatedRange, ownerId, filterOutValidation, onlyMinimapDecorations));
1325
1340
  return decorations;
1326
1341
  }
1327
- getOverviewRulerDecorations(ownerId = 0, filterOutValidation = false) {
1328
- return this._decorationsTree.getAll(this, ownerId, filterOutValidation, true, false);
1342
+ getOverviewRulerDecorations(ownerId = 0, filterOutValidation = false, filterFontDecorations = false) {
1343
+ return this._decorationsTree.getAll(this, ownerId, filterOutValidation, filterFontDecorations, true, false);
1329
1344
  }
1330
1345
  getInjectedTextDecorations(ownerId = 0) {
1331
1346
  return this._decorationsTree.getAllInjectedText(this, ownerId);
@@ -1339,18 +1354,23 @@ let TextModel = class TextModel extends Disposable {
1339
1354
  const result = this._decorationsTree.getInjectedTextInInterval(this, startOffset, endOffset, 0);
1340
1355
  return LineInjectedText.fromDecorations(result).filter(t => t.lineNumber === lineNumber);
1341
1356
  }
1342
- getAllDecorations(ownerId = 0, filterOutValidation = false) {
1343
- let result = this._decorationsTree.getAll(this, ownerId, filterOutValidation, false, false);
1357
+ getFontDecorationsInRange(range, ownerId = 0) {
1358
+ const startOffset = this._buffer.getOffsetAt(range.startLineNumber, range.startColumn);
1359
+ const endOffset = this._buffer.getOffsetAt(range.endLineNumber, range.endColumn);
1360
+ return this._decorationsTree.getFontDecorationsInInterval(this, startOffset, endOffset, ownerId);
1361
+ }
1362
+ getAllDecorations(ownerId = 0, filterOutValidation = false, filterFontDecorations = false) {
1363
+ let result = this._decorationsTree.getAll(this, ownerId, filterOutValidation, filterFontDecorations, false, false);
1344
1364
  result = result.concat(this._decorationProvider.getAllDecorations(ownerId, filterOutValidation));
1345
1365
  return result;
1346
1366
  }
1347
1367
  getAllMarginDecorations(ownerId = 0) {
1348
- return this._decorationsTree.getAll(this, ownerId, false, false, true);
1368
+ return this._decorationsTree.getAll(this, ownerId, false, false, false, true);
1349
1369
  }
1350
- _getDecorationsInRange(filterRange, filterOwnerId, filterOutValidation, onlyMarginDecorations) {
1370
+ _getDecorationsInRange(filterRange, filterOwnerId, filterOutValidation, filterFontDecorations, onlyMarginDecorations) {
1351
1371
  const startOffset = this._buffer.getOffsetAt(filterRange.startLineNumber, filterRange.startColumn);
1352
1372
  const endOffset = this._buffer.getOffsetAt(filterRange.endLineNumber, filterRange.endColumn);
1353
- return this._decorationsTree.getAllInInterval(this, startOffset, endOffset, filterOwnerId, filterOutValidation, onlyMarginDecorations);
1373
+ return this._decorationsTree.getAllInInterval(this, startOffset, endOffset, filterOwnerId, filterOutValidation, filterFontDecorations, onlyMarginDecorations);
1354
1374
  }
1355
1375
  getRangeAt(start, end) {
1356
1376
  return this._buffer.getRangeAt(start, end - start);
@@ -1372,6 +1392,10 @@ let TextModel = class TextModel extends Disposable {
1372
1392
  const oldRange = this.getDecorationRange(decorationId);
1373
1393
  this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(ownerId, decorationId, oldRange.startLineNumber, null);
1374
1394
  }
1395
+ if (node.options.affectsFont) {
1396
+ const oldRange = this.getDecorationRange(decorationId);
1397
+ this._onDidChangeDecorations.recordLineAffectedByFontChange(ownerId, node.id, oldRange.startLineNumber);
1398
+ }
1375
1399
  const range = this._validateRangeRelaxedNoAllocations(_range);
1376
1400
  const startOffset = this._buffer.getOffsetAt(range.startLineNumber, range.startColumn);
1377
1401
  const endOffset = this._buffer.getOffsetAt(range.endLineNumber, range.endColumn);
@@ -1388,6 +1412,9 @@ let TextModel = class TextModel extends Disposable {
1388
1412
  if (node.options.lineHeight !== null) {
1389
1413
  this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(ownerId, decorationId, range.startLineNumber, node.options.lineHeight);
1390
1414
  }
1415
+ if (node.options.affectsFont) {
1416
+ this._onDidChangeDecorations.recordLineAffectedByFontChange(ownerId, node.id, range.startLineNumber);
1417
+ }
1391
1418
  }
1392
1419
  _changeDecorationOptionsImpl(ownerId, decorationId, options) {
1393
1420
  const node = this._decorations[decorationId];
@@ -1410,6 +1437,10 @@ let TextModel = class TextModel extends Disposable {
1410
1437
  const nodeRange = this._decorationsTree.getNodeRange(this, node);
1411
1438
  this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(ownerId, decorationId, nodeRange.startLineNumber, options.lineHeight);
1412
1439
  }
1440
+ if (node.options.affectsFont || options.affectsFont) {
1441
+ const nodeRange = this._decorationsTree.getNodeRange(this, node);
1442
+ this._onDidChangeDecorations.recordLineAffectedByFontChange(ownerId, decorationId, nodeRange.startLineNumber);
1443
+ }
1413
1444
  const movedInOverviewRuler = nodeWasInOverviewRuler !== nodeIsInOverviewRuler;
1414
1445
  const changedWhetherInjectedText = isOptionsInjectedText(options) !== isNodeInjectedText(node);
1415
1446
  if (movedInOverviewRuler || changedWhetherInjectedText) {
@@ -1451,6 +1482,10 @@ let TextModel = class TextModel extends Disposable {
1451
1482
  const nodeRange = this._decorationsTree.getNodeRange(this, node);
1452
1483
  this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(ownerId, decorationId, nodeRange.startLineNumber, null);
1453
1484
  }
1485
+ if (node.options.affectsFont) {
1486
+ const nodeRange = this._decorationsTree.getNodeRange(this, node);
1487
+ this._onDidChangeDecorations.recordLineAffectedByFontChange(ownerId, decorationId, nodeRange.startLineNumber);
1488
+ }
1454
1489
  this._decorationsTree.delete(node);
1455
1490
  if (!suppressEvents) {
1456
1491
  this._onDidChangeDecorations.checkAffectedAndFire(node.options);
@@ -1481,6 +1516,9 @@ let TextModel = class TextModel extends Disposable {
1481
1516
  if (node.options.lineHeight !== null) {
1482
1517
  this._onDidChangeDecorations.recordLineAffectedByLineHeightChange(ownerId, node.id, range.startLineNumber, node.options.lineHeight);
1483
1518
  }
1519
+ if (node.options.affectsFont) {
1520
+ this._onDidChangeDecorations.recordLineAffectedByFontChange(ownerId, node.id, range.startLineNumber);
1521
+ }
1484
1522
  if (!suppressEvents) {
1485
1523
  this._onDidChangeDecorations.checkAffectedAndFire(options);
1486
1524
  }
@@ -1535,9 +1573,6 @@ let TextModel = class TextModel extends Disposable {
1535
1573
  toString() {
1536
1574
  return `TextModel(${( this.uri.toString())})`;
1537
1575
  }
1538
- editWithReason(editReason, cb) {
1539
- return TextModelEditReason.editWithReason(editReason, cb);
1540
- }
1541
1576
  };
1542
1577
  TextModel = TextModel_1 = ( __decorate([
1543
1578
  ( __param(4, IUndoRedoService)),
@@ -1573,7 +1608,7 @@ class DecorationsTrees {
1573
1608
  this._injectedTextDecorationsTree = ( new IntervalTree());
1574
1609
  }
1575
1610
  ensureAllNodesHaveRanges(host) {
1576
- this.getAll(host, 0, false, false, false);
1611
+ this.getAll(host, 0, false, false, false, false);
1577
1612
  }
1578
1613
  _ensureNodesHaveRanges(host, nodes) {
1579
1614
  for (const node of nodes) {
@@ -1583,45 +1618,50 @@ class DecorationsTrees {
1583
1618
  }
1584
1619
  return nodes;
1585
1620
  }
1586
- getAllInInterval(host, start, end, filterOwnerId, filterOutValidation, onlyMarginDecorations) {
1621
+ getAllInInterval(host, start, end, filterOwnerId, filterOutValidation, filterFontDecorations, onlyMarginDecorations) {
1587
1622
  const versionId = host.getVersionId();
1588
- const result = this._intervalSearch(start, end, filterOwnerId, filterOutValidation, versionId, onlyMarginDecorations);
1623
+ const result = this._intervalSearch(start, end, filterOwnerId, filterOutValidation, filterFontDecorations, versionId, onlyMarginDecorations);
1589
1624
  return this._ensureNodesHaveRanges(host, result);
1590
1625
  }
1591
- _intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations) {
1592
- const r0 = this._decorationsTree0.intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);
1593
- const r1 = this._decorationsTree1.intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);
1594
- const r2 = this._injectedTextDecorationsTree.intervalSearch(start, end, filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);
1626
+ _intervalSearch(start, end, filterOwnerId, filterOutValidation, filterFontDecorations, cachedVersionId, onlyMarginDecorations) {
1627
+ const r0 = this._decorationsTree0.intervalSearch(start, end, filterOwnerId, filterOutValidation, filterFontDecorations, cachedVersionId, onlyMarginDecorations);
1628
+ const r1 = this._decorationsTree1.intervalSearch(start, end, filterOwnerId, filterOutValidation, filterFontDecorations, cachedVersionId, onlyMarginDecorations);
1629
+ const r2 = this._injectedTextDecorationsTree.intervalSearch(start, end, filterOwnerId, filterOutValidation, filterFontDecorations, cachedVersionId, onlyMarginDecorations);
1595
1630
  return r0.concat(r1).concat(r2);
1596
1631
  }
1597
1632
  getInjectedTextInInterval(host, start, end, filterOwnerId) {
1598
1633
  const versionId = host.getVersionId();
1599
- const result = this._injectedTextDecorationsTree.intervalSearch(start, end, filterOwnerId, false, versionId, false);
1634
+ const result = this._injectedTextDecorationsTree.intervalSearch(start, end, filterOwnerId, false, false, versionId, false);
1600
1635
  return this._ensureNodesHaveRanges(host, result).filter((i) => i.options.showIfCollapsed || !i.range.isEmpty());
1601
1636
  }
1637
+ getFontDecorationsInInterval(host, start, end, filterOwnerId) {
1638
+ const versionId = host.getVersionId();
1639
+ const decorations = this._decorationsTree0.intervalSearch(start, end, filterOwnerId, false, false, versionId, false);
1640
+ return this._ensureNodesHaveRanges(host, decorations).filter((i) => i.options.affectsFont);
1641
+ }
1602
1642
  getAllInjectedText(host, filterOwnerId) {
1603
1643
  const versionId = host.getVersionId();
1604
- const result = this._injectedTextDecorationsTree.search(filterOwnerId, false, versionId, false);
1644
+ const result = this._injectedTextDecorationsTree.search(filterOwnerId, false, false, versionId, false);
1605
1645
  return this._ensureNodesHaveRanges(host, result).filter((i) => i.options.showIfCollapsed || !i.range.isEmpty());
1606
1646
  }
1607
1647
  getAllCustomLineHeights(host, filterOwnerId) {
1608
1648
  const versionId = host.getVersionId();
1609
- const result = this._search(filterOwnerId, false, false, versionId, false);
1649
+ const result = this._search(filterOwnerId, false, false, false, versionId, false);
1610
1650
  return this._ensureNodesHaveRanges(host, result).filter((i) => typeof i.options.lineHeight === 'number');
1611
1651
  }
1612
- getAll(host, filterOwnerId, filterOutValidation, overviewRulerOnly, onlyMarginDecorations) {
1652
+ getAll(host, filterOwnerId, filterOutValidation, filterFontDecorations, overviewRulerOnly, onlyMarginDecorations) {
1613
1653
  const versionId = host.getVersionId();
1614
- const result = this._search(filterOwnerId, filterOutValidation, overviewRulerOnly, versionId, onlyMarginDecorations);
1654
+ const result = this._search(filterOwnerId, filterOutValidation, filterFontDecorations, overviewRulerOnly, versionId, onlyMarginDecorations);
1615
1655
  return this._ensureNodesHaveRanges(host, result);
1616
1656
  }
1617
- _search(filterOwnerId, filterOutValidation, overviewRulerOnly, cachedVersionId, onlyMarginDecorations) {
1657
+ _search(filterOwnerId, filterOutValidation, filterFontDecorations, overviewRulerOnly, cachedVersionId, onlyMarginDecorations) {
1618
1658
  if (overviewRulerOnly) {
1619
- return this._decorationsTree1.search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);
1659
+ return this._decorationsTree1.search(filterOwnerId, filterOutValidation, filterFontDecorations, cachedVersionId, onlyMarginDecorations);
1620
1660
  }
1621
1661
  else {
1622
- const r0 = this._decorationsTree0.search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);
1623
- const r1 = this._decorationsTree1.search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);
1624
- const r2 = this._injectedTextDecorationsTree.search(filterOwnerId, filterOutValidation, cachedVersionId, onlyMarginDecorations);
1662
+ const r0 = this._decorationsTree0.search(filterOwnerId, filterOutValidation, filterFontDecorations, cachedVersionId, onlyMarginDecorations);
1663
+ const r1 = this._decorationsTree1.search(filterOwnerId, filterOutValidation, filterFontDecorations, cachedVersionId, onlyMarginDecorations);
1664
+ const r2 = this._injectedTextDecorationsTree.search(filterOwnerId, filterOutValidation, filterFontDecorations, cachedVersionId, onlyMarginDecorations);
1625
1665
  return r0.concat(r1).concat(r2);
1626
1666
  }
1627
1667
  }
@@ -1798,6 +1838,8 @@ class ModelDecorationOptions {
1798
1838
  this.lineNumberHoverMessage = options.lineNumberHoverMessage || null;
1799
1839
  this.isWholeLine = options.isWholeLine || false;
1800
1840
  this.lineHeight = options.lineHeight ? Math.min(options.lineHeight, LINE_HEIGHT_CEILING) : null;
1841
+ this.fontSize = options.fontSize || null;
1842
+ this.affectsFont = !!options.fontSize || !!options.fontFamily || !!options.fontWeight || !!options.fontStyle;
1801
1843
  this.showIfCollapsed = options.showIfCollapsed || false;
1802
1844
  this.collapseOnReplaceEdit = options.collapseOnReplaceEdit || false;
1803
1845
  this.overviewRuler = options.overviewRuler ? ( new ModelDecorationOverviewRulerOptions(options.overviewRuler)) : null;
@@ -1843,6 +1885,16 @@ class LineHeightChangingDecoration {
1843
1885
  this.lineHeight = lineHeight;
1844
1886
  }
1845
1887
  }
1888
+ class LineFontChangingDecoration {
1889
+ static toKey(obj) {
1890
+ return `${obj.ownerId};${obj.decorationId};${obj.lineNumber}`;
1891
+ }
1892
+ constructor(ownerId, decorationId, lineNumber) {
1893
+ this.ownerId = ownerId;
1894
+ this.decorationId = decorationId;
1895
+ this.lineNumber = lineNumber;
1896
+ }
1897
+ }
1846
1898
  class DidChangeDecorationsEmitter extends Disposable {
1847
1899
  constructor(handleBeforeFire) {
1848
1900
  super();
@@ -1851,6 +1903,7 @@ class DidChangeDecorationsEmitter extends Disposable {
1851
1903
  this.event = this._actual.event;
1852
1904
  this._affectedInjectedTextLines = null;
1853
1905
  this._affectedLineHeights = null;
1906
+ this._affectedFontLines = null;
1854
1907
  this._deferredCnt = 0;
1855
1908
  this._shouldFireDeferred = false;
1856
1909
  this._affectsMinimap = false;
@@ -1874,6 +1927,8 @@ class DidChangeDecorationsEmitter extends Disposable {
1874
1927
  this._affectedInjectedTextLines = null;
1875
1928
  this._affectedLineHeights?.clear();
1876
1929
  this._affectedLineHeights = null;
1930
+ this._affectedFontLines?.clear();
1931
+ this._affectedFontLines = null;
1877
1932
  }
1878
1933
  }
1879
1934
  recordLineAffectedByInjectedText(lineNumber) {
@@ -1888,6 +1943,12 @@ class DidChangeDecorationsEmitter extends Disposable {
1888
1943
  }
1889
1944
  this._affectedLineHeights.add(( new LineHeightChangingDecoration(ownerId, decorationId, lineNumber, lineHeight)));
1890
1945
  }
1946
+ recordLineAffectedByFontChange(ownerId, decorationId, lineNumber) {
1947
+ if (!this._affectedFontLines) {
1948
+ this._affectedFontLines = ( new SetWithKey([], LineFontChangingDecoration.toKey));
1949
+ }
1950
+ this._affectedFontLines.add(( new LineFontChangingDecoration(ownerId, decorationId, lineNumber)));
1951
+ }
1891
1952
  checkAffectedAndFire(options) {
1892
1953
  this._affectsMinimap ||= !!options.minimap?.position;
1893
1954
  this._affectsOverviewRuler ||= !!options.overviewRuler?.color;
@@ -1910,7 +1971,7 @@ class DidChangeDecorationsEmitter extends Disposable {
1910
1971
  }
1911
1972
  }
1912
1973
  doFire() {
1913
- this.handleBeforeFire(this._affectedInjectedTextLines, this._affectedLineHeights);
1974
+ this.handleBeforeFire(this._affectedInjectedTextLines, this._affectedLineHeights, this._affectedFontLines);
1914
1975
  const event = {
1915
1976
  affectsMinimap: this._affectsMinimap,
1916
1977
  affectsOverviewRuler: this._affectsOverviewRuler,
@@ -7,8 +7,8 @@ import { LineRange } from '../../core/ranges/lineRange.js';
7
7
  import '../../../../base/common/observableInternal/index.js';
8
8
  import { itemsEquals, itemEquals, equalsIfDefined } from '../../../../base/common/equals.js';
9
9
  import { observableSignal } from '../../../../base/common/observableInternal/observables/observableSignal.js';
10
- import { derivedOpts } from '../../../../base/common/observableInternal/observables/derived.js';
11
10
  import { observableValueOpts } from '../../../../base/common/observableInternal/observables/observableValueOpts.js';
11
+ import { derivedOpts } from '../../../../base/common/observableInternal/observables/derived.js';
12
12
 
13
13
  class AttachedViews {
14
14
  constructor() {
@@ -1,4 +1,3 @@
1
- import type * as TreeSitter from "@vscode/tree-sitter-wasm";
2
1
  import { Emitter, Event } from "../../../../../base/common/event.js";
3
2
  import { StandardTokenType } from "../../../encodedTokenAttributes.js";
4
3
  import { ILanguageIdCodec } from "../../../languages.js";
@@ -36,5 +35,3 @@ export declare class TreeSitterSyntaxTokenBackend extends AbstractSyntaxTokenBac
36
35
  tokenizeLinesAt(lineNumber: number, lines: string[]): LineTokens[] | null;
37
36
  get hasTokens(): boolean;
38
37
  }
39
- export declare function rangesEqual(a: TreeSitter.Range, b: TreeSitter.Range): boolean;
40
- export declare function rangesIntersect(a: TreeSitter.Range, b: TreeSitter.Range): boolean;
@@ -156,17 +156,5 @@ TreeSitterSyntaxTokenBackend = ( __decorate([
156
156
  ( __param(4, ITreeSitterLibraryService)),
157
157
  ( __param(5, IInstantiationService))
158
158
  ], TreeSitterSyntaxTokenBackend));
159
- function rangesEqual(a, b) {
160
- return (a.startPosition.row === b.startPosition.row)
161
- && (a.startPosition.column === b.startPosition.column)
162
- && (a.endPosition.row === b.endPosition.row)
163
- && (a.endPosition.column === b.endPosition.column)
164
- && (a.startIndex === b.startIndex)
165
- && (a.endIndex === b.endIndex);
166
- }
167
- function rangesIntersect(a, b) {
168
- return (a.startIndex <= b.startIndex && a.endIndex >= b.startIndex) ||
169
- (b.startIndex <= a.startIndex && b.endIndex >= a.startIndex);
170
- }
171
159
 
172
- export { TreeSitterSyntaxTokenBackend, rangesEqual, rangesIntersect };
160
+ export { TreeSitterSyntaxTokenBackend };
@@ -51,3 +51,5 @@ export interface RangeChange {
51
51
  newRangeStartOffset: number;
52
52
  newRangeEndOffset: number;
53
53
  }
54
+ export declare function rangesEqual(a: TreeSitter.Range, b: TreeSitter.Range): boolean;
55
+ export declare function rangesIntersect(a: TreeSitter.Range, b: TreeSitter.Range): boolean;
@@ -8,7 +8,6 @@ import { ILogService } from '../../../../../platform/log/common/log.service.js';
8
8
  import { ITelemetryService } from '../../../../../platform/telemetry/common/telemetry.service.js';
9
9
  import { TextLength } from '../../../core/text/textLength.js';
10
10
  import { gotoParent, getClosestPreviousNodes, nextSiblingOrParentSibling, gotoNthChild } from './cursorUtils.js';
11
- import { rangesIntersect, rangesEqual } from './treeSitterSyntaxTokenBackend.js';
12
11
  import { Range } from '../../../core/range.js';
13
12
  import { transaction } from '../../../../../base/common/observableInternal/transaction.js';
14
13
  import { observableValue } from '../../../../../base/common/observableInternal/observables/observableValue.js';
@@ -377,5 +376,17 @@ function newTimeOutProgressCallback() {
377
376
  return false;
378
377
  };
379
378
  }
379
+ function rangesEqual(a, b) {
380
+ return (a.startPosition.row === b.startPosition.row)
381
+ && (a.startPosition.column === b.startPosition.column)
382
+ && (a.endPosition.row === b.endPosition.row)
383
+ && (a.endPosition.column === b.endPosition.column)
384
+ && (a.startIndex === b.startIndex)
385
+ && (a.endIndex === b.endIndex);
386
+ }
387
+ function rangesIntersect(a, b) {
388
+ return (a.startIndex <= b.startIndex && a.endIndex >= b.startIndex) ||
389
+ (b.startIndex <= a.startIndex && b.endIndex >= a.startIndex);
390
+ }
380
391
 
381
- export { TreeSitterTree };
392
+ export { TreeSitterTree, rangesEqual, rangesIntersect };
@@ -13,13 +13,14 @@ import { IWordAtPosition } from "./core/wordHelper.js";
13
13
  import { FormattingOptions } from "./languages.js";
14
14
  import { ILanguageSelection } from "./languages/language.js";
15
15
  import { IBracketPairsTextModelPart } from "./textModelBracketPairs.js";
16
- import { IModelContentChange, IModelContentChangedEvent, IModelDecorationsChangedEvent, IModelLanguageChangedEvent, IModelLanguageConfigurationChangedEvent, IModelOptionsChangedEvent, IModelTokensChangedEvent, InternalModelContentChangeEvent, ModelInjectedTextChangedEvent, ModelLineHeightChangedEvent } from "./textModelEvents.js";
16
+ import { IModelContentChange, IModelContentChangedEvent, IModelDecorationsChangedEvent, IModelLanguageChangedEvent, IModelLanguageConfigurationChangedEvent, IModelOptionsChangedEvent, IModelTokensChangedEvent, InternalModelContentChangeEvent, ModelFontChangedEvent, ModelInjectedTextChangedEvent, ModelLineHeightChangedEvent } from "./textModelEvents.js";
17
17
  import { IGuidesTextModelPart } from "./textModelGuides.js";
18
18
  import { ITokenizationTextModelPart } from "./tokenizationTextModelPart.js";
19
19
  import { UndoRedoGroup } from "../../platform/undoRedo/common/undoRedo.js";
20
- import { TokenArray } from "./tokens/tokenArray.js";
20
+ import { TokenArray } from "./tokens/lineTokens.js";
21
21
  import { IEditorModel } from "./editorCommon.js";
22
22
  import { TextModelEditReason } from "./textModelEditReason.js";
23
+ import { TextEdit } from "./core/edits/textEdit.js";
23
24
  export declare enum OverviewRulerLane {
24
25
  Left = 1,
25
26
  Center = 2,
@@ -87,6 +88,10 @@ export interface IModelDecorationOptions {
87
88
  glyphMarginClassName?: string | null;
88
89
  glyphMargin?: IModelDecorationGlyphMarginOptions | null;
89
90
  lineHeight?: number | null;
91
+ fontFamily?: string | null;
92
+ fontSize?: string | null;
93
+ fontWeight?: string | null;
94
+ fontStyle?: string | null;
90
95
  linesDecorationsClassName?: string | null;
91
96
  linesDecorationsTooltip?: string | null;
92
97
  lineNumberClassName?: string | null;
@@ -100,6 +105,7 @@ export interface IModelDecorationOptions {
100
105
  before?: InjectedTextOptions | null;
101
106
  hideInCommentTokens?: boolean | null;
102
107
  hideInStringTokens?: boolean | null;
108
+ affectsFont?: boolean | null;
103
109
  }
104
110
  export interface InjectedTextOptions {
105
111
  readonly content: string;
@@ -12,6 +12,7 @@ import { IDocumentDiffProviderOptions } from "@codingame/monaco-vscode-chat-serv
12
12
  import { FindSectionHeaderOptions, SectionHeader } from "./findSectionHeaders.js";
13
13
  import { IRawModelData, IWorkerTextModelSyncChannelServer } from "./textModelSync/textModelSync.protocol.js";
14
14
  import { ICommonModel } from "./textModelSync/textModelSync.impl.js";
15
+ import { ISerializedStringEdit } from "../core/edits/stringEdit.js";
15
16
  export interface IMirrorModel extends IMirrorTextModel {
16
17
  readonly uri: URI;
17
18
  readonly version: number;
@@ -43,6 +44,9 @@ export declare class EditorWorker implements IDisposable, IWorkerTextModelSyncCh
43
44
  private static computeDiff;
44
45
  private static _modelsAreIdentical;
45
46
  $computeDirtyDiff(originalUrl: string, modifiedUrl: string, ignoreTrimWhitespace: boolean): Promise<IChange[] | null>;
47
+ $computeStringDiff(original: string, modified: string, options: {
48
+ maxComputationTimeMs: number;
49
+ }, algorithm: DiffAlgorithmName): ISerializedStringEdit;
46
50
  private static readonly _diffLimit;
47
51
  $computeMoreMinimalEdits(modelUrl: string, edits: TextEdit[], pretty: boolean): Promise<TextEdit[]>;
48
52
  $computeHumanReadableDiff(modelUrl: string, edits: TextEdit[], options: ILinesDiffComputerOptions): TextEdit[];
@@ -8,11 +8,14 @@ import { createMonacoBaseAPI } from './editorBaseApi.js';
8
8
  import { StopWatch } from '../../../base/common/stopwatch.js';
9
9
  import { UnicodeTextModelHighlighter } from './unicodeTextModelHighlighter.js';
10
10
  import { DiffComputer } from '../diff/legacyLinesDiffComputer.js';
11
+ import { DetailedLineRangeMapping } from '../diff/rangeMapping.js';
11
12
  import { linesDiffComputers } from '../diff/linesDiffComputers.js';
12
13
  import { BugIndicatingError } from '../../../base/common/errors.js';
13
14
  import { computeDefaultDocumentColors } from '../languages/defaultDocumentColorsComputer.js';
14
15
  import { findSectionHeaders } from './findSectionHeaders.js';
15
16
  import { WorkerTextModelSyncServer } from './textModelSync/textModelSync.impl.js';
17
+ import { StringText } from '../core/text/abstractText.js';
18
+ import '../core/text/positionToOffset.js';
16
19
 
17
20
  class EditorWorker {
18
21
  constructor(_foreignModule = null) {
@@ -127,6 +130,17 @@ class EditorWorker {
127
130
  }));
128
131
  return diffComputer.computeDiff().changes;
129
132
  }
133
+ $computeStringDiff(original, modified, options, algorithm) {
134
+ const diffAlgorithm = algorithm === 'advanced' ? linesDiffComputers.getDefault() : linesDiffComputers.getLegacy();
135
+ const originalText = ( new StringText(original));
136
+ const originalLines = originalText.getLines();
137
+ const modifiedText = ( new StringText(modified));
138
+ const modifiedLines = modifiedText.getLines();
139
+ const result = diffAlgorithm.computeDiff(originalLines, modifiedLines, { ignoreTrimWhitespace: false, maxComputationTimeMs: options.maxComputationTimeMs, computeMoves: false, extendToSubwords: false });
140
+ const textEdit = DetailedLineRangeMapping.toTextEdit(result.changes, modifiedText);
141
+ const strEdit = originalText.getTransformer().getStringEdit(textEdit);
142
+ return strEdit.toJson();
143
+ }
130
144
  static { this._diffLimit = 100000; }
131
145
  async $computeMoreMinimalEdits(modelUrl, edits, pretty) {
132
146
  const model = this._getModel(modelUrl);
@@ -1,4 +1,5 @@
1
1
  import { URI } from "../../../base/common/uri.js";
2
+ import { StringEdit } from "../core/edits/stringEdit.js";
2
3
  import { IRange } from "../core/range.js";
3
4
  import { IDocumentDiffProviderOptions, IDocumentDiff } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/editor/common/diff/documentDiffProvider";
4
5
  import { IChange } from "../diff/legacyLinesDiffComputer.js";
@@ -16,6 +17,9 @@ export interface IEditorWorkerService {
16
17
  computeDirtyDiff(original: URI, modified: URI, ignoreTrimWhitespace: boolean): Promise<IChange[] | null>;
17
18
  computeMoreMinimalEdits(resource: URI, edits: TextEdit[] | null | undefined, pretty?: boolean): Promise<TextEdit[] | undefined>;
18
19
  computeHumanReadableDiff(resource: URI, edits: TextEdit[] | null | undefined): Promise<TextEdit[] | undefined>;
20
+ computeStringEditFromDiff(original: string, modified: string, options: {
21
+ maxComputationTimeMs: number;
22
+ }, algorithm: DiffAlgorithmName): Promise<StringEdit>;
19
23
  canComputeWordRanges(resource: URI): boolean;
20
24
  computeWordRanges(resource: URI, range: IRange): Promise<{
21
25
  [word: string]: IRange[];