@theia/monaco 1.67.0-next.56 → 1.67.0-next.59
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/lib/browser/content-hover-widget-patcher.d.ts +9 -0
- package/lib/browser/content-hover-widget-patcher.d.ts.map +1 -0
- package/lib/browser/content-hover-widget-patcher.js +63 -0
- package/lib/browser/content-hover-widget-patcher.js.map +1 -0
- package/lib/browser/default-content-hover-widget-patcher.d.ts +9 -0
- package/lib/browser/default-content-hover-widget-patcher.d.ts.map +1 -0
- package/lib/browser/default-content-hover-widget-patcher.js +49 -0
- package/lib/browser/default-content-hover-widget-patcher.js.map +1 -0
- package/lib/browser/index.d.ts +3 -0
- package/lib/browser/index.d.ts.map +1 -0
- package/lib/browser/index.js +21 -0
- package/lib/browser/index.js.map +1 -0
- package/lib/browser/markdown-renderer/monaco-markdown-renderer.d.ts +21 -0
- package/lib/browser/markdown-renderer/monaco-markdown-renderer.d.ts.map +1 -0
- package/lib/browser/markdown-renderer/monaco-markdown-renderer.js +115 -0
- package/lib/browser/markdown-renderer/monaco-markdown-renderer.js.map +1 -0
- package/lib/browser/monaco-bulk-edit-service.d.ts +13 -0
- package/lib/browser/monaco-bulk-edit-service.d.ts.map +1 -0
- package/lib/browser/monaco-bulk-edit-service.js +59 -0
- package/lib/browser/monaco-bulk-edit-service.js.map +1 -0
- package/lib/browser/monaco-code-action-save-participant.d.ts +11 -0
- package/lib/browser/monaco-code-action-save-participant.d.ts.map +1 -0
- package/lib/browser/monaco-code-action-save-participant.js +48 -0
- package/lib/browser/monaco-code-action-save-participant.js.map +1 -0
- package/lib/browser/monaco-code-action-service.d.ts +41 -0
- package/lib/browser/monaco-code-action-service.d.ts.map +1 -0
- package/lib/browser/monaco-code-action-service.js +132 -0
- package/lib/browser/monaco-code-action-service.js.map +1 -0
- package/lib/browser/monaco-color-registry.d.ts +17 -0
- package/lib/browser/monaco-color-registry.d.ts.map +1 -0
- package/lib/browser/monaco-color-registry.js +78 -0
- package/lib/browser/monaco-color-registry.js.map +1 -0
- package/lib/browser/monaco-command-registry.d.ts +20 -0
- package/lib/browser/monaco-command-registry.d.ts.map +1 -0
- package/lib/browser/monaco-command-registry.js +81 -0
- package/lib/browser/monaco-command-registry.js.map +1 -0
- package/lib/browser/monaco-command-service.d.ts +22 -0
- package/lib/browser/monaco-command-service.d.ts.map +1 -0
- package/lib/browser/monaco-command-service.js +83 -0
- package/lib/browser/monaco-command-service.js.map +1 -0
- package/lib/browser/monaco-command.d.ts +89 -0
- package/lib/browser/monaco-command.d.ts.map +1 -0
- package/lib/browser/monaco-command.js +303 -0
- package/lib/browser/monaco-command.js.map +1 -0
- package/lib/browser/monaco-context-key-service.d.ts +24 -0
- package/lib/browser/monaco-context-key-service.d.ts.map +1 -0
- package/lib/browser/monaco-context-key-service.js +151 -0
- package/lib/browser/monaco-context-key-service.js.map +1 -0
- package/lib/browser/monaco-context-menu.d.ts +22 -0
- package/lib/browser/monaco-context-menu.d.ts.map +1 -0
- package/lib/browser/monaco-context-menu.js +140 -0
- package/lib/browser/monaco-context-menu.js.map +1 -0
- package/lib/browser/monaco-diff-computer.d.ts +6 -0
- package/lib/browser/monaco-diff-computer.d.ts.map +1 -0
- package/lib/browser/monaco-diff-computer.js +57 -0
- package/lib/browser/monaco-diff-computer.js.map +1 -0
- package/lib/browser/monaco-diff-editor.d.ts +42 -0
- package/lib/browser/monaco-diff-editor.d.ts.map +1 -0
- package/lib/browser/monaco-diff-editor.js +142 -0
- package/lib/browser/monaco-diff-editor.js.map +1 -0
- package/lib/browser/monaco-diff-navigator-factory.d.ts +7 -0
- package/lib/browser/monaco-diff-navigator-factory.d.ts.map +1 -0
- package/lib/browser/monaco-diff-navigator-factory.js +41 -0
- package/lib/browser/monaco-diff-navigator-factory.js.map +1 -0
- package/lib/browser/monaco-editor-content-menu.d.ts +20 -0
- package/lib/browser/monaco-editor-content-menu.d.ts.map +1 -0
- package/lib/browser/monaco-editor-content-menu.js +118 -0
- package/lib/browser/monaco-editor-content-menu.js.map +1 -0
- package/lib/browser/monaco-editor-model.d.ts +172 -0
- package/lib/browser/monaco-editor-model.d.ts.map +1 -0
- package/lib/browser/monaco-editor-model.js +536 -0
- package/lib/browser/monaco-editor-model.js.map +1 -0
- package/lib/browser/monaco-editor-overlay-button.d.ts +14 -0
- package/lib/browser/monaco-editor-overlay-button.d.ts.map +1 -0
- package/lib/browser/monaco-editor-overlay-button.js +58 -0
- package/lib/browser/monaco-editor-overlay-button.js.map +1 -0
- package/lib/browser/monaco-editor-peek-view-widget.d.ts +74 -0
- package/lib/browser/monaco-editor-peek-view-widget.d.ts.map +1 -0
- package/lib/browser/monaco-editor-peek-view-widget.js +194 -0
- package/lib/browser/monaco-editor-peek-view-widget.js.map +1 -0
- package/lib/browser/monaco-editor-provider.d.ts +100 -0
- package/lib/browser/monaco-editor-provider.d.ts.map +1 -0
- package/lib/browser/monaco-editor-provider.js +493 -0
- package/lib/browser/monaco-editor-provider.js.map +1 -0
- package/lib/browser/monaco-editor-service.d.ts +41 -0
- package/lib/browser/monaco-editor-service.d.ts.map +1 -0
- package/lib/browser/monaco-editor-service.js +167 -0
- package/lib/browser/monaco-editor-service.js.map +1 -0
- package/lib/browser/monaco-editor-zone-widget.d.ts +44 -0
- package/lib/browser/monaco-editor-zone-widget.d.ts.map +1 -0
- package/lib/browser/monaco-editor-zone-widget.js +195 -0
- package/lib/browser/monaco-editor-zone-widget.js.map +1 -0
- package/lib/browser/monaco-editor.d.ts +169 -0
- package/lib/browser/monaco-editor.d.ts.map +1 -0
- package/lib/browser/monaco-editor.js +638 -0
- package/lib/browser/monaco-editor.js.map +1 -0
- package/lib/browser/monaco-formatting-conflicts.d.ts +15 -0
- package/lib/browser/monaco-formatting-conflicts.d.ts.map +1 -0
- package/lib/browser/monaco-formatting-conflicts.js +104 -0
- package/lib/browser/monaco-formatting-conflicts.js.map +1 -0
- package/lib/browser/monaco-frontend-application-contribution.d.ts +32 -0
- package/lib/browser/monaco-frontend-application-contribution.d.ts.map +1 -0
- package/lib/browser/monaco-frontend-application-contribution.js +208 -0
- package/lib/browser/monaco-frontend-application-contribution.js.map +1 -0
- package/lib/browser/monaco-frontend-module.d.ts +8 -0
- package/lib/browser/monaco-frontend-module.d.ts.map +1 -0
- package/lib/browser/monaco-frontend-module.js +299 -0
- package/lib/browser/monaco-frontend-module.js.map +1 -0
- package/lib/browser/monaco-gotoline-quick-access.d.ts +12 -0
- package/lib/browser/monaco-gotoline-quick-access.d.ts.map +1 -0
- package/lib/browser/monaco-gotoline-quick-access.js +54 -0
- package/lib/browser/monaco-gotoline-quick-access.js.map +1 -0
- package/lib/browser/monaco-gotosymbol-quick-access.d.ts +17 -0
- package/lib/browser/monaco-gotosymbol-quick-access.d.ts.map +1 -0
- package/lib/browser/monaco-gotosymbol-quick-access.js +60 -0
- package/lib/browser/monaco-gotosymbol-quick-access.js.map +1 -0
- package/lib/browser/monaco-icon-registry.d.ts +11 -0
- package/lib/browser/monaco-icon-registry.d.ts.map +1 -0
- package/lib/browser/monaco-icon-registry.js +48 -0
- package/lib/browser/monaco-icon-registry.js.map +1 -0
- package/lib/browser/monaco-indexed-db.d.ts +29 -0
- package/lib/browser/monaco-indexed-db.d.ts.map +1 -0
- package/lib/browser/monaco-indexed-db.js +127 -0
- package/lib/browser/monaco-indexed-db.js.map +1 -0
- package/lib/browser/monaco-init.d.ts +6 -0
- package/lib/browser/monaco-init.d.ts.map +1 -0
- package/lib/browser/monaco-init.js +165 -0
- package/lib/browser/monaco-init.js.map +1 -0
- package/lib/browser/monaco-keybinding.d.ts +17 -0
- package/lib/browser/monaco-keybinding.d.ts.map +1 -0
- package/lib/browser/monaco-keybinding.js +127 -0
- package/lib/browser/monaco-keybinding.js.map +1 -0
- package/lib/browser/monaco-keycode-map.d.ts +3 -0
- package/lib/browser/monaco-keycode-map.d.ts.map +1 -0
- package/lib/browser/monaco-keycode-map.js +164 -0
- package/lib/browser/monaco-keycode-map.js.map +1 -0
- package/lib/browser/monaco-languages.d.ts +36 -0
- package/lib/browser/monaco-languages.d.ts.map +1 -0
- package/lib/browser/monaco-languages.js +173 -0
- package/lib/browser/monaco-languages.js.map +1 -0
- package/lib/browser/monaco-marker-collection.d.ts +19 -0
- package/lib/browser/monaco-marker-collection.d.ts.map +1 -0
- package/lib/browser/monaco-marker-collection.js +71 -0
- package/lib/browser/monaco-marker-collection.js.map +1 -0
- package/lib/browser/monaco-menu.d.ts +21 -0
- package/lib/browser/monaco-menu.d.ts.map +1 -0
- package/lib/browser/monaco-menu.js +141 -0
- package/lib/browser/monaco-menu.js.map +1 -0
- package/lib/browser/monaco-mime-service.d.ts +11 -0
- package/lib/browser/monaco-mime-service.d.ts.map +1 -0
- package/lib/browser/monaco-mime-service.js +71 -0
- package/lib/browser/monaco-mime-service.js.map +1 -0
- package/lib/browser/monaco-outline-contribution.d.ts +79 -0
- package/lib/browser/monaco-outline-contribution.d.ts.map +1 -0
- package/lib/browser/monaco-outline-contribution.js +377 -0
- package/lib/browser/monaco-outline-contribution.js.map +1 -0
- package/lib/browser/monaco-outline-decorator.d.ts +13 -0
- package/lib/browser/monaco-outline-decorator.d.ts.map +1 -0
- package/lib/browser/monaco-outline-decorator.js +63 -0
- package/lib/browser/monaco-outline-decorator.js.map +1 -0
- package/lib/browser/monaco-quick-access-registry.d.ts +12 -0
- package/lib/browser/monaco-quick-access-registry.d.ts.map +1 -0
- package/lib/browser/monaco-quick-access-registry.js +92 -0
- package/lib/browser/monaco-quick-access-registry.js.map +1 -0
- package/lib/browser/monaco-quick-input-service.d.ts +110 -0
- package/lib/browser/monaco-quick-input-service.d.ts.map +1 -0
- package/lib/browser/monaco-quick-input-service.js +591 -0
- package/lib/browser/monaco-quick-input-service.js.map +1 -0
- package/lib/browser/monaco-resolved-keybinding.d.ts +24 -0
- package/lib/browser/monaco-resolved-keybinding.d.ts.map +1 -0
- package/lib/browser/monaco-resolved-keybinding.js +132 -0
- package/lib/browser/monaco-resolved-keybinding.js.map +1 -0
- package/lib/browser/monaco-snippet-suggest-provider.d.ts +67 -0
- package/lib/browser/monaco-snippet-suggest-provider.d.ts.map +1 -0
- package/lib/browser/monaco-snippet-suggest-provider.js +266 -0
- package/lib/browser/monaco-snippet-suggest-provider.js.map +1 -0
- package/lib/browser/monaco-standalone-theme-service.d.ts +8 -0
- package/lib/browser/monaco-standalone-theme-service.d.ts.map +1 -0
- package/lib/browser/monaco-standalone-theme-service.js +51 -0
- package/lib/browser/monaco-standalone-theme-service.js.map +1 -0
- package/lib/browser/monaco-status-bar-contribution.d.ts +18 -0
- package/lib/browser/monaco-status-bar-contribution.d.ts.map +1 -0
- package/lib/browser/monaco-status-bar-contribution.js +105 -0
- package/lib/browser/monaco-status-bar-contribution.js.map +1 -0
- package/lib/browser/monaco-text-model-service.d.ts +59 -0
- package/lib/browser/monaco-text-model-service.d.ts.map +1 -0
- package/lib/browser/monaco-text-model-service.js +157 -0
- package/lib/browser/monaco-text-model-service.js.map +1 -0
- package/lib/browser/monaco-theming-service.d.ts +68 -0
- package/lib/browser/monaco-theming-service.d.ts.map +1 -0
- package/lib/browser/monaco-theming-service.js +164 -0
- package/lib/browser/monaco-theming-service.js.map +1 -0
- package/lib/browser/monaco-to-protocol-converter.d.ts +29 -0
- package/lib/browser/monaco-to-protocol-converter.d.ts.map +1 -0
- package/lib/browser/monaco-to-protocol-converter.js +74 -0
- package/lib/browser/monaco-to-protocol-converter.js.map +1 -0
- package/lib/browser/monaco-undo-redo-handler.d.ts +20 -0
- package/lib/browser/monaco-undo-redo-handler.d.ts.map +1 -0
- package/lib/browser/monaco-undo-redo-handler.js +72 -0
- package/lib/browser/monaco-undo-redo-handler.js.map +1 -0
- package/lib/browser/monaco-utilities.d.ts +3 -0
- package/lib/browser/monaco-utilities.d.ts.map +1 -0
- package/lib/browser/monaco-utilities.js +45 -0
- package/lib/browser/monaco-utilities.js.map +1 -0
- package/lib/browser/monaco-workspace-context-service.d.ts +26 -0
- package/lib/browser/monaco-workspace-context-service.d.ts.map +1 -0
- package/lib/browser/monaco-workspace-context-service.js +63 -0
- package/lib/browser/monaco-workspace-context-service.js.map +1 -0
- package/lib/browser/monaco-workspace.d.ts +85 -0
- package/lib/browser/monaco-workspace.d.ts.map +1 -0
- package/lib/browser/monaco-workspace.js +378 -0
- package/lib/browser/monaco-workspace.js.map +1 -0
- package/lib/browser/protocol-to-monaco-converter.d.ts +32 -0
- package/lib/browser/protocol-to-monaco-converter.d.ts.map +1 -0
- package/lib/browser/protocol-to-monaco-converter.js +129 -0
- package/lib/browser/protocol-to-monaco-converter.js.map +1 -0
- package/lib/browser/simple-monaco-editor.d.ts +49 -0
- package/lib/browser/simple-monaco-editor.d.ts.map +1 -0
- package/lib/browser/simple-monaco-editor.js +199 -0
- package/lib/browser/simple-monaco-editor.js.map +1 -0
- package/lib/browser/textmate/index.d.ts +5 -0
- package/lib/browser/textmate/index.d.ts.map +1 -0
- package/lib/browser/textmate/index.js +23 -0
- package/lib/browser/textmate/index.js.map +1 -0
- package/lib/browser/textmate/monaco-textmate-frontend-bindings.d.ts +12 -0
- package/lib/browser/textmate/monaco-textmate-frontend-bindings.d.ts.map +1 -0
- package/lib/browser/textmate/monaco-textmate-frontend-bindings.js +92 -0
- package/lib/browser/textmate/monaco-textmate-frontend-bindings.js.map +1 -0
- package/lib/browser/textmate/monaco-textmate-service.d.ts +31 -0
- package/lib/browser/textmate/monaco-textmate-service.d.ts.map +1 -0
- package/lib/browser/textmate/monaco-textmate-service.js +178 -0
- package/lib/browser/textmate/monaco-textmate-service.js.map +1 -0
- package/lib/browser/textmate/monaco-theme-registry.d.ts +28 -0
- package/lib/browser/textmate/monaco-theme-registry.d.ts.map +1 -0
- package/lib/browser/textmate/monaco-theme-registry.js +165 -0
- package/lib/browser/textmate/monaco-theme-registry.js.map +1 -0
- package/lib/browser/textmate/monaco-theme-types.d.ts +20 -0
- package/lib/browser/textmate/monaco-theme-types.d.ts.map +1 -0
- package/lib/browser/textmate/monaco-theme-types.js +22 -0
- package/lib/browser/textmate/monaco-theme-types.js.map +1 -0
- package/lib/browser/textmate/textmate-contribution.d.ts +10 -0
- package/lib/browser/textmate/textmate-contribution.d.ts.map +1 -0
- package/lib/browser/textmate/textmate-contribution.js +28 -0
- package/lib/browser/textmate/textmate-contribution.js.map +1 -0
- package/lib/browser/textmate/textmate-registry.d.ts +32 -0
- package/lib/browser/textmate/textmate-registry.d.ts.map +1 -0
- package/lib/browser/textmate/textmate-registry.js +105 -0
- package/lib/browser/textmate/textmate-registry.js.map +1 -0
- package/lib/browser/textmate/textmate-snippet-completion-provider.d.ts +27 -0
- package/lib/browser/textmate/textmate-snippet-completion-provider.d.ts.map +1 -0
- package/lib/browser/textmate/textmate-snippet-completion-provider.js +54 -0
- package/lib/browser/textmate/textmate-snippet-completion-provider.js.map +1 -0
- package/lib/browser/textmate/textmate-tokenizer.d.ts +23 -0
- package/lib/browser/textmate/textmate-tokenizer.d.ts.map +1 -0
- package/lib/browser/textmate/textmate-tokenizer.js +66 -0
- package/lib/browser/textmate/textmate-tokenizer.js.map +1 -0
- package/lib/browser/workspace-symbol-command.d.ts +56 -0
- package/lib/browser/workspace-symbol-command.d.ts.map +1 -0
- package/lib/browser/workspace-symbol-command.js +208 -0
- package/lib/browser/workspace-symbol-command.js.map +1 -0
- package/lib/package.spec.d.ts +1 -0
- package/lib/package.spec.d.ts.map +1 -0
- package/lib/package.spec.js +26 -0
- package/lib/package.spec.js.map +1 -0
- package/package.json +8 -8
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2017 TypeFox and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
var MonacoEditorService_1;
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.MonacoEditorService = exports.ActiveMonacoEditorContribution = exports.MonacoEditorServiceFactory = exports.VSCodeThemeService = exports.VSCodeContextKeyService = void 0;
|
|
20
|
+
const tslib_1 = require("tslib");
|
|
21
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
22
|
+
const uri_1 = require("@theia/core/lib/common/uri");
|
|
23
|
+
const browser_1 = require("@theia/core/lib/browser");
|
|
24
|
+
const browser_2 = require("@theia/editor/lib/browser");
|
|
25
|
+
const monaco_editor_1 = require("./monaco-editor");
|
|
26
|
+
const monaco_to_protocol_converter_1 = require("./monaco-to-protocol-converter");
|
|
27
|
+
const monaco_editor_model_1 = require("./monaco-editor-model");
|
|
28
|
+
const standaloneCodeEditorService_1 = require("@theia/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneCodeEditorService");
|
|
29
|
+
const standaloneCodeEditor_1 = require("@theia/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneCodeEditor");
|
|
30
|
+
const contextkey_1 = require("@theia/monaco-editor-core/esm/vs/platform/contextkey/common/contextkey");
|
|
31
|
+
const themeService_1 = require("@theia/monaco-editor-core/esm/vs/platform/theme/common/themeService");
|
|
32
|
+
const core_1 = require("@theia/core");
|
|
33
|
+
(0, inversify_1.decorate)((0, inversify_1.injectable)(), standaloneCodeEditorService_1.StandaloneCodeEditorService);
|
|
34
|
+
exports.VSCodeContextKeyService = Symbol('VSCodeContextKeyService');
|
|
35
|
+
exports.VSCodeThemeService = Symbol('VSCodeThemeService');
|
|
36
|
+
exports.MonacoEditorServiceFactory = Symbol('MonacoEditorServiceFactory');
|
|
37
|
+
/**
|
|
38
|
+
* contribution provider to extend the active editor handling to other editor types than just standalone editor widgets.
|
|
39
|
+
*/
|
|
40
|
+
exports.ActiveMonacoEditorContribution = Symbol('ActiveMonacoEditorContribution');
|
|
41
|
+
let MonacoEditorService = MonacoEditorService_1 = class MonacoEditorService extends standaloneCodeEditorService_1.StandaloneCodeEditorService {
|
|
42
|
+
constructor(contextKeyService, themeService) {
|
|
43
|
+
super(contextKeyService, themeService);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Monaco active editor is either focused or last focused editor.
|
|
47
|
+
*/
|
|
48
|
+
getActiveCodeEditor() {
|
|
49
|
+
let editor = monaco_editor_1.MonacoEditor.getCurrent(this.editors);
|
|
50
|
+
if (!editor && browser_2.CustomEditorWidget.is(this.shell.activeWidget)) {
|
|
51
|
+
const model = this.shell.activeWidget.modelRef.object;
|
|
52
|
+
if ((model === null || model === void 0 ? void 0 : model.editorTextModel) instanceof monaco_editor_model_1.MonacoEditorModel) {
|
|
53
|
+
editor = monaco_editor_1.MonacoEditor.findByDocument(this.editors, model.editorTextModel)[0];
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
const candidate = editor === null || editor === void 0 ? void 0 : editor.getControl();
|
|
57
|
+
// Since we extend a private super class, we have to check that the thing that matches the public interface also matches the private expectations the superclass.
|
|
58
|
+
if (candidate instanceof standaloneCodeEditor_1.StandaloneCodeEditor) {
|
|
59
|
+
return candidate;
|
|
60
|
+
}
|
|
61
|
+
for (const activeEditorProvider of this.activeMonacoEditorContribution.getContributions()) {
|
|
62
|
+
const activeEditor = activeEditorProvider.getActiveEditor();
|
|
63
|
+
if (activeEditor) {
|
|
64
|
+
return activeEditor;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/* eslint-disable-next-line no-null/no-null */
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
async openCodeEditor(input, source, sideBySide) {
|
|
71
|
+
var _a;
|
|
72
|
+
const uri = new uri_1.default(input.resource.toString());
|
|
73
|
+
const openerOptions = this.createEditorOpenerOptions(input, source, sideBySide);
|
|
74
|
+
const widget = await (0, browser_1.open)(this.openerService, uri, openerOptions);
|
|
75
|
+
const editorWidget = await this.findEditorWidgetByUri(widget, uri.toString());
|
|
76
|
+
const candidate = (_a = monaco_editor_1.MonacoEditor.get(editorWidget)) === null || _a === void 0 ? void 0 : _a.getControl();
|
|
77
|
+
// Since we extend a private super class, we have to check that the thing that matches the public interface also matches the private expectations the superclass.
|
|
78
|
+
// eslint-disable-next-line no-null/no-null
|
|
79
|
+
return candidate instanceof standaloneCodeEditor_1.StandaloneCodeEditor ? candidate : null;
|
|
80
|
+
}
|
|
81
|
+
async findEditorWidgetByUri(widget, uriAsString) {
|
|
82
|
+
if (widget instanceof browser_2.EditorWidget) {
|
|
83
|
+
if (widget.editor.uri.toString() === uriAsString) {
|
|
84
|
+
return widget;
|
|
85
|
+
}
|
|
86
|
+
return undefined;
|
|
87
|
+
}
|
|
88
|
+
if (browser_1.ApplicationShell.TrackableWidgetProvider.is(widget)) {
|
|
89
|
+
for (const childWidget of widget.getTrackableWidgets()) {
|
|
90
|
+
const editorWidget = await this.findEditorWidgetByUri(childWidget, uriAsString);
|
|
91
|
+
if (editorWidget) {
|
|
92
|
+
return editorWidget;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return undefined;
|
|
97
|
+
}
|
|
98
|
+
createEditorOpenerOptions(input, source, sideBySide) {
|
|
99
|
+
const mode = this.getEditorOpenMode(input);
|
|
100
|
+
const widgetOptions = this.getWidgetOptions(source, sideBySide);
|
|
101
|
+
const selection = this.getSelection(input);
|
|
102
|
+
const preview = !!this.preferencesService.get(MonacoEditorService_1.ENABLE_PREVIEW_PREFERENCE, false);
|
|
103
|
+
return { mode, widgetOptions, preview, selection };
|
|
104
|
+
}
|
|
105
|
+
getSelection(input) {
|
|
106
|
+
if ('options' in input && input.options && 'selection' in input.options) {
|
|
107
|
+
return this.m2p.asRange(input.options.selection);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
getEditorOpenMode(input) {
|
|
111
|
+
const options = {
|
|
112
|
+
preserveFocus: false,
|
|
113
|
+
revealIfVisible: true,
|
|
114
|
+
...input.options
|
|
115
|
+
};
|
|
116
|
+
if (options.preserveFocus) {
|
|
117
|
+
return 'reveal';
|
|
118
|
+
}
|
|
119
|
+
return options.revealIfVisible ? 'activate' : 'open';
|
|
120
|
+
}
|
|
121
|
+
getWidgetOptions(source, sideBySide) {
|
|
122
|
+
const ref = monaco_editor_1.MonacoEditor.getWidgetFor(this.editors, source);
|
|
123
|
+
if (!ref) {
|
|
124
|
+
return undefined;
|
|
125
|
+
}
|
|
126
|
+
const area = (ref && this.shell.getAreaFor(ref)) || 'main';
|
|
127
|
+
const mode = ref && sideBySide ? 'split-right' : undefined;
|
|
128
|
+
if (area === 'secondaryWindow') {
|
|
129
|
+
return { area: 'main', mode };
|
|
130
|
+
}
|
|
131
|
+
return { area, mode, ref };
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
exports.MonacoEditorService = MonacoEditorService;
|
|
135
|
+
MonacoEditorService.ENABLE_PREVIEW_PREFERENCE = 'editor.enablePreview';
|
|
136
|
+
tslib_1.__decorate([
|
|
137
|
+
(0, inversify_1.inject)(browser_1.OpenerService),
|
|
138
|
+
tslib_1.__metadata("design:type", Object)
|
|
139
|
+
], MonacoEditorService.prototype, "openerService", void 0);
|
|
140
|
+
tslib_1.__decorate([
|
|
141
|
+
(0, inversify_1.inject)(monaco_to_protocol_converter_1.MonacoToProtocolConverter),
|
|
142
|
+
tslib_1.__metadata("design:type", monaco_to_protocol_converter_1.MonacoToProtocolConverter)
|
|
143
|
+
], MonacoEditorService.prototype, "m2p", void 0);
|
|
144
|
+
tslib_1.__decorate([
|
|
145
|
+
(0, inversify_1.inject)(browser_1.ApplicationShell),
|
|
146
|
+
tslib_1.__metadata("design:type", browser_1.ApplicationShell)
|
|
147
|
+
], MonacoEditorService.prototype, "shell", void 0);
|
|
148
|
+
tslib_1.__decorate([
|
|
149
|
+
(0, inversify_1.inject)(browser_2.EditorManager),
|
|
150
|
+
tslib_1.__metadata("design:type", browser_2.EditorManager)
|
|
151
|
+
], MonacoEditorService.prototype, "editors", void 0);
|
|
152
|
+
tslib_1.__decorate([
|
|
153
|
+
(0, inversify_1.inject)(core_1.PreferenceService),
|
|
154
|
+
tslib_1.__metadata("design:type", Object)
|
|
155
|
+
], MonacoEditorService.prototype, "preferencesService", void 0);
|
|
156
|
+
tslib_1.__decorate([
|
|
157
|
+
(0, inversify_1.inject)(core_1.ContributionProvider),
|
|
158
|
+
(0, inversify_1.named)(exports.ActiveMonacoEditorContribution),
|
|
159
|
+
tslib_1.__metadata("design:type", Object)
|
|
160
|
+
], MonacoEditorService.prototype, "activeMonacoEditorContribution", void 0);
|
|
161
|
+
exports.MonacoEditorService = MonacoEditorService = MonacoEditorService_1 = tslib_1.__decorate([
|
|
162
|
+
(0, inversify_1.injectable)(),
|
|
163
|
+
tslib_1.__param(0, (0, inversify_1.inject)(exports.VSCodeContextKeyService)),
|
|
164
|
+
tslib_1.__param(1, (0, inversify_1.inject)(exports.VSCodeThemeService)),
|
|
165
|
+
tslib_1.__metadata("design:paramtypes", [Object, Object])
|
|
166
|
+
], MonacoEditorService);
|
|
167
|
+
//# sourceMappingURL=monaco-editor-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monaco-editor-service.js","sourceRoot":"","sources":["../../src/browser/monaco-editor-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Disposable, DisposableCollection, Event, Emitter } from '@theia/core';
|
|
2
|
+
import * as monaco from '@theia/monaco-editor-core';
|
|
3
|
+
export interface MonacoEditorViewZone extends monaco.editor.IViewZone {
|
|
4
|
+
id: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class MonacoEditorZoneWidget implements Disposable {
|
|
7
|
+
readonly showArrow: boolean;
|
|
8
|
+
private arrow;
|
|
9
|
+
readonly zoneNode: HTMLDivElement;
|
|
10
|
+
readonly containerNode: HTMLDivElement;
|
|
11
|
+
protected readonly onDidLayoutChangeEmitter: Emitter<monaco.editor.IDimension>;
|
|
12
|
+
readonly onDidLayoutChange: Event<monaco.editor.IDimension>;
|
|
13
|
+
protected viewZone: MonacoEditorViewZone | undefined;
|
|
14
|
+
protected readonly toHide: DisposableCollection;
|
|
15
|
+
protected readonly toDispose: DisposableCollection;
|
|
16
|
+
editor: monaco.editor.ICodeEditor;
|
|
17
|
+
constructor(editorInstance: monaco.editor.ICodeEditor, showArrow?: boolean);
|
|
18
|
+
dispose(): void;
|
|
19
|
+
protected _options: MonacoEditorZoneWidget.Options | undefined;
|
|
20
|
+
get options(): MonacoEditorZoneWidget.Options | undefined;
|
|
21
|
+
hide(): void;
|
|
22
|
+
show(options: MonacoEditorZoneWidget.Options): void;
|
|
23
|
+
layout(heightInLines: number): void;
|
|
24
|
+
protected updateTop(top: number): void;
|
|
25
|
+
protected updateHeight(zoneHeight: number): void;
|
|
26
|
+
protected updateContainerHeight(zoneHeight: number): void;
|
|
27
|
+
protected computeContainerHeight(zoneHeight: number): {
|
|
28
|
+
height: number;
|
|
29
|
+
frameWidth: number;
|
|
30
|
+
};
|
|
31
|
+
protected updateWidth(info?: monaco.editor.EditorLayoutInfo): void;
|
|
32
|
+
protected computeWidth(info?: monaco.editor.EditorLayoutInfo): number;
|
|
33
|
+
protected computeLeft(info?: monaco.editor.EditorLayoutInfo): number;
|
|
34
|
+
}
|
|
35
|
+
export declare namespace MonacoEditorZoneWidget {
|
|
36
|
+
interface Options {
|
|
37
|
+
afterLineNumber: number;
|
|
38
|
+
afterColumn?: number;
|
|
39
|
+
heightInLines: number;
|
|
40
|
+
showFrame?: boolean;
|
|
41
|
+
frameWidth?: number;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=monaco-editor-zone-widget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monaco-editor-zone-widget.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-editor-zone-widget.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE/E,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AAEpD,MAAM,WAAW,oBAAqB,SAAQ,MAAM,CAAC,MAAM,CAAC,SAAS;IACjE,EAAE,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,sBAAuB,YAAW,UAAU;IAsBN,QAAQ,CAAC,SAAS,EAAE,OAAO;IApB1E,OAAO,CAAC,KAAK,CAAoB;IAEjC,QAAQ,CAAC,QAAQ,iBAAiC;IAClD,QAAQ,CAAC,aAAa,iBAAiC;IAEvD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,oCAA2C;IACtF,QAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAuC;IAElG,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAErD,SAAS,CAAC,QAAQ,CAAC,MAAM,uBAA8B;IAEvD,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAG1B;IAEF,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;gBAG9B,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,EAAW,SAAS,GAAE,OAAc;IAUjF,OAAO,IAAI,IAAI;IAKf,SAAS,CAAC,QAAQ,EAAE,sBAAsB,CAAC,OAAO,GAAG,SAAS,CAAC;IAC/D,IAAI,OAAO,IAAI,sBAAsB,CAAC,OAAO,GAAG,SAAS,CAExD;IAED,IAAI,IAAI,IAAI;IAIZ,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC,OAAO,GAAG,IAAI;IAwDnD,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAQnC,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAGtC,SAAS,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAIhD,SAAS,CAAC,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAQzD,SAAS,CAAC,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG;QAClD,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAA;KACrB;IAUD,SAAS,CAAC,WAAW,CAAC,IAAI,GAAE,MAAM,CAAC,MAAM,CAAC,gBAA8C,GAAG,IAAI;IAK/F,SAAS,CAAC,YAAY,CAAC,IAAI,GAAE,MAAM,CAAC,MAAM,CAAC,gBAA8C,GAAG,MAAM;IAGlG,SAAS,CAAC,WAAW,CAAC,IAAI,GAAE,MAAM,CAAC,MAAM,CAAC,gBAA8C,GAAG,MAAM;CAQpG;AA2DD,yBAAiB,sBAAsB,CAAC;IACpC,UAAiB,OAAO;QACpB,eAAe,EAAE,MAAM,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAA;KACtB;CACJ"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2018 TypeFox and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
/*---------------------------------------------------------------------------------------------
|
|
18
|
+
* Copyright (c) Microsoft Corporation and others. All rights reserved.
|
|
19
|
+
* Licensed under the MIT License. See https://github.com/Microsoft/vscode/blob/master/LICENSE.txt for license information.
|
|
20
|
+
*--------------------------------------------------------------------------------------------*/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.MonacoEditorZoneWidget = void 0;
|
|
23
|
+
const core_1 = require("@theia/core");
|
|
24
|
+
const browser_1 = require("@theia/editor/lib/browser");
|
|
25
|
+
const monaco = require("@theia/monaco-editor-core");
|
|
26
|
+
class MonacoEditorZoneWidget {
|
|
27
|
+
constructor(editorInstance, showArrow = true) {
|
|
28
|
+
this.showArrow = showArrow;
|
|
29
|
+
this.zoneNode = document.createElement('div');
|
|
30
|
+
this.containerNode = document.createElement('div');
|
|
31
|
+
this.onDidLayoutChangeEmitter = new core_1.Emitter();
|
|
32
|
+
this.onDidLayoutChange = this.onDidLayoutChangeEmitter.event;
|
|
33
|
+
this.toHide = new core_1.DisposableCollection();
|
|
34
|
+
this.toDispose = new core_1.DisposableCollection(this.onDidLayoutChangeEmitter, this.toHide);
|
|
35
|
+
this.editor = editorInstance;
|
|
36
|
+
this.zoneNode.classList.add('zone-widget');
|
|
37
|
+
this.containerNode.classList.add('zone-widget-container');
|
|
38
|
+
this.zoneNode.appendChild(this.containerNode);
|
|
39
|
+
this.updateWidth();
|
|
40
|
+
this.toDispose.push(this.editor.onDidLayoutChange(info => this.updateWidth(info)));
|
|
41
|
+
}
|
|
42
|
+
dispose() {
|
|
43
|
+
this.toDispose.dispose();
|
|
44
|
+
this.hide();
|
|
45
|
+
}
|
|
46
|
+
get options() {
|
|
47
|
+
return this.viewZone ? this._options : undefined;
|
|
48
|
+
}
|
|
49
|
+
hide() {
|
|
50
|
+
this.toHide.dispose();
|
|
51
|
+
}
|
|
52
|
+
show(options) {
|
|
53
|
+
let { afterLineNumber, afterColumn, heightInLines } = this._options = { showFrame: true, ...options };
|
|
54
|
+
const lineHeight = this.editor.getOption(monaco.editor.EditorOption.lineHeight);
|
|
55
|
+
// adjust heightInLines to viewport
|
|
56
|
+
const maxHeightInLines = Math.max(12, (this.editor.getLayoutInfo().height / lineHeight) * 0.8);
|
|
57
|
+
heightInLines = Math.min(heightInLines, maxHeightInLines);
|
|
58
|
+
let arrowHeight = 0;
|
|
59
|
+
this.toHide.dispose();
|
|
60
|
+
this.editor.changeViewZones(accessor => {
|
|
61
|
+
this.zoneNode.style.top = '-1000px';
|
|
62
|
+
const domNode = document.createElement('div');
|
|
63
|
+
domNode.style.overflow = 'hidden';
|
|
64
|
+
const zone = {
|
|
65
|
+
domNode,
|
|
66
|
+
afterLineNumber,
|
|
67
|
+
afterColumn,
|
|
68
|
+
heightInLines,
|
|
69
|
+
onDomNodeTop: zoneTop => this.updateTop(zoneTop),
|
|
70
|
+
onComputedHeight: zoneHeight => this.updateHeight(zoneHeight)
|
|
71
|
+
};
|
|
72
|
+
this.viewZone = Object.assign(zone, {
|
|
73
|
+
id: accessor.addZone(zone)
|
|
74
|
+
});
|
|
75
|
+
const id = this.viewZone.id;
|
|
76
|
+
this.toHide.push(core_1.Disposable.create(() => {
|
|
77
|
+
this.editor.changeViewZones(a => a.removeZone(id));
|
|
78
|
+
this.viewZone = undefined;
|
|
79
|
+
}));
|
|
80
|
+
if (this.showArrow) {
|
|
81
|
+
this.arrow = new Arrow(this.editor);
|
|
82
|
+
arrowHeight = Math.round(lineHeight / 3);
|
|
83
|
+
this.arrow.height = arrowHeight;
|
|
84
|
+
this.arrow.show({ lineNumber: options.afterLineNumber, column: 0 });
|
|
85
|
+
this.toHide.push(this.arrow);
|
|
86
|
+
}
|
|
87
|
+
const widget = {
|
|
88
|
+
getId: () => 'editor-zone-widget-' + id,
|
|
89
|
+
getDomNode: () => this.zoneNode,
|
|
90
|
+
// eslint-disable-next-line no-null/no-null
|
|
91
|
+
getPosition: () => null
|
|
92
|
+
};
|
|
93
|
+
this.editor.addOverlayWidget(widget);
|
|
94
|
+
this.toHide.push(core_1.Disposable.create(() => this.editor.removeOverlayWidget(widget)));
|
|
95
|
+
});
|
|
96
|
+
this.containerNode.style.overflow = 'hidden';
|
|
97
|
+
this.updateContainerHeight(heightInLines * lineHeight);
|
|
98
|
+
const model = this.editor.getModel();
|
|
99
|
+
if (model) {
|
|
100
|
+
const revealLineNumber = Math.min(model.getLineCount(), Math.max(1, afterLineNumber + 1));
|
|
101
|
+
this.editor.revealLine(revealLineNumber, monaco.editor.ScrollType.Smooth);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
layout(heightInLines) {
|
|
105
|
+
if (this.viewZone && this.viewZone.heightInLines !== heightInLines) {
|
|
106
|
+
this.viewZone.heightInLines = heightInLines;
|
|
107
|
+
const id = this.viewZone.id;
|
|
108
|
+
this.editor.changeViewZones(accessor => accessor.layoutZone(id));
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
updateTop(top) {
|
|
112
|
+
this.zoneNode.style.top = top + (this.showArrow ? 6 : 0) + 'px';
|
|
113
|
+
}
|
|
114
|
+
updateHeight(zoneHeight) {
|
|
115
|
+
this.zoneNode.style.height = zoneHeight + 'px';
|
|
116
|
+
this.updateContainerHeight(zoneHeight);
|
|
117
|
+
}
|
|
118
|
+
updateContainerHeight(zoneHeight) {
|
|
119
|
+
const { frameWidth, height } = this.computeContainerHeight(zoneHeight);
|
|
120
|
+
this.containerNode.style.height = height + 'px';
|
|
121
|
+
this.containerNode.style.borderTopWidth = frameWidth + 'px';
|
|
122
|
+
this.containerNode.style.borderBottomWidth = frameWidth + 'px';
|
|
123
|
+
const width = this.computeWidth();
|
|
124
|
+
this.onDidLayoutChangeEmitter.fire({ height, width });
|
|
125
|
+
}
|
|
126
|
+
computeContainerHeight(zoneHeight) {
|
|
127
|
+
const lineHeight = this.editor.getOption(monaco.editor.EditorOption.lineHeight);
|
|
128
|
+
const frameWidth = this._options && this._options.frameWidth;
|
|
129
|
+
const frameThickness = this._options && this._options.showFrame ? Math.round(lineHeight / 9) : 0;
|
|
130
|
+
return {
|
|
131
|
+
frameWidth: frameWidth !== undefined ? frameWidth : frameThickness,
|
|
132
|
+
height: zoneHeight - 2 * frameThickness
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
updateWidth(info = this.editor.getLayoutInfo()) {
|
|
136
|
+
const width = this.computeWidth(info);
|
|
137
|
+
this.zoneNode.style.width = width + 'px';
|
|
138
|
+
this.zoneNode.style.left = this.computeLeft(info) + 'px';
|
|
139
|
+
}
|
|
140
|
+
computeWidth(info = this.editor.getLayoutInfo()) {
|
|
141
|
+
return info.width - info.minimap.minimapWidth - info.verticalScrollbarWidth;
|
|
142
|
+
}
|
|
143
|
+
computeLeft(info = this.editor.getLayoutInfo()) {
|
|
144
|
+
// If minimap is to the left, we move beyond it
|
|
145
|
+
if (info.minimap.minimapWidth > 0 && info.minimap.minimapLeft === 0) {
|
|
146
|
+
return info.minimap.minimapWidth;
|
|
147
|
+
}
|
|
148
|
+
return 0;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
exports.MonacoEditorZoneWidget = MonacoEditorZoneWidget;
|
|
152
|
+
class IdGenerator {
|
|
153
|
+
constructor(prefix) {
|
|
154
|
+
this.prefix = prefix;
|
|
155
|
+
this.lastId = 0;
|
|
156
|
+
}
|
|
157
|
+
nextId() {
|
|
158
|
+
return this.prefix + (++this.lastId);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
class Arrow {
|
|
162
|
+
constructor(_editor) {
|
|
163
|
+
this._editor = _editor;
|
|
164
|
+
this.idGenerator = new IdGenerator('.arrow-decoration-');
|
|
165
|
+
this.ruleName = this.idGenerator.nextId();
|
|
166
|
+
this.decorations = [];
|
|
167
|
+
this._height = -1;
|
|
168
|
+
}
|
|
169
|
+
dispose() {
|
|
170
|
+
this.hide();
|
|
171
|
+
}
|
|
172
|
+
set height(value) {
|
|
173
|
+
if (this._height !== value) {
|
|
174
|
+
this._height = value;
|
|
175
|
+
this._updateStyle();
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
_updateStyle() {
|
|
179
|
+
const style = document.createElement('style');
|
|
180
|
+
style.type = 'text/css';
|
|
181
|
+
style.media = 'screen';
|
|
182
|
+
document.getElementsByTagName('head')[0].appendChild(style);
|
|
183
|
+
const selector = `.monaco-editor ${this.ruleName}`;
|
|
184
|
+
const cssText = `border-style: solid; border-color: transparent transparent var(--theia-peekView-border); border-width:
|
|
185
|
+
${this._height}px; bottom: -${this._height}px; margin-left: -${this._height}px; `;
|
|
186
|
+
style.sheet.insertRule(selector + '{' + cssText + '}', 0);
|
|
187
|
+
}
|
|
188
|
+
show(where) {
|
|
189
|
+
this.decorations = this._editor.deltaDecorations(this.decorations, [{ range: monaco.Range.fromPositions(where), options: { className: this.ruleName, stickiness: browser_1.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges } }]);
|
|
190
|
+
}
|
|
191
|
+
hide() {
|
|
192
|
+
this._editor.deltaDecorations(this.decorations, []);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=monaco-editor-zone-widget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monaco-editor-zone-widget.js","sourceRoot":"","sources":["../../src/browser/monaco-editor-zone-widget.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { ElementExt } from '@theia/core/shared/@lumino/domutils';
|
|
2
|
+
import URI from '@theia/core/lib/common/uri';
|
|
3
|
+
import { ContextKeyService } from '@theia/core/lib/browser/context-key-service';
|
|
4
|
+
import { DisposableCollection, Disposable, Emitter, Event } from '@theia/core/lib/common';
|
|
5
|
+
import { Dimension, EditorManager, EditorWidget, Position, Range, TextDocumentContentChangeDelta, TextDocumentChangeEvent, TextEditor, RevealRangeOptions, RevealPositionOptions, DeltaDecorationParams, ReplaceTextParams, EditorDecoration, EditorMouseEvent, EncodingMode } from '@theia/editor/lib/browser';
|
|
6
|
+
import { MonacoEditorModel } from './monaco-editor-model';
|
|
7
|
+
import { MonacoToProtocolConverter } from './monaco-to-protocol-converter';
|
|
8
|
+
import { ProtocolToMonacoConverter } from './protocol-to-monaco-converter';
|
|
9
|
+
import { TextEdit } from '@theia/core/shared/vscode-languageserver-protocol';
|
|
10
|
+
import * as monaco from '@theia/monaco-editor-core';
|
|
11
|
+
import { IInstantiationService, ServiceIdentifier } from '@theia/monaco-editor-core/esm/vs/platform/instantiation/common/instantiation';
|
|
12
|
+
import { ICodeEditor } from '@theia/monaco-editor-core/esm/vs/editor/browser/editorBrowser';
|
|
13
|
+
import { IStandaloneEditorConstructionOptions } from '@theia/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneCodeEditor';
|
|
14
|
+
import { MarkdownString } from '@theia/core/lib/common/markdown-rendering';
|
|
15
|
+
import { Selection } from '@theia/editor/lib/browser/editor';
|
|
16
|
+
import { MonacoTextModelService } from './monaco-text-model-service';
|
|
17
|
+
export type ServicePair<T> = [ServiceIdentifier<T>, T];
|
|
18
|
+
export interface EditorServiceOverrides extends Iterable<ServicePair<unknown>> {
|
|
19
|
+
}
|
|
20
|
+
export declare class MonacoEditorServices {
|
|
21
|
+
protected readonly m2p: MonacoToProtocolConverter;
|
|
22
|
+
protected readonly p2m: ProtocolToMonacoConverter;
|
|
23
|
+
protected readonly contextKeyService: ContextKeyService;
|
|
24
|
+
protected readonly monacoModelService: MonacoTextModelService;
|
|
25
|
+
constructor(services: MonacoEditorServices);
|
|
26
|
+
}
|
|
27
|
+
export declare class MonacoEditor extends MonacoEditorServices implements TextEditor {
|
|
28
|
+
readonly uri: URI;
|
|
29
|
+
readonly document: MonacoEditorModel;
|
|
30
|
+
readonly node: HTMLElement;
|
|
31
|
+
readonly parentEditor?: MonacoEditor | undefined;
|
|
32
|
+
static create(uri: URI, document: MonacoEditorModel, node: HTMLElement, services: MonacoEditorServices, options?: MonacoEditor.IOptions, override?: EditorServiceOverrides, parentEditor?: MonacoEditor): Promise<MonacoEditor>;
|
|
33
|
+
protected readonly toDispose: DisposableCollection;
|
|
34
|
+
protected readonly autoSizing: boolean;
|
|
35
|
+
protected readonly minHeight: number;
|
|
36
|
+
protected readonly maxHeight: number;
|
|
37
|
+
protected editor: monaco.editor.IStandaloneCodeEditor;
|
|
38
|
+
protected readonly onCursorPositionChangedEmitter: Emitter<Position>;
|
|
39
|
+
protected readonly onSelectionChangedEmitter: Emitter<Selection>;
|
|
40
|
+
protected readonly onFocusChangedEmitter: Emitter<boolean>;
|
|
41
|
+
protected readonly onDocumentContentChangedEmitter: Emitter<TextDocumentChangeEvent>;
|
|
42
|
+
protected readonly onMouseDownEmitter: Emitter<EditorMouseEvent>;
|
|
43
|
+
readonly onDidChangeReadOnly: Event<boolean | MarkdownString>;
|
|
44
|
+
protected readonly onLanguageChangedEmitter: Emitter<string>;
|
|
45
|
+
readonly onLanguageChanged: Event<string>;
|
|
46
|
+
protected readonly onScrollChangedEmitter: Emitter<void>;
|
|
47
|
+
readonly onEncodingChanged: Event<string>;
|
|
48
|
+
protected readonly onResizeEmitter: Emitter<Dimension | null>;
|
|
49
|
+
readonly onDidResize: Event<Dimension | null>;
|
|
50
|
+
protected readonly onShouldDisplayDirtyDiffChangedEmitter: Emitter<boolean>;
|
|
51
|
+
readonly onShouldDisplayDirtyDiffChanged: Event<boolean> | undefined;
|
|
52
|
+
readonly documents: Set<MonacoEditorModel>;
|
|
53
|
+
protected model: monaco.editor.ITextModel | null;
|
|
54
|
+
savedViewState: monaco.editor.ICodeEditorViewState | null;
|
|
55
|
+
protected constructor(uri: URI, document: MonacoEditorModel, node: HTMLElement, services: MonacoEditorServices, options?: MonacoEditor.IOptions, override?: EditorServiceOverrides, parentEditor?: MonacoEditor | undefined);
|
|
56
|
+
protected init(): Promise<void>;
|
|
57
|
+
getEncoding(): string;
|
|
58
|
+
setEncoding(encoding: string, mode: EncodingMode): Promise<void>;
|
|
59
|
+
protected create(options?: monaco.editor.IStandaloneEditorConstructionOptions | IStandaloneEditorConstructionOptions, override?: EditorServiceOverrides): Disposable;
|
|
60
|
+
protected getInstantiatorWithOverrides(override?: EditorServiceOverrides): IInstantiationService;
|
|
61
|
+
protected addHandlers(codeEditor: monaco.editor.IStandaloneCodeEditor): void;
|
|
62
|
+
handleVisibilityChanged(nowVisible: boolean): void;
|
|
63
|
+
getVisibleRanges(): Range[];
|
|
64
|
+
protected mapModelContentChange(change: monaco.editor.IModelContentChange): TextDocumentContentChangeDelta;
|
|
65
|
+
get onDispose(): Event<void>;
|
|
66
|
+
get onDocumentContentChanged(): Event<TextDocumentChangeEvent>;
|
|
67
|
+
get isReadonly(): boolean | MarkdownString;
|
|
68
|
+
get cursor(): Position;
|
|
69
|
+
set cursor(cursor: Position);
|
|
70
|
+
get onCursorPositionChanged(): Event<Position>;
|
|
71
|
+
get selection(): Selection;
|
|
72
|
+
set selection(selection: Selection);
|
|
73
|
+
get onSelectionChanged(): Event<Selection>;
|
|
74
|
+
get onScrollChanged(): Event<void>;
|
|
75
|
+
revealPosition(raw: Position, options?: RevealPositionOptions): void;
|
|
76
|
+
revealRange(raw: Range, options?: RevealRangeOptions): void;
|
|
77
|
+
focus(): void;
|
|
78
|
+
blur(): void;
|
|
79
|
+
isFocused({ strict }?: {
|
|
80
|
+
strict: boolean;
|
|
81
|
+
}): boolean;
|
|
82
|
+
get onFocusChanged(): Event<boolean>;
|
|
83
|
+
get onMouseDown(): Event<EditorMouseEvent>;
|
|
84
|
+
/**
|
|
85
|
+
* `true` if the suggest widget is visible in the editor. Otherwise, `false`.
|
|
86
|
+
*/
|
|
87
|
+
isSuggestWidgetVisible(): boolean;
|
|
88
|
+
/**
|
|
89
|
+
* `true` if the find (and replace) widget is visible in the editor. Otherwise, `false`.
|
|
90
|
+
*/
|
|
91
|
+
isFindWidgetVisible(): boolean;
|
|
92
|
+
/**
|
|
93
|
+
* `true` if the name rename refactoring input HTML element is visible. Otherwise, `false`.
|
|
94
|
+
*/
|
|
95
|
+
isRenameInputVisible(): boolean;
|
|
96
|
+
dispose(): void;
|
|
97
|
+
trigger(source: string, handlerId: string, payload: any): void;
|
|
98
|
+
getControl(): monaco.editor.IStandaloneCodeEditor;
|
|
99
|
+
refresh(): void;
|
|
100
|
+
resizeToFit(): void;
|
|
101
|
+
setSize(dimension: Dimension): void;
|
|
102
|
+
protected autoresize(): void;
|
|
103
|
+
protected resize(dimension: Dimension | null): void;
|
|
104
|
+
protected computeLayoutSize(hostNode: HTMLElement, dimension: monaco.editor.IDimension | null): monaco.editor.IDimension;
|
|
105
|
+
protected getWidth(hostNode: HTMLElement, boxSizing: ElementExt.IBoxSizing): number;
|
|
106
|
+
protected getHeight(hostNode: HTMLElement, boxSizing: ElementExt.IBoxSizing): number;
|
|
107
|
+
isActionSupported(id: string): boolean;
|
|
108
|
+
runAction(id: string): Promise<void>;
|
|
109
|
+
deltaDecorations(params: DeltaDecorationParams): string[];
|
|
110
|
+
protected toDeltaDecorations(params: DeltaDecorationParams): monaco.editor.IModelDeltaDecoration[];
|
|
111
|
+
protected fromStringToMarkdownString(hoverMessage?: string | monaco.IMarkdownString | monaco.IMarkdownString[]): monaco.IMarkdownString | monaco.IMarkdownString[] | undefined;
|
|
112
|
+
protected fromMarkdownToString(maybeMarkdown?: null | string | monaco.IMarkdownString | monaco.IMarkdownString[]): string | undefined;
|
|
113
|
+
getLinesDecorations(startLineNumber: number, endLineNumber: number): (EditorDecoration & Readonly<{
|
|
114
|
+
id: string;
|
|
115
|
+
}>)[];
|
|
116
|
+
protected toEditorDecoration(decoration: monaco.editor.IModelDecoration): EditorDecoration & Readonly<{
|
|
117
|
+
id: string;
|
|
118
|
+
}>;
|
|
119
|
+
getVisibleColumn(position: Position): number;
|
|
120
|
+
replaceText(params: ReplaceTextParams): Promise<boolean>;
|
|
121
|
+
executeEdits(edits: TextEdit[]): boolean;
|
|
122
|
+
storeViewState(): object;
|
|
123
|
+
restoreViewState(state: monaco.editor.ICodeEditorViewState): void;
|
|
124
|
+
protected _languageAutoDetected: boolean;
|
|
125
|
+
get languageAutoDetected(): boolean;
|
|
126
|
+
detectLanguage(): Promise<void>;
|
|
127
|
+
setLanguage(languageId: string): void;
|
|
128
|
+
protected fireLanguageChanged(languageId: string): void;
|
|
129
|
+
getResourceUri(): URI;
|
|
130
|
+
createMoveToUri(resourceUri: URI): URI;
|
|
131
|
+
private _shouldDisplayDirtyDiff;
|
|
132
|
+
shouldDisplayDirtyDiff(): boolean;
|
|
133
|
+
setShouldDisplayDirtyDiff(value: boolean): void;
|
|
134
|
+
}
|
|
135
|
+
export declare namespace MonacoEditor {
|
|
136
|
+
interface ICommonOptions {
|
|
137
|
+
/**
|
|
138
|
+
* Whether an editor should be auto resized on a content change.
|
|
139
|
+
*
|
|
140
|
+
* #### Fixme
|
|
141
|
+
* remove when https://github.com/Microsoft/monaco-editor/issues/103 is resolved
|
|
142
|
+
*/
|
|
143
|
+
autoSizing?: boolean;
|
|
144
|
+
/**
|
|
145
|
+
* A minimal height of an editor in lines.
|
|
146
|
+
*
|
|
147
|
+
* #### Fixme
|
|
148
|
+
* remove when https://github.com/Microsoft/monaco-editor/issues/103 is resolved
|
|
149
|
+
*/
|
|
150
|
+
minHeight?: number;
|
|
151
|
+
/**
|
|
152
|
+
* A maximal height of an editor in lines.
|
|
153
|
+
*
|
|
154
|
+
* #### Fixme
|
|
155
|
+
* remove when https://github.com/Microsoft/monaco-editor/issues/103 is resolved
|
|
156
|
+
*/
|
|
157
|
+
maxHeight?: number;
|
|
158
|
+
}
|
|
159
|
+
interface IOptions extends ICommonOptions, monaco.editor.IStandaloneEditorConstructionOptions {
|
|
160
|
+
}
|
|
161
|
+
function getAll(manager: EditorManager): MonacoEditor[];
|
|
162
|
+
function getCurrent(manager: EditorManager): MonacoEditor | undefined;
|
|
163
|
+
function getActive(manager: EditorManager): MonacoEditor | undefined;
|
|
164
|
+
function get(editorWidget: EditorWidget | undefined): MonacoEditor | undefined;
|
|
165
|
+
function findByDocument(manager: EditorManager, document: MonacoEditorModel): MonacoEditor[];
|
|
166
|
+
function getWidgetFor(manager: EditorManager, control: monaco.editor.ICodeEditor | ICodeEditor | undefined | null): EditorWidget | undefined;
|
|
167
|
+
function createReadOnlyOptions(readOnly?: boolean | MarkdownString): monaco.editor.IEditorOptions;
|
|
168
|
+
}
|
|
169
|
+
//# sourceMappingURL=monaco-editor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monaco-editor.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-editor.ts"],"names":[],"mappings":"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"}
|