monaco-editor-core 0.56.0-dev-20251124 → 0.56.0-dev-20251217
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/nls.keys.json +1 -1
- package/esm/nls.messages.cs.js +2 -2
- package/esm/nls.messages.de.js +2 -2
- package/esm/nls.messages.es.js +2 -2
- package/esm/nls.messages.fr.js +2 -2
- package/esm/nls.messages.it.js +2 -2
- package/esm/nls.messages.ja.js +2 -2
- package/esm/nls.messages.js +1 -1
- package/esm/nls.messages.json +1 -1
- package/esm/nls.messages.ko.js +2 -2
- package/esm/nls.messages.pl.js +2 -2
- package/esm/nls.messages.pt-br.js +2 -2
- package/esm/nls.messages.ru.js +2 -2
- package/esm/nls.messages.tr.js +2 -2
- package/esm/nls.messages.zh-cn.js +2 -2
- package/esm/nls.messages.zh-tw.js +2 -2
- package/esm/nls.metadata.json +34 -2
- package/esm/vs/base/browser/dom.js +1 -4
- package/esm/vs/base/browser/dom.js.map +1 -1
- package/esm/vs/base/browser/markdownRenderer.js +25 -11
- package/esm/vs/base/browser/markdownRenderer.js.map +1 -1
- package/esm/vs/base/browser/ui/button/button.js +15 -8
- package/esm/vs/base/browser/ui/button/button.js.map +1 -1
- package/esm/vs/base/browser/ui/codicons/codicon/codicon-modifiers.css +3 -8
- package/esm/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
- package/esm/vs/base/browser/ui/list/list.css +1 -0
- package/esm/vs/base/browser/ui/toolbar/toolbar.js +3 -0
- package/esm/vs/base/browser/ui/toolbar/toolbar.js.map +1 -1
- package/esm/vs/base/common/async.js +11 -0
- package/esm/vs/base/common/async.js.map +1 -1
- package/esm/vs/base/common/codiconsLibrary.js +11 -2
- package/esm/vs/base/common/codiconsLibrary.js.map +1 -1
- package/esm/vs/base/common/defaultAccount.js +6 -0
- package/esm/vs/base/common/defaultAccount.js.map +1 -0
- package/esm/vs/base/common/equals.js +73 -24
- package/esm/vs/base/common/equals.js.map +1 -1
- package/esm/vs/base/common/event.js +14 -4
- package/esm/vs/base/common/event.js.map +1 -1
- package/esm/vs/base/common/iterator.js.map +1 -1
- package/esm/vs/base/common/keybindings.js +0 -8
- package/esm/vs/base/common/keybindings.js.map +1 -1
- package/esm/vs/base/common/lifecycle.js +2 -2
- package/esm/vs/base/common/lifecycle.js.map +1 -1
- package/esm/vs/base/common/marshallingIds.js.map +1 -1
- package/esm/vs/base/common/observableInternal/index.js +1 -1
- package/esm/vs/base/common/observableInternal/index.js.map +1 -1
- package/esm/vs/base/common/observableInternal/observables/observableFromEvent.js +1 -1
- package/esm/vs/base/common/observableInternal/observables/observableFromEvent.js.map +1 -1
- package/esm/vs/base/common/observableInternal/reactions/autorunImpl.js +16 -0
- package/esm/vs/base/common/observableInternal/reactions/autorunImpl.js.map +1 -1
- package/esm/vs/base/common/observableInternal/utils/utils.js +11 -0
- package/esm/vs/base/common/observableInternal/utils/utils.js.map +1 -1
- package/esm/vs/base/common/product.js.map +1 -1
- package/esm/vs/base/common/strings.js +3 -1
- package/esm/vs/base/common/strings.js.map +1 -1
- package/esm/vs/editor/browser/controller/dragScrolling.js +2 -1
- package/esm/vs/editor/browser/controller/dragScrolling.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/clipboardUtils.js +73 -2
- package/esm/vs/editor/browser/controller/editContext/clipboardUtils.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/native/nativeEditContext.js +7 -51
- package/esm/vs/editor/browser/controller/editContext/native/nativeEditContext.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/screenReaderUtils.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +7 -20
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContextInput.js +14 -44
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContextInput.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContextRegistry.js +19 -0
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContextRegistry.js.map +1 -0
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContextState.js +14 -1
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContextState.js.map +1 -1
- package/esm/vs/editor/browser/controller/mouseHandler.js +5 -2
- package/esm/vs/editor/browser/controller/mouseHandler.js.map +1 -1
- package/esm/vs/editor/browser/editorBrowser.js.map +1 -1
- package/esm/vs/editor/browser/observableCodeEditor.js +32 -15
- package/esm/vs/editor/browser/observableCodeEditor.js.map +1 -1
- package/esm/vs/editor/browser/view.js +11 -2
- package/esm/vs/editor/browser/view.js.map +1 -1
- package/esm/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +5 -2
- package/esm/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js.map +1 -1
- package/esm/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +10 -0
- package/esm/vs/editor/browser/widget/codeEditor/codeEditorWidget.js.map +1 -1
- package/esm/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js.map +1 -1
- package/esm/vs/editor/browser/widget/multiDiffEditor/style.css +48 -0
- package/esm/vs/editor/common/config/fontInfo.js +1 -1
- package/esm/vs/editor/common/config/fontInfo.js.map +1 -1
- package/esm/vs/editor/common/core/edits/edit.js +19 -0
- package/esm/vs/editor/common/core/edits/edit.js.map +1 -1
- package/esm/vs/editor/common/core/edits/stringEdit.js +13 -0
- package/esm/vs/editor/common/core/edits/stringEdit.js.map +1 -1
- package/esm/vs/editor/common/core/edits/textEdit.js.map +1 -1
- package/esm/vs/editor/common/core/text/positionToOffsetImpl.js +24 -10
- package/esm/vs/editor/common/core/text/positionToOffsetImpl.js.map +1 -1
- package/esm/vs/editor/common/cursor/cursorMoveCommands.js +4 -4
- package/esm/vs/editor/common/cursor/cursorMoveCommands.js.map +1 -1
- package/esm/vs/editor/common/cursor/cursorWordOperations.js +6 -3
- package/esm/vs/editor/common/cursor/cursorWordOperations.js.map +1 -1
- package/esm/vs/editor/common/languages/defaultDocumentColorsComputer.js +2 -2
- package/esm/vs/editor/common/languages/defaultDocumentColorsComputer.js.map +1 -1
- package/esm/vs/editor/common/languages/nullTokenize.js +1 -1
- package/esm/vs/editor/common/languages/nullTokenize.js.map +1 -1
- package/esm/vs/editor/common/languages/supports/tokenization.js +3 -0
- package/esm/vs/editor/common/languages/supports/tokenization.js.map +1 -1
- package/esm/vs/editor/common/languages.js +2 -1
- package/esm/vs/editor/common/languages.js.map +1 -1
- package/esm/vs/editor/common/model/decorationProvider.js +21 -1
- package/esm/vs/editor/common/model/decorationProvider.js.map +1 -1
- package/esm/vs/editor/common/model/textModel.js +49 -30
- package/esm/vs/editor/common/model/textModel.js.map +1 -1
- package/esm/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js +6 -3
- package/esm/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js.map +1 -1
- package/esm/vs/editor/common/model/tokens/annotations.js +177 -0
- package/esm/vs/editor/common/model/tokens/annotations.js.map +1 -0
- package/esm/vs/editor/common/model/tokens/tokenizationFontDecorationsProvider.js +131 -0
- package/esm/vs/editor/common/model/tokens/tokenizationFontDecorationsProvider.js.map +1 -0
- package/esm/vs/editor/common/model/tokens/tokenizationTextModelPart.js +9 -0
- package/esm/vs/editor/common/model/tokens/tokenizationTextModelPart.js.map +1 -1
- package/esm/vs/editor/common/model/tokens/tokenizerSyntaxTokenBackend.js +9 -0
- package/esm/vs/editor/common/model/tokens/tokenizerSyntaxTokenBackend.js.map +1 -1
- package/esm/vs/editor/common/textModelEditSource.js +2 -0
- package/esm/vs/editor/common/textModelEditSource.js.map +1 -1
- package/esm/vs/editor/common/textModelEvents.js.map +1 -1
- package/esm/vs/editor/common/viewLayout/lineDecorations.js.map +1 -1
- package/esm/vs/editor/common/viewLayout/viewLineRenderer.js +1 -1
- package/esm/vs/editor/common/viewLayout/viewLineRenderer.js.map +1 -1
- package/esm/vs/editor/contrib/clipboard/browser/clipboard.js +54 -36
- package/esm/vs/editor/contrib/clipboard/browser/clipboard.js.map +1 -1
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +14 -1
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js.map +1 -1
- package/esm/vs/editor/contrib/floatingMenu/browser/floatingMenu.css +1 -1
- package/esm/vs/editor/contrib/hover/browser/hover.css +1 -1
- package/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
- package/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js.map +1 -1
- package/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
- package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +1 -0
- package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/commandIds.js +2 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/commandIds.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +33 -4
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/commands.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +13 -12
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +7 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
- package/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +5 -5
- package/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +2 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/InlineSuggestAlternativeAction.js +8 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/InlineSuggestAlternativeAction.js.map +1 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/editKind.js +198 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/editKind.js.map +1 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionIsVisible.js +40 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionIsVisible.js.map +1 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +128 -65
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +69 -13
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +159 -94
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +124 -50
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.js +393 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.js.map +1 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/telemetry.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/utils.js +20 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/utils.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +59 -42
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +29 -8
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +78 -46
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditWithChanges.js +9 -4
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditWithChanges.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.js +11 -4
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +81 -41
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewInterface.js +48 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewInterface.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js +18 -15
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCollapsedView.js +3 -4
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCollapsedView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js +6 -7
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.js +4 -5
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js +4 -3
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +8 -8
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.js +9 -7
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +203 -41
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/jumpToView.js +189 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/jumpToView.js.map +1 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/inlineEditsLongDistanceHint.js +85 -102
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/inlineEditsLongDistanceHint.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistancePreviewEditor.js +75 -32
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistancePreviewEditor.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistnaceWidgetPlacement.js +121 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistnaceWidgetPlacement.js.map +1 -0
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.js +2 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +22 -20
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js +15 -5
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/view.css +39 -6
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineSuggestionsView.js +10 -5
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineSuggestionsView.js.map +1 -1
- package/esm/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
- package/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
- package/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js +32 -32
- package/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js.map +1 -1
- package/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
- package/esm/vs/editor/contrib/links/browser/links.js +10 -10
- package/esm/vs/editor/contrib/message/browser/messageController.js +1 -1
- package/esm/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
- package/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
- package/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +4 -4
- package/esm/vs/editor/contrib/peekView/browser/peekView.js +18 -18
- package/esm/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
- package/esm/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +11 -11
- package/esm/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +32 -32
- package/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
- package/esm/vs/editor/contrib/rename/browser/rename.js +19 -11
- package/esm/vs/editor/contrib/rename/browser/rename.js.map +1 -1
- package/esm/vs/editor/contrib/rename/browser/renameWidget.js +7 -7
- package/esm/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +3 -2
- package/esm/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js.map +1 -1
- package/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
- package/esm/vs/editor/contrib/snippet/browser/snippetController2.js +4 -4
- package/esm/vs/editor/contrib/snippet/browser/snippetParser.js +33 -0
- package/esm/vs/editor/contrib/snippet/browser/snippetParser.js.map +1 -1
- package/esm/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +12 -4
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js.map +1 -1
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +1 -0
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js.map +1 -1
- package/esm/vs/editor/contrib/suggest/browser/suggest.js +9 -8
- package/esm/vs/editor/contrib/suggest/browser/suggest.js.map +1 -1
- package/esm/vs/editor/contrib/suggest/browser/suggestController.js +39 -28
- package/esm/vs/editor/contrib/suggest/browser/suggestController.js.map +1 -1
- package/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +1 -0
- package/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js.map +1 -1
- package/esm/vs/editor/contrib/suggest/browser/suggestWidget.js +22 -18
- package/esm/vs/editor/contrib/suggest/browser/suggestWidget.js.map +1 -1
- package/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +28 -6
- package/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js.map +1 -1
- package/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
- package/esm/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
- package/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
- package/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
- package/esm/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
- package/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
- package/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +24 -24
- package/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
- package/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
- package/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
- package/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js +19 -2
- package/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js.map +1 -1
- package/esm/vs/editor/editor.api.d.ts +37 -2
- package/esm/vs/editor/standalone/browser/standaloneLanguages.js +2 -2
- package/esm/vs/editor/standalone/browser/standaloneLanguages.js.map +1 -1
- package/esm/vs/editor/standalone/browser/standaloneServices.js +11 -1
- package/esm/vs/editor/standalone/browser/standaloneServices.js.map +1 -1
- package/esm/vs/editor/standalone/common/monarch/monarchLexer.js +1 -1
- package/esm/vs/editor/standalone/common/monarch/monarchLexer.js.map +1 -1
- package/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +62 -62
- package/esm/vs/platform/action/common/actionCommonCategories.js +6 -6
- package/esm/vs/platform/actionWidget/browser/actionList.js +4 -4
- package/esm/vs/platform/actionWidget/browser/actionWidget.css +11 -8
- package/esm/vs/platform/actionWidget/browser/actionWidget.js +7 -7
- package/esm/vs/platform/actions/browser/menuEntryActionViewItem.js +5 -5
- package/esm/vs/platform/actions/browser/toolbar.js +2 -2
- package/esm/vs/platform/actions/common/actions.js +11 -4
- package/esm/vs/platform/actions/common/actions.js.map +1 -1
- package/esm/vs/platform/actions/common/menuService.js +2 -2
- package/esm/vs/platform/configuration/common/configurationRegistry.js +10 -10
- package/esm/vs/platform/contextkey/browser/contextKeyService.js +1 -1
- package/esm/vs/platform/contextkey/common/contextkey.js +9 -9
- package/esm/vs/platform/contextkey/common/contextkeys.js +9 -9
- package/esm/vs/platform/contextkey/common/scanner.js +5 -5
- package/esm/vs/platform/{product/common/productService.js → defaultAccount/common/defaultAccount.js} +2 -2
- package/esm/vs/platform/defaultAccount/common/defaultAccount.js.map +1 -0
- package/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
- package/esm/vs/platform/hover/browser/hoverWidget.js +1 -1
- package/esm/vs/platform/hover/browser/updatableHoverWidget.js +1 -1
- package/esm/vs/platform/instantiation/common/instantiation.js.map +1 -1
- package/esm/vs/platform/instantiation/common/instantiationService.js +1 -8
- package/esm/vs/platform/instantiation/common/instantiationService.js.map +1 -1
- package/esm/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
- package/esm/vs/platform/list/browser/listService.js +27 -27
- package/esm/vs/platform/log/common/log.js +1 -1
- package/esm/vs/platform/log/common/log.js.map +1 -1
- package/esm/vs/platform/markers/common/markerService.js +6 -6
- package/esm/vs/platform/markers/common/markerService.js.map +1 -1
- package/esm/vs/platform/markers/common/markers.js +6 -6
- package/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +8 -8
- package/esm/vs/platform/quickinput/browser/helpQuickAccess.js +1 -1
- package/esm/vs/platform/quickinput/browser/media/quickInput.css +7 -3
- package/esm/vs/platform/quickinput/browser/quickInput.js +19 -11
- package/esm/vs/platform/quickinput/browser/quickInput.js.map +1 -1
- package/esm/vs/platform/quickinput/browser/quickInputActions.js +5 -5
- package/esm/vs/platform/quickinput/browser/quickInputController.js +6 -6
- package/esm/vs/platform/quickinput/browser/quickInputList.js +1 -1
- package/esm/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
- package/esm/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
- package/esm/vs/platform/theme/common/colorUtils.js +2 -2
- package/esm/vs/platform/theme/common/colors/baseColors.js +18 -17
- package/esm/vs/platform/theme/common/colors/baseColors.js.map +1 -1
- package/esm/vs/platform/theme/common/colors/chartsColors.js +8 -8
- package/esm/vs/platform/theme/common/colors/editorColors.js +95 -95
- package/esm/vs/platform/theme/common/colors/inputColors.js +47 -47
- package/esm/vs/platform/theme/common/colors/listColors.js +36 -36
- package/esm/vs/platform/theme/common/colors/menuColors.js +7 -7
- package/esm/vs/platform/theme/common/colors/minimapColors.js +13 -13
- package/esm/vs/platform/theme/common/colors/minimapColors.js.map +1 -1
- package/esm/vs/platform/theme/common/colors/miscColors.js +16 -16
- package/esm/vs/platform/theme/common/colors/quickpickColors.js +9 -9
- package/esm/vs/platform/theme/common/colors/searchColors.js +3 -3
- package/esm/vs/platform/theme/common/iconRegistry.js +6 -6
- package/esm/vs/platform/undoRedo/common/undoRedoService.js +21 -21
- package/esm/vs/platform/undoRedo/common/undoRedoService.js.map +1 -1
- package/esm/vs/platform/window/common/window.js +1 -1
- package/esm/vs/platform/window/common/window.js.map +1 -1
- package/esm/vs/platform/workspace/common/workspace.js +1 -1
- package/monaco.d.ts +37 -2
- package/package.json +2 -2
- package/version.txt +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineEdit.js +0 -16
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineEdit.js.map +0 -1
- package/esm/vs/platform/product/common/productService.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src/vs/editor/standalone/browser/standaloneServices.ts","vs/editor/standalone/browser/standaloneServices.ts"],"names":[],"mappings":"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","file":"standaloneServices.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport './standaloneCodeEditorService.js';\nimport './standaloneLayoutService.js';\nimport '../../../platform/undoRedo/common/undoRedoService.js';\nimport '../../common/services/languageFeatureDebounce.js';\nimport '../../common/services/semanticTokensStylingService.js';\nimport '../../common/services/languageFeaturesService.js';\nimport '../../../platform/hover/browser/hoverService.js';\nimport '../../browser/services/inlineCompletionsService.js';\n\nimport * as strings from '../../../base/common/strings.js';\nimport * as dom from '../../../base/browser/dom.js';\nimport { StandardKeyboardEvent } from '../../../base/browser/keyboardEvent.js';\nimport { Emitter, Event } from '../../../base/common/event.js';\nimport { ResolvedKeybinding, KeyCodeChord, decodeKeybinding } from '../../../base/common/keybindings.js';\nimport { IDisposable, IReference, ImmortalReference, toDisposable, DisposableStore, Disposable, combinedDisposable } from '../../../base/common/lifecycle.js';\nimport { OS, isLinux, isMacintosh } from '../../../base/common/platform.js';\nimport Severity from '../../../base/common/severity.js';\nimport { URI } from '../../../base/common/uri.js';\nimport { IBulkEditOptions, IBulkEditResult, IBulkEditService, ResourceEdit, ResourceTextEdit } from '../../browser/services/bulkEditService.js';\nimport { isDiffEditorConfigurationKey, isEditorConfigurationKey } from '../../common/config/editorConfigurationSchema.js';\nimport { EditOperation, ISingleEditOperation } from '../../common/core/editOperation.js';\nimport { IPosition, Position as Pos } from '../../common/core/position.js';\nimport { Range } from '../../common/core/range.js';\nimport { ITextModel } from '../../common/model.js';\nimport { IModelService } from '../../common/services/model.js';\nimport { IResolvedTextEditorModel, ITextModelService } from '../../common/services/resolverService.js';\nimport { ITextResourceConfigurationService, ITextResourcePropertiesService, ITextResourceConfigurationChangeEvent } from '../../common/services/textResourceConfiguration.js';\nimport { CommandsRegistry, ICommandEvent, ICommandHandler, ICommandService } from '../../../platform/commands/common/commands.js';\nimport { IConfigurationChangeEvent, IConfigurationOverrides, IConfigurationService, IConfigurationValue, ConfigurationTarget } from '../../../platform/configuration/common/configuration.js';\nimport { Configuration, ConfigurationModel, ConfigurationChangeEvent } from '../../../platform/configuration/common/configurationModels.js';\nimport { IContextKeyService, ContextKeyExpression } from '../../../platform/contextkey/common/contextkey.js';\nimport { IConfirmation, IConfirmationResult, IDialogService, IPrompt, IPromptResult, IPromptWithCustomCancel, IPromptResultWithCancel, IPromptWithDefaultCancel, IPromptBaseButton } from '../../../platform/dialogs/common/dialogs.js';\nimport { createDecorator, IInstantiationService, ServiceIdentifier } from '../../../platform/instantiation/common/instantiation.js';\nimport { AbstractKeybindingService } from '../../../platform/keybinding/common/abstractKeybindingService.js';\nimport { IKeybindingService, IKeyboardEvent } from '../../../platform/keybinding/common/keybinding.js';\nimport { KeybindingResolver } from '../../../platform/keybinding/common/keybindingResolver.js';\nimport { IKeybindingItem, KeybindingsRegistry } from '../../../platform/keybinding/common/keybindingsRegistry.js';\nimport { ResolvedKeybindingItem } from '../../../platform/keybinding/common/resolvedKeybindingItem.js';\nimport { USLayoutResolvedKeybinding } from '../../../platform/keybinding/common/usLayoutResolvedKeybinding.js';\nimport { ILabelService } from '../../../platform/label/common/label.js';\nimport { INotification, INotificationHandle, INotificationService, IPromptChoice, IPromptOptions, NoOpNotification, IStatusMessageOptions, IStatusHandle } from '../../../platform/notification/common/notification.js';\nimport { IProgressRunner, IEditorProgressService, IProgressService, IProgress, IProgressCompositeOptions, IProgressDialogOptions, IProgressNotificationOptions, IProgressOptions, IProgressStep, IProgressWindowOptions } from '../../../platform/progress/common/progress.js';\nimport { ITelemetryService } from '../../../platform/telemetry/common/telemetry.js';\nimport { IWorkspace, IWorkspaceContextService, IWorkspaceFolder, WorkspaceFolder, STANDALONE_EDITOR_WORKSPACE_ID } from '../../../platform/workspace/common/workspace.js';\nimport { ILayoutService } from '../../../platform/layout/browser/layoutService.js';\nimport { StandaloneServicesNLS } from '../../common/standaloneStrings.js';\nimport { basename } from '../../../base/common/resources.js';\nimport { ICodeEditorService } from '../../browser/services/codeEditorService.js';\nimport { ConsoleLogger, ILoggerService, ILogService, NullLoggerService } from '../../../platform/log/common/log.js';\nimport { IWorkspaceTrustManagementService } from '../../../platform/workspace/common/workspaceTrust.js';\nimport { EditorOption } from '../../common/config/editorOptions.js';\nimport { ICodeEditor, IDiffEditor } from '../../browser/editorBrowser.js';\nimport { IContextMenuService, IContextViewDelegate, IContextViewService, IOpenContextView } from '../../../platform/contextview/browser/contextView.js';\nimport { ContextViewService } from '../../../platform/contextview/browser/contextViewService.js';\nimport { LanguageService } from '../../common/services/languageService.js';\nimport { ContextMenuService } from '../../../platform/contextview/browser/contextMenuService.js';\nimport { getSingletonServiceDescriptors, InstantiationType, registerSingleton } from '../../../platform/instantiation/common/extensions.js';\nimport { OpenerService } from '../../browser/services/openerService.js';\nimport { ILanguageService } from '../../common/languages/language.js';\nimport { MarkerDecorationsService } from '../../common/services/markerDecorationsService.js';\nimport { IMarkerDecorationsService } from '../../common/services/markerDecorations.js';\nimport { ModelService } from '../../common/services/modelService.js';\nimport { StandaloneQuickInputService } from './quickInput/standaloneQuickInputService.js';\nimport { StandaloneThemeService } from './standaloneThemeService.js';\nimport { IStandaloneThemeService } from '../common/standaloneTheme.js';\nimport { AccessibilityService } from '../../../platform/accessibility/browser/accessibilityService.js';\nimport { IAccessibilityService } from '../../../platform/accessibility/common/accessibility.js';\nimport { IMenuService } from '../../../platform/actions/common/actions.js';\nimport { MenuService } from '../../../platform/actions/common/menuService.js';\nimport { BrowserClipboardService } from '../../../platform/clipboard/browser/clipboardService.js';\nimport { IClipboardService } from '../../../platform/clipboard/common/clipboardService.js';\nimport { ContextKeyService } from '../../../platform/contextkey/browser/contextKeyService.js';\nimport { SyncDescriptor } from '../../../platform/instantiation/common/descriptors.js';\nimport { InstantiationService } from '../../../platform/instantiation/common/instantiationService.js';\nimport { ServiceCollection } from '../../../platform/instantiation/common/serviceCollection.js';\nimport { IListService, ListService } from '../../../platform/list/browser/listService.js';\nimport { IMarkerService } from '../../../platform/markers/common/markers.js';\nimport { MarkerService } from '../../../platform/markers/common/markerService.js';\nimport { IOpenerService } from '../../../platform/opener/common/opener.js';\nimport { IQuickInputService } from '../../../platform/quickinput/common/quickInput.js';\nimport { IStorageService, InMemoryStorageService } from '../../../platform/storage/common/storage.js';\nimport { DefaultConfiguration } from '../../../platform/configuration/common/configurations.js';\nimport { WorkspaceEdit } from '../../common/languages.js';\nimport { AccessibilitySignal, IAccessibilitySignalService } from '../../../platform/accessibilitySignal/browser/accessibilitySignalService.js';\nimport { LogService } from '../../../platform/log/common/logService.js';\nimport { getEditorFeatures } from '../../common/editorFeatures.js';\nimport { onUnexpectedError } from '../../../base/common/errors.js';\nimport { IEnvironmentService } from '../../../platform/environment/common/environment.js';\nimport { mainWindow } from '../../../base/browser/window.js';\nimport { ResourceMap } from '../../../base/common/map.js';\nimport { ITreeSitterLibraryService } from '../../common/services/treeSitter/treeSitterLibraryService.js';\nimport { StandaloneTreeSitterLibraryService } from './standaloneTreeSitterLibraryService.js';\nimport { IDataChannelService, NullDataChannelService } from '../../../platform/dataChannel/common/dataChannel.js';\nimport { IWebWorkerService } from '../../../platform/webWorker/browser/webWorkerService.js';\nimport { StandaloneWebWorkerService } from './services/standaloneWebWorkerService.js';\n\nclass SimpleModel implements IResolvedTextEditorModel {\n\n\tprivate readonly model: ITextModel;\n\tprivate readonly _onWillDispose: Emitter<void>;\n\n\tconstructor(model: ITextModel) {\n\t\tthis.model = model;\n\t\tthis._onWillDispose = new Emitter<void>();\n\t}\n\n\tpublic get textEditorModel(): ITextModel {\n\t\treturn this.model;\n\t}\n\n\tprivate disposed = false;\n\tpublic dispose(): void {\n\t\tthis.disposed = true;\n\n\t\tthis._onWillDispose.fire();\n\t}\n}\n\nclass StandaloneTextModelService implements ITextModelService {\n\tpublic _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IModelService private readonly modelService: IModelService\n\t) { }\n\n\tpublic createModelReference(resource: URI): Promise<IReference<IResolvedTextEditorModel>> {\n\t\tconst model = this.modelService.getModel(resource);\n\n\t\tif (!model) {\n\t\t\treturn Promise.reject(new Error(`Model not found`));\n\t\t}\n\n\t\treturn Promise.resolve(new ImmortalReference(new SimpleModel(model)));\n\t}\n}\n\nclass StandaloneEditorProgressService implements IEditorProgressService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate static NULL_PROGRESS_RUNNER: IProgressRunner = {\n\t\tdone: () => { },\n\t\ttotal: () => { },\n\t\tworked: () => { }\n\t};\n\n\tshow(infinite: true, delay?: number): IProgressRunner;\n\tshow(total: number, delay?: number): IProgressRunner;\n\tshow(): IProgressRunner {\n\t\treturn StandaloneEditorProgressService.NULL_PROGRESS_RUNNER;\n\t}\n\n\tasync showWhile(promise: Promise<unknown>, delay?: number): Promise<void> {\n\t\tawait promise;\n\t}\n}\n\nclass StandaloneProgressService implements IProgressService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\twithProgress<R>(_options: IProgressOptions | IProgressDialogOptions | IProgressNotificationOptions | IProgressWindowOptions | IProgressCompositeOptions, task: (progress: IProgress<IProgressStep>) => Promise<R>, onDidCancel?: ((choice?: number | undefined) => void) | undefined): Promise<R> {\n\t\treturn task({\n\t\t\treport: () => { },\n\t\t});\n\t}\n}\n\nclass StandaloneEnvironmentService implements IEnvironmentService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\treadonly isExtensionDevelopment: boolean = false;\n\treadonly isBuilt: boolean = false;\n}\n\nclass StandaloneDialogService implements IDialogService {\n\n\t_serviceBrand: undefined;\n\n\tasync confirm(confirmation: IConfirmation): Promise<IConfirmationResult> {\n\t\tconst confirmed = this.doConfirm(confirmation.message, confirmation.detail);\n\n\t\treturn {\n\t\t\tconfirmed,\n\t\t\tcheckboxChecked: false // unsupported\n\t\t};\n\t}\n\n\tprivate doConfirm(message: string, detail?: string): boolean {\n\t\tlet messageText = message;\n\t\tif (detail) {\n\t\t\tmessageText = messageText + '\\n\\n' + detail;\n\t\t}\n\n\t\treturn mainWindow.confirm(messageText);\n\t}\n\n\tprompt<T>(prompt: IPromptWithCustomCancel<T>): Promise<IPromptResultWithCancel<T>>;\n\tprompt<T>(prompt: IPrompt<T>): Promise<IPromptResult<T>>;\n\tprompt<T>(prompt: IPromptWithDefaultCancel<T>): Promise<IPromptResult<T>>;\n\tasync prompt<T>(prompt: IPrompt<T> | IPromptWithCustomCancel<T>): Promise<IPromptResult<T> | IPromptResultWithCancel<T>> {\n\t\tlet result: T | undefined = undefined;\n\t\tconst confirmed = this.doConfirm(prompt.message, prompt.detail);\n\t\tif (confirmed) {\n\t\t\tconst promptButtons: IPromptBaseButton<T>[] = [...(prompt.buttons ?? [])];\n\t\t\tif (prompt.cancelButton && typeof prompt.cancelButton !== 'string' && typeof prompt.cancelButton !== 'boolean') {\n\t\t\t\tpromptButtons.push(prompt.cancelButton);\n\t\t\t}\n\n\t\t\tresult = await promptButtons[0]?.run({ checkboxChecked: false });\n\t\t}\n\n\t\treturn { result };\n\t}\n\n\tasync error(message: string, detail?: string): Promise<void> {\n\t\tawait this.prompt({ type: Severity.Error, message, detail });\n\t}\n}\n\nexport class StandaloneNotificationService implements INotificationService {\n\n\tpublic _serviceBrand: undefined;\n\n\tprivate static readonly NO_OP: INotificationHandle = new NoOpNotification();\n\n\tpublic info(message: string): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Info, message });\n\t}\n\n\tpublic warn(message: string): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Warning, message });\n\t}\n\n\tpublic error(error: string | Error): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Error, message: error });\n\t}\n\n\tpublic notify(notification: INotification): INotificationHandle {\n\t\tswitch (notification.severity) {\n\t\t\tcase Severity.Error:\n\t\t\t\tconsole.error(notification.message);\n\t\t\t\tbreak;\n\t\t\tcase Severity.Warning:\n\t\t\t\tconsole.warn(notification.message);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tconsole.log(notification.message);\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn StandaloneNotificationService.NO_OP;\n\t}\n\n\tpublic prompt(severity: Severity, message: string, choices: IPromptChoice[], options?: IPromptOptions): INotificationHandle {\n\t\treturn StandaloneNotificationService.NO_OP;\n\t}\n\n\tpublic status(message: string | Error, options?: IStatusMessageOptions): IStatusHandle {\n\t\treturn { close: () => { } };\n\t}\n}\n\nexport class StandaloneCommandService implements ICommandService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _instantiationService: IInstantiationService;\n\n\tprivate readonly _onWillExecuteCommand = new Emitter<ICommandEvent>();\n\tprivate readonly _onDidExecuteCommand = new Emitter<ICommandEvent>();\n\tpublic readonly onDidExecuteCommand: Event<ICommandEvent> = this._onDidExecuteCommand.event;\n\n\tconstructor(\n\t\t@IInstantiationService instantiationService: IInstantiationService\n\t) {\n\t\tthis._instantiationService = instantiationService;\n\t}\n\n\tpublic executeCommand<T>(id: string, ...args: unknown[]): Promise<T> {\n\t\tconst command = CommandsRegistry.getCommand(id);\n\t\tif (!command) {\n\t\t\treturn Promise.reject(new Error(`command '${id}' not found`));\n\t\t}\n\n\t\ttry {\n\t\t\tthis._onWillExecuteCommand.fire({ commandId: id, args });\n\t\t\tconst result = this._instantiationService.invokeFunction.apply(this._instantiationService, [command.handler, ...args]) as T;\n\n\t\t\tthis._onDidExecuteCommand.fire({ commandId: id, args });\n\t\t\treturn Promise.resolve(result);\n\t\t} catch (err) {\n\t\t\treturn Promise.reject(err);\n\t\t}\n\t}\n}\n\nexport interface IKeybindingRule {\n\tkeybinding: number;\n\tcommand?: string | null;\n\tcommandArgs?: unknown;\n\twhen?: ContextKeyExpression | null;\n}\n\nexport class StandaloneKeybindingService extends AbstractKeybindingService {\n\tprivate _cachedResolver: KeybindingResolver | null;\n\tprivate _dynamicKeybindings: IKeybindingItem[];\n\tprivate readonly _domNodeListeners: DomNodeListeners[];\n\n\tconstructor(\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t\t@ICommandService commandService: ICommandService,\n\t\t@ITelemetryService telemetryService: ITelemetryService,\n\t\t@INotificationService notificationService: INotificationService,\n\t\t@ILogService logService: ILogService,\n\t\t@ICodeEditorService codeEditorService: ICodeEditorService\n\t) {\n\t\tsuper(contextKeyService, commandService, telemetryService, notificationService, logService);\n\n\t\tthis._cachedResolver = null;\n\t\tthis._dynamicKeybindings = [];\n\t\tthis._domNodeListeners = [];\n\n\t\tconst addContainer = (domNode: HTMLElement) => {\n\t\t\tconst disposables = new DisposableStore();\n\n\t\t\t// for standard keybindings\n\t\t\tdisposables.add(dom.addDisposableListener(domNode, dom.EventType.KEY_DOWN, (e: KeyboardEvent) => {\n\t\t\t\tconst keyEvent = new StandardKeyboardEvent(e);\n\t\t\t\tconst shouldPreventDefault = this._dispatch(keyEvent, keyEvent.target);\n\t\t\t\tif (shouldPreventDefault) {\n\t\t\t\t\tkeyEvent.preventDefault();\n\t\t\t\t\tkeyEvent.stopPropagation();\n\t\t\t\t}\n\t\t\t}));\n\n\t\t\t// for single modifier chord keybindings (e.g. shift shift)\n\t\t\tdisposables.add(dom.addDisposableListener(domNode, dom.EventType.KEY_UP, (e: KeyboardEvent) => {\n\t\t\t\tconst keyEvent = new StandardKeyboardEvent(e);\n\t\t\t\tconst shouldPreventDefault = this._singleModifierDispatch(keyEvent, keyEvent.target);\n\t\t\t\tif (shouldPreventDefault) {\n\t\t\t\t\tkeyEvent.preventDefault();\n\t\t\t\t}\n\t\t\t}));\n\n\t\t\tthis._domNodeListeners.push(new DomNodeListeners(domNode, disposables));\n\t\t};\n\t\tconst removeContainer = (domNode: HTMLElement) => {\n\t\t\tfor (let i = 0; i < this._domNodeListeners.length; i++) {\n\t\t\t\tconst domNodeListeners = this._domNodeListeners[i];\n\t\t\t\tif (domNodeListeners.domNode === domNode) {\n\t\t\t\t\tthis._domNodeListeners.splice(i, 1);\n\t\t\t\t\tdomNodeListeners.dispose();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tconst addCodeEditor = (codeEditor: ICodeEditor) => {\n\t\t\tif (codeEditor.getOption(EditorOption.inDiffEditor)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\taddContainer(codeEditor.getContainerDomNode());\n\t\t};\n\t\tconst removeCodeEditor = (codeEditor: ICodeEditor) => {\n\t\t\tif (codeEditor.getOption(EditorOption.inDiffEditor)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tremoveContainer(codeEditor.getContainerDomNode());\n\t\t};\n\t\tthis._register(codeEditorService.onCodeEditorAdd(addCodeEditor));\n\t\tthis._register(codeEditorService.onCodeEditorRemove(removeCodeEditor));\n\t\tcodeEditorService.listCodeEditors().forEach(addCodeEditor);\n\n\t\tconst addDiffEditor = (diffEditor: IDiffEditor) => {\n\t\t\taddContainer(diffEditor.getContainerDomNode());\n\t\t};\n\t\tconst removeDiffEditor = (diffEditor: IDiffEditor) => {\n\t\t\tremoveContainer(diffEditor.getContainerDomNode());\n\t\t};\n\t\tthis._register(codeEditorService.onDiffEditorAdd(addDiffEditor));\n\t\tthis._register(codeEditorService.onDiffEditorRemove(removeDiffEditor));\n\t\tcodeEditorService.listDiffEditors().forEach(addDiffEditor);\n\t}\n\n\tpublic addDynamicKeybinding(command: string, keybinding: number, handler: ICommandHandler, when: ContextKeyExpression | undefined): IDisposable {\n\t\treturn combinedDisposable(\n\t\t\tCommandsRegistry.registerCommand(command, handler),\n\t\t\tthis.addDynamicKeybindings([{\n\t\t\t\tkeybinding,\n\t\t\t\tcommand,\n\t\t\t\twhen\n\t\t\t}])\n\t\t);\n\t}\n\n\tpublic addDynamicKeybindings(rules: IKeybindingRule[]): IDisposable {\n\t\tconst entries: IKeybindingItem[] = rules.map((rule) => {\n\t\t\tconst keybinding = decodeKeybinding(rule.keybinding, OS);\n\t\t\treturn {\n\t\t\t\tkeybinding,\n\t\t\t\tcommand: rule.command ?? null,\n\t\t\t\tcommandArgs: rule.commandArgs,\n\t\t\t\twhen: rule.when,\n\t\t\t\tweight1: 1000,\n\t\t\t\tweight2: 0,\n\t\t\t\textensionId: null,\n\t\t\t\tisBuiltinExtension: false\n\t\t\t};\n\t\t});\n\t\tthis._dynamicKeybindings = this._dynamicKeybindings.concat(entries);\n\n\t\tthis.updateResolver();\n\n\t\treturn toDisposable(() => {\n\t\t\t// Search the first entry and remove them all since they will be contiguous\n\t\t\tfor (let i = 0; i < this._dynamicKeybindings.length; i++) {\n\t\t\t\tif (this._dynamicKeybindings[i] === entries[0]) {\n\t\t\t\t\tthis._dynamicKeybindings.splice(i, entries.length);\n\t\t\t\t\tthis.updateResolver();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate updateResolver(): void {\n\t\tthis._cachedResolver = null;\n\t\tthis._onDidUpdateKeybindings.fire();\n\t}\n\n\tprotected _getResolver(): KeybindingResolver {\n\t\tif (!this._cachedResolver) {\n\t\t\tconst defaults = this._toNormalizedKeybindingItems(KeybindingsRegistry.getDefaultKeybindings(), true);\n\t\t\tconst overrides = this._toNormalizedKeybindingItems(this._dynamicKeybindings, false);\n\t\t\tthis._cachedResolver = new KeybindingResolver(defaults, overrides, (str) => this._log(str));\n\t\t}\n\t\treturn this._cachedResolver;\n\t}\n\n\tprotected _documentHasFocus(): boolean {\n\t\treturn mainWindow.document.hasFocus();\n\t}\n\n\tprivate _toNormalizedKeybindingItems(items: IKeybindingItem[], isDefault: boolean): ResolvedKeybindingItem[] {\n\t\tconst result: ResolvedKeybindingItem[] = [];\n\t\tlet resultLen = 0;\n\t\tfor (const item of items) {\n\t\t\tconst when = item.when || undefined;\n\t\t\tconst keybinding = item.keybinding;\n\n\t\t\tif (!keybinding) {\n\t\t\t\t// This might be a removal keybinding item in user settings => accept it\n\t\t\t\tresult[resultLen++] = new ResolvedKeybindingItem(undefined, item.command, item.commandArgs, when, isDefault, null, false);\n\t\t\t} else {\n\t\t\t\tconst resolvedKeybindings = USLayoutResolvedKeybinding.resolveKeybinding(keybinding, OS);\n\t\t\t\tfor (const resolvedKeybinding of resolvedKeybindings) {\n\t\t\t\t\tresult[resultLen++] = new ResolvedKeybindingItem(resolvedKeybinding, item.command, item.commandArgs, when, isDefault, null, false);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tpublic resolveKeyboardEvent(keyboardEvent: IKeyboardEvent): ResolvedKeybinding {\n\t\tconst chord = new KeyCodeChord(\n\t\t\tkeyboardEvent.ctrlKey,\n\t\t\tkeyboardEvent.shiftKey,\n\t\t\tkeyboardEvent.altKey,\n\t\t\tkeyboardEvent.metaKey,\n\t\t\tkeyboardEvent.keyCode\n\t\t);\n\t\treturn new USLayoutResolvedKeybinding([chord], OS);\n\t}\n}\n\nclass DomNodeListeners extends Disposable {\n\tconstructor(\n\t\tpublic readonly domNode: HTMLElement,\n\t\tdisposables: DisposableStore\n\t) {\n\t\tsuper();\n\t\tthis._register(disposables);\n\t}\n}\n\nfunction isConfigurationOverrides(thing: unknown): thing is IConfigurationOverrides {\n\treturn !!thing\n\t\t&& typeof thing === 'object'\n\t\t&& (!(thing as IConfigurationOverrides).overrideIdentifier || typeof (thing as IConfigurationOverrides).overrideIdentifier === 'string')\n\t\t&& (!(thing as IConfigurationOverrides).resource || (thing as IConfigurationOverrides).resource instanceof URI);\n}\n\nexport class StandaloneConfigurationService implements IConfigurationService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _onDidChangeConfiguration = new Emitter<IConfigurationChangeEvent>();\n\tpublic readonly onDidChangeConfiguration: Event<IConfigurationChangeEvent> = this._onDidChangeConfiguration.event;\n\n\tprivate readonly _configuration: Configuration;\n\n\tconstructor(\n\t\t@ILogService private readonly logService: ILogService,\n\t) {\n\t\tconst defaultConfiguration = new DefaultConfiguration(logService);\n\t\tthis._configuration = new Configuration(\n\t\t\tdefaultConfiguration.reload(),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tnew ResourceMap<ConfigurationModel>(),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tnew ResourceMap<ConfigurationModel>(),\n\t\t\tlogService\n\t\t);\n\t\tdefaultConfiguration.dispose();\n\t}\n\n\tgetValue<T>(): T;\n\tgetValue<T>(section: string): T;\n\tgetValue<T>(overrides: IConfigurationOverrides): T;\n\tgetValue<T>(section: string, overrides: IConfigurationOverrides): T;\n\tgetValue(arg1?: unknown, arg2?: unknown): unknown {\n\t\tconst section = typeof arg1 === 'string' ? arg1 : undefined;\n\t\tconst overrides = isConfigurationOverrides(arg1) ? arg1 : isConfigurationOverrides(arg2) ? arg2 : {};\n\t\treturn this._configuration.getValue(section, overrides, undefined);\n\t}\n\n\tpublic updateValues(values: [string, unknown][]): Promise<void> {\n\t\tconst previous = { data: this._configuration.toData() };\n\n\t\tconst changedKeys: string[] = [];\n\n\t\tfor (const entry of values) {\n\t\t\tconst [key, value] = entry;\n\t\t\tif (this.getValue(key) === value) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tthis._configuration.updateValue(key, value);\n\t\t\tchangedKeys.push(key);\n\t\t}\n\n\t\tif (changedKeys.length > 0) {\n\t\t\tconst configurationChangeEvent = new ConfigurationChangeEvent({ keys: changedKeys, overrides: [] }, previous, this._configuration, undefined, this.logService);\n\t\t\tconfigurationChangeEvent.source = ConfigurationTarget.MEMORY;\n\t\t\tthis._onDidChangeConfiguration.fire(configurationChangeEvent);\n\t\t}\n\n\t\treturn Promise.resolve();\n\t}\n\n\tpublic updateValue(key: string, value: unknown, arg3?: unknown, arg4?: unknown): Promise<void> {\n\t\treturn this.updateValues([[key, value]]);\n\t}\n\n\tpublic inspect<C>(key: string, options: IConfigurationOverrides = {}): IConfigurationValue<C> {\n\t\treturn this._configuration.inspect<C>(key, options, undefined);\n\t}\n}\n\nclass StandaloneResourceConfigurationService implements ITextResourceConfigurationService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _onDidChangeConfiguration = new Emitter<ITextResourceConfigurationChangeEvent>();\n\n\tconstructor(\n\t\t@IConfigurationService private readonly configurationService: StandaloneConfigurationService,\n\t\t@IModelService private readonly modelService: IModelService,\n\t\t@ILanguageService private readonly languageService: ILanguageService\n\t) {\n\t\tthis.configurationService.onDidChangeConfiguration((e) => {\n\t\t\tthis._onDidChangeConfiguration.fire({ affectedKeys: e.affectedKeys, affectsConfiguration: (resource: URI, configuration: string) => e.affectsConfiguration(configuration) });\n\t\t});\n\t}\n\n\tgetValue<T>(resource: URI, section?: string): T;\n\tgetValue<T>(resource: URI, position?: IPosition, section?: string): T;\n\tgetValue<T>(resource: URI | undefined, arg2?: unknown, arg3?: unknown) {\n\t\tconst position: IPosition | null = Pos.isIPosition(arg2) ? arg2 : null;\n\t\tconst section: string | undefined = position ? (typeof arg3 === 'string' ? arg3 : undefined) : (typeof arg2 === 'string' ? arg2 : undefined);\n\t\tconst language = resource ? this.getLanguage(resource, position) : undefined;\n\t\tif (typeof section === 'undefined') {\n\t\t\treturn this.configurationService.getValue<T>({\n\t\t\t\tresource,\n\t\t\t\toverrideIdentifier: language\n\t\t\t});\n\t\t}\n\t\treturn this.configurationService.getValue<T>(section, {\n\t\t\tresource,\n\t\t\toverrideIdentifier: language\n\t\t});\n\t}\n\n\tprivate getLanguage(resource: URI, position: IPosition | null): string | null {\n\t\tconst model = this.modelService.getModel(resource);\n\t\tif (model) {\n\t\t\treturn position ? model.getLanguageIdAtPosition(position.lineNumber, position.column) : model.getLanguageId();\n\t\t}\n\t\treturn this.languageService.guessLanguageIdByFilepathOrFirstLine(resource);\n\t}\n}\n\nclass StandaloneResourcePropertiesService implements ITextResourcePropertiesService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IConfigurationService private readonly configurationService: IConfigurationService,\n\t) {\n\t}\n\n\tgetEOL(resource: URI, language?: string): string {\n\t\tconst eol = this.configurationService.getValue('files.eol', { overrideIdentifier: language, resource });\n\t\tif (eol && typeof eol === 'string' && eol !== 'auto') {\n\t\t\treturn eol;\n\t\t}\n\t\treturn (isLinux || isMacintosh) ? '\\n' : '\\r\\n';\n\t}\n}\n\nclass StandaloneTelemetryService implements ITelemetryService {\n\tdeclare readonly _serviceBrand: undefined;\n\tpublicLog2() { }\n}\n\nclass StandaloneWorkspaceContextService implements IWorkspaceContextService {\n\n\tpublic _serviceBrand: undefined;\n\n\tprivate static readonly SCHEME = 'inmemory';\n\n\tprivate readonly workspace: IWorkspace;\n\n\tconstructor() {\n\t\tconst resource = URI.from({ scheme: StandaloneWorkspaceContextService.SCHEME, authority: 'model', path: '/' });\n\t\tthis.workspace = { id: STANDALONE_EDITOR_WORKSPACE_ID, folders: [new WorkspaceFolder({ uri: resource, name: '', index: 0 })] };\n\t}\n\n\tpublic getWorkspace(): IWorkspace {\n\t\treturn this.workspace;\n\t}\n\n\tpublic getWorkspaceFolder(resource: URI): IWorkspaceFolder | null {\n\t\treturn resource && resource.scheme === StandaloneWorkspaceContextService.SCHEME ? this.workspace.folders[0] : null;\n\t}\n}\n\nexport function updateConfigurationService(configurationService: IConfigurationService, source: any, isDiffEditor: boolean): void {\n\tif (!source) {\n\t\treturn;\n\t}\n\tif (!(configurationService instanceof StandaloneConfigurationService)) {\n\t\treturn;\n\t}\n\tconst toUpdate: [string, unknown][] = [];\n\tObject.keys(source).forEach((key) => {\n\t\tif (isEditorConfigurationKey(key)) {\n\t\t\ttoUpdate.push([`editor.${key}`, source[key]]);\n\t\t}\n\t\tif (isDiffEditor && isDiffEditorConfigurationKey(key)) {\n\t\t\ttoUpdate.push([`diffEditor.${key}`, source[key]]);\n\t\t}\n\t});\n\tif (toUpdate.length > 0) {\n\t\tconfigurationService.updateValues(toUpdate);\n\t}\n}\n\nclass StandaloneBulkEditService implements IBulkEditService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IModelService private readonly _modelService: IModelService\n\t) {\n\t\t//\n\t}\n\n\thasPreviewHandler(): false {\n\t\treturn false;\n\t}\n\n\tasync apply(editsIn: ResourceEdit[] | WorkspaceEdit, _options?: IBulkEditOptions): Promise<IBulkEditResult> {\n\t\tconst edits = Array.isArray(editsIn) ? editsIn : ResourceEdit.convert(editsIn);\n\t\tconst textEdits = new Map<ITextModel, ISingleEditOperation[]>();\n\n\t\tfor (const edit of edits) {\n\t\t\tif (!(edit instanceof ResourceTextEdit)) {\n\t\t\t\tthrow new Error('bad edit - only text edits are supported');\n\t\t\t}\n\t\t\tconst model = this._modelService.getModel(edit.resource);\n\t\t\tif (!model) {\n\t\t\t\tthrow new Error('bad edit - model not found');\n\t\t\t}\n\t\t\tif (typeof edit.versionId === 'number' && model.getVersionId() !== edit.versionId) {\n\t\t\t\tthrow new Error('bad state - model changed in the meantime');\n\t\t\t}\n\t\t\tlet array = textEdits.get(model);\n\t\t\tif (!array) {\n\t\t\t\tarray = [];\n\t\t\t\ttextEdits.set(model, array);\n\t\t\t}\n\t\t\tarray.push(EditOperation.replaceMove(Range.lift(edit.textEdit.range), edit.textEdit.text));\n\t\t}\n\n\n\t\tlet totalEdits = 0;\n\t\tlet totalFiles = 0;\n\t\tfor (const [model, edits] of textEdits) {\n\t\t\tmodel.pushStackElement();\n\t\t\tmodel.pushEditOperations([], edits, () => []);\n\t\t\tmodel.pushStackElement();\n\t\t\ttotalFiles += 1;\n\t\t\ttotalEdits += edits.length;\n\t\t}\n\n\t\treturn {\n\t\t\tariaSummary: strings.format(StandaloneServicesNLS.bulkEditServiceSummary, totalEdits, totalFiles),\n\t\t\tisApplied: totalEdits > 0\n\t\t};\n\t}\n}\n\nclass StandaloneUriLabelService implements ILabelService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tpublic getUriLabel(resource: URI, options?: { relative?: boolean; forceNoTildify?: boolean }): string {\n\t\tif (resource.scheme === 'file') {\n\t\t\treturn resource.fsPath;\n\t\t}\n\t\treturn resource.path;\n\t}\n\n\tgetUriBasenameLabel(resource: URI): string {\n\t\treturn basename(resource);\n\t}\n}\n\n\nclass StandaloneContextViewService extends ContextViewService {\n\n\tconstructor(\n\t\t@ILayoutService layoutService: ILayoutService,\n\t\t@ICodeEditorService private readonly _codeEditorService: ICodeEditorService,\n\t) {\n\t\tsuper(layoutService);\n\t}\n\n\toverride showContextView(delegate: IContextViewDelegate, container?: HTMLElement, shadowRoot?: boolean): IOpenContextView {\n\t\tif (!container) {\n\t\t\tconst codeEditor = this._codeEditorService.getFocusedCodeEditor() || this._codeEditorService.getActiveCodeEditor();\n\t\t\tif (codeEditor) {\n\t\t\t\tcontainer = codeEditor.getContainerDomNode();\n\t\t\t}\n\t\t}\n\t\treturn super.showContextView(delegate, container, shadowRoot);\n\t}\n}\n\nclass StandaloneWorkspaceTrustManagementService implements IWorkspaceTrustManagementService {\n\t_serviceBrand: undefined;\n\n\tprivate _neverEmitter = new Emitter<never>();\n\tpublic readonly onDidChangeTrust: Event<boolean> = this._neverEmitter.event;\n\n\tisWorkspaceTrusted(): boolean {\n\t\treturn true;\n\t}\n}\n\nclass StandaloneLanguageService extends LanguageService {\n\tconstructor() {\n\t\tsuper();\n\t}\n}\n\nclass StandaloneLogService extends LogService {\n\tconstructor() {\n\t\tsuper(new ConsoleLogger());\n\t}\n}\n\nclass StandaloneContextMenuService extends ContextMenuService {\n\tconstructor(\n\t\t@ITelemetryService telemetryService: ITelemetryService,\n\t\t@INotificationService notificationService: INotificationService,\n\t\t@IContextViewService contextViewService: IContextViewService,\n\t\t@IKeybindingService keybindingService: IKeybindingService,\n\t\t@IMenuService menuService: IMenuService,\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t) {\n\t\tsuper(telemetryService, notificationService, contextViewService, keybindingService, menuService, contextKeyService);\n\t\tthis.configure({ blockMouse: false }); // we do not want that in the standalone editor\n\t}\n}\n\nclass StandaloneAccessbilitySignalService implements IAccessibilitySignalService {\n\t_serviceBrand: undefined;\n\tasync playSignal(cue: AccessibilitySignal, options: {}): Promise<void> {\n\t}\n}\n\nexport interface IEditorOverrideServices {\n\t[index: string]: unknown;\n}\n\n\nregisterSingleton(IWebWorkerService, StandaloneWebWorkerService, InstantiationType.Eager);\nregisterSingleton(ILogService, StandaloneLogService, InstantiationType.Eager);\nregisterSingleton(IConfigurationService, StandaloneConfigurationService, InstantiationType.Eager);\nregisterSingleton(ITextResourceConfigurationService, StandaloneResourceConfigurationService, InstantiationType.Eager);\nregisterSingleton(ITextResourcePropertiesService, StandaloneResourcePropertiesService, InstantiationType.Eager);\nregisterSingleton(IWorkspaceContextService, StandaloneWorkspaceContextService, InstantiationType.Eager);\nregisterSingleton(ILabelService, StandaloneUriLabelService, InstantiationType.Eager);\nregisterSingleton(ITelemetryService, StandaloneTelemetryService, InstantiationType.Eager);\nregisterSingleton(IDialogService, StandaloneDialogService, InstantiationType.Eager);\nregisterSingleton(IEnvironmentService, StandaloneEnvironmentService, InstantiationType.Eager);\nregisterSingleton(INotificationService, StandaloneNotificationService, InstantiationType.Eager);\nregisterSingleton(IMarkerService, MarkerService, InstantiationType.Eager);\nregisterSingleton(ILanguageService, StandaloneLanguageService, InstantiationType.Eager);\nregisterSingleton(IStandaloneThemeService, StandaloneThemeService, InstantiationType.Eager);\nregisterSingleton(IModelService, ModelService, InstantiationType.Eager);\nregisterSingleton(IMarkerDecorationsService, MarkerDecorationsService, InstantiationType.Eager);\nregisterSingleton(IContextKeyService, ContextKeyService, InstantiationType.Eager);\nregisterSingleton(IProgressService, StandaloneProgressService, InstantiationType.Eager);\nregisterSingleton(IEditorProgressService, StandaloneEditorProgressService, InstantiationType.Eager);\nregisterSingleton(IStorageService, InMemoryStorageService, InstantiationType.Eager);\nregisterSingleton(IBulkEditService, StandaloneBulkEditService, InstantiationType.Eager);\nregisterSingleton(IWorkspaceTrustManagementService, StandaloneWorkspaceTrustManagementService, InstantiationType.Eager);\nregisterSingleton(ITextModelService, StandaloneTextModelService, InstantiationType.Eager);\nregisterSingleton(IAccessibilityService, AccessibilityService, InstantiationType.Eager);\nregisterSingleton(IListService, ListService, InstantiationType.Eager);\nregisterSingleton(ICommandService, StandaloneCommandService, InstantiationType.Eager);\nregisterSingleton(IKeybindingService, StandaloneKeybindingService, InstantiationType.Eager);\nregisterSingleton(IQuickInputService, StandaloneQuickInputService, InstantiationType.Eager);\nregisterSingleton(IContextViewService, StandaloneContextViewService, InstantiationType.Eager);\nregisterSingleton(IOpenerService, OpenerService, InstantiationType.Eager);\nregisterSingleton(IClipboardService, BrowserClipboardService, InstantiationType.Eager);\nregisterSingleton(IContextMenuService, StandaloneContextMenuService, InstantiationType.Eager);\nregisterSingleton(IMenuService, MenuService, InstantiationType.Eager);\nregisterSingleton(IAccessibilitySignalService, StandaloneAccessbilitySignalService, InstantiationType.Eager);\nregisterSingleton(ITreeSitterLibraryService, StandaloneTreeSitterLibraryService, InstantiationType.Eager);\nregisterSingleton(ILoggerService, NullLoggerService, InstantiationType.Eager);\nregisterSingleton(IDataChannelService, NullDataChannelService, InstantiationType.Eager);\n\n/**\n * We don't want to eagerly instantiate services because embedders get a one time chance\n * to override services when they create the first editor.\n */\nexport module StandaloneServices {\n\n\tconst serviceCollection = new ServiceCollection();\n\tfor (const [id, descriptor] of getSingletonServiceDescriptors()) {\n\t\tserviceCollection.set(id, descriptor);\n\t}\n\n\tconst instantiationService = new InstantiationService(serviceCollection, true);\n\tserviceCollection.set(IInstantiationService, instantiationService);\n\n\texport function get<T>(serviceId: ServiceIdentifier<T>): T {\n\t\tif (!initialized) {\n\t\t\tinitialize({});\n\t\t}\n\t\tconst r = serviceCollection.get(serviceId);\n\t\tif (!r) {\n\t\t\tthrow new Error('Missing service ' + serviceId);\n\t\t}\n\t\tif (r instanceof SyncDescriptor) {\n\t\t\treturn instantiationService.invokeFunction((accessor) => accessor.get(serviceId));\n\t\t} else {\n\t\t\treturn r;\n\t\t}\n\t}\n\n\tlet initialized = false;\n\tconst onDidInitialize = new Emitter<void>();\n\texport function initialize(overrides: IEditorOverrideServices): IInstantiationService {\n\t\tif (initialized) {\n\t\t\treturn instantiationService;\n\t\t}\n\t\tinitialized = true;\n\n\t\t// Add singletons that were registered after this module loaded\n\t\tfor (const [id, descriptor] of getSingletonServiceDescriptors()) {\n\t\t\tif (!serviceCollection.get(id)) {\n\t\t\t\tserviceCollection.set(id, descriptor);\n\t\t\t}\n\t\t}\n\n\t\t// Initialize the service collection with the overrides, but only if the\n\t\t// service was not instantiated in the meantime.\n\t\tfor (const serviceId in overrides) {\n\t\t\tif (overrides.hasOwnProperty(serviceId)) {\n\t\t\t\tconst serviceIdentifier = createDecorator(serviceId);\n\t\t\t\tconst r = serviceCollection.get(serviceIdentifier);\n\t\t\t\tif (r instanceof SyncDescriptor) {\n\t\t\t\t\tserviceCollection.set(serviceIdentifier, overrides[serviceId]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Instantiate all editor features\n\t\tconst editorFeatures = getEditorFeatures();\n\t\tfor (const feature of editorFeatures) {\n\t\t\ttry {\n\t\t\t\tinstantiationService.createInstance(feature);\n\t\t\t} catch (err) {\n\t\t\t\tonUnexpectedError(err);\n\t\t\t}\n\t\t}\n\n\t\tonDidInitialize.fire();\n\n\t\treturn instantiationService;\n\t}\n\n\t/**\n\t * Executes callback once services are initialized.\n\t */\n\texport function withServices(callback: () => IDisposable): IDisposable {\n\t\tif (initialized) {\n\t\t\treturn callback();\n\t\t}\n\n\t\tconst disposable = new DisposableStore();\n\n\t\tconst listener = disposable.add(onDidInitialize.event(() => {\n\t\t\tlistener.dispose();\n\t\t\tdisposable.add(callback());\n\t\t}));\n\n\t\treturn disposable;\n\t}\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 *--------------------------------------------------------------------------------------------*/\n\nimport './standaloneCodeEditorService.js';\nimport './standaloneLayoutService.js';\nimport '../../../platform/undoRedo/common/undoRedoService.js';\nimport '../../common/services/languageFeatureDebounce.js';\nimport '../../common/services/semanticTokensStylingService.js';\nimport '../../common/services/languageFeaturesService.js';\nimport '../../../platform/hover/browser/hoverService.js';\nimport '../../browser/services/inlineCompletionsService.js';\n\nimport * as strings from '../../../base/common/strings.js';\nimport * as dom from '../../../base/browser/dom.js';\nimport { StandardKeyboardEvent } from '../../../base/browser/keyboardEvent.js';\nimport { Emitter, Event } from '../../../base/common/event.js';\nimport { ResolvedKeybinding, KeyCodeChord, decodeKeybinding } from '../../../base/common/keybindings.js';\nimport { IDisposable, IReference, ImmortalReference, toDisposable, DisposableStore, Disposable, combinedDisposable } from '../../../base/common/lifecycle.js';\nimport { OS, isLinux, isMacintosh } from '../../../base/common/platform.js';\nimport Severity from '../../../base/common/severity.js';\nimport { URI } from '../../../base/common/uri.js';\nimport { IBulkEditOptions, IBulkEditResult, IBulkEditService, ResourceEdit, ResourceTextEdit } from '../../browser/services/bulkEditService.js';\nimport { isDiffEditorConfigurationKey, isEditorConfigurationKey } from '../../common/config/editorConfigurationSchema.js';\nimport { EditOperation, ISingleEditOperation } from '../../common/core/editOperation.js';\nimport { IPosition, Position as Pos } from '../../common/core/position.js';\nimport { Range } from '../../common/core/range.js';\nimport { ITextModel } from '../../common/model.js';\nimport { IModelService } from '../../common/services/model.js';\nimport { IResolvedTextEditorModel, ITextModelService } from '../../common/services/resolverService.js';\nimport { ITextResourceConfigurationService, ITextResourcePropertiesService, ITextResourceConfigurationChangeEvent } from '../../common/services/textResourceConfiguration.js';\nimport { CommandsRegistry, ICommandEvent, ICommandHandler, ICommandService } from '../../../platform/commands/common/commands.js';\nimport { IConfigurationChangeEvent, IConfigurationOverrides, IConfigurationService, IConfigurationValue, ConfigurationTarget } from '../../../platform/configuration/common/configuration.js';\nimport { Configuration, ConfigurationModel, ConfigurationChangeEvent } from '../../../platform/configuration/common/configurationModels.js';\nimport { IContextKeyService, ContextKeyExpression } from '../../../platform/contextkey/common/contextkey.js';\nimport { IConfirmation, IConfirmationResult, IDialogService, IPrompt, IPromptResult, IPromptWithCustomCancel, IPromptResultWithCancel, IPromptWithDefaultCancel, IPromptBaseButton } from '../../../platform/dialogs/common/dialogs.js';\nimport { createDecorator, IInstantiationService, ServiceIdentifier } from '../../../platform/instantiation/common/instantiation.js';\nimport { AbstractKeybindingService } from '../../../platform/keybinding/common/abstractKeybindingService.js';\nimport { IKeybindingService, IKeyboardEvent } from '../../../platform/keybinding/common/keybinding.js';\nimport { KeybindingResolver } from '../../../platform/keybinding/common/keybindingResolver.js';\nimport { IKeybindingItem, KeybindingsRegistry } from '../../../platform/keybinding/common/keybindingsRegistry.js';\nimport { ResolvedKeybindingItem } from '../../../platform/keybinding/common/resolvedKeybindingItem.js';\nimport { USLayoutResolvedKeybinding } from '../../../platform/keybinding/common/usLayoutResolvedKeybinding.js';\nimport { ILabelService } from '../../../platform/label/common/label.js';\nimport { INotification, INotificationHandle, INotificationService, IPromptChoice, IPromptOptions, NoOpNotification, IStatusMessageOptions, IStatusHandle } from '../../../platform/notification/common/notification.js';\nimport { IProgressRunner, IEditorProgressService, IProgressService, IProgress, IProgressCompositeOptions, IProgressDialogOptions, IProgressNotificationOptions, IProgressOptions, IProgressStep, IProgressWindowOptions } from '../../../platform/progress/common/progress.js';\nimport { ITelemetryService } from '../../../platform/telemetry/common/telemetry.js';\nimport { IWorkspace, IWorkspaceContextService, IWorkspaceFolder, WorkspaceFolder, STANDALONE_EDITOR_WORKSPACE_ID } from '../../../platform/workspace/common/workspace.js';\nimport { ILayoutService } from '../../../platform/layout/browser/layoutService.js';\nimport { StandaloneServicesNLS } from '../../common/standaloneStrings.js';\nimport { basename } from '../../../base/common/resources.js';\nimport { ICodeEditorService } from '../../browser/services/codeEditorService.js';\nimport { ConsoleLogger, ILoggerService, ILogService, NullLoggerService } from '../../../platform/log/common/log.js';\nimport { IWorkspaceTrustManagementService } from '../../../platform/workspace/common/workspaceTrust.js';\nimport { EditorOption } from '../../common/config/editorOptions.js';\nimport { ICodeEditor, IDiffEditor } from '../../browser/editorBrowser.js';\nimport { IContextMenuService, IContextViewDelegate, IContextViewService, IOpenContextView } from '../../../platform/contextview/browser/contextView.js';\nimport { ContextViewService } from '../../../platform/contextview/browser/contextViewService.js';\nimport { LanguageService } from '../../common/services/languageService.js';\nimport { ContextMenuService } from '../../../platform/contextview/browser/contextMenuService.js';\nimport { getSingletonServiceDescriptors, InstantiationType, registerSingleton } from '../../../platform/instantiation/common/extensions.js';\nimport { OpenerService } from '../../browser/services/openerService.js';\nimport { ILanguageService } from '../../common/languages/language.js';\nimport { MarkerDecorationsService } from '../../common/services/markerDecorationsService.js';\nimport { IMarkerDecorationsService } from '../../common/services/markerDecorations.js';\nimport { ModelService } from '../../common/services/modelService.js';\nimport { StandaloneQuickInputService } from './quickInput/standaloneQuickInputService.js';\nimport { StandaloneThemeService } from './standaloneThemeService.js';\nimport { IStandaloneThemeService } from '../common/standaloneTheme.js';\nimport { AccessibilityService } from '../../../platform/accessibility/browser/accessibilityService.js';\nimport { IAccessibilityService } from '../../../platform/accessibility/common/accessibility.js';\nimport { IMenuService } from '../../../platform/actions/common/actions.js';\nimport { MenuService } from '../../../platform/actions/common/menuService.js';\nimport { BrowserClipboardService } from '../../../platform/clipboard/browser/clipboardService.js';\nimport { IClipboardService } from '../../../platform/clipboard/common/clipboardService.js';\nimport { ContextKeyService } from '../../../platform/contextkey/browser/contextKeyService.js';\nimport { SyncDescriptor } from '../../../platform/instantiation/common/descriptors.js';\nimport { InstantiationService } from '../../../platform/instantiation/common/instantiationService.js';\nimport { ServiceCollection } from '../../../platform/instantiation/common/serviceCollection.js';\nimport { IListService, ListService } from '../../../platform/list/browser/listService.js';\nimport { IMarkerService } from '../../../platform/markers/common/markers.js';\nimport { MarkerService } from '../../../platform/markers/common/markerService.js';\nimport { IOpenerService } from '../../../platform/opener/common/opener.js';\nimport { IQuickInputService } from '../../../platform/quickinput/common/quickInput.js';\nimport { IStorageService, InMemoryStorageService } from '../../../platform/storage/common/storage.js';\nimport { DefaultConfiguration } from '../../../platform/configuration/common/configurations.js';\nimport { WorkspaceEdit } from '../../common/languages.js';\nimport { AccessibilitySignal, IAccessibilitySignalService } from '../../../platform/accessibilitySignal/browser/accessibilitySignalService.js';\nimport { LogService } from '../../../platform/log/common/logService.js';\nimport { getEditorFeatures } from '../../common/editorFeatures.js';\nimport { onUnexpectedError } from '../../../base/common/errors.js';\nimport { IEnvironmentService } from '../../../platform/environment/common/environment.js';\nimport { mainWindow } from '../../../base/browser/window.js';\nimport { ResourceMap } from '../../../base/common/map.js';\nimport { ITreeSitterLibraryService } from '../../common/services/treeSitter/treeSitterLibraryService.js';\nimport { StandaloneTreeSitterLibraryService } from './standaloneTreeSitterLibraryService.js';\nimport { IDataChannelService, NullDataChannelService } from '../../../platform/dataChannel/common/dataChannel.js';\nimport { IWebWorkerService } from '../../../platform/webWorker/browser/webWorkerService.js';\nimport { StandaloneWebWorkerService } from './services/standaloneWebWorkerService.js';\n\nclass SimpleModel implements IResolvedTextEditorModel {\n\n\tprivate readonly model: ITextModel;\n\tprivate readonly _onWillDispose: Emitter<void>;\n\n\tconstructor(model: ITextModel) {\n\t\tthis.model = model;\n\t\tthis._onWillDispose = new Emitter<void>();\n\t}\n\n\tpublic get textEditorModel(): ITextModel {\n\t\treturn this.model;\n\t}\n\n\tprivate disposed = false;\n\tpublic dispose(): void {\n\t\tthis.disposed = true;\n\n\t\tthis._onWillDispose.fire();\n\t}\n}\n\nclass StandaloneTextModelService implements ITextModelService {\n\tpublic _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IModelService private readonly modelService: IModelService\n\t) { }\n\n\tpublic createModelReference(resource: URI): Promise<IReference<IResolvedTextEditorModel>> {\n\t\tconst model = this.modelService.getModel(resource);\n\n\t\tif (!model) {\n\t\t\treturn Promise.reject(new Error(`Model not found`));\n\t\t}\n\n\t\treturn Promise.resolve(new ImmortalReference(new SimpleModel(model)));\n\t}\n}\n\nclass StandaloneEditorProgressService implements IEditorProgressService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate static NULL_PROGRESS_RUNNER: IProgressRunner = {\n\t\tdone: () => { },\n\t\ttotal: () => { },\n\t\tworked: () => { }\n\t};\n\n\tshow(infinite: true, delay?: number): IProgressRunner;\n\tshow(total: number, delay?: number): IProgressRunner;\n\tshow(): IProgressRunner {\n\t\treturn StandaloneEditorProgressService.NULL_PROGRESS_RUNNER;\n\t}\n\n\tasync showWhile(promise: Promise<unknown>, delay?: number): Promise<void> {\n\t\tawait promise;\n\t}\n}\n\nclass StandaloneProgressService implements IProgressService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\twithProgress<R>(_options: IProgressOptions | IProgressDialogOptions | IProgressNotificationOptions | IProgressWindowOptions | IProgressCompositeOptions, task: (progress: IProgress<IProgressStep>) => Promise<R>, onDidCancel?: ((choice?: number | undefined) => void) | undefined): Promise<R> {\n\t\treturn task({\n\t\t\treport: () => { },\n\t\t});\n\t}\n}\n\nclass StandaloneEnvironmentService implements IEnvironmentService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\treadonly isExtensionDevelopment: boolean = false;\n\treadonly isBuilt: boolean = false;\n}\n\nclass StandaloneDialogService implements IDialogService {\n\n\t_serviceBrand: undefined;\n\n\tasync confirm(confirmation: IConfirmation): Promise<IConfirmationResult> {\n\t\tconst confirmed = this.doConfirm(confirmation.message, confirmation.detail);\n\n\t\treturn {\n\t\t\tconfirmed,\n\t\t\tcheckboxChecked: false // unsupported\n\t\t};\n\t}\n\n\tprivate doConfirm(message: string, detail?: string): boolean {\n\t\tlet messageText = message;\n\t\tif (detail) {\n\t\t\tmessageText = messageText + '\\n\\n' + detail;\n\t\t}\n\n\t\treturn mainWindow.confirm(messageText);\n\t}\n\n\tprompt<T>(prompt: IPromptWithCustomCancel<T>): Promise<IPromptResultWithCancel<T>>;\n\tprompt<T>(prompt: IPrompt<T>): Promise<IPromptResult<T>>;\n\tprompt<T>(prompt: IPromptWithDefaultCancel<T>): Promise<IPromptResult<T>>;\n\tasync prompt<T>(prompt: IPrompt<T> | IPromptWithCustomCancel<T>): Promise<IPromptResult<T> | IPromptResultWithCancel<T>> {\n\t\tlet result: T | undefined = undefined;\n\t\tconst confirmed = this.doConfirm(prompt.message, prompt.detail);\n\t\tif (confirmed) {\n\t\t\tconst promptButtons: IPromptBaseButton<T>[] = [...(prompt.buttons ?? [])];\n\t\t\tif (prompt.cancelButton && typeof prompt.cancelButton !== 'string' && typeof prompt.cancelButton !== 'boolean') {\n\t\t\t\tpromptButtons.push(prompt.cancelButton);\n\t\t\t}\n\n\t\t\tresult = await promptButtons[0]?.run({ checkboxChecked: false });\n\t\t}\n\n\t\treturn { result };\n\t}\n\n\tasync error(message: string, detail?: string): Promise<void> {\n\t\tawait this.prompt({ type: Severity.Error, message, detail });\n\t}\n}\n\nexport class StandaloneNotificationService implements INotificationService {\n\n\tpublic _serviceBrand: undefined;\n\n\tprivate static readonly NO_OP: INotificationHandle = new NoOpNotification();\n\n\tpublic info(message: string): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Info, message });\n\t}\n\n\tpublic warn(message: string): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Warning, message });\n\t}\n\n\tpublic error(error: string | Error): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Error, message: error });\n\t}\n\n\tpublic notify(notification: INotification): INotificationHandle {\n\t\tswitch (notification.severity) {\n\t\t\tcase Severity.Error:\n\t\t\t\tconsole.error(notification.message);\n\t\t\t\tbreak;\n\t\t\tcase Severity.Warning:\n\t\t\t\tconsole.warn(notification.message);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tconsole.log(notification.message);\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn StandaloneNotificationService.NO_OP;\n\t}\n\n\tpublic prompt(severity: Severity, message: string, choices: IPromptChoice[], options?: IPromptOptions): INotificationHandle {\n\t\treturn StandaloneNotificationService.NO_OP;\n\t}\n\n\tpublic status(message: string | Error, options?: IStatusMessageOptions): IStatusHandle {\n\t\treturn { close: () => { } };\n\t}\n}\n\nexport class StandaloneCommandService implements ICommandService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _instantiationService: IInstantiationService;\n\n\tprivate readonly _onWillExecuteCommand = new Emitter<ICommandEvent>();\n\tprivate readonly _onDidExecuteCommand = new Emitter<ICommandEvent>();\n\tpublic readonly onDidExecuteCommand: Event<ICommandEvent> = this._onDidExecuteCommand.event;\n\n\tconstructor(\n\t\t@IInstantiationService instantiationService: IInstantiationService\n\t) {\n\t\tthis._instantiationService = instantiationService;\n\t}\n\n\tpublic executeCommand<T>(id: string, ...args: unknown[]): Promise<T> {\n\t\tconst command = CommandsRegistry.getCommand(id);\n\t\tif (!command) {\n\t\t\treturn Promise.reject(new Error(`command '${id}' not found`));\n\t\t}\n\n\t\ttry {\n\t\t\tthis._onWillExecuteCommand.fire({ commandId: id, args });\n\t\t\tconst result = this._instantiationService.invokeFunction.apply(this._instantiationService, [command.handler, ...args]) as T;\n\n\t\t\tthis._onDidExecuteCommand.fire({ commandId: id, args });\n\t\t\treturn Promise.resolve(result);\n\t\t} catch (err) {\n\t\t\treturn Promise.reject(err);\n\t\t}\n\t}\n}\n\nexport interface IKeybindingRule {\n\tkeybinding: number;\n\tcommand?: string | null;\n\tcommandArgs?: unknown;\n\twhen?: ContextKeyExpression | null;\n}\n\nexport class StandaloneKeybindingService extends AbstractKeybindingService {\n\tprivate _cachedResolver: KeybindingResolver | null;\n\tprivate _dynamicKeybindings: IKeybindingItem[];\n\tprivate readonly _domNodeListeners: DomNodeListeners[];\n\n\tconstructor(\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t\t@ICommandService commandService: ICommandService,\n\t\t@ITelemetryService telemetryService: ITelemetryService,\n\t\t@INotificationService notificationService: INotificationService,\n\t\t@ILogService logService: ILogService,\n\t\t@ICodeEditorService codeEditorService: ICodeEditorService\n\t) {\n\t\tsuper(contextKeyService, commandService, telemetryService, notificationService, logService);\n\n\t\tthis._cachedResolver = null;\n\t\tthis._dynamicKeybindings = [];\n\t\tthis._domNodeListeners = [];\n\n\t\tconst addContainer = (domNode: HTMLElement) => {\n\t\t\tconst disposables = new DisposableStore();\n\n\t\t\t// for standard keybindings\n\t\t\tdisposables.add(dom.addDisposableListener(domNode, dom.EventType.KEY_DOWN, (e: KeyboardEvent) => {\n\t\t\t\tconst keyEvent = new StandardKeyboardEvent(e);\n\t\t\t\tconst shouldPreventDefault = this._dispatch(keyEvent, keyEvent.target);\n\t\t\t\tif (shouldPreventDefault) {\n\t\t\t\t\tkeyEvent.preventDefault();\n\t\t\t\t\tkeyEvent.stopPropagation();\n\t\t\t\t}\n\t\t\t}));\n\n\t\t\t// for single modifier chord keybindings (e.g. shift shift)\n\t\t\tdisposables.add(dom.addDisposableListener(domNode, dom.EventType.KEY_UP, (e: KeyboardEvent) => {\n\t\t\t\tconst keyEvent = new StandardKeyboardEvent(e);\n\t\t\t\tconst shouldPreventDefault = this._singleModifierDispatch(keyEvent, keyEvent.target);\n\t\t\t\tif (shouldPreventDefault) {\n\t\t\t\t\tkeyEvent.preventDefault();\n\t\t\t\t}\n\t\t\t}));\n\n\t\t\tthis._domNodeListeners.push(new DomNodeListeners(domNode, disposables));\n\t\t};\n\t\tconst removeContainer = (domNode: HTMLElement) => {\n\t\t\tfor (let i = 0; i < this._domNodeListeners.length; i++) {\n\t\t\t\tconst domNodeListeners = this._domNodeListeners[i];\n\t\t\t\tif (domNodeListeners.domNode === domNode) {\n\t\t\t\t\tthis._domNodeListeners.splice(i, 1);\n\t\t\t\t\tdomNodeListeners.dispose();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tconst addCodeEditor = (codeEditor: ICodeEditor) => {\n\t\t\tif (codeEditor.getOption(EditorOption.inDiffEditor)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\taddContainer(codeEditor.getContainerDomNode());\n\t\t};\n\t\tconst removeCodeEditor = (codeEditor: ICodeEditor) => {\n\t\t\tif (codeEditor.getOption(EditorOption.inDiffEditor)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tremoveContainer(codeEditor.getContainerDomNode());\n\t\t};\n\t\tthis._register(codeEditorService.onCodeEditorAdd(addCodeEditor));\n\t\tthis._register(codeEditorService.onCodeEditorRemove(removeCodeEditor));\n\t\tcodeEditorService.listCodeEditors().forEach(addCodeEditor);\n\n\t\tconst addDiffEditor = (diffEditor: IDiffEditor) => {\n\t\t\taddContainer(diffEditor.getContainerDomNode());\n\t\t};\n\t\tconst removeDiffEditor = (diffEditor: IDiffEditor) => {\n\t\t\tremoveContainer(diffEditor.getContainerDomNode());\n\t\t};\n\t\tthis._register(codeEditorService.onDiffEditorAdd(addDiffEditor));\n\t\tthis._register(codeEditorService.onDiffEditorRemove(removeDiffEditor));\n\t\tcodeEditorService.listDiffEditors().forEach(addDiffEditor);\n\t}\n\n\tpublic addDynamicKeybinding(command: string, keybinding: number, handler: ICommandHandler, when: ContextKeyExpression | undefined): IDisposable {\n\t\treturn combinedDisposable(\n\t\t\tCommandsRegistry.registerCommand(command, handler),\n\t\t\tthis.addDynamicKeybindings([{\n\t\t\t\tkeybinding,\n\t\t\t\tcommand,\n\t\t\t\twhen\n\t\t\t}])\n\t\t);\n\t}\n\n\tpublic addDynamicKeybindings(rules: IKeybindingRule[]): IDisposable {\n\t\tconst entries: IKeybindingItem[] = rules.map((rule) => {\n\t\t\tconst keybinding = decodeKeybinding(rule.keybinding, OS);\n\t\t\treturn {\n\t\t\t\tkeybinding,\n\t\t\t\tcommand: rule.command ?? null,\n\t\t\t\tcommandArgs: rule.commandArgs,\n\t\t\t\twhen: rule.when,\n\t\t\t\tweight1: 1000,\n\t\t\t\tweight2: 0,\n\t\t\t\textensionId: null,\n\t\t\t\tisBuiltinExtension: false\n\t\t\t};\n\t\t});\n\t\tthis._dynamicKeybindings = this._dynamicKeybindings.concat(entries);\n\n\t\tthis.updateResolver();\n\n\t\treturn toDisposable(() => {\n\t\t\t// Search the first entry and remove them all since they will be contiguous\n\t\t\tfor (let i = 0; i < this._dynamicKeybindings.length; i++) {\n\t\t\t\tif (this._dynamicKeybindings[i] === entries[0]) {\n\t\t\t\t\tthis._dynamicKeybindings.splice(i, entries.length);\n\t\t\t\t\tthis.updateResolver();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate updateResolver(): void {\n\t\tthis._cachedResolver = null;\n\t\tthis._onDidUpdateKeybindings.fire();\n\t}\n\n\tprotected _getResolver(): KeybindingResolver {\n\t\tif (!this._cachedResolver) {\n\t\t\tconst defaults = this._toNormalizedKeybindingItems(KeybindingsRegistry.getDefaultKeybindings(), true);\n\t\t\tconst overrides = this._toNormalizedKeybindingItems(this._dynamicKeybindings, false);\n\t\t\tthis._cachedResolver = new KeybindingResolver(defaults, overrides, (str) => this._log(str));\n\t\t}\n\t\treturn this._cachedResolver;\n\t}\n\n\tprotected _documentHasFocus(): boolean {\n\t\treturn mainWindow.document.hasFocus();\n\t}\n\n\tprivate _toNormalizedKeybindingItems(items: IKeybindingItem[], isDefault: boolean): ResolvedKeybindingItem[] {\n\t\tconst result: ResolvedKeybindingItem[] = [];\n\t\tlet resultLen = 0;\n\t\tfor (const item of items) {\n\t\t\tconst when = item.when || undefined;\n\t\t\tconst keybinding = item.keybinding;\n\n\t\t\tif (!keybinding) {\n\t\t\t\t// This might be a removal keybinding item in user settings => accept it\n\t\t\t\tresult[resultLen++] = new ResolvedKeybindingItem(undefined, item.command, item.commandArgs, when, isDefault, null, false);\n\t\t\t} else {\n\t\t\t\tconst resolvedKeybindings = USLayoutResolvedKeybinding.resolveKeybinding(keybinding, OS);\n\t\t\t\tfor (const resolvedKeybinding of resolvedKeybindings) {\n\t\t\t\t\tresult[resultLen++] = new ResolvedKeybindingItem(resolvedKeybinding, item.command, item.commandArgs, when, isDefault, null, false);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tpublic resolveKeyboardEvent(keyboardEvent: IKeyboardEvent): ResolvedKeybinding {\n\t\tconst chord = new KeyCodeChord(\n\t\t\tkeyboardEvent.ctrlKey,\n\t\t\tkeyboardEvent.shiftKey,\n\t\t\tkeyboardEvent.altKey,\n\t\t\tkeyboardEvent.metaKey,\n\t\t\tkeyboardEvent.keyCode\n\t\t);\n\t\treturn new USLayoutResolvedKeybinding([chord], OS);\n\t}\n}\n\nclass DomNodeListeners extends Disposable {\n\tconstructor(\n\t\tpublic readonly domNode: HTMLElement,\n\t\tdisposables: DisposableStore\n\t) {\n\t\tsuper();\n\t\tthis._register(disposables);\n\t}\n}\n\nfunction isConfigurationOverrides(thing: unknown): thing is IConfigurationOverrides {\n\treturn !!thing\n\t\t&& typeof thing === 'object'\n\t\t&& (!(thing as IConfigurationOverrides).overrideIdentifier || typeof (thing as IConfigurationOverrides).overrideIdentifier === 'string')\n\t\t&& (!(thing as IConfigurationOverrides).resource || (thing as IConfigurationOverrides).resource instanceof URI);\n}\n\nexport class StandaloneConfigurationService implements IConfigurationService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _onDidChangeConfiguration = new Emitter<IConfigurationChangeEvent>();\n\tpublic readonly onDidChangeConfiguration: Event<IConfigurationChangeEvent> = this._onDidChangeConfiguration.event;\n\n\tprivate readonly _configuration: Configuration;\n\n\tconstructor(\n\t\t@ILogService private readonly logService: ILogService,\n\t) {\n\t\tconst defaultConfiguration = new DefaultConfiguration(logService);\n\t\tthis._configuration = new Configuration(\n\t\t\tdefaultConfiguration.reload(),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tnew ResourceMap<ConfigurationModel>(),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tnew ResourceMap<ConfigurationModel>(),\n\t\t\tlogService\n\t\t);\n\t\tdefaultConfiguration.dispose();\n\t}\n\n\tgetValue<T>(): T;\n\tgetValue<T>(section: string): T;\n\tgetValue<T>(overrides: IConfigurationOverrides): T;\n\tgetValue<T>(section: string, overrides: IConfigurationOverrides): T;\n\tgetValue(arg1?: unknown, arg2?: unknown): unknown {\n\t\tconst section = typeof arg1 === 'string' ? arg1 : undefined;\n\t\tconst overrides = isConfigurationOverrides(arg1) ? arg1 : isConfigurationOverrides(arg2) ? arg2 : {};\n\t\treturn this._configuration.getValue(section, overrides, undefined);\n\t}\n\n\tpublic updateValues(values: [string, unknown][]): Promise<void> {\n\t\tconst previous = { data: this._configuration.toData() };\n\n\t\tconst changedKeys: string[] = [];\n\n\t\tfor (const entry of values) {\n\t\t\tconst [key, value] = entry;\n\t\t\tif (this.getValue(key) === value) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tthis._configuration.updateValue(key, value);\n\t\t\tchangedKeys.push(key);\n\t\t}\n\n\t\tif (changedKeys.length > 0) {\n\t\t\tconst configurationChangeEvent = new ConfigurationChangeEvent({ keys: changedKeys, overrides: [] }, previous, this._configuration, undefined, this.logService);\n\t\t\tconfigurationChangeEvent.source = ConfigurationTarget.MEMORY;\n\t\t\tthis._onDidChangeConfiguration.fire(configurationChangeEvent);\n\t\t}\n\n\t\treturn Promise.resolve();\n\t}\n\n\tpublic updateValue(key: string, value: unknown, arg3?: unknown, arg4?: unknown): Promise<void> {\n\t\treturn this.updateValues([[key, value]]);\n\t}\n\n\tpublic inspect<C>(key: string, options: IConfigurationOverrides = {}): IConfigurationValue<C> {\n\t\treturn this._configuration.inspect<C>(key, options, undefined);\n\t}\n}\n\nclass StandaloneResourceConfigurationService implements ITextResourceConfigurationService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _onDidChangeConfiguration = new Emitter<ITextResourceConfigurationChangeEvent>();\n\n\tconstructor(\n\t\t@IConfigurationService private readonly configurationService: StandaloneConfigurationService,\n\t\t@IModelService private readonly modelService: IModelService,\n\t\t@ILanguageService private readonly languageService: ILanguageService\n\t) {\n\t\tthis.configurationService.onDidChangeConfiguration((e) => {\n\t\t\tthis._onDidChangeConfiguration.fire({ affectedKeys: e.affectedKeys, affectsConfiguration: (resource: URI, configuration: string) => e.affectsConfiguration(configuration) });\n\t\t});\n\t}\n\n\tgetValue<T>(resource: URI, section?: string): T;\n\tgetValue<T>(resource: URI, position?: IPosition, section?: string): T;\n\tgetValue<T>(resource: URI | undefined, arg2?: unknown, arg3?: unknown) {\n\t\tconst position: IPosition | null = Pos.isIPosition(arg2) ? arg2 : null;\n\t\tconst section: string | undefined = position ? (typeof arg3 === 'string' ? arg3 : undefined) : (typeof arg2 === 'string' ? arg2 : undefined);\n\t\tconst language = resource ? this.getLanguage(resource, position) : undefined;\n\t\tif (typeof section === 'undefined') {\n\t\t\treturn this.configurationService.getValue<T>({\n\t\t\t\tresource,\n\t\t\t\toverrideIdentifier: language\n\t\t\t});\n\t\t}\n\t\treturn this.configurationService.getValue<T>(section, {\n\t\t\tresource,\n\t\t\toverrideIdentifier: language\n\t\t});\n\t}\n\n\tprivate getLanguage(resource: URI, position: IPosition | null): string | null {\n\t\tconst model = this.modelService.getModel(resource);\n\t\tif (model) {\n\t\t\treturn position ? model.getLanguageIdAtPosition(position.lineNumber, position.column) : model.getLanguageId();\n\t\t}\n\t\treturn this.languageService.guessLanguageIdByFilepathOrFirstLine(resource);\n\t}\n}\n\nclass StandaloneResourcePropertiesService implements ITextResourcePropertiesService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IConfigurationService private readonly configurationService: IConfigurationService,\n\t) {\n\t}\n\n\tgetEOL(resource: URI, language?: string): string {\n\t\tconst eol = this.configurationService.getValue('files.eol', { overrideIdentifier: language, resource });\n\t\tif (eol && typeof eol === 'string' && eol !== 'auto') {\n\t\t\treturn eol;\n\t\t}\n\t\treturn (isLinux || isMacintosh) ? '\\n' : '\\r\\n';\n\t}\n}\n\nclass StandaloneTelemetryService implements ITelemetryService {\n\tdeclare readonly _serviceBrand: undefined;\n\tpublicLog2() { }\n}\n\nclass StandaloneWorkspaceContextService implements IWorkspaceContextService {\n\n\tpublic _serviceBrand: undefined;\n\n\tprivate static readonly SCHEME = 'inmemory';\n\n\tprivate readonly workspace: IWorkspace;\n\n\tconstructor() {\n\t\tconst resource = URI.from({ scheme: StandaloneWorkspaceContextService.SCHEME, authority: 'model', path: '/' });\n\t\tthis.workspace = { id: STANDALONE_EDITOR_WORKSPACE_ID, folders: [new WorkspaceFolder({ uri: resource, name: '', index: 0 })] };\n\t}\n\n\tpublic getWorkspace(): IWorkspace {\n\t\treturn this.workspace;\n\t}\n\n\tpublic getWorkspaceFolder(resource: URI): IWorkspaceFolder | null {\n\t\treturn resource && resource.scheme === StandaloneWorkspaceContextService.SCHEME ? this.workspace.folders[0] : null;\n\t}\n}\n\nexport function updateConfigurationService(configurationService: IConfigurationService, source: any, isDiffEditor: boolean): void {\n\tif (!source) {\n\t\treturn;\n\t}\n\tif (!(configurationService instanceof StandaloneConfigurationService)) {\n\t\treturn;\n\t}\n\tconst toUpdate: [string, unknown][] = [];\n\tObject.keys(source).forEach((key) => {\n\t\tif (isEditorConfigurationKey(key)) {\n\t\t\ttoUpdate.push([`editor.${key}`, source[key]]);\n\t\t}\n\t\tif (isDiffEditor && isDiffEditorConfigurationKey(key)) {\n\t\t\ttoUpdate.push([`diffEditor.${key}`, source[key]]);\n\t\t}\n\t});\n\tif (toUpdate.length > 0) {\n\t\tconfigurationService.updateValues(toUpdate);\n\t}\n}\n\nclass StandaloneBulkEditService implements IBulkEditService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IModelService private readonly _modelService: IModelService\n\t) {\n\t\t//\n\t}\n\n\thasPreviewHandler(): false {\n\t\treturn false;\n\t}\n\n\tasync apply(editsIn: ResourceEdit[] | WorkspaceEdit, _options?: IBulkEditOptions): Promise<IBulkEditResult> {\n\t\tconst edits = Array.isArray(editsIn) ? editsIn : ResourceEdit.convert(editsIn);\n\t\tconst textEdits = new Map<ITextModel, ISingleEditOperation[]>();\n\n\t\tfor (const edit of edits) {\n\t\t\tif (!(edit instanceof ResourceTextEdit)) {\n\t\t\t\tthrow new Error('bad edit - only text edits are supported');\n\t\t\t}\n\t\t\tconst model = this._modelService.getModel(edit.resource);\n\t\t\tif (!model) {\n\t\t\t\tthrow new Error('bad edit - model not found');\n\t\t\t}\n\t\t\tif (typeof edit.versionId === 'number' && model.getVersionId() !== edit.versionId) {\n\t\t\t\tthrow new Error('bad state - model changed in the meantime');\n\t\t\t}\n\t\t\tlet array = textEdits.get(model);\n\t\t\tif (!array) {\n\t\t\t\tarray = [];\n\t\t\t\ttextEdits.set(model, array);\n\t\t\t}\n\t\t\tarray.push(EditOperation.replaceMove(Range.lift(edit.textEdit.range), edit.textEdit.text));\n\t\t}\n\n\n\t\tlet totalEdits = 0;\n\t\tlet totalFiles = 0;\n\t\tfor (const [model, edits] of textEdits) {\n\t\t\tmodel.pushStackElement();\n\t\t\tmodel.pushEditOperations([], edits, () => []);\n\t\t\tmodel.pushStackElement();\n\t\t\ttotalFiles += 1;\n\t\t\ttotalEdits += edits.length;\n\t\t}\n\n\t\treturn {\n\t\t\tariaSummary: strings.format(StandaloneServicesNLS.bulkEditServiceSummary, totalEdits, totalFiles),\n\t\t\tisApplied: totalEdits > 0\n\t\t};\n\t}\n}\n\nclass StandaloneUriLabelService implements ILabelService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tpublic getUriLabel(resource: URI, options?: { relative?: boolean; forceNoTildify?: boolean }): string {\n\t\tif (resource.scheme === 'file') {\n\t\t\treturn resource.fsPath;\n\t\t}\n\t\treturn resource.path;\n\t}\n\n\tgetUriBasenameLabel(resource: URI): string {\n\t\treturn basename(resource);\n\t}\n}\n\n\nclass StandaloneContextViewService extends ContextViewService {\n\n\tconstructor(\n\t\t@ILayoutService layoutService: ILayoutService,\n\t\t@ICodeEditorService private readonly _codeEditorService: ICodeEditorService,\n\t) {\n\t\tsuper(layoutService);\n\t}\n\n\toverride showContextView(delegate: IContextViewDelegate, container?: HTMLElement, shadowRoot?: boolean): IOpenContextView {\n\t\tif (!container) {\n\t\t\tconst codeEditor = this._codeEditorService.getFocusedCodeEditor() || this._codeEditorService.getActiveCodeEditor();\n\t\t\tif (codeEditor) {\n\t\t\t\tcontainer = codeEditor.getContainerDomNode();\n\t\t\t}\n\t\t}\n\t\treturn super.showContextView(delegate, container, shadowRoot);\n\t}\n}\n\nclass StandaloneWorkspaceTrustManagementService implements IWorkspaceTrustManagementService {\n\t_serviceBrand: undefined;\n\n\tprivate _neverEmitter = new Emitter<never>();\n\tpublic readonly onDidChangeTrust: Event<boolean> = this._neverEmitter.event;\n\n\tisWorkspaceTrusted(): boolean {\n\t\treturn true;\n\t}\n}\n\nclass StandaloneLanguageService extends LanguageService {\n\tconstructor() {\n\t\tsuper();\n\t}\n}\n\nclass StandaloneLogService extends LogService {\n\tconstructor() {\n\t\tsuper(new ConsoleLogger());\n\t}\n}\n\nclass StandaloneContextMenuService extends ContextMenuService {\n\tconstructor(\n\t\t@ITelemetryService telemetryService: ITelemetryService,\n\t\t@INotificationService notificationService: INotificationService,\n\t\t@IContextViewService contextViewService: IContextViewService,\n\t\t@IKeybindingService keybindingService: IKeybindingService,\n\t\t@IMenuService menuService: IMenuService,\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t) {\n\t\tsuper(telemetryService, notificationService, contextViewService, keybindingService, menuService, contextKeyService);\n\t\tthis.configure({ blockMouse: false }); // we do not want that in the standalone editor\n\t}\n}\n\nclass StandaloneAccessbilitySignalService implements IAccessibilitySignalService {\n\t_serviceBrand: undefined;\n\tasync playSignal(cue: AccessibilitySignal, options: {}): Promise<void> {\n\t}\n}\n\nexport interface IEditorOverrideServices {\n\t[index: string]: unknown;\n}\n\n\nregisterSingleton(IWebWorkerService, StandaloneWebWorkerService, InstantiationType.Eager);\nregisterSingleton(ILogService, StandaloneLogService, InstantiationType.Eager);\nregisterSingleton(IConfigurationService, StandaloneConfigurationService, InstantiationType.Eager);\nregisterSingleton(ITextResourceConfigurationService, StandaloneResourceConfigurationService, InstantiationType.Eager);\nregisterSingleton(ITextResourcePropertiesService, StandaloneResourcePropertiesService, InstantiationType.Eager);\nregisterSingleton(IWorkspaceContextService, StandaloneWorkspaceContextService, InstantiationType.Eager);\nregisterSingleton(ILabelService, StandaloneUriLabelService, InstantiationType.Eager);\nregisterSingleton(ITelemetryService, StandaloneTelemetryService, InstantiationType.Eager);\nregisterSingleton(IDialogService, StandaloneDialogService, InstantiationType.Eager);\nregisterSingleton(IEnvironmentService, StandaloneEnvironmentService, InstantiationType.Eager);\nregisterSingleton(INotificationService, StandaloneNotificationService, InstantiationType.Eager);\nregisterSingleton(IMarkerService, MarkerService, InstantiationType.Eager);\nregisterSingleton(ILanguageService, StandaloneLanguageService, InstantiationType.Eager);\nregisterSingleton(IStandaloneThemeService, StandaloneThemeService, InstantiationType.Eager);\nregisterSingleton(IModelService, ModelService, InstantiationType.Eager);\nregisterSingleton(IMarkerDecorationsService, MarkerDecorationsService, InstantiationType.Eager);\nregisterSingleton(IContextKeyService, ContextKeyService, InstantiationType.Eager);\nregisterSingleton(IProgressService, StandaloneProgressService, InstantiationType.Eager);\nregisterSingleton(IEditorProgressService, StandaloneEditorProgressService, InstantiationType.Eager);\nregisterSingleton(IStorageService, InMemoryStorageService, InstantiationType.Eager);\nregisterSingleton(IBulkEditService, StandaloneBulkEditService, InstantiationType.Eager);\nregisterSingleton(IWorkspaceTrustManagementService, StandaloneWorkspaceTrustManagementService, InstantiationType.Eager);\nregisterSingleton(ITextModelService, StandaloneTextModelService, InstantiationType.Eager);\nregisterSingleton(IAccessibilityService, AccessibilityService, InstantiationType.Eager);\nregisterSingleton(IListService, ListService, InstantiationType.Eager);\nregisterSingleton(ICommandService, StandaloneCommandService, InstantiationType.Eager);\nregisterSingleton(IKeybindingService, StandaloneKeybindingService, InstantiationType.Eager);\nregisterSingleton(IQuickInputService, StandaloneQuickInputService, InstantiationType.Eager);\nregisterSingleton(IContextViewService, StandaloneContextViewService, InstantiationType.Eager);\nregisterSingleton(IOpenerService, OpenerService, InstantiationType.Eager);\nregisterSingleton(IClipboardService, BrowserClipboardService, InstantiationType.Eager);\nregisterSingleton(IContextMenuService, StandaloneContextMenuService, InstantiationType.Eager);\nregisterSingleton(IMenuService, MenuService, InstantiationType.Eager);\nregisterSingleton(IAccessibilitySignalService, StandaloneAccessbilitySignalService, InstantiationType.Eager);\nregisterSingleton(ITreeSitterLibraryService, StandaloneTreeSitterLibraryService, InstantiationType.Eager);\nregisterSingleton(ILoggerService, NullLoggerService, InstantiationType.Eager);\nregisterSingleton(IDataChannelService, NullDataChannelService, InstantiationType.Eager);\n\n/**\n * We don't want to eagerly instantiate services because embedders get a one time chance\n * to override services when they create the first editor.\n */\nexport module StandaloneServices {\n\n\tconst serviceCollection = new ServiceCollection();\n\tfor (const [id, descriptor] of getSingletonServiceDescriptors()) {\n\t\tserviceCollection.set(id, descriptor);\n\t}\n\n\tconst instantiationService = new InstantiationService(serviceCollection, true);\n\tserviceCollection.set(IInstantiationService, instantiationService);\n\n\texport function get<T>(serviceId: ServiceIdentifier<T>): T {\n\t\tif (!initialized) {\n\t\t\tinitialize({});\n\t\t}\n\t\tconst r = serviceCollection.get(serviceId);\n\t\tif (!r) {\n\t\t\tthrow new Error('Missing service ' + serviceId);\n\t\t}\n\t\tif (r instanceof SyncDescriptor) {\n\t\t\treturn instantiationService.invokeFunction((accessor) => accessor.get(serviceId));\n\t\t} else {\n\t\t\treturn r;\n\t\t}\n\t}\n\n\tlet initialized = false;\n\tconst onDidInitialize = new Emitter<void>();\n\texport function initialize(overrides: IEditorOverrideServices): IInstantiationService {\n\t\tif (initialized) {\n\t\t\treturn instantiationService;\n\t\t}\n\t\tinitialized = true;\n\n\t\t// Add singletons that were registered after this module loaded\n\t\tfor (const [id, descriptor] of getSingletonServiceDescriptors()) {\n\t\t\tif (!serviceCollection.get(id)) {\n\t\t\t\tserviceCollection.set(id, descriptor);\n\t\t\t}\n\t\t}\n\n\t\t// Initialize the service collection with the overrides, but only if the\n\t\t// service was not instantiated in the meantime.\n\t\tfor (const serviceId in overrides) {\n\t\t\tif (overrides.hasOwnProperty(serviceId)) {\n\t\t\t\tconst serviceIdentifier = createDecorator(serviceId);\n\t\t\t\tconst r = serviceCollection.get(serviceIdentifier);\n\t\t\t\tif (r instanceof SyncDescriptor) {\n\t\t\t\t\tserviceCollection.set(serviceIdentifier, overrides[serviceId]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Instantiate all editor features\n\t\tconst editorFeatures = getEditorFeatures();\n\t\tfor (const feature of editorFeatures) {\n\t\t\ttry {\n\t\t\t\tinstantiationService.createInstance(feature);\n\t\t\t} catch (err) {\n\t\t\t\tonUnexpectedError(err);\n\t\t\t}\n\t\t}\n\n\t\tonDidInitialize.fire();\n\n\t\treturn instantiationService;\n\t}\n\n\t/**\n\t * Executes callback once services are initialized.\n\t */\n\texport function withServices(callback: () => IDisposable): IDisposable {\n\t\tif (initialized) {\n\t\t\treturn callback();\n\t\t}\n\n\t\tconst disposable = new DisposableStore();\n\n\t\tconst listener = disposable.add(onDidInitialize.event(() => {\n\t\t\tlistener.dispose();\n\t\t\tdisposable.add(callback());\n\t\t}));\n\n\t\treturn disposable;\n\t}\n\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src/vs/editor/standalone/browser/standaloneServices.ts","vs/editor/standalone/browser/standaloneServices.ts"],"names":[],"mappings":"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","file":"standaloneServices.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport './standaloneCodeEditorService.js';\nimport './standaloneLayoutService.js';\nimport '../../../platform/undoRedo/common/undoRedoService.js';\nimport '../../common/services/languageFeatureDebounce.js';\nimport '../../common/services/semanticTokensStylingService.js';\nimport '../../common/services/languageFeaturesService.js';\nimport '../../../platform/hover/browser/hoverService.js';\nimport '../../browser/services/inlineCompletionsService.js';\n\nimport * as strings from '../../../base/common/strings.js';\nimport * as dom from '../../../base/browser/dom.js';\nimport { StandardKeyboardEvent } from '../../../base/browser/keyboardEvent.js';\nimport { Emitter, Event } from '../../../base/common/event.js';\nimport { ResolvedKeybinding, KeyCodeChord, decodeKeybinding } from '../../../base/common/keybindings.js';\nimport { IDisposable, IReference, ImmortalReference, toDisposable, DisposableStore, Disposable, combinedDisposable } from '../../../base/common/lifecycle.js';\nimport { OS, isLinux, isMacintosh } from '../../../base/common/platform.js';\nimport Severity from '../../../base/common/severity.js';\nimport { URI } from '../../../base/common/uri.js';\nimport { IBulkEditOptions, IBulkEditResult, IBulkEditService, ResourceEdit, ResourceTextEdit } from '../../browser/services/bulkEditService.js';\nimport { isDiffEditorConfigurationKey, isEditorConfigurationKey } from '../../common/config/editorConfigurationSchema.js';\nimport { EditOperation, ISingleEditOperation } from '../../common/core/editOperation.js';\nimport { IPosition, Position as Pos } from '../../common/core/position.js';\nimport { Range } from '../../common/core/range.js';\nimport { ITextModel } from '../../common/model.js';\nimport { IModelService } from '../../common/services/model.js';\nimport { IResolvedTextEditorModel, ITextModelService } from '../../common/services/resolverService.js';\nimport { ITextResourceConfigurationService, ITextResourcePropertiesService, ITextResourceConfigurationChangeEvent } from '../../common/services/textResourceConfiguration.js';\nimport { CommandsRegistry, ICommandEvent, ICommandHandler, ICommandService } from '../../../platform/commands/common/commands.js';\nimport { IConfigurationChangeEvent, IConfigurationOverrides, IConfigurationService, IConfigurationValue, ConfigurationTarget } from '../../../platform/configuration/common/configuration.js';\nimport { Configuration, ConfigurationModel, ConfigurationChangeEvent } from '../../../platform/configuration/common/configurationModels.js';\nimport { IContextKeyService, ContextKeyExpression } from '../../../platform/contextkey/common/contextkey.js';\nimport { IConfirmation, IConfirmationResult, IDialogService, IPrompt, IPromptResult, IPromptWithCustomCancel, IPromptResultWithCancel, IPromptWithDefaultCancel, IPromptBaseButton } from '../../../platform/dialogs/common/dialogs.js';\nimport { createDecorator, IInstantiationService, ServiceIdentifier } from '../../../platform/instantiation/common/instantiation.js';\nimport { AbstractKeybindingService } from '../../../platform/keybinding/common/abstractKeybindingService.js';\nimport { IKeybindingService, IKeyboardEvent } from '../../../platform/keybinding/common/keybinding.js';\nimport { KeybindingResolver } from '../../../platform/keybinding/common/keybindingResolver.js';\nimport { IKeybindingItem, KeybindingsRegistry } from '../../../platform/keybinding/common/keybindingsRegistry.js';\nimport { ResolvedKeybindingItem } from '../../../platform/keybinding/common/resolvedKeybindingItem.js';\nimport { USLayoutResolvedKeybinding } from '../../../platform/keybinding/common/usLayoutResolvedKeybinding.js';\nimport { ILabelService } from '../../../platform/label/common/label.js';\nimport { INotification, INotificationHandle, INotificationService, IPromptChoice, IPromptOptions, NoOpNotification, IStatusMessageOptions, IStatusHandle } from '../../../platform/notification/common/notification.js';\nimport { IProgressRunner, IEditorProgressService, IProgressService, IProgress, IProgressCompositeOptions, IProgressDialogOptions, IProgressNotificationOptions, IProgressOptions, IProgressStep, IProgressWindowOptions } from '../../../platform/progress/common/progress.js';\nimport { ITelemetryService } from '../../../platform/telemetry/common/telemetry.js';\nimport { IWorkspace, IWorkspaceContextService, IWorkspaceFolder, WorkspaceFolder, STANDALONE_EDITOR_WORKSPACE_ID } from '../../../platform/workspace/common/workspace.js';\nimport { ILayoutService } from '../../../platform/layout/browser/layoutService.js';\nimport { StandaloneServicesNLS } from '../../common/standaloneStrings.js';\nimport { basename } from '../../../base/common/resources.js';\nimport { ICodeEditorService } from '../../browser/services/codeEditorService.js';\nimport { ConsoleLogger, ILoggerService, ILogService, NullLoggerService } from '../../../platform/log/common/log.js';\nimport { IWorkspaceTrustManagementService } from '../../../platform/workspace/common/workspaceTrust.js';\nimport { EditorOption } from '../../common/config/editorOptions.js';\nimport { ICodeEditor, IDiffEditor } from '../../browser/editorBrowser.js';\nimport { IContextMenuService, IContextViewDelegate, IContextViewService, IOpenContextView } from '../../../platform/contextview/browser/contextView.js';\nimport { ContextViewService } from '../../../platform/contextview/browser/contextViewService.js';\nimport { LanguageService } from '../../common/services/languageService.js';\nimport { ContextMenuService } from '../../../platform/contextview/browser/contextMenuService.js';\nimport { getSingletonServiceDescriptors, InstantiationType, registerSingleton } from '../../../platform/instantiation/common/extensions.js';\nimport { OpenerService } from '../../browser/services/openerService.js';\nimport { ILanguageService } from '../../common/languages/language.js';\nimport { MarkerDecorationsService } from '../../common/services/markerDecorationsService.js';\nimport { IMarkerDecorationsService } from '../../common/services/markerDecorations.js';\nimport { ModelService } from '../../common/services/modelService.js';\nimport { StandaloneQuickInputService } from './quickInput/standaloneQuickInputService.js';\nimport { StandaloneThemeService } from './standaloneThemeService.js';\nimport { IStandaloneThemeService } from '../common/standaloneTheme.js';\nimport { AccessibilityService } from '../../../platform/accessibility/browser/accessibilityService.js';\nimport { IAccessibilityService } from '../../../platform/accessibility/common/accessibility.js';\nimport { IMenuService } from '../../../platform/actions/common/actions.js';\nimport { MenuService } from '../../../platform/actions/common/menuService.js';\nimport { BrowserClipboardService } from '../../../platform/clipboard/browser/clipboardService.js';\nimport { IClipboardService } from '../../../platform/clipboard/common/clipboardService.js';\nimport { ContextKeyService } from '../../../platform/contextkey/browser/contextKeyService.js';\nimport { SyncDescriptor } from '../../../platform/instantiation/common/descriptors.js';\nimport { InstantiationService } from '../../../platform/instantiation/common/instantiationService.js';\nimport { ServiceCollection } from '../../../platform/instantiation/common/serviceCollection.js';\nimport { IListService, ListService } from '../../../platform/list/browser/listService.js';\nimport { IMarkerService } from '../../../platform/markers/common/markers.js';\nimport { MarkerService } from '../../../platform/markers/common/markerService.js';\nimport { IOpenerService } from '../../../platform/opener/common/opener.js';\nimport { IQuickInputService } from '../../../platform/quickinput/common/quickInput.js';\nimport { IStorageService, InMemoryStorageService } from '../../../platform/storage/common/storage.js';\nimport { DefaultConfiguration } from '../../../platform/configuration/common/configurations.js';\nimport { WorkspaceEdit } from '../../common/languages.js';\nimport { AccessibilitySignal, IAccessibilitySignalService } from '../../../platform/accessibilitySignal/browser/accessibilitySignalService.js';\nimport { LogService } from '../../../platform/log/common/logService.js';\nimport { getEditorFeatures } from '../../common/editorFeatures.js';\nimport { onUnexpectedError } from '../../../base/common/errors.js';\nimport { IEnvironmentService } from '../../../platform/environment/common/environment.js';\nimport { mainWindow } from '../../../base/browser/window.js';\nimport { ResourceMap } from '../../../base/common/map.js';\nimport { ITreeSitterLibraryService } from '../../common/services/treeSitter/treeSitterLibraryService.js';\nimport { StandaloneTreeSitterLibraryService } from './standaloneTreeSitterLibraryService.js';\nimport { IDataChannelService, NullDataChannelService } from '../../../platform/dataChannel/common/dataChannel.js';\nimport { IWebWorkerService } from '../../../platform/webWorker/browser/webWorkerService.js';\nimport { StandaloneWebWorkerService } from './services/standaloneWebWorkerService.js';\nimport { IDefaultAccountService } from '../../../platform/defaultAccount/common/defaultAccount.js';\nimport { IDefaultAccount } from '../../../base/common/defaultAccount.js';\n\nclass SimpleModel implements IResolvedTextEditorModel {\n\n\tprivate readonly model: ITextModel;\n\tprivate readonly _onWillDispose: Emitter<void>;\n\n\tconstructor(model: ITextModel) {\n\t\tthis.model = model;\n\t\tthis._onWillDispose = new Emitter<void>();\n\t}\n\n\tpublic get textEditorModel(): ITextModel {\n\t\treturn this.model;\n\t}\n\n\tprivate disposed = false;\n\tpublic dispose(): void {\n\t\tthis.disposed = true;\n\n\t\tthis._onWillDispose.fire();\n\t}\n}\n\nclass StandaloneTextModelService implements ITextModelService {\n\tpublic _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IModelService private readonly modelService: IModelService\n\t) { }\n\n\tpublic createModelReference(resource: URI): Promise<IReference<IResolvedTextEditorModel>> {\n\t\tconst model = this.modelService.getModel(resource);\n\n\t\tif (!model) {\n\t\t\treturn Promise.reject(new Error(`Model not found`));\n\t\t}\n\n\t\treturn Promise.resolve(new ImmortalReference(new SimpleModel(model)));\n\t}\n}\n\nclass StandaloneEditorProgressService implements IEditorProgressService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate static NULL_PROGRESS_RUNNER: IProgressRunner = {\n\t\tdone: () => { },\n\t\ttotal: () => { },\n\t\tworked: () => { }\n\t};\n\n\tshow(infinite: true, delay?: number): IProgressRunner;\n\tshow(total: number, delay?: number): IProgressRunner;\n\tshow(): IProgressRunner {\n\t\treturn StandaloneEditorProgressService.NULL_PROGRESS_RUNNER;\n\t}\n\n\tasync showWhile(promise: Promise<unknown>, delay?: number): Promise<void> {\n\t\tawait promise;\n\t}\n}\n\nclass StandaloneProgressService implements IProgressService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\twithProgress<R>(_options: IProgressOptions | IProgressDialogOptions | IProgressNotificationOptions | IProgressWindowOptions | IProgressCompositeOptions, task: (progress: IProgress<IProgressStep>) => Promise<R>, onDidCancel?: ((choice?: number | undefined) => void) | undefined): Promise<R> {\n\t\treturn task({\n\t\t\treport: () => { },\n\t\t});\n\t}\n}\n\nclass StandaloneEnvironmentService implements IEnvironmentService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\treadonly isExtensionDevelopment: boolean = false;\n\treadonly isBuilt: boolean = false;\n}\n\nclass StandaloneDialogService implements IDialogService {\n\n\t_serviceBrand: undefined;\n\n\tasync confirm(confirmation: IConfirmation): Promise<IConfirmationResult> {\n\t\tconst confirmed = this.doConfirm(confirmation.message, confirmation.detail);\n\n\t\treturn {\n\t\t\tconfirmed,\n\t\t\tcheckboxChecked: false // unsupported\n\t\t};\n\t}\n\n\tprivate doConfirm(message: string, detail?: string): boolean {\n\t\tlet messageText = message;\n\t\tif (detail) {\n\t\t\tmessageText = messageText + '\\n\\n' + detail;\n\t\t}\n\n\t\treturn mainWindow.confirm(messageText);\n\t}\n\n\tprompt<T>(prompt: IPromptWithCustomCancel<T>): Promise<IPromptResultWithCancel<T>>;\n\tprompt<T>(prompt: IPrompt<T>): Promise<IPromptResult<T>>;\n\tprompt<T>(prompt: IPromptWithDefaultCancel<T>): Promise<IPromptResult<T>>;\n\tasync prompt<T>(prompt: IPrompt<T> | IPromptWithCustomCancel<T>): Promise<IPromptResult<T> | IPromptResultWithCancel<T>> {\n\t\tlet result: T | undefined = undefined;\n\t\tconst confirmed = this.doConfirm(prompt.message, prompt.detail);\n\t\tif (confirmed) {\n\t\t\tconst promptButtons: IPromptBaseButton<T>[] = [...(prompt.buttons ?? [])];\n\t\t\tif (prompt.cancelButton && typeof prompt.cancelButton !== 'string' && typeof prompt.cancelButton !== 'boolean') {\n\t\t\t\tpromptButtons.push(prompt.cancelButton);\n\t\t\t}\n\n\t\t\tresult = await promptButtons[0]?.run({ checkboxChecked: false });\n\t\t}\n\n\t\treturn { result };\n\t}\n\n\tasync error(message: string, detail?: string): Promise<void> {\n\t\tawait this.prompt({ type: Severity.Error, message, detail });\n\t}\n}\n\nexport class StandaloneNotificationService implements INotificationService {\n\n\tpublic _serviceBrand: undefined;\n\n\tprivate static readonly NO_OP: INotificationHandle = new NoOpNotification();\n\n\tpublic info(message: string): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Info, message });\n\t}\n\n\tpublic warn(message: string): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Warning, message });\n\t}\n\n\tpublic error(error: string | Error): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Error, message: error });\n\t}\n\n\tpublic notify(notification: INotification): INotificationHandle {\n\t\tswitch (notification.severity) {\n\t\t\tcase Severity.Error:\n\t\t\t\tconsole.error(notification.message);\n\t\t\t\tbreak;\n\t\t\tcase Severity.Warning:\n\t\t\t\tconsole.warn(notification.message);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tconsole.log(notification.message);\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn StandaloneNotificationService.NO_OP;\n\t}\n\n\tpublic prompt(severity: Severity, message: string, choices: IPromptChoice[], options?: IPromptOptions): INotificationHandle {\n\t\treturn StandaloneNotificationService.NO_OP;\n\t}\n\n\tpublic status(message: string | Error, options?: IStatusMessageOptions): IStatusHandle {\n\t\treturn { close: () => { } };\n\t}\n}\n\nexport class StandaloneCommandService implements ICommandService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _instantiationService: IInstantiationService;\n\n\tprivate readonly _onWillExecuteCommand = new Emitter<ICommandEvent>();\n\tprivate readonly _onDidExecuteCommand = new Emitter<ICommandEvent>();\n\tpublic readonly onDidExecuteCommand: Event<ICommandEvent> = this._onDidExecuteCommand.event;\n\n\tconstructor(\n\t\t@IInstantiationService instantiationService: IInstantiationService\n\t) {\n\t\tthis._instantiationService = instantiationService;\n\t}\n\n\tpublic executeCommand<T>(id: string, ...args: unknown[]): Promise<T> {\n\t\tconst command = CommandsRegistry.getCommand(id);\n\t\tif (!command) {\n\t\t\treturn Promise.reject(new Error(`command '${id}' not found`));\n\t\t}\n\n\t\ttry {\n\t\t\tthis._onWillExecuteCommand.fire({ commandId: id, args });\n\t\t\tconst result = this._instantiationService.invokeFunction.apply(this._instantiationService, [command.handler, ...args]) as T;\n\n\t\t\tthis._onDidExecuteCommand.fire({ commandId: id, args });\n\t\t\treturn Promise.resolve(result);\n\t\t} catch (err) {\n\t\t\treturn Promise.reject(err);\n\t\t}\n\t}\n}\n\nexport interface IKeybindingRule {\n\tkeybinding: number;\n\tcommand?: string | null;\n\tcommandArgs?: unknown;\n\twhen?: ContextKeyExpression | null;\n}\n\nexport class StandaloneKeybindingService extends AbstractKeybindingService {\n\tprivate _cachedResolver: KeybindingResolver | null;\n\tprivate _dynamicKeybindings: IKeybindingItem[];\n\tprivate readonly _domNodeListeners: DomNodeListeners[];\n\n\tconstructor(\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t\t@ICommandService commandService: ICommandService,\n\t\t@ITelemetryService telemetryService: ITelemetryService,\n\t\t@INotificationService notificationService: INotificationService,\n\t\t@ILogService logService: ILogService,\n\t\t@ICodeEditorService codeEditorService: ICodeEditorService\n\t) {\n\t\tsuper(contextKeyService, commandService, telemetryService, notificationService, logService);\n\n\t\tthis._cachedResolver = null;\n\t\tthis._dynamicKeybindings = [];\n\t\tthis._domNodeListeners = [];\n\n\t\tconst addContainer = (domNode: HTMLElement) => {\n\t\t\tconst disposables = new DisposableStore();\n\n\t\t\t// for standard keybindings\n\t\t\tdisposables.add(dom.addDisposableListener(domNode, dom.EventType.KEY_DOWN, (e: KeyboardEvent) => {\n\t\t\t\tconst keyEvent = new StandardKeyboardEvent(e);\n\t\t\t\tconst shouldPreventDefault = this._dispatch(keyEvent, keyEvent.target);\n\t\t\t\tif (shouldPreventDefault) {\n\t\t\t\t\tkeyEvent.preventDefault();\n\t\t\t\t\tkeyEvent.stopPropagation();\n\t\t\t\t}\n\t\t\t}));\n\n\t\t\t// for single modifier chord keybindings (e.g. shift shift)\n\t\t\tdisposables.add(dom.addDisposableListener(domNode, dom.EventType.KEY_UP, (e: KeyboardEvent) => {\n\t\t\t\tconst keyEvent = new StandardKeyboardEvent(e);\n\t\t\t\tconst shouldPreventDefault = this._singleModifierDispatch(keyEvent, keyEvent.target);\n\t\t\t\tif (shouldPreventDefault) {\n\t\t\t\t\tkeyEvent.preventDefault();\n\t\t\t\t}\n\t\t\t}));\n\n\t\t\tthis._domNodeListeners.push(new DomNodeListeners(domNode, disposables));\n\t\t};\n\t\tconst removeContainer = (domNode: HTMLElement) => {\n\t\t\tfor (let i = 0; i < this._domNodeListeners.length; i++) {\n\t\t\t\tconst domNodeListeners = this._domNodeListeners[i];\n\t\t\t\tif (domNodeListeners.domNode === domNode) {\n\t\t\t\t\tthis._domNodeListeners.splice(i, 1);\n\t\t\t\t\tdomNodeListeners.dispose();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tconst addCodeEditor = (codeEditor: ICodeEditor) => {\n\t\t\tif (codeEditor.getOption(EditorOption.inDiffEditor)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\taddContainer(codeEditor.getContainerDomNode());\n\t\t};\n\t\tconst removeCodeEditor = (codeEditor: ICodeEditor) => {\n\t\t\tif (codeEditor.getOption(EditorOption.inDiffEditor)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tremoveContainer(codeEditor.getContainerDomNode());\n\t\t};\n\t\tthis._register(codeEditorService.onCodeEditorAdd(addCodeEditor));\n\t\tthis._register(codeEditorService.onCodeEditorRemove(removeCodeEditor));\n\t\tcodeEditorService.listCodeEditors().forEach(addCodeEditor);\n\n\t\tconst addDiffEditor = (diffEditor: IDiffEditor) => {\n\t\t\taddContainer(diffEditor.getContainerDomNode());\n\t\t};\n\t\tconst removeDiffEditor = (diffEditor: IDiffEditor) => {\n\t\t\tremoveContainer(diffEditor.getContainerDomNode());\n\t\t};\n\t\tthis._register(codeEditorService.onDiffEditorAdd(addDiffEditor));\n\t\tthis._register(codeEditorService.onDiffEditorRemove(removeDiffEditor));\n\t\tcodeEditorService.listDiffEditors().forEach(addDiffEditor);\n\t}\n\n\tpublic addDynamicKeybinding(command: string, keybinding: number, handler: ICommandHandler, when: ContextKeyExpression | undefined): IDisposable {\n\t\treturn combinedDisposable(\n\t\t\tCommandsRegistry.registerCommand(command, handler),\n\t\t\tthis.addDynamicKeybindings([{\n\t\t\t\tkeybinding,\n\t\t\t\tcommand,\n\t\t\t\twhen\n\t\t\t}])\n\t\t);\n\t}\n\n\tpublic addDynamicKeybindings(rules: IKeybindingRule[]): IDisposable {\n\t\tconst entries: IKeybindingItem[] = rules.map((rule) => {\n\t\t\tconst keybinding = decodeKeybinding(rule.keybinding, OS);\n\t\t\treturn {\n\t\t\t\tkeybinding,\n\t\t\t\tcommand: rule.command ?? null,\n\t\t\t\tcommandArgs: rule.commandArgs,\n\t\t\t\twhen: rule.when,\n\t\t\t\tweight1: 1000,\n\t\t\t\tweight2: 0,\n\t\t\t\textensionId: null,\n\t\t\t\tisBuiltinExtension: false\n\t\t\t};\n\t\t});\n\t\tthis._dynamicKeybindings = this._dynamicKeybindings.concat(entries);\n\n\t\tthis.updateResolver();\n\n\t\treturn toDisposable(() => {\n\t\t\t// Search the first entry and remove them all since they will be contiguous\n\t\t\tfor (let i = 0; i < this._dynamicKeybindings.length; i++) {\n\t\t\t\tif (this._dynamicKeybindings[i] === entries[0]) {\n\t\t\t\t\tthis._dynamicKeybindings.splice(i, entries.length);\n\t\t\t\t\tthis.updateResolver();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate updateResolver(): void {\n\t\tthis._cachedResolver = null;\n\t\tthis._onDidUpdateKeybindings.fire();\n\t}\n\n\tprotected _getResolver(): KeybindingResolver {\n\t\tif (!this._cachedResolver) {\n\t\t\tconst defaults = this._toNormalizedKeybindingItems(KeybindingsRegistry.getDefaultKeybindings(), true);\n\t\t\tconst overrides = this._toNormalizedKeybindingItems(this._dynamicKeybindings, false);\n\t\t\tthis._cachedResolver = new KeybindingResolver(defaults, overrides, (str) => this._log(str));\n\t\t}\n\t\treturn this._cachedResolver;\n\t}\n\n\tprotected _documentHasFocus(): boolean {\n\t\treturn mainWindow.document.hasFocus();\n\t}\n\n\tprivate _toNormalizedKeybindingItems(items: IKeybindingItem[], isDefault: boolean): ResolvedKeybindingItem[] {\n\t\tconst result: ResolvedKeybindingItem[] = [];\n\t\tlet resultLen = 0;\n\t\tfor (const item of items) {\n\t\t\tconst when = item.when || undefined;\n\t\t\tconst keybinding = item.keybinding;\n\n\t\t\tif (!keybinding) {\n\t\t\t\t// This might be a removal keybinding item in user settings => accept it\n\t\t\t\tresult[resultLen++] = new ResolvedKeybindingItem(undefined, item.command, item.commandArgs, when, isDefault, null, false);\n\t\t\t} else {\n\t\t\t\tconst resolvedKeybindings = USLayoutResolvedKeybinding.resolveKeybinding(keybinding, OS);\n\t\t\t\tfor (const resolvedKeybinding of resolvedKeybindings) {\n\t\t\t\t\tresult[resultLen++] = new ResolvedKeybindingItem(resolvedKeybinding, item.command, item.commandArgs, when, isDefault, null, false);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tpublic resolveKeyboardEvent(keyboardEvent: IKeyboardEvent): ResolvedKeybinding {\n\t\tconst chord = new KeyCodeChord(\n\t\t\tkeyboardEvent.ctrlKey,\n\t\t\tkeyboardEvent.shiftKey,\n\t\t\tkeyboardEvent.altKey,\n\t\t\tkeyboardEvent.metaKey,\n\t\t\tkeyboardEvent.keyCode\n\t\t);\n\t\treturn new USLayoutResolvedKeybinding([chord], OS);\n\t}\n}\n\nclass DomNodeListeners extends Disposable {\n\tconstructor(\n\t\tpublic readonly domNode: HTMLElement,\n\t\tdisposables: DisposableStore\n\t) {\n\t\tsuper();\n\t\tthis._register(disposables);\n\t}\n}\n\nfunction isConfigurationOverrides(thing: unknown): thing is IConfigurationOverrides {\n\treturn !!thing\n\t\t&& typeof thing === 'object'\n\t\t&& (!(thing as IConfigurationOverrides).overrideIdentifier || typeof (thing as IConfigurationOverrides).overrideIdentifier === 'string')\n\t\t&& (!(thing as IConfigurationOverrides).resource || (thing as IConfigurationOverrides).resource instanceof URI);\n}\n\nexport class StandaloneConfigurationService implements IConfigurationService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _onDidChangeConfiguration = new Emitter<IConfigurationChangeEvent>();\n\tpublic readonly onDidChangeConfiguration: Event<IConfigurationChangeEvent> = this._onDidChangeConfiguration.event;\n\n\tprivate readonly _configuration: Configuration;\n\n\tconstructor(\n\t\t@ILogService private readonly logService: ILogService,\n\t) {\n\t\tconst defaultConfiguration = new DefaultConfiguration(logService);\n\t\tthis._configuration = new Configuration(\n\t\t\tdefaultConfiguration.reload(),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tnew ResourceMap<ConfigurationModel>(),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tnew ResourceMap<ConfigurationModel>(),\n\t\t\tlogService\n\t\t);\n\t\tdefaultConfiguration.dispose();\n\t}\n\n\tgetValue<T>(): T;\n\tgetValue<T>(section: string): T;\n\tgetValue<T>(overrides: IConfigurationOverrides): T;\n\tgetValue<T>(section: string, overrides: IConfigurationOverrides): T;\n\tgetValue(arg1?: unknown, arg2?: unknown): unknown {\n\t\tconst section = typeof arg1 === 'string' ? arg1 : undefined;\n\t\tconst overrides = isConfigurationOverrides(arg1) ? arg1 : isConfigurationOverrides(arg2) ? arg2 : {};\n\t\treturn this._configuration.getValue(section, overrides, undefined);\n\t}\n\n\tpublic updateValues(values: [string, unknown][]): Promise<void> {\n\t\tconst previous = { data: this._configuration.toData() };\n\n\t\tconst changedKeys: string[] = [];\n\n\t\tfor (const entry of values) {\n\t\t\tconst [key, value] = entry;\n\t\t\tif (this.getValue(key) === value) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tthis._configuration.updateValue(key, value);\n\t\t\tchangedKeys.push(key);\n\t\t}\n\n\t\tif (changedKeys.length > 0) {\n\t\t\tconst configurationChangeEvent = new ConfigurationChangeEvent({ keys: changedKeys, overrides: [] }, previous, this._configuration, undefined, this.logService);\n\t\t\tconfigurationChangeEvent.source = ConfigurationTarget.MEMORY;\n\t\t\tthis._onDidChangeConfiguration.fire(configurationChangeEvent);\n\t\t}\n\n\t\treturn Promise.resolve();\n\t}\n\n\tpublic updateValue(key: string, value: unknown, arg3?: unknown, arg4?: unknown): Promise<void> {\n\t\treturn this.updateValues([[key, value]]);\n\t}\n\n\tpublic inspect<C>(key: string, options: IConfigurationOverrides = {}): IConfigurationValue<C> {\n\t\treturn this._configuration.inspect<C>(key, options, undefined);\n\t}\n}\n\nclass StandaloneResourceConfigurationService implements ITextResourceConfigurationService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _onDidChangeConfiguration = new Emitter<ITextResourceConfigurationChangeEvent>();\n\n\tconstructor(\n\t\t@IConfigurationService private readonly configurationService: StandaloneConfigurationService,\n\t\t@IModelService private readonly modelService: IModelService,\n\t\t@ILanguageService private readonly languageService: ILanguageService\n\t) {\n\t\tthis.configurationService.onDidChangeConfiguration((e) => {\n\t\t\tthis._onDidChangeConfiguration.fire({ affectedKeys: e.affectedKeys, affectsConfiguration: (resource: URI, configuration: string) => e.affectsConfiguration(configuration) });\n\t\t});\n\t}\n\n\tgetValue<T>(resource: URI, section?: string): T;\n\tgetValue<T>(resource: URI, position?: IPosition, section?: string): T;\n\tgetValue<T>(resource: URI | undefined, arg2?: unknown, arg3?: unknown) {\n\t\tconst position: IPosition | null = Pos.isIPosition(arg2) ? arg2 : null;\n\t\tconst section: string | undefined = position ? (typeof arg3 === 'string' ? arg3 : undefined) : (typeof arg2 === 'string' ? arg2 : undefined);\n\t\tconst language = resource ? this.getLanguage(resource, position) : undefined;\n\t\tif (typeof section === 'undefined') {\n\t\t\treturn this.configurationService.getValue<T>({\n\t\t\t\tresource,\n\t\t\t\toverrideIdentifier: language\n\t\t\t});\n\t\t}\n\t\treturn this.configurationService.getValue<T>(section, {\n\t\t\tresource,\n\t\t\toverrideIdentifier: language\n\t\t});\n\t}\n\n\tprivate getLanguage(resource: URI, position: IPosition | null): string | null {\n\t\tconst model = this.modelService.getModel(resource);\n\t\tif (model) {\n\t\t\treturn position ? model.getLanguageIdAtPosition(position.lineNumber, position.column) : model.getLanguageId();\n\t\t}\n\t\treturn this.languageService.guessLanguageIdByFilepathOrFirstLine(resource);\n\t}\n}\n\nclass StandaloneResourcePropertiesService implements ITextResourcePropertiesService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IConfigurationService private readonly configurationService: IConfigurationService,\n\t) {\n\t}\n\n\tgetEOL(resource: URI, language?: string): string {\n\t\tconst eol = this.configurationService.getValue('files.eol', { overrideIdentifier: language, resource });\n\t\tif (eol && typeof eol === 'string' && eol !== 'auto') {\n\t\t\treturn eol;\n\t\t}\n\t\treturn (isLinux || isMacintosh) ? '\\n' : '\\r\\n';\n\t}\n}\n\nclass StandaloneTelemetryService implements ITelemetryService {\n\tdeclare readonly _serviceBrand: undefined;\n\tpublicLog2() { }\n}\n\nclass StandaloneWorkspaceContextService implements IWorkspaceContextService {\n\n\tpublic _serviceBrand: undefined;\n\n\tprivate static readonly SCHEME = 'inmemory';\n\n\tprivate readonly workspace: IWorkspace;\n\n\tconstructor() {\n\t\tconst resource = URI.from({ scheme: StandaloneWorkspaceContextService.SCHEME, authority: 'model', path: '/' });\n\t\tthis.workspace = { id: STANDALONE_EDITOR_WORKSPACE_ID, folders: [new WorkspaceFolder({ uri: resource, name: '', index: 0 })] };\n\t}\n\n\tpublic getWorkspace(): IWorkspace {\n\t\treturn this.workspace;\n\t}\n\n\tpublic getWorkspaceFolder(resource: URI): IWorkspaceFolder | null {\n\t\treturn resource && resource.scheme === StandaloneWorkspaceContextService.SCHEME ? this.workspace.folders[0] : null;\n\t}\n}\n\nexport function updateConfigurationService(configurationService: IConfigurationService, source: any, isDiffEditor: boolean): void {\n\tif (!source) {\n\t\treturn;\n\t}\n\tif (!(configurationService instanceof StandaloneConfigurationService)) {\n\t\treturn;\n\t}\n\tconst toUpdate: [string, unknown][] = [];\n\tObject.keys(source).forEach((key) => {\n\t\tif (isEditorConfigurationKey(key)) {\n\t\t\ttoUpdate.push([`editor.${key}`, source[key]]);\n\t\t}\n\t\tif (isDiffEditor && isDiffEditorConfigurationKey(key)) {\n\t\t\ttoUpdate.push([`diffEditor.${key}`, source[key]]);\n\t\t}\n\t});\n\tif (toUpdate.length > 0) {\n\t\tconfigurationService.updateValues(toUpdate);\n\t}\n}\n\nclass StandaloneBulkEditService implements IBulkEditService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IModelService private readonly _modelService: IModelService\n\t) {\n\t\t//\n\t}\n\n\thasPreviewHandler(): false {\n\t\treturn false;\n\t}\n\n\tasync apply(editsIn: ResourceEdit[] | WorkspaceEdit, _options?: IBulkEditOptions): Promise<IBulkEditResult> {\n\t\tconst edits = Array.isArray(editsIn) ? editsIn : ResourceEdit.convert(editsIn);\n\t\tconst textEdits = new Map<ITextModel, ISingleEditOperation[]>();\n\n\t\tfor (const edit of edits) {\n\t\t\tif (!(edit instanceof ResourceTextEdit)) {\n\t\t\t\tthrow new Error('bad edit - only text edits are supported');\n\t\t\t}\n\t\t\tconst model = this._modelService.getModel(edit.resource);\n\t\t\tif (!model) {\n\t\t\t\tthrow new Error('bad edit - model not found');\n\t\t\t}\n\t\t\tif (typeof edit.versionId === 'number' && model.getVersionId() !== edit.versionId) {\n\t\t\t\tthrow new Error('bad state - model changed in the meantime');\n\t\t\t}\n\t\t\tlet array = textEdits.get(model);\n\t\t\tif (!array) {\n\t\t\t\tarray = [];\n\t\t\t\ttextEdits.set(model, array);\n\t\t\t}\n\t\t\tarray.push(EditOperation.replaceMove(Range.lift(edit.textEdit.range), edit.textEdit.text));\n\t\t}\n\n\n\t\tlet totalEdits = 0;\n\t\tlet totalFiles = 0;\n\t\tfor (const [model, edits] of textEdits) {\n\t\t\tmodel.pushStackElement();\n\t\t\tmodel.pushEditOperations([], edits, () => []);\n\t\t\tmodel.pushStackElement();\n\t\t\ttotalFiles += 1;\n\t\t\ttotalEdits += edits.length;\n\t\t}\n\n\t\treturn {\n\t\t\tariaSummary: strings.format(StandaloneServicesNLS.bulkEditServiceSummary, totalEdits, totalFiles),\n\t\t\tisApplied: totalEdits > 0\n\t\t};\n\t}\n}\n\nclass StandaloneUriLabelService implements ILabelService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tpublic getUriLabel(resource: URI, options?: { relative?: boolean; forceNoTildify?: boolean }): string {\n\t\tif (resource.scheme === 'file') {\n\t\t\treturn resource.fsPath;\n\t\t}\n\t\treturn resource.path;\n\t}\n\n\tgetUriBasenameLabel(resource: URI): string {\n\t\treturn basename(resource);\n\t}\n}\n\n\nclass StandaloneContextViewService extends ContextViewService {\n\n\tconstructor(\n\t\t@ILayoutService layoutService: ILayoutService,\n\t\t@ICodeEditorService private readonly _codeEditorService: ICodeEditorService,\n\t) {\n\t\tsuper(layoutService);\n\t}\n\n\toverride showContextView(delegate: IContextViewDelegate, container?: HTMLElement, shadowRoot?: boolean): IOpenContextView {\n\t\tif (!container) {\n\t\t\tconst codeEditor = this._codeEditorService.getFocusedCodeEditor() || this._codeEditorService.getActiveCodeEditor();\n\t\t\tif (codeEditor) {\n\t\t\t\tcontainer = codeEditor.getContainerDomNode();\n\t\t\t}\n\t\t}\n\t\treturn super.showContextView(delegate, container, shadowRoot);\n\t}\n}\n\nclass StandaloneWorkspaceTrustManagementService implements IWorkspaceTrustManagementService {\n\t_serviceBrand: undefined;\n\n\tprivate _neverEmitter = new Emitter<never>();\n\tpublic readonly onDidChangeTrust: Event<boolean> = this._neverEmitter.event;\n\n\tisWorkspaceTrusted(): boolean {\n\t\treturn true;\n\t}\n}\n\nclass StandaloneLanguageService extends LanguageService {\n\tconstructor() {\n\t\tsuper();\n\t}\n}\n\nclass StandaloneLogService extends LogService {\n\tconstructor() {\n\t\tsuper(new ConsoleLogger());\n\t}\n}\n\nclass StandaloneContextMenuService extends ContextMenuService {\n\tconstructor(\n\t\t@ITelemetryService telemetryService: ITelemetryService,\n\t\t@INotificationService notificationService: INotificationService,\n\t\t@IContextViewService contextViewService: IContextViewService,\n\t\t@IKeybindingService keybindingService: IKeybindingService,\n\t\t@IMenuService menuService: IMenuService,\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t) {\n\t\tsuper(telemetryService, notificationService, contextViewService, keybindingService, menuService, contextKeyService);\n\t\tthis.configure({ blockMouse: false }); // we do not want that in the standalone editor\n\t}\n}\n\nclass StandaloneAccessbilitySignalService implements IAccessibilitySignalService {\n\t_serviceBrand: undefined;\n\tasync playSignal(cue: AccessibilitySignal, options: {}): Promise<void> {\n\t}\n}\n\nclass StandaloneDefaultAccountService implements IDefaultAccountService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\treadonly onDidChangeDefaultAccount: Event<IDefaultAccount | null> = Event.None;\n\n\tasync getDefaultAccount(): Promise<IDefaultAccount | null> {\n\t\treturn null;\n\t}\n}\n\nexport interface IEditorOverrideServices {\n\t[index: string]: unknown;\n}\n\n\nregisterSingleton(IWebWorkerService, StandaloneWebWorkerService, InstantiationType.Eager);\nregisterSingleton(ILogService, StandaloneLogService, InstantiationType.Eager);\nregisterSingleton(IConfigurationService, StandaloneConfigurationService, InstantiationType.Eager);\nregisterSingleton(ITextResourceConfigurationService, StandaloneResourceConfigurationService, InstantiationType.Eager);\nregisterSingleton(ITextResourcePropertiesService, StandaloneResourcePropertiesService, InstantiationType.Eager);\nregisterSingleton(IWorkspaceContextService, StandaloneWorkspaceContextService, InstantiationType.Eager);\nregisterSingleton(ILabelService, StandaloneUriLabelService, InstantiationType.Eager);\nregisterSingleton(ITelemetryService, StandaloneTelemetryService, InstantiationType.Eager);\nregisterSingleton(IDialogService, StandaloneDialogService, InstantiationType.Eager);\nregisterSingleton(IEnvironmentService, StandaloneEnvironmentService, InstantiationType.Eager);\nregisterSingleton(INotificationService, StandaloneNotificationService, InstantiationType.Eager);\nregisterSingleton(IMarkerService, MarkerService, InstantiationType.Eager);\nregisterSingleton(ILanguageService, StandaloneLanguageService, InstantiationType.Eager);\nregisterSingleton(IStandaloneThemeService, StandaloneThemeService, InstantiationType.Eager);\nregisterSingleton(IModelService, ModelService, InstantiationType.Eager);\nregisterSingleton(IMarkerDecorationsService, MarkerDecorationsService, InstantiationType.Eager);\nregisterSingleton(IContextKeyService, ContextKeyService, InstantiationType.Eager);\nregisterSingleton(IProgressService, StandaloneProgressService, InstantiationType.Eager);\nregisterSingleton(IEditorProgressService, StandaloneEditorProgressService, InstantiationType.Eager);\nregisterSingleton(IStorageService, InMemoryStorageService, InstantiationType.Eager);\nregisterSingleton(IBulkEditService, StandaloneBulkEditService, InstantiationType.Eager);\nregisterSingleton(IWorkspaceTrustManagementService, StandaloneWorkspaceTrustManagementService, InstantiationType.Eager);\nregisterSingleton(ITextModelService, StandaloneTextModelService, InstantiationType.Eager);\nregisterSingleton(IAccessibilityService, AccessibilityService, InstantiationType.Eager);\nregisterSingleton(IListService, ListService, InstantiationType.Eager);\nregisterSingleton(ICommandService, StandaloneCommandService, InstantiationType.Eager);\nregisterSingleton(IKeybindingService, StandaloneKeybindingService, InstantiationType.Eager);\nregisterSingleton(IQuickInputService, StandaloneQuickInputService, InstantiationType.Eager);\nregisterSingleton(IContextViewService, StandaloneContextViewService, InstantiationType.Eager);\nregisterSingleton(IOpenerService, OpenerService, InstantiationType.Eager);\nregisterSingleton(IClipboardService, BrowserClipboardService, InstantiationType.Eager);\nregisterSingleton(IContextMenuService, StandaloneContextMenuService, InstantiationType.Eager);\nregisterSingleton(IMenuService, MenuService, InstantiationType.Eager);\nregisterSingleton(IAccessibilitySignalService, StandaloneAccessbilitySignalService, InstantiationType.Eager);\nregisterSingleton(ITreeSitterLibraryService, StandaloneTreeSitterLibraryService, InstantiationType.Eager);\nregisterSingleton(ILoggerService, NullLoggerService, InstantiationType.Eager);\nregisterSingleton(IDataChannelService, NullDataChannelService, InstantiationType.Eager);\nregisterSingleton(IDefaultAccountService, StandaloneDefaultAccountService, InstantiationType.Eager);\n\n/**\n * We don't want to eagerly instantiate services because embedders get a one time chance\n * to override services when they create the first editor.\n */\nexport namespace StandaloneServices {\n\n\tconst serviceCollection = new ServiceCollection();\n\tfor (const [id, descriptor] of getSingletonServiceDescriptors()) {\n\t\tserviceCollection.set(id, descriptor);\n\t}\n\n\tconst instantiationService = new InstantiationService(serviceCollection, true);\n\tserviceCollection.set(IInstantiationService, instantiationService);\n\n\texport function get<T>(serviceId: ServiceIdentifier<T>): T {\n\t\tif (!initialized) {\n\t\t\tinitialize({});\n\t\t}\n\t\tconst r = serviceCollection.get(serviceId);\n\t\tif (!r) {\n\t\t\tthrow new Error('Missing service ' + serviceId);\n\t\t}\n\t\tif (r instanceof SyncDescriptor) {\n\t\t\treturn instantiationService.invokeFunction((accessor) => accessor.get(serviceId));\n\t\t} else {\n\t\t\treturn r;\n\t\t}\n\t}\n\n\tlet initialized = false;\n\tconst onDidInitialize = new Emitter<void>();\n\texport function initialize(overrides: IEditorOverrideServices): IInstantiationService {\n\t\tif (initialized) {\n\t\t\treturn instantiationService;\n\t\t}\n\t\tinitialized = true;\n\n\t\t// Add singletons that were registered after this module loaded\n\t\tfor (const [id, descriptor] of getSingletonServiceDescriptors()) {\n\t\t\tif (!serviceCollection.get(id)) {\n\t\t\t\tserviceCollection.set(id, descriptor);\n\t\t\t}\n\t\t}\n\n\t\t// Initialize the service collection with the overrides, but only if the\n\t\t// service was not instantiated in the meantime.\n\t\tfor (const serviceId in overrides) {\n\t\t\tif (overrides.hasOwnProperty(serviceId)) {\n\t\t\t\tconst serviceIdentifier = createDecorator(serviceId);\n\t\t\t\tconst r = serviceCollection.get(serviceIdentifier);\n\t\t\t\tif (r instanceof SyncDescriptor) {\n\t\t\t\t\tserviceCollection.set(serviceIdentifier, overrides[serviceId]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Instantiate all editor features\n\t\tconst editorFeatures = getEditorFeatures();\n\t\tfor (const feature of editorFeatures) {\n\t\t\ttry {\n\t\t\t\tinstantiationService.createInstance(feature);\n\t\t\t} catch (err) {\n\t\t\t\tonUnexpectedError(err);\n\t\t\t}\n\t\t}\n\n\t\tonDidInitialize.fire();\n\n\t\treturn instantiationService;\n\t}\n\n\t/**\n\t * Executes callback once services are initialized.\n\t */\n\texport function withServices(callback: () => IDisposable): IDisposable {\n\t\tif (initialized) {\n\t\t\treturn callback();\n\t\t}\n\n\t\tconst disposable = new DisposableStore();\n\n\t\tconst listener = disposable.add(onDidInitialize.event(() => {\n\t\t\tlistener.dispose();\n\t\t\tdisposable.add(callback());\n\t\t}));\n\n\t\treturn disposable;\n\t}\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 *--------------------------------------------------------------------------------------------*/\n\nimport './standaloneCodeEditorService.js';\nimport './standaloneLayoutService.js';\nimport '../../../platform/undoRedo/common/undoRedoService.js';\nimport '../../common/services/languageFeatureDebounce.js';\nimport '../../common/services/semanticTokensStylingService.js';\nimport '../../common/services/languageFeaturesService.js';\nimport '../../../platform/hover/browser/hoverService.js';\nimport '../../browser/services/inlineCompletionsService.js';\n\nimport * as strings from '../../../base/common/strings.js';\nimport * as dom from '../../../base/browser/dom.js';\nimport { StandardKeyboardEvent } from '../../../base/browser/keyboardEvent.js';\nimport { Emitter, Event } from '../../../base/common/event.js';\nimport { ResolvedKeybinding, KeyCodeChord, decodeKeybinding } from '../../../base/common/keybindings.js';\nimport { IDisposable, IReference, ImmortalReference, toDisposable, DisposableStore, Disposable, combinedDisposable } from '../../../base/common/lifecycle.js';\nimport { OS, isLinux, isMacintosh } from '../../../base/common/platform.js';\nimport Severity from '../../../base/common/severity.js';\nimport { URI } from '../../../base/common/uri.js';\nimport { IBulkEditOptions, IBulkEditResult, IBulkEditService, ResourceEdit, ResourceTextEdit } from '../../browser/services/bulkEditService.js';\nimport { isDiffEditorConfigurationKey, isEditorConfigurationKey } from '../../common/config/editorConfigurationSchema.js';\nimport { EditOperation, ISingleEditOperation } from '../../common/core/editOperation.js';\nimport { IPosition, Position as Pos } from '../../common/core/position.js';\nimport { Range } from '../../common/core/range.js';\nimport { ITextModel } from '../../common/model.js';\nimport { IModelService } from '../../common/services/model.js';\nimport { IResolvedTextEditorModel, ITextModelService } from '../../common/services/resolverService.js';\nimport { ITextResourceConfigurationService, ITextResourcePropertiesService, ITextResourceConfigurationChangeEvent } from '../../common/services/textResourceConfiguration.js';\nimport { CommandsRegistry, ICommandEvent, ICommandHandler, ICommandService } from '../../../platform/commands/common/commands.js';\nimport { IConfigurationChangeEvent, IConfigurationOverrides, IConfigurationService, IConfigurationValue, ConfigurationTarget } from '../../../platform/configuration/common/configuration.js';\nimport { Configuration, ConfigurationModel, ConfigurationChangeEvent } from '../../../platform/configuration/common/configurationModels.js';\nimport { IContextKeyService, ContextKeyExpression } from '../../../platform/contextkey/common/contextkey.js';\nimport { IConfirmation, IConfirmationResult, IDialogService, IPrompt, IPromptResult, IPromptWithCustomCancel, IPromptResultWithCancel, IPromptWithDefaultCancel, IPromptBaseButton } from '../../../platform/dialogs/common/dialogs.js';\nimport { createDecorator, IInstantiationService, ServiceIdentifier } from '../../../platform/instantiation/common/instantiation.js';\nimport { AbstractKeybindingService } from '../../../platform/keybinding/common/abstractKeybindingService.js';\nimport { IKeybindingService, IKeyboardEvent } from '../../../platform/keybinding/common/keybinding.js';\nimport { KeybindingResolver } from '../../../platform/keybinding/common/keybindingResolver.js';\nimport { IKeybindingItem, KeybindingsRegistry } from '../../../platform/keybinding/common/keybindingsRegistry.js';\nimport { ResolvedKeybindingItem } from '../../../platform/keybinding/common/resolvedKeybindingItem.js';\nimport { USLayoutResolvedKeybinding } from '../../../platform/keybinding/common/usLayoutResolvedKeybinding.js';\nimport { ILabelService } from '../../../platform/label/common/label.js';\nimport { INotification, INotificationHandle, INotificationService, IPromptChoice, IPromptOptions, NoOpNotification, IStatusMessageOptions, IStatusHandle } from '../../../platform/notification/common/notification.js';\nimport { IProgressRunner, IEditorProgressService, IProgressService, IProgress, IProgressCompositeOptions, IProgressDialogOptions, IProgressNotificationOptions, IProgressOptions, IProgressStep, IProgressWindowOptions } from '../../../platform/progress/common/progress.js';\nimport { ITelemetryService } from '../../../platform/telemetry/common/telemetry.js';\nimport { IWorkspace, IWorkspaceContextService, IWorkspaceFolder, WorkspaceFolder, STANDALONE_EDITOR_WORKSPACE_ID } from '../../../platform/workspace/common/workspace.js';\nimport { ILayoutService } from '../../../platform/layout/browser/layoutService.js';\nimport { StandaloneServicesNLS } from '../../common/standaloneStrings.js';\nimport { basename } from '../../../base/common/resources.js';\nimport { ICodeEditorService } from '../../browser/services/codeEditorService.js';\nimport { ConsoleLogger, ILoggerService, ILogService, NullLoggerService } from '../../../platform/log/common/log.js';\nimport { IWorkspaceTrustManagementService } from '../../../platform/workspace/common/workspaceTrust.js';\nimport { EditorOption } from '../../common/config/editorOptions.js';\nimport { ICodeEditor, IDiffEditor } from '../../browser/editorBrowser.js';\nimport { IContextMenuService, IContextViewDelegate, IContextViewService, IOpenContextView } from '../../../platform/contextview/browser/contextView.js';\nimport { ContextViewService } from '../../../platform/contextview/browser/contextViewService.js';\nimport { LanguageService } from '../../common/services/languageService.js';\nimport { ContextMenuService } from '../../../platform/contextview/browser/contextMenuService.js';\nimport { getSingletonServiceDescriptors, InstantiationType, registerSingleton } from '../../../platform/instantiation/common/extensions.js';\nimport { OpenerService } from '../../browser/services/openerService.js';\nimport { ILanguageService } from '../../common/languages/language.js';\nimport { MarkerDecorationsService } from '../../common/services/markerDecorationsService.js';\nimport { IMarkerDecorationsService } from '../../common/services/markerDecorations.js';\nimport { ModelService } from '../../common/services/modelService.js';\nimport { StandaloneQuickInputService } from './quickInput/standaloneQuickInputService.js';\nimport { StandaloneThemeService } from './standaloneThemeService.js';\nimport { IStandaloneThemeService } from '../common/standaloneTheme.js';\nimport { AccessibilityService } from '../../../platform/accessibility/browser/accessibilityService.js';\nimport { IAccessibilityService } from '../../../platform/accessibility/common/accessibility.js';\nimport { IMenuService } from '../../../platform/actions/common/actions.js';\nimport { MenuService } from '../../../platform/actions/common/menuService.js';\nimport { BrowserClipboardService } from '../../../platform/clipboard/browser/clipboardService.js';\nimport { IClipboardService } from '../../../platform/clipboard/common/clipboardService.js';\nimport { ContextKeyService } from '../../../platform/contextkey/browser/contextKeyService.js';\nimport { SyncDescriptor } from '../../../platform/instantiation/common/descriptors.js';\nimport { InstantiationService } from '../../../platform/instantiation/common/instantiationService.js';\nimport { ServiceCollection } from '../../../platform/instantiation/common/serviceCollection.js';\nimport { IListService, ListService } from '../../../platform/list/browser/listService.js';\nimport { IMarkerService } from '../../../platform/markers/common/markers.js';\nimport { MarkerService } from '../../../platform/markers/common/markerService.js';\nimport { IOpenerService } from '../../../platform/opener/common/opener.js';\nimport { IQuickInputService } from '../../../platform/quickinput/common/quickInput.js';\nimport { IStorageService, InMemoryStorageService } from '../../../platform/storage/common/storage.js';\nimport { DefaultConfiguration } from '../../../platform/configuration/common/configurations.js';\nimport { WorkspaceEdit } from '../../common/languages.js';\nimport { AccessibilitySignal, IAccessibilitySignalService } from '../../../platform/accessibilitySignal/browser/accessibilitySignalService.js';\nimport { LogService } from '../../../platform/log/common/logService.js';\nimport { getEditorFeatures } from '../../common/editorFeatures.js';\nimport { onUnexpectedError } from '../../../base/common/errors.js';\nimport { IEnvironmentService } from '../../../platform/environment/common/environment.js';\nimport { mainWindow } from '../../../base/browser/window.js';\nimport { ResourceMap } from '../../../base/common/map.js';\nimport { ITreeSitterLibraryService } from '../../common/services/treeSitter/treeSitterLibraryService.js';\nimport { StandaloneTreeSitterLibraryService } from './standaloneTreeSitterLibraryService.js';\nimport { IDataChannelService, NullDataChannelService } from '../../../platform/dataChannel/common/dataChannel.js';\nimport { IWebWorkerService } from '../../../platform/webWorker/browser/webWorkerService.js';\nimport { StandaloneWebWorkerService } from './services/standaloneWebWorkerService.js';\nimport { IDefaultAccountService } from '../../../platform/defaultAccount/common/defaultAccount.js';\nimport { IDefaultAccount } from '../../../base/common/defaultAccount.js';\n\nclass SimpleModel implements IResolvedTextEditorModel {\n\n\tprivate readonly model: ITextModel;\n\tprivate readonly _onWillDispose: Emitter<void>;\n\n\tconstructor(model: ITextModel) {\n\t\tthis.model = model;\n\t\tthis._onWillDispose = new Emitter<void>();\n\t}\n\n\tpublic get textEditorModel(): ITextModel {\n\t\treturn this.model;\n\t}\n\n\tprivate disposed = false;\n\tpublic dispose(): void {\n\t\tthis.disposed = true;\n\n\t\tthis._onWillDispose.fire();\n\t}\n}\n\nclass StandaloneTextModelService implements ITextModelService {\n\tpublic _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IModelService private readonly modelService: IModelService\n\t) { }\n\n\tpublic createModelReference(resource: URI): Promise<IReference<IResolvedTextEditorModel>> {\n\t\tconst model = this.modelService.getModel(resource);\n\n\t\tif (!model) {\n\t\t\treturn Promise.reject(new Error(`Model not found`));\n\t\t}\n\n\t\treturn Promise.resolve(new ImmortalReference(new SimpleModel(model)));\n\t}\n}\n\nclass StandaloneEditorProgressService implements IEditorProgressService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate static NULL_PROGRESS_RUNNER: IProgressRunner = {\n\t\tdone: () => { },\n\t\ttotal: () => { },\n\t\tworked: () => { }\n\t};\n\n\tshow(infinite: true, delay?: number): IProgressRunner;\n\tshow(total: number, delay?: number): IProgressRunner;\n\tshow(): IProgressRunner {\n\t\treturn StandaloneEditorProgressService.NULL_PROGRESS_RUNNER;\n\t}\n\n\tasync showWhile(promise: Promise<unknown>, delay?: number): Promise<void> {\n\t\tawait promise;\n\t}\n}\n\nclass StandaloneProgressService implements IProgressService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\twithProgress<R>(_options: IProgressOptions | IProgressDialogOptions | IProgressNotificationOptions | IProgressWindowOptions | IProgressCompositeOptions, task: (progress: IProgress<IProgressStep>) => Promise<R>, onDidCancel?: ((choice?: number | undefined) => void) | undefined): Promise<R> {\n\t\treturn task({\n\t\t\treport: () => { },\n\t\t});\n\t}\n}\n\nclass StandaloneEnvironmentService implements IEnvironmentService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\treadonly isExtensionDevelopment: boolean = false;\n\treadonly isBuilt: boolean = false;\n}\n\nclass StandaloneDialogService implements IDialogService {\n\n\t_serviceBrand: undefined;\n\n\tasync confirm(confirmation: IConfirmation): Promise<IConfirmationResult> {\n\t\tconst confirmed = this.doConfirm(confirmation.message, confirmation.detail);\n\n\t\treturn {\n\t\t\tconfirmed,\n\t\t\tcheckboxChecked: false // unsupported\n\t\t};\n\t}\n\n\tprivate doConfirm(message: string, detail?: string): boolean {\n\t\tlet messageText = message;\n\t\tif (detail) {\n\t\t\tmessageText = messageText + '\\n\\n' + detail;\n\t\t}\n\n\t\treturn mainWindow.confirm(messageText);\n\t}\n\n\tprompt<T>(prompt: IPromptWithCustomCancel<T>): Promise<IPromptResultWithCancel<T>>;\n\tprompt<T>(prompt: IPrompt<T>): Promise<IPromptResult<T>>;\n\tprompt<T>(prompt: IPromptWithDefaultCancel<T>): Promise<IPromptResult<T>>;\n\tasync prompt<T>(prompt: IPrompt<T> | IPromptWithCustomCancel<T>): Promise<IPromptResult<T> | IPromptResultWithCancel<T>> {\n\t\tlet result: T | undefined = undefined;\n\t\tconst confirmed = this.doConfirm(prompt.message, prompt.detail);\n\t\tif (confirmed) {\n\t\t\tconst promptButtons: IPromptBaseButton<T>[] = [...(prompt.buttons ?? [])];\n\t\t\tif (prompt.cancelButton && typeof prompt.cancelButton !== 'string' && typeof prompt.cancelButton !== 'boolean') {\n\t\t\t\tpromptButtons.push(prompt.cancelButton);\n\t\t\t}\n\n\t\t\tresult = await promptButtons[0]?.run({ checkboxChecked: false });\n\t\t}\n\n\t\treturn { result };\n\t}\n\n\tasync error(message: string, detail?: string): Promise<void> {\n\t\tawait this.prompt({ type: Severity.Error, message, detail });\n\t}\n}\n\nexport class StandaloneNotificationService implements INotificationService {\n\n\tpublic _serviceBrand: undefined;\n\n\tprivate static readonly NO_OP: INotificationHandle = new NoOpNotification();\n\n\tpublic info(message: string): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Info, message });\n\t}\n\n\tpublic warn(message: string): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Warning, message });\n\t}\n\n\tpublic error(error: string | Error): INotificationHandle {\n\t\treturn this.notify({ severity: Severity.Error, message: error });\n\t}\n\n\tpublic notify(notification: INotification): INotificationHandle {\n\t\tswitch (notification.severity) {\n\t\t\tcase Severity.Error:\n\t\t\t\tconsole.error(notification.message);\n\t\t\t\tbreak;\n\t\t\tcase Severity.Warning:\n\t\t\t\tconsole.warn(notification.message);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tconsole.log(notification.message);\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn StandaloneNotificationService.NO_OP;\n\t}\n\n\tpublic prompt(severity: Severity, message: string, choices: IPromptChoice[], options?: IPromptOptions): INotificationHandle {\n\t\treturn StandaloneNotificationService.NO_OP;\n\t}\n\n\tpublic status(message: string | Error, options?: IStatusMessageOptions): IStatusHandle {\n\t\treturn { close: () => { } };\n\t}\n}\n\nexport class StandaloneCommandService implements ICommandService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _instantiationService: IInstantiationService;\n\n\tprivate readonly _onWillExecuteCommand = new Emitter<ICommandEvent>();\n\tprivate readonly _onDidExecuteCommand = new Emitter<ICommandEvent>();\n\tpublic readonly onDidExecuteCommand: Event<ICommandEvent> = this._onDidExecuteCommand.event;\n\n\tconstructor(\n\t\t@IInstantiationService instantiationService: IInstantiationService\n\t) {\n\t\tthis._instantiationService = instantiationService;\n\t}\n\n\tpublic executeCommand<T>(id: string, ...args: unknown[]): Promise<T> {\n\t\tconst command = CommandsRegistry.getCommand(id);\n\t\tif (!command) {\n\t\t\treturn Promise.reject(new Error(`command '${id}' not found`));\n\t\t}\n\n\t\ttry {\n\t\t\tthis._onWillExecuteCommand.fire({ commandId: id, args });\n\t\t\tconst result = this._instantiationService.invokeFunction.apply(this._instantiationService, [command.handler, ...args]) as T;\n\n\t\t\tthis._onDidExecuteCommand.fire({ commandId: id, args });\n\t\t\treturn Promise.resolve(result);\n\t\t} catch (err) {\n\t\t\treturn Promise.reject(err);\n\t\t}\n\t}\n}\n\nexport interface IKeybindingRule {\n\tkeybinding: number;\n\tcommand?: string | null;\n\tcommandArgs?: unknown;\n\twhen?: ContextKeyExpression | null;\n}\n\nexport class StandaloneKeybindingService extends AbstractKeybindingService {\n\tprivate _cachedResolver: KeybindingResolver | null;\n\tprivate _dynamicKeybindings: IKeybindingItem[];\n\tprivate readonly _domNodeListeners: DomNodeListeners[];\n\n\tconstructor(\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t\t@ICommandService commandService: ICommandService,\n\t\t@ITelemetryService telemetryService: ITelemetryService,\n\t\t@INotificationService notificationService: INotificationService,\n\t\t@ILogService logService: ILogService,\n\t\t@ICodeEditorService codeEditorService: ICodeEditorService\n\t) {\n\t\tsuper(contextKeyService, commandService, telemetryService, notificationService, logService);\n\n\t\tthis._cachedResolver = null;\n\t\tthis._dynamicKeybindings = [];\n\t\tthis._domNodeListeners = [];\n\n\t\tconst addContainer = (domNode: HTMLElement) => {\n\t\t\tconst disposables = new DisposableStore();\n\n\t\t\t// for standard keybindings\n\t\t\tdisposables.add(dom.addDisposableListener(domNode, dom.EventType.KEY_DOWN, (e: KeyboardEvent) => {\n\t\t\t\tconst keyEvent = new StandardKeyboardEvent(e);\n\t\t\t\tconst shouldPreventDefault = this._dispatch(keyEvent, keyEvent.target);\n\t\t\t\tif (shouldPreventDefault) {\n\t\t\t\t\tkeyEvent.preventDefault();\n\t\t\t\t\tkeyEvent.stopPropagation();\n\t\t\t\t}\n\t\t\t}));\n\n\t\t\t// for single modifier chord keybindings (e.g. shift shift)\n\t\t\tdisposables.add(dom.addDisposableListener(domNode, dom.EventType.KEY_UP, (e: KeyboardEvent) => {\n\t\t\t\tconst keyEvent = new StandardKeyboardEvent(e);\n\t\t\t\tconst shouldPreventDefault = this._singleModifierDispatch(keyEvent, keyEvent.target);\n\t\t\t\tif (shouldPreventDefault) {\n\t\t\t\t\tkeyEvent.preventDefault();\n\t\t\t\t}\n\t\t\t}));\n\n\t\t\tthis._domNodeListeners.push(new DomNodeListeners(domNode, disposables));\n\t\t};\n\t\tconst removeContainer = (domNode: HTMLElement) => {\n\t\t\tfor (let i = 0; i < this._domNodeListeners.length; i++) {\n\t\t\t\tconst domNodeListeners = this._domNodeListeners[i];\n\t\t\t\tif (domNodeListeners.domNode === domNode) {\n\t\t\t\t\tthis._domNodeListeners.splice(i, 1);\n\t\t\t\t\tdomNodeListeners.dispose();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tconst addCodeEditor = (codeEditor: ICodeEditor) => {\n\t\t\tif (codeEditor.getOption(EditorOption.inDiffEditor)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\taddContainer(codeEditor.getContainerDomNode());\n\t\t};\n\t\tconst removeCodeEditor = (codeEditor: ICodeEditor) => {\n\t\t\tif (codeEditor.getOption(EditorOption.inDiffEditor)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tremoveContainer(codeEditor.getContainerDomNode());\n\t\t};\n\t\tthis._register(codeEditorService.onCodeEditorAdd(addCodeEditor));\n\t\tthis._register(codeEditorService.onCodeEditorRemove(removeCodeEditor));\n\t\tcodeEditorService.listCodeEditors().forEach(addCodeEditor);\n\n\t\tconst addDiffEditor = (diffEditor: IDiffEditor) => {\n\t\t\taddContainer(diffEditor.getContainerDomNode());\n\t\t};\n\t\tconst removeDiffEditor = (diffEditor: IDiffEditor) => {\n\t\t\tremoveContainer(diffEditor.getContainerDomNode());\n\t\t};\n\t\tthis._register(codeEditorService.onDiffEditorAdd(addDiffEditor));\n\t\tthis._register(codeEditorService.onDiffEditorRemove(removeDiffEditor));\n\t\tcodeEditorService.listDiffEditors().forEach(addDiffEditor);\n\t}\n\n\tpublic addDynamicKeybinding(command: string, keybinding: number, handler: ICommandHandler, when: ContextKeyExpression | undefined): IDisposable {\n\t\treturn combinedDisposable(\n\t\t\tCommandsRegistry.registerCommand(command, handler),\n\t\t\tthis.addDynamicKeybindings([{\n\t\t\t\tkeybinding,\n\t\t\t\tcommand,\n\t\t\t\twhen\n\t\t\t}])\n\t\t);\n\t}\n\n\tpublic addDynamicKeybindings(rules: IKeybindingRule[]): IDisposable {\n\t\tconst entries: IKeybindingItem[] = rules.map((rule) => {\n\t\t\tconst keybinding = decodeKeybinding(rule.keybinding, OS);\n\t\t\treturn {\n\t\t\t\tkeybinding,\n\t\t\t\tcommand: rule.command ?? null,\n\t\t\t\tcommandArgs: rule.commandArgs,\n\t\t\t\twhen: rule.when,\n\t\t\t\tweight1: 1000,\n\t\t\t\tweight2: 0,\n\t\t\t\textensionId: null,\n\t\t\t\tisBuiltinExtension: false\n\t\t\t};\n\t\t});\n\t\tthis._dynamicKeybindings = this._dynamicKeybindings.concat(entries);\n\n\t\tthis.updateResolver();\n\n\t\treturn toDisposable(() => {\n\t\t\t// Search the first entry and remove them all since they will be contiguous\n\t\t\tfor (let i = 0; i < this._dynamicKeybindings.length; i++) {\n\t\t\t\tif (this._dynamicKeybindings[i] === entries[0]) {\n\t\t\t\t\tthis._dynamicKeybindings.splice(i, entries.length);\n\t\t\t\t\tthis.updateResolver();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate updateResolver(): void {\n\t\tthis._cachedResolver = null;\n\t\tthis._onDidUpdateKeybindings.fire();\n\t}\n\n\tprotected _getResolver(): KeybindingResolver {\n\t\tif (!this._cachedResolver) {\n\t\t\tconst defaults = this._toNormalizedKeybindingItems(KeybindingsRegistry.getDefaultKeybindings(), true);\n\t\t\tconst overrides = this._toNormalizedKeybindingItems(this._dynamicKeybindings, false);\n\t\t\tthis._cachedResolver = new KeybindingResolver(defaults, overrides, (str) => this._log(str));\n\t\t}\n\t\treturn this._cachedResolver;\n\t}\n\n\tprotected _documentHasFocus(): boolean {\n\t\treturn mainWindow.document.hasFocus();\n\t}\n\n\tprivate _toNormalizedKeybindingItems(items: IKeybindingItem[], isDefault: boolean): ResolvedKeybindingItem[] {\n\t\tconst result: ResolvedKeybindingItem[] = [];\n\t\tlet resultLen = 0;\n\t\tfor (const item of items) {\n\t\t\tconst when = item.when || undefined;\n\t\t\tconst keybinding = item.keybinding;\n\n\t\t\tif (!keybinding) {\n\t\t\t\t// This might be a removal keybinding item in user settings => accept it\n\t\t\t\tresult[resultLen++] = new ResolvedKeybindingItem(undefined, item.command, item.commandArgs, when, isDefault, null, false);\n\t\t\t} else {\n\t\t\t\tconst resolvedKeybindings = USLayoutResolvedKeybinding.resolveKeybinding(keybinding, OS);\n\t\t\t\tfor (const resolvedKeybinding of resolvedKeybindings) {\n\t\t\t\t\tresult[resultLen++] = new ResolvedKeybindingItem(resolvedKeybinding, item.command, item.commandArgs, when, isDefault, null, false);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tpublic resolveKeyboardEvent(keyboardEvent: IKeyboardEvent): ResolvedKeybinding {\n\t\tconst chord = new KeyCodeChord(\n\t\t\tkeyboardEvent.ctrlKey,\n\t\t\tkeyboardEvent.shiftKey,\n\t\t\tkeyboardEvent.altKey,\n\t\t\tkeyboardEvent.metaKey,\n\t\t\tkeyboardEvent.keyCode\n\t\t);\n\t\treturn new USLayoutResolvedKeybinding([chord], OS);\n\t}\n}\n\nclass DomNodeListeners extends Disposable {\n\tconstructor(\n\t\tpublic readonly domNode: HTMLElement,\n\t\tdisposables: DisposableStore\n\t) {\n\t\tsuper();\n\t\tthis._register(disposables);\n\t}\n}\n\nfunction isConfigurationOverrides(thing: unknown): thing is IConfigurationOverrides {\n\treturn !!thing\n\t\t&& typeof thing === 'object'\n\t\t&& (!(thing as IConfigurationOverrides).overrideIdentifier || typeof (thing as IConfigurationOverrides).overrideIdentifier === 'string')\n\t\t&& (!(thing as IConfigurationOverrides).resource || (thing as IConfigurationOverrides).resource instanceof URI);\n}\n\nexport class StandaloneConfigurationService implements IConfigurationService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _onDidChangeConfiguration = new Emitter<IConfigurationChangeEvent>();\n\tpublic readonly onDidChangeConfiguration: Event<IConfigurationChangeEvent> = this._onDidChangeConfiguration.event;\n\n\tprivate readonly _configuration: Configuration;\n\n\tconstructor(\n\t\t@ILogService private readonly logService: ILogService,\n\t) {\n\t\tconst defaultConfiguration = new DefaultConfiguration(logService);\n\t\tthis._configuration = new Configuration(\n\t\t\tdefaultConfiguration.reload(),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tnew ResourceMap<ConfigurationModel>(),\n\t\t\tConfigurationModel.createEmptyModel(logService),\n\t\t\tnew ResourceMap<ConfigurationModel>(),\n\t\t\tlogService\n\t\t);\n\t\tdefaultConfiguration.dispose();\n\t}\n\n\tgetValue<T>(): T;\n\tgetValue<T>(section: string): T;\n\tgetValue<T>(overrides: IConfigurationOverrides): T;\n\tgetValue<T>(section: string, overrides: IConfigurationOverrides): T;\n\tgetValue(arg1?: unknown, arg2?: unknown): unknown {\n\t\tconst section = typeof arg1 === 'string' ? arg1 : undefined;\n\t\tconst overrides = isConfigurationOverrides(arg1) ? arg1 : isConfigurationOverrides(arg2) ? arg2 : {};\n\t\treturn this._configuration.getValue(section, overrides, undefined);\n\t}\n\n\tpublic updateValues(values: [string, unknown][]): Promise<void> {\n\t\tconst previous = { data: this._configuration.toData() };\n\n\t\tconst changedKeys: string[] = [];\n\n\t\tfor (const entry of values) {\n\t\t\tconst [key, value] = entry;\n\t\t\tif (this.getValue(key) === value) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tthis._configuration.updateValue(key, value);\n\t\t\tchangedKeys.push(key);\n\t\t}\n\n\t\tif (changedKeys.length > 0) {\n\t\t\tconst configurationChangeEvent = new ConfigurationChangeEvent({ keys: changedKeys, overrides: [] }, previous, this._configuration, undefined, this.logService);\n\t\t\tconfigurationChangeEvent.source = ConfigurationTarget.MEMORY;\n\t\t\tthis._onDidChangeConfiguration.fire(configurationChangeEvent);\n\t\t}\n\n\t\treturn Promise.resolve();\n\t}\n\n\tpublic updateValue(key: string, value: unknown, arg3?: unknown, arg4?: unknown): Promise<void> {\n\t\treturn this.updateValues([[key, value]]);\n\t}\n\n\tpublic inspect<C>(key: string, options: IConfigurationOverrides = {}): IConfigurationValue<C> {\n\t\treturn this._configuration.inspect<C>(key, options, undefined);\n\t}\n}\n\nclass StandaloneResourceConfigurationService implements ITextResourceConfigurationService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tprivate readonly _onDidChangeConfiguration = new Emitter<ITextResourceConfigurationChangeEvent>();\n\n\tconstructor(\n\t\t@IConfigurationService private readonly configurationService: StandaloneConfigurationService,\n\t\t@IModelService private readonly modelService: IModelService,\n\t\t@ILanguageService private readonly languageService: ILanguageService\n\t) {\n\t\tthis.configurationService.onDidChangeConfiguration((e) => {\n\t\t\tthis._onDidChangeConfiguration.fire({ affectedKeys: e.affectedKeys, affectsConfiguration: (resource: URI, configuration: string) => e.affectsConfiguration(configuration) });\n\t\t});\n\t}\n\n\tgetValue<T>(resource: URI, section?: string): T;\n\tgetValue<T>(resource: URI, position?: IPosition, section?: string): T;\n\tgetValue<T>(resource: URI | undefined, arg2?: unknown, arg3?: unknown) {\n\t\tconst position: IPosition | null = Pos.isIPosition(arg2) ? arg2 : null;\n\t\tconst section: string | undefined = position ? (typeof arg3 === 'string' ? arg3 : undefined) : (typeof arg2 === 'string' ? arg2 : undefined);\n\t\tconst language = resource ? this.getLanguage(resource, position) : undefined;\n\t\tif (typeof section === 'undefined') {\n\t\t\treturn this.configurationService.getValue<T>({\n\t\t\t\tresource,\n\t\t\t\toverrideIdentifier: language\n\t\t\t});\n\t\t}\n\t\treturn this.configurationService.getValue<T>(section, {\n\t\t\tresource,\n\t\t\toverrideIdentifier: language\n\t\t});\n\t}\n\n\tprivate getLanguage(resource: URI, position: IPosition | null): string | null {\n\t\tconst model = this.modelService.getModel(resource);\n\t\tif (model) {\n\t\t\treturn position ? model.getLanguageIdAtPosition(position.lineNumber, position.column) : model.getLanguageId();\n\t\t}\n\t\treturn this.languageService.guessLanguageIdByFilepathOrFirstLine(resource);\n\t}\n}\n\nclass StandaloneResourcePropertiesService implements ITextResourcePropertiesService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IConfigurationService private readonly configurationService: IConfigurationService,\n\t) {\n\t}\n\n\tgetEOL(resource: URI, language?: string): string {\n\t\tconst eol = this.configurationService.getValue('files.eol', { overrideIdentifier: language, resource });\n\t\tif (eol && typeof eol === 'string' && eol !== 'auto') {\n\t\t\treturn eol;\n\t\t}\n\t\treturn (isLinux || isMacintosh) ? '\\n' : '\\r\\n';\n\t}\n}\n\nclass StandaloneTelemetryService implements ITelemetryService {\n\tdeclare readonly _serviceBrand: undefined;\n\tpublicLog2() { }\n}\n\nclass StandaloneWorkspaceContextService implements IWorkspaceContextService {\n\n\tpublic _serviceBrand: undefined;\n\n\tprivate static readonly SCHEME = 'inmemory';\n\n\tprivate readonly workspace: IWorkspace;\n\n\tconstructor() {\n\t\tconst resource = URI.from({ scheme: StandaloneWorkspaceContextService.SCHEME, authority: 'model', path: '/' });\n\t\tthis.workspace = { id: STANDALONE_EDITOR_WORKSPACE_ID, folders: [new WorkspaceFolder({ uri: resource, name: '', index: 0 })] };\n\t}\n\n\tpublic getWorkspace(): IWorkspace {\n\t\treturn this.workspace;\n\t}\n\n\tpublic getWorkspaceFolder(resource: URI): IWorkspaceFolder | null {\n\t\treturn resource && resource.scheme === StandaloneWorkspaceContextService.SCHEME ? this.workspace.folders[0] : null;\n\t}\n}\n\nexport function updateConfigurationService(configurationService: IConfigurationService, source: any, isDiffEditor: boolean): void {\n\tif (!source) {\n\t\treturn;\n\t}\n\tif (!(configurationService instanceof StandaloneConfigurationService)) {\n\t\treturn;\n\t}\n\tconst toUpdate: [string, unknown][] = [];\n\tObject.keys(source).forEach((key) => {\n\t\tif (isEditorConfigurationKey(key)) {\n\t\t\ttoUpdate.push([`editor.${key}`, source[key]]);\n\t\t}\n\t\tif (isDiffEditor && isDiffEditorConfigurationKey(key)) {\n\t\t\ttoUpdate.push([`diffEditor.${key}`, source[key]]);\n\t\t}\n\t});\n\tif (toUpdate.length > 0) {\n\t\tconfigurationService.updateValues(toUpdate);\n\t}\n}\n\nclass StandaloneBulkEditService implements IBulkEditService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\tconstructor(\n\t\t@IModelService private readonly _modelService: IModelService\n\t) {\n\t\t//\n\t}\n\n\thasPreviewHandler(): false {\n\t\treturn false;\n\t}\n\n\tasync apply(editsIn: ResourceEdit[] | WorkspaceEdit, _options?: IBulkEditOptions): Promise<IBulkEditResult> {\n\t\tconst edits = Array.isArray(editsIn) ? editsIn : ResourceEdit.convert(editsIn);\n\t\tconst textEdits = new Map<ITextModel, ISingleEditOperation[]>();\n\n\t\tfor (const edit of edits) {\n\t\t\tif (!(edit instanceof ResourceTextEdit)) {\n\t\t\t\tthrow new Error('bad edit - only text edits are supported');\n\t\t\t}\n\t\t\tconst model = this._modelService.getModel(edit.resource);\n\t\t\tif (!model) {\n\t\t\t\tthrow new Error('bad edit - model not found');\n\t\t\t}\n\t\t\tif (typeof edit.versionId === 'number' && model.getVersionId() !== edit.versionId) {\n\t\t\t\tthrow new Error('bad state - model changed in the meantime');\n\t\t\t}\n\t\t\tlet array = textEdits.get(model);\n\t\t\tif (!array) {\n\t\t\t\tarray = [];\n\t\t\t\ttextEdits.set(model, array);\n\t\t\t}\n\t\t\tarray.push(EditOperation.replaceMove(Range.lift(edit.textEdit.range), edit.textEdit.text));\n\t\t}\n\n\n\t\tlet totalEdits = 0;\n\t\tlet totalFiles = 0;\n\t\tfor (const [model, edits] of textEdits) {\n\t\t\tmodel.pushStackElement();\n\t\t\tmodel.pushEditOperations([], edits, () => []);\n\t\t\tmodel.pushStackElement();\n\t\t\ttotalFiles += 1;\n\t\t\ttotalEdits += edits.length;\n\t\t}\n\n\t\treturn {\n\t\t\tariaSummary: strings.format(StandaloneServicesNLS.bulkEditServiceSummary, totalEdits, totalFiles),\n\t\t\tisApplied: totalEdits > 0\n\t\t};\n\t}\n}\n\nclass StandaloneUriLabelService implements ILabelService {\n\n\tdeclare readonly _serviceBrand: undefined;\n\n\tpublic getUriLabel(resource: URI, options?: { relative?: boolean; forceNoTildify?: boolean }): string {\n\t\tif (resource.scheme === 'file') {\n\t\t\treturn resource.fsPath;\n\t\t}\n\t\treturn resource.path;\n\t}\n\n\tgetUriBasenameLabel(resource: URI): string {\n\t\treturn basename(resource);\n\t}\n}\n\n\nclass StandaloneContextViewService extends ContextViewService {\n\n\tconstructor(\n\t\t@ILayoutService layoutService: ILayoutService,\n\t\t@ICodeEditorService private readonly _codeEditorService: ICodeEditorService,\n\t) {\n\t\tsuper(layoutService);\n\t}\n\n\toverride showContextView(delegate: IContextViewDelegate, container?: HTMLElement, shadowRoot?: boolean): IOpenContextView {\n\t\tif (!container) {\n\t\t\tconst codeEditor = this._codeEditorService.getFocusedCodeEditor() || this._codeEditorService.getActiveCodeEditor();\n\t\t\tif (codeEditor) {\n\t\t\t\tcontainer = codeEditor.getContainerDomNode();\n\t\t\t}\n\t\t}\n\t\treturn super.showContextView(delegate, container, shadowRoot);\n\t}\n}\n\nclass StandaloneWorkspaceTrustManagementService implements IWorkspaceTrustManagementService {\n\t_serviceBrand: undefined;\n\n\tprivate _neverEmitter = new Emitter<never>();\n\tpublic readonly onDidChangeTrust: Event<boolean> = this._neverEmitter.event;\n\n\tisWorkspaceTrusted(): boolean {\n\t\treturn true;\n\t}\n}\n\nclass StandaloneLanguageService extends LanguageService {\n\tconstructor() {\n\t\tsuper();\n\t}\n}\n\nclass StandaloneLogService extends LogService {\n\tconstructor() {\n\t\tsuper(new ConsoleLogger());\n\t}\n}\n\nclass StandaloneContextMenuService extends ContextMenuService {\n\tconstructor(\n\t\t@ITelemetryService telemetryService: ITelemetryService,\n\t\t@INotificationService notificationService: INotificationService,\n\t\t@IContextViewService contextViewService: IContextViewService,\n\t\t@IKeybindingService keybindingService: IKeybindingService,\n\t\t@IMenuService menuService: IMenuService,\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t) {\n\t\tsuper(telemetryService, notificationService, contextViewService, keybindingService, menuService, contextKeyService);\n\t\tthis.configure({ blockMouse: false }); // we do not want that in the standalone editor\n\t}\n}\n\nclass StandaloneAccessbilitySignalService implements IAccessibilitySignalService {\n\t_serviceBrand: undefined;\n\tasync playSignal(cue: AccessibilitySignal, options: {}): Promise<void> {\n\t}\n}\n\nclass StandaloneDefaultAccountService implements IDefaultAccountService {\n\tdeclare readonly _serviceBrand: undefined;\n\n\treadonly onDidChangeDefaultAccount: Event<IDefaultAccount | null> = Event.None;\n\n\tasync getDefaultAccount(): Promise<IDefaultAccount | null> {\n\t\treturn null;\n\t}\n}\n\nexport interface IEditorOverrideServices {\n\t[index: string]: unknown;\n}\n\n\nregisterSingleton(IWebWorkerService, StandaloneWebWorkerService, InstantiationType.Eager);\nregisterSingleton(ILogService, StandaloneLogService, InstantiationType.Eager);\nregisterSingleton(IConfigurationService, StandaloneConfigurationService, InstantiationType.Eager);\nregisterSingleton(ITextResourceConfigurationService, StandaloneResourceConfigurationService, InstantiationType.Eager);\nregisterSingleton(ITextResourcePropertiesService, StandaloneResourcePropertiesService, InstantiationType.Eager);\nregisterSingleton(IWorkspaceContextService, StandaloneWorkspaceContextService, InstantiationType.Eager);\nregisterSingleton(ILabelService, StandaloneUriLabelService, InstantiationType.Eager);\nregisterSingleton(ITelemetryService, StandaloneTelemetryService, InstantiationType.Eager);\nregisterSingleton(IDialogService, StandaloneDialogService, InstantiationType.Eager);\nregisterSingleton(IEnvironmentService, StandaloneEnvironmentService, InstantiationType.Eager);\nregisterSingleton(INotificationService, StandaloneNotificationService, InstantiationType.Eager);\nregisterSingleton(IMarkerService, MarkerService, InstantiationType.Eager);\nregisterSingleton(ILanguageService, StandaloneLanguageService, InstantiationType.Eager);\nregisterSingleton(IStandaloneThemeService, StandaloneThemeService, InstantiationType.Eager);\nregisterSingleton(IModelService, ModelService, InstantiationType.Eager);\nregisterSingleton(IMarkerDecorationsService, MarkerDecorationsService, InstantiationType.Eager);\nregisterSingleton(IContextKeyService, ContextKeyService, InstantiationType.Eager);\nregisterSingleton(IProgressService, StandaloneProgressService, InstantiationType.Eager);\nregisterSingleton(IEditorProgressService, StandaloneEditorProgressService, InstantiationType.Eager);\nregisterSingleton(IStorageService, InMemoryStorageService, InstantiationType.Eager);\nregisterSingleton(IBulkEditService, StandaloneBulkEditService, InstantiationType.Eager);\nregisterSingleton(IWorkspaceTrustManagementService, StandaloneWorkspaceTrustManagementService, InstantiationType.Eager);\nregisterSingleton(ITextModelService, StandaloneTextModelService, InstantiationType.Eager);\nregisterSingleton(IAccessibilityService, AccessibilityService, InstantiationType.Eager);\nregisterSingleton(IListService, ListService, InstantiationType.Eager);\nregisterSingleton(ICommandService, StandaloneCommandService, InstantiationType.Eager);\nregisterSingleton(IKeybindingService, StandaloneKeybindingService, InstantiationType.Eager);\nregisterSingleton(IQuickInputService, StandaloneQuickInputService, InstantiationType.Eager);\nregisterSingleton(IContextViewService, StandaloneContextViewService, InstantiationType.Eager);\nregisterSingleton(IOpenerService, OpenerService, InstantiationType.Eager);\nregisterSingleton(IClipboardService, BrowserClipboardService, InstantiationType.Eager);\nregisterSingleton(IContextMenuService, StandaloneContextMenuService, InstantiationType.Eager);\nregisterSingleton(IMenuService, MenuService, InstantiationType.Eager);\nregisterSingleton(IAccessibilitySignalService, StandaloneAccessbilitySignalService, InstantiationType.Eager);\nregisterSingleton(ITreeSitterLibraryService, StandaloneTreeSitterLibraryService, InstantiationType.Eager);\nregisterSingleton(ILoggerService, NullLoggerService, InstantiationType.Eager);\nregisterSingleton(IDataChannelService, NullDataChannelService, InstantiationType.Eager);\nregisterSingleton(IDefaultAccountService, StandaloneDefaultAccountService, InstantiationType.Eager);\n\n/**\n * We don't want to eagerly instantiate services because embedders get a one time chance\n * to override services when they create the first editor.\n */\nexport namespace StandaloneServices {\n\n\tconst serviceCollection = new ServiceCollection();\n\tfor (const [id, descriptor] of getSingletonServiceDescriptors()) {\n\t\tserviceCollection.set(id, descriptor);\n\t}\n\n\tconst instantiationService = new InstantiationService(serviceCollection, true);\n\tserviceCollection.set(IInstantiationService, instantiationService);\n\n\texport function get<T>(serviceId: ServiceIdentifier<T>): T {\n\t\tif (!initialized) {\n\t\t\tinitialize({});\n\t\t}\n\t\tconst r = serviceCollection.get(serviceId);\n\t\tif (!r) {\n\t\t\tthrow new Error('Missing service ' + serviceId);\n\t\t}\n\t\tif (r instanceof SyncDescriptor) {\n\t\t\treturn instantiationService.invokeFunction((accessor) => accessor.get(serviceId));\n\t\t} else {\n\t\t\treturn r;\n\t\t}\n\t}\n\n\tlet initialized = false;\n\tconst onDidInitialize = new Emitter<void>();\n\texport function initialize(overrides: IEditorOverrideServices): IInstantiationService {\n\t\tif (initialized) {\n\t\t\treturn instantiationService;\n\t\t}\n\t\tinitialized = true;\n\n\t\t// Add singletons that were registered after this module loaded\n\t\tfor (const [id, descriptor] of getSingletonServiceDescriptors()) {\n\t\t\tif (!serviceCollection.get(id)) {\n\t\t\t\tserviceCollection.set(id, descriptor);\n\t\t\t}\n\t\t}\n\n\t\t// Initialize the service collection with the overrides, but only if the\n\t\t// service was not instantiated in the meantime.\n\t\tfor (const serviceId in overrides) {\n\t\t\tif (overrides.hasOwnProperty(serviceId)) {\n\t\t\t\tconst serviceIdentifier = createDecorator(serviceId);\n\t\t\t\tconst r = serviceCollection.get(serviceIdentifier);\n\t\t\t\tif (r instanceof SyncDescriptor) {\n\t\t\t\t\tserviceCollection.set(serviceIdentifier, overrides[serviceId]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Instantiate all editor features\n\t\tconst editorFeatures = getEditorFeatures();\n\t\tfor (const feature of editorFeatures) {\n\t\t\ttry {\n\t\t\t\tinstantiationService.createInstance(feature);\n\t\t\t} catch (err) {\n\t\t\t\tonUnexpectedError(err);\n\t\t\t}\n\t\t}\n\n\t\tonDidInitialize.fire();\n\n\t\treturn instantiationService;\n\t}\n\n\t/**\n\t * Executes callback once services are initialized.\n\t */\n\texport function withServices(callback: () => IDisposable): IDisposable {\n\t\tif (initialized) {\n\t\t\treturn callback();\n\t\t}\n\n\t\tconst disposable = new DisposableStore();\n\n\t\tconst listener = disposable.add(onDidInitialize.event(() => {\n\t\t\tlistener.dispose();\n\t\t\tdisposable.add(callback());\n\t\t}));\n\n\t\treturn disposable;\n\t}\n\n}\n"]}
|
|
@@ -297,7 +297,7 @@ class MonarchModernTokensCollector {
|
|
|
297
297
|
return nestedResult.endState;
|
|
298
298
|
}
|
|
299
299
|
finalize(endState) {
|
|
300
|
-
return new languages.EncodedTokenizationResult(MonarchModernTokensCollector._merge(this._prependTokens, this._tokens, null), endState);
|
|
300
|
+
return new languages.EncodedTokenizationResult(MonarchModernTokensCollector._merge(this._prependTokens, this._tokens, null), [], endState);
|
|
301
301
|
}
|
|
302
302
|
}
|
|
303
303
|
let MonarchTokenizer = MonarchTokenizer_1 = class MonarchTokenizer extends Disposable {
|