{"version":3,"file":"static/js/2564_de38f237cb954e17fbb2.js","mappings":"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","sources":["file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/monaco-editor@0.50.0/node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditor/codeEditorContributions.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/monaco-editor@0.50.0/node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditor/codeEditorWidget.js","file:////home/runner/work/platform/platform/common/temp/node_modules/.pnpm/monaco-editor@0.50.0/node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditor/embeddedCodeEditorWidget.js"],"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 *--------------------------------------------------------------------------------------------*/\nimport { getWindow, runWhenWindowIdle } from '../../../../base/browser/dom.js';\nimport { onUnexpectedError } from '../../../../base/common/errors.js';\nimport { Disposable, DisposableMap } from '../../../../base/common/lifecycle.js';\nexport class CodeEditorContributions extends Disposable {\n constructor() {\n super();\n this._editor = null;\n this._instantiationService = null;\n /**\n * Contains all instantiated contributions.\n */\n this._instances = this._register(new DisposableMap());\n /**\n * Contains contributions which are not yet instantiated.\n */\n this._pending = new Map();\n /**\n * Tracks which instantiation kinds are still left in `_pending`.\n */\n this._finishedInstantiation = [];\n this._finishedInstantiation[0 /* EditorContributionInstantiation.Eager */] = false;\n this._finishedInstantiation[1 /* EditorContributionInstantiation.AfterFirstRender */] = false;\n this._finishedInstantiation[2 /* EditorContributionInstantiation.BeforeFirstInteraction */] = false;\n this._finishedInstantiation[3 /* EditorContributionInstantiation.Eventually */] = false;\n }\n initialize(editor, contributions, instantiationService) {\n this._editor = editor;\n this._instantiationService = instantiationService;\n for (const desc of contributions) {\n if (this._pending.has(desc.id)) {\n onUnexpectedError(new Error(`Cannot have two contributions with the same id ${desc.id}`));\n continue;\n }\n this._pending.set(desc.id, desc);\n }\n this._instantiateSome(0 /* EditorContributionInstantiation.Eager */);\n // AfterFirstRender\n // - these extensions will be instantiated at the latest 50ms after the first render.\n // - but if there is idle time, we will instantiate them sooner.\n this._register(runWhenWindowIdle(getWindow(this._editor.getDomNode()), () => {\n this._instantiateSome(1 /* EditorContributionInstantiation.AfterFirstRender */);\n }));\n // BeforeFirstInteraction\n // - these extensions will be instantiated at the latest before a mouse or a keyboard event.\n // - but if there is idle time, we will instantiate them sooner.\n this._register(runWhenWindowIdle(getWindow(this._editor.getDomNode()), () => {\n this._instantiateSome(2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n }));\n // Eventually\n // - these extensions will only be instantiated when there is idle time.\n // - since there is no guarantee that there will ever be idle time, we set a timeout of 5s here.\n this._register(runWhenWindowIdle(getWindow(this._editor.getDomNode()), () => {\n this._instantiateSome(3 /* EditorContributionInstantiation.Eventually */);\n }, 5000));\n }\n saveViewState() {\n const contributionsState = {};\n for (const [id, contribution] of this._instances) {\n if (typeof contribution.saveViewState === 'function') {\n contributionsState[id] = contribution.saveViewState();\n }\n }\n return contributionsState;\n }\n restoreViewState(contributionsState) {\n for (const [id, contribution] of this._instances) {\n if (typeof contribution.restoreViewState === 'function') {\n contribution.restoreViewState(contributionsState[id]);\n }\n }\n }\n get(id) {\n this._instantiateById(id);\n return this._instances.get(id) || null;\n }\n onBeforeInteractionEvent() {\n // this method is called very often by the editor!\n this._instantiateSome(2 /* EditorContributionInstantiation.BeforeFirstInteraction */);\n }\n onAfterModelAttached() {\n var _a;\n return runWhenWindowIdle(getWindow((_a = this._editor) === null || _a === void 0 ? void 0 : _a.getDomNode()), () => {\n this._instantiateSome(1 /* EditorContributionInstantiation.AfterFirstRender */);\n }, 50);\n }\n _instantiateSome(instantiation) {\n if (this._finishedInstantiation[instantiation]) {\n // already done with this instantiation!\n return;\n }\n this._finishedInstantiation[instantiation] = true;\n const contribs = this._findPendingContributionsByInstantiation(instantiation);\n for (const contrib of contribs) {\n this._instantiateById(contrib.id);\n }\n }\n _findPendingContributionsByInstantiation(instantiation) {\n const result = [];\n for (const [, desc] of this._pending) {\n if (desc.instantiation === instantiation) {\n result.push(desc);\n }\n }\n return result;\n }\n _instantiateById(id) {\n const desc = this._pending.get(id);\n if (!desc) {\n return;\n }\n this._pending.delete(id);\n if (!this._instantiationService || !this._editor) {\n throw new Error(`Cannot instantiate contributions before being initialized!`);\n }\n try {\n const instance = this._instantiationService.createInstance(desc.ctor, this._editor);\n this._instances.set(desc.id, instance);\n if (typeof instance.restoreViewState === 'function' && desc.instantiation !== 0 /* EditorContributionInstantiation.Eager */) {\n console.warn(`Editor contribution '${desc.id}' should be eager instantiated because it uses saveViewState / restoreViewState.`);\n }\n }\n catch (err) {\n onUnexpectedError(err);\n }\n }\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 *--------------------------------------------------------------------------------------------*/\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (this && this.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nvar CodeEditorWidget_1;\nimport '../../services/markerDecorations.js';\nimport * as dom from '../../../../base/browser/dom.js';\nimport { onUnexpectedError } from '../../../../base/common/errors.js';\nimport { Emitter, createEventDeliveryQueue } from '../../../../base/common/event.js';\nimport { Disposable, dispose } from '../../../../base/common/lifecycle.js';\nimport { Schemas } from '../../../../base/common/network.js';\nimport './editor.css';\nimport { applyFontInfo } from '../../config/domFontInfo.js';\nimport { EditorConfiguration } from '../../config/editorConfiguration.js';\nimport { TabFocus } from '../../config/tabFocus.js';\nimport { EditorExtensionsRegistry } from '../../editorExtensions.js';\nimport { ICodeEditorService } from '../../services/codeEditorService.js';\nimport { View } from '../../view.js';\nimport { DOMLineBreaksComputerFactory } from '../../view/domLineBreaksComputer.js';\nimport { ViewUserInputEvents } from '../../view/viewUserInputEvents.js';\nimport { CodeEditorContributions } from './codeEditorContributions.js';\nimport { filterValidationDecorations } from '../../../common/config/editorOptions.js';\nimport { CursorColumns } from '../../../common/core/cursorColumns.js';\nimport { editorUnnecessaryCodeOpacity } from '../../../common/core/editorColorRegistry.js';\nimport { Position } from '../../../common/core/position.js';\nimport { Range } from '../../../common/core/range.js';\nimport { Selection } from '../../../common/core/selection.js';\nimport { WordOperations } from '../../../common/cursor/cursorWordOperations.js';\nimport { InternalEditorAction } from '../../../common/editorAction.js';\nimport * as editorCommon from '../../../common/editorCommon.js';\nimport { EditorContextKeys } from '../../../common/editorContextKeys.js';\nimport { ILanguageConfigurationService } from '../../../common/languages/languageConfigurationRegistry.js';\nimport { ModelDecorationOptions } from '../../../common/model/textModel.js';\nimport { ILanguageFeaturesService } from '../../../common/services/languageFeatures.js';\nimport { MonospaceLineBreaksComputerFactory } from '../../../common/viewModel/monospaceLineBreaksComputer.js';\nimport { ViewModel } from '../../../common/viewModel/viewModelImpl.js';\nimport * as nls from '../../../../nls.js';\nimport { IAccessibilityService } from '../../../../platform/accessibility/common/accessibility.js';\nimport { ICommandService } from '../../../../platform/commands/common/commands.js';\nimport { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js';\nimport { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';\nimport { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js';\nimport { INotificationService, Severity } from '../../../../platform/notification/common/notification.js';\nimport { editorErrorForeground, editorHintForeground, editorInfoForeground, editorWarningForeground } from '../../../../platform/theme/common/colorRegistry.js';\nimport { IThemeService, registerThemingParticipant } from '../../../../platform/theme/common/themeService.js';\nimport { MenuId } from '../../../../platform/actions/common/actions.js';\nlet CodeEditorWidget = CodeEditorWidget_1 = class CodeEditorWidget extends Disposable {\n //#endregion\n get isSimpleWidget() {\n return this._configuration.isSimpleWidget;\n }\n get contextMenuId() {\n return this._configuration.contextMenuId;\n }\n constructor(domElement, _options, codeEditorWidgetOptions, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService) {\n var _a, _b;\n super();\n this.languageConfigurationService = languageConfigurationService;\n //#region Eventing\n this._deliveryQueue = createEventDeliveryQueue();\n this._contributions = this._register(new CodeEditorContributions());\n this._onDidDispose = this._register(new Emitter());\n this.onDidDispose = this._onDidDispose.event;\n this._onDidChangeModelContent = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelContent = this._onDidChangeModelContent.event;\n this._onDidChangeModelLanguage = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelLanguage = this._onDidChangeModelLanguage.event;\n this._onDidChangeModelLanguageConfiguration = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelLanguageConfiguration = this._onDidChangeModelLanguageConfiguration.event;\n this._onDidChangeModelOptions = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelOptions = this._onDidChangeModelOptions.event;\n this._onDidChangeModelDecorations = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelDecorations = this._onDidChangeModelDecorations.event;\n this._onDidChangeModelTokens = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModelTokens = this._onDidChangeModelTokens.event;\n this._onDidChangeConfiguration = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeConfiguration = this._onDidChangeConfiguration.event;\n this._onWillChangeModel = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onWillChangeModel = this._onWillChangeModel.event;\n this._onDidChangeModel = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeModel = this._onDidChangeModel.event;\n this._onDidChangeCursorPosition = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeCursorPosition = this._onDidChangeCursorPosition.event;\n this._onDidChangeCursorSelection = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeCursorSelection = this._onDidChangeCursorSelection.event;\n this._onDidAttemptReadOnlyEdit = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidAttemptReadOnlyEdit = this._onDidAttemptReadOnlyEdit.event;\n this._onDidLayoutChange = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidLayoutChange = this._onDidLayoutChange.event;\n this._editorTextFocus = this._register(new BooleanEventEmitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidFocusEditorText = this._editorTextFocus.onDidChangeToTrue;\n this.onDidBlurEditorText = this._editorTextFocus.onDidChangeToFalse;\n this._editorWidgetFocus = this._register(new BooleanEventEmitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidFocusEditorWidget = this._editorWidgetFocus.onDidChangeToTrue;\n this.onDidBlurEditorWidget = this._editorWidgetFocus.onDidChangeToFalse;\n this._onWillType = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onWillType = this._onWillType.event;\n this._onDidType = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidType = this._onDidType.event;\n this._onDidCompositionStart = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidCompositionStart = this._onDidCompositionStart.event;\n this._onDidCompositionEnd = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidCompositionEnd = this._onDidCompositionEnd.event;\n this._onDidPaste = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDidPaste = this._onDidPaste.event;\n this._onMouseUp = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseUp = this._onMouseUp.event;\n this._onMouseDown = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseDown = this._onMouseDown.event;\n this._onMouseDrag = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseDrag = this._onMouseDrag.event;\n this._onMouseDrop = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseDrop = this._onMouseDrop.event;\n this._onMouseDropCanceled = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseDropCanceled = this._onMouseDropCanceled.event;\n this._onDropIntoEditor = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onDropIntoEditor = this._onDropIntoEditor.event;\n this._onContextMenu = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onContextMenu = this._onContextMenu.event;\n this._onMouseMove = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseMove = this._onMouseMove.event;\n this._onMouseLeave = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseLeave = this._onMouseLeave.event;\n this._onMouseWheel = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onMouseWheel = this._onMouseWheel.event;\n this._onKeyUp = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onKeyUp = this._onKeyUp.event;\n this._onKeyDown = this._register(new InteractionEmitter(this._contributions, this._deliveryQueue));\n this.onKeyDown = this._onKeyDown.event;\n this._onDidContentSizeChange = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidContentSizeChange = this._onDidContentSizeChange.event;\n this._onDidScrollChange = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidScrollChange = this._onDidScrollChange.event;\n this._onDidChangeViewZones = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeViewZones = this._onDidChangeViewZones.event;\n this._onDidChangeHiddenAreas = this._register(new Emitter({ deliveryQueue: this._deliveryQueue }));\n this.onDidChangeHiddenAreas = this._onDidChangeHiddenAreas.event;\n this._updateCounter = 0;\n this._onBeginUpdate = this._register(new Emitter());\n this.onBeginUpdate = this._onBeginUpdate.event;\n this._onEndUpdate = this._register(new Emitter());\n this.onEndUpdate = this._onEndUpdate.event;\n this._actions = new Map();\n this._bannerDomNode = null;\n this._dropIntoEditorDecorations = this.createDecorationsCollection();\n codeEditorService.willCreateCodeEditor();\n const options = { ..._options };\n this._domElement = domElement;\n this._overflowWidgetsDomNode = options.overflowWidgetsDomNode;\n delete options.overflowWidgetsDomNode;\n this._id = (++EDITOR_ID);\n this._decorationTypeKeysToIds = {};\n this._decorationTypeSubtypes = {};\n this._telemetryData = codeEditorWidgetOptions.telemetryData;\n this._configuration = this._register(this._createConfiguration(codeEditorWidgetOptions.isSimpleWidget || false, (_a = codeEditorWidgetOptions.contextMenuId) !== null && _a !== void 0 ? _a : (codeEditorWidgetOptions.isSimpleWidget ? MenuId.SimpleEditorContext : MenuId.EditorContext), options, accessibilityService));\n this._register(this._configuration.onDidChange((e) => {\n this._onDidChangeConfiguration.fire(e);\n const options = this._configuration.options;\n if (e.hasChanged(145 /* EditorOption.layoutInfo */)) {\n const layoutInfo = options.get(145 /* EditorOption.layoutInfo */);\n this._onDidLayoutChange.fire(layoutInfo);\n }\n }));\n this._contextKeyService = this._register(contextKeyService.createScoped(this._domElement));\n this._notificationService = notificationService;\n this._codeEditorService = codeEditorService;\n this._commandService = commandService;\n this._themeService = themeService;\n this._register(new EditorContextKeysManager(this, this._contextKeyService));\n this._register(new EditorModeContext(this, this._contextKeyService, languageFeaturesService));\n this._instantiationService = this._register(instantiationService.createChild(new ServiceCollection([IContextKeyService, this._contextKeyService])));\n this._modelData = null;\n this._focusTracker = new CodeEditorWidgetFocusTracker(domElement, this._overflowWidgetsDomNode);\n this._register(this._focusTracker.onChange(() => {\n this._editorWidgetFocus.setValue(this._focusTracker.hasFocus());\n }));\n this._contentWidgets = {};\n this._overlayWidgets = {};\n this._glyphMarginWidgets = {};\n let contributions;\n if (Array.isArray(codeEditorWidgetOptions.contributions)) {\n contributions = codeEditorWidgetOptions.contributions;\n }\n else {\n contributions = EditorExtensionsRegistry.getEditorContributions();\n }\n this._contributions.initialize(this, contributions, this._instantiationService);\n for (const action of EditorExtensionsRegistry.getEditorActions()) {\n if (this._actions.has(action.id)) {\n onUnexpectedError(new Error(`Cannot have two actions with the same id ${action.id}`));\n continue;\n }\n const internalAction = new InternalEditorAction(action.id, action.label, action.alias, action.metadata, (_b = action.precondition) !== null && _b !== void 0 ? _b : undefined, (args) => {\n return this._instantiationService.invokeFunction((accessor) => {\n return Promise.resolve(action.runEditorCommand(accessor, this, args));\n });\n }, this._contextKeyService);\n this._actions.set(internalAction.id, internalAction);\n }\n const isDropIntoEnabled = () => {\n return !this._configuration.options.get(91 /* EditorOption.readOnly */)\n && this._configuration.options.get(36 /* EditorOption.dropIntoEditor */).enabled;\n };\n this._register(new dom.DragAndDropObserver(this._domElement, {\n onDragOver: e => {\n if (!isDropIntoEnabled()) {\n return;\n }\n const target = this.getTargetAtClientPoint(e.clientX, e.clientY);\n if (target === null || target === void 0 ? void 0 : target.position) {\n this.showDropIndicatorAt(target.position);\n }\n },\n onDrop: async (e) => {\n if (!isDropIntoEnabled()) {\n return;\n }\n this.removeDropIndicator();\n if (!e.dataTransfer) {\n return;\n }\n const target = this.getTargetAtClientPoint(e.clientX, e.clientY);\n if (target === null || target === void 0 ? void 0 : target.position) {\n this._onDropIntoEditor.fire({ position: target.position, event: e });\n }\n },\n onDragLeave: () => {\n this.removeDropIndicator();\n },\n onDragEnd: () => {\n this.removeDropIndicator();\n },\n }));\n this._codeEditorService.addCodeEditor(this);\n }\n writeScreenReaderContent(reason) {\n var _a;\n (_a = this._modelData) === null || _a === void 0 ? void 0 : _a.view.writeScreenReaderContent(reason);\n }\n _createConfiguration(isSimpleWidget, contextMenuId, options, accessibilityService) {\n return new EditorConfiguration(isSimpleWidget, contextMenuId, options, this._domElement, accessibilityService);\n }\n getId() {\n return this.getEditorType() + ':' + this._id;\n }\n getEditorType() {\n return editorCommon.EditorType.ICodeEditor;\n }\n dispose() {\n this._codeEditorService.removeCodeEditor(this);\n this._focusTracker.dispose();\n this._actions.clear();\n this._contentWidgets = {};\n this._overlayWidgets = {};\n this._removeDecorationTypes();\n this._postDetachModelCleanup(this._detachModel());\n this._onDidDispose.fire();\n super.dispose();\n }\n invokeWithinContext(fn) {\n return this._instantiationService.invokeFunction(fn);\n }\n updateOptions(newOptions) {\n this._configuration.updateOptions(newOptions || {});\n }\n getOptions() {\n return this._configuration.options;\n }\n getOption(id) {\n return this._configuration.options.get(id);\n }\n getRawOptions() {\n return this._configuration.getRawOptions();\n }\n getOverflowWidgetsDomNode() {\n return this._overflowWidgetsDomNode;\n }\n getConfiguredWordAtPosition(position) {\n if (!this._modelData) {\n return null;\n }\n return WordOperations.getWordAtPosition(this._modelData.model, this._configuration.options.get(131 /* EditorOption.wordSeparators */), this._configuration.options.get(130 /* EditorOption.wordSegmenterLocales */), position);\n }\n getValue(options = null) {\n if (!this._modelData) {\n return '';\n }\n const preserveBOM = (options && options.preserveBOM) ? true : false;\n let eolPreference = 0 /* EndOfLinePreference.TextDefined */;\n if (options && options.lineEnding && options.lineEnding === '\\n') {\n eolPreference = 1 /* EndOfLinePreference.LF */;\n }\n else if (options && options.lineEnding && options.lineEnding === '\\r\\n') {\n eolPreference = 2 /* EndOfLinePreference.CRLF */;\n }\n return this._modelData.model.getValue(eolPreference, preserveBOM);\n }\n setValue(newValue) {\n try {\n this._beginUpdate();\n if (!this._modelData) {\n return;\n }\n this._modelData.model.setValue(newValue);\n }\n finally {\n this._endUpdate();\n }\n }\n getModel() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.model;\n }\n setModel(_model = null) {\n var _a;\n try {\n this._beginUpdate();\n const model = _model;\n if (this._modelData === null && model === null) {\n // Current model is the new model\n return;\n }\n if (this._modelData && this._modelData.model === model) {\n // Current model is the new model\n return;\n }\n const e = {\n oldModelUrl: ((_a = this._modelData) === null || _a === void 0 ? void 0 : _a.model.uri) || null,\n newModelUrl: (model === null || model === void 0 ? void 0 : model.uri) || null\n };\n this._onWillChangeModel.fire(e);\n const hasTextFocus = this.hasTextFocus();\n const detachedModel = this._detachModel();\n this._attachModel(model);\n if (hasTextFocus && this.hasModel()) {\n this.focus();\n }\n this._removeDecorationTypes();\n this._onDidChangeModel.fire(e);\n this._postDetachModelCleanup(detachedModel);\n this._contributionsDisposable = this._contributions.onAfterModelAttached();\n }\n finally {\n this._endUpdate();\n }\n }\n _removeDecorationTypes() {\n this._decorationTypeKeysToIds = {};\n if (this._decorationTypeSubtypes) {\n for (const decorationType in this._decorationTypeSubtypes) {\n const subTypes = this._decorationTypeSubtypes[decorationType];\n for (const subType in subTypes) {\n this._removeDecorationType(decorationType + '-' + subType);\n }\n }\n this._decorationTypeSubtypes = {};\n }\n }\n getVisibleRanges() {\n if (!this._modelData) {\n return [];\n }\n return this._modelData.viewModel.getVisibleRanges();\n }\n getVisibleRangesPlusViewportAboveBelow() {\n if (!this._modelData) {\n return [];\n }\n return this._modelData.viewModel.getVisibleRangesPlusViewportAboveBelow();\n }\n getWhitespaces() {\n if (!this._modelData) {\n return [];\n }\n return this._modelData.viewModel.viewLayout.getWhitespaces();\n }\n static _getVerticalOffsetAfterPosition(modelData, modelLineNumber, modelColumn, includeViewZones) {\n const modelPosition = modelData.model.validatePosition({\n lineNumber: modelLineNumber,\n column: modelColumn\n });\n const viewPosition = modelData.viewModel.coordinatesConverter.convertModelPositionToViewPosition(modelPosition);\n return modelData.viewModel.viewLayout.getVerticalOffsetAfterLineNumber(viewPosition.lineNumber, includeViewZones);\n }\n getTopForLineNumber(lineNumber, includeViewZones = false) {\n if (!this._modelData) {\n return -1;\n }\n return CodeEditorWidget_1._getVerticalOffsetForPosition(this._modelData, lineNumber, 1, includeViewZones);\n }\n getTopForPosition(lineNumber, column) {\n if (!this._modelData) {\n return -1;\n }\n return CodeEditorWidget_1._getVerticalOffsetForPosition(this._modelData, lineNumber, column, false);\n }\n static _getVerticalOffsetForPosition(modelData, modelLineNumber, modelColumn, includeViewZones = false) {\n const modelPosition = modelData.model.validatePosition({\n lineNumber: modelLineNumber,\n column: modelColumn\n });\n const viewPosition = modelData.viewModel.coordinatesConverter.convertModelPositionToViewPosition(modelPosition);\n return modelData.viewModel.viewLayout.getVerticalOffsetForLineNumber(viewPosition.lineNumber, includeViewZones);\n }\n getBottomForLineNumber(lineNumber, includeViewZones = false) {\n if (!this._modelData) {\n return -1;\n }\n return CodeEditorWidget_1._getVerticalOffsetAfterPosition(this._modelData, lineNumber, 1, includeViewZones);\n }\n setHiddenAreas(ranges, source) {\n var _a;\n (_a = this._modelData) === null || _a === void 0 ? void 0 : _a.viewModel.setHiddenAreas(ranges.map(r => Range.lift(r)), source);\n }\n getVisibleColumnFromPosition(rawPosition) {\n if (!this._modelData) {\n return rawPosition.column;\n }\n const position = this._modelData.model.validatePosition(rawPosition);\n const tabSize = this._modelData.model.getOptions().tabSize;\n return CursorColumns.visibleColumnFromColumn(this._modelData.model.getLineContent(position.lineNumber), position.column, tabSize) + 1;\n }\n getPosition() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.viewModel.getPosition();\n }\n setPosition(position, source = 'api') {\n if (!this._modelData) {\n return;\n }\n if (!Position.isIPosition(position)) {\n throw new Error('Invalid arguments');\n }\n this._modelData.viewModel.setSelections(source, [{\n selectionStartLineNumber: position.lineNumber,\n selectionStartColumn: position.column,\n positionLineNumber: position.lineNumber,\n positionColumn: position.column\n }]);\n }\n _sendRevealRange(modelRange, verticalType, revealHorizontal, scrollType) {\n if (!this._modelData) {\n return;\n }\n if (!Range.isIRange(modelRange)) {\n throw new Error('Invalid arguments');\n }\n const validatedModelRange = this._modelData.model.validateRange(modelRange);\n const viewRange = this._modelData.viewModel.coordinatesConverter.convertModelRangeToViewRange(validatedModelRange);\n this._modelData.viewModel.revealRange('api', revealHorizontal, viewRange, verticalType, scrollType);\n }\n revealLine(lineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLine(lineNumber, 0 /* VerticalRevealType.Simple */, scrollType);\n }\n revealLineInCenter(lineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLine(lineNumber, 1 /* VerticalRevealType.Center */, scrollType);\n }\n revealLineInCenterIfOutsideViewport(lineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLine(lineNumber, 2 /* VerticalRevealType.CenterIfOutsideViewport */, scrollType);\n }\n revealLineNearTop(lineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLine(lineNumber, 5 /* VerticalRevealType.NearTop */, scrollType);\n }\n _revealLine(lineNumber, revealType, scrollType) {\n if (typeof lineNumber !== 'number') {\n throw new Error('Invalid arguments');\n }\n this._sendRevealRange(new Range(lineNumber, 1, lineNumber, 1), revealType, false, scrollType);\n }\n revealPosition(position, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealPosition(position, 0 /* VerticalRevealType.Simple */, true, scrollType);\n }\n revealPositionInCenter(position, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealPosition(position, 1 /* VerticalRevealType.Center */, true, scrollType);\n }\n revealPositionInCenterIfOutsideViewport(position, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealPosition(position, 2 /* VerticalRevealType.CenterIfOutsideViewport */, true, scrollType);\n }\n revealPositionNearTop(position, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealPosition(position, 5 /* VerticalRevealType.NearTop */, true, scrollType);\n }\n _revealPosition(position, verticalType, revealHorizontal, scrollType) {\n if (!Position.isIPosition(position)) {\n throw new Error('Invalid arguments');\n }\n this._sendRevealRange(new Range(position.lineNumber, position.column, position.lineNumber, position.column), verticalType, revealHorizontal, scrollType);\n }\n getSelection() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.viewModel.getSelection();\n }\n getSelections() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.viewModel.getSelections();\n }\n setSelection(something, source = 'api') {\n const isSelection = Selection.isISelection(something);\n const isRange = Range.isIRange(something);\n if (!isSelection && !isRange) {\n throw new Error('Invalid arguments');\n }\n if (isSelection) {\n this._setSelectionImpl(something, source);\n }\n else if (isRange) {\n // act as if it was an IRange\n const selection = {\n selectionStartLineNumber: something.startLineNumber,\n selectionStartColumn: something.startColumn,\n positionLineNumber: something.endLineNumber,\n positionColumn: something.endColumn\n };\n this._setSelectionImpl(selection, source);\n }\n }\n _setSelectionImpl(sel, source) {\n if (!this._modelData) {\n return;\n }\n const selection = new Selection(sel.selectionStartLineNumber, sel.selectionStartColumn, sel.positionLineNumber, sel.positionColumn);\n this._modelData.viewModel.setSelections(source, [selection]);\n }\n revealLines(startLineNumber, endLineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLines(startLineNumber, endLineNumber, 0 /* VerticalRevealType.Simple */, scrollType);\n }\n revealLinesInCenter(startLineNumber, endLineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLines(startLineNumber, endLineNumber, 1 /* VerticalRevealType.Center */, scrollType);\n }\n revealLinesInCenterIfOutsideViewport(startLineNumber, endLineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLines(startLineNumber, endLineNumber, 2 /* VerticalRevealType.CenterIfOutsideViewport */, scrollType);\n }\n revealLinesNearTop(startLineNumber, endLineNumber, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealLines(startLineNumber, endLineNumber, 5 /* VerticalRevealType.NearTop */, scrollType);\n }\n _revealLines(startLineNumber, endLineNumber, verticalType, scrollType) {\n if (typeof startLineNumber !== 'number' || typeof endLineNumber !== 'number') {\n throw new Error('Invalid arguments');\n }\n this._sendRevealRange(new Range(startLineNumber, 1, endLineNumber, 1), verticalType, false, scrollType);\n }\n revealRange(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */, revealVerticalInCenter = false, revealHorizontal = true) {\n this._revealRange(range, revealVerticalInCenter ? 1 /* VerticalRevealType.Center */ : 0 /* VerticalRevealType.Simple */, revealHorizontal, scrollType);\n }\n revealRangeInCenter(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 1 /* VerticalRevealType.Center */, true, scrollType);\n }\n revealRangeInCenterIfOutsideViewport(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 2 /* VerticalRevealType.CenterIfOutsideViewport */, true, scrollType);\n }\n revealRangeNearTop(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 5 /* VerticalRevealType.NearTop */, true, scrollType);\n }\n revealRangeNearTopIfOutsideViewport(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 6 /* VerticalRevealType.NearTopIfOutsideViewport */, true, scrollType);\n }\n revealRangeAtTop(range, scrollType = 0 /* editorCommon.ScrollType.Smooth */) {\n this._revealRange(range, 3 /* VerticalRevealType.Top */, true, scrollType);\n }\n _revealRange(range, verticalType, revealHorizontal, scrollType) {\n if (!Range.isIRange(range)) {\n throw new Error('Invalid arguments');\n }\n this._sendRevealRange(Range.lift(range), verticalType, revealHorizontal, scrollType);\n }\n setSelections(ranges, source = 'api', reason = 0 /* CursorChangeReason.NotSet */) {\n if (!this._modelData) {\n return;\n }\n if (!ranges || ranges.length === 0) {\n throw new Error('Invalid arguments');\n }\n for (let i = 0, len = ranges.length; i < len; i++) {\n if (!Selection.isISelection(ranges[i])) {\n throw new Error('Invalid arguments');\n }\n }\n this._modelData.viewModel.setSelections(source, ranges, reason);\n }\n getContentWidth() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getContentWidth();\n }\n getScrollWidth() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getScrollWidth();\n }\n getScrollLeft() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getCurrentScrollLeft();\n }\n getContentHeight() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getContentHeight();\n }\n getScrollHeight() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getScrollHeight();\n }\n getScrollTop() {\n if (!this._modelData) {\n return -1;\n }\n return this._modelData.viewModel.viewLayout.getCurrentScrollTop();\n }\n setScrollLeft(newScrollLeft, scrollType = 1 /* editorCommon.ScrollType.Immediate */) {\n if (!this._modelData) {\n return;\n }\n if (typeof newScrollLeft !== 'number') {\n throw new Error('Invalid arguments');\n }\n this._modelData.viewModel.viewLayout.setScrollPosition({\n scrollLeft: newScrollLeft\n }, scrollType);\n }\n setScrollTop(newScrollTop, scrollType = 1 /* editorCommon.ScrollType.Immediate */) {\n if (!this._modelData) {\n return;\n }\n if (typeof newScrollTop !== 'number') {\n throw new Error('Invalid arguments');\n }\n this._modelData.viewModel.viewLayout.setScrollPosition({\n scrollTop: newScrollTop\n }, scrollType);\n }\n setScrollPosition(position, scrollType = 1 /* editorCommon.ScrollType.Immediate */) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.viewLayout.setScrollPosition(position, scrollType);\n }\n hasPendingScrollAnimation() {\n if (!this._modelData) {\n return false;\n }\n return this._modelData.viewModel.viewLayout.hasPendingScrollAnimation();\n }\n saveViewState() {\n if (!this._modelData) {\n return null;\n }\n const contributionsState = this._contributions.saveViewState();\n const cursorState = this._modelData.viewModel.saveCursorState();\n const viewState = this._modelData.viewModel.saveState();\n return {\n cursorState: cursorState,\n viewState: viewState,\n contributionsState: contributionsState\n };\n }\n restoreViewState(s) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n const codeEditorState = s;\n if (codeEditorState && codeEditorState.cursorState && codeEditorState.viewState) {\n const cursorState = codeEditorState.cursorState;\n if (Array.isArray(cursorState)) {\n if (cursorState.length > 0) {\n this._modelData.viewModel.restoreCursorState(cursorState);\n }\n }\n else {\n // Backwards compatibility\n this._modelData.viewModel.restoreCursorState([cursorState]);\n }\n this._contributions.restoreViewState(codeEditorState.contributionsState || {});\n const reducedState = this._modelData.viewModel.reduceRestoreState(codeEditorState.viewState);\n this._modelData.view.restoreState(reducedState);\n }\n }\n handleInitialized() {\n var _a;\n (_a = this._getViewModel()) === null || _a === void 0 ? void 0 : _a.visibleLinesStabilized();\n }\n getContribution(id) {\n return this._contributions.get(id);\n }\n getActions() {\n return Array.from(this._actions.values());\n }\n getSupportedActions() {\n let result = this.getActions();\n result = result.filter(action => action.isSupported());\n return result;\n }\n getAction(id) {\n return this._actions.get(id) || null;\n }\n trigger(source, handlerId, payload) {\n payload = payload || {};\n try {\n this._beginUpdate();\n switch (handlerId) {\n case \"compositionStart\" /* editorCommon.Handler.CompositionStart */:\n this._startComposition();\n return;\n case \"compositionEnd\" /* editorCommon.Handler.CompositionEnd */:\n this._endComposition(source);\n return;\n case \"type\" /* editorCommon.Handler.Type */: {\n const args = payload;\n this._type(source, args.text || '');\n return;\n }\n case \"replacePreviousChar\" /* editorCommon.Handler.ReplacePreviousChar */: {\n const args = payload;\n this._compositionType(source, args.text || '', args.replaceCharCnt || 0, 0, 0);\n return;\n }\n case \"compositionType\" /* editorCommon.Handler.CompositionType */: {\n const args = payload;\n this._compositionType(source, args.text || '', args.replacePrevCharCnt || 0, args.replaceNextCharCnt || 0, args.positionDelta || 0);\n return;\n }\n case \"paste\" /* editorCommon.Handler.Paste */: {\n const args = payload;\n this._paste(source, args.text || '', args.pasteOnNewLine || false, args.multicursorText || null, args.mode || null, args.clipboardEvent);\n return;\n }\n case \"cut\" /* editorCommon.Handler.Cut */:\n this._cut(source);\n return;\n }\n const action = this.getAction(handlerId);\n if (action) {\n Promise.resolve(action.run(payload)).then(undefined, onUnexpectedError);\n return;\n }\n if (!this._modelData) {\n return;\n }\n if (this._triggerEditorCommand(source, handlerId, payload)) {\n return;\n }\n this._triggerCommand(handlerId, payload);\n }\n finally {\n this._endUpdate();\n }\n }\n _triggerCommand(handlerId, payload) {\n this._commandService.executeCommand(handlerId, payload);\n }\n _startComposition() {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.startComposition();\n this._onDidCompositionStart.fire();\n }\n _endComposition(source) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.endComposition(source);\n this._onDidCompositionEnd.fire();\n }\n _type(source, text) {\n if (!this._modelData || text.length === 0) {\n return;\n }\n if (source === 'keyboard') {\n this._onWillType.fire(text);\n }\n this._modelData.viewModel.type(text, source);\n if (source === 'keyboard') {\n this._onDidType.fire(text);\n }\n }\n _compositionType(source, text, replacePrevCharCnt, replaceNextCharCnt, positionDelta) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.compositionType(text, replacePrevCharCnt, replaceNextCharCnt, positionDelta, source);\n }\n _paste(source, text, pasteOnNewLine, multicursorText, mode, clipboardEvent) {\n if (!this._modelData) {\n return;\n }\n const viewModel = this._modelData.viewModel;\n const startPosition = viewModel.getSelection().getStartPosition();\n viewModel.paste(text, pasteOnNewLine, multicursorText, source);\n const endPosition = viewModel.getSelection().getStartPosition();\n if (source === 'keyboard') {\n this._onDidPaste.fire({\n clipboardEvent,\n range: new Range(startPosition.lineNumber, startPosition.column, endPosition.lineNumber, endPosition.column),\n languageId: mode\n });\n }\n }\n _cut(source) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.cut(source);\n }\n _triggerEditorCommand(source, handlerId, payload) {\n const command = EditorExtensionsRegistry.getEditorCommand(handlerId);\n if (command) {\n payload = payload || {};\n payload.source = source;\n this._instantiationService.invokeFunction((accessor) => {\n Promise.resolve(command.runEditorCommand(accessor, this, payload)).then(undefined, onUnexpectedError);\n });\n return true;\n }\n return false;\n }\n _getViewModel() {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.viewModel;\n }\n pushUndoStop() {\n if (!this._modelData) {\n return false;\n }\n if (this._configuration.options.get(91 /* EditorOption.readOnly */)) {\n // read only editor => sorry!\n return false;\n }\n this._modelData.model.pushStackElement();\n return true;\n }\n popUndoStop() {\n if (!this._modelData) {\n return false;\n }\n if (this._configuration.options.get(91 /* EditorOption.readOnly */)) {\n // read only editor => sorry!\n return false;\n }\n this._modelData.model.popStackElement();\n return true;\n }\n executeEdits(source, edits, endCursorState) {\n if (!this._modelData) {\n return false;\n }\n if (this._configuration.options.get(91 /* EditorOption.readOnly */)) {\n // read only editor => sorry!\n return false;\n }\n let cursorStateComputer;\n if (!endCursorState) {\n cursorStateComputer = () => null;\n }\n else if (Array.isArray(endCursorState)) {\n cursorStateComputer = () => endCursorState;\n }\n else {\n cursorStateComputer = endCursorState;\n }\n this._modelData.viewModel.executeEdits(source, edits, cursorStateComputer);\n return true;\n }\n executeCommand(source, command) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.executeCommand(command, source);\n }\n executeCommands(source, commands) {\n if (!this._modelData) {\n return;\n }\n this._modelData.viewModel.executeCommands(commands, source);\n }\n createDecorationsCollection(decorations) {\n return new EditorDecorationsCollection(this, decorations);\n }\n changeDecorations(callback) {\n if (!this._modelData) {\n // callback will not be called\n return null;\n }\n return this._modelData.model.changeDecorations(callback, this._id);\n }\n getLineDecorations(lineNumber) {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.model.getLineDecorations(lineNumber, this._id, filterValidationDecorations(this._configuration.options));\n }\n getDecorationsInRange(range) {\n if (!this._modelData) {\n return null;\n }\n return this._modelData.model.getDecorationsInRange(range, this._id, filterValidationDecorations(this._configuration.options));\n }\n /**\n * @deprecated\n */\n deltaDecorations(oldDecorations, newDecorations) {\n if (!this._modelData) {\n return [];\n }\n if (oldDecorations.length === 0 && newDecorations.length === 0) {\n return oldDecorations;\n }\n return this._modelData.model.deltaDecorations(oldDecorations, newDecorations, this._id);\n }\n removeDecorations(decorationIds) {\n if (!this._modelData || decorationIds.length === 0) {\n return;\n }\n this._modelData.model.changeDecorations((changeAccessor) => {\n changeAccessor.deltaDecorations(decorationIds, []);\n });\n }\n removeDecorationsByType(decorationTypeKey) {\n // remove decorations for type and sub type\n const oldDecorationsIds = this._decorationTypeKeysToIds[decorationTypeKey];\n if (oldDecorationsIds) {\n this.changeDecorations(accessor => accessor.deltaDecorations(oldDecorationsIds, []));\n }\n if (this._decorationTypeKeysToIds.hasOwnProperty(decorationTypeKey)) {\n delete this._decorationTypeKeysToIds[decorationTypeKey];\n }\n if (this._decorationTypeSubtypes.hasOwnProperty(decorationTypeKey)) {\n delete this._decorationTypeSubtypes[decorationTypeKey];\n }\n }\n getLayoutInfo() {\n const options = this._configuration.options;\n const layoutInfo = options.get(145 /* EditorOption.layoutInfo */);\n return layoutInfo;\n }\n createOverviewRuler(cssClassName) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return null;\n }\n return this._modelData.view.createOverviewRuler(cssClassName);\n }\n getContainerDomNode() {\n return this._domElement;\n }\n getDomNode() {\n if (!this._modelData || !this._modelData.hasRealView) {\n return null;\n }\n return this._modelData.view.domNode.domNode;\n }\n delegateVerticalScrollbarPointerDown(browserEvent) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.delegateVerticalScrollbarPointerDown(browserEvent);\n }\n delegateScrollFromMouseWheelEvent(browserEvent) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.delegateScrollFromMouseWheelEvent(browserEvent);\n }\n layout(dimension, postponeRendering = false) {\n this._configuration.observeContainer(dimension);\n if (!postponeRendering) {\n this.render();\n }\n }\n focus() {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.focus();\n }\n hasTextFocus() {\n if (!this._modelData || !this._modelData.hasRealView) {\n return false;\n }\n return this._modelData.view.isFocused();\n }\n hasWidgetFocus() {\n return this._focusTracker && this._focusTracker.hasFocus();\n }\n addContentWidget(widget) {\n const widgetData = {\n widget: widget,\n position: widget.getPosition()\n };\n if (this._contentWidgets.hasOwnProperty(widget.getId())) {\n console.warn('Overwriting a content widget with the same id:' + widget.getId());\n }\n this._contentWidgets[widget.getId()] = widgetData;\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.addContentWidget(widgetData);\n }\n }\n layoutContentWidget(widget) {\n const widgetId = widget.getId();\n if (this._contentWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._contentWidgets[widgetId];\n widgetData.position = widget.getPosition();\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.layoutContentWidget(widgetData);\n }\n }\n }\n removeContentWidget(widget) {\n const widgetId = widget.getId();\n if (this._contentWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._contentWidgets[widgetId];\n delete this._contentWidgets[widgetId];\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.removeContentWidget(widgetData);\n }\n }\n }\n addOverlayWidget(widget) {\n const widgetData = {\n widget: widget,\n position: widget.getPosition()\n };\n if (this._overlayWidgets.hasOwnProperty(widget.getId())) {\n console.warn('Overwriting an overlay widget with the same id.');\n }\n this._overlayWidgets[widget.getId()] = widgetData;\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.addOverlayWidget(widgetData);\n }\n }\n layoutOverlayWidget(widget) {\n const widgetId = widget.getId();\n if (this._overlayWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._overlayWidgets[widgetId];\n widgetData.position = widget.getPosition();\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.layoutOverlayWidget(widgetData);\n }\n }\n }\n removeOverlayWidget(widget) {\n const widgetId = widget.getId();\n if (this._overlayWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._overlayWidgets[widgetId];\n delete this._overlayWidgets[widgetId];\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.removeOverlayWidget(widgetData);\n }\n }\n }\n addGlyphMarginWidget(widget) {\n const widgetData = {\n widget: widget,\n position: widget.getPosition()\n };\n if (this._glyphMarginWidgets.hasOwnProperty(widget.getId())) {\n console.warn('Overwriting a glyph margin widget with the same id.');\n }\n this._glyphMarginWidgets[widget.getId()] = widgetData;\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.addGlyphMarginWidget(widgetData);\n }\n }\n layoutGlyphMarginWidget(widget) {\n const widgetId = widget.getId();\n if (this._glyphMarginWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._glyphMarginWidgets[widgetId];\n widgetData.position = widget.getPosition();\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.layoutGlyphMarginWidget(widgetData);\n }\n }\n }\n removeGlyphMarginWidget(widget) {\n const widgetId = widget.getId();\n if (this._glyphMarginWidgets.hasOwnProperty(widgetId)) {\n const widgetData = this._glyphMarginWidgets[widgetId];\n delete this._glyphMarginWidgets[widgetId];\n if (this._modelData && this._modelData.hasRealView) {\n this._modelData.view.removeGlyphMarginWidget(widgetData);\n }\n }\n }\n changeViewZones(callback) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.change(callback);\n }\n getTargetAtClientPoint(clientX, clientY) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return null;\n }\n return this._modelData.view.getTargetAtClientPoint(clientX, clientY);\n }\n getScrolledVisiblePosition(rawPosition) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return null;\n }\n const position = this._modelData.model.validatePosition(rawPosition);\n const options = this._configuration.options;\n const layoutInfo = options.get(145 /* EditorOption.layoutInfo */);\n const top = CodeEditorWidget_1._getVerticalOffsetForPosition(this._modelData, position.lineNumber, position.column) - this.getScrollTop();\n const left = this._modelData.view.getOffsetForColumn(position.lineNumber, position.column) + layoutInfo.glyphMarginWidth + layoutInfo.lineNumbersWidth + layoutInfo.decorationsWidth - this.getScrollLeft();\n return {\n top: top,\n left: left,\n height: options.get(67 /* EditorOption.lineHeight */)\n };\n }\n getOffsetForColumn(lineNumber, column) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return -1;\n }\n return this._modelData.view.getOffsetForColumn(lineNumber, column);\n }\n render(forceRedraw = false) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.viewModel.batchEvents(() => {\n this._modelData.view.render(true, forceRedraw);\n });\n }\n setAriaOptions(options) {\n if (!this._modelData || !this._modelData.hasRealView) {\n return;\n }\n this._modelData.view.setAriaOptions(options);\n }\n applyFontInfo(target) {\n applyFontInfo(target, this._configuration.options.get(50 /* EditorOption.fontInfo */));\n }\n setBanner(domNode, domNodeHeight) {\n if (this._bannerDomNode && this._domElement.contains(this._bannerDomNode)) {\n this._domElement.removeChild(this._bannerDomNode);\n }\n this._bannerDomNode = domNode;\n this._configuration.setReservedHeight(domNode ? domNodeHeight : 0);\n if (this._bannerDomNode) {\n this._domElement.prepend(this._bannerDomNode);\n }\n }\n _attachModel(model) {\n if (!model) {\n this._modelData = null;\n return;\n }\n const listenersToRemove = [];\n this._domElement.setAttribute('data-mode-id', model.getLanguageId());\n this._configuration.setIsDominatedByLongLines(model.isDominatedByLongLines());\n this._configuration.setModelLineCount(model.getLineCount());\n const attachedView = model.onBeforeAttached();\n const viewModel = new ViewModel(this._id, this._configuration, model, DOMLineBreaksComputerFactory.create(dom.getWindow(this._domElement)), MonospaceLineBreaksComputerFactory.create(this._configuration.options), (callback) => dom.scheduleAtNextAnimationFrame(dom.getWindow(this._domElement), callback), this.languageConfigurationService, this._themeService, attachedView);\n // Someone might destroy the model from under the editor, so prevent any exceptions by setting a null model\n listenersToRemove.push(model.onWillDispose(() => this.setModel(null)));\n listenersToRemove.push(viewModel.onEvent((e) => {\n switch (e.kind) {\n case 0 /* OutgoingViewModelEventKind.ContentSizeChanged */:\n this._onDidContentSizeChange.fire(e);\n break;\n case 1 /* OutgoingViewModelEventKind.FocusChanged */:\n this._editorTextFocus.setValue(e.hasFocus);\n break;\n case 2 /* OutgoingViewModelEventKind.ScrollChanged */:\n this._onDidScrollChange.fire(e);\n break;\n case 3 /* OutgoingViewModelEventKind.ViewZonesChanged */:\n this._onDidChangeViewZones.fire();\n break;\n case 4 /* OutgoingViewModelEventKind.HiddenAreasChanged */:\n this._onDidChangeHiddenAreas.fire();\n break;\n case 5 /* OutgoingViewModelEventKind.ReadOnlyEditAttempt */:\n this._onDidAttemptReadOnlyEdit.fire();\n break;\n case 6 /* OutgoingViewModelEventKind.CursorStateChanged */: {\n if (e.reachedMaxCursorCount) {\n const multiCursorLimit = this.getOption(80 /* EditorOption.multiCursorLimit */);\n const message = nls.localize('cursors.maximum', \"The number of cursors has been limited to {0}. Consider using [find and replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace) for larger changes or increase the editor multi cursor limit setting.\", multiCursorLimit);\n this._notificationService.prompt(Severity.Warning, message, [\n {\n label: 'Find and Replace',\n run: () => {\n this._commandService.executeCommand('editor.action.startFindReplaceAction');\n }\n },\n {\n label: nls.localize('goToSetting', 'Increase Multi Cursor Limit'),\n run: () => {\n this._commandService.executeCommand('workbench.action.openSettings2', {\n query: 'editor.multiCursorLimit'\n });\n }\n }\n ]);\n }\n const positions = [];\n for (let i = 0, len = e.selections.length; i < len; i++) {\n positions[i] = e.selections[i].getPosition();\n }\n const e1 = {\n position: positions[0],\n secondaryPositions: positions.slice(1),\n reason: e.reason,\n source: e.source\n };\n this._onDidChangeCursorPosition.fire(e1);\n const e2 = {\n selection: e.selections[0],\n secondarySelections: e.selections.slice(1),\n modelVersionId: e.modelVersionId,\n oldSelections: e.oldSelections,\n oldModelVersionId: e.oldModelVersionId,\n source: e.source,\n reason: e.reason\n };\n this._onDidChangeCursorSelection.fire(e2);\n break;\n }\n case 7 /* OutgoingViewModelEventKind.ModelDecorationsChanged */:\n this._onDidChangeModelDecorations.fire(e.event);\n break;\n case 8 /* OutgoingViewModelEventKind.ModelLanguageChanged */:\n this._domElement.setAttribute('data-mode-id', model.getLanguageId());\n this._onDidChangeModelLanguage.fire(e.event);\n break;\n case 9 /* OutgoingViewModelEventKind.ModelLanguageConfigurationChanged */:\n this._onDidChangeModelLanguageConfiguration.fire(e.event);\n break;\n case 10 /* OutgoingViewModelEventKind.ModelContentChanged */:\n this._onDidChangeModelContent.fire(e.event);\n break;\n case 11 /* OutgoingViewModelEventKind.ModelOptionsChanged */:\n this._onDidChangeModelOptions.fire(e.event);\n break;\n case 12 /* OutgoingViewModelEventKind.ModelTokensChanged */:\n this._onDidChangeModelTokens.fire(e.event);\n break;\n }\n }));\n const [view, hasRealView] = this._createView(viewModel);\n if (hasRealView) {\n this._domElement.appendChild(view.domNode.domNode);\n let keys = Object.keys(this._contentWidgets);\n for (let i = 0, len = keys.length; i < len; i++) {\n const widgetId = keys[i];\n view.addContentWidget(this._contentWidgets[widgetId]);\n }\n keys = Object.keys(this._overlayWidgets);\n for (let i = 0, len = keys.length; i < len; i++) {\n const widgetId = keys[i];\n view.addOverlayWidget(this._overlayWidgets[widgetId]);\n }\n keys = Object.keys(this._glyphMarginWidgets);\n for (let i = 0, len = keys.length; i < len; i++) {\n const widgetId = keys[i];\n view.addGlyphMarginWidget(this._glyphMarginWidgets[widgetId]);\n }\n view.render(false, true);\n view.domNode.domNode.setAttribute('data-uri', model.uri.toString());\n }\n this._modelData = new ModelData(model, viewModel, view, hasRealView, listenersToRemove, attachedView);\n }\n _createView(viewModel) {\n let commandDelegate;\n if (this.isSimpleWidget) {\n commandDelegate = {\n paste: (text, pasteOnNewLine, multicursorText, mode) => {\n this._paste('keyboard', text, pasteOnNewLine, multicursorText, mode);\n },\n type: (text) => {\n this._type('keyboard', text);\n },\n compositionType: (text, replacePrevCharCnt, replaceNextCharCnt, positionDelta) => {\n this._compositionType('keyboard', text, replacePrevCharCnt, replaceNextCharCnt, positionDelta);\n },\n startComposition: () => {\n this._startComposition();\n },\n endComposition: () => {\n this._endComposition('keyboard');\n },\n cut: () => {\n this._cut('keyboard');\n }\n };\n }\n else {\n commandDelegate = {\n paste: (text, pasteOnNewLine, multicursorText, mode) => {\n const payload = { text, pasteOnNewLine, multicursorText, mode };\n this._commandService.executeCommand(\"paste\" /* editorCommon.Handler.Paste */, payload);\n },\n type: (text) => {\n const payload = { text };\n this._commandService.executeCommand(\"type\" /* editorCommon.Handler.Type */, payload);\n },\n compositionType: (text, replacePrevCharCnt, replaceNextCharCnt, positionDelta) => {\n // Try if possible to go through the existing `replacePreviousChar` command\n if (replaceNextCharCnt || positionDelta) {\n // must be handled through the new command\n const payload = { text, replacePrevCharCnt, replaceNextCharCnt, positionDelta };\n this._commandService.executeCommand(\"compositionType\" /* editorCommon.Handler.CompositionType */, payload);\n }\n else {\n const payload = { text, replaceCharCnt: replacePrevCharCnt };\n this._commandService.executeCommand(\"replacePreviousChar\" /* editorCommon.Handler.ReplacePreviousChar */, payload);\n }\n },\n startComposition: () => {\n this._commandService.executeCommand(\"compositionStart\" /* editorCommon.Handler.CompositionStart */, {});\n },\n endComposition: () => {\n this._commandService.executeCommand(\"compositionEnd\" /* editorCommon.Handler.CompositionEnd */, {});\n },\n cut: () => {\n this._commandService.executeCommand(\"cut\" /* editorCommon.Handler.Cut */, {});\n }\n };\n }\n const viewUserInputEvents = new ViewUserInputEvents(viewModel.coordinatesConverter);\n viewUserInputEvents.onKeyDown = (e) => this._onKeyDown.fire(e);\n viewUserInputEvents.onKeyUp = (e) => this._onKeyUp.fire(e);\n viewUserInputEvents.onContextMenu = (e) => this._onContextMenu.fire(e);\n viewUserInputEvents.onMouseMove = (e) => this._onMouseMove.fire(e);\n viewUserInputEvents.onMouseLeave = (e) => this._onMouseLeave.fire(e);\n viewUserInputEvents.onMouseDown = (e) => this._onMouseDown.fire(e);\n viewUserInputEvents.onMouseUp = (e) => this._onMouseUp.fire(e);\n viewUserInputEvents.onMouseDrag = (e) => this._onMouseDrag.fire(e);\n viewUserInputEvents.onMouseDrop = (e) => this._onMouseDrop.fire(e);\n viewUserInputEvents.onMouseDropCanceled = (e) => this._onMouseDropCanceled.fire(e);\n viewUserInputEvents.onMouseWheel = (e) => this._onMouseWheel.fire(e);\n const view = new View(commandDelegate, this._configuration, this._themeService.getColorTheme(), viewModel, viewUserInputEvents, this._overflowWidgetsDomNode, this._instantiationService);\n return [view, true];\n }\n _postDetachModelCleanup(detachedModel) {\n detachedModel === null || detachedModel === void 0 ? void 0 : detachedModel.removeAllDecorationsWithOwnerId(this._id);\n }\n _detachModel() {\n var _a;\n (_a = this._contributionsDisposable) === null || _a === void 0 ? void 0 : _a.dispose();\n this._contributionsDisposable = undefined;\n if (!this._modelData) {\n return null;\n }\n const model = this._modelData.model;\n const removeDomNode = this._modelData.hasRealView ? this._modelData.view.domNode.domNode : null;\n this._modelData.dispose();\n this._modelData = null;\n this._domElement.removeAttribute('data-mode-id');\n if (removeDomNode && this._domElement.contains(removeDomNode)) {\n this._domElement.removeChild(removeDomNode);\n }\n if (this._bannerDomNode && this._domElement.contains(this._bannerDomNode)) {\n this._domElement.removeChild(this._bannerDomNode);\n }\n return model;\n }\n _removeDecorationType(key) {\n this._codeEditorService.removeDecorationType(key);\n }\n hasModel() {\n return (this._modelData !== null);\n }\n showDropIndicatorAt(position) {\n const newDecorations = [{\n range: new Range(position.lineNumber, position.column, position.lineNumber, position.column),\n options: CodeEditorWidget_1.dropIntoEditorDecorationOptions\n }];\n this._dropIntoEditorDecorations.set(newDecorations);\n this.revealPosition(position, 1 /* editorCommon.ScrollType.Immediate */);\n }\n removeDropIndicator() {\n this._dropIntoEditorDecorations.clear();\n }\n setContextValue(key, value) {\n this._contextKeyService.createKey(key, value);\n }\n _beginUpdate() {\n this._updateCounter++;\n if (this._updateCounter === 1) {\n this._onBeginUpdate.fire();\n }\n }\n _endUpdate() {\n this._updateCounter--;\n if (this._updateCounter === 0) {\n this._onEndUpdate.fire();\n }\n }\n};\nCodeEditorWidget.dropIntoEditorDecorationOptions = ModelDecorationOptions.register({\n description: 'workbench-dnd-target',\n className: 'dnd-target'\n});\nCodeEditorWidget = CodeEditorWidget_1 = __decorate([\n __param(3, IInstantiationService),\n __param(4, ICodeEditorService),\n __param(5, ICommandService),\n __param(6, IContextKeyService),\n __param(7, IThemeService),\n __param(8, INotificationService),\n __param(9, IAccessibilityService),\n __param(10, ILanguageConfigurationService),\n __param(11, ILanguageFeaturesService)\n], CodeEditorWidget);\nexport { CodeEditorWidget };\nlet EDITOR_ID = 0;\nclass ModelData {\n constructor(model, viewModel, view, hasRealView, listenersToRemove, attachedView) {\n this.model = model;\n this.viewModel = viewModel;\n this.view = view;\n this.hasRealView = hasRealView;\n this.listenersToRemove = listenersToRemove;\n this.attachedView = attachedView;\n }\n dispose() {\n dispose(this.listenersToRemove);\n this.model.onBeforeDetached(this.attachedView);\n if (this.hasRealView) {\n this.view.dispose();\n }\n this.viewModel.dispose();\n }\n}\nexport class BooleanEventEmitter extends Disposable {\n constructor(_emitterOptions) {\n super();\n this._emitterOptions = _emitterOptions;\n this._onDidChangeToTrue = this._register(new Emitter(this._emitterOptions));\n this.onDidChangeToTrue = this._onDidChangeToTrue.event;\n this._onDidChangeToFalse = this._register(new Emitter(this._emitterOptions));\n this.onDidChangeToFalse = this._onDidChangeToFalse.event;\n this._value = 0 /* BooleanEventValue.NotSet */;\n }\n setValue(_value) {\n const value = (_value ? 2 /* BooleanEventValue.True */ : 1 /* BooleanEventValue.False */);\n if (this._value === value) {\n return;\n }\n this._value = value;\n if (this._value === 2 /* BooleanEventValue.True */) {\n this._onDidChangeToTrue.fire();\n }\n else if (this._value === 1 /* BooleanEventValue.False */) {\n this._onDidChangeToFalse.fire();\n }\n }\n}\n/**\n * A regular event emitter that also makes sure contributions are instantiated if necessary\n */\nclass InteractionEmitter extends Emitter {\n constructor(_contributions, deliveryQueue) {\n super({ deliveryQueue });\n this._contributions = _contributions;\n }\n fire(event) {\n this._contributions.onBeforeInteractionEvent();\n super.fire(event);\n }\n}\nclass EditorContextKeysManager extends Disposable {\n constructor(editor, contextKeyService) {\n super();\n this._editor = editor;\n contextKeyService.createKey('editorId', editor.getId());\n this._editorSimpleInput = EditorContextKeys.editorSimpleInput.bindTo(contextKeyService);\n this._editorFocus = EditorContextKeys.focus.bindTo(contextKeyService);\n this._textInputFocus = EditorContextKeys.textInputFocus.bindTo(contextKeyService);\n this._editorTextFocus = EditorContextKeys.editorTextFocus.bindTo(contextKeyService);\n this._tabMovesFocus = EditorContextKeys.tabMovesFocus.bindTo(contextKeyService);\n this._editorReadonly = EditorContextKeys.readOnly.bindTo(contextKeyService);\n this._inDiffEditor = EditorContextKeys.inDiffEditor.bindTo(contextKeyService);\n this._editorColumnSelection = EditorContextKeys.columnSelection.bindTo(contextKeyService);\n this._hasMultipleSelections = EditorContextKeys.hasMultipleSelections.bindTo(contextKeyService);\n this._hasNonEmptySelection = EditorContextKeys.hasNonEmptySelection.bindTo(contextKeyService);\n this._canUndo = EditorContextKeys.canUndo.bindTo(contextKeyService);\n this._canRedo = EditorContextKeys.canRedo.bindTo(contextKeyService);\n this._register(this._editor.onDidChangeConfiguration(() => this._updateFromConfig()));\n this._register(this._editor.onDidChangeCursorSelection(() => this._updateFromSelection()));\n this._register(this._editor.onDidFocusEditorWidget(() => this._updateFromFocus()));\n this._register(this._editor.onDidBlurEditorWidget(() => this._updateFromFocus()));\n this._register(this._editor.onDidFocusEditorText(() => this._updateFromFocus()));\n this._register(this._editor.onDidBlurEditorText(() => this._updateFromFocus()));\n this._register(this._editor.onDidChangeModel(() => this._updateFromModel()));\n this._register(this._editor.onDidChangeConfiguration(() => this._updateFromModel()));\n this._register(TabFocus.onDidChangeTabFocus((tabFocusMode) => this._tabMovesFocus.set(tabFocusMode)));\n this._updateFromConfig();\n this._updateFromSelection();\n this._updateFromFocus();\n this._updateFromModel();\n this._editorSimpleInput.set(this._editor.isSimpleWidget);\n }\n _updateFromConfig() {\n const options = this._editor.getOptions();\n this._tabMovesFocus.set(TabFocus.getTabFocusMode());\n this._editorReadonly.set(options.get(91 /* EditorOption.readOnly */));\n this._inDiffEditor.set(options.get(61 /* EditorOption.inDiffEditor */));\n this._editorColumnSelection.set(options.get(22 /* EditorOption.columnSelection */));\n }\n _updateFromSelection() {\n const selections = this._editor.getSelections();\n if (!selections) {\n this._hasMultipleSelections.reset();\n this._hasNonEmptySelection.reset();\n }\n else {\n this._hasMultipleSelections.set(selections.length > 1);\n this._hasNonEmptySelection.set(selections.some(s => !s.isEmpty()));\n }\n }\n _updateFromFocus() {\n this._editorFocus.set(this._editor.hasWidgetFocus() && !this._editor.isSimpleWidget);\n this._editorTextFocus.set(this._editor.hasTextFocus() && !this._editor.isSimpleWidget);\n this._textInputFocus.set(this._editor.hasTextFocus());\n }\n _updateFromModel() {\n const model = this._editor.getModel();\n this._canUndo.set(Boolean(model && model.canUndo()));\n this._canRedo.set(Boolean(model && model.canRedo()));\n }\n}\nexport class EditorModeContext extends Disposable {\n constructor(_editor, _contextKeyService, _languageFeaturesService) {\n super();\n this._editor = _editor;\n this._contextKeyService = _contextKeyService;\n this._languageFeaturesService = _languageFeaturesService;\n this._langId = EditorContextKeys.languageId.bindTo(_contextKeyService);\n this._hasCompletionItemProvider = EditorContextKeys.hasCompletionItemProvider.bindTo(_contextKeyService);\n this._hasCodeActionsProvider = EditorContextKeys.hasCodeActionsProvider.bindTo(_contextKeyService);\n this._hasCodeLensProvider = EditorContextKeys.hasCodeLensProvider.bindTo(_contextKeyService);\n this._hasDefinitionProvider = EditorContextKeys.hasDefinitionProvider.bindTo(_contextKeyService);\n this._hasDeclarationProvider = EditorContextKeys.hasDeclarationProvider.bindTo(_contextKeyService);\n this._hasImplementationProvider = EditorContextKeys.hasImplementationProvider.bindTo(_contextKeyService);\n this._hasTypeDefinitionProvider = EditorContextKeys.hasTypeDefinitionProvider.bindTo(_contextKeyService);\n this._hasHoverProvider = EditorContextKeys.hasHoverProvider.bindTo(_contextKeyService);\n this._hasDocumentHighlightProvider = EditorContextKeys.hasDocumentHighlightProvider.bindTo(_contextKeyService);\n this._hasDocumentSymbolProvider = EditorContextKeys.hasDocumentSymbolProvider.bindTo(_contextKeyService);\n this._hasReferenceProvider = EditorContextKeys.hasReferenceProvider.bindTo(_contextKeyService);\n this._hasRenameProvider = EditorContextKeys.hasRenameProvider.bindTo(_contextKeyService);\n this._hasSignatureHelpProvider = EditorContextKeys.hasSignatureHelpProvider.bindTo(_contextKeyService);\n this._hasInlayHintsProvider = EditorContextKeys.hasInlayHintsProvider.bindTo(_contextKeyService);\n this._hasDocumentFormattingProvider = EditorContextKeys.hasDocumentFormattingProvider.bindTo(_contextKeyService);\n this._hasDocumentSelectionFormattingProvider = EditorContextKeys.hasDocumentSelectionFormattingProvider.bindTo(_contextKeyService);\n this._hasMultipleDocumentFormattingProvider = EditorContextKeys.hasMultipleDocumentFormattingProvider.bindTo(_contextKeyService);\n this._hasMultipleDocumentSelectionFormattingProvider = EditorContextKeys.hasMultipleDocumentSelectionFormattingProvider.bindTo(_contextKeyService);\n this._isInEmbeddedEditor = EditorContextKeys.isInEmbeddedEditor.bindTo(_contextKeyService);\n const update = () => this._update();\n // update when model/mode changes\n this._register(_editor.onDidChangeModel(update));\n this._register(_editor.onDidChangeModelLanguage(update));\n // update when registries change\n this._register(_languageFeaturesService.completionProvider.onDidChange(update));\n this._register(_languageFeaturesService.codeActionProvider.onDidChange(update));\n this._register(_languageFeaturesService.codeLensProvider.onDidChange(update));\n this._register(_languageFeaturesService.definitionProvider.onDidChange(update));\n this._register(_languageFeaturesService.declarationProvider.onDidChange(update));\n this._register(_languageFeaturesService.implementationProvider.onDidChange(update));\n this._register(_languageFeaturesService.typeDefinitionProvider.onDidChange(update));\n this._register(_languageFeaturesService.hoverProvider.onDidChange(update));\n this._register(_languageFeaturesService.documentHighlightProvider.onDidChange(update));\n this._register(_languageFeaturesService.documentSymbolProvider.onDidChange(update));\n this._register(_languageFeaturesService.referenceProvider.onDidChange(update));\n this._register(_languageFeaturesService.renameProvider.onDidChange(update));\n this._register(_languageFeaturesService.documentFormattingEditProvider.onDidChange(update));\n this._register(_languageFeaturesService.documentRangeFormattingEditProvider.onDidChange(update));\n this._register(_languageFeaturesService.signatureHelpProvider.onDidChange(update));\n this._register(_languageFeaturesService.inlayHintsProvider.onDidChange(update));\n update();\n }\n dispose() {\n super.dispose();\n }\n reset() {\n this._contextKeyService.bufferChangeEvents(() => {\n this._langId.reset();\n this._hasCompletionItemProvider.reset();\n this._hasCodeActionsProvider.reset();\n this._hasCodeLensProvider.reset();\n this._hasDefinitionProvider.reset();\n this._hasDeclarationProvider.reset();\n this._hasImplementationProvider.reset();\n this._hasTypeDefinitionProvider.reset();\n this._hasHoverProvider.reset();\n this._hasDocumentHighlightProvider.reset();\n this._hasDocumentSymbolProvider.reset();\n this._hasReferenceProvider.reset();\n this._hasRenameProvider.reset();\n this._hasDocumentFormattingProvider.reset();\n this._hasDocumentSelectionFormattingProvider.reset();\n this._hasSignatureHelpProvider.reset();\n this._isInEmbeddedEditor.reset();\n });\n }\n _update() {\n const model = this._editor.getModel();\n if (!model) {\n this.reset();\n return;\n }\n this._contextKeyService.bufferChangeEvents(() => {\n this._langId.set(model.getLanguageId());\n this._hasCompletionItemProvider.set(this._languageFeaturesService.completionProvider.has(model));\n this._hasCodeActionsProvider.set(this._languageFeaturesService.codeActionProvider.has(model));\n this._hasCodeLensProvider.set(this._languageFeaturesService.codeLensProvider.has(model));\n this._hasDefinitionProvider.set(this._languageFeaturesService.definitionProvider.has(model));\n this._hasDeclarationProvider.set(this._languageFeaturesService.declarationProvider.has(model));\n this._hasImplementationProvider.set(this._languageFeaturesService.implementationProvider.has(model));\n this._hasTypeDefinitionProvider.set(this._languageFeaturesService.typeDefinitionProvider.has(model));\n this._hasHoverProvider.set(this._languageFeaturesService.hoverProvider.has(model));\n this._hasDocumentHighlightProvider.set(this._languageFeaturesService.documentHighlightProvider.has(model));\n this._hasDocumentSymbolProvider.set(this._languageFeaturesService.documentSymbolProvider.has(model));\n this._hasReferenceProvider.set(this._languageFeaturesService.referenceProvider.has(model));\n this._hasRenameProvider.set(this._languageFeaturesService.renameProvider.has(model));\n this._hasSignatureHelpProvider.set(this._languageFeaturesService.signatureHelpProvider.has(model));\n this._hasInlayHintsProvider.set(this._languageFeaturesService.inlayHintsProvider.has(model));\n this._hasDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.has(model) || this._languageFeaturesService.documentRangeFormattingEditProvider.has(model));\n this._hasDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.has(model));\n this._hasMultipleDocumentFormattingProvider.set(this._languageFeaturesService.documentFormattingEditProvider.all(model).length + this._languageFeaturesService.documentRangeFormattingEditProvider.all(model).length > 1);\n this._hasMultipleDocumentSelectionFormattingProvider.set(this._languageFeaturesService.documentRangeFormattingEditProvider.all(model).length > 1);\n this._isInEmbeddedEditor.set(model.uri.scheme === Schemas.walkThroughSnippet || model.uri.scheme === Schemas.vscodeChatCodeBlock);\n });\n }\n}\nclass CodeEditorWidgetFocusTracker extends Disposable {\n constructor(domElement, overflowWidgetsDomNode) {\n super();\n this._onChange = this._register(new Emitter());\n this.onChange = this._onChange.event;\n this._hadFocus = undefined;\n this._hasDomElementFocus = false;\n this._domFocusTracker = this._register(dom.trackFocus(domElement));\n this._overflowWidgetsDomNodeHasFocus = false;\n this._register(this._domFocusTracker.onDidFocus(() => {\n this._hasDomElementFocus = true;\n this._update();\n }));\n this._register(this._domFocusTracker.onDidBlur(() => {\n this._hasDomElementFocus = false;\n this._update();\n }));\n if (overflowWidgetsDomNode) {\n this._overflowWidgetsDomNode = this._register(dom.trackFocus(overflowWidgetsDomNode));\n this._register(this._overflowWidgetsDomNode.onDidFocus(() => {\n this._overflowWidgetsDomNodeHasFocus = true;\n this._update();\n }));\n this._register(this._overflowWidgetsDomNode.onDidBlur(() => {\n this._overflowWidgetsDomNodeHasFocus = false;\n this._update();\n }));\n }\n }\n _update() {\n const focused = this._hasDomElementFocus || this._overflowWidgetsDomNodeHasFocus;\n if (this._hadFocus !== focused) {\n this._hadFocus = focused;\n this._onChange.fire(undefined);\n }\n }\n hasFocus() {\n var _a;\n return (_a = this._hadFocus) !== null && _a !== void 0 ? _a : false;\n }\n}\nclass EditorDecorationsCollection {\n get length() {\n return this._decorationIds.length;\n }\n constructor(_editor, decorations) {\n this._editor = _editor;\n this._decorationIds = [];\n this._isChangingDecorations = false;\n if (Array.isArray(decorations) && decorations.length > 0) {\n this.set(decorations);\n }\n }\n onDidChange(listener, thisArgs, disposables) {\n return this._editor.onDidChangeModelDecorations((e) => {\n if (this._isChangingDecorations) {\n return;\n }\n listener.call(thisArgs, e);\n }, disposables);\n }\n getRange(index) {\n if (!this._editor.hasModel()) {\n return null;\n }\n if (index >= this._decorationIds.length) {\n return null;\n }\n return this._editor.getModel().getDecorationRange(this._decorationIds[index]);\n }\n getRanges() {\n if (!this._editor.hasModel()) {\n return [];\n }\n const model = this._editor.getModel();\n const result = [];\n for (const decorationId of this._decorationIds) {\n const range = model.getDecorationRange(decorationId);\n if (range) {\n result.push(range);\n }\n }\n return result;\n }\n has(decoration) {\n return this._decorationIds.includes(decoration.id);\n }\n clear() {\n if (this._decorationIds.length === 0) {\n // nothing to do\n return;\n }\n this.set([]);\n }\n set(newDecorations) {\n try {\n this._isChangingDecorations = true;\n this._editor.changeDecorations((accessor) => {\n this._decorationIds = accessor.deltaDecorations(this._decorationIds, newDecorations);\n });\n }\n finally {\n this._isChangingDecorations = false;\n }\n return this._decorationIds;\n }\n append(newDecorations) {\n let newDecorationIds = [];\n try {\n this._isChangingDecorations = true;\n this._editor.changeDecorations((accessor) => {\n newDecorationIds = accessor.deltaDecorations([], newDecorations);\n this._decorationIds = this._decorationIds.concat(newDecorationIds);\n });\n }\n finally {\n this._isChangingDecorations = false;\n }\n return newDecorationIds;\n }\n}\nconst squigglyStart = encodeURIComponent(``);\nfunction getSquigglySVGData(color) {\n return squigglyStart + encodeURIComponent(color.toString()) + squigglyEnd;\n}\nconst dotdotdotStart = encodeURIComponent(``);\nfunction getDotDotDotSVGData(color) {\n return dotdotdotStart + encodeURIComponent(color.toString()) + dotdotdotEnd;\n}\nregisterThemingParticipant((theme, collector) => {\n const errorForeground = theme.getColor(editorErrorForeground);\n if (errorForeground) {\n collector.addRule(`.monaco-editor .${\"squiggly-error\" /* ClassName.EditorErrorDecoration */} { background: url(\"data:image/svg+xml,${getSquigglySVGData(errorForeground)}\") repeat-x bottom left; }`);\n }\n const warningForeground = theme.getColor(editorWarningForeground);\n if (warningForeground) {\n collector.addRule(`.monaco-editor .${\"squiggly-warning\" /* ClassName.EditorWarningDecoration */} { background: url(\"data:image/svg+xml,${getSquigglySVGData(warningForeground)}\") repeat-x bottom left; }`);\n }\n const infoForeground = theme.getColor(editorInfoForeground);\n if (infoForeground) {\n collector.addRule(`.monaco-editor .${\"squiggly-info\" /* ClassName.EditorInfoDecoration */} { background: url(\"data:image/svg+xml,${getSquigglySVGData(infoForeground)}\") repeat-x bottom left; }`);\n }\n const hintForeground = theme.getColor(editorHintForeground);\n if (hintForeground) {\n collector.addRule(`.monaco-editor .${\"squiggly-hint\" /* ClassName.EditorHintDecoration */} { background: url(\"data:image/svg+xml,${getDotDotDotSVGData(hintForeground)}\") no-repeat bottom left; }`);\n }\n const unnecessaryForeground = theme.getColor(editorUnnecessaryCodeOpacity);\n if (unnecessaryForeground) {\n collector.addRule(`.monaco-editor.showUnused .${\"squiggly-inline-unnecessary\" /* ClassName.EditorUnnecessaryInlineDecoration */} { opacity: ${unnecessaryForeground.rgba.a}; }`);\n }\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 *--------------------------------------------------------------------------------------------*/\nvar __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\nvar __param = (this && this.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n};\nimport * as objects from '../../../../base/common/objects.js';\nimport { ICodeEditorService } from '../../services/codeEditorService.js';\nimport { CodeEditorWidget } from './codeEditorWidget.js';\nimport { ILanguageConfigurationService } from '../../../common/languages/languageConfigurationRegistry.js';\nimport { ILanguageFeaturesService } from '../../../common/services/languageFeatures.js';\nimport { IAccessibilityService } from '../../../../platform/accessibility/common/accessibility.js';\nimport { ICommandService } from '../../../../platform/commands/common/commands.js';\nimport { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js';\nimport { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';\nimport { INotificationService } from '../../../../platform/notification/common/notification.js';\nimport { IThemeService } from '../../../../platform/theme/common/themeService.js';\nlet EmbeddedCodeEditorWidget = class EmbeddedCodeEditorWidget extends CodeEditorWidget {\n constructor(domElement, options, codeEditorWidgetOptions, parentEditor, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService) {\n super(domElement, { ...parentEditor.getRawOptions(), overflowWidgetsDomNode: parentEditor.getOverflowWidgetsDomNode() }, codeEditorWidgetOptions, instantiationService, codeEditorService, commandService, contextKeyService, themeService, notificationService, accessibilityService, languageConfigurationService, languageFeaturesService);\n this._parentEditor = parentEditor;\n this._overwriteOptions = options;\n // Overwrite parent's options\n super.updateOptions(this._overwriteOptions);\n this._register(parentEditor.onDidChangeConfiguration((e) => this._onParentConfigurationChanged(e)));\n }\n getParentEditor() {\n return this._parentEditor;\n }\n _onParentConfigurationChanged(e) {\n super.updateOptions(this._parentEditor.getRawOptions());\n super.updateOptions(this._overwriteOptions);\n }\n updateOptions(newOptions) {\n objects.mixin(this._overwriteOptions, newOptions, true);\n super.updateOptions(this._overwriteOptions);\n }\n};\nEmbeddedCodeEditorWidget = __decorate([\n __param(4, IInstantiationService),\n __param(5, ICodeEditorService),\n __param(6, ICommandService),\n __param(7, IContextKeyService),\n __param(8, IThemeService),\n __param(9, INotificationService),\n __param(10, IAccessibilityService),\n __param(11, ILanguageConfigurationService),\n __param(12, ILanguageFeaturesService)\n], EmbeddedCodeEditorWidget);\nexport { EmbeddedCodeEditorWidget };\n"],"names":["CodeEditorContributions","constructor","super","this","_editor","_instantiationService","_instances","_register","_pending","Map","_finishedInstantiation","initialize","editor","contributions","instantiationService","desc","has","id","Error","set","_instantiateSome","getDomNode","saveViewState","contributionsState","contribution","restoreViewState","get","_instantiateById","onBeforeInteractionEvent","onAfterModelAttached","_a","instantiation","contribs","_findPendingContributionsByInstantiation","contrib","result","push","delete","instance","createInstance","ctor","console","warn","err","CodeEditorWidget_1","__decorate","decorators","target","key","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__param","paramIndex","decorator","CodeEditorWidget","isSimpleWidget","_configuration","contextMenuId","domElement","_options","codeEditorWidgetOptions","codeEditorService","commandService","contextKeyService","themeService","notificationService","accessibilityService","languageConfigurationService","languageFeaturesService","_b","_deliveryQueue","_contributions","_onDidDispose","onDidDispose","event","_onDidChangeModelContent","deliveryQueue","onDidChangeModelContent","_onDidChangeModelLanguage","onDidChangeModelLanguage","_onDidChangeModelLanguageConfiguration","onDidChangeModelLanguageConfiguration","_onDidChangeModelOptions","onDidChangeModelOptions","_onDidChangeModelDecorations","onDidChangeModelDecorations","_onDidChangeModelTokens","onDidChangeModelTokens","_onDidChangeConfiguration","onDidChangeConfiguration","_onWillChangeModel","onWillChangeModel","_onDidChangeModel","onDidChangeModel","_onDidChangeCursorPosition","onDidChangeCursorPosition","_onDidChangeCursorSelection","onDidChangeCursorSelection","_onDidAttemptReadOnlyEdit","InteractionEmitter","onDidAttemptReadOnlyEdit","_onDidLayoutChange","onDidLayoutChange","_editorTextFocus","BooleanEventEmitter","onDidFocusEditorText","onDidChangeToTrue","onDidBlurEditorText","onDidChangeToFalse","_editorWidgetFocus","onDidFocusEditorWidget","onDidBlurEditorWidget","_onWillType","onWillType","_onDidType","onDidType","_onDidCompositionStart","onDidCompositionStart","_onDidCompositionEnd","onDidCompositionEnd","_onDidPaste","onDidPaste","_onMouseUp","onMouseUp","_onMouseDown","onMouseDown","_onMouseDrag","onMouseDrag","_onMouseDrop","onMouseDrop","_onMouseDropCanceled","onMouseDropCanceled","_onDropIntoEditor","onDropIntoEditor","_onContextMenu","onContextMenu","_onMouseMove","onMouseMove","_onMouseLeave","onMouseLeave","_onMouseWheel","onMouseWheel","_onKeyUp","onKeyUp","_onKeyDown","onKeyDown","_onDidContentSizeChange","onDidContentSizeChange","_onDidScrollChange","onDidScrollChange","_onDidChangeViewZones","onDidChangeViewZones","_onDidChangeHiddenAreas","onDidChangeHiddenAreas","_updateCounter","_onBeginUpdate","onBeginUpdate","_onEndUpdate","onEndUpdate","_actions","_bannerDomNode","_dropIntoEditorDecorations","createDecorationsCollection","willCreateCodeEditor","options","_domElement","_overflowWidgetsDomNode","overflowWidgetsDomNode","_id","EDITOR_ID","_decorationTypeKeysToIds","_decorationTypeSubtypes","_telemetryData","telemetryData","_createConfiguration","onDidChange","e","fire","hasChanged","layoutInfo","_contextKeyService","createScoped","_notificationService","_codeEditorService","_commandService","_themeService","EditorContextKeysManager","EditorModeContext","createChild","_modelData","_focusTracker","CodeEditorWidgetFocusTracker","onChange","setValue","hasFocus","_contentWidgets","_overlayWidgets","_glyphMarginWidgets","Array","isArray","action","internalAction","label","alias","metadata","precondition","undefined","args","invokeFunction","accessor","Promise","resolve","runEditorCommand","isDropIntoEnabled","enabled","dom","onDragOver","getTargetAtClientPoint","clientX","clientY","position","showDropIndicatorAt","onDrop","async","removeDropIndicator","dataTransfer","onDragLeave","onDragEnd","addCodeEditor","writeScreenReaderContent","reason","view","getId","getEditorType","editorCommon","dispose","removeCodeEditor","clear","_removeDecorationTypes","_postDetachModelCleanup","_detachModel","invokeWithinContext","fn","updateOptions","newOptions","getOptions","getOption","getRawOptions","getOverflowWidgetsDomNode","getConfiguredWordAtPosition","model","getValue","preserveBOM","eolPreference","lineEnding","newValue","_beginUpdate","_endUpdate","getModel","setModel","_model","oldModelUrl","uri","newModelUrl","hasTextFocus","detachedModel","_attachModel","hasModel","focus","_contributionsDisposable","decorationType","subTypes","subType","_removeDecorationType","getVisibleRanges","viewModel","getVisibleRangesPlusViewportAboveBelow","getWhitespaces","viewLayout","_getVerticalOffsetAfterPosition","modelData","modelLineNumber","modelColumn","includeViewZones","modelPosition","validatePosition","lineNumber","column","viewPosition","coordinatesConverter","convertModelPositionToViewPosition","getVerticalOffsetAfterLineNumber","getTopForLineNumber","_getVerticalOffsetForPosition","getTopForPosition","getVerticalOffsetForLineNumber","getBottomForLineNumber","setHiddenAreas","ranges","source","map","getVisibleColumnFromPosition","rawPosition","tabSize","getLineContent","getPosition","setPosition","setSelections","selectionStartLineNumber","selectionStartColumn","positionLineNumber","positionColumn","_sendRevealRange","modelRange","verticalType","revealHorizontal","scrollType","validatedModelRange","validateRange","viewRange","convertModelRangeToViewRange","revealRange","revealLine","_revealLine","revealLineInCenter","revealLineInCenterIfOutsideViewport","revealLineNearTop","revealType","revealPosition","_revealPosition","revealPositionInCenter","revealPositionInCenterIfOutsideViewport","revealPositionNearTop","getSelection","getSelections","setSelection","something","isSelection","isRange","_setSelectionImpl","selection","startLineNumber","startColumn","endLineNumber","endColumn","sel","revealLines","_revealLines","revealLinesInCenter","revealLinesInCenterIfOutsideViewport","revealLinesNearTop","range","revealVerticalInCenter","_revealRange","revealRangeInCenter","revealRangeInCenterIfOutsideViewport","revealRangeNearTop","revealRangeNearTopIfOutsideViewport","revealRangeAtTop","len","getContentWidth","getScrollWidth","getScrollLeft","getCurrentScrollLeft","getContentHeight","getScrollHeight","getScrollTop","getCurrentScrollTop","setScrollLeft","newScrollLeft","setScrollPosition","scrollLeft","setScrollTop","newScrollTop","scrollTop","hasPendingScrollAnimation","cursorState","saveCursorState","viewState","saveState","s","hasRealView","codeEditorState","restoreCursorState","reducedState","reduceRestoreState","restoreState","handleInitialized","_getViewModel","visibleLinesStabilized","getContribution","getActions","from","values","getSupportedActions","filter","isSupported","getAction","trigger","handlerId","payload","_startComposition","_endComposition","_type","text","_compositionType","replaceCharCnt","replacePrevCharCnt","replaceNextCharCnt","positionDelta","_paste","pasteOnNewLine","multicursorText","mode","clipboardEvent","_cut","run","then","_triggerEditorCommand","_triggerCommand","executeCommand","startComposition","endComposition","type","compositionType","startPosition","getStartPosition","paste","endPosition","languageId","cut","command","pushUndoStop","pushStackElement","popUndoStop","popStackElement","executeEdits","edits","endCursorState","cursorStateComputer","executeCommands","commands","decorations","EditorDecorationsCollection","changeDecorations","callback","getLineDecorations","getDecorationsInRange","deltaDecorations","oldDecorations","newDecorations","removeDecorations","decorationIds","changeAccessor","removeDecorationsByType","decorationTypeKey","oldDecorationsIds","hasOwnProperty","getLayoutInfo","createOverviewRuler","cssClassName","getContainerDomNode","domNode","delegateVerticalScrollbarPointerDown","browserEvent","delegateScrollFromMouseWheelEvent","layout","dimension","postponeRendering","observeContainer","render","isFocused","hasWidgetFocus","addContentWidget","widget","widgetData","layoutContentWidget","widgetId","removeContentWidget","addOverlayWidget","layoutOverlayWidget","removeOverlayWidget","addGlyphMarginWidget","layoutGlyphMarginWidget","removeGlyphMarginWidget","changeViewZones","change","getScrolledVisiblePosition","top","left","getOffsetForColumn","glyphMarginWidth","lineNumbersWidth","decorationsWidth","height","forceRedraw","batchEvents","setAriaOptions","applyFontInfo","setBanner","domNodeHeight","contains","removeChild","setReservedHeight","prepend","listenersToRemove","setAttribute","getLanguageId","setIsDominatedByLongLines","isDominatedByLongLines","setModelLineCount","getLineCount","attachedView","onBeforeAttached","onWillDispose","onEvent","kind","reachedMaxCursorCount","multiCursorLimit","message","nls","prompt","query","positions","selections","e1","secondaryPositions","slice","e2","secondarySelections","modelVersionId","oldSelections","oldModelVersionId","_createView","appendChild","keys","toString","ModelData","commandDelegate","viewUserInputEvents","getColorTheme","removeAllDecorationsWithOwnerId","removeDomNode","removeAttribute","removeDecorationType","dropIntoEditorDecorationOptions","setContextValue","value","createKey","description","className","onBeforeDetached","_emitterOptions","_onDidChangeToTrue","_onDidChangeToFalse","_value","_editorSimpleInput","_editorFocus","_textInputFocus","_tabMovesFocus","_editorReadonly","_inDiffEditor","_editorColumnSelection","_hasMultipleSelections","_hasNonEmptySelection","_canUndo","_canRedo","_updateFromConfig","_updateFromSelection","_updateFromFocus","_updateFromModel","tabFocusMode","some","isEmpty","reset","Boolean","canUndo","canRedo","_languageFeaturesService","_langId","_hasCompletionItemProvider","_hasCodeActionsProvider","_hasCodeLensProvider","_hasDefinitionProvider","_hasDeclarationProvider","_hasImplementationProvider","_hasTypeDefinitionProvider","_hasHoverProvider","_hasDocumentHighlightProvider","_hasDocumentSymbolProvider","_hasReferenceProvider","_hasRenameProvider","_hasSignatureHelpProvider","_hasInlayHintsProvider","_hasDocumentFormattingProvider","_hasDocumentSelectionFormattingProvider","_hasMultipleDocumentFormattingProvider","_hasMultipleDocumentSelectionFormattingProvider","_isInEmbeddedEditor","update","_update","completionProvider","codeActionProvider","codeLensProvider","definitionProvider","declarationProvider","implementationProvider","typeDefinitionProvider","hoverProvider","documentHighlightProvider","documentSymbolProvider","referenceProvider","renameProvider","documentFormattingEditProvider","documentRangeFormattingEditProvider","signatureHelpProvider","inlayHintsProvider","bufferChangeEvents","all","scheme","_onChange","_hadFocus","_hasDomElementFocus","_domFocusTracker","_overflowWidgetsDomNodeHasFocus","onDidFocus","onDidBlur","focused","_decorationIds","_isChangingDecorations","listener","thisArgs","disposables","call","getRange","index","getDecorationRange","getRanges","decorationId","decoration","includes","append","newDecorationIds","concat","squigglyStart","encodeURIComponent","squigglyEnd","getSquigglySVGData","color","dotdotdotStart","dotdotdotEnd","theme","collector","errorForeground","getColor","addRule","warningForeground","infoForeground","hintForeground","unnecessaryForeground","rgba","a","EmbeddedCodeEditorWidget","parentEditor","_parentEditor","_overwriteOptions","_onParentConfigurationChanged","getParentEditor"],"sourceRoot":""}