@codingame/monaco-vscode-api 25.1.1 → 26.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2254) hide show
  1. package/_virtual/_commonjsHelpers.js +5 -0
  2. package/_virtual/main.js +25 -0
  3. package/_virtual/main4.js +3 -0
  4. package/external/@vscode/tree-sitter-wasm/wasm/tree-sitter.js +3291 -0
  5. package/external/vscode-textmate/release/main.js +14 -0
  6. package/missing-services.js +277 -64
  7. package/package.json +8 -8
  8. package/services.js +5 -6
  9. package/vscode/product.json.js +1 -1
  10. package/vscode/src/vs/base/browser/broadcast.js +13 -12
  11. package/vscode/src/vs/base/browser/browser.js +19 -13
  12. package/vscode/src/vs/base/browser/cssValue.js +9 -9
  13. package/vscode/src/vs/base/browser/dom.d.ts +99 -2
  14. package/vscode/src/vs/base/browser/dom.js +468 -321
  15. package/vscode/src/vs/base/browser/domSanitize.js +139 -136
  16. package/vscode/src/vs/base/browser/domStylesheets.d.ts +0 -11
  17. package/vscode/src/vs/base/browser/domStylesheets.js +30 -24
  18. package/vscode/src/vs/base/browser/event.js +1 -1
  19. package/vscode/src/vs/base/browser/fastDomNode.js +30 -30
  20. package/vscode/src/vs/base/browser/fonts.js +2 -3
  21. package/vscode/src/vs/base/browser/formattedTextRenderer.js +41 -46
  22. package/vscode/src/vs/base/browser/globalPointerMoveMonitor.js +13 -8
  23. package/vscode/src/vs/base/browser/iframe.js +10 -9
  24. package/vscode/src/vs/base/browser/indexedDB.js +22 -19
  25. package/vscode/src/vs/base/browser/keyboardEvent.js +26 -24
  26. package/vscode/src/vs/base/browser/markdownRenderer.js +321 -234
  27. package/vscode/src/vs/base/browser/pixelRatio.js +9 -9
  28. package/vscode/src/vs/base/browser/touch.d.ts +7 -0
  29. package/vscode/src/vs/base/browser/touch.js +63 -35
  30. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +79 -72
  31. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.css +8 -5
  32. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -0
  33. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +94 -96
  34. package/vscode/src/vs/base/browser/ui/aria/aria.js +14 -16
  35. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +52 -35
  36. package/vscode/src/vs/base/browser/ui/button/button.css +14 -5
  37. package/vscode/src/vs/base/browser/ui/button/button.d.ts +2 -0
  38. package/vscode/src/vs/base/browser/ui/button/button.js +154 -132
  39. package/vscode/src/vs/base/browser/ui/centered/centeredViewLayout.js +71 -30
  40. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon-modifiers.css +2 -0
  41. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  42. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +108 -76
  43. package/vscode/src/vs/base/browser/ui/countBadge/countBadge.js +13 -9
  44. package/vscode/src/vs/base/browser/ui/dialog/dialog.css +2 -8
  45. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +130 -114
  46. package/vscode/src/vs/base/browser/ui/dnd/dnd.js +3 -3
  47. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +15 -16
  48. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +44 -28
  49. package/vscode/src/vs/base/browser/ui/findinput/findInput.d.ts +1 -0
  50. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +68 -52
  51. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +48 -40
  52. package/vscode/src/vs/base/browser/ui/grid/grid.js +180 -111
  53. package/vscode/src/vs/base/browser/ui/grid/gridview.js +235 -128
  54. package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +10 -0
  55. package/vscode/src/vs/base/browser/ui/hover/hoverDelegateFactory.js +11 -7
  56. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +19 -20
  57. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +106 -75
  58. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabels.js +4 -2
  59. package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +70 -52
  60. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.css +1 -1
  61. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.d.ts +1 -0
  62. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +161 -132
  63. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +39 -15
  64. package/vscode/src/vs/base/browser/ui/list/list.d.ts +3 -0
  65. package/vscode/src/vs/base/browser/ui/list/list.js +4 -3
  66. package/vscode/src/vs/base/browser/ui/list/listPaging.js +97 -32
  67. package/vscode/src/vs/base/browser/ui/list/listView.d.ts +1 -0
  68. package/vscode/src/vs/base/browser/ui/list/listView.js +381 -221
  69. package/vscode/src/vs/base/browser/ui/list/listWidget.d.ts +12 -1
  70. package/vscode/src/vs/base/browser/ui/list/listWidget.js +453 -319
  71. package/vscode/src/vs/base/browser/ui/list/rangeMap.js +33 -7
  72. package/vscode/src/vs/base/browser/ui/list/rowCache.js +19 -12
  73. package/vscode/src/vs/base/browser/ui/menu/menu.js +349 -324
  74. package/vscode/src/vs/base/browser/ui/menu/menubar.js +245 -222
  75. package/vscode/src/vs/base/browser/ui/progressbar/progressbar.js +31 -30
  76. package/vscode/src/vs/base/browser/ui/radio/radio.css +69 -0
  77. package/vscode/src/vs/base/browser/ui/radio/radio.d.ts +37 -0
  78. package/vscode/src/vs/base/browser/ui/radio/radio.js +77 -0
  79. package/vscode/src/vs/base/browser/ui/resizable/resizable.js +83 -36
  80. package/vscode/src/vs/base/browser/ui/sash/sash.js +130 -106
  81. package/vscode/src/vs/base/browser/ui/scrollbar/abstractScrollbar.js +43 -33
  82. package/vscode/src/vs/base/browser/ui/scrollbar/horizontalScrollbar.js +17 -8
  83. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +92 -88
  84. package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarArrow.js +32 -28
  85. package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarState.js +22 -7
  86. package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.js +2 -3
  87. package/vscode/src/vs/base/browser/ui/scrollbar/verticalScrollbar.js +14 -7
  88. package/vscode/src/vs/base/browser/ui/selectBox/selectBox.css +2 -2
  89. package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +3 -4
  90. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.css +1 -1
  91. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +238 -184
  92. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxNative.js +23 -28
  93. package/vscode/src/vs/base/browser/ui/severityIcon/severityIcon.js +11 -11
  94. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +105 -70
  95. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +306 -159
  96. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +127 -44
  97. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +86 -79
  98. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.css +14 -2
  99. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.d.ts +5 -0
  100. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +84 -49
  101. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +619 -331
  102. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.d.ts +1 -1
  103. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +277 -140
  104. package/vscode/src/vs/base/browser/ui/tree/compressedObjectTreeModel.js +113 -50
  105. package/vscode/src/vs/base/browser/ui/tree/dataTree.js +30 -12
  106. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +184 -77
  107. package/vscode/src/vs/base/browser/ui/tree/media/tree.css +2 -0
  108. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +33 -19
  109. package/vscode/src/vs/base/browser/ui/tree/objectTreeModel.js +19 -19
  110. package/vscode/src/vs/base/browser/ui/tree/tree.js +4 -4
  111. package/vscode/src/vs/base/browser/ui/tree/treeDefaults.js +1 -1
  112. package/vscode/src/vs/base/browser/ui/widget.js +18 -6
  113. package/vscode/src/vs/base/common/actions.js +54 -29
  114. package/vscode/src/vs/base/common/arrays.js +58 -51
  115. package/vscode/src/vs/base/common/arraysFind.js +6 -6
  116. package/vscode/src/vs/base/common/assert.js +8 -9
  117. package/vscode/src/vs/base/common/async.js +182 -130
  118. package/vscode/src/vs/base/common/buffer.js +73 -83
  119. package/vscode/src/vs/base/common/cache.js +4 -6
  120. package/vscode/src/vs/base/common/cancellation.js +16 -11
  121. package/vscode/src/vs/base/common/codicons.d.ts +4 -0
  122. package/vscode/src/vs/base/common/codicons.js +28 -28
  123. package/vscode/src/vs/base/common/codiconsLibrary.d.ts +4 -0
  124. package/vscode/src/vs/base/common/codiconsLibrary.js +4 -0
  125. package/vscode/src/vs/base/common/codiconsUtil.js +3 -1
  126. package/vscode/src/vs/base/common/collections.js +12 -4
  127. package/vscode/src/vs/base/common/color.js +445 -246
  128. package/vscode/src/vs/base/common/comparers.js +39 -38
  129. package/vscode/src/vs/base/common/controlFlow.js +3 -6
  130. package/vscode/src/vs/base/common/dataTransfer.js +20 -16
  131. package/vscode/src/vs/base/common/date.js +62 -150
  132. package/vscode/src/vs/base/common/decorators.js +16 -19
  133. package/vscode/src/vs/base/common/defaultAccount.d.ts +41 -13
  134. package/vscode/src/vs/base/common/diff/diff.js +261 -106
  135. package/vscode/src/vs/base/common/equals.js +5 -6
  136. package/vscode/src/vs/base/common/errorMessage.js +11 -12
  137. package/vscode/src/vs/base/common/errors.js +28 -23
  138. package/vscode/src/vs/base/common/event.d.ts +18 -0
  139. package/vscode/src/vs/base/common/event.js +164 -87
  140. package/vscode/src/vs/base/common/extpath.js +21 -25
  141. package/vscode/src/vs/base/common/filters.js +190 -120
  142. package/vscode/src/vs/base/common/fuzzyScorer.js +208 -70
  143. package/vscode/src/vs/base/common/glob.js +125 -130
  144. package/vscode/src/vs/base/common/hash.js +43 -52
  145. package/vscode/src/vs/base/common/hierarchicalKind.js +10 -4
  146. package/vscode/src/vs/base/common/history.js +12 -11
  147. package/vscode/src/vs/base/common/htmlContent.js +43 -55
  148. package/vscode/src/vs/base/common/iconLabels.js +26 -13
  149. package/vscode/src/vs/base/common/idGenerator.js +1 -1
  150. package/vscode/src/vs/base/common/iterator.js +10 -9
  151. package/vscode/src/vs/base/common/json.js +301 -254
  152. package/vscode/src/vs/base/common/jsonEdit.js +86 -48
  153. package/vscode/src/vs/base/common/jsonErrorMessages.js +20 -11
  154. package/vscode/src/vs/base/common/jsonSchema.d.ts +1 -0
  155. package/vscode/src/vs/base/common/jsonSchema.js +34 -13
  156. package/vscode/src/vs/base/common/keyCodes.d.ts +3 -0
  157. package/vscode/src/vs/base/common/keyCodes.js +1798 -251
  158. package/vscode/src/vs/base/common/keybindingLabels.js +58 -58
  159. package/vscode/src/vs/base/common/keybindingParser.js +9 -10
  160. package/vscode/src/vs/base/common/keybindings.js +19 -41
  161. package/vscode/src/vs/base/common/labels.js +89 -55
  162. package/vscode/src/vs/base/common/lazy.js +11 -10
  163. package/vscode/src/vs/base/common/lifecycle.js +76 -55
  164. package/vscode/src/vs/base/common/linkedList.js +11 -17
  165. package/vscode/src/vs/base/common/linkedText.js +13 -9
  166. package/vscode/src/vs/base/common/map.js +82 -78
  167. package/vscode/src/vs/base/common/marshalling.js +10 -9
  168. package/vscode/src/vs/base/common/mime.js +72 -72
  169. package/vscode/src/vs/base/common/naturalLanguage/korean.js +139 -134
  170. package/vscode/src/vs/base/common/network.d.ts +6 -0
  171. package/vscode/src/vs/base/common/network.js +92 -82
  172. package/vscode/src/vs/base/common/normalization.js +5 -6
  173. package/vscode/src/vs/base/common/numbers.js +1 -1
  174. package/vscode/src/vs/base/common/oauth.js +138 -111
  175. package/vscode/src/vs/base/common/objects.js +13 -17
  176. package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
  177. package/vscode/src/vs/base/common/observableInternal/base.js +2 -2
  178. package/vscode/src/vs/base/common/observableInternal/changeTracker.js +16 -10
  179. package/vscode/src/vs/base/common/observableInternal/debugLocation.js +5 -6
  180. package/vscode/src/vs/base/common/observableInternal/debugName.js +5 -6
  181. package/vscode/src/vs/base/common/observableInternal/experimental/reducer.js +1 -1
  182. package/vscode/src/vs/base/common/observableInternal/experimental/utils.js +5 -4
  183. package/vscode/src/vs/base/common/observableInternal/index.js +1 -1
  184. package/vscode/src/vs/base/common/observableInternal/logging/consoleObservableLogger.js +121 -115
  185. package/vscode/src/vs/base/common/observableInternal/logging/debugGetDependencyGraph.js +26 -26
  186. package/vscode/src/vs/base/common/observableInternal/logging/debugger/debuggerRpc.js +17 -16
  187. package/vscode/src/vs/base/common/observableInternal/logging/debugger/devToolsLogger.js +155 -81
  188. package/vscode/src/vs/base/common/observableInternal/logging/debugger/rpc.js +18 -11
  189. package/vscode/src/vs/base/common/observableInternal/logging/logging.js +2 -4
  190. package/vscode/src/vs/base/common/observableInternal/map.js +4 -2
  191. package/vscode/src/vs/base/common/observableInternal/observables/baseObservable.js +16 -11
  192. package/vscode/src/vs/base/common/observableInternal/observables/constObservable.js +2 -4
  193. package/vscode/src/vs/base/common/observableInternal/observables/derived.js +7 -5
  194. package/vscode/src/vs/base/common/observableInternal/observables/derivedImpl.js +58 -34
  195. package/vscode/src/vs/base/common/observableInternal/observables/lazyObservableValue.js +20 -10
  196. package/vscode/src/vs/base/common/observableInternal/observables/observableFromEvent.js +34 -15
  197. package/vscode/src/vs/base/common/observableInternal/observables/observableSignal.js +4 -6
  198. package/vscode/src/vs/base/common/observableInternal/observables/observableSignalFromEvent.js +4 -7
  199. package/vscode/src/vs/base/common/observableInternal/observables/observableValue.js +22 -13
  200. package/vscode/src/vs/base/common/observableInternal/reactions/autorun.js +17 -8
  201. package/vscode/src/vs/base/common/observableInternal/reactions/autorunImpl.js +21 -23
  202. package/vscode/src/vs/base/common/observableInternal/set.js +4 -2
  203. package/vscode/src/vs/base/common/observableInternal/transaction.js +15 -14
  204. package/vscode/src/vs/base/common/observableInternal/utils/promise.js +10 -4
  205. package/vscode/src/vs/base/common/observableInternal/utils/runOnChange.js +5 -2
  206. package/vscode/src/vs/base/common/observableInternal/utils/utils.js +28 -27
  207. package/vscode/src/vs/base/common/observableInternal/utils/utilsCancellation.js +7 -5
  208. package/vscode/src/vs/base/common/paging.js +15 -15
  209. package/vscode/src/vs/base/common/path.js +204 -283
  210. package/vscode/src/vs/base/common/platform.js +52 -54
  211. package/vscode/src/vs/base/common/policy.d.ts +2 -2
  212. package/vscode/src/vs/base/common/policy.js +1 -1
  213. package/vscode/src/vs/base/common/prefixTree.js +19 -10
  214. package/vscode/src/vs/base/common/processes.js +4 -6
  215. package/vscode/src/vs/base/common/product.d.ts +5 -12
  216. package/vscode/src/vs/base/common/resourceTree.js +8 -11
  217. package/vscode/src/vs/base/common/resources.js +42 -29
  218. package/vscode/src/vs/base/common/scrollable.js +25 -27
  219. package/vscode/src/vs/base/common/sseParser.js +41 -42
  220. package/vscode/src/vs/base/common/stream.js +59 -53
  221. package/vscode/src/vs/base/common/strings.d.ts +6 -0
  222. package/vscode/src/vs/base/common/strings.js +172 -126
  223. package/vscode/src/vs/base/common/ternarySearchTree.js +98 -144
  224. package/vscode/src/vs/base/common/tfIdf.js +20 -13
  225. package/vscode/src/vs/base/common/themables.js +26 -18
  226. package/vscode/src/vs/base/common/types.js +11 -19
  227. package/vscode/src/vs/base/common/uri.js +98 -137
  228. package/vscode/src/vs/base/common/uriIpc.js +2 -2
  229. package/vscode/src/vs/base/common/uriTransformer.d.ts +2 -0
  230. package/vscode/src/vs/base/common/uriTransformer.js +59 -0
  231. package/vscode/src/vs/base/common/uuid.js +8 -8
  232. package/vscode/src/vs/base/common/validation.js +117 -32
  233. package/vscode/src/vs/base/common/worker/webWorker.js +49 -50
  234. package/vscode/src/vs/base/common/worker/webWorkerBootstrap.js +4 -7
  235. package/vscode/src/vs/base/common/yaml.js +161 -147
  236. package/vscode/src/vs/base/parts/ipc/common/ipc.js +242 -138
  237. package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +96 -58
  238. package/vscode/src/vs/base/parts/storage/common/storage.js +31 -19
  239. package/vscode/src/vs/editor/browser/config/charWidthReader.js +15 -16
  240. package/vscode/src/vs/editor/browser/config/editorConfiguration.js +31 -22
  241. package/vscode/src/vs/editor/browser/config/elementSizeObserver.js +13 -11
  242. package/vscode/src/vs/editor/browser/config/fontMeasurements.js +30 -19
  243. package/vscode/src/vs/editor/browser/config/migrateOptions.js +123 -110
  244. package/vscode/src/vs/editor/browser/controller/dragScrolling.js +21 -17
  245. package/vscode/src/vs/editor/browser/controller/editContext/clipboardUtils.d.ts +101 -11
  246. package/vscode/src/vs/editor/browser/controller/editContext/clipboardUtils.js +117 -40
  247. package/vscode/src/vs/editor/browser/controller/editContext/editContext.d.ts +8 -0
  248. package/vscode/src/vs/editor/browser/controller/editContext/editContext.js +10 -0
  249. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.d.ts +7 -5
  250. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.js +149 -90
  251. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContextUtils.js +5 -7
  252. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js +46 -34
  253. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentSimple.js +22 -19
  254. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderSupport.js +29 -25
  255. package/vscode/src/vs/editor/browser/controller/editContext/screenReaderUtils.js +15 -22
  256. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +168 -111
  257. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContextInput.d.ts +8 -2
  258. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContextInput.js +134 -102
  259. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContextState.js +40 -22
  260. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +115 -79
  261. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +202 -127
  262. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +59 -32
  263. package/vscode/src/vs/editor/browser/coreCommands.js +597 -371
  264. package/vscode/src/vs/editor/browser/dataTransfer.js +6 -11
  265. package/vscode/src/vs/editor/browser/editorBrowser.d.ts +5 -0
  266. package/vscode/src/vs/editor/browser/editorDom.js +27 -23
  267. package/vscode/src/vs/editor/browser/editorExtensions.js +119 -85
  268. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.js +59 -23
  269. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlasPage.js +32 -20
  270. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlasShelfAllocator.js +6 -6
  271. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlasSlabAllocator.js +14 -14
  272. package/vscode/src/vs/editor/browser/gpu/contentSegmenter.js +3 -1
  273. package/vscode/src/vs/editor/browser/gpu/css/decorationCssRuleExtractor.d.ts +7 -0
  274. package/vscode/src/vs/editor/browser/gpu/css/decorationCssRuleExtractor.js +32 -14
  275. package/vscode/src/vs/editor/browser/gpu/css/decorationStyleCache.js +26 -4
  276. package/vscode/src/vs/editor/browser/gpu/gpuDisposable.js +4 -5
  277. package/vscode/src/vs/editor/browser/gpu/gpuUtils.js +9 -15
  278. package/vscode/src/vs/editor/browser/gpu/objectCollectionBuffer.js +11 -3
  279. package/vscode/src/vs/editor/browser/gpu/raster/glyphRasterizer.js +48 -40
  280. package/vscode/src/vs/editor/browser/gpu/rectangleRenderer.js +99 -60
  281. package/vscode/src/vs/editor/browser/gpu/renderStrategy/fullFileRenderStrategy.js +102 -57
  282. package/vscode/src/vs/editor/browser/gpu/renderStrategy/viewportRenderStrategy.d.ts +1 -0
  283. package/vscode/src/vs/editor/browser/gpu/renderStrategy/viewportRenderStrategy.js +100 -50
  284. package/vscode/src/vs/editor/browser/gpu/taskQueue.js +5 -5
  285. package/vscode/src/vs/editor/browser/gpu/viewGpuContext.d.ts +3 -1
  286. package/vscode/src/vs/editor/browser/gpu/viewGpuContext.js +103 -59
  287. package/vscode/src/vs/editor/browser/observableCodeEditor.d.ts +17 -0
  288. package/vscode/src/vs/editor/browser/observableCodeEditor.js +142 -56
  289. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +160 -123
  290. package/vscode/src/vs/editor/browser/services/bulkEditService.js +6 -12
  291. package/vscode/src/vs/editor/browser/services/bulkEditService.service.js +1 -1
  292. package/vscode/src/vs/editor/browser/services/codeEditorService.service.js +1 -1
  293. package/vscode/src/vs/editor/browser/services/contribution.js +12 -0
  294. package/vscode/src/vs/editor/browser/services/editorWorkerService.d.ts +1 -0
  295. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +88 -60
  296. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.js +62 -34
  297. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.service.js +1 -1
  298. package/vscode/src/vs/editor/browser/services/markerDecorations.js +5 -9
  299. package/vscode/src/vs/editor/browser/services/openerService.js +42 -40
  300. package/vscode/src/vs/editor/browser/services/renameSymbolTrackerService.d.ts +40 -0
  301. package/vscode/src/vs/editor/browser/services/renameSymbolTrackerService.js +13 -0
  302. package/vscode/src/vs/editor/browser/services/renameSymbolTrackerService.service.d.ts +10 -0
  303. package/vscode/src/vs/editor/browser/services/renameSymbolTrackerService.service.js +6 -0
  304. package/vscode/src/vs/editor/browser/stableEditorScroll.js +17 -3
  305. package/vscode/src/vs/editor/browser/triggerInlineEditCommandsRegistry.js +3 -1
  306. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +133 -89
  307. package/vscode/src/vs/editor/browser/view/renderingContext.js +6 -2
  308. package/vscode/src/vs/editor/browser/view/viewController.d.ts +13 -0
  309. package/vscode/src/vs/editor/browser/view/viewController.js +102 -62
  310. package/vscode/src/vs/editor/browser/view/viewLayer.js +57 -26
  311. package/vscode/src/vs/editor/browser/view/viewOverlays.js +11 -13
  312. package/vscode/src/vs/editor/browser/view/viewPart.d.ts +2 -0
  313. package/vscode/src/vs/editor/browser/view/viewPart.js +4 -3
  314. package/vscode/src/vs/editor/browser/view/viewUserInputEvents.js +4 -2
  315. package/vscode/src/vs/editor/browser/view.d.ts +11 -0
  316. package/vscode/src/vs/editor/browser/view.js +127 -60
  317. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +9 -13
  318. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +99 -62
  319. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +28 -17
  320. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +33 -19
  321. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +28 -16
  322. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +25 -26
  323. package/vscode/src/vs/editor/browser/viewParts/gpuMark/gpuMark.js +6 -4
  324. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +110 -69
  325. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +25 -19
  326. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +5 -5
  327. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +13 -10
  328. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +3 -3
  329. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +435 -241
  330. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js +25 -4
  331. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js +17 -10
  332. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapPreBaked.js +17 -13
  333. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +35 -29
  334. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +84 -120
  335. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +7 -9
  336. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.css +1 -0
  337. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +8 -9
  338. package/vscode/src/vs/editor/browser/viewParts/rulersGpu/rulersGpu.js +4 -7
  339. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +6 -8
  340. package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +79 -46
  341. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +43 -39
  342. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +78 -65
  343. package/vscode/src/vs/editor/browser/viewParts/viewLines/rangeUtil.js +3 -6
  344. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLine.d.ts +1 -0
  345. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLine.js +89 -46
  346. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.d.ts +1 -0
  347. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.js +86 -50
  348. package/vscode/src/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.d.ts +14 -0
  349. package/vscode/src/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.js +244 -118
  350. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +57 -54
  351. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +64 -49
  352. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorContributions.js +7 -6
  353. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.d.ts +9 -0
  354. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +508 -286
  355. package/vscode/src/vs/editor/browser/widget/codeEditor/embeddedCodeEditorWidget.js +24 -15
  356. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +56 -52
  357. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +228 -155
  358. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +64 -25
  359. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +98 -42
  360. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js +7 -5
  361. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/copySelection.js +11 -11
  362. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +158 -98
  363. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +51 -35
  364. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +71 -19
  365. package/vscode/src/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js +15 -6
  366. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +30 -27
  367. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +117 -37
  368. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +131 -84
  369. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +315 -137
  370. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +30 -26
  371. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.service.js +1 -1
  372. package/vscode/src/vs/editor/browser/widget/diffEditor/embeddedDiffEditorWidget.js +27 -11
  373. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +107 -65
  374. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +200 -136
  375. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +123 -65
  376. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +63 -36
  377. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +16 -13
  378. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +40 -35
  379. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +37 -23
  380. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +56 -37
  381. package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/editorMarkdownCodeBlockRenderer.js +17 -18
  382. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +13 -3
  383. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +89 -77
  384. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.js +35 -24
  385. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget.js +10 -6
  386. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +137 -79
  387. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/objectPool.js +2 -4
  388. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/style.css +2 -41
  389. package/vscode/src/vs/editor/common/commands/replaceCommand.js +13 -6
  390. package/vscode/src/vs/editor/common/commands/shiftCommand.js +21 -26
  391. package/vscode/src/vs/editor/common/commands/trimTrailingWhitespaceCommand.js +2 -4
  392. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +198 -217
  393. package/vscode/src/vs/editor/common/config/editorOptions.js +1970 -1937
  394. package/vscode/src/vs/editor/common/config/editorZoom.js +1 -1
  395. package/vscode/src/vs/editor/common/config/fontInfo.js +23 -28
  396. package/vscode/src/vs/editor/common/core/2d/point.js +1 -2
  397. package/vscode/src/vs/editor/common/core/2d/rect.js +14 -18
  398. package/vscode/src/vs/editor/common/core/2d/size.js +4 -1
  399. package/vscode/src/vs/editor/common/core/characterClassifier.js +3 -5
  400. package/vscode/src/vs/editor/common/core/editorColorRegistry.d.ts +1 -0
  401. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +337 -171
  402. package/vscode/src/vs/editor/common/core/edits/edit.js +30 -21
  403. package/vscode/src/vs/editor/common/core/edits/lengthEdit.js +6 -2
  404. package/vscode/src/vs/editor/common/core/edits/lineEdit.js +43 -45
  405. package/vscode/src/vs/editor/common/core/edits/stringEdit.js +59 -26
  406. package/vscode/src/vs/editor/common/core/edits/textEdit.js +64 -84
  407. package/vscode/src/vs/editor/common/core/misc/rgba.js +4 -5
  408. package/vscode/src/vs/editor/common/core/position.js +8 -11
  409. package/vscode/src/vs/editor/common/core/range.js +10 -26
  410. package/vscode/src/vs/editor/common/core/ranges/columnRange.js +4 -3
  411. package/vscode/src/vs/editor/common/core/ranges/lineRange.js +39 -35
  412. package/vscode/src/vs/editor/common/core/ranges/offsetRange.d.ts +1 -0
  413. package/vscode/src/vs/editor/common/core/ranges/offsetRange.js +6 -5
  414. package/vscode/src/vs/editor/common/core/ranges/rangeSingleLine.js +3 -1
  415. package/vscode/src/vs/editor/common/core/selection.js +17 -15
  416. package/vscode/src/vs/editor/common/core/stringBuilder.js +6 -7
  417. package/vscode/src/vs/editor/common/core/text/abstractText.js +2 -2
  418. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.js +11 -7
  419. package/vscode/src/vs/editor/common/core/text/textLength.js +14 -15
  420. package/vscode/src/vs/editor/common/core/textChange.js +8 -21
  421. package/vscode/src/vs/editor/common/core/wordCharacterClassifier.js +6 -5
  422. package/vscode/src/vs/editor/common/core/wordHelper.js +14 -17
  423. package/vscode/src/vs/editor/common/cursor/cursor.js +221 -80
  424. package/vscode/src/vs/editor/common/cursor/cursorCollection.js +5 -9
  425. package/vscode/src/vs/editor/common/cursor/cursorColumnSelection.js +48 -7
  426. package/vscode/src/vs/editor/common/cursor/cursorDeleteOperations.js +37 -31
  427. package/vscode/src/vs/editor/common/cursor/cursorMoveCommands.js +373 -229
  428. package/vscode/src/vs/editor/common/cursor/cursorMoveOperations.js +138 -49
  429. package/vscode/src/vs/editor/common/cursor/cursorTypeEditOperations.js +189 -112
  430. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +47 -7
  431. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +132 -97
  432. package/vscode/src/vs/editor/common/cursor/oneCursor.js +18 -8
  433. package/vscode/src/vs/editor/common/cursorCommon.js +24 -41
  434. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +22 -11
  435. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.js +6 -12
  436. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.js +6 -9
  437. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js +66 -24
  438. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +71 -36
  439. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +33 -38
  440. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +18 -28
  441. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/utils.js +4 -2
  442. package/vscode/src/vs/editor/common/diff/legacyLinesDiffComputer.js +139 -48
  443. package/vscode/src/vs/editor/common/diff/linesDiffComputer.js +5 -3
  444. package/vscode/src/vs/editor/common/diff/linesDiffComputers.js +1 -1
  445. package/vscode/src/vs/editor/common/diff/rangeMapping.js +15 -23
  446. package/vscode/src/vs/editor/common/editorContextKeys.d.ts +1 -0
  447. package/vscode/src/vs/editor/common/editorContextKeys.js +63 -62
  448. package/vscode/src/vs/editor/common/inputMode.js +1 -1
  449. package/vscode/src/vs/editor/common/languageFeatureRegistry.js +24 -29
  450. package/vscode/src/vs/editor/common/languageSelector.js +45 -37
  451. package/vscode/src/vs/editor/common/languages/autoIndent.js +74 -44
  452. package/vscode/src/vs/editor/common/languages/defaultDocumentColorsComputer.js +47 -21
  453. package/vscode/src/vs/editor/common/languages/enterAction.js +6 -9
  454. package/vscode/src/vs/editor/common/languages/language.service.js +1 -1
  455. package/vscode/src/vs/editor/common/languages/languageConfiguration.js +29 -22
  456. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +47 -46
  457. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.service.js +1 -1
  458. package/vscode/src/vs/editor/common/languages/linkComputer.js +56 -61
  459. package/vscode/src/vs/editor/common/languages/modesRegistry.js +24 -25
  460. package/vscode/src/vs/editor/common/languages/nullTokenize.js +3 -7
  461. package/vscode/src/vs/editor/common/languages/supports/characterPair.js +21 -11
  462. package/vscode/src/vs/editor/common/languages/supports/indentationLineProcessor.js +19 -13
  463. package/vscode/src/vs/editor/common/languages/supports/inplaceReplaceSupport.js +15 -12
  464. package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.js +15 -12
  465. package/vscode/src/vs/editor/common/languages/supports/onEnter.js +23 -24
  466. package/vscode/src/vs/editor/common/languages/supports/richEditBrackets.js +2 -2
  467. package/vscode/src/vs/editor/common/languages/supports/tokenization.d.ts +1 -1
  468. package/vscode/src/vs/editor/common/languages/supports/tokenization.js +82 -70
  469. package/vscode/src/vs/editor/common/languages/supports.js +9 -2
  470. package/vscode/src/vs/editor/common/languages/textToHtmlTokenizer.js +49 -46
  471. package/vscode/src/vs/editor/common/languages.d.ts +24 -3
  472. package/vscode/src/vs/editor/common/languages.js +184 -150
  473. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +139 -69
  474. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js +48 -42
  475. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js +15 -9
  476. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js +136 -46
  477. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js +3 -4
  478. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js +21 -20
  479. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js +18 -23
  480. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js +2 -5
  481. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/nodeReader.js +7 -13
  482. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js +21 -22
  483. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js +6 -2
  484. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js +20 -27
  485. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.d.ts +2 -2
  486. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js +23 -14
  487. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js +12 -12
  488. package/vscode/src/vs/editor/common/model/decorationProvider.d.ts +2 -2
  489. package/vscode/src/vs/editor/common/model/editStack.js +39 -21
  490. package/vscode/src/vs/editor/common/model/guidesTextModelPart.js +58 -53
  491. package/vscode/src/vs/editor/common/model/indentationGuesser.js +14 -13
  492. package/vscode/src/vs/editor/common/model/intervalTree.js +89 -59
  493. package/vscode/src/vs/editor/common/model/mirrorTextModel.js +16 -9
  494. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +277 -197
  495. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +40 -36
  496. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js +23 -14
  497. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js +20 -39
  498. package/vscode/src/vs/editor/common/model/prefixSumComputer.js +2 -4
  499. package/vscode/src/vs/editor/common/model/textModel.js +553 -278
  500. package/vscode/src/vs/editor/common/model/textModelPart.js +1 -1
  501. package/vscode/src/vs/editor/common/model/textModelSearch.js +72 -27
  502. package/vscode/src/vs/editor/common/model/textModelStringEdit.js +5 -3
  503. package/vscode/src/vs/editor/common/model/textModelTokens.js +87 -40
  504. package/vscode/src/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js +21 -9
  505. package/vscode/src/vs/editor/common/model/tokens/annotations.js +47 -27
  506. package/vscode/src/vs/editor/common/model/tokens/tokenizationFontDecorationsProvider.d.ts +1 -1
  507. package/vscode/src/vs/editor/common/model/tokens/tokenizationFontDecorationsProvider.js +39 -27
  508. package/vscode/src/vs/editor/common/model/tokens/tokenizationTextModelPart.js +58 -35
  509. package/vscode/src/vs/editor/common/model/tokens/tokenizerSyntaxTokenBackend.js +40 -33
  510. package/vscode/src/vs/editor/common/model/tokens/treeSitter/cursorUtils.d.ts +1 -1
  511. package/vscode/src/vs/editor/common/model/tokens/treeSitter/cursorUtils.js +7 -11
  512. package/vscode/src/vs/editor/common/model/tokens/treeSitter/tokenStore.js +99 -60
  513. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterSyntaxTokenBackend.js +31 -18
  514. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTokenizationImpl.d.ts +1 -1
  515. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTokenizationImpl.js +255 -97
  516. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.d.ts +1 -1
  517. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.js +98 -67
  518. package/vscode/src/vs/editor/common/model.d.ts +1 -1
  519. package/vscode/src/vs/editor/common/modelLineProjectionData.js +19 -28
  520. package/vscode/src/vs/editor/common/services/completionsEnablement.d.ts +30 -0
  521. package/vscode/src/vs/editor/common/services/completionsEnablement.js +32 -0
  522. package/vscode/src/vs/editor/common/services/editorWebWorker.js +116 -54
  523. package/vscode/src/vs/editor/common/services/editorWorker.service.js +1 -1
  524. package/vscode/src/vs/editor/common/services/findSectionHeaders.js +19 -11
  525. package/vscode/src/vs/editor/common/services/languageFeatureDebounce.js +6 -12
  526. package/vscode/src/vs/editor/common/services/languageFeatureDebounce.service.js +1 -1
  527. package/vscode/src/vs/editor/common/services/languageFeatures.service.js +1 -1
  528. package/vscode/src/vs/editor/common/services/languageService.js +6 -4
  529. package/vscode/src/vs/editor/common/services/languagesAssociations.js +47 -22
  530. package/vscode/src/vs/editor/common/services/languagesRegistry.js +38 -24
  531. package/vscode/src/vs/editor/common/services/markerDecorations.service.js +1 -1
  532. package/vscode/src/vs/editor/common/services/markerDecorationsService.js +56 -57
  533. package/vscode/src/vs/editor/common/services/model.service.js +1 -1
  534. package/vscode/src/vs/editor/common/services/modelService.js +134 -79
  535. package/vscode/src/vs/editor/common/services/resolverService.service.js +1 -1
  536. package/vscode/src/vs/editor/common/services/semanticTokensDto.js +24 -25
  537. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +61 -33
  538. package/vscode/src/vs/editor/common/services/semanticTokensStyling.service.js +1 -1
  539. package/vscode/src/vs/editor/common/services/semanticTokensStylingService.js +1 -5
  540. package/vscode/src/vs/editor/common/services/textModelSync/textModelSync.impl.js +45 -31
  541. package/vscode/src/vs/editor/common/services/textResourceConfiguration.service.js +2 -2
  542. package/vscode/src/vs/editor/common/services/treeSitter/treeSitterLibraryService.service.d.ts +1 -1
  543. package/vscode/src/vs/editor/common/services/treeSitter/treeSitterLibraryService.service.js +1 -1
  544. package/vscode/src/vs/editor/common/services/treeSitter/treeSitterThemeService.service.js +1 -1
  545. package/vscode/src/vs/editor/common/services/treeViewsDndService.service.js +1 -1
  546. package/vscode/src/vs/editor/common/services/unicodeTextModelHighlighter.js +34 -32
  547. package/vscode/src/vs/editor/common/standaloneStrings.js +83 -83
  548. package/vscode/src/vs/editor/common/textModelEditSource.js +62 -37
  549. package/vscode/src/vs/editor/common/textModelEvents.d.ts +4 -4
  550. package/vscode/src/vs/editor/common/textModelEvents.js +17 -21
  551. package/vscode/src/vs/editor/common/textModelGuides.js +9 -4
  552. package/vscode/src/vs/editor/common/tokens/contiguousMultilineTokens.js +2 -4
  553. package/vscode/src/vs/editor/common/tokens/contiguousTokensEditing.js +3 -5
  554. package/vscode/src/vs/editor/common/tokens/contiguousTokensStore.js +37 -15
  555. package/vscode/src/vs/editor/common/tokens/lineTokens.js +21 -22
  556. package/vscode/src/vs/editor/common/tokens/sparseMultilineTokens.js +77 -66
  557. package/vscode/src/vs/editor/common/tokens/sparseTokensStore.js +27 -19
  558. package/vscode/src/vs/editor/common/tokens/tokenWithTextArray.js +4 -1
  559. package/vscode/src/vs/editor/common/viewLayout/lineDecorations.js +5 -13
  560. package/vscode/src/vs/editor/common/viewLayout/lineHeights.js +29 -45
  561. package/vscode/src/vs/editor/common/viewLayout/linesLayout.js +39 -42
  562. package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +24 -17
  563. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +175 -192
  564. package/vscode/src/vs/editor/common/viewModel/glyphLanesModel.js +1 -2
  565. package/vscode/src/vs/editor/common/viewModel/inlineDecorations.js +7 -2
  566. package/vscode/src/vs/editor/common/viewModel/minimapTokensColorTracker.js +3 -1
  567. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +75 -38
  568. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +103 -46
  569. package/vscode/src/vs/editor/common/viewModel/overviewZoneManager.js +2 -4
  570. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.d.ts +1 -1
  571. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.js +20 -7
  572. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.d.ts +6 -1
  573. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +260 -123
  574. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +157 -80
  575. package/vscode/src/vs/editor/common/viewModel.d.ts +6 -1
  576. package/vscode/src/vs/editor/common/viewModelEventDispatcher.js +25 -12
  577. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +28 -22
  578. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +88 -62
  579. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +4 -4
  580. package/vscode/src/vs/editor/contrib/caretOperations/browser/moveCaretCommand.js +2 -4
  581. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +3 -5
  582. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +173 -127
  583. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +128 -99
  584. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.d.ts +3 -3
  585. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +112 -78
  586. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +27 -22
  587. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.d.ts +3 -0
  588. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +150 -77
  589. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +26 -25
  590. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +48 -17
  591. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +125 -65
  592. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.d.ts +18 -11
  593. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +225 -184
  594. package/vscode/src/vs/editor/contrib/codeAction/common/types.js +28 -29
  595. package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +25 -17
  596. package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.service.js +1 -1
  597. package/vscode/src/vs/editor/contrib/codelens/browser/codelens.js +23 -22
  598. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +76 -54
  599. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +31 -26
  600. package/vscode/src/vs/editor/contrib/colorPicker/browser/color.js +43 -15
  601. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +45 -28
  602. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerContribution.js +40 -9
  603. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerModel.js +4 -2
  604. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParticipantUtils.js +13 -4
  605. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerBody.js +8 -3
  606. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +8 -6
  607. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +32 -20
  608. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerInsertButton.js +3 -3
  609. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerSaturationBox.js +24 -13
  610. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerStrip.js +25 -14
  611. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +7 -3
  612. package/vscode/src/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js +24 -11
  613. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerContribution.js +8 -4
  614. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +20 -20
  615. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +17 -14
  616. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerController.js +14 -9
  617. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerParticipant.js +19 -9
  618. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.js +59 -35
  619. package/vscode/src/vs/editor/contrib/comment/browser/blockCommentCommand.js +18 -16
  620. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +25 -20
  621. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +76 -26
  622. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +78 -57
  623. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +15 -9
  624. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +27 -16
  625. package/vscode/src/vs/editor/contrib/dnd/browser/dnd.js +51 -47
  626. package/vscode/src/vs/editor/contrib/dnd/browser/dragAndDropCommand.js +8 -19
  627. package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +22 -30
  628. package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.service.js +1 -1
  629. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +52 -42
  630. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +172 -191
  631. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +89 -64
  632. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +52 -30
  633. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +8 -10
  634. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +85 -44
  635. package/vscode/src/vs/editor/contrib/editorState/browser/editorState.js +6 -10
  636. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +9 -6
  637. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.service.js +1 -1
  638. package/vscode/src/vs/editor/contrib/find/browser/findController.js +246 -185
  639. package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +80 -63
  640. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +126 -81
  641. package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +24 -20
  642. package/vscode/src/vs/editor/contrib/find/browser/findState.js +76 -41
  643. package/vscode/src/vs/editor/contrib/find/browser/findWidget.css +5 -6
  644. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +235 -180
  645. package/vscode/src/vs/editor/contrib/find/browser/findWidgetSearchHistory.js +17 -10
  646. package/vscode/src/vs/editor/contrib/find/browser/replacePattern.js +52 -56
  647. package/vscode/src/vs/editor/contrib/find/browser/replaceWidgetHistory.js +17 -10
  648. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.contribution.js +5 -1
  649. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.css +28 -20
  650. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.d.ts +9 -0
  651. package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.js +77 -35
  652. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +243 -169
  653. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +143 -110
  654. package/vscode/src/vs/editor/contrib/folding/browser/foldingModel.js +62 -48
  655. package/vscode/src/vs/editor/contrib/folding/browser/foldingRanges.js +23 -34
  656. package/vscode/src/vs/editor/contrib/folding/browser/hiddenRangeModel.js +8 -5
  657. package/vscode/src/vs/editor/contrib/folding/browser/indentRangeProvider.js +21 -12
  658. package/vscode/src/vs/editor/contrib/folding/browser/syntaxRangeProvider.js +17 -10
  659. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +6 -6
  660. package/vscode/src/vs/editor/contrib/format/browser/format.js +141 -58
  661. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +90 -40
  662. package/vscode/src/vs/editor/contrib/format/browser/formattingEdit.js +6 -7
  663. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.d.ts +14 -1
  664. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +65 -35
  665. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +138 -86
  666. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.js +13 -32
  667. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.service.js +1 -1
  668. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +276 -190
  669. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js +121 -38
  670. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +39 -31
  671. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +68 -47
  672. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +95 -67
  673. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +46 -36
  674. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +106 -79
  675. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +39 -38
  676. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +27 -25
  677. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.service.js +1 -1
  678. package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +96 -90
  679. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverComputer.js +3 -4
  680. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +36 -33
  681. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +78 -54
  682. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverStatusBar.js +8 -7
  683. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverTypes.js +1 -1
  684. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +108 -58
  685. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidgetWrapper.js +39 -29
  686. package/vscode/src/vs/editor/contrib/hover/browser/getHover.js +18 -9
  687. package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverComputer.js +2 -2
  688. package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverController.js +27 -18
  689. package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverWidget.js +39 -32
  690. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +59 -48
  691. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +17 -17
  692. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +58 -59
  693. package/vscode/src/vs/editor/contrib/hover/browser/hoverContribution.js +16 -4
  694. package/vscode/src/vs/editor/contrib/hover/browser/hoverCopyButton.js +5 -8
  695. package/vscode/src/vs/editor/contrib/hover/browser/hoverOperation.js +22 -22
  696. package/vscode/src/vs/editor/contrib/hover/browser/hoverUtils.d.ts +9 -0
  697. package/vscode/src/vs/editor/contrib/hover/browser/hoverUtils.js +6 -5
  698. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +110 -77
  699. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +82 -56
  700. package/vscode/src/vs/editor/contrib/hover/browser/resizableContentWidget.js +11 -7
  701. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +29 -20
  702. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +104 -78
  703. package/vscode/src/vs/editor/contrib/indentation/common/indentation.js +9 -9
  704. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +16 -16
  705. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +147 -95
  706. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.service.js +1 -1
  707. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +51 -39
  708. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +34 -28
  709. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +116 -105
  710. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +48 -22
  711. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +192 -101
  712. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +41 -34
  713. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +149 -93
  714. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +5 -1
  715. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsAccessibleView.js +10 -8
  716. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/animation.js +10 -5
  717. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/changeRecorder.js +13 -11
  718. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/computeGhostText.js +16 -17
  719. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/editKind.js +81 -54
  720. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/ghostText.js +22 -37
  721. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/graph.js +13 -6
  722. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.d.ts +2 -1
  723. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +324 -211
  724. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +155 -101
  725. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +145 -71
  726. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +175 -62
  727. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.d.ts +50 -1
  728. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.js +230 -77
  729. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/singleTextEditHelpers.js +2 -3
  730. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/suggestWidgetAdapter.js +31 -20
  731. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/typingSpeed.js +31 -12
  732. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/structuredLogger.js +12 -8
  733. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +12 -6
  734. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.css +7 -0
  735. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.d.ts +3 -0
  736. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +143 -86
  737. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +110 -93
  738. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.d.ts +14 -5
  739. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +200 -160
  740. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditWithChanges.js +20 -7
  741. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsNewUsers.js +65 -51
  742. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +190 -122
  743. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewInterface.js +12 -3
  744. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js +15 -13
  745. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCollapsedView.js +45 -43
  746. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js +70 -59
  747. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.js +51 -49
  748. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js +106 -85
  749. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +156 -123
  750. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.js +252 -202
  751. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +224 -205
  752. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/jumpToView.js +74 -59
  753. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/inlineEditsLongDistanceHint.js +239 -148
  754. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistancePreviewEditor.js +102 -73
  755. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistnaceWidgetPlacement.js +36 -14
  756. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.js +84 -55
  757. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +91 -58
  758. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/flexBoxLayout.js +10 -4
  759. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js +69 -48
  760. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineSuggestionsView.js +59 -36
  761. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +20 -18
  762. package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +4 -2
  763. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +8 -4
  764. package/vscode/src/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js +14 -10
  765. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +216 -196
  766. package/vscode/src/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js +79 -50
  767. package/vscode/src/vs/editor/contrib/linesOperations/browser/sortLinesCommand.js +4 -2
  768. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +62 -40
  769. package/vscode/src/vs/editor/contrib/links/browser/getLinks.js +14 -12
  770. package/vscode/src/vs/editor/contrib/links/browser/links.js +85 -76
  771. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +77 -49
  772. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.js +16 -14
  773. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +178 -104
  774. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +29 -19
  775. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js +47 -33
  776. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +83 -76
  777. package/vscode/src/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js +17 -13
  778. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +145 -59
  779. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.service.js +1 -1
  780. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +6 -2
  781. package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +33 -24
  782. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +69 -37
  783. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +113 -85
  784. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +14 -7
  785. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +137 -105
  786. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.css +1 -1
  787. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +218 -155
  788. package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +25 -21
  789. package/vscode/src/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +60 -39
  790. package/vscode/src/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js +37 -17
  791. package/vscode/src/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js +66 -42
  792. package/vscode/src/vs/editor/contrib/smartSelect/browser/bracketSelections.js +32 -14
  793. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +59 -48
  794. package/vscode/src/vs/editor/contrib/smartSelect/browser/wordSelections.js +19 -12
  795. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +78 -41
  796. package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +168 -214
  797. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +211 -95
  798. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +127 -131
  799. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +34 -30
  800. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +129 -103
  801. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +59 -50
  802. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +22 -18
  803. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +130 -82
  804. package/vscode/src/vs/editor/contrib/suggest/browser/completionModel.js +54 -44
  805. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +85 -61
  806. package/vscode/src/vs/editor/contrib/suggest/browser/suggestAlternatives.js +20 -9
  807. package/vscode/src/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js +4 -1
  808. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +267 -181
  809. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +60 -33
  810. package/vscode/src/vs/editor/contrib/suggest/browser/suggestMemory.js +48 -38
  811. package/vscode/src/vs/editor/contrib/suggest/browser/suggestMemory.service.js +1 -1
  812. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +113 -72
  813. package/vscode/src/vs/editor/contrib/suggest/browser/suggestOvertypingCapturer.js +7 -2
  814. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +305 -227
  815. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +128 -73
  816. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +91 -68
  817. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +24 -17
  818. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +18 -12
  819. package/vscode/src/vs/editor/contrib/suggest/browser/wordDistance.js +9 -5
  820. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +113 -113
  821. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +12 -9
  822. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +2 -2
  823. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +25 -22
  824. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +181 -138
  825. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +20 -18
  826. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +74 -41
  827. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.js +10 -6
  828. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +165 -118
  829. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +129 -64
  830. package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +26 -14
  831. package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +80 -52
  832. package/vscode/src/vs/editor/editor.worker.start.js +3 -3
  833. package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +16 -9
  834. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +101 -43
  835. package/vscode/src/vs/editor/standalone/browser/services/standaloneWebWorkerService.d.ts +1 -0
  836. package/vscode/src/vs/editor/standalone/browser/services/standaloneWebWorkerService.js +11 -6
  837. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.js +125 -83
  838. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditorService.js +4 -8
  839. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +13 -9
  840. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +340 -185
  841. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +46 -43
  842. package/vscode/src/vs/editor/standalone/browser/standaloneTreeSitterLibraryService.d.ts +1 -1
  843. package/vscode/src/vs/editor/standalone/browser/standaloneTreeSitterLibraryService.js +2 -2
  844. package/vscode/src/vs/editor/standalone/common/standaloneTheme.service.js +1 -1
  845. package/vscode/src/vs/nls.d.ts +2 -1
  846. package/vscode/src/vs/nls.js +16 -14
  847. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +16 -20
  848. package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +1 -0
  849. package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +1 -0
  850. package/vscode/src/vs/platform/accessibility/browser/accessibleView.service.js +1 -1
  851. package/vscode/src/vs/platform/accessibility/common/accessibility.js +5 -6
  852. package/vscode/src/vs/platform/accessibility/common/accessibility.service.js +1 -1
  853. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +572 -347
  854. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service.js +1 -1
  855. package/vscode/src/vs/platform/accessibilitySignal/browser/progressAccessibilitySignalScheduler.js +1 -3
  856. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  857. package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +26 -1
  858. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +182 -102
  859. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +19 -5
  860. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +65 -40
  861. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.service.js +1 -1
  862. package/vscode/src/vs/platform/actions/browser/actionViewItemService.service.js +1 -1
  863. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +45 -45
  864. package/vscode/src/vs/platform/actions/browser/floatingMenu.js +15 -17
  865. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +167 -117
  866. package/vscode/src/vs/platform/actions/browser/toolbar.js +79 -46
  867. package/vscode/src/vs/platform/actions/common/actions.d.ts +7 -0
  868. package/vscode/src/vs/platform/actions/common/actions.js +763 -254
  869. package/vscode/src/vs/platform/actions/common/actions.service.js +1 -1
  870. package/vscode/src/vs/platform/actions/common/menuResetAction.js +3 -3
  871. package/vscode/src/vs/platform/actions/common/menuService.js +132 -94
  872. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +77 -64
  873. package/vscode/src/vs/platform/clipboard/common/clipboardService.service.js +1 -1
  874. package/vscode/src/vs/platform/commands/common/commands.js +15 -7
  875. package/vscode/src/vs/platform/commands/common/commands.service.js +1 -1
  876. package/vscode/src/vs/platform/configuration/common/configuration.js +63 -70
  877. package/vscode/src/vs/platform/configuration/common/configuration.service.js +1 -1
  878. package/vscode/src/vs/platform/configuration/common/configurationModels.js +287 -100
  879. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +1 -0
  880. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +254 -154
  881. package/vscode/src/vs/platform/configuration/common/configurations.js +54 -36
  882. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +68 -48
  883. package/vscode/src/vs/platform/contextkey/common/contextkey.js +234 -197
  884. package/vscode/src/vs/platform/contextkey/common/contextkey.service.js +1 -1
  885. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +11 -11
  886. package/vscode/src/vs/platform/contextkey/common/scanner.js +171 -143
  887. package/vscode/src/vs/platform/contextview/browser/contextMenuHandler.js +36 -18
  888. package/vscode/src/vs/platform/contextview/browser/contextMenuService.js +17 -14
  889. package/vscode/src/vs/platform/contextview/browser/contextView.service.js +2 -2
  890. package/vscode/src/vs/platform/contextview/browser/contextViewService.js +4 -9
  891. package/vscode/src/vs/platform/dataChannel/browser/forwardingTelemetryService.js +7 -7
  892. package/vscode/src/vs/platform/dataChannel/common/dataChannel.service.js +1 -1
  893. package/vscode/src/vs/platform/debug/common/extensionHostDebug.d.ts +1 -0
  894. package/vscode/src/vs/platform/debug/common/extensionHostDebug.service.js +1 -1
  895. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.d.ts +14 -0
  896. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +11 -2
  897. package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.js +1 -1
  898. package/vscode/src/vs/platform/diagnostics/common/diagnostics.d.ts +5 -0
  899. package/vscode/src/vs/platform/dialogs/browser/dialog.js +20 -15
  900. package/vscode/src/vs/platform/dialogs/common/dialogs.js +39 -39
  901. package/vscode/src/vs/platform/dialogs/common/dialogs.service.js +2 -2
  902. package/vscode/src/vs/platform/dnd/browser/dnd.js +56 -47
  903. package/vscode/src/vs/platform/download/common/download.service.js +1 -1
  904. package/vscode/src/vs/platform/encryption/common/encryptionService.service.js +1 -1
  905. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +2 -0
  906. package/vscode/src/vs/platform/environment/common/environment.service.js +1 -1
  907. package/vscode/src/vs/platform/environment/common/environmentService.d.ts +2 -0
  908. package/vscode/src/vs/platform/extensionManagement/common/extensionEnablementService.js +37 -17
  909. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.d.ts +0 -1
  910. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.js +0 -1
  911. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.service.js +1 -1
  912. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
  913. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +160 -151
  914. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.js +5 -5
  915. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementUtil.js +26 -19
  916. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +11 -15
  917. package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.js +57 -32
  918. package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.service.js +1 -1
  919. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +127 -78
  920. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.service.js +1 -1
  921. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +443 -243
  922. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.service.js +1 -1
  923. package/vscode/src/vs/platform/extensionManagement/common/implicitActivationEvents.js +3 -4
  924. package/vscode/src/vs/platform/extensionManagement/common/unsupportedExtensionsMigration.d.ts +2 -1
  925. package/vscode/src/vs/platform/extensionManagement/common/unsupportedExtensionsMigration.js +91 -28
  926. package/vscode/src/vs/platform/extensionRecommendations/common/extensionRecommendations.service.js +1 -1
  927. package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.service.js +1 -1
  928. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +99 -69
  929. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +12 -5
  930. package/vscode/src/vs/platform/extensions/common/extensions.js +47 -39
  931. package/vscode/src/vs/platform/extensions/common/extensions.service.js +1 -1
  932. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +26 -6
  933. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +178 -158
  934. package/vscode/src/vs/platform/externalServices/common/serviceMachineId.js +9 -7
  935. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +145 -84
  936. package/vscode/src/vs/platform/files/common/files.d.ts +21 -1
  937. package/vscode/src/vs/platform/files/common/files.js +108 -79
  938. package/vscode/src/vs/platform/files/common/files.service.d.ts +1 -0
  939. package/vscode/src/vs/platform/files/common/files.service.js +1 -1
  940. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +121 -39
  941. package/vscode/src/vs/platform/files/common/watcher.js +18 -9
  942. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +27 -23
  943. package/vscode/src/vs/platform/hover/browser/hover.js +17 -18
  944. package/vscode/src/vs/platform/hover/browser/hover.service.js +1 -1
  945. package/vscode/src/vs/platform/hover/browser/hoverService.d.ts +27 -5
  946. package/vscode/src/vs/platform/hover/browser/hoverService.js +251 -113
  947. package/vscode/src/vs/platform/hover/browser/hoverWidget.d.ts +8 -0
  948. package/vscode/src/vs/platform/hover/browser/hoverWidget.js +180 -131
  949. package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +9 -13
  950. package/vscode/src/vs/platform/imageResize/common/imageResizeService.service.js +1 -1
  951. package/vscode/src/vs/platform/instantiation/common/extensions.js +1 -1
  952. package/vscode/src/vs/platform/instantiation/common/graph.js +3 -3
  953. package/vscode/src/vs/platform/instantiation/common/instantiation.js +15 -10
  954. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +100 -58
  955. package/vscode/src/vs/platform/jsonschemas/common/jsonContributionRegistry.js +3 -3
  956. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.d.ts +1 -0
  957. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +132 -62
  958. package/vscode/src/vs/platform/keybinding/common/baseResolvedKeybinding.js +16 -8
  959. package/vscode/src/vs/platform/keybinding/common/keybinding.service.d.ts +5 -0
  960. package/vscode/src/vs/platform/keybinding/common/keybinding.service.js +1 -1
  961. package/vscode/src/vs/platform/keybinding/common/keybindingResolver.js +38 -26
  962. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.js +10 -8
  963. package/vscode/src/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js +118 -69
  964. package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.js +12 -12
  965. package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.service.js +1 -1
  966. package/vscode/src/vs/platform/label/common/label.service.js +1 -1
  967. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +11 -16
  968. package/vscode/src/vs/platform/languagePacks/common/languagePacks.service.js +1 -1
  969. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
  970. package/vscode/src/vs/platform/layout/browser/layoutService.service.js +1 -1
  971. package/vscode/src/vs/platform/layout/browser/zIndexRegistry.js +3 -3
  972. package/vscode/src/vs/platform/list/browser/listService.js +579 -357
  973. package/vscode/src/vs/platform/list/browser/listService.service.js +1 -1
  974. package/vscode/src/vs/platform/log/browser/log.js +15 -5
  975. package/vscode/src/vs/platform/log/common/bufferLog.js +9 -4
  976. package/vscode/src/vs/platform/log/common/log.js +136 -96
  977. package/vscode/src/vs/platform/log/common/log.service.js +2 -2
  978. package/vscode/src/vs/platform/markdown/browser/markdownRenderer.js +7 -8
  979. package/vscode/src/vs/platform/markdown/browser/markdownRenderer.service.js +1 -1
  980. package/vscode/src/vs/platform/markers/common/markerService.js +50 -32
  981. package/vscode/src/vs/platform/markers/common/markers.js +44 -45
  982. package/vscode/src/vs/platform/markers/common/markers.service.js +1 -1
  983. package/vscode/src/vs/platform/mcp/common/mcpGalleryManifest.service.js +1 -1
  984. package/vscode/src/vs/platform/mcp/common/mcpManagement.d.ts +1 -0
  985. package/vscode/src/vs/platform/mcp/common/mcpManagement.js +2 -1
  986. package/vscode/src/vs/platform/mcp/common/mcpManagement.service.js +3 -3
  987. package/vscode/src/vs/platform/mcp/common/mcpResourceScannerService.service.js +1 -1
  988. package/vscode/src/vs/platform/native/common/native.d.ts +10 -0
  989. package/vscode/src/vs/platform/notification/common/notification.js +15 -15
  990. package/vscode/src/vs/platform/notification/common/notification.service.js +1 -1
  991. package/vscode/src/vs/platform/observable/common/observableMemento.js +4 -8
  992. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +12 -3
  993. package/vscode/src/vs/platform/observable/common/wrapInHotClass.js +1 -1
  994. package/vscode/src/vs/platform/opener/browser/link.js +26 -32
  995. package/vscode/src/vs/platform/opener/common/opener.service.js +1 -1
  996. package/vscode/src/vs/platform/policy/common/policy.d.ts +2 -2
  997. package/vscode/src/vs/platform/policy/common/policy.js +24 -6
  998. package/vscode/src/vs/platform/policy/common/policy.service.js +1 -1
  999. package/vscode/src/vs/platform/product/common/product.js +3 -3
  1000. package/vscode/src/vs/platform/product/common/productService.service.js +1 -1
  1001. package/vscode/src/vs/platform/progress/common/progress.js +17 -12
  1002. package/vscode/src/vs/platform/progress/common/progress.service.js +2 -2
  1003. package/vscode/src/vs/platform/quickinput/browser/media/quickInput.css +3 -11
  1004. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +79 -76
  1005. package/vscode/src/vs/platform/quickinput/browser/quickAccess.d.ts +3 -1
  1006. package/vscode/src/vs/platform/quickinput/browser/quickAccess.js +20 -17
  1007. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +163 -141
  1008. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +120 -49
  1009. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +22 -17
  1010. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +354 -257
  1011. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +297 -272
  1012. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +33 -21
  1013. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +40 -33
  1014. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +16 -14
  1015. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +8 -9
  1016. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.js +67 -60
  1017. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.js +58 -33
  1018. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +77 -37
  1019. package/vscode/src/vs/platform/quickinput/common/quickAccess.d.ts +11 -4
  1020. package/vscode/src/vs/platform/quickinput/common/quickAccess.js +14 -9
  1021. package/vscode/src/vs/platform/quickinput/common/quickInput.js +9 -6
  1022. package/vscode/src/vs/platform/quickinput/common/quickInput.service.js +1 -1
  1023. package/vscode/src/vs/platform/registry/common/platform.js +2 -2
  1024. package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +268 -131
  1025. package/vscode/src/vs/platform/remote/common/remoteAgentEnvironment.d.ts +1 -0
  1026. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.service.js +1 -1
  1027. package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.service.js +1 -1
  1028. package/vscode/src/vs/platform/remote/common/remoteHosts.js +26 -8
  1029. package/vscode/src/vs/platform/remote/common/remoteSocketFactoryService.service.js +1 -1
  1030. package/vscode/src/vs/platform/request/common/request.js +188 -195
  1031. package/vscode/src/vs/platform/request/common/request.service.js +1 -1
  1032. package/vscode/src/vs/platform/secrets/common/secrets.service.js +1 -1
  1033. package/vscode/src/vs/platform/storage/common/storage.js +148 -89
  1034. package/vscode/src/vs/platform/storage/common/storage.service.js +1 -1
  1035. package/vscode/src/vs/platform/telemetry/common/commonProperties.js +1 -1
  1036. package/vscode/src/vs/platform/telemetry/common/telemetry.service.js +2 -2
  1037. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +76 -63
  1038. package/vscode/src/vs/platform/terminal/common/capabilities/bufferMarkCapability.js +7 -3
  1039. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.d.ts +2 -1
  1040. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.js +94 -84
  1041. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/terminalCommand.js +119 -54
  1042. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +219 -105
  1043. package/vscode/src/vs/platform/terminal/common/capabilities/cwdDetectionCapability.js +1 -1
  1044. package/vscode/src/vs/platform/terminal/common/capabilities/partialCommandDetectionCapability.js +8 -4
  1045. package/vscode/src/vs/platform/terminal/common/capabilities/promptTypeDetectionCapability.js +3 -1
  1046. package/vscode/src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.js +5 -3
  1047. package/vscode/src/vs/platform/terminal/common/capabilities/terminalCapabilityStore.js +108 -67
  1048. package/vscode/src/vs/platform/terminal/common/environmentVariableShared.d.ts +1 -1
  1049. package/vscode/src/vs/platform/terminal/common/environmentVariableShared.js +9 -2
  1050. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +6 -5
  1051. package/vscode/src/vs/platform/terminal/common/terminal.js +29 -23
  1052. package/vscode/src/vs/platform/terminal/common/terminal.service.js +1 -1
  1053. package/vscode/src/vs/platform/terminal/common/terminalDataBuffering.js +2 -2
  1054. package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +212 -231
  1055. package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +10 -16
  1056. package/vscode/src/vs/platform/terminal/common/xterm/shellIntegrationAddon.js +157 -100
  1057. package/vscode/src/vs/platform/theme/browser/defaultStyles.d.ts +1 -1
  1058. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +12 -6
  1059. package/vscode/src/vs/platform/theme/browser/iconsStyleSheet.js +26 -14
  1060. package/vscode/src/vs/platform/theme/common/colorUtils.js +104 -56
  1061. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +130 -45
  1062. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +18 -8
  1063. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +484 -164
  1064. package/vscode/src/vs/platform/theme/common/colors/inputColors.d.ts +1 -0
  1065. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +226 -60
  1066. package/vscode/src/vs/platform/theme/common/colors/listColors.js +203 -90
  1067. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +22 -7
  1068. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +33 -13
  1069. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +92 -22
  1070. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +43 -15
  1071. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +18 -3
  1072. package/vscode/src/vs/platform/theme/common/iconRegistry.js +76 -36
  1073. package/vscode/src/vs/platform/theme/common/themeService.d.ts +2 -2
  1074. package/vscode/src/vs/platform/theme/common/themeService.js +16 -9
  1075. package/vscode/src/vs/platform/theme/common/themeService.service.js +1 -1
  1076. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +193 -158
  1077. package/vscode/src/vs/platform/tunnel/common/tunnel.js +103 -46
  1078. package/vscode/src/vs/platform/tunnel/common/tunnel.service.js +1 -1
  1079. package/vscode/src/vs/platform/undoRedo/common/undoRedo.js +13 -5
  1080. package/vscode/src/vs/platform/undoRedo/common/undoRedo.service.js +1 -1
  1081. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +170 -116
  1082. package/vscode/src/vs/platform/update/common/update.d.ts +23 -8
  1083. package/vscode/src/vs/platform/update/common/update.js +5 -3
  1084. package/vscode/src/vs/platform/update/common/update.service.d.ts +1 -0
  1085. package/vscode/src/vs/platform/update/common/update.service.js +1 -1
  1086. package/vscode/src/vs/platform/uriIdentity/common/uriIdentity.service.js +1 -1
  1087. package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +16 -10
  1088. package/vscode/src/vs/platform/url/common/trustedDomains.js +8 -8
  1089. package/vscode/src/vs/platform/url/common/url.service.js +1 -1
  1090. package/vscode/src/vs/platform/url/common/urlGlob.js +60 -28
  1091. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.d.ts +18 -5
  1092. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +231 -113
  1093. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.service.js +1 -1
  1094. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileStorageService.service.js +1 -1
  1095. package/vscode/src/vs/platform/userDataSync/common/abstractJsonSynchronizer.js +151 -70
  1096. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +441 -204
  1097. package/vscode/src/vs/platform/userDataSync/common/extensionsMerge.js +116 -35
  1098. package/vscode/src/vs/platform/userDataSync/common/extensionsSync.js +380 -169
  1099. package/vscode/src/vs/platform/userDataSync/common/globalStateMerge.js +79 -14
  1100. package/vscode/src/vs/platform/userDataSync/common/globalStateSync.js +279 -134
  1101. package/vscode/src/vs/platform/userDataSync/common/ignoredExtensions.service.js +1 -1
  1102. package/vscode/src/vs/platform/userDataSync/common/keybindingsMerge.js +182 -39
  1103. package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +169 -110
  1104. package/vscode/src/vs/platform/userDataSync/common/settingsMerge.js +194 -84
  1105. package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +166 -95
  1106. package/vscode/src/vs/platform/userDataSync/common/snippetsMerge.js +53 -19
  1107. package/vscode/src/vs/platform/userDataSync/common/snippetsSync.js +291 -125
  1108. package/vscode/src/vs/platform/userDataSync/common/tasksSync.js +43 -29
  1109. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +64 -58
  1110. package/vscode/src/vs/platform/userDataSync/common/userDataSync.service.js +9 -9
  1111. package/vscode/src/vs/platform/userDataSync/common/userDataSyncAccount.service.js +1 -1
  1112. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +75 -39
  1113. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.service.js +1 -1
  1114. package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +296 -165
  1115. package/vscode/src/vs/platform/webContentExtractor/common/webContentExtractor.js +2 -2
  1116. package/vscode/src/vs/platform/webContentExtractor/common/webContentExtractor.service.js +2 -2
  1117. package/vscode/src/vs/platform/webWorker/browser/webWorkerDescriptor.d.ts +1 -1
  1118. package/vscode/src/vs/platform/webWorker/browser/webWorkerService.service.js +1 -1
  1119. package/vscode/src/vs/platform/webWorker/browser/webWorkerServiceImpl.d.ts +1 -0
  1120. package/vscode/src/vs/platform/webWorker/browser/webWorkerServiceImpl.js +68 -53
  1121. package/vscode/src/vs/platform/window/common/window.d.ts +1 -0
  1122. package/vscode/src/vs/platform/workspace/common/canonicalUri.service.js +1 -1
  1123. package/vscode/src/vs/platform/workspace/common/editSessions.service.js +1 -1
  1124. package/vscode/src/vs/platform/workspace/common/workspace.d.ts +7 -1
  1125. package/vscode/src/vs/platform/workspace/common/workspace.js +59 -33
  1126. package/vscode/src/vs/platform/workspace/common/workspace.service.js +1 -1
  1127. package/vscode/src/vs/platform/workspace/common/workspaceTrust.d.ts +4 -0
  1128. package/vscode/src/vs/platform/workspace/common/workspaceTrust.service.d.ts +4 -1
  1129. package/vscode/src/vs/platform/workspace/common/workspaceTrust.service.js +3 -3
  1130. package/vscode/src/vs/platform/workspaces/common/workspaces.js +87 -44
  1131. package/vscode/src/vs/platform/workspaces/common/workspaces.service.js +1 -1
  1132. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.d.ts +4 -0
  1133. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +163 -0
  1134. package/vscode/src/vs/workbench/api/browser/statusBarService.js +60 -26
  1135. package/vscode/src/vs/workbench/api/common/cache.js +3 -1
  1136. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +402 -233
  1137. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +74 -29
  1138. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +177 -175
  1139. package/vscode/src/vs/workbench/api/common/extHostAiRelatedInformation.js +2 -2
  1140. package/vscode/src/vs/workbench/api/common/extHostAiSettingsSearch.js +3 -3
  1141. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +725 -733
  1142. package/vscode/src/vs/workbench/api/common/extHostApiDeprecationService.js +4 -7
  1143. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +264 -192
  1144. package/vscode/src/vs/workbench/api/common/extHostBulkEdits.js +1 -3
  1145. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +16 -11
  1146. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +399 -225
  1147. package/vscode/src/vs/workbench/api/common/extHostChatContext.d.ts +23 -8
  1148. package/vscode/src/vs/workbench/api/common/extHostChatContext.js +211 -80
  1149. package/vscode/src/vs/workbench/api/common/extHostChatOutputRenderer.js +13 -3
  1150. package/vscode/src/vs/workbench/api/common/extHostChatSessions.d.ts +12 -3
  1151. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +418 -93
  1152. package/vscode/src/vs/workbench/api/common/extHostChatStatus.js +5 -5
  1153. package/vscode/src/vs/workbench/api/common/extHostCodeInsets.js +18 -5
  1154. package/vscode/src/vs/workbench/api/common/extHostCodeMapper.js +3 -1
  1155. package/vscode/src/vs/workbench/api/common/extHostCommands.js +149 -135
  1156. package/vscode/src/vs/workbench/api/common/extHostComments.js +172 -99
  1157. package/vscode/src/vs/workbench/api/common/extHostConfiguration.js +82 -60
  1158. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +17 -20
  1159. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.js +69 -32
  1160. package/vscode/src/vs/workbench/api/common/extHostDataChannels.js +5 -3
  1161. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +197 -149
  1162. package/vscode/src/vs/workbench/api/common/extHostDecorations.js +42 -22
  1163. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +96 -45
  1164. package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +14 -11
  1165. package/vscode/src/vs/workbench/api/common/extHostDocumentData.js +92 -48
  1166. package/vscode/src/vs/workbench/api/common/extHostDocumentSaveParticipant.js +49 -21
  1167. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +16 -18
  1168. package/vscode/src/vs/workbench/api/common/extHostDocumentsAndEditors.js +4 -8
  1169. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +85 -82
  1170. package/vscode/src/vs/workbench/api/common/extHostEmbedding.js +6 -3
  1171. package/vscode/src/vs/workbench/api/common/extHostEmbeddingVector.js +3 -3
  1172. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +38 -21
  1173. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +304 -188
  1174. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +72 -51
  1175. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +82 -60
  1176. package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +106 -41
  1177. package/vscode/src/vs/workbench/api/common/extHostFileSystemInfo.js +2 -3
  1178. package/vscode/src/vs/workbench/api/common/extHostInitDataService.js +1 -1
  1179. package/vscode/src/vs/workbench/api/common/extHostInteractive.js +36 -24
  1180. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +908 -333
  1181. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.d.ts +4 -2
  1182. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +117 -59
  1183. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.d.ts +4 -5
  1184. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +219 -105
  1185. package/vscode/src/vs/workbench/api/common/extHostLanguages.js +8 -6
  1186. package/vscode/src/vs/workbench/api/common/extHostLocalizationService.js +21 -17
  1187. package/vscode/src/vs/workbench/api/common/extHostLogService.js +6 -7
  1188. package/vscode/src/vs/workbench/api/common/extHostLoggerService.d.ts +1 -1
  1189. package/vscode/src/vs/workbench/api/common/extHostLoggerService.js +5 -11
  1190. package/vscode/src/vs/workbench/api/common/extHostManagedSockets.js +5 -5
  1191. package/vscode/src/vs/workbench/api/common/extHostMcp.d.ts +24 -15
  1192. package/vscode/src/vs/workbench/api/common/extHostMcp.js +357 -221
  1193. package/vscode/src/vs/workbench/api/common/extHostMemento.js +8 -7
  1194. package/vscode/src/vs/workbench/api/common/extHostMessageService.js +31 -20
  1195. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +108 -77
  1196. package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +101 -61
  1197. package/vscode/src/vs/workbench/api/common/extHostNotebookDocumentSaveParticipant.js +34 -12
  1198. package/vscode/src/vs/workbench/api/common/extHostNotebookEditor.js +23 -7
  1199. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -4
  1200. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +119 -89
  1201. package/vscode/src/vs/workbench/api/common/extHostNotebookRenderers.js +5 -2
  1202. package/vscode/src/vs/workbench/api/common/extHostOutput.js +59 -31
  1203. package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +1 -1
  1204. package/vscode/src/vs/workbench/api/common/extHostProgress.js +38 -19
  1205. package/vscode/src/vs/workbench/api/common/extHostQuickDiff.js +11 -4
  1206. package/vscode/src/vs/workbench/api/common/extHostQuickOpen.js +154 -84
  1207. package/vscode/src/vs/workbench/api/common/extHostRequireInterceptor.js +65 -43
  1208. package/vscode/src/vs/workbench/api/common/extHostRpcService.js +1 -1
  1209. package/vscode/src/vs/workbench/api/common/extHostSCM.js +318 -201
  1210. package/vscode/src/vs/workbench/api/common/extHostSearch.js +24 -17
  1211. package/vscode/src/vs/workbench/api/common/extHostSecretState.js +1 -1
  1212. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +3 -1
  1213. package/vscode/src/vs/workbench/api/common/extHostShare.js +14 -3
  1214. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +13 -4
  1215. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +63 -38
  1216. package/vscode/src/vs/workbench/api/common/extHostStorage.js +10 -5
  1217. package/vscode/src/vs/workbench/api/common/extHostStoragePaths.js +13 -18
  1218. package/vscode/src/vs/workbench/api/common/extHostTask.js +129 -114
  1219. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +76 -61
  1220. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +238 -116
  1221. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +76 -37
  1222. package/vscode/src/vs/workbench/api/common/extHostTestItem.js +43 -24
  1223. package/vscode/src/vs/workbench/api/common/extHostTesting.js +197 -115
  1224. package/vscode/src/vs/workbench/api/common/extHostTestingPrivateApi.js +5 -3
  1225. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +118 -79
  1226. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +32 -24
  1227. package/vscode/src/vs/workbench/api/common/extHostTheming.js +12 -14
  1228. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +30 -17
  1229. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +259 -135
  1230. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +60 -49
  1231. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +13 -16
  1232. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +1198 -1037
  1233. package/vscode/src/vs/workbench/api/common/extHostTypes/codeActionKind.js +18 -16
  1234. package/vscode/src/vs/workbench/api/common/extHostTypes/diagnostic.js +14 -26
  1235. package/vscode/src/vs/workbench/api/common/extHostTypes/location.js +7 -12
  1236. package/vscode/src/vs/workbench/api/common/extHostTypes/markdownString.js +6 -6
  1237. package/vscode/src/vs/workbench/api/common/extHostTypes/notebooks.js +24 -31
  1238. package/vscode/src/vs/workbench/api/common/extHostTypes/position.js +29 -34
  1239. package/vscode/src/vs/workbench/api/common/extHostTypes/range.js +15 -27
  1240. package/vscode/src/vs/workbench/api/common/extHostTypes/selection.js +8 -15
  1241. package/vscode/src/vs/workbench/api/common/extHostTypes/snippetString.js +21 -25
  1242. package/vscode/src/vs/workbench/api/common/extHostTypes/snippetTextEdit.js +1 -2
  1243. package/vscode/src/vs/workbench/api/common/extHostTypes/symbolInformation.js +6 -9
  1244. package/vscode/src/vs/workbench/api/common/extHostTypes/textEdit.js +12 -15
  1245. package/vscode/src/vs/workbench/api/common/extHostTypes/workspaceEdit.js +85 -34
  1246. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +81 -7
  1247. package/vscode/src/vs/workbench/api/common/extHostTypes.js +515 -511
  1248. package/vscode/src/vs/workbench/api/common/extHostUriOpener.js +3 -1
  1249. package/vscode/src/vs/workbench/api/common/extHostUriTransformerService.js +2 -3
  1250. package/vscode/src/vs/workbench/api/common/extHostUrls.js +9 -8
  1251. package/vscode/src/vs/workbench/api/common/extHostVariableResolverService.js +27 -18
  1252. package/vscode/src/vs/workbench/api/common/extHostWebview.js +67 -38
  1253. package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.js +66 -34
  1254. package/vscode/src/vs/workbench/api/common/extHostWebviewPanels.js +40 -21
  1255. package/vscode/src/vs/workbench/api/common/extHostWebviewView.js +25 -12
  1256. package/vscode/src/vs/workbench/api/common/extHostWindow.js +31 -24
  1257. package/vscode/src/vs/workbench/api/common/extHostWorkspace.d.ts +6 -0
  1258. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +276 -136
  1259. package/vscode/src/vs/workbench/api/common/extensionHostMain.js +30 -20
  1260. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +57 -45
  1261. package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.js +1 -4
  1262. package/vscode/src/vs/workbench/api/worker/extHostExtensionService.js +23 -17
  1263. package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +41 -33
  1264. package/vscode/src/vs/workbench/browser/actions/developerActions.js +255 -243
  1265. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +570 -451
  1266. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +66 -46
  1267. package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +33 -22
  1268. package/vscode/src/vs/workbench/browser/actions/windowActions.js +158 -101
  1269. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +114 -63
  1270. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +102 -82
  1271. package/vscode/src/vs/workbench/browser/codeeditor.js +38 -39
  1272. package/vscode/src/vs/workbench/browser/composite.js +5 -3
  1273. package/vscode/src/vs/workbench/browser/contextkeys.d.ts +5 -1
  1274. package/vscode/src/vs/workbench/browser/contextkeys.js +89 -47
  1275. package/vscode/src/vs/workbench/browser/dnd.js +220 -101
  1276. package/vscode/src/vs/workbench/browser/editor.js +34 -15
  1277. package/vscode/src/vs/workbench/browser/labels.js +150 -93
  1278. package/vscode/src/vs/workbench/browser/panecomposite.js +31 -26
  1279. package/vscode/src/vs/workbench/browser/part.js +47 -23
  1280. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +214 -170
  1281. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +115 -91
  1282. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +93 -60
  1283. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/media/auxiliaryBarPart.css +7 -2
  1284. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +140 -68
  1285. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +219 -153
  1286. package/vscode/src/vs/workbench/browser/parts/compositePart.js +80 -36
  1287. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +137 -67
  1288. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +27 -14
  1289. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +12 -16
  1290. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +144 -139
  1291. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.service.js +1 -1
  1292. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +276 -174
  1293. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +6 -11
  1294. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +136 -110
  1295. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +57 -52
  1296. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +108 -94
  1297. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +716 -420
  1298. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +116 -68
  1299. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +734 -435
  1300. package/vscode/src/vs/workbench/browser/parts/editor/editorCommandsContext.js +62 -21
  1301. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +172 -117
  1302. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +545 -296
  1303. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +116 -66
  1304. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.js +38 -19
  1305. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +99 -48
  1306. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +289 -176
  1307. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +108 -65
  1308. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +119 -87
  1309. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +113 -64
  1310. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.d.ts +0 -10
  1311. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +502 -334
  1312. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +96 -49
  1313. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +50 -32
  1314. package/vscode/src/vs/workbench/browser/parts/editor/editorWithViewState.d.ts +0 -1
  1315. package/vscode/src/vs/workbench/browser/parts/editor/editorWithViewState.js +27 -26
  1316. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +104 -41
  1317. package/vscode/src/vs/workbench/browser/parts/editor/media/editorplaceholder.css +0 -2
  1318. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +634 -447
  1319. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +37 -16
  1320. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +11 -13
  1321. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +141 -73
  1322. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +94 -59
  1323. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +8 -4
  1324. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +74 -48
  1325. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +96 -42
  1326. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +76 -36
  1327. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +312 -184
  1328. package/vscode/src/vs/workbench/browser/parts/media/paneCompositePart.css +25 -4
  1329. package/vscode/src/vs/workbench/browser/parts/notifications/media/notificationsList.css +0 -2
  1330. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +75 -51
  1331. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +6 -9
  1332. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +128 -88
  1333. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +85 -38
  1334. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +37 -32
  1335. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +39 -37
  1336. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +124 -87
  1337. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +138 -91
  1338. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +290 -130
  1339. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +139 -100
  1340. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.d.ts +0 -1
  1341. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +144 -104
  1342. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +62 -53
  1343. package/vscode/src/vs/workbench/browser/parts/sidebar/media/sidebarpart.css +7 -2
  1344. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +4 -4
  1345. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +75 -46
  1346. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +279 -162
  1347. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +118 -75
  1348. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +134 -77
  1349. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +18 -10
  1350. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +546 -377
  1351. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +56 -43
  1352. package/vscode/src/vs/workbench/browser/parts/views/viewMenuActions.js +27 -15
  1353. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +250 -152
  1354. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +360 -247
  1355. package/vscode/src/vs/workbench/browser/parts/views/viewsViewlet.js +22 -16
  1356. package/vscode/src/vs/workbench/browser/quickaccess.js +15 -11
  1357. package/vscode/src/vs/workbench/browser/style.js +13 -11
  1358. package/vscode/src/vs/workbench/browser/window.js +149 -105
  1359. package/vscode/src/vs/workbench/browser/workbench.contribution.js +988 -1077
  1360. package/vscode/src/vs/workbench/common/component.js +1 -2
  1361. package/vscode/src/vs/workbench/common/configuration.js +103 -84
  1362. package/vscode/src/vs/workbench/common/contextkeys.d.ts +31 -19
  1363. package/vscode/src/vs/workbench/common/contextkeys.js +190 -147
  1364. package/vscode/src/vs/workbench/common/contributions.js +129 -57
  1365. package/vscode/src/vs/workbench/common/editor/binaryEditorModel.js +2 -4
  1366. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +78 -41
  1367. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +108 -87
  1368. package/vscode/src/vs/workbench/common/editor/editorInput.js +4 -2
  1369. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +42 -14
  1370. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +51 -38
  1371. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +39 -24
  1372. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +27 -25
  1373. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +67 -31
  1374. package/vscode/src/vs/workbench/common/editor/textResourceEditorModel.js +15 -8
  1375. package/vscode/src/vs/workbench/common/editor.js +121 -77
  1376. package/vscode/src/vs/workbench/common/memento.js +41 -30
  1377. package/vscode/src/vs/workbench/common/notifications.js +103 -56
  1378. package/vscode/src/vs/workbench/common/resources.js +15 -16
  1379. package/vscode/src/vs/workbench/common/theme.js +514 -396
  1380. package/vscode/src/vs/workbench/common/views.js +61 -31
  1381. package/vscode/src/vs/workbench/common/views.service.js +1 -1
  1382. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +724 -723
  1383. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +75 -88
  1384. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +46 -37
  1385. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkCellEdits.js +21 -11
  1386. package/vscode/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.js +9 -12
  1387. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.d.ts +41 -7
  1388. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +430 -327
  1389. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatConstants.js +6 -6
  1390. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +12 -2
  1391. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +116 -22
  1392. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.d.ts +23 -13
  1393. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +352 -151
  1394. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service.js +1 -1
  1395. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.service.d.ts +33 -0
  1396. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.service.js +6 -0
  1397. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.d.ts +31 -0
  1398. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.js +82 -0
  1399. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.service.d.ts +47 -0
  1400. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.service.js +6 -0
  1401. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.service.js +1 -1
  1402. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.js +7 -6
  1403. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.service.js +1 -1
  1404. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +3 -3
  1405. package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +91 -1
  1406. package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.d.ts +1 -1
  1407. package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.js +4 -4
  1408. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +42 -31
  1409. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.service.d.ts +30 -0
  1410. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.service.js +6 -0
  1411. package/vscode/src/vs/workbench/contrib/chat/browser/chatImageUtils.js +27 -26
  1412. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.service.js +1 -1
  1413. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.service.js +1 -1
  1414. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.service.d.ts +15 -0
  1415. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.service.js +6 -0
  1416. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.service.js +1 -1
  1417. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.js +11 -12
  1418. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +10 -2
  1419. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.service.js +1 -1
  1420. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.service.js +1 -1
  1421. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.service.d.ts +7 -0
  1422. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.service.js +6 -0
  1423. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +64 -56
  1424. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +10 -3
  1425. package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +275 -246
  1426. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +18 -2
  1427. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +89 -45
  1428. package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.service.js +1 -1
  1429. package/vscode/src/vs/workbench/contrib/chat/common/chat.js +7 -3
  1430. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.d.ts +17 -8
  1431. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +105 -81
  1432. package/vscode/src/vs/workbench/contrib/chat/common/chatModes.service.js +1 -1
  1433. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +160 -29
  1434. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.js +103 -52
  1435. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +7 -0
  1436. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.js +1 -1
  1437. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +52 -11
  1438. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.js +7 -1
  1439. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +14 -4
  1440. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.js +1 -1
  1441. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +20 -3
  1442. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +47 -25
  1443. package/vscode/src/vs/workbench/contrib/chat/common/contextContrib/chatContext.d.ts +14 -7
  1444. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatCodeMapperService.service.js +1 -1
  1445. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.d.ts +27 -20
  1446. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +25 -35
  1447. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.service.d.ts +1 -9
  1448. package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.service.js +1 -1
  1449. package/vscode/src/vs/workbench/contrib/chat/common/ignoredFiles.service.js +1 -1
  1450. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +6 -9
  1451. package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.service.js +1 -1
  1452. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +108 -18
  1453. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +759 -127
  1454. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.d.ts +16 -4
  1455. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.js +1 -1
  1456. package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.d.ts +11 -0
  1457. package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.service.d.ts +14 -0
  1458. package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.service.js +6 -0
  1459. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +136 -38
  1460. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +521 -431
  1461. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.d.ts +1 -2
  1462. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.js +4 -4
  1463. package/vscode/src/vs/workbench/contrib/chat/common/model/chatStreamStats.js +17 -15
  1464. package/vscode/src/vs/workbench/contrib/chat/common/model/chatTransferService.service.js +1 -1
  1465. package/vscode/src/vs/workbench/contrib/chat/common/model/chatUri.js +11 -6
  1466. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.d.ts +26 -26
  1467. package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.js +45 -71
  1468. package/vscode/src/vs/workbench/contrib/chat/common/model/chatWordCounter.js +10 -21
  1469. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.d.ts +20 -1
  1470. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.js +136 -79
  1471. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.service.js +2 -2
  1472. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.service.js +1 -1
  1473. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +5 -2
  1474. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +227 -108
  1475. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.d.ts +34 -3
  1476. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.js +55 -34
  1477. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.d.ts +69 -26
  1478. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.js +98 -41
  1479. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.d.ts +14 -2
  1480. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +221 -96
  1481. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.d.ts +8 -2
  1482. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +40 -25
  1483. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +57 -22
  1484. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +12 -2
  1485. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +20 -7
  1486. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.js +1 -1
  1487. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptsServiceUtils.d.ts +14 -0
  1488. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptsServiceUtils.js +14 -0
  1489. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.d.ts +3 -0
  1490. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.js +109 -47
  1491. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.d.ts +3 -3
  1492. package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +23 -36
  1493. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +24 -25
  1494. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.js +56 -39
  1495. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.d.ts +2 -6
  1496. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +130 -169
  1497. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +10 -5
  1498. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +141 -90
  1499. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.d.ts +1 -3
  1500. package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +11 -24
  1501. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.service.js +1 -1
  1502. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.d.ts +2 -0
  1503. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.service.js +1 -1
  1504. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +38 -0
  1505. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +471 -0
  1506. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +6 -0
  1507. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +231 -0
  1508. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +91 -12
  1509. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +137 -59
  1510. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service.d.ts +64 -12
  1511. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service.js +1 -1
  1512. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatLayoutService.service.js +1 -1
  1513. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.service.js +1 -1
  1514. package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.js +4 -1
  1515. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js +3 -6
  1516. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +93 -100
  1517. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +54 -49
  1518. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +21 -27
  1519. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +46 -26
  1520. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js +11 -9
  1521. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorLineNumberMenu.js +39 -22
  1522. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +77 -62
  1523. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +277 -121
  1524. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +24 -19
  1525. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +69 -43
  1526. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +157 -94
  1527. package/vscode/src/vs/workbench/contrib/codeEditor/browser/simpleEditorOptions.js +28 -19
  1528. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css +1 -1
  1529. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +153 -83
  1530. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +9 -7
  1531. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +25 -23
  1532. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +9 -7
  1533. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +13 -12
  1534. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +58 -46
  1535. package/vscode/src/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js +25 -11
  1536. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.d.ts +72 -0
  1537. package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +968 -0
  1538. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +38 -14
  1539. package/vscode/src/vs/workbench/contrib/comments/browser/commentFormActions.js +23 -5
  1540. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +71 -37
  1541. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +212 -162
  1542. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +117 -70
  1543. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.service.js +1 -1
  1544. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadAdditionalActions.js +19 -12
  1545. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +63 -40
  1546. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +33 -22
  1547. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadRangeDecorator.js +7 -5
  1548. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +88 -44
  1549. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.d.ts +2 -0
  1550. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +116 -74
  1551. package/vscode/src/vs/workbench/contrib/comments/browser/comments.js +1 -1
  1552. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +26 -16
  1553. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.d.ts +3 -0
  1554. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +322 -177
  1555. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +41 -25
  1556. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +181 -133
  1557. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +149 -117
  1558. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +45 -39
  1559. package/vscode/src/vs/workbench/contrib/comments/browser/media/review.css +0 -5
  1560. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +33 -25
  1561. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +95 -50
  1562. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.d.ts +4 -0
  1563. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +46 -32
  1564. package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +5 -3
  1565. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +114 -68
  1566. package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.service.js +1 -1
  1567. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +57 -41
  1568. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +323 -212
  1569. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.d.ts +3 -0
  1570. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +245 -169
  1571. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.service.js +1 -1
  1572. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +966 -672
  1573. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +49 -30
  1574. package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.d.ts +4 -3
  1575. package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.js +203 -130
  1576. package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +105 -77
  1577. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +312 -213
  1578. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +289 -209
  1579. package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +254 -158
  1580. package/vscode/src/vs/workbench/contrib/debug/browser/debugExpressionRenderer.js +100 -72
  1581. package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +117 -70
  1582. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +120 -58
  1583. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +46 -16
  1584. package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +52 -24
  1585. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.d.ts +10 -7
  1586. package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +198 -80
  1587. package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +322 -225
  1588. package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +27 -16
  1589. package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +132 -84
  1590. package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +241 -154
  1591. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +19 -20
  1592. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +366 -344
  1593. package/vscode/src/vs/workbench/contrib/debug/common/debug.service.js +1 -1
  1594. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +304 -176
  1595. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +34 -34
  1596. package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.js +97 -86
  1597. package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.service.js +1 -1
  1598. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +5 -3
  1599. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +68 -15
  1600. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +51 -64
  1601. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +16 -10
  1602. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +64 -62
  1603. package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/dropOrPasteInto.contribution.js +11 -4
  1604. package/vscode/src/vs/workbench/contrib/editSessions/common/editSessions.service.js +2 -2
  1605. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/randomService.service.js +1 -1
  1606. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service.js +1 -1
  1607. package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +142 -120
  1608. package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +15 -11
  1609. package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +20 -15
  1610. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +538 -320
  1611. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +16 -16
  1612. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +245 -188
  1613. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +229 -119
  1614. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationsService.js +67 -34
  1615. package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +944 -825
  1616. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +1732 -1043
  1617. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +3 -7
  1618. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +31 -17
  1619. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +28 -19
  1620. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +52 -47
  1621. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsList.js +81 -50
  1622. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +35 -29
  1623. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +181 -104
  1624. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +411 -353
  1625. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +536 -379
  1626. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +347 -241
  1627. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +964 -561
  1628. package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +76 -45
  1629. package/vscode/src/vs/workbench/contrib/extensions/browser/keymapRecommendations.js +5 -5
  1630. package/vscode/src/vs/workbench/contrib/extensions/browser/languageRecommendations.js +6 -6
  1631. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extension.css +3 -3
  1632. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css +2 -2
  1633. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionEditor.css +8 -9
  1634. package/vscode/src/vs/workbench/contrib/extensions/browser/remoteRecommendations.js +14 -7
  1635. package/vscode/src/vs/workbench/contrib/extensions/browser/unsupportedExtensionsMigrationContribution.js +24 -10
  1636. package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +6 -7
  1637. package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +57 -31
  1638. package/vscode/src/vs/workbench/contrib/extensions/common/extensionQuery.js +29 -23
  1639. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +29 -33
  1640. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.service.js +1 -1
  1641. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +28 -28
  1642. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +9 -5
  1643. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +33 -25
  1644. package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +7 -5
  1645. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +40 -38
  1646. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +27 -32
  1647. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +40 -36
  1648. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.service.js +1 -1
  1649. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +22 -18
  1650. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorHandler.js +16 -8
  1651. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +45 -30
  1652. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +96 -64
  1653. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +41 -20
  1654. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +149 -88
  1655. package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +1 -1
  1656. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +76 -64
  1657. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +180 -126
  1658. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +467 -314
  1659. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +124 -50
  1660. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +173 -71
  1661. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +34 -34
  1662. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +214 -157
  1663. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +284 -295
  1664. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +36 -18
  1665. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._fileEditorFactory.js +21 -3
  1666. package/vscode/src/vs/workbench/contrib/files/browser/files.js +10 -9
  1667. package/vscode/src/vs/workbench/contrib/files/browser/files.service.js +1 -1
  1668. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +45 -26
  1669. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +11 -14
  1670. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +249 -192
  1671. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +595 -415
  1672. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +278 -187
  1673. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +56 -35
  1674. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +9 -10
  1675. package/vscode/src/vs/workbench/contrib/files/common/explorerFileNestingTrie.js +45 -41
  1676. package/vscode/src/vs/workbench/contrib/files/common/explorerModel.js +69 -35
  1677. package/vscode/src/vs/workbench/contrib/files/common/files.js +116 -105
  1678. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +35 -23
  1679. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +170 -105
  1680. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +17 -16
  1681. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +19 -7
  1682. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +53 -35
  1683. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +4 -23
  1684. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.js +1 -1
  1685. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveDocumentService.service.js +1 -1
  1686. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +36 -25
  1687. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveHistoryService.service.js +1 -1
  1688. package/vscode/src/vs/workbench/contrib/issue/browser/issueTroubleshoot.service.js +1 -1
  1689. package/vscode/src/vs/workbench/contrib/issue/common/issue.service.js +2 -2
  1690. package/vscode/src/vs/workbench/contrib/list/browser/list.contribution.js +6 -6
  1691. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +9 -3
  1692. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +14 -12
  1693. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +102 -94
  1694. package/vscode/src/vs/workbench/contrib/markdown/common/markedKatexExtension.js +23 -24
  1695. package/vscode/src/vs/workbench/contrib/markers/common/markers.js +29 -29
  1696. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.d.ts +12 -0
  1697. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +384 -194
  1698. package/vscode/src/vs/workbench/contrib/mcp/common/mcpCommandIds.d.ts +1 -0
  1699. package/vscode/src/vs/workbench/contrib/mcp/common/mcpCommandIds.js +1 -0
  1700. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +158 -144
  1701. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.d.ts +22 -0
  1702. package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.js +112 -0
  1703. package/vscode/src/vs/workbench/contrib/mcp/common/mcpIcons.d.ts +36 -0
  1704. package/vscode/src/vs/workbench/contrib/mcp/common/mcpIcons.js +126 -0
  1705. package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.d.ts +1 -1
  1706. package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.service.js +1 -1
  1707. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.d.ts +220 -0
  1708. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +1027 -0
  1709. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTaskManager.d.ts +68 -0
  1710. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTaskManager.js +177 -0
  1711. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +27 -1
  1712. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +109 -102
  1713. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.js +4 -4
  1714. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypesUtils.d.ts +3 -0
  1715. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypesUtils.js +61 -7
  1716. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocol.d.ts +814 -193
  1717. package/vscode/src/vs/workbench/contrib/mcp/common/uriTemplate.d.ts +37 -0
  1718. package/vscode/src/vs/workbench/contrib/mcp/common/uriTemplate.js +269 -0
  1719. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +75 -49
  1720. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +179 -160
  1721. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeMarkers/mergeMarkersController.js +1 -1
  1722. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +15 -14
  1723. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/editing.js +4 -4
  1724. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/lineRange.js +4 -1
  1725. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mapping.js +43 -21
  1726. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +136 -96
  1727. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +126 -60
  1728. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/rangeUtils.js +4 -9
  1729. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +23 -24
  1730. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/telemetry.js +17 -19
  1731. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +37 -18
  1732. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +33 -29
  1733. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  1734. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.d.ts +51 -0
  1735. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.js +205 -0
  1736. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +97 -70
  1737. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.js +2 -2
  1738. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.service.js +1 -1
  1739. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +96 -47
  1740. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +19 -10
  1741. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +42 -30
  1742. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +88 -55
  1743. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.d.ts +1 -1
  1744. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +222 -172
  1745. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.d.ts +26 -0
  1746. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +746 -0
  1747. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +62 -52
  1748. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +64 -67
  1749. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +59 -48
  1750. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.d.ts +13 -0
  1751. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +300 -0
  1752. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.d.ts +8 -0
  1753. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.js +55 -0
  1754. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.d.ts +273 -0
  1755. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +1963 -0
  1756. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.d.ts +50 -0
  1757. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +314 -0
  1758. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.d.ts +258 -0
  1759. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.js +886 -0
  1760. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.d.ts +41 -0
  1761. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.js +118 -0
  1762. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.d.ts +17 -0
  1763. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.js +71 -0
  1764. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.d.ts +27 -0
  1765. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.js +40 -0
  1766. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.d.ts +23 -0
  1767. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.js +313 -0
  1768. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.d.ts +51 -0
  1769. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.js +265 -0
  1770. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.d.ts +24 -0
  1771. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.js +185 -0
  1772. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.d.ts +28 -0
  1773. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.js +104 -0
  1774. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.d.ts +10 -0
  1775. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.js +43 -0
  1776. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.d.ts +21 -0
  1777. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.js +41 -0
  1778. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.service.js +1 -1
  1779. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.d.ts +25 -0
  1780. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.js +69 -0
  1781. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.service.js +1 -1
  1782. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiff.css +469 -0
  1783. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.d.ts +149 -0
  1784. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +935 -0
  1785. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.d.ts +180 -0
  1786. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +29 -0
  1787. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.d.ts +102 -0
  1788. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +643 -0
  1789. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.d.ts +30 -0
  1790. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.js +197 -0
  1791. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.d.ts +75 -0
  1792. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.js +539 -0
  1793. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.d.ts +13 -0
  1794. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.js +39 -0
  1795. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +31 -35
  1796. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +25 -30
  1797. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookCellLayoutManager.js +7 -10
  1798. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +206 -132
  1799. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorExtensions.js +11 -4
  1800. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +822 -586
  1801. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
  1802. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookLogger.js +2 -3
  1803. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +128 -135
  1804. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service.js +1 -1
  1805. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +12 -13
  1806. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +36 -23
  1807. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +44 -19
  1808. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +30 -35
  1809. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +97 -48
  1810. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.js +32 -26
  1811. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +61 -64
  1812. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellExecution.js +26 -37
  1813. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.js +54 -38
  1814. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +248 -156
  1815. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellProgressBar.js +3 -7
  1816. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +131 -101
  1817. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +63 -43
  1818. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +231 -152
  1819. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +16 -20
  1820. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +36 -19
  1821. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +12 -10
  1822. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +31 -27
  1823. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +94 -83
  1824. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellEditorPool.js +21 -19
  1825. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +290 -222
  1826. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +61 -18
  1827. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +544 -426
  1828. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +235 -145
  1829. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +732 -544
  1830. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewThemeMapping.js +92 -56
  1831. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +133 -72
  1832. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellEditorOptions.js +34 -23
  1833. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputTextHelper.js +34 -37
  1834. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputViewModel.js +5 -3
  1835. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellSelectionCollection.js +19 -5
  1836. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +108 -96
  1837. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/eventDispatcher.js +9 -9
  1838. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +34 -20
  1839. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +75 -71
  1840. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineDataSourceFactory.service.js +1 -1
  1841. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.service.js +1 -1
  1842. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +200 -88
  1843. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +111 -64
  1844. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +227 -121
  1845. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorWidgetContextKeys.js +44 -23
  1846. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +254 -156
  1847. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +72 -62
  1848. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.js +35 -33
  1849. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +38 -30
  1850. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +35 -34
  1851. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellOutputTextModel.js +1 -2
  1852. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +83 -53
  1853. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.d.ts +19 -0
  1854. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.js +90 -0
  1855. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCellStatusBarService.service.js +1 -1
  1856. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +150 -131
  1857. package/vscode/src/vs/workbench/contrib/notebook/common/notebookContextKeys.js +48 -48
  1858. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.d.ts +26 -0
  1859. package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.js +92 -0
  1860. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +86 -65
  1861. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +102 -72
  1862. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModelResolverService.service.js +1 -1
  1863. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionService.service.js +1 -1
  1864. package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.service.js +1 -1
  1865. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.service.js +2 -2
  1866. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKeymapService.service.js +1 -1
  1867. package/vscode/src/vs/workbench/contrib/notebook/common/notebookLoggingService.service.js +1 -1
  1868. package/vscode/src/vs/workbench/contrib/notebook/common/notebookRange.js +9 -9
  1869. package/vscode/src/vs/workbench/contrib/notebook/common/notebookRendererMessagingService.service.js +1 -1
  1870. package/vscode/src/vs/workbench/contrib/notebook/common/notebookService.service.js +1 -1
  1871. package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +8 -8
  1872. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +85 -50
  1873. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +15 -15
  1874. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +126 -111
  1875. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +228 -273
  1876. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +210 -206
  1877. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +90 -97
  1878. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.service.js +1 -1
  1879. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +33 -28
  1880. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +281 -176
  1881. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +21 -17
  1882. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +537 -386
  1883. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +38 -22
  1884. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.service.js +1 -1
  1885. package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffModel.service.js +1 -1
  1886. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +197 -118
  1887. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +69 -50
  1888. package/vscode/src/vs/workbench/contrib/scm/browser/util.js +40 -29
  1889. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.d.ts +6 -2
  1890. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +78 -37
  1891. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.service.js +1 -1
  1892. package/vscode/src/vs/workbench/contrib/scm/common/quickDiffService.js +41 -40
  1893. package/vscode/src/vs/workbench/contrib/scm/common/scm.d.ts +2 -0
  1894. package/vscode/src/vs/workbench/contrib/scm/common/scm.service.js +2 -2
  1895. package/vscode/src/vs/workbench/contrib/search/browser/AISearch/aiSearchModel.js +80 -49
  1896. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.d.ts +3 -1
  1897. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +227 -129
  1898. package/vscode/src/vs/workbench/contrib/search/browser/media/searchview.css +1 -0
  1899. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchModel.js +75 -50
  1900. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +38 -38
  1901. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/searchNotebookHelpers.js +9 -12
  1902. package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +68 -41
  1903. package/vscode/src/vs/workbench/contrib/search/browser/replace.service.js +1 -1
  1904. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.d.ts +0 -2
  1905. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +4 -12
  1906. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +162 -147
  1907. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +55 -57
  1908. package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +106 -83
  1909. package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +15 -15
  1910. package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +22 -22
  1911. package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +21 -20
  1912. package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +216 -163
  1913. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/fileMatch.js +89 -62
  1914. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/folderMatch.js +196 -76
  1915. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/match.js +34 -22
  1916. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/rangeDecorations.js +16 -15
  1917. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/searchTreeCommon.js +23 -42
  1918. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/searchViewModelWorkbenchService.service.js +1 -1
  1919. package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/textSearchHeading.js +25 -34
  1920. package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +715 -489
  1921. package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +205 -154
  1922. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +66 -44
  1923. package/vscode/src/vs/workbench/contrib/search/common/cellSearchModel.js +11 -5
  1924. package/vscode/src/vs/workbench/contrib/search/common/constants.js +29 -29
  1925. package/vscode/src/vs/workbench/contrib/search/common/notebookSearch.service.js +1 -1
  1926. package/vscode/src/vs/workbench/contrib/search/common/search.js +16 -19
  1927. package/vscode/src/vs/workbench/contrib/search/common/searchHistoryService.js +15 -11
  1928. package/vscode/src/vs/workbench/contrib/search/common/searchHistoryService.service.js +1 -1
  1929. package/vscode/src/vs/workbench/contrib/search/common/searchNotebookHelpers.js +5 -5
  1930. package/vscode/src/vs/workbench/contrib/searchEditor/browser/constants.js +9 -9
  1931. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorActions.js +82 -46
  1932. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +147 -76
  1933. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorModel.js +64 -17
  1934. package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +150 -100
  1935. package/vscode/src/vs/workbench/contrib/share/common/share.service.js +1 -1
  1936. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +60 -27
  1937. package/vscode/src/vs/workbench/contrib/snippets/browser/snippets.service.d.ts +3 -2
  1938. package/vscode/src/vs/workbench/contrib/snippets/browser/snippets.service.js +1 -1
  1939. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.d.ts +4 -1
  1940. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +108 -45
  1941. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.d.ts +3 -2
  1942. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +122 -104
  1943. package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +41 -28
  1944. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +74 -74
  1945. package/vscode/src/vs/workbench/contrib/speech/common/speechService.service.js +1 -1
  1946. package/vscode/src/vs/workbench/contrib/tags/common/workspaceTags.service.js +1 -1
  1947. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +3 -3
  1948. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +29 -29
  1949. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +12 -12
  1950. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.service.js +1 -1
  1951. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +242 -182
  1952. package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.d.ts +2 -0
  1953. package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.js +10 -10
  1954. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +21 -3
  1955. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +28 -11
  1956. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.js +7 -7
  1957. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +34 -37
  1958. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalExtensions.js +10 -4
  1959. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +13 -20
  1960. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +21 -13
  1961. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +568 -594
  1962. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy.js +54 -38
  1963. package/vscode/src/vs/workbench/contrib/terminal/browser/widgets/widgetManager.js +2 -2
  1964. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +67 -86
  1965. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm-private.d.ts +16 -0
  1966. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.service.js +1 -1
  1967. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -1
  1968. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +160 -150
  1969. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.service.js +2 -2
  1970. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +159 -159
  1971. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +29 -30
  1972. package/vscode/src/vs/workbench/contrib/terminal/common/terminalExtensionPoints.service.js +1 -1
  1973. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
  1974. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.d.ts +2 -1
  1975. package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.js +1 -0
  1976. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +6 -6
  1977. package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +11 -10
  1978. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.d.ts +5 -0
  1979. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +405 -271
  1980. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.service.d.ts +10 -0
  1981. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.service.js +6 -0
  1982. package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +6 -6
  1983. package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +5 -5
  1984. package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +6 -4
  1985. package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/links.service.js +1 -1
  1986. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFix.service.js +1 -1
  1987. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.d.ts +3 -1
  1988. package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +18 -6
  1989. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalCompletionService.service.js +1 -1
  1990. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.d.ts +6 -9
  1991. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +125 -140
  1992. package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +26 -33
  1993. package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +8 -10
  1994. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +15 -15
  1995. package/vscode/src/vs/workbench/contrib/testing/common/getComputedState.js +4 -7
  1996. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +27 -21
  1997. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.service.js +1 -1
  1998. package/vscode/src/vs/workbench/contrib/testing/common/testExplorerFilterState.service.js +1 -1
  1999. package/vscode/src/vs/workbench/contrib/testing/common/testId.js +5 -5
  2000. package/vscode/src/vs/workbench/contrib/testing/common/testItemCollection.js +126 -86
  2001. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.service.js +1 -1
  2002. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +90 -44
  2003. package/vscode/src/vs/workbench/contrib/testing/common/testResultService.service.js +1 -1
  2004. package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.service.js +1 -1
  2005. package/vscode/src/vs/workbench/contrib/testing/common/testService.service.js +1 -1
  2006. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +149 -128
  2007. package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.service.js +1 -1
  2008. package/vscode/src/vs/workbench/contrib/testing/common/testingDecorations.service.js +1 -1
  2009. package/vscode/src/vs/workbench/contrib/testing/common/testingPeekOpener.service.js +1 -1
  2010. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +17 -12
  2011. package/vscode/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.js +10 -18
  2012. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.js +17 -15
  2013. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.service.js +1 -1
  2014. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +68 -45
  2015. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +12 -12
  2016. package/vscode/src/vs/workbench/contrib/webview/browser/webview.js +16 -18
  2017. package/vscode/src/vs/workbench/contrib/webview/browser/webview.service.js +1 -1
  2018. package/vscode/src/vs/workbench/contrib/webview/common/webview.js +5 -7
  2019. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +41 -26
  2020. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +8 -8
  2021. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.js +43 -32
  2022. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service.js +1 -1
  2023. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewService.service.js +1 -1
  2024. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.service.js +1 -1
  2025. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +3 -3
  2026. package/vscode/src/vs/workbench/services/accessibility/common/accessibleViewInformationService.service.js +1 -1
  2027. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +28 -0
  2028. package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +676 -0
  2029. package/vscode/src/vs/workbench/services/activity/browser/activityService.js +9 -12
  2030. package/vscode/src/vs/workbench/services/activity/common/activity.service.js +1 -1
  2031. package/vscode/src/vs/workbench/services/aiEmbeddingVector/common/aiEmbeddingVectorService.service.js +1 -1
  2032. package/vscode/src/vs/workbench/services/aiRelatedInformation/common/aiRelatedInformation.service.js +1 -1
  2033. package/vscode/src/vs/workbench/services/aiSettingsSearch/common/aiSettingsSearch.service.js +1 -1
  2034. package/vscode/src/vs/workbench/services/assignment/common/assignmentService.service.js +1 -1
  2035. package/vscode/src/vs/workbench/services/authentication/browser/authenticationAccessService.service.js +1 -1
  2036. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpAccessService.service.js +1 -1
  2037. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpService.service.js +1 -1
  2038. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpUsageService.service.js +1 -1
  2039. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +101 -69
  2040. package/vscode/src/vs/workbench/services/authentication/browser/authenticationUsageService.service.js +1 -1
  2041. package/vscode/src/vs/workbench/services/authentication/common/authentication.service.js +2 -2
  2042. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.service.js +1 -1
  2043. package/vscode/src/vs/workbench/services/authentication/common/dynamicAuthenticationProviderStorage.service.js +1 -1
  2044. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +164 -103
  2045. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.service.js +1 -1
  2046. package/vscode/src/vs/workbench/services/banner/browser/bannerService.service.js +1 -1
  2047. package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.d.ts +3 -3
  2048. package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.js +1 -1
  2049. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.d.ts +19 -19
  2050. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +321 -355
  2051. package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.js +1 -1
  2052. package/vscode/src/vs/workbench/services/configuration/common/jsonEditing.service.js +1 -1
  2053. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +2 -2
  2054. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.service.js +1 -1
  2055. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverExpression.js +56 -34
  2056. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +114 -131
  2057. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +4 -5
  2058. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +159 -129
  2059. package/vscode/src/vs/workbench/services/decorations/common/decorations.service.js +1 -1
  2060. package/vscode/src/vs/workbench/services/driver/browser/driver.js +52 -32
  2061. package/vscode/src/vs/workbench/services/editor/browser/codeEditorService.js +8 -20
  2062. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +203 -99
  2063. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +43 -36
  2064. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.service.js +1 -1
  2065. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.service.js +1 -1
  2066. package/vscode/src/vs/workbench/services/editor/common/editorPaneService.service.js +1 -1
  2067. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +20 -18
  2068. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.service.js +1 -1
  2069. package/vscode/src/vs/workbench/services/editor/common/editorService.service.js +1 -1
  2070. package/vscode/src/vs/workbench/services/environment/browser/environmentService.d.ts +1 -0
  2071. package/vscode/src/vs/workbench/services/environment/browser/environmentService.js +397 -225
  2072. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.service.js +1 -1
  2073. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.js +2 -2
  2074. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.service.js +1 -1
  2075. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.js +3 -3
  2076. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +7 -7
  2077. package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.service.js +2 -2
  2078. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +178 -84
  2079. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.service.js +1 -1
  2080. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +101 -64
  2081. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.service.js +1 -1
  2082. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +16 -11
  2083. package/vscode/src/vs/workbench/services/extensions/common/extensionHostKind.js +34 -21
  2084. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.d.ts +2 -0
  2085. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.js +43 -37
  2086. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.service.js +1 -1
  2087. package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +1 -0
  2088. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +68 -31
  2089. package/vscode/src/vs/workbench/services/extensions/common/extensions.service.js +1 -1
  2090. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +459 -487
  2091. package/vscode/src/vs/workbench/services/extensions/common/lazyPromise.js +1 -2
  2092. package/vscode/src/vs/workbench/services/extensions/common/proxyIdentifier.js +3 -1
  2093. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +204 -133
  2094. package/vscode/src/vs/workbench/services/extensions/common/workspaceContains.js +17 -12
  2095. package/vscode/src/vs/workbench/services/extensions/worker/polyfillNestedWorker.js +30 -22
  2096. package/vscode/src/vs/workbench/services/files/common/elevatedFileService.service.js +1 -1
  2097. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +157 -103
  2098. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.js +1 -1
  2099. package/vscode/src/vs/workbench/services/history/common/history.service.js +1 -1
  2100. package/vscode/src/vs/workbench/services/host/browser/host.service.js +1 -1
  2101. package/vscode/src/vs/workbench/services/inlineCompletions/common/inlineCompletionsUnification.service.js +1 -1
  2102. package/vscode/src/vs/workbench/services/integrity/common/integrity.service.js +1 -1
  2103. package/vscode/src/vs/workbench/services/keybinding/browser/unboundCommands.js +2 -3
  2104. package/vscode/src/vs/workbench/services/keybinding/common/fallbackKeyboardMapper.js +1 -1
  2105. package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.service.js +1 -1
  2106. package/vscode/src/vs/workbench/services/language/common/languageService.js +117 -103
  2107. package/vscode/src/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.service.js +1 -1
  2108. package/vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.service.js +1 -1
  2109. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +4 -0
  2110. package/vscode/src/vs/workbench/services/layout/browser/layoutService.service.d.ts +3 -3
  2111. package/vscode/src/vs/workbench/services/layout/common/workbenchModeService.d.ts +16 -0
  2112. package/vscode/src/vs/workbench/services/layout/common/workbenchModeService.js +20 -0
  2113. package/vscode/src/vs/workbench/services/layout/common/workbenchModeService.service.d.ts +27 -0
  2114. package/vscode/src/vs/workbench/services/layout/common/workbenchModeService.service.js +6 -0
  2115. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.service.js +1 -1
  2116. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +37 -19
  2117. package/vscode/src/vs/workbench/services/localization/common/locale.service.js +2 -2
  2118. package/vscode/src/vs/workbench/services/log/common/defaultLogLevels.service.js +1 -1
  2119. package/vscode/src/vs/workbench/services/log/common/logConstants.js +6 -3
  2120. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +32 -17
  2121. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.service.js +1 -1
  2122. package/vscode/src/vs/workbench/services/outline/browser/outline.service.js +1 -1
  2123. package/vscode/src/vs/workbench/services/output/common/output.js +21 -21
  2124. package/vscode/src/vs/workbench/services/output/common/output.service.js +1 -1
  2125. package/vscode/src/vs/workbench/services/panecomposite/browser/panecomposite.service.js +1 -1
  2126. package/vscode/src/vs/workbench/services/path/common/pathService.service.js +1 -1
  2127. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +9 -7
  2128. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +103 -72
  2129. package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +1 -0
  2130. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.js +1 -1
  2131. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +14 -10
  2132. package/vscode/src/vs/workbench/services/progress/browser/progressIndicator.js +37 -36
  2133. package/vscode/src/vs/workbench/services/remote/common/remoteAgentService.service.js +1 -1
  2134. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +54 -57
  2135. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.service.js +1 -1
  2136. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +203 -145
  2137. package/vscode/src/vs/workbench/services/search/common/fileSearchManager.js +77 -35
  2138. package/vscode/src/vs/workbench/services/search/common/folderQuerySearchTree.js +19 -8
  2139. package/vscode/src/vs/workbench/services/search/common/ignoreFile.js +32 -30
  2140. package/vscode/src/vs/workbench/services/search/common/queryBuilder.d.ts +1 -0
  2141. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +128 -123
  2142. package/vscode/src/vs/workbench/services/search/common/search.d.ts +2 -0
  2143. package/vscode/src/vs/workbench/services/search/common/search.js +43 -47
  2144. package/vscode/src/vs/workbench/services/search/common/search.service.js +1 -1
  2145. package/vscode/src/vs/workbench/services/search/common/searchExtConversionTypes.js +30 -18
  2146. package/vscode/src/vs/workbench/services/search/common/searchExtTypes.d.ts +4 -0
  2147. package/vscode/src/vs/workbench/services/search/common/searchExtTypes.js +2 -2
  2148. package/vscode/src/vs/workbench/services/search/common/searchHelpers.js +13 -6
  2149. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +51 -42
  2150. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.service.js +1 -1
  2151. package/vscode/src/vs/workbench/services/storage/browser/storageService.js +108 -65
  2152. package/vscode/src/vs/workbench/services/terminal/common/embedderTerminalService.service.js +1 -1
  2153. package/vscode/src/vs/workbench/services/textMate/browser/textMateTokenizationFeature.service.d.ts +1 -1
  2154. package/vscode/src/vs/workbench/services/textMate/browser/textMateTokenizationFeature.service.js +1 -1
  2155. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +45 -33
  2156. package/vscode/src/vs/workbench/services/textMate/common/TMHelper.js +4 -6
  2157. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +163 -156
  2158. package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +75 -27
  2159. package/vscode/src/vs/workbench/services/textfile/common/textEditorService.service.js +1 -1
  2160. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +204 -131
  2161. package/vscode/src/vs/workbench/services/textfile/common/textfiles.service.js +1 -1
  2162. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +92 -90
  2163. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.d.ts +1 -1
  2164. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +244 -143
  2165. package/vscode/src/vs/workbench/services/themes/common/hostColorSchemeService.service.js +1 -1
  2166. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +85 -56
  2167. package/vscode/src/vs/workbench/services/themes/common/plistParser.js +118 -137
  2168. package/vscode/src/vs/workbench/services/themes/common/themeCompatibility.js +40 -26
  2169. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.d.ts +3 -0
  2170. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +246 -0
  2171. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.d.ts +1 -1
  2172. package/vscode/src/vs/workbench/services/timer/browser/timerService.service.js +1 -1
  2173. package/vscode/src/vs/workbench/services/title/browser/titleService.service.js +1 -1
  2174. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +47 -22
  2175. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +79 -50
  2176. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.service.js +1 -1
  2177. package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.service.js +1 -1
  2178. package/vscode/src/vs/workbench/services/userAttention/common/userAttentionService.service.js +1 -1
  2179. package/vscode/src/vs/workbench/services/userData/browser/userDataInit.service.js +1 -1
  2180. package/vscode/src/vs/workbench/services/userDataProfile/browser/iconSelectBox.js +15 -13
  2181. package/vscode/src/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.service.js +1 -1
  2182. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +16 -11
  2183. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.service.js +3 -3
  2184. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +6 -86
  2185. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileService.js +3 -1
  2186. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +33 -23
  2187. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.service.js +1 -1
  2188. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +233 -135
  2189. package/vscode/src/vs/workbench/services/views/common/viewsService.service.js +1 -1
  2190. package/vscode/src/vs/workbench/services/workingCopy/common/resourceWorkingCopy.js +2 -5
  2191. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +239 -139
  2192. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackup.service.js +1 -1
  2193. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyEditorService.service.js +1 -1
  2194. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.js +1 -1
  2195. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyHistory.service.js +1 -1
  2196. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyService.service.js +1 -1
  2197. package/vscode/src/vs/workbench/services/workspaces/common/workspaceEditing.service.js +1 -1
  2198. package/vscode/src/vs/workbench/services/workspaces/common/workspaceIdentityService.service.js +1 -1
  2199. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.d.ts +7 -1
  2200. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +152 -80
  2201. package/vscode-dts/vscode.d.ts +78 -37
  2202. package/vscode-dts/vscode.proposed.agentSessionsWorkspace.d.ts +18 -0
  2203. package/vscode-dts/vscode.proposed.chatContextProvider.d.ts +104 -11
  2204. package/vscode-dts/vscode.proposed.chatOutputRenderer.d.ts +16 -1
  2205. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +287 -8
  2206. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +25 -66
  2207. package/vscode-dts/vscode.proposed.chatPromptFiles.d.ts +136 -0
  2208. package/vscode-dts/vscode.proposed.chatProvider.d.ts +21 -1
  2209. package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +196 -29
  2210. package/vscode-dts/vscode.proposed.contribChatEditorInlineGutterMenu.d.ts +6 -0
  2211. package/vscode-dts/vscode.proposed.css.d.ts +6 -0
  2212. package/vscode-dts/vscode.proposed.d.ts +8 -2
  2213. package/vscode-dts/vscode.proposed.envIsAppPortable.d.ts +20 -0
  2214. package/vscode-dts/vscode.proposed.extensionAffinity.d.ts +6 -0
  2215. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +24 -1
  2216. package/vscode-dts/vscode.proposed.languageModelToolSupportsModel.d.ts +69 -0
  2217. package/vscode-dts/vscode.proposed.mcpServerDefinitions.d.ts +31 -0
  2218. package/vscode-dts/vscode.proposed.workspaceTrust.d.ts +31 -0
  2219. package/vscode/src/vs/editor/contrib/colorPicker/browser/images/opacity-background.png +0 -0
  2220. package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/keyboard-dark.svg +0 -10
  2221. package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/keyboard-light.svg +0 -10
  2222. package/vscode/src/vs/nls.messages.d.ts +0 -2
  2223. package/vscode/src/vs/nls.messages.js +0 -10
  2224. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.d.ts +0 -42
  2225. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.js +0 -201
  2226. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.d.ts +0 -21
  2227. package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +0 -141
  2228. package/vscode/src/vs/workbench/contrib/extensions/browser/media/loading-dark.svg +0 -31
  2229. package/vscode/src/vs/workbench/contrib/extensions/browser/media/loading-hc.svg +0 -31
  2230. package/vscode/src/vs/workbench/contrib/extensions/browser/media/loading.svg +0 -31
  2231. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.d.ts +0 -7
  2232. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.js +0 -11
  2233. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.d.ts +0 -20
  2234. package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +0 -150
  2235. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.d.ts +0 -30
  2236. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +0 -270
  2237. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/fixedZoneWidget.d.ts +0 -11
  2238. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/fixedZoneWidget.js +0 -43
  2239. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.d.ts +0 -22
  2240. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +0 -322
  2241. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.d.ts +0 -18
  2242. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.js +0 -59
  2243. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.d.ts +0 -75
  2244. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +0 -340
  2245. package/vscode/src/vs/workbench/contrib/replNotebook/browser/interactiveEditor.css +0 -21
  2246. package/vscode/src/vs/workbench/contrib/replNotebook/browser/media/interactive.css +0 -36
  2247. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.d.ts +0 -110
  2248. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +0 -627
  2249. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.d.ts +0 -40
  2250. package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +0 -139
  2251. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.d.ts +0 -57
  2252. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.js +0 -374
  2253. package/vscode-dts/vscode.proposed.chatEditing.d.ts +0 -29
  2254. package/vscode-dts/vscode.proposed.quickInputButtonLocation.d.ts +0 -49
@@ -5,7 +5,7 @@ import { Lazy } from './lazy.js';
5
5
  import { Constants } from './uint.js';
6
6
 
7
7
  function isFalsyOrWhitespace(str) {
8
- if (!str || typeof str !== 'string') {
8
+ if (!str || typeof str !== "string") {
9
9
  return true;
10
10
  }
11
11
  return str.trim().length === 0;
@@ -15,11 +15,9 @@ function format(value, ...args) {
15
15
  if (args.length === 0) {
16
16
  return value;
17
17
  }
18
- return value.replace(_formatRegexp, function (match, group) {
18
+ return value.replace(_formatRegexp, function(match, group) {
19
19
  const idx = parseInt(group, 10);
20
- return isNaN(idx) || idx < 0 || idx >= args.length ?
21
- match :
22
- args[idx];
20
+ return isNaN(idx) || idx < 0 || idx >= args.length ? match : args[idx];
23
21
  });
24
22
  }
25
23
  const _format2Regexp = /{([^}]+)}/g;
@@ -32,27 +30,36 @@ function format2(template, values) {
32
30
  function htmlAttributeEncodeValue(value) {
33
31
  return value.replace(/[<>"'&]/g, ch => {
34
32
  switch (ch) {
35
- case '<': return '&lt;';
36
- case '>': return '&gt;';
37
- case '"': return '&quot;';
38
- case '\'': return '&apos;';
39
- case '&': return '&amp;';
33
+ case "<":
34
+ return "&lt;";
35
+ case ">":
36
+ return "&gt;";
37
+ case "\"":
38
+ return "&quot;";
39
+ case "'":
40
+ return "&apos;";
41
+ case "&":
42
+ return "&amp;";
40
43
  }
41
44
  return ch;
42
45
  });
43
46
  }
44
47
  function escape(html) {
45
- return html.replace(/[<>&]/g, function (match) {
48
+ return html.replace(/[<>&]/g, function(match) {
46
49
  switch (match) {
47
- case '<': return '&lt;';
48
- case '>': return '&gt;';
49
- case '&': return '&amp;';
50
- default: return match;
50
+ case "<":
51
+ return "&lt;";
52
+ case ">":
53
+ return "&gt;";
54
+ case "&":
55
+ return "&amp;";
56
+ default:
57
+ return match;
51
58
  }
52
59
  });
53
60
  }
54
61
  function escapeRegExpCharacters(value) {
55
- return value.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g, '\\$&');
62
+ return value.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g, "\\$&");
56
63
  }
57
64
  function count(value, substr) {
58
65
  let result = 0;
@@ -77,7 +84,7 @@ function truncateMiddle(value, maxLength, suffix = Ellipsis) {
77
84
  const suffixLength = Math.floor(maxLength / 2) - suffix.length / 2;
78
85
  return `${value.substr(0, prefixLength)}${suffix}${value.substr(value.length - suffixLength)}`;
79
86
  }
80
- function trim(haystack, needle = ' ') {
87
+ function trim(haystack, needle = " ") {
81
88
  const trimmed = ltrim(haystack, needle);
82
89
  return rtrim(trimmed, needle);
83
90
  }
@@ -92,8 +99,7 @@ function ltrim(haystack, needle) {
92
99
  while (offset < haystack.length && haystack.charCodeAt(offset) === ch) {
93
100
  offset++;
94
101
  }
95
- }
96
- else {
102
+ } else {
97
103
  while (haystack.startsWith(needle, offset)) {
98
104
  offset += needleLen;
99
105
  }
@@ -120,43 +126,43 @@ function rtrim(haystack, needle) {
120
126
  return haystack.substring(0, offset);
121
127
  }
122
128
  function convertSimple2RegExpPattern(pattern) {
123
- return pattern.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g, '\\$&').replace(/[\*]/g, '.*');
129
+ return pattern.replace(/[\-\\\{\}\+\?\|\^\$\.\,\[\]\(\)\#\s]/g, "\\$&").replace(/[\*]/g, ".*");
124
130
  }
125
131
  function createRegExp(searchString, isRegex, options = {}) {
126
132
  if (!searchString) {
127
- throw ( new Error('Cannot create regex from empty string'));
133
+ throw ( new Error("Cannot create regex from empty string"));
128
134
  }
129
135
  if (!isRegex) {
130
136
  searchString = escapeRegExpCharacters(searchString);
131
137
  }
132
138
  if (options.wholeWord) {
133
139
  if (!/\B/.test(searchString.charAt(0))) {
134
- searchString = '\\b' + searchString;
140
+ searchString = "\\b" + searchString;
135
141
  }
136
142
  if (!/\B/.test(searchString.charAt(searchString.length - 1))) {
137
- searchString = searchString + '\\b';
143
+ searchString = searchString + "\\b";
138
144
  }
139
145
  }
140
- let modifiers = '';
146
+ let modifiers = "";
141
147
  if (options.global) {
142
- modifiers += 'g';
148
+ modifiers += "g";
143
149
  }
144
150
  if (!options.matchCase) {
145
- modifiers += 'i';
151
+ modifiers += "i";
146
152
  }
147
153
  if (options.multiline) {
148
- modifiers += 'm';
154
+ modifiers += "m";
149
155
  }
150
156
  if (options.unicode) {
151
- modifiers += 'u';
157
+ modifiers += "u";
152
158
  }
153
159
  return ( new RegExp(searchString, modifiers));
154
160
  }
155
161
  function regExpLeadsToEndlessLoop(regexp) {
156
- if (regexp.source === '^' || regexp.source === '^$' || regexp.source === '$' || regexp.source === '^\\s*$') {
162
+ if (regexp.source === "^" || regexp.source === "^$" || regexp.source === "$" || regexp.source === "^\\s*$") {
157
163
  return false;
158
164
  }
159
- const match = regexp.exec('');
165
+ const match = regexp.exec("");
160
166
  return !!(match && regexp.lastIndex === 0);
161
167
  }
162
168
  function joinStrings(items, separator) {
@@ -169,7 +175,9 @@ function splitLinesIncludeSeparators(str) {
169
175
  const linesWithSeparators = [];
170
176
  const splitLinesAndSeparators = str.split(/(\r\n|\r|\n)/);
171
177
  for (let i = 0; i < Math.ceil(splitLinesAndSeparators.length / 2); i++) {
172
- linesWithSeparators.push(splitLinesAndSeparators[2 * i] + (splitLinesAndSeparators[2 * i + 1] ?? ''));
178
+ linesWithSeparators.push(
179
+ splitLinesAndSeparators[2 * i] + (splitLinesAndSeparators[2 * i + 1] ?? "")
180
+ );
173
181
  }
174
182
  return linesWithSeparators;
175
183
  }
@@ -203,11 +211,9 @@ function lastNonWhitespaceIndex(str, startIndex = str.length - 1) {
203
211
  function compare(a, b) {
204
212
  if (a < b) {
205
213
  return -1;
206
- }
207
- else if (a > b) {
214
+ } else if (a > b) {
208
215
  return 1;
209
- }
210
- else {
216
+ } else {
211
217
  return 0;
212
218
  }
213
219
  }
@@ -217,8 +223,7 @@ function compareSubstring(a, b, aStart = 0, aEnd = a.length, bStart = 0, bEnd =
217
223
  const codeB = b.charCodeAt(bStart);
218
224
  if (codeA < codeB) {
219
225
  return -1;
220
- }
221
- else if (codeA > codeB) {
226
+ } else if (codeA > codeB) {
222
227
  return 1;
223
228
  }
224
229
  }
@@ -226,8 +231,7 @@ function compareSubstring(a, b, aStart = 0, aEnd = a.length, bStart = 0, bEnd =
226
231
  const bLen = bEnd - bStart;
227
232
  if (aLen < bLen) {
228
233
  return -1;
229
- }
230
- else if (aLen > bLen) {
234
+ } else if (aLen > bLen) {
231
235
  return 1;
232
236
  }
233
237
  return 0;
@@ -261,8 +265,7 @@ function compareSubstringIgnoreCase(a, b, aStart = 0, aEnd = a.length, bStart =
261
265
  const bLen = bEnd - bStart;
262
266
  if (aLen < bLen) {
263
267
  return -1;
264
- }
265
- else if (aLen > bLen) {
268
+ } else if (aLen > bLen) {
266
269
  return 1;
267
270
  }
268
271
  return 0;
@@ -280,7 +283,7 @@ function equalsIgnoreCase(a, b) {
280
283
  return a.length === b.length && compareSubstringIgnoreCase(a, b) === 0;
281
284
  }
282
285
  function equals(a, b, ignoreCase) {
283
- return a === b || (a !== undefined && b !== undefined && equalsIgnoreCase(a, b));
286
+ return a === b || (!!ignoreCase && a !== undefined && b !== undefined && equalsIgnoreCase(a, b));
284
287
  }
285
288
  function startsWithIgnoreCase(str, candidate) {
286
289
  const len = candidate.length;
@@ -446,19 +449,12 @@ function containsUnusualLineTerminators(str) {
446
449
  return UNUSUAL_LINE_TERMINATORS.test(str);
447
450
  }
448
451
  function isFullWidthCharacter(charCode) {
449
- return ((charCode >= 0x2E80 && charCode <= 0xD7AF)
450
- || (charCode >= 0xF900 && charCode <= 0xFAFF)
451
- || (charCode >= 0xFF01 && charCode <= 0xFF5E)
452
- || (charCode >= 0xFFE0 && charCode <= 0xFFE6));
452
+ return ((charCode >= 0x2E80 && charCode <= 0xD7AF) || (charCode >= 0xF900 && charCode <= 0xFAFF) || (charCode >= 0xFF01 && charCode <= 0xFF5E) || (charCode >= 0xFFE0 && charCode <= 0xFFE6));
453
453
  }
454
454
  function isEmojiImprecise(x) {
455
- return ((x >= 0x1F1E6 && x <= 0x1F1FF) || (x === 8986) || (x === 8987) || (x === 9200)
456
- || (x === 9203) || (x >= 9728 && x <= 10175) || (x === 11088) || (x === 11093)
457
- || (x >= 127744 && x <= 128591) || (x >= 128640 && x <= 128764)
458
- || (x >= 128992 && x <= 129008) || (x >= 129280 && x <= 129535)
459
- || (x >= 129648 && x <= 129782));
455
+ return ((x >= 0x1F1E6 && x <= 0x1F1FF) || (x === 8986) || (x === 8987) || (x === 9200) || (x === 9203) || (x >= 9728 && x <= 10175) || (x === 11088) || (x === 11093) || (x >= 127744 && x <= 128591) || (x >= 128640 && x <= 128764) || (x >= 128992 && x <= 129008) || (x >= 129280 && x <= 129535) || (x >= 129648 && x <= 129782));
460
456
  }
461
- function lcut(text, n, prefix = '') {
457
+ function lcut(text, n, prefix = "") {
462
458
  const trimmed = text.trimStart();
463
459
  if (trimmed.length < n) {
464
460
  return trimmed;
@@ -477,36 +473,72 @@ function lcut(text, n, prefix = '') {
477
473
  }
478
474
  return prefix + trimmed.substring(i).trimStart();
479
475
  }
476
+ function rcut(text, n, suffix = "") {
477
+ const trimmed = text.trimEnd();
478
+ if (trimmed.length <= n) {
479
+ return trimmed;
480
+ }
481
+ const re = /\b/g;
482
+ let lastGoodBreak = 0;
483
+ let foundBoundaryAfterN = false;
484
+ while (re.test(trimmed)) {
485
+ if (re.lastIndex > n) {
486
+ foundBoundaryAfterN = true;
487
+ break;
488
+ }
489
+ lastGoodBreak = re.lastIndex;
490
+ re.lastIndex += 1;
491
+ }
492
+ if (!foundBoundaryAfterN) {
493
+ return trimmed;
494
+ }
495
+ if (lastGoodBreak === 0) {
496
+ return suffix;
497
+ }
498
+ const result = trimmed.substring(0, lastGoodBreak).trimEnd();
499
+ if (result.length < lastGoodBreak / 2) {
500
+ return trimmed;
501
+ }
502
+ return result + suffix;
503
+ }
480
504
  const CSI_SEQUENCE = /(?:\x1b\[|\x9b)[=?>!]?[\d;:]*["$#'* ]?[a-zA-Z@^`{}|~]/;
481
505
  const OSC_SEQUENCE = /(?:\x1b\]|\x9d).*?(?:\x1b\\|\x07|\x9c)/;
482
506
  const ESC_SEQUENCE = /\x1b(?:[ #%\(\)\*\+\-\.\/]?[a-zA-Z0-9\|}~@])/;
483
- const CONTROL_SEQUENCES = ( new RegExp('(?:' + [
484
- CSI_SEQUENCE.source,
485
- OSC_SEQUENCE.source,
486
- ESC_SEQUENCE.source,
487
- ].join('|') + ')', 'g'));
507
+ const CONTROL_SEQUENCES = ( new RegExp(
508
+ "(?:" + [CSI_SEQUENCE.source, OSC_SEQUENCE.source, ESC_SEQUENCE.source].join("|") + ")",
509
+ "g"
510
+ ));
488
511
  function* forAnsiStringParts(str) {
489
512
  let last = 0;
490
513
  for (const match of str.matchAll(CONTROL_SEQUENCES)) {
491
514
  if (last !== match.index) {
492
- yield { isCode: false, str: str.substring(last, match.index) };
493
- }
494
- yield { isCode: true, str: match[0] };
515
+ yield {
516
+ isCode: false,
517
+ str: str.substring(last, match.index)
518
+ };
519
+ }
520
+ yield {
521
+ isCode: true,
522
+ str: match[0]
523
+ };
495
524
  last = match.index + match[0].length;
496
525
  }
497
526
  if (last !== str.length) {
498
- yield { isCode: false, str: str.substring(last) };
527
+ yield {
528
+ isCode: false,
529
+ str: str.substring(last)
530
+ };
499
531
  }
500
532
  }
501
533
  function removeAnsiEscapeCodes(str) {
502
534
  if (str) {
503
- str = str.replace(CONTROL_SEQUENCES, '');
535
+ str = str.replace(CONTROL_SEQUENCES, "");
504
536
  }
505
537
  return str;
506
538
  }
507
539
  const PROMPT_NON_PRINTABLE = /\\\[.*?\\\]/g;
508
540
  function removeAnsiEscapeCodesFromPrompt(str) {
509
- return removeAnsiEscapeCodes(str).replace(PROMPT_NON_PRINTABLE, '');
541
+ return removeAnsiEscapeCodes(str).replace(PROMPT_NON_PRINTABLE, "");
510
542
  }
511
543
  const UTF8_BOM_CHARACTER = String.fromCharCode(CharCode.UTF8_BOM);
512
544
  function startsWithUTF8BOM(str) {
@@ -538,7 +570,7 @@ function containsUppercaseCharacter(target, ignoreEscapedChars = false) {
538
570
  return false;
539
571
  }
540
572
  if (ignoreEscapedChars) {
541
- target = target.replace(/\\./g, '');
573
+ target = target.replace(/\\./g, "");
542
574
  }
543
575
  return target.toLowerCase() !== target;
544
576
  }
@@ -547,17 +579,17 @@ function uppercaseFirstLetter(str) {
547
579
  }
548
580
  function getNLines(str, n = 1) {
549
581
  if (n === 0) {
550
- return '';
582
+ return "";
551
583
  }
552
584
  let idx = -1;
553
585
  do {
554
- idx = str.indexOf('\n', idx + 1);
586
+ idx = str.indexOf("\n", idx + 1);
555
587
  n--;
556
588
  } while (n > 0 && idx >= 0);
557
589
  if (idx === -1) {
558
590
  return str;
559
591
  }
560
- if (str[idx - 1] === '\r') {
592
+ if (str[idx - 1] === "\r") {
561
593
  idx--;
562
594
  }
563
595
  return str.substr(0, idx);
@@ -618,7 +650,7 @@ function breakBetweenGraphemeBreakType(breakTypeA, breakTypeB) {
618
650
  return true;
619
651
  }
620
652
  var GraphemeBreakType;
621
- (function (GraphemeBreakType) {
653
+ (function(GraphemeBreakType) {
622
654
  GraphemeBreakType[GraphemeBreakType["Other"] = 0] = "Other";
623
655
  GraphemeBreakType[GraphemeBreakType["Prepend"] = 1] = "Prepend";
624
656
  GraphemeBreakType[GraphemeBreakType["CR"] = 2] = "CR";
@@ -636,7 +668,9 @@ var GraphemeBreakType;
636
668
  GraphemeBreakType[GraphemeBreakType["Extended_Pictographic"] = 14] = "Extended_Pictographic";
637
669
  })(GraphemeBreakType || (GraphemeBreakType = {}));
638
670
  class GraphemeBreakTree {
639
- static { this._INSTANCE = null; }
671
+ static {
672
+ this._INSTANCE = null;
673
+ }
640
674
  static getInstance() {
641
675
  if (!GraphemeBreakTree._INSTANCE) {
642
676
  GraphemeBreakTree._INSTANCE = ( new GraphemeBreakTree());
@@ -665,11 +699,9 @@ class GraphemeBreakTree {
665
699
  while (nodeIndex <= nodeCount) {
666
700
  if (codePoint < data[3 * nodeIndex]) {
667
701
  nodeIndex = 2 * nodeIndex;
668
- }
669
- else if (codePoint > data[3 * nodeIndex + 1]) {
702
+ } else if (codePoint > data[3 * nodeIndex + 1]) {
670
703
  nodeIndex = 2 * nodeIndex + 1;
671
- }
672
- else {
704
+ } else {
673
705
  return data[3 * nodeIndex + 2];
674
706
  }
675
707
  }
@@ -677,7 +709,9 @@ class GraphemeBreakTree {
677
709
  }
678
710
  }
679
711
  function getGraphemeBreakRawData() {
680
- return JSON.parse('[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]');
712
+ return JSON.parse(
713
+ "[0,0,0,51229,51255,12,44061,44087,12,127462,127487,6,7083,7085,5,47645,47671,12,54813,54839,12,128678,128678,14,3270,3270,5,9919,9923,14,45853,45879,12,49437,49463,12,53021,53047,12,71216,71218,7,128398,128399,14,129360,129374,14,2519,2519,5,4448,4519,9,9742,9742,14,12336,12336,14,44957,44983,12,46749,46775,12,48541,48567,12,50333,50359,12,52125,52151,12,53917,53943,12,69888,69890,5,73018,73018,5,127990,127990,14,128558,128559,14,128759,128760,14,129653,129655,14,2027,2035,5,2891,2892,7,3761,3761,5,6683,6683,5,8293,8293,4,9825,9826,14,9999,9999,14,43452,43453,5,44509,44535,12,45405,45431,12,46301,46327,12,47197,47223,12,48093,48119,12,48989,49015,12,49885,49911,12,50781,50807,12,51677,51703,12,52573,52599,12,53469,53495,12,54365,54391,12,65279,65279,4,70471,70472,7,72145,72147,7,119173,119179,5,127799,127818,14,128240,128244,14,128512,128512,14,128652,128652,14,128721,128722,14,129292,129292,14,129445,129450,14,129734,129743,14,1476,1477,5,2366,2368,7,2750,2752,7,3076,3076,5,3415,3415,5,4141,4144,5,6109,6109,5,6964,6964,5,7394,7400,5,9197,9198,14,9770,9770,14,9877,9877,14,9968,9969,14,10084,10084,14,43052,43052,5,43713,43713,5,44285,44311,12,44733,44759,12,45181,45207,12,45629,45655,12,46077,46103,12,46525,46551,12,46973,46999,12,47421,47447,12,47869,47895,12,48317,48343,12,48765,48791,12,49213,49239,12,49661,49687,12,50109,50135,12,50557,50583,12,51005,51031,12,51453,51479,12,51901,51927,12,52349,52375,12,52797,52823,12,53245,53271,12,53693,53719,12,54141,54167,12,54589,54615,12,55037,55063,12,69506,69509,5,70191,70193,5,70841,70841,7,71463,71467,5,72330,72342,5,94031,94031,5,123628,123631,5,127763,127765,14,127941,127941,14,128043,128062,14,128302,128317,14,128465,128467,14,128539,128539,14,128640,128640,14,128662,128662,14,128703,128703,14,128745,128745,14,129004,129007,14,129329,129330,14,129402,129402,14,129483,129483,14,129686,129704,14,130048,131069,14,173,173,4,1757,1757,1,2200,2207,5,2434,2435,7,2631,2632,5,2817,2817,5,3008,3008,5,3201,3201,5,3387,3388,5,3542,3542,5,3902,3903,7,4190,4192,5,6002,6003,5,6439,6440,5,6765,6770,7,7019,7027,5,7154,7155,7,8205,8205,13,8505,8505,14,9654,9654,14,9757,9757,14,9792,9792,14,9852,9853,14,9890,9894,14,9937,9937,14,9981,9981,14,10035,10036,14,11035,11036,14,42654,42655,5,43346,43347,7,43587,43587,5,44006,44007,7,44173,44199,12,44397,44423,12,44621,44647,12,44845,44871,12,45069,45095,12,45293,45319,12,45517,45543,12,45741,45767,12,45965,45991,12,46189,46215,12,46413,46439,12,46637,46663,12,46861,46887,12,47085,47111,12,47309,47335,12,47533,47559,12,47757,47783,12,47981,48007,12,48205,48231,12,48429,48455,12,48653,48679,12,48877,48903,12,49101,49127,12,49325,49351,12,49549,49575,12,49773,49799,12,49997,50023,12,50221,50247,12,50445,50471,12,50669,50695,12,50893,50919,12,51117,51143,12,51341,51367,12,51565,51591,12,51789,51815,12,52013,52039,12,52237,52263,12,52461,52487,12,52685,52711,12,52909,52935,12,53133,53159,12,53357,53383,12,53581,53607,12,53805,53831,12,54029,54055,12,54253,54279,12,54477,54503,12,54701,54727,12,54925,54951,12,55149,55175,12,68101,68102,5,69762,69762,7,70067,70069,7,70371,70378,5,70720,70721,7,71087,71087,5,71341,71341,5,71995,71996,5,72249,72249,7,72850,72871,5,73109,73109,5,118576,118598,5,121505,121519,5,127245,127247,14,127568,127569,14,127777,127777,14,127872,127891,14,127956,127967,14,128015,128016,14,128110,128172,14,128259,128259,14,128367,128368,14,128424,128424,14,128488,128488,14,128530,128532,14,128550,128551,14,128566,128566,14,128647,128647,14,128656,128656,14,128667,128673,14,128691,128693,14,128715,128715,14,128728,128732,14,128752,128752,14,128765,128767,14,129096,129103,14,129311,129311,14,129344,129349,14,129394,129394,14,129413,129425,14,129466,129471,14,129511,129535,14,129664,129666,14,129719,129722,14,129760,129767,14,917536,917631,5,13,13,2,1160,1161,5,1564,1564,4,1807,1807,1,2085,2087,5,2307,2307,7,2382,2383,7,2497,2500,5,2563,2563,7,2677,2677,5,2763,2764,7,2879,2879,5,2914,2915,5,3021,3021,5,3142,3144,5,3263,3263,5,3285,3286,5,3398,3400,7,3530,3530,5,3633,3633,5,3864,3865,5,3974,3975,5,4155,4156,7,4229,4230,5,5909,5909,7,6078,6085,7,6277,6278,5,6451,6456,7,6744,6750,5,6846,6846,5,6972,6972,5,7074,7077,5,7146,7148,7,7222,7223,5,7416,7417,5,8234,8238,4,8417,8417,5,9000,9000,14,9203,9203,14,9730,9731,14,9748,9749,14,9762,9763,14,9776,9783,14,9800,9811,14,9831,9831,14,9872,9873,14,9882,9882,14,9900,9903,14,9929,9933,14,9941,9960,14,9974,9974,14,9989,9989,14,10006,10006,14,10062,10062,14,10160,10160,14,11647,11647,5,12953,12953,14,43019,43019,5,43232,43249,5,43443,43443,5,43567,43568,7,43696,43696,5,43765,43765,7,44013,44013,5,44117,44143,12,44229,44255,12,44341,44367,12,44453,44479,12,44565,44591,12,44677,44703,12,44789,44815,12,44901,44927,12,45013,45039,12,45125,45151,12,45237,45263,12,45349,45375,12,45461,45487,12,45573,45599,12,45685,45711,12,45797,45823,12,45909,45935,12,46021,46047,12,46133,46159,12,46245,46271,12,46357,46383,12,46469,46495,12,46581,46607,12,46693,46719,12,46805,46831,12,46917,46943,12,47029,47055,12,47141,47167,12,47253,47279,12,47365,47391,12,47477,47503,12,47589,47615,12,47701,47727,12,47813,47839,12,47925,47951,12,48037,48063,12,48149,48175,12,48261,48287,12,48373,48399,12,48485,48511,12,48597,48623,12,48709,48735,12,48821,48847,12,48933,48959,12,49045,49071,12,49157,49183,12,49269,49295,12,49381,49407,12,49493,49519,12,49605,49631,12,49717,49743,12,49829,49855,12,49941,49967,12,50053,50079,12,50165,50191,12,50277,50303,12,50389,50415,12,50501,50527,12,50613,50639,12,50725,50751,12,50837,50863,12,50949,50975,12,51061,51087,12,51173,51199,12,51285,51311,12,51397,51423,12,51509,51535,12,51621,51647,12,51733,51759,12,51845,51871,12,51957,51983,12,52069,52095,12,52181,52207,12,52293,52319,12,52405,52431,12,52517,52543,12,52629,52655,12,52741,52767,12,52853,52879,12,52965,52991,12,53077,53103,12,53189,53215,12,53301,53327,12,53413,53439,12,53525,53551,12,53637,53663,12,53749,53775,12,53861,53887,12,53973,53999,12,54085,54111,12,54197,54223,12,54309,54335,12,54421,54447,12,54533,54559,12,54645,54671,12,54757,54783,12,54869,54895,12,54981,55007,12,55093,55119,12,55243,55291,10,66045,66045,5,68325,68326,5,69688,69702,5,69817,69818,5,69957,69958,7,70089,70092,5,70198,70199,5,70462,70462,5,70502,70508,5,70750,70750,5,70846,70846,7,71100,71101,5,71230,71230,7,71351,71351,5,71737,71738,5,72000,72000,7,72160,72160,5,72273,72278,5,72752,72758,5,72882,72883,5,73031,73031,5,73461,73462,7,94192,94193,7,119149,119149,7,121403,121452,5,122915,122916,5,126980,126980,14,127358,127359,14,127535,127535,14,127759,127759,14,127771,127771,14,127792,127793,14,127825,127867,14,127897,127899,14,127945,127945,14,127985,127986,14,128000,128007,14,128021,128021,14,128066,128100,14,128184,128235,14,128249,128252,14,128266,128276,14,128335,128335,14,128379,128390,14,128407,128419,14,128444,128444,14,128481,128481,14,128499,128499,14,128526,128526,14,128536,128536,14,128543,128543,14,128556,128556,14,128564,128564,14,128577,128580,14,128643,128645,14,128649,128649,14,128654,128654,14,128660,128660,14,128664,128664,14,128675,128675,14,128686,128689,14,128695,128696,14,128705,128709,14,128717,128719,14,128725,128725,14,128736,128741,14,128747,128748,14,128755,128755,14,128762,128762,14,128981,128991,14,129009,129023,14,129160,129167,14,129296,129304,14,129320,129327,14,129340,129342,14,129356,129356,14,129388,129392,14,129399,129400,14,129404,129407,14,129432,129442,14,129454,129455,14,129473,129474,14,129485,129487,14,129648,129651,14,129659,129660,14,129671,129679,14,129709,129711,14,129728,129730,14,129751,129753,14,129776,129782,14,917505,917505,4,917760,917999,5,10,10,3,127,159,4,768,879,5,1471,1471,5,1536,1541,1,1648,1648,5,1767,1768,5,1840,1866,5,2070,2073,5,2137,2139,5,2274,2274,1,2363,2363,7,2377,2380,7,2402,2403,5,2494,2494,5,2507,2508,7,2558,2558,5,2622,2624,7,2641,2641,5,2691,2691,7,2759,2760,5,2786,2787,5,2876,2876,5,2881,2884,5,2901,2902,5,3006,3006,5,3014,3016,7,3072,3072,5,3134,3136,5,3157,3158,5,3260,3260,5,3266,3266,5,3274,3275,7,3328,3329,5,3391,3392,7,3405,3405,5,3457,3457,5,3536,3537,7,3551,3551,5,3636,3642,5,3764,3772,5,3895,3895,5,3967,3967,7,3993,4028,5,4146,4151,5,4182,4183,7,4226,4226,5,4253,4253,5,4957,4959,5,5940,5940,7,6070,6070,7,6087,6088,7,6158,6158,4,6432,6434,5,6448,6449,7,6679,6680,5,6742,6742,5,6754,6754,5,6783,6783,5,6912,6915,5,6966,6970,5,6978,6978,5,7042,7042,7,7080,7081,5,7143,7143,7,7150,7150,7,7212,7219,5,7380,7392,5,7412,7412,5,8203,8203,4,8232,8232,4,8265,8265,14,8400,8412,5,8421,8432,5,8617,8618,14,9167,9167,14,9200,9200,14,9410,9410,14,9723,9726,14,9733,9733,14,9745,9745,14,9752,9752,14,9760,9760,14,9766,9766,14,9774,9774,14,9786,9786,14,9794,9794,14,9823,9823,14,9828,9828,14,9833,9850,14,9855,9855,14,9875,9875,14,9880,9880,14,9885,9887,14,9896,9897,14,9906,9916,14,9926,9927,14,9935,9935,14,9939,9939,14,9962,9962,14,9972,9972,14,9978,9978,14,9986,9986,14,9997,9997,14,10002,10002,14,10017,10017,14,10055,10055,14,10071,10071,14,10133,10135,14,10548,10549,14,11093,11093,14,12330,12333,5,12441,12442,5,42608,42610,5,43010,43010,5,43045,43046,5,43188,43203,7,43302,43309,5,43392,43394,5,43446,43449,5,43493,43493,5,43571,43572,7,43597,43597,7,43703,43704,5,43756,43757,5,44003,44004,7,44009,44010,7,44033,44059,12,44089,44115,12,44145,44171,12,44201,44227,12,44257,44283,12,44313,44339,12,44369,44395,12,44425,44451,12,44481,44507,12,44537,44563,12,44593,44619,12,44649,44675,12,44705,44731,12,44761,44787,12,44817,44843,12,44873,44899,12,44929,44955,12,44985,45011,12,45041,45067,12,45097,45123,12,45153,45179,12,45209,45235,12,45265,45291,12,45321,45347,12,45377,45403,12,45433,45459,12,45489,45515,12,45545,45571,12,45601,45627,12,45657,45683,12,45713,45739,12,45769,45795,12,45825,45851,12,45881,45907,12,45937,45963,12,45993,46019,12,46049,46075,12,46105,46131,12,46161,46187,12,46217,46243,12,46273,46299,12,46329,46355,12,46385,46411,12,46441,46467,12,46497,46523,12,46553,46579,12,46609,46635,12,46665,46691,12,46721,46747,12,46777,46803,12,46833,46859,12,46889,46915,12,46945,46971,12,47001,47027,12,47057,47083,12,47113,47139,12,47169,47195,12,47225,47251,12,47281,47307,12,47337,47363,12,47393,47419,12,47449,47475,12,47505,47531,12,47561,47587,12,47617,47643,12,47673,47699,12,47729,47755,12,47785,47811,12,47841,47867,12,47897,47923,12,47953,47979,12,48009,48035,12,48065,48091,12,48121,48147,12,48177,48203,12,48233,48259,12,48289,48315,12,48345,48371,12,48401,48427,12,48457,48483,12,48513,48539,12,48569,48595,12,48625,48651,12,48681,48707,12,48737,48763,12,48793,48819,12,48849,48875,12,48905,48931,12,48961,48987,12,49017,49043,12,49073,49099,12,49129,49155,12,49185,49211,12,49241,49267,12,49297,49323,12,49353,49379,12,49409,49435,12,49465,49491,12,49521,49547,12,49577,49603,12,49633,49659,12,49689,49715,12,49745,49771,12,49801,49827,12,49857,49883,12,49913,49939,12,49969,49995,12,50025,50051,12,50081,50107,12,50137,50163,12,50193,50219,12,50249,50275,12,50305,50331,12,50361,50387,12,50417,50443,12,50473,50499,12,50529,50555,12,50585,50611,12,50641,50667,12,50697,50723,12,50753,50779,12,50809,50835,12,50865,50891,12,50921,50947,12,50977,51003,12,51033,51059,12,51089,51115,12,51145,51171,12,51201,51227,12,51257,51283,12,51313,51339,12,51369,51395,12,51425,51451,12,51481,51507,12,51537,51563,12,51593,51619,12,51649,51675,12,51705,51731,12,51761,51787,12,51817,51843,12,51873,51899,12,51929,51955,12,51985,52011,12,52041,52067,12,52097,52123,12,52153,52179,12,52209,52235,12,52265,52291,12,52321,52347,12,52377,52403,12,52433,52459,12,52489,52515,12,52545,52571,12,52601,52627,12,52657,52683,12,52713,52739,12,52769,52795,12,52825,52851,12,52881,52907,12,52937,52963,12,52993,53019,12,53049,53075,12,53105,53131,12,53161,53187,12,53217,53243,12,53273,53299,12,53329,53355,12,53385,53411,12,53441,53467,12,53497,53523,12,53553,53579,12,53609,53635,12,53665,53691,12,53721,53747,12,53777,53803,12,53833,53859,12,53889,53915,12,53945,53971,12,54001,54027,12,54057,54083,12,54113,54139,12,54169,54195,12,54225,54251,12,54281,54307,12,54337,54363,12,54393,54419,12,54449,54475,12,54505,54531,12,54561,54587,12,54617,54643,12,54673,54699,12,54729,54755,12,54785,54811,12,54841,54867,12,54897,54923,12,54953,54979,12,55009,55035,12,55065,55091,12,55121,55147,12,55177,55203,12,65024,65039,5,65520,65528,4,66422,66426,5,68152,68154,5,69291,69292,5,69633,69633,5,69747,69748,5,69811,69814,5,69826,69826,5,69932,69932,7,70016,70017,5,70079,70080,7,70095,70095,5,70196,70196,5,70367,70367,5,70402,70403,7,70464,70464,5,70487,70487,5,70709,70711,7,70725,70725,7,70833,70834,7,70843,70844,7,70849,70849,7,71090,71093,5,71103,71104,5,71227,71228,7,71339,71339,5,71344,71349,5,71458,71461,5,71727,71735,5,71985,71989,7,71998,71998,5,72002,72002,7,72154,72155,5,72193,72202,5,72251,72254,5,72281,72283,5,72344,72345,5,72766,72766,7,72874,72880,5,72885,72886,5,73023,73029,5,73104,73105,5,73111,73111,5,92912,92916,5,94095,94098,5,113824,113827,4,119142,119142,7,119155,119162,4,119362,119364,5,121476,121476,5,122888,122904,5,123184,123190,5,125252,125258,5,127183,127183,14,127340,127343,14,127377,127386,14,127491,127503,14,127548,127551,14,127744,127756,14,127761,127761,14,127769,127769,14,127773,127774,14,127780,127788,14,127796,127797,14,127820,127823,14,127869,127869,14,127894,127895,14,127902,127903,14,127943,127943,14,127947,127950,14,127972,127972,14,127988,127988,14,127992,127994,14,128009,128011,14,128019,128019,14,128023,128041,14,128064,128064,14,128102,128107,14,128174,128181,14,128238,128238,14,128246,128247,14,128254,128254,14,128264,128264,14,128278,128299,14,128329,128330,14,128348,128359,14,128371,128377,14,128392,128393,14,128401,128404,14,128421,128421,14,128433,128434,14,128450,128452,14,128476,128478,14,128483,128483,14,128495,128495,14,128506,128506,14,128519,128520,14,128528,128528,14,128534,128534,14,128538,128538,14,128540,128542,14,128544,128549,14,128552,128555,14,128557,128557,14,128560,128563,14,128565,128565,14,128567,128576,14,128581,128591,14,128641,128642,14,128646,128646,14,128648,128648,14,128650,128651,14,128653,128653,14,128655,128655,14,128657,128659,14,128661,128661,14,128663,128663,14,128665,128666,14,128674,128674,14,128676,128677,14,128679,128685,14,128690,128690,14,128694,128694,14,128697,128702,14,128704,128704,14,128710,128714,14,128716,128716,14,128720,128720,14,128723,128724,14,128726,128727,14,128733,128735,14,128742,128744,14,128746,128746,14,128749,128751,14,128753,128754,14,128756,128758,14,128761,128761,14,128763,128764,14,128884,128895,14,128992,129003,14,129008,129008,14,129036,129039,14,129114,129119,14,129198,129279,14,129293,129295,14,129305,129310,14,129312,129319,14,129328,129328,14,129331,129338,14,129343,129343,14,129351,129355,14,129357,129359,14,129375,129387,14,129393,129393,14,129395,129398,14,129401,129401,14,129403,129403,14,129408,129412,14,129426,129431,14,129443,129444,14,129451,129453,14,129456,129465,14,129472,129472,14,129475,129482,14,129484,129484,14,129488,129510,14,129536,129647,14,129652,129652,14,129656,129658,14,129661,129663,14,129667,129670,14,129680,129685,14,129705,129708,14,129712,129718,14,129723,129727,14,129731,129733,14,129744,129750,14,129754,129759,14,129768,129775,14,129783,129791,14,917504,917504,4,917506,917535,4,917632,917759,4,918000,921599,4,0,9,4,11,12,4,14,31,4,169,169,14,174,174,14,1155,1159,5,1425,1469,5,1473,1474,5,1479,1479,5,1552,1562,5,1611,1631,5,1750,1756,5,1759,1764,5,1770,1773,5,1809,1809,5,1958,1968,5,2045,2045,5,2075,2083,5,2089,2093,5,2192,2193,1,2250,2273,5,2275,2306,5,2362,2362,5,2364,2364,5,2369,2376,5,2381,2381,5,2385,2391,5,2433,2433,5,2492,2492,5,2495,2496,7,2503,2504,7,2509,2509,5,2530,2531,5,2561,2562,5,2620,2620,5,2625,2626,5,2635,2637,5,2672,2673,5,2689,2690,5,2748,2748,5,2753,2757,5,2761,2761,7,2765,2765,5,2810,2815,5,2818,2819,7,2878,2878,5,2880,2880,7,2887,2888,7,2893,2893,5,2903,2903,5,2946,2946,5,3007,3007,7,3009,3010,7,3018,3020,7,3031,3031,5,3073,3075,7,3132,3132,5,3137,3140,7,3146,3149,5,3170,3171,5,3202,3203,7,3262,3262,7,3264,3265,7,3267,3268,7,3271,3272,7,3276,3277,5,3298,3299,5,3330,3331,7,3390,3390,5,3393,3396,5,3402,3404,7,3406,3406,1,3426,3427,5,3458,3459,7,3535,3535,5,3538,3540,5,3544,3550,7,3570,3571,7,3635,3635,7,3655,3662,5,3763,3763,7,3784,3789,5,3893,3893,5,3897,3897,5,3953,3966,5,3968,3972,5,3981,3991,5,4038,4038,5,4145,4145,7,4153,4154,5,4157,4158,5,4184,4185,5,4209,4212,5,4228,4228,7,4237,4237,5,4352,4447,8,4520,4607,10,5906,5908,5,5938,5939,5,5970,5971,5,6068,6069,5,6071,6077,5,6086,6086,5,6089,6099,5,6155,6157,5,6159,6159,5,6313,6313,5,6435,6438,7,6441,6443,7,6450,6450,5,6457,6459,5,6681,6682,7,6741,6741,7,6743,6743,7,6752,6752,5,6757,6764,5,6771,6780,5,6832,6845,5,6847,6862,5,6916,6916,7,6965,6965,5,6971,6971,7,6973,6977,7,6979,6980,7,7040,7041,5,7073,7073,7,7078,7079,7,7082,7082,7,7142,7142,5,7144,7145,5,7149,7149,5,7151,7153,5,7204,7211,7,7220,7221,7,7376,7378,5,7393,7393,7,7405,7405,5,7415,7415,7,7616,7679,5,8204,8204,5,8206,8207,4,8233,8233,4,8252,8252,14,8288,8292,4,8294,8303,4,8413,8416,5,8418,8420,5,8482,8482,14,8596,8601,14,8986,8987,14,9096,9096,14,9193,9196,14,9199,9199,14,9201,9202,14,9208,9210,14,9642,9643,14,9664,9664,14,9728,9729,14,9732,9732,14,9735,9741,14,9743,9744,14,9746,9746,14,9750,9751,14,9753,9756,14,9758,9759,14,9761,9761,14,9764,9765,14,9767,9769,14,9771,9773,14,9775,9775,14,9784,9785,14,9787,9791,14,9793,9793,14,9795,9799,14,9812,9822,14,9824,9824,14,9827,9827,14,9829,9830,14,9832,9832,14,9851,9851,14,9854,9854,14,9856,9861,14,9874,9874,14,9876,9876,14,9878,9879,14,9881,9881,14,9883,9884,14,9888,9889,14,9895,9895,14,9898,9899,14,9904,9905,14,9917,9918,14,9924,9925,14,9928,9928,14,9934,9934,14,9936,9936,14,9938,9938,14,9940,9940,14,9961,9961,14,9963,9967,14,9970,9971,14,9973,9973,14,9975,9977,14,9979,9980,14,9982,9985,14,9987,9988,14,9992,9996,14,9998,9998,14,10000,10001,14,10004,10004,14,10013,10013,14,10024,10024,14,10052,10052,14,10060,10060,14,10067,10069,14,10083,10083,14,10085,10087,14,10145,10145,14,10175,10175,14,11013,11015,14,11088,11088,14,11503,11505,5,11744,11775,5,12334,12335,5,12349,12349,14,12951,12951,14,42607,42607,5,42612,42621,5,42736,42737,5,43014,43014,5,43043,43044,7,43047,43047,7,43136,43137,7,43204,43205,5,43263,43263,5,43335,43345,5,43360,43388,8,43395,43395,7,43444,43445,7,43450,43451,7,43454,43456,7,43561,43566,5,43569,43570,5,43573,43574,5,43596,43596,5,43644,43644,5,43698,43700,5,43710,43711,5,43755,43755,7,43758,43759,7,43766,43766,5,44005,44005,5,44008,44008,5,44012,44012,7,44032,44032,11,44060,44060,11,44088,44088,11,44116,44116,11,44144,44144,11,44172,44172,11,44200,44200,11,44228,44228,11,44256,44256,11,44284,44284,11,44312,44312,11,44340,44340,11,44368,44368,11,44396,44396,11,44424,44424,11,44452,44452,11,44480,44480,11,44508,44508,11,44536,44536,11,44564,44564,11,44592,44592,11,44620,44620,11,44648,44648,11,44676,44676,11,44704,44704,11,44732,44732,11,44760,44760,11,44788,44788,11,44816,44816,11,44844,44844,11,44872,44872,11,44900,44900,11,44928,44928,11,44956,44956,11,44984,44984,11,45012,45012,11,45040,45040,11,45068,45068,11,45096,45096,11,45124,45124,11,45152,45152,11,45180,45180,11,45208,45208,11,45236,45236,11,45264,45264,11,45292,45292,11,45320,45320,11,45348,45348,11,45376,45376,11,45404,45404,11,45432,45432,11,45460,45460,11,45488,45488,11,45516,45516,11,45544,45544,11,45572,45572,11,45600,45600,11,45628,45628,11,45656,45656,11,45684,45684,11,45712,45712,11,45740,45740,11,45768,45768,11,45796,45796,11,45824,45824,11,45852,45852,11,45880,45880,11,45908,45908,11,45936,45936,11,45964,45964,11,45992,45992,11,46020,46020,11,46048,46048,11,46076,46076,11,46104,46104,11,46132,46132,11,46160,46160,11,46188,46188,11,46216,46216,11,46244,46244,11,46272,46272,11,46300,46300,11,46328,46328,11,46356,46356,11,46384,46384,11,46412,46412,11,46440,46440,11,46468,46468,11,46496,46496,11,46524,46524,11,46552,46552,11,46580,46580,11,46608,46608,11,46636,46636,11,46664,46664,11,46692,46692,11,46720,46720,11,46748,46748,11,46776,46776,11,46804,46804,11,46832,46832,11,46860,46860,11,46888,46888,11,46916,46916,11,46944,46944,11,46972,46972,11,47000,47000,11,47028,47028,11,47056,47056,11,47084,47084,11,47112,47112,11,47140,47140,11,47168,47168,11,47196,47196,11,47224,47224,11,47252,47252,11,47280,47280,11,47308,47308,11,47336,47336,11,47364,47364,11,47392,47392,11,47420,47420,11,47448,47448,11,47476,47476,11,47504,47504,11,47532,47532,11,47560,47560,11,47588,47588,11,47616,47616,11,47644,47644,11,47672,47672,11,47700,47700,11,47728,47728,11,47756,47756,11,47784,47784,11,47812,47812,11,47840,47840,11,47868,47868,11,47896,47896,11,47924,47924,11,47952,47952,11,47980,47980,11,48008,48008,11,48036,48036,11,48064,48064,11,48092,48092,11,48120,48120,11,48148,48148,11,48176,48176,11,48204,48204,11,48232,48232,11,48260,48260,11,48288,48288,11,48316,48316,11,48344,48344,11,48372,48372,11,48400,48400,11,48428,48428,11,48456,48456,11,48484,48484,11,48512,48512,11,48540,48540,11,48568,48568,11,48596,48596,11,48624,48624,11,48652,48652,11,48680,48680,11,48708,48708,11,48736,48736,11,48764,48764,11,48792,48792,11,48820,48820,11,48848,48848,11,48876,48876,11,48904,48904,11,48932,48932,11,48960,48960,11,48988,48988,11,49016,49016,11,49044,49044,11,49072,49072,11,49100,49100,11,49128,49128,11,49156,49156,11,49184,49184,11,49212,49212,11,49240,49240,11,49268,49268,11,49296,49296,11,49324,49324,11,49352,49352,11,49380,49380,11,49408,49408,11,49436,49436,11,49464,49464,11,49492,49492,11,49520,49520,11,49548,49548,11,49576,49576,11,49604,49604,11,49632,49632,11,49660,49660,11,49688,49688,11,49716,49716,11,49744,49744,11,49772,49772,11,49800,49800,11,49828,49828,11,49856,49856,11,49884,49884,11,49912,49912,11,49940,49940,11,49968,49968,11,49996,49996,11,50024,50024,11,50052,50052,11,50080,50080,11,50108,50108,11,50136,50136,11,50164,50164,11,50192,50192,11,50220,50220,11,50248,50248,11,50276,50276,11,50304,50304,11,50332,50332,11,50360,50360,11,50388,50388,11,50416,50416,11,50444,50444,11,50472,50472,11,50500,50500,11,50528,50528,11,50556,50556,11,50584,50584,11,50612,50612,11,50640,50640,11,50668,50668,11,50696,50696,11,50724,50724,11,50752,50752,11,50780,50780,11,50808,50808,11,50836,50836,11,50864,50864,11,50892,50892,11,50920,50920,11,50948,50948,11,50976,50976,11,51004,51004,11,51032,51032,11,51060,51060,11,51088,51088,11,51116,51116,11,51144,51144,11,51172,51172,11,51200,51200,11,51228,51228,11,51256,51256,11,51284,51284,11,51312,51312,11,51340,51340,11,51368,51368,11,51396,51396,11,51424,51424,11,51452,51452,11,51480,51480,11,51508,51508,11,51536,51536,11,51564,51564,11,51592,51592,11,51620,51620,11,51648,51648,11,51676,51676,11,51704,51704,11,51732,51732,11,51760,51760,11,51788,51788,11,51816,51816,11,51844,51844,11,51872,51872,11,51900,51900,11,51928,51928,11,51956,51956,11,51984,51984,11,52012,52012,11,52040,52040,11,52068,52068,11,52096,52096,11,52124,52124,11,52152,52152,11,52180,52180,11,52208,52208,11,52236,52236,11,52264,52264,11,52292,52292,11,52320,52320,11,52348,52348,11,52376,52376,11,52404,52404,11,52432,52432,11,52460,52460,11,52488,52488,11,52516,52516,11,52544,52544,11,52572,52572,11,52600,52600,11,52628,52628,11,52656,52656,11,52684,52684,11,52712,52712,11,52740,52740,11,52768,52768,11,52796,52796,11,52824,52824,11,52852,52852,11,52880,52880,11,52908,52908,11,52936,52936,11,52964,52964,11,52992,52992,11,53020,53020,11,53048,53048,11,53076,53076,11,53104,53104,11,53132,53132,11,53160,53160,11,53188,53188,11,53216,53216,11,53244,53244,11,53272,53272,11,53300,53300,11,53328,53328,11,53356,53356,11,53384,53384,11,53412,53412,11,53440,53440,11,53468,53468,11,53496,53496,11,53524,53524,11,53552,53552,11,53580,53580,11,53608,53608,11,53636,53636,11,53664,53664,11,53692,53692,11,53720,53720,11,53748,53748,11,53776,53776,11,53804,53804,11,53832,53832,11,53860,53860,11,53888,53888,11,53916,53916,11,53944,53944,11,53972,53972,11,54000,54000,11,54028,54028,11,54056,54056,11,54084,54084,11,54112,54112,11,54140,54140,11,54168,54168,11,54196,54196,11,54224,54224,11,54252,54252,11,54280,54280,11,54308,54308,11,54336,54336,11,54364,54364,11,54392,54392,11,54420,54420,11,54448,54448,11,54476,54476,11,54504,54504,11,54532,54532,11,54560,54560,11,54588,54588,11,54616,54616,11,54644,54644,11,54672,54672,11,54700,54700,11,54728,54728,11,54756,54756,11,54784,54784,11,54812,54812,11,54840,54840,11,54868,54868,11,54896,54896,11,54924,54924,11,54952,54952,11,54980,54980,11,55008,55008,11,55036,55036,11,55064,55064,11,55092,55092,11,55120,55120,11,55148,55148,11,55176,55176,11,55216,55238,9,64286,64286,5,65056,65071,5,65438,65439,5,65529,65531,4,66272,66272,5,68097,68099,5,68108,68111,5,68159,68159,5,68900,68903,5,69446,69456,5,69632,69632,7,69634,69634,7,69744,69744,5,69759,69761,5,69808,69810,7,69815,69816,7,69821,69821,1,69837,69837,1,69927,69931,5,69933,69940,5,70003,70003,5,70018,70018,7,70070,70078,5,70082,70083,1,70094,70094,7,70188,70190,7,70194,70195,7,70197,70197,7,70206,70206,5,70368,70370,7,70400,70401,5,70459,70460,5,70463,70463,7,70465,70468,7,70475,70477,7,70498,70499,7,70512,70516,5,70712,70719,5,70722,70724,5,70726,70726,5,70832,70832,5,70835,70840,5,70842,70842,5,70845,70845,5,70847,70848,5,70850,70851,5,71088,71089,7,71096,71099,7,71102,71102,7,71132,71133,5,71219,71226,5,71229,71229,5,71231,71232,5,71340,71340,7,71342,71343,7,71350,71350,7,71453,71455,5,71462,71462,7,71724,71726,7,71736,71736,7,71984,71984,5,71991,71992,7,71997,71997,7,71999,71999,1,72001,72001,1,72003,72003,5,72148,72151,5,72156,72159,7,72164,72164,7,72243,72248,5,72250,72250,1,72263,72263,5,72279,72280,7,72324,72329,1,72343,72343,7,72751,72751,7,72760,72765,5,72767,72767,5,72873,72873,7,72881,72881,7,72884,72884,7,73009,73014,5,73020,73021,5,73030,73030,1,73098,73102,7,73107,73108,7,73110,73110,7,73459,73460,5,78896,78904,4,92976,92982,5,94033,94087,7,94180,94180,5,113821,113822,5,118528,118573,5,119141,119141,5,119143,119145,5,119150,119154,5,119163,119170,5,119210,119213,5,121344,121398,5,121461,121461,5,121499,121503,5,122880,122886,5,122907,122913,5,122918,122922,5,123566,123566,5,125136,125142,5,126976,126979,14,126981,127182,14,127184,127231,14,127279,127279,14,127344,127345,14,127374,127374,14,127405,127461,14,127489,127490,14,127514,127514,14,127538,127546,14,127561,127567,14,127570,127743,14,127757,127758,14,127760,127760,14,127762,127762,14,127766,127768,14,127770,127770,14,127772,127772,14,127775,127776,14,127778,127779,14,127789,127791,14,127794,127795,14,127798,127798,14,127819,127819,14,127824,127824,14,127868,127868,14,127870,127871,14,127892,127893,14,127896,127896,14,127900,127901,14,127904,127940,14,127942,127942,14,127944,127944,14,127946,127946,14,127951,127955,14,127968,127971,14,127973,127984,14,127987,127987,14,127989,127989,14,127991,127991,14,127995,127999,5,128008,128008,14,128012,128014,14,128017,128018,14,128020,128020,14,128022,128022,14,128042,128042,14,128063,128063,14,128065,128065,14,128101,128101,14,128108,128109,14,128173,128173,14,128182,128183,14,128236,128237,14,128239,128239,14,128245,128245,14,128248,128248,14,128253,128253,14,128255,128258,14,128260,128263,14,128265,128265,14,128277,128277,14,128300,128301,14,128326,128328,14,128331,128334,14,128336,128347,14,128360,128366,14,128369,128370,14,128378,128378,14,128391,128391,14,128394,128397,14,128400,128400,14,128405,128406,14,128420,128420,14,128422,128423,14,128425,128432,14,128435,128443,14,128445,128449,14,128453,128464,14,128468,128475,14,128479,128480,14,128482,128482,14,128484,128487,14,128489,128494,14,128496,128498,14,128500,128505,14,128507,128511,14,128513,128518,14,128521,128525,14,128527,128527,14,128529,128529,14,128533,128533,14,128535,128535,14,128537,128537,14]"
714
+ );
681
715
  }
682
716
  function getLeftDeleteOffset(offset, str) {
683
717
  if (offset === 0) {
@@ -716,63 +750,71 @@ function isEmojiModifier(codePoint) {
716
750
  return 0x1F3FB <= codePoint && codePoint <= 0x1F3FF;
717
751
  }
718
752
  var CodePoint;
719
- (function (CodePoint) {
753
+ (function(CodePoint) {
720
754
  CodePoint[CodePoint["zwj"] = 8205] = "zwj";
721
755
  CodePoint[CodePoint["emojiVariantSelector"] = 65039] = "emojiVariantSelector";
722
756
  CodePoint[CodePoint["enclosingKeyCap"] = 8419] = "enclosingKeyCap";
723
757
  CodePoint[CodePoint["space"] = 32] = "space";
724
758
  })(CodePoint || (CodePoint = {}));
725
- const noBreakWhitespace = '\xa0';
759
+ const noBreakWhitespace = " ";
726
760
  class AmbiguousCharacters {
727
- static { this.ambiguousCharacterData = ( new Lazy(() => {
728
- return JSON.parse('{\"_common\":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],\"_default\":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"cs\":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"de\":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"es\":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"fr\":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"it\":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"ja\":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],\"ko\":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"pl\":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"pt-BR\":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"qps-ploc\":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"ru\":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"tr\":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"zh-hans\":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],\"zh-hant\":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}');
729
- })); }
730
- static { this.cache = ( new LRUCachedFunction((localesStr) => {
731
- const locales = localesStr.split(',');
732
- function arrayToMap(arr) {
733
- const result = ( new Map());
734
- for (let i = 0; i < arr.length; i += 2) {
735
- result.set(arr[i], arr[i + 1]);
736
- }
737
- return result;
738
- }
739
- function mergeMaps(map1, map2) {
740
- const result = ( new Map(map1));
741
- for (const [key, value] of map2) {
742
- result.set(key, value);
743
- }
744
- return result;
745
- }
746
- function intersectMaps(map1, map2) {
747
- if (!map1) {
748
- return map2;
761
+ static {
762
+ this.ambiguousCharacterData = ( new Lazy(() => {
763
+ return JSON.parse(
764
+ "{\"_common\":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,1523,96,8242,96,1370,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,118002,50,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,118003,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,118004,52,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,118005,53,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,118006,54,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,118007,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,118008,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,118009,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,117974,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,117975,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71913,67,71922,67,65315,67,8557,67,8450,67,8493,67,117976,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,117977,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,117978,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,117979,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,117980,71,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,117981,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,117983,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,117984,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,118001,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,117982,108,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,117985,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,117986,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,117987,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,118000,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,117988,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,117989,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,117990,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,117991,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,117992,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,117993,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,117994,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,117995,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71910,87,71919,87,117996,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,117997,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,117998,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,71909,90,66293,90,65338,90,8484,90,8488,90,117999,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65283,35,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],\"_default\":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"cs\":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"de\":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"es\":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"fr\":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"it\":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"ja\":[8211,45,8218,44,65281,33,8216,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65292,44,65297,49,65307,59],\"ko\":[8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"pl\":[65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"pt-BR\":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"qps-ploc\":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"ru\":[65374,126,8218,44,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"tr\":[160,32,8211,45,65374,126,8218,44,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41,65292,44,65297,49,65307,59,65311,63],\"zh-hans\":[160,32,65374,126,8218,44,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65297,49],\"zh-hant\":[8211,45,65374,126,8218,44,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89]}"
765
+ );
766
+ }));
767
+ }
768
+ static {
769
+ this.cache = ( new LRUCachedFunction(localesStr => {
770
+ const locales = localesStr.split(",");
771
+ function arrayToMap(arr) {
772
+ const result = ( new Map());
773
+ for (let i = 0; i < arr.length; i += 2) {
774
+ result.set(arr[i], arr[i + 1]);
775
+ }
776
+ return result;
749
777
  }
750
- const result = ( new Map());
751
- for (const [key, value] of map1) {
752
- if (( map2.has(key))) {
778
+ function mergeMaps(map1, map2) {
779
+ const result = ( new Map(map1));
780
+ for (const [key, value] of map2) {
753
781
  result.set(key, value);
754
782
  }
783
+ return result;
784
+ }
785
+ function intersectMaps(map1, map2) {
786
+ if (!map1) {
787
+ return map2;
788
+ }
789
+ const result = ( new Map());
790
+ for (const [key, value] of map1) {
791
+ if (( map2.has(key))) {
792
+ result.set(key, value);
793
+ }
794
+ }
795
+ return result;
796
+ }
797
+ const data = this.ambiguousCharacterData.value;
798
+ let filteredLocales = locales.filter(l => !l.startsWith("_") && Object.hasOwn(data, l));
799
+ if (filteredLocales.length === 0) {
800
+ filteredLocales = ["_default"];
755
801
  }
756
- return result;
757
- }
758
- const data = this.ambiguousCharacterData.value;
759
- let filteredLocales = locales.filter((l) => !l.startsWith('_') && Object.hasOwn(data, l));
760
- if (filteredLocales.length === 0) {
761
- filteredLocales = ['_default'];
762
- }
763
- let languageSpecificMap = undefined;
764
- for (const locale of filteredLocales) {
765
- const map = arrayToMap(data[locale]);
766
- languageSpecificMap = intersectMaps(languageSpecificMap, map);
767
- }
768
- const commonMap = arrayToMap(data['_common']);
769
- const map = mergeMaps(commonMap, languageSpecificMap);
770
- return ( new AmbiguousCharacters(map));
771
- })); }
802
+ let languageSpecificMap = undefined;
803
+ for (const locale of filteredLocales) {
804
+ const map = arrayToMap(data[locale]);
805
+ languageSpecificMap = intersectMaps(languageSpecificMap, map);
806
+ }
807
+ const commonMap = arrayToMap(data["_common"]);
808
+ const map = mergeMaps(commonMap, languageSpecificMap);
809
+ return ( new AmbiguousCharacters(map));
810
+ }));
811
+ }
772
812
  static getInstance(locales) {
773
- return AmbiguousCharacters.cache.get(Array.from(locales).join(','));
813
+ return AmbiguousCharacters.cache.get(Array.from(locales).join(","));
814
+ }
815
+ static {
816
+ this._locales = ( new Lazy(() => ( Object.keys(AmbiguousCharacters.ambiguousCharacterData.value)).filter(k => !k.startsWith("_"))));
774
817
  }
775
- static { this._locales = ( new Lazy(() => ( Object.keys(AmbiguousCharacters.ambiguousCharacterData.value)).filter((k) => !k.startsWith('_')))); }
776
818
  static getLocales() {
777
819
  return AmbiguousCharacters._locales.value;
778
820
  }
@@ -785,7 +827,7 @@ class AmbiguousCharacters {
785
827
  containsAmbiguousCharacter(str) {
786
828
  for (let i = 0; i < str.length; i++) {
787
829
  const codePoint = str.codePointAt(i);
788
- if (typeof codePoint === 'number' && this.isAmbiguous(codePoint)) {
830
+ if (typeof codePoint === "number" && this.isAmbiguous(codePoint)) {
789
831
  return true;
790
832
  }
791
833
  }
@@ -800,9 +842,13 @@ class AmbiguousCharacters {
800
842
  }
801
843
  class InvisibleCharacters {
802
844
  static getRawData() {
803
- return JSON.parse('{\"_common\":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],\"cs\":[173,8203,12288],\"de\":[173,8203,12288],\"es\":[8203,12288],\"fr\":[173,8203,12288],\"it\":[160,173,12288],\"ja\":[173],\"ko\":[173,12288],\"pl\":[173,8203,12288],\"pt-BR\":[173,8203,12288],\"qps-ploc\":[160,173,8203,12288],\"ru\":[173,12288],\"tr\":[160,173,8203,12288],\"zh-hans\":[160,173,8203,12288],\"zh-hant\":[173,12288]}');
845
+ return JSON.parse(
846
+ "{\"_common\":[11,12,13,127,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999],\"cs\":[173,8203,12288],\"de\":[173,8203,12288],\"es\":[8203,12288],\"fr\":[173,8203,12288],\"it\":[160,173,12288],\"ja\":[173],\"ko\":[173,12288],\"pl\":[173,8203,12288],\"pt-BR\":[173,8203,12288],\"qps-ploc\":[160,173,8203,12288],\"ru\":[173,12288],\"tr\":[160,173,8203,12288],\"zh-hans\":[160,173,8203,12288],\"zh-hant\":[173,12288]}"
847
+ );
848
+ }
849
+ static {
850
+ this._data = undefined;
804
851
  }
805
- static { this._data = undefined; }
806
852
  static getData() {
807
853
  if (!this._data) {
808
854
  this._data = ( new Set([...( Object.values(InvisibleCharacters.getRawData()))].flat()));
@@ -815,7 +861,7 @@ class InvisibleCharacters {
815
861
  static containsInvisibleCharacter(str) {
816
862
  for (let i = 0; i < str.length; i++) {
817
863
  const codePoint = str.codePointAt(i);
818
- if (typeof codePoint === 'number' && (InvisibleCharacters.isInvisibleCharacter(codePoint) || codePoint === CodePoint.space)) {
864
+ if (typeof codePoint === "number" && (InvisibleCharacters.isInvisibleCharacter(codePoint) || codePoint === CodePoint.space)) {
819
865
  return true;
820
866
  }
821
867
  }
@@ -825,13 +871,13 @@ class InvisibleCharacters {
825
871
  return InvisibleCharacters.getData();
826
872
  }
827
873
  }
828
- const Ellipsis = '\u2026';
874
+ const Ellipsis = "…";
829
875
  function toBinary(str) {
830
876
  const codeUnits = ( new Uint16Array(str.length));
831
877
  for (let i = 0; i < codeUnits.length; i++) {
832
878
  codeUnits[i] = str.charCodeAt(i);
833
879
  }
834
- let binary = '';
880
+ let binary = "";
835
881
  const uint8array = ( new Uint8Array(codeUnits.buffer));
836
882
  for (let i = 0; i < uint8array.length; i++) {
837
883
  binary += String.fromCharCode(uint8array[i]);
@@ -842,4 +888,4 @@ function multibyteAwareBtoa(str) {
842
888
  return btoa(toBinary(str));
843
889
  }
844
890
 
845
- export { AmbiguousCharacters, CodePointIterator, Ellipsis, GraphemeBreakType, GraphemeIterator, InvisibleCharacters, UNUSUAL_LINE_TERMINATORS, UTF8_BOM_CHARACTER, commonPrefixLength, commonSuffixLength, compare, compareIgnoreCase, compareSubstring, compareSubstringIgnoreCase, computeCodePoint, containsRTL, containsUnusualLineTerminators, containsUppercaseCharacter, convertSimple2RegExpPattern, count, createRegExp, endsWithIgnoreCase, equals, equalsIgnoreCase, escape, escapeRegExpCharacters, firstNonWhitespaceIndex, forAnsiStringParts, format, format2, fuzzyContains, getCharContainingOffset, getLeadingWhitespace, getLeftDeleteOffset, getNLines, getNextCodePoint, htmlAttributeEncodeValue, isAsciiDigit, isBasicASCII, isEmojiImprecise, isFalsyOrWhitespace, isFullWidthCharacter, isHighSurrogate, isLowSurrogate, isLowerAsciiLetter, isUpperAsciiLetter, joinStrings, lastNonWhitespaceIndex, lcut, ltrim, multibyteAwareBtoa, nextCharLength, noBreakWhitespace, prevCharLength, regExpLeadsToEndlessLoop, removeAnsiEscapeCodes, removeAnsiEscapeCodesFromPrompt, rtrim, singleLetterHash, splitLines, splitLinesIncludeSeparators, startsWithIgnoreCase, startsWithUTF8BOM, trim, truncate, truncateMiddle, uppercaseFirstLetter };
891
+ export { AmbiguousCharacters, CodePointIterator, Ellipsis, GraphemeBreakType, GraphemeIterator, InvisibleCharacters, UNUSUAL_LINE_TERMINATORS, UTF8_BOM_CHARACTER, commonPrefixLength, commonSuffixLength, compare, compareIgnoreCase, compareSubstring, compareSubstringIgnoreCase, computeCodePoint, containsRTL, containsUnusualLineTerminators, containsUppercaseCharacter, convertSimple2RegExpPattern, count, createRegExp, endsWithIgnoreCase, equals, equalsIgnoreCase, escape, escapeRegExpCharacters, firstNonWhitespaceIndex, forAnsiStringParts, format, format2, fuzzyContains, getCharContainingOffset, getLeadingWhitespace, getLeftDeleteOffset, getNLines, getNextCodePoint, htmlAttributeEncodeValue, isAsciiDigit, isBasicASCII, isEmojiImprecise, isFalsyOrWhitespace, isFullWidthCharacter, isHighSurrogate, isLowSurrogate, isLowerAsciiLetter, isUpperAsciiLetter, joinStrings, lastNonWhitespaceIndex, lcut, ltrim, multibyteAwareBtoa, nextCharLength, noBreakWhitespace, prevCharLength, rcut, regExpLeadsToEndlessLoop, removeAnsiEscapeCodes, removeAnsiEscapeCodesFromPrompt, rtrim, singleLetterHash, splitLines, splitLinesIncludeSeparators, startsWithIgnoreCase, startsWithUTF8BOM, trim, truncate, truncateMiddle, uppercaseFirstLetter };