monaco-editor-core 0.54.0-dev-20251006 → 0.54.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 (242) hide show
  1. package/esm/nls.messages.de.js +1 -1
  2. package/esm/nls.messages.es.js +1 -1
  3. package/esm/nls.messages.fr.js +1 -1
  4. package/esm/nls.messages.it.js +1 -1
  5. package/esm/nls.messages.ja.js +1 -1
  6. package/esm/nls.messages.ko.js +1 -1
  7. package/esm/nls.messages.ru.js +1 -1
  8. package/esm/nls.messages.zh-cn.js +1 -1
  9. package/esm/nls.messages.zh-tw.js +1 -1
  10. package/esm/vs/base/browser/canIUse.js +0 -1
  11. package/esm/vs/base/browser/canIUse.js.map +1 -1
  12. package/esm/vs/base/browser/dom.js +0 -9
  13. package/esm/vs/base/browser/dom.js.map +1 -1
  14. package/esm/vs/base/browser/fastDomNode.js.map +1 -1
  15. package/esm/vs/base/browser/mouseEvent.js +0 -3
  16. package/esm/vs/base/browser/mouseEvent.js.map +1 -1
  17. package/esm/vs/base/browser/trustedTypes.js +0 -2
  18. package/esm/vs/base/browser/trustedTypes.js.map +1 -1
  19. package/esm/vs/base/browser/ui/list/listWidget.js +5 -5
  20. package/esm/vs/base/browser/ui/list/listWidget.js.map +1 -1
  21. package/esm/vs/base/browser/ui/sash/sash.css +1 -1
  22. package/esm/vs/base/browser/ui/sash/sash.js +0 -4
  23. package/esm/vs/base/browser/ui/sash/sash.js.map +1 -1
  24. package/esm/vs/base/browser/ui/scrollbar/scrollableElement.js +1 -1
  25. package/esm/vs/base/browser/ui/scrollbar/scrollableElement.js.map +1 -1
  26. package/esm/vs/base/browser/ui/table/table.css +2 -2
  27. package/esm/vs/base/browser/ui/tree/abstractTree.js +3 -7
  28. package/esm/vs/base/browser/ui/tree/abstractTree.js.map +1 -1
  29. package/esm/vs/base/browser/ui/tree/asyncDataTree.js +0 -4
  30. package/esm/vs/base/browser/ui/tree/asyncDataTree.js.map +1 -1
  31. package/esm/vs/base/browser/ui/tree/indexTreeModel.js +0 -1
  32. package/esm/vs/base/browser/ui/tree/indexTreeModel.js.map +1 -1
  33. package/esm/vs/base/browser/ui/tree/media/tree.css +2 -2
  34. package/esm/vs/base/browser/webWorkerFactory.js +0 -3
  35. package/esm/vs/base/browser/webWorkerFactory.js.map +1 -1
  36. package/esm/vs/base/common/buffer.js.map +1 -1
  37. package/esm/vs/base/common/decorators.js +0 -1
  38. package/esm/vs/base/common/decorators.js.map +1 -1
  39. package/esm/vs/base/common/errors.js +0 -1
  40. package/esm/vs/base/common/errors.js.map +1 -1
  41. package/esm/vs/base/common/hash.js.map +1 -1
  42. package/esm/vs/base/common/hotReload.js +0 -2
  43. package/esm/vs/base/common/hotReload.js.map +1 -1
  44. package/esm/vs/base/common/hotReloadHelpers.js +0 -1
  45. package/esm/vs/base/common/hotReloadHelpers.js.map +1 -1
  46. package/esm/vs/base/common/lifecycle.js +0 -4
  47. package/esm/vs/base/common/lifecycle.js.map +1 -1
  48. package/esm/vs/base/common/map.js +0 -1
  49. package/esm/vs/base/common/map.js.map +1 -1
  50. package/esm/vs/base/common/marshalling.js +0 -4
  51. package/esm/vs/base/common/marshalling.js.map +1 -1
  52. package/esm/vs/base/common/network.js +0 -1
  53. package/esm/vs/base/common/network.js.map +1 -1
  54. package/esm/vs/base/common/objects.js +0 -1
  55. package/esm/vs/base/common/objects.js.map +1 -1
  56. package/esm/vs/base/common/observableInternal/changeTracker.js +0 -4
  57. package/esm/vs/base/common/observableInternal/changeTracker.js.map +1 -1
  58. package/esm/vs/base/common/observableInternal/debugLocation.js +0 -1
  59. package/esm/vs/base/common/observableInternal/debugLocation.js.map +1 -1
  60. package/esm/vs/base/common/observableInternal/debugName.js +0 -1
  61. package/esm/vs/base/common/observableInternal/debugName.js.map +1 -1
  62. package/esm/vs/base/common/observableInternal/logging/consoleObservableLogger.js +0 -1
  63. package/esm/vs/base/common/observableInternal/logging/consoleObservableLogger.js.map +1 -1
  64. package/esm/vs/base/common/observableInternal/logging/debugger/debuggerRpc.js +0 -1
  65. package/esm/vs/base/common/observableInternal/logging/debugger/debuggerRpc.js.map +1 -1
  66. package/esm/vs/base/common/observableInternal/logging/debugger/rpc.js +0 -1
  67. package/esm/vs/base/common/observableInternal/logging/debugger/rpc.js.map +1 -1
  68. package/esm/vs/base/common/observableInternal/observables/derived.js +1 -7
  69. package/esm/vs/base/common/observableInternal/observables/derived.js.map +1 -1
  70. package/esm/vs/base/common/observableInternal/observables/derivedImpl.js +0 -2
  71. package/esm/vs/base/common/observableInternal/observables/derivedImpl.js.map +1 -1
  72. package/esm/vs/base/common/observableInternal/observables/observableFromEvent.js +0 -1
  73. package/esm/vs/base/common/observableInternal/observables/observableFromEvent.js.map +1 -1
  74. package/esm/vs/base/common/observableInternal/reactions/autorunImpl.js +0 -1
  75. package/esm/vs/base/common/observableInternal/reactions/autorunImpl.js.map +1 -1
  76. package/esm/vs/base/common/process.js +0 -1
  77. package/esm/vs/base/common/process.js.map +1 -1
  78. package/esm/vs/base/common/product.js.map +1 -1
  79. package/esm/vs/base/common/types.js +0 -2
  80. package/esm/vs/base/common/types.js.map +1 -1
  81. package/esm/vs/base/common/worker/webWorker.js +14 -26
  82. package/esm/vs/base/common/worker/webWorker.js.map +1 -1
  83. package/esm/vs/editor/browser/config/editorConfiguration.js +2 -3
  84. package/esm/vs/editor/browser/config/editorConfiguration.js.map +1 -1
  85. package/esm/vs/editor/browser/config/migrateOptions.js +1 -1
  86. package/esm/vs/editor/browser/config/migrateOptions.js.map +1 -1
  87. package/esm/vs/editor/browser/controller/editContext/native/editContextFactory.js.map +1 -1
  88. package/esm/vs/editor/browser/controller/editContext/native/nativeEditContextUtils.js +0 -2
  89. package/esm/vs/editor/browser/controller/editContext/native/nativeEditContextUtils.js.map +1 -1
  90. package/esm/vs/editor/browser/controller/mouseHandler.js +1 -2
  91. package/esm/vs/editor/browser/controller/mouseHandler.js.map +1 -1
  92. package/esm/vs/editor/browser/controller/mouseTarget.js +0 -7
  93. package/esm/vs/editor/browser/controller/mouseTarget.js.map +1 -1
  94. package/esm/vs/editor/browser/controller/pointerHandler.js.map +1 -1
  95. package/esm/vs/editor/browser/coreCommands.js.map +1 -1
  96. package/esm/vs/editor/browser/editorBrowser.js.map +1 -1
  97. package/esm/vs/editor/browser/editorDom.js.map +1 -1
  98. package/esm/vs/editor/browser/editorExtensions.js.map +1 -1
  99. package/esm/vs/editor/browser/gpu/gpuUtils.js +0 -1
  100. package/esm/vs/editor/browser/gpu/gpuUtils.js.map +1 -1
  101. package/esm/vs/editor/browser/gpu/viewGpuContext.js +0 -1
  102. package/esm/vs/editor/browser/gpu/viewGpuContext.js.map +1 -1
  103. package/esm/vs/editor/browser/services/abstractCodeEditorService.js.map +1 -1
  104. package/esm/vs/editor/browser/services/bulkEditService.js.map +1 -1
  105. package/esm/vs/editor/browser/services/codeEditorService.js.map +1 -1
  106. package/esm/vs/editor/browser/services/editorWorkerService.js.map +1 -1
  107. package/esm/vs/editor/browser/services/hoverService/hover.css +0 -2
  108. package/esm/vs/editor/browser/services/hoverService/hoverService.js.map +1 -1
  109. package/esm/vs/editor/browser/services/hoverService/hoverWidget.js +1 -1
  110. package/esm/vs/editor/browser/services/hoverService/hoverWidget.js.map +1 -1
  111. package/esm/vs/editor/browser/services/inlineCompletionsService.js +8 -8
  112. package/esm/vs/editor/browser/services/inlineCompletionsService.js.map +1 -1
  113. package/esm/vs/editor/browser/services/openerService.js.map +1 -1
  114. package/esm/vs/editor/browser/view.js.map +1 -1
  115. package/esm/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +0 -1
  116. package/esm/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js.map +1 -1
  117. package/esm/vs/editor/browser/viewParts/viewZones/viewZones.js +0 -1
  118. package/esm/vs/editor/browser/viewParts/viewZones/viewZones.js.map +1 -1
  119. package/esm/vs/editor/browser/widget/codeEditor/codeEditorContributions.js.map +1 -1
  120. package/esm/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +1 -4
  121. package/esm/vs/editor/browser/widget/codeEditor/codeEditorWidget.js.map +1 -1
  122. package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +0 -1
  123. package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js.map +1 -1
  124. package/esm/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js.map +1 -1
  125. package/esm/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +0 -1
  126. package/esm/vs/editor/browser/widget/diffEditor/diffEditorOptions.js.map +1 -1
  127. package/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +0 -1
  128. package/esm/vs/editor/browser/widget/diffEditor/diffEditorWidget.js.map +1 -1
  129. package/esm/vs/editor/browser/widget/diffEditor/utils.js +0 -2
  130. package/esm/vs/editor/browser/widget/diffEditor/utils.js.map +1 -1
  131. package/esm/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +0 -2
  132. package/esm/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js.map +1 -1
  133. package/esm/vs/editor/common/config/editorOptions.js +68 -122
  134. package/esm/vs/editor/common/config/editorOptions.js.map +1 -1
  135. package/esm/vs/editor/common/config/fontInfo.js +16 -32
  136. package/esm/vs/editor/common/config/fontInfo.js.map +1 -1
  137. package/esm/vs/editor/common/core/edits/edit.js +0 -1
  138. package/esm/vs/editor/common/core/edits/edit.js.map +1 -1
  139. package/esm/vs/editor/common/core/edits/stringEdit.js +0 -2
  140. package/esm/vs/editor/common/core/edits/stringEdit.js.map +1 -1
  141. package/esm/vs/editor/common/core/position.js +1 -1
  142. package/esm/vs/editor/common/core/position.js.map +1 -1
  143. package/esm/vs/editor/common/core/range.js +1 -1
  144. package/esm/vs/editor/common/core/range.js.map +1 -1
  145. package/esm/vs/editor/common/core/selection.js +1 -1
  146. package/esm/vs/editor/common/core/selection.js.map +1 -1
  147. package/esm/vs/editor/common/cursor/cursorMoveCommands.js.map +1 -1
  148. package/esm/vs/editor/common/editorCommon.js.map +1 -1
  149. package/esm/vs/editor/common/languages.js +1 -1
  150. package/esm/vs/editor/common/languages.js.map +1 -1
  151. package/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js +0 -14
  152. package/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js.map +1 -1
  153. package/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js +0 -2
  154. package/esm/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js.map +1 -1
  155. package/esm/vs/editor/common/model/textModel.js +1 -1
  156. package/esm/vs/editor/common/model/textModel.js.map +1 -1
  157. package/esm/vs/editor/common/model.js +1 -1
  158. package/esm/vs/editor/common/model.js.map +1 -1
  159. package/esm/vs/editor/common/services/editorBaseApi.js.map +1 -1
  160. package/esm/vs/editor/common/services/editorWebWorker.js +0 -1
  161. package/esm/vs/editor/common/services/editorWebWorker.js.map +1 -1
  162. package/esm/vs/editor/common/services/editorWorkerHost.js.map +1 -1
  163. package/esm/vs/editor/common/services/modelService.js +21 -14
  164. package/esm/vs/editor/common/services/modelService.js.map +1 -1
  165. package/esm/vs/editor/common/textModelEditSource.js +0 -2
  166. package/esm/vs/editor/common/textModelEditSource.js.map +1 -1
  167. package/esm/vs/editor/common/viewLayout/viewLineRenderer.js +1 -40
  168. package/esm/vs/editor/common/viewLayout/viewLineRenderer.js.map +1 -1
  169. package/esm/vs/editor/common/viewModel/viewModelImpl.js +1 -2
  170. package/esm/vs/editor/common/viewModel/viewModelImpl.js.map +1 -1
  171. package/esm/vs/editor/contrib/codeAction/browser/codeActionController.js +0 -1
  172. package/esm/vs/editor/contrib/codeAction/browser/codeActionController.js.map +1 -1
  173. package/esm/vs/editor/contrib/codelens/browser/codelensController.js +1 -1
  174. package/esm/vs/editor/contrib/codelens/browser/codelensController.js.map +1 -1
  175. package/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js +0 -1
  176. package/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js.map +1 -1
  177. package/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js +0 -1
  178. package/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js.map +1 -1
  179. package/esm/vs/editor/contrib/find/browser/findModel.js +0 -1
  180. package/esm/vs/editor/contrib/find/browser/findModel.js.map +1 -1
  181. package/esm/vs/editor/contrib/find/browser/findWidget.css +5 -5
  182. package/esm/vs/editor/contrib/folding/browser/folding.css +4 -4
  183. package/esm/vs/editor/contrib/folding/browser/foldingDecorations.js.map +1 -1
  184. package/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  185. package/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js.map +1 -1
  186. package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +1 -1
  187. package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js.map +1 -1
  188. package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +3 -4
  189. package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js.map +1 -1
  190. package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +7 -56
  191. package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js.map +1 -1
  192. package/esm/vs/editor/contrib/inlineCompletions/browser/structuredLogger.js +0 -1
  193. package/esm/vs/editor/contrib/inlineCompletions/browser/structuredLogger.js.map +1 -1
  194. package/esm/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +0 -2
  195. package/esm/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js.map +1 -1
  196. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +0 -1
  197. package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js.map +1 -1
  198. package/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  199. package/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js.map +1 -1
  200. package/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.css +0 -2
  201. package/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +0 -2
  202. package/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js.map +1 -1
  203. package/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js.map +1 -1
  204. package/esm/vs/editor/editor.api.d.ts +8 -8
  205. package/esm/vs/editor/editor.api.js +0 -4
  206. package/esm/vs/editor/editor.api.js.map +1 -1
  207. package/esm/vs/editor/standalone/browser/standaloneEditor.js +0 -37
  208. package/esm/vs/editor/standalone/browser/standaloneEditor.js.map +1 -1
  209. package/esm/vs/editor/standalone/browser/standaloneLanguages.js +0 -37
  210. package/esm/vs/editor/standalone/browser/standaloneLanguages.js.map +1 -1
  211. package/esm/vs/editor/standalone/browser/standaloneWebWorker.js.map +1 -1
  212. package/esm/vs/editor/standalone/common/monarch/monarchCompile.js +0 -3
  213. package/esm/vs/editor/standalone/common/monarch/monarchCompile.js.map +1 -1
  214. package/esm/vs/platform/accessibility/browser/accessibilityService.js +2 -2
  215. package/esm/vs/platform/accessibility/browser/accessibilityService.js.map +1 -1
  216. package/esm/vs/platform/contextkey/common/contextkey.js +0 -5
  217. package/esm/vs/platform/contextkey/common/contextkey.js.map +1 -1
  218. package/esm/vs/platform/dataChannel/browser/forwardingTelemetryService.js +0 -1
  219. package/esm/vs/platform/dataChannel/browser/forwardingTelemetryService.js.map +1 -1
  220. package/esm/vs/platform/dnd/browser/dnd.js +0 -2
  221. package/esm/vs/platform/dnd/browser/dnd.js.map +1 -1
  222. package/esm/vs/platform/instantiation/common/instantiation.js +0 -5
  223. package/esm/vs/platform/instantiation/common/instantiation.js.map +1 -1
  224. package/esm/vs/platform/instantiation/common/instantiationService.js +0 -1
  225. package/esm/vs/platform/instantiation/common/instantiationService.js.map +1 -1
  226. package/esm/vs/platform/list/browser/listService.js +0 -5
  227. package/esm/vs/platform/list/browser/listService.js.map +1 -1
  228. package/esm/vs/platform/observable/common/wrapInHotClass.js +0 -2
  229. package/esm/vs/platform/observable/common/wrapInHotClass.js.map +1 -1
  230. package/esm/vs/platform/observable/common/wrapInReloadableClass.js +0 -3
  231. package/esm/vs/platform/observable/common/wrapInReloadableClass.js.map +1 -1
  232. package/esm/vs/platform/quickinput/browser/quickInput.js +1 -1
  233. package/esm/vs/platform/quickinput/browser/quickInput.js.map +1 -1
  234. package/monaco.d.ts +8 -8
  235. package/package.json +2 -2
  236. package/version.txt +1 -1
  237. package/esm/vs/base/parts/sandbox/common/sandboxTypes.js +0 -2
  238. package/esm/vs/base/parts/sandbox/common/sandboxTypes.js.map +0 -1
  239. package/esm/vs/editor/common/config/fontInfoFromSettings.js +0 -16
  240. package/esm/vs/editor/common/config/fontInfoFromSettings.js.map +0 -1
  241. package/esm/vs/platform/product/common/product.js +0 -69
  242. package/esm/vs/platform/product/common/product.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src/vs/editor/standalone/browser/standaloneEditor.ts","vs/editor/standalone/browser/standaloneEditor.ts"],"names":[],"mappings":"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","file":"standaloneEditor.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { mainWindow } from '../../../base/browser/window.js';\nimport { Disposable, DisposableStore, IDisposable } from '../../../base/common/lifecycle.js';\nimport { splitLines } from '../../../base/common/strings.js';\nimport { URI } from '../../../base/common/uri.js';\nimport './standalone-tokens.css';\nimport { FontMeasurements } from '../../browser/config/fontMeasurements.js';\nimport { ICodeEditor } from '../../browser/editorBrowser.js';\nimport { EditorCommand, ServicesAccessor } from '../../browser/editorExtensions.js';\nimport { ICodeEditorService } from '../../browser/services/codeEditorService.js';\nimport { IInternalWebWorkerOptions, MonacoWebWorker, createWebWorker as actualCreateWebWorker } from './standaloneWebWorker.js';\nimport { ApplyUpdateResult, ConfigurationChangedEvent, EditorOptions } from '../../common/config/editorOptions.js';\nimport { EditorZoom } from '../../common/config/editorZoom.js';\nimport { BareFontInfo, FontInfo } from '../../common/config/fontInfo.js';\nimport { IPosition } from '../../common/core/position.js';\nimport { IRange } from '../../common/core/range.js';\nimport { EditorType, IDiffEditor } from '../../common/editorCommon.js';\nimport * as languages from '../../common/languages.js';\nimport { ILanguageService } from '../../common/languages/language.js';\nimport { PLAINTEXT_LANGUAGE_ID } from '../../common/languages/modesRegistry.js';\nimport { NullState, nullTokenize } from '../../common/languages/nullTokenize.js';\nimport { FindMatch, ITextModel, TextModelResolvedOptions } from '../../common/model.js';\nimport { IModelService } from '../../common/services/model.js';\nimport * as standaloneEnums from '../../common/standalone/standaloneEnums.js';\nimport { Colorizer, IColorizerElementOptions, IColorizerOptions } from './colorizer.js';\nimport { IActionDescriptor, IStandaloneCodeEditor, IStandaloneDiffEditor, IStandaloneDiffEditorConstructionOptions, IStandaloneEditorConstructionOptions, StandaloneDiffEditor2, StandaloneEditor, createTextModel } from './standaloneCodeEditor.js';\nimport { IEditorOverrideServices, StandaloneKeybindingService, StandaloneServices } from './standaloneServices.js';\nimport { StandaloneThemeService } from './standaloneThemeService.js';\nimport { IStandaloneThemeData, IStandaloneThemeService } from '../common/standaloneTheme.js';\nimport { IMenuItem, MenuId, MenuRegistry } from '../../../platform/actions/common/actions.js';\nimport { CommandsRegistry, ICommandHandler } from '../../../platform/commands/common/commands.js';\nimport { ContextKeyExpr } from '../../../platform/contextkey/common/contextkey.js';\nimport { ITextResourceEditorInput } from '../../../platform/editor/common/editor.js';\nimport { IKeybindingService } from '../../../platform/keybinding/common/keybinding.js';\nimport { IMarker, IMarkerData, IMarkerService } from '../../../platform/markers/common/markers.js';\nimport { IOpenerService } from '../../../platform/opener/common/opener.js';\nimport { MultiDiffEditorWidget } from '../../browser/widget/multiDiffEditor/multiDiffEditorWidget.js';\n\n/**\n * Create a new editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nexport function create(domElement: HTMLElement, options?: IStandaloneEditorConstructionOptions, override?: IEditorOverrideServices): IStandaloneCodeEditor {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn instantiationService.createInstance(StandaloneEditor, domElement, options);\n}\n\n/**\n * Emitted when an editor is created.\n * Creating a diff editor might cause this listener to be invoked with the two editors.\n * @event\n */\nexport function onDidCreateEditor(listener: (codeEditor: ICodeEditor) => void): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.onCodeEditorAdd((editor) => {\n\t\tlistener(<ICodeEditor>editor);\n\t});\n}\n\n/**\n * Emitted when an diff editor is created.\n * @event\n */\nexport function onDidCreateDiffEditor(listener: (diffEditor: IDiffEditor) => void): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.onDiffEditorAdd((editor) => {\n\t\tlistener(<IDiffEditor>editor);\n\t});\n}\n\n/**\n * Get all the created editors.\n */\nexport function getEditors(): readonly ICodeEditor[] {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.listCodeEditors();\n}\n\n/**\n * Get all the created diff editors.\n */\nexport function getDiffEditors(): readonly IDiffEditor[] {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.listDiffEditors();\n}\n\n/**\n * Create a new diff editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nexport function createDiffEditor(domElement: HTMLElement, options?: IStandaloneDiffEditorConstructionOptions, override?: IEditorOverrideServices): IStandaloneDiffEditor {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn instantiationService.createInstance(StandaloneDiffEditor2, domElement, options);\n}\n\nexport function createMultiFileDiffEditor(domElement: HTMLElement, override?: IEditorOverrideServices) {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn new MultiDiffEditorWidget(domElement, {}, instantiationService);\n}\n\n/**\n * Description of a command contribution\n */\nexport interface ICommandDescriptor {\n\t/**\n\t * An unique identifier of the contributed command.\n\t */\n\tid: string;\n\t/**\n\t * Callback that will be executed when the command is triggered.\n\t */\n\trun: ICommandHandler;\n}\n\n/**\n * Add a command.\n */\nexport function addCommand(descriptor: ICommandDescriptor): IDisposable {\n\tif ((typeof descriptor.id !== 'string') || (typeof descriptor.run !== 'function')) {\n\t\tthrow new Error('Invalid command descriptor, `id` and `run` are required properties!');\n\t}\n\treturn CommandsRegistry.registerCommand(descriptor.id, descriptor.run);\n}\n\n/**\n * Add an action to all editors.\n */\nexport function addEditorAction(descriptor: IActionDescriptor): IDisposable {\n\tif ((typeof descriptor.id !== 'string') || (typeof descriptor.label !== 'string') || (typeof descriptor.run !== 'function')) {\n\t\tthrow new Error('Invalid action descriptor, `id`, `label` and `run` are required properties!');\n\t}\n\n\tconst precondition = ContextKeyExpr.deserialize(descriptor.precondition);\n\tconst run = (accessor: ServicesAccessor, ...args: any[]): void | Promise<void> => {\n\t\treturn EditorCommand.runEditorCommand(accessor, args, precondition, (accessor, editor, args) => Promise.resolve(descriptor.run(editor, ...args)));\n\t};\n\n\tconst toDispose = new DisposableStore();\n\n\t// Register the command\n\ttoDispose.add(CommandsRegistry.registerCommand(descriptor.id, run));\n\n\t// Register the context menu item\n\tif (descriptor.contextMenuGroupId) {\n\t\tconst menuItem: IMenuItem = {\n\t\t\tcommand: {\n\t\t\t\tid: descriptor.id,\n\t\t\t\ttitle: descriptor.label\n\t\t\t},\n\t\t\twhen: precondition,\n\t\t\tgroup: descriptor.contextMenuGroupId,\n\t\t\torder: descriptor.contextMenuOrder || 0\n\t\t};\n\t\ttoDispose.add(MenuRegistry.appendMenuItem(MenuId.EditorContext, menuItem));\n\t}\n\n\t// Register the keybindings\n\tif (Array.isArray(descriptor.keybindings)) {\n\t\tconst keybindingService = StandaloneServices.get(IKeybindingService);\n\t\tif (!(keybindingService instanceof StandaloneKeybindingService)) {\n\t\t\tconsole.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n\t\t} else {\n\t\t\tconst keybindingsWhen = ContextKeyExpr.and(precondition, ContextKeyExpr.deserialize(descriptor.keybindingContext));\n\t\t\ttoDispose.add(keybindingService.addDynamicKeybindings(descriptor.keybindings.map((keybinding) => {\n\t\t\t\treturn {\n\t\t\t\t\tkeybinding,\n\t\t\t\t\tcommand: descriptor.id,\n\t\t\t\t\twhen: keybindingsWhen\n\t\t\t\t};\n\t\t\t})));\n\t\t}\n\t}\n\n\treturn toDispose;\n}\n\n/**\n * A keybinding rule.\n */\nexport interface IKeybindingRule {\n\tkeybinding: number;\n\tcommand?: string | null;\n\tcommandArgs?: any;\n\twhen?: string | null;\n}\n\n/**\n * Add a keybinding rule.\n */\nexport function addKeybindingRule(rule: IKeybindingRule): IDisposable {\n\treturn addKeybindingRules([rule]);\n}\n\n/**\n * Add keybinding rules.\n */\nexport function addKeybindingRules(rules: IKeybindingRule[]): IDisposable {\n\tconst keybindingService = StandaloneServices.get(IKeybindingService);\n\tif (!(keybindingService instanceof StandaloneKeybindingService)) {\n\t\tconsole.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n\t\treturn Disposable.None;\n\t}\n\n\treturn keybindingService.addDynamicKeybindings(rules.map((rule) => {\n\t\treturn {\n\t\t\tkeybinding: rule.keybinding,\n\t\t\tcommand: rule.command,\n\t\t\tcommandArgs: rule.commandArgs,\n\t\t\twhen: ContextKeyExpr.deserialize(rule.when),\n\t\t};\n\t}));\n}\n\n/**\n * Create a new editor model.\n * You can specify the language that should be set for this model or let the language be inferred from the `uri`.\n */\nexport function createModel(value: string, language?: string, uri?: URI): ITextModel {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst languageId = languageService.getLanguageIdByMimeType(language) || language;\n\treturn createTextModel(\n\t\tStandaloneServices.get(IModelService),\n\t\tlanguageService,\n\t\tvalue,\n\t\tlanguageId,\n\t\turi\n\t);\n}\n\n/**\n * Change the language for a model.\n */\nexport function setModelLanguage(model: ITextModel, mimeTypeOrLanguageId: string): void {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst languageId = languageService.getLanguageIdByMimeType(mimeTypeOrLanguageId) || mimeTypeOrLanguageId || PLAINTEXT_LANGUAGE_ID;\n\tmodel.setLanguage(languageService.createById(languageId));\n}\n\n/**\n * Set the markers for a model.\n */\nexport function setModelMarkers(model: ITextModel, owner: string, markers: IMarkerData[]): void {\n\tif (model) {\n\t\tconst markerService = StandaloneServices.get(IMarkerService);\n\t\tmarkerService.changeOne(owner, model.uri, markers);\n\t}\n}\n\n/**\n * Remove all markers of an owner.\n */\nexport function removeAllMarkers(owner: string) {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\tmarkerService.changeAll(owner, []);\n}\n\n/**\n * Get markers for owner and/or resource\n *\n * @returns list of markers\n */\nexport function getModelMarkers(filter: { owner?: string; resource?: URI; take?: number }): IMarker[] {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\treturn markerService.read(filter);\n}\n\n/**\n * Emitted when markers change for a model.\n * @event\n */\nexport function onDidChangeMarkers(listener: (e: readonly URI[]) => void): IDisposable {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\treturn markerService.onMarkerChanged(listener);\n}\n\n/**\n * Get the model that has `uri` if it exists.\n */\nexport function getModel(uri: URI): ITextModel | null {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.getModel(uri);\n}\n\n/**\n * Get all the created models.\n */\nexport function getModels(): ITextModel[] {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.getModels();\n}\n\n/**\n * Emitted when a model is created.\n * @event\n */\nexport function onDidCreateModel(listener: (model: ITextModel) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelAdded(listener);\n}\n\n/**\n * Emitted right before a model is disposed.\n * @event\n */\nexport function onWillDisposeModel(listener: (model: ITextModel) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelRemoved(listener);\n}\n\n/**\n * Emitted when a different language is set to a model.\n * @event\n */\nexport function onDidChangeModelLanguage(listener: (e: { readonly model: ITextModel; readonly oldLanguage: string }) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelLanguageChanged((e) => {\n\t\tlistener({\n\t\t\tmodel: e.model,\n\t\t\toldLanguage: e.oldLanguageId\n\t\t});\n\t});\n}\n\n/**\n * Create a new web worker that has model syncing capabilities built in.\n * Specify an AMD module to load that will `create` an object that will be proxied.\n */\nexport function createWebWorker<T extends object>(opts: IInternalWebWorkerOptions): MonacoWebWorker<T> {\n\treturn actualCreateWebWorker<T>(StandaloneServices.get(IModelService), opts);\n}\n\n/**\n * Colorize the contents of `domNode` using attribute `data-lang`.\n */\nexport function colorizeElement(domNode: HTMLElement, options: IColorizerElementOptions): Promise<void> {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\treturn Colorizer.colorizeElement(themeService, languageService, domNode, options).then(() => {\n\t\tthemeService.registerEditorContainer(domNode);\n\t});\n}\n\n/**\n * Colorize `text` using language `languageId`.\n */\nexport function colorize(text: string, languageId: string, options: IColorizerOptions): Promise<string> {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\tthemeService.registerEditorContainer(mainWindow.document.body);\n\treturn Colorizer.colorize(languageService, text, languageId, options);\n}\n\n/**\n * Colorize a line in a model.\n */\nexport function colorizeModelLine(model: ITextModel, lineNumber: number, tabSize: number = 4): string {\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\tthemeService.registerEditorContainer(mainWindow.document.body);\n\treturn Colorizer.colorizeModelLine(model, lineNumber, tabSize);\n}\n\n/**\n * @internal\n */\nfunction getSafeTokenizationSupport(language: string): Omit<languages.ITokenizationSupport, 'tokenizeEncoded'> {\n\tconst tokenizationSupport = languages.TokenizationRegistry.get(language);\n\tif (tokenizationSupport) {\n\t\treturn tokenizationSupport;\n\t}\n\treturn {\n\t\tgetInitialState: () => NullState,\n\t\ttokenize: (line: string, hasEOL: boolean, state: languages.IState) => nullTokenize(language, state)\n\t};\n}\n\n/**\n * Tokenize `text` using language `languageId`\n */\nexport function tokenize(text: string, languageId: string): languages.Token[][] {\n\t// Needed in order to get the mode registered for subsequent look-ups\n\tlanguages.TokenizationRegistry.getOrCreate(languageId);\n\n\tconst tokenizationSupport = getSafeTokenizationSupport(languageId);\n\tconst lines = splitLines(text);\n\tconst result: languages.Token[][] = [];\n\tlet state = tokenizationSupport.getInitialState();\n\tfor (let i = 0, len = lines.length; i < len; i++) {\n\t\tconst line = lines[i];\n\t\tconst tokenizationResult = tokenizationSupport.tokenize(line, true, state);\n\n\t\tresult[i] = tokenizationResult.tokens;\n\t\tstate = tokenizationResult.endState;\n\t}\n\treturn result;\n}\n\n/**\n * Define a new theme or update an existing theme.\n */\nexport function defineTheme(themeName: string, themeData: IStandaloneThemeData): void {\n\tconst standaloneThemeService = StandaloneServices.get(IStandaloneThemeService);\n\tstandaloneThemeService.defineTheme(themeName, themeData);\n}\n\n/**\n * Switches to a theme.\n */\nexport function setTheme(themeName: string): void {\n\tconst standaloneThemeService = StandaloneServices.get(IStandaloneThemeService);\n\tstandaloneThemeService.setTheme(themeName);\n}\n\n/**\n * Clears all cached font measurements and triggers re-measurement.\n */\nexport function remeasureFonts(): void {\n\tFontMeasurements.clearAllFontInfos();\n}\n\n/**\n * Register a command.\n */\nexport function registerCommand(id: string, handler: (accessor: any, ...args: any[]) => void): IDisposable {\n\treturn CommandsRegistry.registerCommand({ id, handler });\n}\n\nexport interface ILinkOpener {\n\topen(resource: URI): boolean | Promise<boolean>;\n}\n\n/**\n * Registers a handler that is called when a link is opened in any editor. The handler callback should return `true` if the link was handled and `false` otherwise.\n * The handler that was registered last will be called first when a link is opened.\n *\n * Returns a disposable that can unregister the opener again.\n */\nexport function registerLinkOpener(opener: ILinkOpener): IDisposable {\n\tconst openerService = StandaloneServices.get(IOpenerService);\n\treturn openerService.registerOpener({\n\t\tasync open(resource: string | URI) {\n\t\t\tif (typeof resource === 'string') {\n\t\t\t\tresource = URI.parse(resource);\n\t\t\t}\n\t\t\treturn opener.open(resource);\n\t\t}\n\t});\n}\n\n/**\n * Represents an object that can handle editor open operations (e.g. when \"go to definition\" is called\n * with a resource other than the current model).\n */\nexport interface ICodeEditorOpener {\n\t/**\n\t * Callback that is invoked when a resource other than the current model should be opened (e.g. when \"go to definition\" is called).\n\t * The callback should return `true` if the request was handled and `false` otherwise.\n\t * @param source The code editor instance that initiated the request.\n\t * @param resource The URI of the resource that should be opened.\n\t * @param selectionOrPosition An optional position or selection inside the model corresponding to `resource` that can be used to set the cursor.\n\t */\n\topenCodeEditor(source: ICodeEditor, resource: URI, selectionOrPosition?: IRange | IPosition): boolean | Promise<boolean>;\n}\n\n/**\n * Registers a handler that is called when a resource other than the current model should be opened in the editor (e.g. \"go to definition\").\n * The handler callback should return `true` if the request was handled and `false` otherwise.\n *\n * Returns a disposable that can unregister the opener again.\n *\n * If no handler is registered the default behavior is to do nothing for models other than the currently attached one.\n */\nexport function registerEditorOpener(opener: ICodeEditorOpener): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.registerCodeEditorOpenHandler(async (input: ITextResourceEditorInput, source: ICodeEditor | null, sideBySide?: boolean) => {\n\t\tif (!source) {\n\t\t\treturn null;\n\t\t}\n\t\tconst selection = input.options?.selection;\n\t\tlet selectionOrPosition: IRange | IPosition | undefined;\n\t\tif (selection && typeof selection.endLineNumber === 'number' && typeof selection.endColumn === 'number') {\n\t\t\tselectionOrPosition = <IRange>selection;\n\t\t} else if (selection) {\n\t\t\tselectionOrPosition = { lineNumber: selection.startLineNumber, column: selection.startColumn };\n\t\t}\n\t\tif (await opener.openCodeEditor(source, input.resource, selectionOrPosition)) {\n\t\t\treturn source; // return source editor to indicate that this handler has successfully handled the opening\n\t\t}\n\t\treturn null; // fallback to other registered handlers\n\t});\n}\n\n/**\n * @internal\n */\nexport function createMonacoEditorAPI(): typeof monaco.editor {\n\treturn {\n\t\t// methods\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreate: <any>create,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetEditors: <any>getEditors,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetDiffEditors: <any>getDiffEditors,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidCreateEditor: <any>onDidCreateEditor,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidCreateDiffEditor: <any>onDidCreateDiffEditor,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreateDiffEditor: <any>createDiffEditor,\n\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\taddCommand: <any>addCommand,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\taddEditorAction: <any>addEditorAction,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\taddKeybindingRule: <any>addKeybindingRule,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\taddKeybindingRules: <any>addKeybindingRules,\n\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreateModel: <any>createModel,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tsetModelLanguage: <any>setModelLanguage,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tsetModelMarkers: <any>setModelMarkers,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetModelMarkers: <any>getModelMarkers,\n\t\tremoveAllMarkers: removeAllMarkers,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidChangeMarkers: <any>onDidChangeMarkers,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetModels: <any>getModels,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetModel: <any>getModel,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidCreateModel: <any>onDidCreateModel,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonWillDisposeModel: <any>onWillDisposeModel,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidChangeModelLanguage: <any>onDidChangeModelLanguage,\n\n\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreateWebWorker: <any>createWebWorker,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcolorizeElement: <any>colorizeElement,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcolorize: <any>colorize,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcolorizeModelLine: <any>colorizeModelLine,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\ttokenize: <any>tokenize,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tdefineTheme: <any>defineTheme,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tsetTheme: <any>setTheme,\n\t\tremeasureFonts: remeasureFonts,\n\t\tregisterCommand: registerCommand,\n\n\t\tregisterLinkOpener: registerLinkOpener,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tregisterEditorOpener: <any>registerEditorOpener,\n\n\t\t// enums\n\t\tAccessibilitySupport: standaloneEnums.AccessibilitySupport,\n\t\tContentWidgetPositionPreference: standaloneEnums.ContentWidgetPositionPreference,\n\t\tCursorChangeReason: standaloneEnums.CursorChangeReason,\n\t\tDefaultEndOfLine: standaloneEnums.DefaultEndOfLine,\n\t\tEditorAutoIndentStrategy: standaloneEnums.EditorAutoIndentStrategy,\n\t\tEditorOption: standaloneEnums.EditorOption,\n\t\tEndOfLinePreference: standaloneEnums.EndOfLinePreference,\n\t\tEndOfLineSequence: standaloneEnums.EndOfLineSequence,\n\t\tMinimapPosition: standaloneEnums.MinimapPosition,\n\t\tMinimapSectionHeaderStyle: standaloneEnums.MinimapSectionHeaderStyle,\n\t\tMouseTargetType: standaloneEnums.MouseTargetType,\n\t\tOverlayWidgetPositionPreference: standaloneEnums.OverlayWidgetPositionPreference,\n\t\tOverviewRulerLane: standaloneEnums.OverviewRulerLane,\n\t\tGlyphMarginLane: standaloneEnums.GlyphMarginLane,\n\t\tRenderLineNumbersType: standaloneEnums.RenderLineNumbersType,\n\t\tRenderMinimap: standaloneEnums.RenderMinimap,\n\t\tScrollbarVisibility: standaloneEnums.ScrollbarVisibility,\n\t\tScrollType: standaloneEnums.ScrollType,\n\t\tTextEditorCursorBlinkingStyle: standaloneEnums.TextEditorCursorBlinkingStyle,\n\t\tTextEditorCursorStyle: standaloneEnums.TextEditorCursorStyle,\n\t\tTrackedRangeStickiness: standaloneEnums.TrackedRangeStickiness,\n\t\tWrappingIndent: standaloneEnums.WrappingIndent,\n\t\tInjectedTextCursorStops: standaloneEnums.InjectedTextCursorStops,\n\t\tPositionAffinity: standaloneEnums.PositionAffinity,\n\t\tShowLightbulbIconMode: standaloneEnums.ShowLightbulbIconMode,\n\t\tTextDirection: standaloneEnums.TextDirection,\n\n\t\t// classes\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tConfigurationChangedEvent: <any>ConfigurationChangedEvent,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tBareFontInfo: <any>BareFontInfo,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tFontInfo: <any>FontInfo,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tTextModelResolvedOptions: <any>TextModelResolvedOptions,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tFindMatch: <any>FindMatch,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tApplyUpdateResult: <any>ApplyUpdateResult,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tEditorZoom: <any>EditorZoom,\n\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreateMultiFileDiffEditor: <any>createMultiFileDiffEditor,\n\n\t\t// vars\n\t\tEditorType: EditorType,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tEditorOptions: <any>EditorOptions\n\n\t};\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { mainWindow } from '../../../base/browser/window.js';\nimport { Disposable, DisposableStore, IDisposable } from '../../../base/common/lifecycle.js';\nimport { splitLines } from '../../../base/common/strings.js';\nimport { URI } from '../../../base/common/uri.js';\nimport './standalone-tokens.css';\nimport { FontMeasurements } from '../../browser/config/fontMeasurements.js';\nimport { ICodeEditor } from '../../browser/editorBrowser.js';\nimport { EditorCommand, ServicesAccessor } from '../../browser/editorExtensions.js';\nimport { ICodeEditorService } from '../../browser/services/codeEditorService.js';\nimport { IInternalWebWorkerOptions, MonacoWebWorker, createWebWorker as actualCreateWebWorker } from './standaloneWebWorker.js';\nimport { ApplyUpdateResult, ConfigurationChangedEvent, EditorOptions } from '../../common/config/editorOptions.js';\nimport { EditorZoom } from '../../common/config/editorZoom.js';\nimport { BareFontInfo, FontInfo } from '../../common/config/fontInfo.js';\nimport { IPosition } from '../../common/core/position.js';\nimport { IRange } from '../../common/core/range.js';\nimport { EditorType, IDiffEditor } from '../../common/editorCommon.js';\nimport * as languages from '../../common/languages.js';\nimport { ILanguageService } from '../../common/languages/language.js';\nimport { PLAINTEXT_LANGUAGE_ID } from '../../common/languages/modesRegistry.js';\nimport { NullState, nullTokenize } from '../../common/languages/nullTokenize.js';\nimport { FindMatch, ITextModel, TextModelResolvedOptions } from '../../common/model.js';\nimport { IModelService } from '../../common/services/model.js';\nimport * as standaloneEnums from '../../common/standalone/standaloneEnums.js';\nimport { Colorizer, IColorizerElementOptions, IColorizerOptions } from './colorizer.js';\nimport { IActionDescriptor, IStandaloneCodeEditor, IStandaloneDiffEditor, IStandaloneDiffEditorConstructionOptions, IStandaloneEditorConstructionOptions, StandaloneDiffEditor2, StandaloneEditor, createTextModel } from './standaloneCodeEditor.js';\nimport { IEditorOverrideServices, StandaloneKeybindingService, StandaloneServices } from './standaloneServices.js';\nimport { StandaloneThemeService } from './standaloneThemeService.js';\nimport { IStandaloneThemeData, IStandaloneThemeService } from '../common/standaloneTheme.js';\nimport { IMenuItem, MenuId, MenuRegistry } from '../../../platform/actions/common/actions.js';\nimport { CommandsRegistry, ICommandHandler } from '../../../platform/commands/common/commands.js';\nimport { ContextKeyExpr } from '../../../platform/contextkey/common/contextkey.js';\nimport { ITextResourceEditorInput } from '../../../platform/editor/common/editor.js';\nimport { IKeybindingService } from '../../../platform/keybinding/common/keybinding.js';\nimport { IMarker, IMarkerData, IMarkerService } from '../../../platform/markers/common/markers.js';\nimport { IOpenerService } from '../../../platform/opener/common/opener.js';\nimport { MultiDiffEditorWidget } from '../../browser/widget/multiDiffEditor/multiDiffEditorWidget.js';\n\n/**\n * Create a new editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nexport function create(domElement: HTMLElement, options?: IStandaloneEditorConstructionOptions, override?: IEditorOverrideServices): IStandaloneCodeEditor {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn instantiationService.createInstance(StandaloneEditor, domElement, options);\n}\n\n/**\n * Emitted when an editor is created.\n * Creating a diff editor might cause this listener to be invoked with the two editors.\n * @event\n */\nexport function onDidCreateEditor(listener: (codeEditor: ICodeEditor) => void): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.onCodeEditorAdd((editor) => {\n\t\tlistener(<ICodeEditor>editor);\n\t});\n}\n\n/**\n * Emitted when an diff editor is created.\n * @event\n */\nexport function onDidCreateDiffEditor(listener: (diffEditor: IDiffEditor) => void): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.onDiffEditorAdd((editor) => {\n\t\tlistener(<IDiffEditor>editor);\n\t});\n}\n\n/**\n * Get all the created editors.\n */\nexport function getEditors(): readonly ICodeEditor[] {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.listCodeEditors();\n}\n\n/**\n * Get all the created diff editors.\n */\nexport function getDiffEditors(): readonly IDiffEditor[] {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.listDiffEditors();\n}\n\n/**\n * Create a new diff editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nexport function createDiffEditor(domElement: HTMLElement, options?: IStandaloneDiffEditorConstructionOptions, override?: IEditorOverrideServices): IStandaloneDiffEditor {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn instantiationService.createInstance(StandaloneDiffEditor2, domElement, options);\n}\n\nexport function createMultiFileDiffEditor(domElement: HTMLElement, override?: IEditorOverrideServices) {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn new MultiDiffEditorWidget(domElement, {}, instantiationService);\n}\n\n/**\n * Description of a command contribution\n */\nexport interface ICommandDescriptor {\n\t/**\n\t * An unique identifier of the contributed command.\n\t */\n\tid: string;\n\t/**\n\t * Callback that will be executed when the command is triggered.\n\t */\n\trun: ICommandHandler;\n}\n\n/**\n * Add a command.\n */\nexport function addCommand(descriptor: ICommandDescriptor): IDisposable {\n\tif ((typeof descriptor.id !== 'string') || (typeof descriptor.run !== 'function')) {\n\t\tthrow new Error('Invalid command descriptor, `id` and `run` are required properties!');\n\t}\n\treturn CommandsRegistry.registerCommand(descriptor.id, descriptor.run);\n}\n\n/**\n * Add an action to all editors.\n */\nexport function addEditorAction(descriptor: IActionDescriptor): IDisposable {\n\tif ((typeof descriptor.id !== 'string') || (typeof descriptor.label !== 'string') || (typeof descriptor.run !== 'function')) {\n\t\tthrow new Error('Invalid action descriptor, `id`, `label` and `run` are required properties!');\n\t}\n\n\tconst precondition = ContextKeyExpr.deserialize(descriptor.precondition);\n\tconst run = (accessor: ServicesAccessor, ...args: any[]): void | Promise<void> => {\n\t\treturn EditorCommand.runEditorCommand(accessor, args, precondition, (accessor, editor, args) => Promise.resolve(descriptor.run(editor, ...args)));\n\t};\n\n\tconst toDispose = new DisposableStore();\n\n\t// Register the command\n\ttoDispose.add(CommandsRegistry.registerCommand(descriptor.id, run));\n\n\t// Register the context menu item\n\tif (descriptor.contextMenuGroupId) {\n\t\tconst menuItem: IMenuItem = {\n\t\t\tcommand: {\n\t\t\t\tid: descriptor.id,\n\t\t\t\ttitle: descriptor.label\n\t\t\t},\n\t\t\twhen: precondition,\n\t\t\tgroup: descriptor.contextMenuGroupId,\n\t\t\torder: descriptor.contextMenuOrder || 0\n\t\t};\n\t\ttoDispose.add(MenuRegistry.appendMenuItem(MenuId.EditorContext, menuItem));\n\t}\n\n\t// Register the keybindings\n\tif (Array.isArray(descriptor.keybindings)) {\n\t\tconst keybindingService = StandaloneServices.get(IKeybindingService);\n\t\tif (!(keybindingService instanceof StandaloneKeybindingService)) {\n\t\t\tconsole.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n\t\t} else {\n\t\t\tconst keybindingsWhen = ContextKeyExpr.and(precondition, ContextKeyExpr.deserialize(descriptor.keybindingContext));\n\t\t\ttoDispose.add(keybindingService.addDynamicKeybindings(descriptor.keybindings.map((keybinding) => {\n\t\t\t\treturn {\n\t\t\t\t\tkeybinding,\n\t\t\t\t\tcommand: descriptor.id,\n\t\t\t\t\twhen: keybindingsWhen\n\t\t\t\t};\n\t\t\t})));\n\t\t}\n\t}\n\n\treturn toDispose;\n}\n\n/**\n * A keybinding rule.\n */\nexport interface IKeybindingRule {\n\tkeybinding: number;\n\tcommand?: string | null;\n\tcommandArgs?: any;\n\twhen?: string | null;\n}\n\n/**\n * Add a keybinding rule.\n */\nexport function addKeybindingRule(rule: IKeybindingRule): IDisposable {\n\treturn addKeybindingRules([rule]);\n}\n\n/**\n * Add keybinding rules.\n */\nexport function addKeybindingRules(rules: IKeybindingRule[]): IDisposable {\n\tconst keybindingService = StandaloneServices.get(IKeybindingService);\n\tif (!(keybindingService instanceof StandaloneKeybindingService)) {\n\t\tconsole.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n\t\treturn Disposable.None;\n\t}\n\n\treturn keybindingService.addDynamicKeybindings(rules.map((rule) => {\n\t\treturn {\n\t\t\tkeybinding: rule.keybinding,\n\t\t\tcommand: rule.command,\n\t\t\tcommandArgs: rule.commandArgs,\n\t\t\twhen: ContextKeyExpr.deserialize(rule.when),\n\t\t};\n\t}));\n}\n\n/**\n * Create a new editor model.\n * You can specify the language that should be set for this model or let the language be inferred from the `uri`.\n */\nexport function createModel(value: string, language?: string, uri?: URI): ITextModel {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst languageId = languageService.getLanguageIdByMimeType(language) || language;\n\treturn createTextModel(\n\t\tStandaloneServices.get(IModelService),\n\t\tlanguageService,\n\t\tvalue,\n\t\tlanguageId,\n\t\turi\n\t);\n}\n\n/**\n * Change the language for a model.\n */\nexport function setModelLanguage(model: ITextModel, mimeTypeOrLanguageId: string): void {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst languageId = languageService.getLanguageIdByMimeType(mimeTypeOrLanguageId) || mimeTypeOrLanguageId || PLAINTEXT_LANGUAGE_ID;\n\tmodel.setLanguage(languageService.createById(languageId));\n}\n\n/**\n * Set the markers for a model.\n */\nexport function setModelMarkers(model: ITextModel, owner: string, markers: IMarkerData[]): void {\n\tif (model) {\n\t\tconst markerService = StandaloneServices.get(IMarkerService);\n\t\tmarkerService.changeOne(owner, model.uri, markers);\n\t}\n}\n\n/**\n * Remove all markers of an owner.\n */\nexport function removeAllMarkers(owner: string) {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\tmarkerService.changeAll(owner, []);\n}\n\n/**\n * Get markers for owner and/or resource\n *\n * @returns list of markers\n */\nexport function getModelMarkers(filter: { owner?: string; resource?: URI; take?: number }): IMarker[] {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\treturn markerService.read(filter);\n}\n\n/**\n * Emitted when markers change for a model.\n * @event\n */\nexport function onDidChangeMarkers(listener: (e: readonly URI[]) => void): IDisposable {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\treturn markerService.onMarkerChanged(listener);\n}\n\n/**\n * Get the model that has `uri` if it exists.\n */\nexport function getModel(uri: URI): ITextModel | null {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.getModel(uri);\n}\n\n/**\n * Get all the created models.\n */\nexport function getModels(): ITextModel[] {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.getModels();\n}\n\n/**\n * Emitted when a model is created.\n * @event\n */\nexport function onDidCreateModel(listener: (model: ITextModel) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelAdded(listener);\n}\n\n/**\n * Emitted right before a model is disposed.\n * @event\n */\nexport function onWillDisposeModel(listener: (model: ITextModel) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelRemoved(listener);\n}\n\n/**\n * Emitted when a different language is set to a model.\n * @event\n */\nexport function onDidChangeModelLanguage(listener: (e: { readonly model: ITextModel; readonly oldLanguage: string }) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelLanguageChanged((e) => {\n\t\tlistener({\n\t\t\tmodel: e.model,\n\t\t\toldLanguage: e.oldLanguageId\n\t\t});\n\t});\n}\n\n/**\n * Create a new web worker that has model syncing capabilities built in.\n * Specify an AMD module to load that will `create` an object that will be proxied.\n */\nexport function createWebWorker<T extends object>(opts: IInternalWebWorkerOptions): MonacoWebWorker<T> {\n\treturn actualCreateWebWorker<T>(StandaloneServices.get(IModelService), opts);\n}\n\n/**\n * Colorize the contents of `domNode` using attribute `data-lang`.\n */\nexport function colorizeElement(domNode: HTMLElement, options: IColorizerElementOptions): Promise<void> {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\treturn Colorizer.colorizeElement(themeService, languageService, domNode, options).then(() => {\n\t\tthemeService.registerEditorContainer(domNode);\n\t});\n}\n\n/**\n * Colorize `text` using language `languageId`.\n */\nexport function colorize(text: string, languageId: string, options: IColorizerOptions): Promise<string> {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\tthemeService.registerEditorContainer(mainWindow.document.body);\n\treturn Colorizer.colorize(languageService, text, languageId, options);\n}\n\n/**\n * Colorize a line in a model.\n */\nexport function colorizeModelLine(model: ITextModel, lineNumber: number, tabSize: number = 4): string {\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\tthemeService.registerEditorContainer(mainWindow.document.body);\n\treturn Colorizer.colorizeModelLine(model, lineNumber, tabSize);\n}\n\n/**\n * @internal\n */\nfunction getSafeTokenizationSupport(language: string): Omit<languages.ITokenizationSupport, 'tokenizeEncoded'> {\n\tconst tokenizationSupport = languages.TokenizationRegistry.get(language);\n\tif (tokenizationSupport) {\n\t\treturn tokenizationSupport;\n\t}\n\treturn {\n\t\tgetInitialState: () => NullState,\n\t\ttokenize: (line: string, hasEOL: boolean, state: languages.IState) => nullTokenize(language, state)\n\t};\n}\n\n/**\n * Tokenize `text` using language `languageId`\n */\nexport function tokenize(text: string, languageId: string): languages.Token[][] {\n\t// Needed in order to get the mode registered for subsequent look-ups\n\tlanguages.TokenizationRegistry.getOrCreate(languageId);\n\n\tconst tokenizationSupport = getSafeTokenizationSupport(languageId);\n\tconst lines = splitLines(text);\n\tconst result: languages.Token[][] = [];\n\tlet state = tokenizationSupport.getInitialState();\n\tfor (let i = 0, len = lines.length; i < len; i++) {\n\t\tconst line = lines[i];\n\t\tconst tokenizationResult = tokenizationSupport.tokenize(line, true, state);\n\n\t\tresult[i] = tokenizationResult.tokens;\n\t\tstate = tokenizationResult.endState;\n\t}\n\treturn result;\n}\n\n/**\n * Define a new theme or update an existing theme.\n */\nexport function defineTheme(themeName: string, themeData: IStandaloneThemeData): void {\n\tconst standaloneThemeService = StandaloneServices.get(IStandaloneThemeService);\n\tstandaloneThemeService.defineTheme(themeName, themeData);\n}\n\n/**\n * Switches to a theme.\n */\nexport function setTheme(themeName: string): void {\n\tconst standaloneThemeService = StandaloneServices.get(IStandaloneThemeService);\n\tstandaloneThemeService.setTheme(themeName);\n}\n\n/**\n * Clears all cached font measurements and triggers re-measurement.\n */\nexport function remeasureFonts(): void {\n\tFontMeasurements.clearAllFontInfos();\n}\n\n/**\n * Register a command.\n */\nexport function registerCommand(id: string, handler: (accessor: any, ...args: any[]) => void): IDisposable {\n\treturn CommandsRegistry.registerCommand({ id, handler });\n}\n\nexport interface ILinkOpener {\n\topen(resource: URI): boolean | Promise<boolean>;\n}\n\n/**\n * Registers a handler that is called when a link is opened in any editor. The handler callback should return `true` if the link was handled and `false` otherwise.\n * The handler that was registered last will be called first when a link is opened.\n *\n * Returns a disposable that can unregister the opener again.\n */\nexport function registerLinkOpener(opener: ILinkOpener): IDisposable {\n\tconst openerService = StandaloneServices.get(IOpenerService);\n\treturn openerService.registerOpener({\n\t\tasync open(resource: string | URI) {\n\t\t\tif (typeof resource === 'string') {\n\t\t\t\tresource = URI.parse(resource);\n\t\t\t}\n\t\t\treturn opener.open(resource);\n\t\t}\n\t});\n}\n\n/**\n * Represents an object that can handle editor open operations (e.g. when \"go to definition\" is called\n * with a resource other than the current model).\n */\nexport interface ICodeEditorOpener {\n\t/**\n\t * Callback that is invoked when a resource other than the current model should be opened (e.g. when \"go to definition\" is called).\n\t * The callback should return `true` if the request was handled and `false` otherwise.\n\t * @param source The code editor instance that initiated the request.\n\t * @param resource The URI of the resource that should be opened.\n\t * @param selectionOrPosition An optional position or selection inside the model corresponding to `resource` that can be used to set the cursor.\n\t */\n\topenCodeEditor(source: ICodeEditor, resource: URI, selectionOrPosition?: IRange | IPosition): boolean | Promise<boolean>;\n}\n\n/**\n * Registers a handler that is called when a resource other than the current model should be opened in the editor (e.g. \"go to definition\").\n * The handler callback should return `true` if the request was handled and `false` otherwise.\n *\n * Returns a disposable that can unregister the opener again.\n *\n * If no handler is registered the default behavior is to do nothing for models other than the currently attached one.\n */\nexport function registerEditorOpener(opener: ICodeEditorOpener): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.registerCodeEditorOpenHandler(async (input: ITextResourceEditorInput, source: ICodeEditor | null, sideBySide?: boolean) => {\n\t\tif (!source) {\n\t\t\treturn null;\n\t\t}\n\t\tconst selection = input.options?.selection;\n\t\tlet selectionOrPosition: IRange | IPosition | undefined;\n\t\tif (selection && typeof selection.endLineNumber === 'number' && typeof selection.endColumn === 'number') {\n\t\t\tselectionOrPosition = <IRange>selection;\n\t\t} else if (selection) {\n\t\t\tselectionOrPosition = { lineNumber: selection.startLineNumber, column: selection.startColumn };\n\t\t}\n\t\tif (await opener.openCodeEditor(source, input.resource, selectionOrPosition)) {\n\t\t\treturn source; // return source editor to indicate that this handler has successfully handled the opening\n\t\t}\n\t\treturn null; // fallback to other registered handlers\n\t});\n}\n\n/**\n * @internal\n */\nexport function createMonacoEditorAPI(): typeof monaco.editor {\n\treturn {\n\t\t// methods\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreate: <any>create,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetEditors: <any>getEditors,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetDiffEditors: <any>getDiffEditors,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidCreateEditor: <any>onDidCreateEditor,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidCreateDiffEditor: <any>onDidCreateDiffEditor,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreateDiffEditor: <any>createDiffEditor,\n\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\taddCommand: <any>addCommand,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\taddEditorAction: <any>addEditorAction,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\taddKeybindingRule: <any>addKeybindingRule,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\taddKeybindingRules: <any>addKeybindingRules,\n\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreateModel: <any>createModel,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tsetModelLanguage: <any>setModelLanguage,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tsetModelMarkers: <any>setModelMarkers,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetModelMarkers: <any>getModelMarkers,\n\t\tremoveAllMarkers: removeAllMarkers,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidChangeMarkers: <any>onDidChangeMarkers,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetModels: <any>getModels,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tgetModel: <any>getModel,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidCreateModel: <any>onDidCreateModel,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonWillDisposeModel: <any>onWillDisposeModel,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tonDidChangeModelLanguage: <any>onDidChangeModelLanguage,\n\n\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreateWebWorker: <any>createWebWorker,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcolorizeElement: <any>colorizeElement,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcolorize: <any>colorize,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcolorizeModelLine: <any>colorizeModelLine,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\ttokenize: <any>tokenize,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tdefineTheme: <any>defineTheme,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tsetTheme: <any>setTheme,\n\t\tremeasureFonts: remeasureFonts,\n\t\tregisterCommand: registerCommand,\n\n\t\tregisterLinkOpener: registerLinkOpener,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tregisterEditorOpener: <any>registerEditorOpener,\n\n\t\t// enums\n\t\tAccessibilitySupport: standaloneEnums.AccessibilitySupport,\n\t\tContentWidgetPositionPreference: standaloneEnums.ContentWidgetPositionPreference,\n\t\tCursorChangeReason: standaloneEnums.CursorChangeReason,\n\t\tDefaultEndOfLine: standaloneEnums.DefaultEndOfLine,\n\t\tEditorAutoIndentStrategy: standaloneEnums.EditorAutoIndentStrategy,\n\t\tEditorOption: standaloneEnums.EditorOption,\n\t\tEndOfLinePreference: standaloneEnums.EndOfLinePreference,\n\t\tEndOfLineSequence: standaloneEnums.EndOfLineSequence,\n\t\tMinimapPosition: standaloneEnums.MinimapPosition,\n\t\tMinimapSectionHeaderStyle: standaloneEnums.MinimapSectionHeaderStyle,\n\t\tMouseTargetType: standaloneEnums.MouseTargetType,\n\t\tOverlayWidgetPositionPreference: standaloneEnums.OverlayWidgetPositionPreference,\n\t\tOverviewRulerLane: standaloneEnums.OverviewRulerLane,\n\t\tGlyphMarginLane: standaloneEnums.GlyphMarginLane,\n\t\tRenderLineNumbersType: standaloneEnums.RenderLineNumbersType,\n\t\tRenderMinimap: standaloneEnums.RenderMinimap,\n\t\tScrollbarVisibility: standaloneEnums.ScrollbarVisibility,\n\t\tScrollType: standaloneEnums.ScrollType,\n\t\tTextEditorCursorBlinkingStyle: standaloneEnums.TextEditorCursorBlinkingStyle,\n\t\tTextEditorCursorStyle: standaloneEnums.TextEditorCursorStyle,\n\t\tTrackedRangeStickiness: standaloneEnums.TrackedRangeStickiness,\n\t\tWrappingIndent: standaloneEnums.WrappingIndent,\n\t\tInjectedTextCursorStops: standaloneEnums.InjectedTextCursorStops,\n\t\tPositionAffinity: standaloneEnums.PositionAffinity,\n\t\tShowLightbulbIconMode: standaloneEnums.ShowLightbulbIconMode,\n\t\tTextDirection: standaloneEnums.TextDirection,\n\n\t\t// classes\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tConfigurationChangedEvent: <any>ConfigurationChangedEvent,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tBareFontInfo: <any>BareFontInfo,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tFontInfo: <any>FontInfo,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tTextModelResolvedOptions: <any>TextModelResolvedOptions,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tFindMatch: <any>FindMatch,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tApplyUpdateResult: <any>ApplyUpdateResult,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tEditorZoom: <any>EditorZoom,\n\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tcreateMultiFileDiffEditor: <any>createMultiFileDiffEditor,\n\n\t\t// vars\n\t\tEditorType: EditorType,\n\t\t// eslint-disable-next-line local/code-no-any-casts\n\t\tEditorOptions: <any>EditorOptions\n\n\t};\n}\n"]}
1
+ {"version":3,"sources":["file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src/vs/editor/standalone/browser/standaloneEditor.ts","vs/editor/standalone/browser/standaloneEditor.ts"],"names":[],"mappings":"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","file":"standaloneEditor.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { mainWindow } from '../../../base/browser/window.js';\nimport { Disposable, DisposableStore, IDisposable } from '../../../base/common/lifecycle.js';\nimport { splitLines } from '../../../base/common/strings.js';\nimport { URI } from '../../../base/common/uri.js';\nimport './standalone-tokens.css';\nimport { FontMeasurements } from '../../browser/config/fontMeasurements.js';\nimport { ICodeEditor } from '../../browser/editorBrowser.js';\nimport { EditorCommand, ServicesAccessor } from '../../browser/editorExtensions.js';\nimport { ICodeEditorService } from '../../browser/services/codeEditorService.js';\nimport { IInternalWebWorkerOptions, MonacoWebWorker, createWebWorker as actualCreateWebWorker } from './standaloneWebWorker.js';\nimport { ApplyUpdateResult, ConfigurationChangedEvent, EditorOptions } from '../../common/config/editorOptions.js';\nimport { EditorZoom } from '../../common/config/editorZoom.js';\nimport { BareFontInfo, FontInfo } from '../../common/config/fontInfo.js';\nimport { IPosition } from '../../common/core/position.js';\nimport { IRange } from '../../common/core/range.js';\nimport { EditorType, IDiffEditor } from '../../common/editorCommon.js';\nimport * as languages from '../../common/languages.js';\nimport { ILanguageService } from '../../common/languages/language.js';\nimport { PLAINTEXT_LANGUAGE_ID } from '../../common/languages/modesRegistry.js';\nimport { NullState, nullTokenize } from '../../common/languages/nullTokenize.js';\nimport { FindMatch, ITextModel, TextModelResolvedOptions } from '../../common/model.js';\nimport { IModelService } from '../../common/services/model.js';\nimport * as standaloneEnums from '../../common/standalone/standaloneEnums.js';\nimport { Colorizer, IColorizerElementOptions, IColorizerOptions } from './colorizer.js';\nimport { IActionDescriptor, IStandaloneCodeEditor, IStandaloneDiffEditor, IStandaloneDiffEditorConstructionOptions, IStandaloneEditorConstructionOptions, StandaloneDiffEditor2, StandaloneEditor, createTextModel } from './standaloneCodeEditor.js';\nimport { IEditorOverrideServices, StandaloneKeybindingService, StandaloneServices } from './standaloneServices.js';\nimport { StandaloneThemeService } from './standaloneThemeService.js';\nimport { IStandaloneThemeData, IStandaloneThemeService } from '../common/standaloneTheme.js';\nimport { IMenuItem, MenuId, MenuRegistry } from '../../../platform/actions/common/actions.js';\nimport { CommandsRegistry, ICommandHandler } from '../../../platform/commands/common/commands.js';\nimport { ContextKeyExpr } from '../../../platform/contextkey/common/contextkey.js';\nimport { ITextResourceEditorInput } from '../../../platform/editor/common/editor.js';\nimport { IKeybindingService } from '../../../platform/keybinding/common/keybinding.js';\nimport { IMarker, IMarkerData, IMarkerService } from '../../../platform/markers/common/markers.js';\nimport { IOpenerService } from '../../../platform/opener/common/opener.js';\nimport { MultiDiffEditorWidget } from '../../browser/widget/multiDiffEditor/multiDiffEditorWidget.js';\n\n/**\n * Create a new editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nexport function create(domElement: HTMLElement, options?: IStandaloneEditorConstructionOptions, override?: IEditorOverrideServices): IStandaloneCodeEditor {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn instantiationService.createInstance(StandaloneEditor, domElement, options);\n}\n\n/**\n * Emitted when an editor is created.\n * Creating a diff editor might cause this listener to be invoked with the two editors.\n * @event\n */\nexport function onDidCreateEditor(listener: (codeEditor: ICodeEditor) => void): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.onCodeEditorAdd((editor) => {\n\t\tlistener(<ICodeEditor>editor);\n\t});\n}\n\n/**\n * Emitted when an diff editor is created.\n * @event\n */\nexport function onDidCreateDiffEditor(listener: (diffEditor: IDiffEditor) => void): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.onDiffEditorAdd((editor) => {\n\t\tlistener(<IDiffEditor>editor);\n\t});\n}\n\n/**\n * Get all the created editors.\n */\nexport function getEditors(): readonly ICodeEditor[] {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.listCodeEditors();\n}\n\n/**\n * Get all the created diff editors.\n */\nexport function getDiffEditors(): readonly IDiffEditor[] {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.listDiffEditors();\n}\n\n/**\n * Create a new diff editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nexport function createDiffEditor(domElement: HTMLElement, options?: IStandaloneDiffEditorConstructionOptions, override?: IEditorOverrideServices): IStandaloneDiffEditor {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn instantiationService.createInstance(StandaloneDiffEditor2, domElement, options);\n}\n\nexport function createMultiFileDiffEditor(domElement: HTMLElement, override?: IEditorOverrideServices) {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn new MultiDiffEditorWidget(domElement, {}, instantiationService);\n}\n\n/**\n * Description of a command contribution\n */\nexport interface ICommandDescriptor {\n\t/**\n\t * An unique identifier of the contributed command.\n\t */\n\tid: string;\n\t/**\n\t * Callback that will be executed when the command is triggered.\n\t */\n\trun: ICommandHandler;\n}\n\n/**\n * Add a command.\n */\nexport function addCommand(descriptor: ICommandDescriptor): IDisposable {\n\tif ((typeof descriptor.id !== 'string') || (typeof descriptor.run !== 'function')) {\n\t\tthrow new Error('Invalid command descriptor, `id` and `run` are required properties!');\n\t}\n\treturn CommandsRegistry.registerCommand(descriptor.id, descriptor.run);\n}\n\n/**\n * Add an action to all editors.\n */\nexport function addEditorAction(descriptor: IActionDescriptor): IDisposable {\n\tif ((typeof descriptor.id !== 'string') || (typeof descriptor.label !== 'string') || (typeof descriptor.run !== 'function')) {\n\t\tthrow new Error('Invalid action descriptor, `id`, `label` and `run` are required properties!');\n\t}\n\n\tconst precondition = ContextKeyExpr.deserialize(descriptor.precondition);\n\tconst run = (accessor: ServicesAccessor, ...args: any[]): void | Promise<void> => {\n\t\treturn EditorCommand.runEditorCommand(accessor, args, precondition, (accessor, editor, args) => Promise.resolve(descriptor.run(editor, ...args)));\n\t};\n\n\tconst toDispose = new DisposableStore();\n\n\t// Register the command\n\ttoDispose.add(CommandsRegistry.registerCommand(descriptor.id, run));\n\n\t// Register the context menu item\n\tif (descriptor.contextMenuGroupId) {\n\t\tconst menuItem: IMenuItem = {\n\t\t\tcommand: {\n\t\t\t\tid: descriptor.id,\n\t\t\t\ttitle: descriptor.label\n\t\t\t},\n\t\t\twhen: precondition,\n\t\t\tgroup: descriptor.contextMenuGroupId,\n\t\t\torder: descriptor.contextMenuOrder || 0\n\t\t};\n\t\ttoDispose.add(MenuRegistry.appendMenuItem(MenuId.EditorContext, menuItem));\n\t}\n\n\t// Register the keybindings\n\tif (Array.isArray(descriptor.keybindings)) {\n\t\tconst keybindingService = StandaloneServices.get(IKeybindingService);\n\t\tif (!(keybindingService instanceof StandaloneKeybindingService)) {\n\t\t\tconsole.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n\t\t} else {\n\t\t\tconst keybindingsWhen = ContextKeyExpr.and(precondition, ContextKeyExpr.deserialize(descriptor.keybindingContext));\n\t\t\ttoDispose.add(keybindingService.addDynamicKeybindings(descriptor.keybindings.map((keybinding) => {\n\t\t\t\treturn {\n\t\t\t\t\tkeybinding,\n\t\t\t\t\tcommand: descriptor.id,\n\t\t\t\t\twhen: keybindingsWhen\n\t\t\t\t};\n\t\t\t})));\n\t\t}\n\t}\n\n\treturn toDispose;\n}\n\n/**\n * A keybinding rule.\n */\nexport interface IKeybindingRule {\n\tkeybinding: number;\n\tcommand?: string | null;\n\tcommandArgs?: any;\n\twhen?: string | null;\n}\n\n/**\n * Add a keybinding rule.\n */\nexport function addKeybindingRule(rule: IKeybindingRule): IDisposable {\n\treturn addKeybindingRules([rule]);\n}\n\n/**\n * Add keybinding rules.\n */\nexport function addKeybindingRules(rules: IKeybindingRule[]): IDisposable {\n\tconst keybindingService = StandaloneServices.get(IKeybindingService);\n\tif (!(keybindingService instanceof StandaloneKeybindingService)) {\n\t\tconsole.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n\t\treturn Disposable.None;\n\t}\n\n\treturn keybindingService.addDynamicKeybindings(rules.map((rule) => {\n\t\treturn {\n\t\t\tkeybinding: rule.keybinding,\n\t\t\tcommand: rule.command,\n\t\t\tcommandArgs: rule.commandArgs,\n\t\t\twhen: ContextKeyExpr.deserialize(rule.when),\n\t\t};\n\t}));\n}\n\n/**\n * Create a new editor model.\n * You can specify the language that should be set for this model or let the language be inferred from the `uri`.\n */\nexport function createModel(value: string, language?: string, uri?: URI): ITextModel {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst languageId = languageService.getLanguageIdByMimeType(language) || language;\n\treturn createTextModel(\n\t\tStandaloneServices.get(IModelService),\n\t\tlanguageService,\n\t\tvalue,\n\t\tlanguageId,\n\t\turi\n\t);\n}\n\n/**\n * Change the language for a model.\n */\nexport function setModelLanguage(model: ITextModel, mimeTypeOrLanguageId: string): void {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst languageId = languageService.getLanguageIdByMimeType(mimeTypeOrLanguageId) || mimeTypeOrLanguageId || PLAINTEXT_LANGUAGE_ID;\n\tmodel.setLanguage(languageService.createById(languageId));\n}\n\n/**\n * Set the markers for a model.\n */\nexport function setModelMarkers(model: ITextModel, owner: string, markers: IMarkerData[]): void {\n\tif (model) {\n\t\tconst markerService = StandaloneServices.get(IMarkerService);\n\t\tmarkerService.changeOne(owner, model.uri, markers);\n\t}\n}\n\n/**\n * Remove all markers of an owner.\n */\nexport function removeAllMarkers(owner: string) {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\tmarkerService.changeAll(owner, []);\n}\n\n/**\n * Get markers for owner and/or resource\n *\n * @returns list of markers\n */\nexport function getModelMarkers(filter: { owner?: string; resource?: URI; take?: number }): IMarker[] {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\treturn markerService.read(filter);\n}\n\n/**\n * Emitted when markers change for a model.\n * @event\n */\nexport function onDidChangeMarkers(listener: (e: readonly URI[]) => void): IDisposable {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\treturn markerService.onMarkerChanged(listener);\n}\n\n/**\n * Get the model that has `uri` if it exists.\n */\nexport function getModel(uri: URI): ITextModel | null {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.getModel(uri);\n}\n\n/**\n * Get all the created models.\n */\nexport function getModels(): ITextModel[] {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.getModels();\n}\n\n/**\n * Emitted when a model is created.\n * @event\n */\nexport function onDidCreateModel(listener: (model: ITextModel) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelAdded(listener);\n}\n\n/**\n * Emitted right before a model is disposed.\n * @event\n */\nexport function onWillDisposeModel(listener: (model: ITextModel) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelRemoved(listener);\n}\n\n/**\n * Emitted when a different language is set to a model.\n * @event\n */\nexport function onDidChangeModelLanguage(listener: (e: { readonly model: ITextModel; readonly oldLanguage: string }) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelLanguageChanged((e) => {\n\t\tlistener({\n\t\t\tmodel: e.model,\n\t\t\toldLanguage: e.oldLanguageId\n\t\t});\n\t});\n}\n\n/**\n * Create a new web worker that has model syncing capabilities built in.\n * Specify an AMD module to load that will `create` an object that will be proxied.\n */\nexport function createWebWorker<T extends object>(opts: IInternalWebWorkerOptions): MonacoWebWorker<T> {\n\treturn actualCreateWebWorker<T>(StandaloneServices.get(IModelService), opts);\n}\n\n/**\n * Colorize the contents of `domNode` using attribute `data-lang`.\n */\nexport function colorizeElement(domNode: HTMLElement, options: IColorizerElementOptions): Promise<void> {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\treturn Colorizer.colorizeElement(themeService, languageService, domNode, options).then(() => {\n\t\tthemeService.registerEditorContainer(domNode);\n\t});\n}\n\n/**\n * Colorize `text` using language `languageId`.\n */\nexport function colorize(text: string, languageId: string, options: IColorizerOptions): Promise<string> {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\tthemeService.registerEditorContainer(mainWindow.document.body);\n\treturn Colorizer.colorize(languageService, text, languageId, options);\n}\n\n/**\n * Colorize a line in a model.\n */\nexport function colorizeModelLine(model: ITextModel, lineNumber: number, tabSize: number = 4): string {\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\tthemeService.registerEditorContainer(mainWindow.document.body);\n\treturn Colorizer.colorizeModelLine(model, lineNumber, tabSize);\n}\n\n/**\n * @internal\n */\nfunction getSafeTokenizationSupport(language: string): Omit<languages.ITokenizationSupport, 'tokenizeEncoded'> {\n\tconst tokenizationSupport = languages.TokenizationRegistry.get(language);\n\tif (tokenizationSupport) {\n\t\treturn tokenizationSupport;\n\t}\n\treturn {\n\t\tgetInitialState: () => NullState,\n\t\ttokenize: (line: string, hasEOL: boolean, state: languages.IState) => nullTokenize(language, state)\n\t};\n}\n\n/**\n * Tokenize `text` using language `languageId`\n */\nexport function tokenize(text: string, languageId: string): languages.Token[][] {\n\t// Needed in order to get the mode registered for subsequent look-ups\n\tlanguages.TokenizationRegistry.getOrCreate(languageId);\n\n\tconst tokenizationSupport = getSafeTokenizationSupport(languageId);\n\tconst lines = splitLines(text);\n\tconst result: languages.Token[][] = [];\n\tlet state = tokenizationSupport.getInitialState();\n\tfor (let i = 0, len = lines.length; i < len; i++) {\n\t\tconst line = lines[i];\n\t\tconst tokenizationResult = tokenizationSupport.tokenize(line, true, state);\n\n\t\tresult[i] = tokenizationResult.tokens;\n\t\tstate = tokenizationResult.endState;\n\t}\n\treturn result;\n}\n\n/**\n * Define a new theme or update an existing theme.\n */\nexport function defineTheme(themeName: string, themeData: IStandaloneThemeData): void {\n\tconst standaloneThemeService = StandaloneServices.get(IStandaloneThemeService);\n\tstandaloneThemeService.defineTheme(themeName, themeData);\n}\n\n/**\n * Switches to a theme.\n */\nexport function setTheme(themeName: string): void {\n\tconst standaloneThemeService = StandaloneServices.get(IStandaloneThemeService);\n\tstandaloneThemeService.setTheme(themeName);\n}\n\n/**\n * Clears all cached font measurements and triggers re-measurement.\n */\nexport function remeasureFonts(): void {\n\tFontMeasurements.clearAllFontInfos();\n}\n\n/**\n * Register a command.\n */\nexport function registerCommand(id: string, handler: (accessor: any, ...args: any[]) => void): IDisposable {\n\treturn CommandsRegistry.registerCommand({ id, handler });\n}\n\nexport interface ILinkOpener {\n\topen(resource: URI): boolean | Promise<boolean>;\n}\n\n/**\n * Registers a handler that is called when a link is opened in any editor. The handler callback should return `true` if the link was handled and `false` otherwise.\n * The handler that was registered last will be called first when a link is opened.\n *\n * Returns a disposable that can unregister the opener again.\n */\nexport function registerLinkOpener(opener: ILinkOpener): IDisposable {\n\tconst openerService = StandaloneServices.get(IOpenerService);\n\treturn openerService.registerOpener({\n\t\tasync open(resource: string | URI) {\n\t\t\tif (typeof resource === 'string') {\n\t\t\t\tresource = URI.parse(resource);\n\t\t\t}\n\t\t\treturn opener.open(resource);\n\t\t}\n\t});\n}\n\n/**\n * Represents an object that can handle editor open operations (e.g. when \"go to definition\" is called\n * with a resource other than the current model).\n */\nexport interface ICodeEditorOpener {\n\t/**\n\t * Callback that is invoked when a resource other than the current model should be opened (e.g. when \"go to definition\" is called).\n\t * The callback should return `true` if the request was handled and `false` otherwise.\n\t * @param source The code editor instance that initiated the request.\n\t * @param resource The URI of the resource that should be opened.\n\t * @param selectionOrPosition An optional position or selection inside the model corresponding to `resource` that can be used to set the cursor.\n\t */\n\topenCodeEditor(source: ICodeEditor, resource: URI, selectionOrPosition?: IRange | IPosition): boolean | Promise<boolean>;\n}\n\n/**\n * Registers a handler that is called when a resource other than the current model should be opened in the editor (e.g. \"go to definition\").\n * The handler callback should return `true` if the request was handled and `false` otherwise.\n *\n * Returns a disposable that can unregister the opener again.\n *\n * If no handler is registered the default behavior is to do nothing for models other than the currently attached one.\n */\nexport function registerEditorOpener(opener: ICodeEditorOpener): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.registerCodeEditorOpenHandler(async (input: ITextResourceEditorInput, source: ICodeEditor | null, sideBySide?: boolean) => {\n\t\tif (!source) {\n\t\t\treturn null;\n\t\t}\n\t\tconst selection = input.options?.selection;\n\t\tlet selectionOrPosition: IRange | IPosition | undefined;\n\t\tif (selection && typeof selection.endLineNumber === 'number' && typeof selection.endColumn === 'number') {\n\t\t\tselectionOrPosition = <IRange>selection;\n\t\t} else if (selection) {\n\t\t\tselectionOrPosition = { lineNumber: selection.startLineNumber, column: selection.startColumn };\n\t\t}\n\t\tif (await opener.openCodeEditor(source, input.resource, selectionOrPosition)) {\n\t\t\treturn source; // return source editor to indicate that this handler has successfully handled the opening\n\t\t}\n\t\treturn null; // fallback to other registered handlers\n\t});\n}\n\n/**\n * @internal\n */\nexport function createMonacoEditorAPI(): typeof monaco.editor {\n\treturn {\n\t\t// methods\n\t\tcreate: <any>create,\n\t\tgetEditors: <any>getEditors,\n\t\tgetDiffEditors: <any>getDiffEditors,\n\t\tonDidCreateEditor: <any>onDidCreateEditor,\n\t\tonDidCreateDiffEditor: <any>onDidCreateDiffEditor,\n\t\tcreateDiffEditor: <any>createDiffEditor,\n\n\t\taddCommand: <any>addCommand,\n\t\taddEditorAction: <any>addEditorAction,\n\t\taddKeybindingRule: <any>addKeybindingRule,\n\t\taddKeybindingRules: <any>addKeybindingRules,\n\n\t\tcreateModel: <any>createModel,\n\t\tsetModelLanguage: <any>setModelLanguage,\n\t\tsetModelMarkers: <any>setModelMarkers,\n\t\tgetModelMarkers: <any>getModelMarkers,\n\t\tremoveAllMarkers: removeAllMarkers,\n\t\tonDidChangeMarkers: <any>onDidChangeMarkers,\n\t\tgetModels: <any>getModels,\n\t\tgetModel: <any>getModel,\n\t\tonDidCreateModel: <any>onDidCreateModel,\n\t\tonWillDisposeModel: <any>onWillDisposeModel,\n\t\tonDidChangeModelLanguage: <any>onDidChangeModelLanguage,\n\n\n\t\tcreateWebWorker: <any>createWebWorker,\n\t\tcolorizeElement: <any>colorizeElement,\n\t\tcolorize: <any>colorize,\n\t\tcolorizeModelLine: <any>colorizeModelLine,\n\t\ttokenize: <any>tokenize,\n\t\tdefineTheme: <any>defineTheme,\n\t\tsetTheme: <any>setTheme,\n\t\tremeasureFonts: remeasureFonts,\n\t\tregisterCommand: registerCommand,\n\n\t\tregisterLinkOpener: registerLinkOpener,\n\t\tregisterEditorOpener: <any>registerEditorOpener,\n\n\t\t// enums\n\t\tAccessibilitySupport: standaloneEnums.AccessibilitySupport,\n\t\tContentWidgetPositionPreference: standaloneEnums.ContentWidgetPositionPreference,\n\t\tCursorChangeReason: standaloneEnums.CursorChangeReason,\n\t\tDefaultEndOfLine: standaloneEnums.DefaultEndOfLine,\n\t\tEditorAutoIndentStrategy: standaloneEnums.EditorAutoIndentStrategy,\n\t\tEditorOption: standaloneEnums.EditorOption,\n\t\tEndOfLinePreference: standaloneEnums.EndOfLinePreference,\n\t\tEndOfLineSequence: standaloneEnums.EndOfLineSequence,\n\t\tMinimapPosition: standaloneEnums.MinimapPosition,\n\t\tMinimapSectionHeaderStyle: standaloneEnums.MinimapSectionHeaderStyle,\n\t\tMouseTargetType: standaloneEnums.MouseTargetType,\n\t\tOverlayWidgetPositionPreference: standaloneEnums.OverlayWidgetPositionPreference,\n\t\tOverviewRulerLane: standaloneEnums.OverviewRulerLane,\n\t\tGlyphMarginLane: standaloneEnums.GlyphMarginLane,\n\t\tRenderLineNumbersType: standaloneEnums.RenderLineNumbersType,\n\t\tRenderMinimap: standaloneEnums.RenderMinimap,\n\t\tScrollbarVisibility: standaloneEnums.ScrollbarVisibility,\n\t\tScrollType: standaloneEnums.ScrollType,\n\t\tTextEditorCursorBlinkingStyle: standaloneEnums.TextEditorCursorBlinkingStyle,\n\t\tTextEditorCursorStyle: standaloneEnums.TextEditorCursorStyle,\n\t\tTrackedRangeStickiness: standaloneEnums.TrackedRangeStickiness,\n\t\tWrappingIndent: standaloneEnums.WrappingIndent,\n\t\tInjectedTextCursorStops: standaloneEnums.InjectedTextCursorStops,\n\t\tPositionAffinity: standaloneEnums.PositionAffinity,\n\t\tShowLightbulbIconMode: standaloneEnums.ShowLightbulbIconMode,\n\t\tTextDirection: standaloneEnums.TextDirection,\n\n\t\t// classes\n\t\tConfigurationChangedEvent: <any>ConfigurationChangedEvent,\n\t\tBareFontInfo: <any>BareFontInfo,\n\t\tFontInfo: <any>FontInfo,\n\t\tTextModelResolvedOptions: <any>TextModelResolvedOptions,\n\t\tFindMatch: <any>FindMatch,\n\t\tApplyUpdateResult: <any>ApplyUpdateResult,\n\t\tEditorZoom: <any>EditorZoom,\n\n\t\tcreateMultiFileDiffEditor: <any>createMultiFileDiffEditor,\n\n\t\t// vars\n\t\tEditorType: EditorType,\n\t\tEditorOptions: <any>EditorOptions\n\n\t};\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { mainWindow } from '../../../base/browser/window.js';\nimport { Disposable, DisposableStore, IDisposable } from '../../../base/common/lifecycle.js';\nimport { splitLines } from '../../../base/common/strings.js';\nimport { URI } from '../../../base/common/uri.js';\nimport './standalone-tokens.css';\nimport { FontMeasurements } from '../../browser/config/fontMeasurements.js';\nimport { ICodeEditor } from '../../browser/editorBrowser.js';\nimport { EditorCommand, ServicesAccessor } from '../../browser/editorExtensions.js';\nimport { ICodeEditorService } from '../../browser/services/codeEditorService.js';\nimport { IInternalWebWorkerOptions, MonacoWebWorker, createWebWorker as actualCreateWebWorker } from './standaloneWebWorker.js';\nimport { ApplyUpdateResult, ConfigurationChangedEvent, EditorOptions } from '../../common/config/editorOptions.js';\nimport { EditorZoom } from '../../common/config/editorZoom.js';\nimport { BareFontInfo, FontInfo } from '../../common/config/fontInfo.js';\nimport { IPosition } from '../../common/core/position.js';\nimport { IRange } from '../../common/core/range.js';\nimport { EditorType, IDiffEditor } from '../../common/editorCommon.js';\nimport * as languages from '../../common/languages.js';\nimport { ILanguageService } from '../../common/languages/language.js';\nimport { PLAINTEXT_LANGUAGE_ID } from '../../common/languages/modesRegistry.js';\nimport { NullState, nullTokenize } from '../../common/languages/nullTokenize.js';\nimport { FindMatch, ITextModel, TextModelResolvedOptions } from '../../common/model.js';\nimport { IModelService } from '../../common/services/model.js';\nimport * as standaloneEnums from '../../common/standalone/standaloneEnums.js';\nimport { Colorizer, IColorizerElementOptions, IColorizerOptions } from './colorizer.js';\nimport { IActionDescriptor, IStandaloneCodeEditor, IStandaloneDiffEditor, IStandaloneDiffEditorConstructionOptions, IStandaloneEditorConstructionOptions, StandaloneDiffEditor2, StandaloneEditor, createTextModel } from './standaloneCodeEditor.js';\nimport { IEditorOverrideServices, StandaloneKeybindingService, StandaloneServices } from './standaloneServices.js';\nimport { StandaloneThemeService } from './standaloneThemeService.js';\nimport { IStandaloneThemeData, IStandaloneThemeService } from '../common/standaloneTheme.js';\nimport { IMenuItem, MenuId, MenuRegistry } from '../../../platform/actions/common/actions.js';\nimport { CommandsRegistry, ICommandHandler } from '../../../platform/commands/common/commands.js';\nimport { ContextKeyExpr } from '../../../platform/contextkey/common/contextkey.js';\nimport { ITextResourceEditorInput } from '../../../platform/editor/common/editor.js';\nimport { IKeybindingService } from '../../../platform/keybinding/common/keybinding.js';\nimport { IMarker, IMarkerData, IMarkerService } from '../../../platform/markers/common/markers.js';\nimport { IOpenerService } from '../../../platform/opener/common/opener.js';\nimport { MultiDiffEditorWidget } from '../../browser/widget/multiDiffEditor/multiDiffEditorWidget.js';\n\n/**\n * Create a new editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nexport function create(domElement: HTMLElement, options?: IStandaloneEditorConstructionOptions, override?: IEditorOverrideServices): IStandaloneCodeEditor {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn instantiationService.createInstance(StandaloneEditor, domElement, options);\n}\n\n/**\n * Emitted when an editor is created.\n * Creating a diff editor might cause this listener to be invoked with the two editors.\n * @event\n */\nexport function onDidCreateEditor(listener: (codeEditor: ICodeEditor) => void): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.onCodeEditorAdd((editor) => {\n\t\tlistener(<ICodeEditor>editor);\n\t});\n}\n\n/**\n * Emitted when an diff editor is created.\n * @event\n */\nexport function onDidCreateDiffEditor(listener: (diffEditor: IDiffEditor) => void): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.onDiffEditorAdd((editor) => {\n\t\tlistener(<IDiffEditor>editor);\n\t});\n}\n\n/**\n * Get all the created editors.\n */\nexport function getEditors(): readonly ICodeEditor[] {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.listCodeEditors();\n}\n\n/**\n * Get all the created diff editors.\n */\nexport function getDiffEditors(): readonly IDiffEditor[] {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.listDiffEditors();\n}\n\n/**\n * Create a new diff editor under `domElement`.\n * `domElement` should be empty (not contain other dom nodes).\n * The editor will read the size of `domElement`.\n */\nexport function createDiffEditor(domElement: HTMLElement, options?: IStandaloneDiffEditorConstructionOptions, override?: IEditorOverrideServices): IStandaloneDiffEditor {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn instantiationService.createInstance(StandaloneDiffEditor2, domElement, options);\n}\n\nexport function createMultiFileDiffEditor(domElement: HTMLElement, override?: IEditorOverrideServices) {\n\tconst instantiationService = StandaloneServices.initialize(override || {});\n\treturn new MultiDiffEditorWidget(domElement, {}, instantiationService);\n}\n\n/**\n * Description of a command contribution\n */\nexport interface ICommandDescriptor {\n\t/**\n\t * An unique identifier of the contributed command.\n\t */\n\tid: string;\n\t/**\n\t * Callback that will be executed when the command is triggered.\n\t */\n\trun: ICommandHandler;\n}\n\n/**\n * Add a command.\n */\nexport function addCommand(descriptor: ICommandDescriptor): IDisposable {\n\tif ((typeof descriptor.id !== 'string') || (typeof descriptor.run !== 'function')) {\n\t\tthrow new Error('Invalid command descriptor, `id` and `run` are required properties!');\n\t}\n\treturn CommandsRegistry.registerCommand(descriptor.id, descriptor.run);\n}\n\n/**\n * Add an action to all editors.\n */\nexport function addEditorAction(descriptor: IActionDescriptor): IDisposable {\n\tif ((typeof descriptor.id !== 'string') || (typeof descriptor.label !== 'string') || (typeof descriptor.run !== 'function')) {\n\t\tthrow new Error('Invalid action descriptor, `id`, `label` and `run` are required properties!');\n\t}\n\n\tconst precondition = ContextKeyExpr.deserialize(descriptor.precondition);\n\tconst run = (accessor: ServicesAccessor, ...args: any[]): void | Promise<void> => {\n\t\treturn EditorCommand.runEditorCommand(accessor, args, precondition, (accessor, editor, args) => Promise.resolve(descriptor.run(editor, ...args)));\n\t};\n\n\tconst toDispose = new DisposableStore();\n\n\t// Register the command\n\ttoDispose.add(CommandsRegistry.registerCommand(descriptor.id, run));\n\n\t// Register the context menu item\n\tif (descriptor.contextMenuGroupId) {\n\t\tconst menuItem: IMenuItem = {\n\t\t\tcommand: {\n\t\t\t\tid: descriptor.id,\n\t\t\t\ttitle: descriptor.label\n\t\t\t},\n\t\t\twhen: precondition,\n\t\t\tgroup: descriptor.contextMenuGroupId,\n\t\t\torder: descriptor.contextMenuOrder || 0\n\t\t};\n\t\ttoDispose.add(MenuRegistry.appendMenuItem(MenuId.EditorContext, menuItem));\n\t}\n\n\t// Register the keybindings\n\tif (Array.isArray(descriptor.keybindings)) {\n\t\tconst keybindingService = StandaloneServices.get(IKeybindingService);\n\t\tif (!(keybindingService instanceof StandaloneKeybindingService)) {\n\t\t\tconsole.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n\t\t} else {\n\t\t\tconst keybindingsWhen = ContextKeyExpr.and(precondition, ContextKeyExpr.deserialize(descriptor.keybindingContext));\n\t\t\ttoDispose.add(keybindingService.addDynamicKeybindings(descriptor.keybindings.map((keybinding) => {\n\t\t\t\treturn {\n\t\t\t\t\tkeybinding,\n\t\t\t\t\tcommand: descriptor.id,\n\t\t\t\t\twhen: keybindingsWhen\n\t\t\t\t};\n\t\t\t})));\n\t\t}\n\t}\n\n\treturn toDispose;\n}\n\n/**\n * A keybinding rule.\n */\nexport interface IKeybindingRule {\n\tkeybinding: number;\n\tcommand?: string | null;\n\tcommandArgs?: any;\n\twhen?: string | null;\n}\n\n/**\n * Add a keybinding rule.\n */\nexport function addKeybindingRule(rule: IKeybindingRule): IDisposable {\n\treturn addKeybindingRules([rule]);\n}\n\n/**\n * Add keybinding rules.\n */\nexport function addKeybindingRules(rules: IKeybindingRule[]): IDisposable {\n\tconst keybindingService = StandaloneServices.get(IKeybindingService);\n\tif (!(keybindingService instanceof StandaloneKeybindingService)) {\n\t\tconsole.warn('Cannot add keybinding because the editor is configured with an unrecognized KeybindingService');\n\t\treturn Disposable.None;\n\t}\n\n\treturn keybindingService.addDynamicKeybindings(rules.map((rule) => {\n\t\treturn {\n\t\t\tkeybinding: rule.keybinding,\n\t\t\tcommand: rule.command,\n\t\t\tcommandArgs: rule.commandArgs,\n\t\t\twhen: ContextKeyExpr.deserialize(rule.when),\n\t\t};\n\t}));\n}\n\n/**\n * Create a new editor model.\n * You can specify the language that should be set for this model or let the language be inferred from the `uri`.\n */\nexport function createModel(value: string, language?: string, uri?: URI): ITextModel {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst languageId = languageService.getLanguageIdByMimeType(language) || language;\n\treturn createTextModel(\n\t\tStandaloneServices.get(IModelService),\n\t\tlanguageService,\n\t\tvalue,\n\t\tlanguageId,\n\t\turi\n\t);\n}\n\n/**\n * Change the language for a model.\n */\nexport function setModelLanguage(model: ITextModel, mimeTypeOrLanguageId: string): void {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst languageId = languageService.getLanguageIdByMimeType(mimeTypeOrLanguageId) || mimeTypeOrLanguageId || PLAINTEXT_LANGUAGE_ID;\n\tmodel.setLanguage(languageService.createById(languageId));\n}\n\n/**\n * Set the markers for a model.\n */\nexport function setModelMarkers(model: ITextModel, owner: string, markers: IMarkerData[]): void {\n\tif (model) {\n\t\tconst markerService = StandaloneServices.get(IMarkerService);\n\t\tmarkerService.changeOne(owner, model.uri, markers);\n\t}\n}\n\n/**\n * Remove all markers of an owner.\n */\nexport function removeAllMarkers(owner: string) {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\tmarkerService.changeAll(owner, []);\n}\n\n/**\n * Get markers for owner and/or resource\n *\n * @returns list of markers\n */\nexport function getModelMarkers(filter: { owner?: string; resource?: URI; take?: number }): IMarker[] {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\treturn markerService.read(filter);\n}\n\n/**\n * Emitted when markers change for a model.\n * @event\n */\nexport function onDidChangeMarkers(listener: (e: readonly URI[]) => void): IDisposable {\n\tconst markerService = StandaloneServices.get(IMarkerService);\n\treturn markerService.onMarkerChanged(listener);\n}\n\n/**\n * Get the model that has `uri` if it exists.\n */\nexport function getModel(uri: URI): ITextModel | null {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.getModel(uri);\n}\n\n/**\n * Get all the created models.\n */\nexport function getModels(): ITextModel[] {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.getModels();\n}\n\n/**\n * Emitted when a model is created.\n * @event\n */\nexport function onDidCreateModel(listener: (model: ITextModel) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelAdded(listener);\n}\n\n/**\n * Emitted right before a model is disposed.\n * @event\n */\nexport function onWillDisposeModel(listener: (model: ITextModel) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelRemoved(listener);\n}\n\n/**\n * Emitted when a different language is set to a model.\n * @event\n */\nexport function onDidChangeModelLanguage(listener: (e: { readonly model: ITextModel; readonly oldLanguage: string }) => void): IDisposable {\n\tconst modelService = StandaloneServices.get(IModelService);\n\treturn modelService.onModelLanguageChanged((e) => {\n\t\tlistener({\n\t\t\tmodel: e.model,\n\t\t\toldLanguage: e.oldLanguageId\n\t\t});\n\t});\n}\n\n/**\n * Create a new web worker that has model syncing capabilities built in.\n * Specify an AMD module to load that will `create` an object that will be proxied.\n */\nexport function createWebWorker<T extends object>(opts: IInternalWebWorkerOptions): MonacoWebWorker<T> {\n\treturn actualCreateWebWorker<T>(StandaloneServices.get(IModelService), opts);\n}\n\n/**\n * Colorize the contents of `domNode` using attribute `data-lang`.\n */\nexport function colorizeElement(domNode: HTMLElement, options: IColorizerElementOptions): Promise<void> {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\treturn Colorizer.colorizeElement(themeService, languageService, domNode, options).then(() => {\n\t\tthemeService.registerEditorContainer(domNode);\n\t});\n}\n\n/**\n * Colorize `text` using language `languageId`.\n */\nexport function colorize(text: string, languageId: string, options: IColorizerOptions): Promise<string> {\n\tconst languageService = StandaloneServices.get(ILanguageService);\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\tthemeService.registerEditorContainer(mainWindow.document.body);\n\treturn Colorizer.colorize(languageService, text, languageId, options);\n}\n\n/**\n * Colorize a line in a model.\n */\nexport function colorizeModelLine(model: ITextModel, lineNumber: number, tabSize: number = 4): string {\n\tconst themeService = <StandaloneThemeService>StandaloneServices.get(IStandaloneThemeService);\n\tthemeService.registerEditorContainer(mainWindow.document.body);\n\treturn Colorizer.colorizeModelLine(model, lineNumber, tabSize);\n}\n\n/**\n * @internal\n */\nfunction getSafeTokenizationSupport(language: string): Omit<languages.ITokenizationSupport, 'tokenizeEncoded'> {\n\tconst tokenizationSupport = languages.TokenizationRegistry.get(language);\n\tif (tokenizationSupport) {\n\t\treturn tokenizationSupport;\n\t}\n\treturn {\n\t\tgetInitialState: () => NullState,\n\t\ttokenize: (line: string, hasEOL: boolean, state: languages.IState) => nullTokenize(language, state)\n\t};\n}\n\n/**\n * Tokenize `text` using language `languageId`\n */\nexport function tokenize(text: string, languageId: string): languages.Token[][] {\n\t// Needed in order to get the mode registered for subsequent look-ups\n\tlanguages.TokenizationRegistry.getOrCreate(languageId);\n\n\tconst tokenizationSupport = getSafeTokenizationSupport(languageId);\n\tconst lines = splitLines(text);\n\tconst result: languages.Token[][] = [];\n\tlet state = tokenizationSupport.getInitialState();\n\tfor (let i = 0, len = lines.length; i < len; i++) {\n\t\tconst line = lines[i];\n\t\tconst tokenizationResult = tokenizationSupport.tokenize(line, true, state);\n\n\t\tresult[i] = tokenizationResult.tokens;\n\t\tstate = tokenizationResult.endState;\n\t}\n\treturn result;\n}\n\n/**\n * Define a new theme or update an existing theme.\n */\nexport function defineTheme(themeName: string, themeData: IStandaloneThemeData): void {\n\tconst standaloneThemeService = StandaloneServices.get(IStandaloneThemeService);\n\tstandaloneThemeService.defineTheme(themeName, themeData);\n}\n\n/**\n * Switches to a theme.\n */\nexport function setTheme(themeName: string): void {\n\tconst standaloneThemeService = StandaloneServices.get(IStandaloneThemeService);\n\tstandaloneThemeService.setTheme(themeName);\n}\n\n/**\n * Clears all cached font measurements and triggers re-measurement.\n */\nexport function remeasureFonts(): void {\n\tFontMeasurements.clearAllFontInfos();\n}\n\n/**\n * Register a command.\n */\nexport function registerCommand(id: string, handler: (accessor: any, ...args: any[]) => void): IDisposable {\n\treturn CommandsRegistry.registerCommand({ id, handler });\n}\n\nexport interface ILinkOpener {\n\topen(resource: URI): boolean | Promise<boolean>;\n}\n\n/**\n * Registers a handler that is called when a link is opened in any editor. The handler callback should return `true` if the link was handled and `false` otherwise.\n * The handler that was registered last will be called first when a link is opened.\n *\n * Returns a disposable that can unregister the opener again.\n */\nexport function registerLinkOpener(opener: ILinkOpener): IDisposable {\n\tconst openerService = StandaloneServices.get(IOpenerService);\n\treturn openerService.registerOpener({\n\t\tasync open(resource: string | URI) {\n\t\t\tif (typeof resource === 'string') {\n\t\t\t\tresource = URI.parse(resource);\n\t\t\t}\n\t\t\treturn opener.open(resource);\n\t\t}\n\t});\n}\n\n/**\n * Represents an object that can handle editor open operations (e.g. when \"go to definition\" is called\n * with a resource other than the current model).\n */\nexport interface ICodeEditorOpener {\n\t/**\n\t * Callback that is invoked when a resource other than the current model should be opened (e.g. when \"go to definition\" is called).\n\t * The callback should return `true` if the request was handled and `false` otherwise.\n\t * @param source The code editor instance that initiated the request.\n\t * @param resource The URI of the resource that should be opened.\n\t * @param selectionOrPosition An optional position or selection inside the model corresponding to `resource` that can be used to set the cursor.\n\t */\n\topenCodeEditor(source: ICodeEditor, resource: URI, selectionOrPosition?: IRange | IPosition): boolean | Promise<boolean>;\n}\n\n/**\n * Registers a handler that is called when a resource other than the current model should be opened in the editor (e.g. \"go to definition\").\n * The handler callback should return `true` if the request was handled and `false` otherwise.\n *\n * Returns a disposable that can unregister the opener again.\n *\n * If no handler is registered the default behavior is to do nothing for models other than the currently attached one.\n */\nexport function registerEditorOpener(opener: ICodeEditorOpener): IDisposable {\n\tconst codeEditorService = StandaloneServices.get(ICodeEditorService);\n\treturn codeEditorService.registerCodeEditorOpenHandler(async (input: ITextResourceEditorInput, source: ICodeEditor | null, sideBySide?: boolean) => {\n\t\tif (!source) {\n\t\t\treturn null;\n\t\t}\n\t\tconst selection = input.options?.selection;\n\t\tlet selectionOrPosition: IRange | IPosition | undefined;\n\t\tif (selection && typeof selection.endLineNumber === 'number' && typeof selection.endColumn === 'number') {\n\t\t\tselectionOrPosition = <IRange>selection;\n\t\t} else if (selection) {\n\t\t\tselectionOrPosition = { lineNumber: selection.startLineNumber, column: selection.startColumn };\n\t\t}\n\t\tif (await opener.openCodeEditor(source, input.resource, selectionOrPosition)) {\n\t\t\treturn source; // return source editor to indicate that this handler has successfully handled the opening\n\t\t}\n\t\treturn null; // fallback to other registered handlers\n\t});\n}\n\n/**\n * @internal\n */\nexport function createMonacoEditorAPI(): typeof monaco.editor {\n\treturn {\n\t\t// methods\n\t\tcreate: <any>create,\n\t\tgetEditors: <any>getEditors,\n\t\tgetDiffEditors: <any>getDiffEditors,\n\t\tonDidCreateEditor: <any>onDidCreateEditor,\n\t\tonDidCreateDiffEditor: <any>onDidCreateDiffEditor,\n\t\tcreateDiffEditor: <any>createDiffEditor,\n\n\t\taddCommand: <any>addCommand,\n\t\taddEditorAction: <any>addEditorAction,\n\t\taddKeybindingRule: <any>addKeybindingRule,\n\t\taddKeybindingRules: <any>addKeybindingRules,\n\n\t\tcreateModel: <any>createModel,\n\t\tsetModelLanguage: <any>setModelLanguage,\n\t\tsetModelMarkers: <any>setModelMarkers,\n\t\tgetModelMarkers: <any>getModelMarkers,\n\t\tremoveAllMarkers: removeAllMarkers,\n\t\tonDidChangeMarkers: <any>onDidChangeMarkers,\n\t\tgetModels: <any>getModels,\n\t\tgetModel: <any>getModel,\n\t\tonDidCreateModel: <any>onDidCreateModel,\n\t\tonWillDisposeModel: <any>onWillDisposeModel,\n\t\tonDidChangeModelLanguage: <any>onDidChangeModelLanguage,\n\n\n\t\tcreateWebWorker: <any>createWebWorker,\n\t\tcolorizeElement: <any>colorizeElement,\n\t\tcolorize: <any>colorize,\n\t\tcolorizeModelLine: <any>colorizeModelLine,\n\t\ttokenize: <any>tokenize,\n\t\tdefineTheme: <any>defineTheme,\n\t\tsetTheme: <any>setTheme,\n\t\tremeasureFonts: remeasureFonts,\n\t\tregisterCommand: registerCommand,\n\n\t\tregisterLinkOpener: registerLinkOpener,\n\t\tregisterEditorOpener: <any>registerEditorOpener,\n\n\t\t// enums\n\t\tAccessibilitySupport: standaloneEnums.AccessibilitySupport,\n\t\tContentWidgetPositionPreference: standaloneEnums.ContentWidgetPositionPreference,\n\t\tCursorChangeReason: standaloneEnums.CursorChangeReason,\n\t\tDefaultEndOfLine: standaloneEnums.DefaultEndOfLine,\n\t\tEditorAutoIndentStrategy: standaloneEnums.EditorAutoIndentStrategy,\n\t\tEditorOption: standaloneEnums.EditorOption,\n\t\tEndOfLinePreference: standaloneEnums.EndOfLinePreference,\n\t\tEndOfLineSequence: standaloneEnums.EndOfLineSequence,\n\t\tMinimapPosition: standaloneEnums.MinimapPosition,\n\t\tMinimapSectionHeaderStyle: standaloneEnums.MinimapSectionHeaderStyle,\n\t\tMouseTargetType: standaloneEnums.MouseTargetType,\n\t\tOverlayWidgetPositionPreference: standaloneEnums.OverlayWidgetPositionPreference,\n\t\tOverviewRulerLane: standaloneEnums.OverviewRulerLane,\n\t\tGlyphMarginLane: standaloneEnums.GlyphMarginLane,\n\t\tRenderLineNumbersType: standaloneEnums.RenderLineNumbersType,\n\t\tRenderMinimap: standaloneEnums.RenderMinimap,\n\t\tScrollbarVisibility: standaloneEnums.ScrollbarVisibility,\n\t\tScrollType: standaloneEnums.ScrollType,\n\t\tTextEditorCursorBlinkingStyle: standaloneEnums.TextEditorCursorBlinkingStyle,\n\t\tTextEditorCursorStyle: standaloneEnums.TextEditorCursorStyle,\n\t\tTrackedRangeStickiness: standaloneEnums.TrackedRangeStickiness,\n\t\tWrappingIndent: standaloneEnums.WrappingIndent,\n\t\tInjectedTextCursorStops: standaloneEnums.InjectedTextCursorStops,\n\t\tPositionAffinity: standaloneEnums.PositionAffinity,\n\t\tShowLightbulbIconMode: standaloneEnums.ShowLightbulbIconMode,\n\t\tTextDirection: standaloneEnums.TextDirection,\n\n\t\t// classes\n\t\tConfigurationChangedEvent: <any>ConfigurationChangedEvent,\n\t\tBareFontInfo: <any>BareFontInfo,\n\t\tFontInfo: <any>FontInfo,\n\t\tTextModelResolvedOptions: <any>TextModelResolvedOptions,\n\t\tFindMatch: <any>FindMatch,\n\t\tApplyUpdateResult: <any>ApplyUpdateResult,\n\t\tEditorZoom: <any>EditorZoom,\n\n\t\tcreateMultiFileDiffEditor: <any>createMultiFileDiffEditor,\n\n\t\t// vars\n\t\tEditorType: EditorType,\n\t\tEditorOptions: <any>EditorOptions\n\n\t};\n}\n"]}
@@ -517,77 +517,42 @@ export function registerInlayHintsProvider(languageSelector, provider) {
517
517
  */
518
518
  export function createMonacoLanguagesAPI() {
519
519
  return {
520
- // eslint-disable-next-line local/code-no-any-casts
521
520
  register: register,
522
- // eslint-disable-next-line local/code-no-any-casts
523
521
  getLanguages: getLanguages,
524
- // eslint-disable-next-line local/code-no-any-casts
525
522
  onLanguage: onLanguage,
526
- // eslint-disable-next-line local/code-no-any-casts
527
523
  onLanguageEncountered: onLanguageEncountered,
528
- // eslint-disable-next-line local/code-no-any-casts
529
524
  getEncodedLanguageId: getEncodedLanguageId,
530
525
  // provider methods
531
- // eslint-disable-next-line local/code-no-any-casts
532
526
  setLanguageConfiguration: setLanguageConfiguration,
533
527
  setColorMap: setColorMap,
534
- // eslint-disable-next-line local/code-no-any-casts
535
528
  registerTokensProviderFactory: registerTokensProviderFactory,
536
- // eslint-disable-next-line local/code-no-any-casts
537
529
  setTokensProvider: setTokensProvider,
538
- // eslint-disable-next-line local/code-no-any-casts
539
530
  setMonarchTokensProvider: setMonarchTokensProvider,
540
- // eslint-disable-next-line local/code-no-any-casts
541
531
  registerReferenceProvider: registerReferenceProvider,
542
- // eslint-disable-next-line local/code-no-any-casts
543
532
  registerRenameProvider: registerRenameProvider,
544
- // eslint-disable-next-line local/code-no-any-casts
545
533
  registerNewSymbolNameProvider: registerNewSymbolNameProvider,
546
- // eslint-disable-next-line local/code-no-any-casts
547
534
  registerCompletionItemProvider: registerCompletionItemProvider,
548
- // eslint-disable-next-line local/code-no-any-casts
549
535
  registerSignatureHelpProvider: registerSignatureHelpProvider,
550
- // eslint-disable-next-line local/code-no-any-casts
551
536
  registerHoverProvider: registerHoverProvider,
552
- // eslint-disable-next-line local/code-no-any-casts
553
537
  registerDocumentSymbolProvider: registerDocumentSymbolProvider,
554
- // eslint-disable-next-line local/code-no-any-casts
555
538
  registerDocumentHighlightProvider: registerDocumentHighlightProvider,
556
- // eslint-disable-next-line local/code-no-any-casts
557
539
  registerLinkedEditingRangeProvider: registerLinkedEditingRangeProvider,
558
- // eslint-disable-next-line local/code-no-any-casts
559
540
  registerDefinitionProvider: registerDefinitionProvider,
560
- // eslint-disable-next-line local/code-no-any-casts
561
541
  registerImplementationProvider: registerImplementationProvider,
562
- // eslint-disable-next-line local/code-no-any-casts
563
542
  registerTypeDefinitionProvider: registerTypeDefinitionProvider,
564
- // eslint-disable-next-line local/code-no-any-casts
565
543
  registerCodeLensProvider: registerCodeLensProvider,
566
- // eslint-disable-next-line local/code-no-any-casts
567
544
  registerCodeActionProvider: registerCodeActionProvider,
568
- // eslint-disable-next-line local/code-no-any-casts
569
545
  registerDocumentFormattingEditProvider: registerDocumentFormattingEditProvider,
570
- // eslint-disable-next-line local/code-no-any-casts
571
546
  registerDocumentRangeFormattingEditProvider: registerDocumentRangeFormattingEditProvider,
572
- // eslint-disable-next-line local/code-no-any-casts
573
547
  registerOnTypeFormattingEditProvider: registerOnTypeFormattingEditProvider,
574
- // eslint-disable-next-line local/code-no-any-casts
575
548
  registerLinkProvider: registerLinkProvider,
576
- // eslint-disable-next-line local/code-no-any-casts
577
549
  registerColorProvider: registerColorProvider,
578
- // eslint-disable-next-line local/code-no-any-casts
579
550
  registerFoldingRangeProvider: registerFoldingRangeProvider,
580
- // eslint-disable-next-line local/code-no-any-casts
581
551
  registerDeclarationProvider: registerDeclarationProvider,
582
- // eslint-disable-next-line local/code-no-any-casts
583
552
  registerSelectionRangeProvider: registerSelectionRangeProvider,
584
- // eslint-disable-next-line local/code-no-any-casts
585
553
  registerDocumentSemanticTokensProvider: registerDocumentSemanticTokensProvider,
586
- // eslint-disable-next-line local/code-no-any-casts
587
554
  registerDocumentRangeSemanticTokensProvider: registerDocumentRangeSemanticTokensProvider,
588
- // eslint-disable-next-line local/code-no-any-casts
589
555
  registerInlineCompletionsProvider: registerInlineCompletionsProvider,
590
- // eslint-disable-next-line local/code-no-any-casts
591
556
  registerInlayHintsProvider: registerInlayHintsProvider,
592
557
  // enums
593
558
  DocumentHighlightKind: standaloneEnums.DocumentHighlightKind,
@@ -610,9 +575,7 @@ export function createMonacoLanguagesAPI() {
610
575
  InlineCompletionDisplayLocationKind: standaloneEnums.InlineCompletionDisplayLocationKind,
611
576
  // classes
612
577
  FoldingRangeKind: languages.FoldingRangeKind,
613
- // eslint-disable-next-line local/code-no-any-casts
614
578
  SelectedSuggestionInfo: languages.SelectedSuggestionInfo,
615
- // eslint-disable-next-line local/code-no-any-casts
616
579
  EditDeltaInfo: EditDeltaInfo,
617
580
  };
618
581
  }