@opensumi/ide-editor 2.12.1-next-079c1930
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/README.md +565 -0
- package/lib/browser/breadcrumb/default.d.ts +28 -0
- package/lib/browser/breadcrumb/default.d.ts.map +1 -0
- package/lib/browser/breadcrumb/default.js +283 -0
- package/lib/browser/breadcrumb/default.js.map +1 -0
- package/lib/browser/breadcrumb/document-symbol.d.ts +36 -0
- package/lib/browser/breadcrumb/document-symbol.d.ts.map +1 -0
- package/lib/browser/breadcrumb/document-symbol.js +161 -0
- package/lib/browser/breadcrumb/document-symbol.js.map +1 -0
- package/lib/browser/breadcrumb/index.d.ts +20 -0
- package/lib/browser/breadcrumb/index.d.ts.map +1 -0
- package/lib/browser/breadcrumb/index.js +90 -0
- package/lib/browser/breadcrumb/index.js.map +1 -0
- package/lib/browser/component/scroll/scroll.d.ts +66 -0
- package/lib/browser/component/scroll/scroll.d.ts.map +1 -0
- package/lib/browser/component/scroll/scroll.js +263 -0
- package/lib/browser/component/scroll/scroll.js.map +1 -0
- package/lib/browser/component/scroll/scroll.module.less +83 -0
- package/lib/browser/component.d.ts +23 -0
- package/lib/browser/component.d.ts.map +1 -0
- package/lib/browser/component.js +165 -0
- package/lib/browser/component.js.map +1 -0
- package/lib/browser/decoration-applier.d.ts +25 -0
- package/lib/browser/decoration-applier.d.ts.map +1 -0
- package/lib/browser/decoration-applier.js +224 -0
- package/lib/browser/decoration-applier.js.map +1 -0
- package/lib/browser/diff/compare.d.ts +14 -0
- package/lib/browser/diff/compare.d.ts.map +1 -0
- package/lib/browser/diff/compare.js +94 -0
- package/lib/browser/diff/compare.js.map +1 -0
- package/lib/browser/diff/index.d.ts +19 -0
- package/lib/browser/diff/index.d.ts.map +1 -0
- package/lib/browser/diff/index.js +92 -0
- package/lib/browser/diff/index.js.map +1 -0
- package/lib/browser/doc-cache/empty-doc-cache.d.ts +12 -0
- package/lib/browser/doc-cache/empty-doc-cache.d.ts.map +1 -0
- package/lib/browser/doc-cache/empty-doc-cache.js +27 -0
- package/lib/browser/doc-cache/empty-doc-cache.js.map +1 -0
- package/lib/browser/doc-cache/index.d.ts +3 -0
- package/lib/browser/doc-cache/index.d.ts.map +1 -0
- package/lib/browser/doc-cache/index.js +6 -0
- package/lib/browser/doc-cache/index.js.map +1 -0
- package/lib/browser/doc-cache/local-storage-cache.d.ts +32 -0
- package/lib/browser/doc-cache/local-storage-cache.d.ts.map +1 -0
- package/lib/browser/doc-cache/local-storage-cache.js +69 -0
- package/lib/browser/doc-cache/local-storage-cache.js.map +1 -0
- package/lib/browser/doc-model/editor-document-error.d.ts +7 -0
- package/lib/browser/doc-model/editor-document-error.d.ts.map +1 -0
- package/lib/browser/doc-model/editor-document-error.js +15 -0
- package/lib/browser/doc-model/editor-document-error.js.map +1 -0
- package/lib/browser/doc-model/editor-document-model-service.d.ts +40 -0
- package/lib/browser/doc-model/editor-document-model-service.d.ts.map +1 -0
- package/lib/browser/doc-model/editor-document-model-service.js +276 -0
- package/lib/browser/doc-model/editor-document-model-service.js.map +1 -0
- package/lib/browser/doc-model/editor-document-model.d.ts +85 -0
- package/lib/browser/doc-model/editor-document-model.d.ts.map +1 -0
- package/lib/browser/doc-model/editor-document-model.js +463 -0
- package/lib/browser/doc-model/editor-document-model.js.map +1 -0
- package/lib/browser/doc-model/editor-document-registry.d.ts +15 -0
- package/lib/browser/doc-model/editor-document-registry.d.ts.map +1 -0
- package/lib/browser/doc-model/editor-document-registry.js +110 -0
- package/lib/browser/doc-model/editor-document-registry.js.map +1 -0
- package/lib/browser/doc-model/editor-is-fn.d.ts +4 -0
- package/lib/browser/doc-model/editor-is-fn.d.ts.map +1 -0
- package/lib/browser/doc-model/editor-is-fn.js +12 -0
- package/lib/browser/doc-model/editor-is-fn.js.map +1 -0
- package/lib/browser/doc-model/main.d.ts +5 -0
- package/lib/browser/doc-model/main.d.ts.map +1 -0
- package/lib/browser/doc-model/main.js +8 -0
- package/lib/browser/doc-model/main.js.map +1 -0
- package/lib/browser/doc-model/override.d.ts +12 -0
- package/lib/browser/doc-model/override.d.ts.map +1 -0
- package/lib/browser/doc-model/override.js +46 -0
- package/lib/browser/doc-model/override.js.map +1 -0
- package/lib/browser/doc-model/save-task.d.ts +19 -0
- package/lib/browser/doc-model/save-task.d.ts.map +1 -0
- package/lib/browser/doc-model/save-task.js +34 -0
- package/lib/browser/doc-model/save-task.js.map +1 -0
- package/lib/browser/doc-model/saveParticipants.d.ts +21 -0
- package/lib/browser/doc-model/saveParticipants.d.ts.map +1 -0
- package/lib/browser/doc-model/saveParticipants.js +133 -0
- package/lib/browser/doc-model/saveParticipants.js.map +1 -0
- package/lib/browser/doc-model/types.d.ts +253 -0
- package/lib/browser/doc-model/types.d.ts.map +1 -0
- package/lib/browser/doc-model/types.js +31 -0
- package/lib/browser/doc-model/types.js.map +1 -0
- package/lib/browser/editor-collection.service.d.ts +137 -0
- package/lib/browser/editor-collection.service.d.ts.map +1 -0
- package/lib/browser/editor-collection.service.js +607 -0
- package/lib/browser/editor-collection.service.js.map +1 -0
- package/lib/browser/editor-opener.d.ts +10 -0
- package/lib/browser/editor-opener.d.ts.map +1 -0
- package/lib/browser/editor-opener.js +51 -0
- package/lib/browser/editor-opener.js.map +1 -0
- package/lib/browser/editor.contribution.d.ts +54 -0
- package/lib/browser/editor.contribution.d.ts.map +1 -0
- package/lib/browser/editor.contribution.js +1059 -0
- package/lib/browser/editor.contribution.js.map +1 -0
- package/lib/browser/editor.decoration.service.d.ts +28 -0
- package/lib/browser/editor.decoration.service.d.ts.map +1 -0
- package/lib/browser/editor.decoration.service.js +216 -0
- package/lib/browser/editor.decoration.service.js.map +1 -0
- package/lib/browser/editor.less +4 -0
- package/lib/browser/editor.module.less +493 -0
- package/lib/browser/editor.override.d.ts +24 -0
- package/lib/browser/editor.override.d.ts.map +1 -0
- package/lib/browser/editor.override.js +85 -0
- package/lib/browser/editor.override.js.map +1 -0
- package/lib/browser/editor.status-bar.service.d.ts +12 -0
- package/lib/browser/editor.status-bar.service.d.ts.map +1 -0
- package/lib/browser/editor.status-bar.service.js +114 -0
- package/lib/browser/editor.status-bar.service.js.map +1 -0
- package/lib/browser/editor.view.d.ts +33 -0
- package/lib/browser/editor.view.d.ts.map +1 -0
- package/lib/browser/editor.view.js +411 -0
- package/lib/browser/editor.view.js.map +1 -0
- package/lib/browser/error.d.ts +14 -0
- package/lib/browser/error.d.ts.map +1 -0
- package/lib/browser/error.js +19 -0
- package/lib/browser/error.js.map +1 -0
- package/lib/browser/feature.d.ts +14 -0
- package/lib/browser/feature.d.ts.map +1 -0
- package/lib/browser/feature.js +56 -0
- package/lib/browser/feature.js.map +1 -0
- package/lib/browser/format/formatterSelect.d.ts +11 -0
- package/lib/browser/format/formatterSelect.d.ts.map +1 -0
- package/lib/browser/format/formatterSelect.js +61 -0
- package/lib/browser/format/formatterSelect.js.map +1 -0
- package/lib/browser/fs-resource/file-tree-set.d.ts +31 -0
- package/lib/browser/fs-resource/file-tree-set.d.ts.map +1 -0
- package/lib/browser/fs-resource/file-tree-set.js +123 -0
- package/lib/browser/fs-resource/file-tree-set.js.map +1 -0
- package/lib/browser/fs-resource/fs-editor-doc.d.ts +47 -0
- package/lib/browser/fs-resource/fs-editor-doc.d.ts.map +1 -0
- package/lib/browser/fs-resource/fs-editor-doc.js +148 -0
- package/lib/browser/fs-resource/fs-editor-doc.js.map +1 -0
- package/lib/browser/fs-resource/fs-resource.d.ts +25 -0
- package/lib/browser/fs-resource/fs-resource.d.ts.map +1 -0
- package/lib/browser/fs-resource/fs-resource.js +211 -0
- package/lib/browser/fs-resource/fs-resource.js.map +1 -0
- package/lib/browser/fs-resource/index.d.ts +12 -0
- package/lib/browser/fs-resource/index.d.ts.map +1 -0
- package/lib/browser/fs-resource/index.js +30 -0
- package/lib/browser/fs-resource/index.js.map +1 -0
- package/lib/browser/grid/grid.service.d.ts +44 -0
- package/lib/browser/grid/grid.service.d.ts.map +1 -0
- package/lib/browser/grid/grid.service.js +255 -0
- package/lib/browser/grid/grid.service.js.map +1 -0
- package/lib/browser/history/index.d.ts +31 -0
- package/lib/browser/history/index.d.ts.map +1 -0
- package/lib/browser/history/index.js +164 -0
- package/lib/browser/history/index.js.map +1 -0
- package/lib/browser/index.d.ts +33 -0
- package/lib/browser/index.d.ts.map +1 -0
- package/lib/browser/index.js +212 -0
- package/lib/browser/index.js.map +1 -0
- package/lib/browser/language/diagnostic-collection.d.ts +28 -0
- package/lib/browser/language/diagnostic-collection.d.ts.map +1 -0
- package/lib/browser/language/diagnostic-collection.js +72 -0
- package/lib/browser/language/diagnostic-collection.js.map +1 -0
- package/lib/browser/language/language.service.d.ts +19 -0
- package/lib/browser/language/language.service.d.ts.map +1 -0
- package/lib/browser/language/language.service.js +146 -0
- package/lib/browser/language/language.service.js.map +1 -0
- package/lib/browser/language/workspace-symbol-quickopen.d.ts +43 -0
- package/lib/browser/language/workspace-symbol-quickopen.d.ts.map +1 -0
- package/lib/browser/language/workspace-symbol-quickopen.js +231 -0
- package/lib/browser/language/workspace-symbol-quickopen.js.map +1 -0
- package/lib/browser/menu/editor.context.d.ts +20 -0
- package/lib/browser/menu/editor.context.d.ts.map +1 -0
- package/lib/browser/menu/editor.context.js +139 -0
- package/lib/browser/menu/editor.context.js.map +1 -0
- package/lib/browser/menu/editor.menu.d.ts +13 -0
- package/lib/browser/menu/editor.menu.d.ts.map +1 -0
- package/lib/browser/menu/editor.menu.js +48 -0
- package/lib/browser/menu/editor.menu.js.map +1 -0
- package/lib/browser/menu/title-context.menu.d.ts +13 -0
- package/lib/browser/menu/title-context.menu.d.ts.map +1 -0
- package/lib/browser/menu/title-context.menu.js +55 -0
- package/lib/browser/menu/title-context.menu.js.map +1 -0
- package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.d.ts +20 -0
- package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.d.ts.map +1 -0
- package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.js +64 -0
- package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.js.map +1 -0
- package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.d.ts +35 -0
- package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.d.ts.map +1 -0
- package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.js +144 -0
- package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.js.map +1 -0
- package/lib/browser/monaco-contrib/command/command.service.d.ts +141 -0
- package/lib/browser/monaco-contrib/command/command.service.d.ts.map +1 -0
- package/lib/browser/monaco-contrib/command/command.service.js +370 -0
- package/lib/browser/monaco-contrib/command/command.service.js.map +1 -0
- package/lib/browser/monaco-contrib/index.d.ts +3 -0
- package/lib/browser/monaco-contrib/index.d.ts.map +1 -0
- package/lib/browser/monaco-contrib/index.js +6 -0
- package/lib/browser/monaco-contrib/index.js.map +1 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate-registry.d.ts +46 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate-registry.d.ts.map +1 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate-registry.js +79 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate-registry.js.map +1 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.d.ts +58 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.d.ts.map +1 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.js +75 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.js.map +1 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate.service.d.ts +54 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate.service.d.ts.map +1 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate.service.js +596 -0
- package/lib/browser/monaco-contrib/tokenizer/textmate.service.js.map +1 -0
- package/lib/browser/navigation.module.less +86 -0
- package/lib/browser/navigation.view.d.ts +29 -0
- package/lib/browser/navigation.view.d.ts.map +1 -0
- package/lib/browser/navigation.view.js +183 -0
- package/lib/browser/navigation.view.js.map +1 -0
- package/lib/browser/preference/contribution.d.ts +5 -0
- package/lib/browser/preference/contribution.d.ts.map +1 -0
- package/lib/browser/preference/contribution.js +16 -0
- package/lib/browser/preference/contribution.js.map +1 -0
- package/lib/browser/preference/converter.d.ts +34 -0
- package/lib/browser/preference/converter.d.ts.map +1 -0
- package/lib/browser/preference/converter.js +632 -0
- package/lib/browser/preference/converter.js.map +1 -0
- package/lib/browser/preference/schema.d.ts +230 -0
- package/lib/browser/preference/schema.d.ts.map +1 -0
- package/lib/browser/preference/schema.js +1453 -0
- package/lib/browser/preference/schema.js.map +1 -0
- package/lib/browser/preference/util.d.ts +4 -0
- package/lib/browser/preference/util.d.ts.map +1 -0
- package/lib/browser/preference/util.js +13 -0
- package/lib/browser/preference/util.js.map +1 -0
- package/lib/browser/resource.service.d.ts +32 -0
- package/lib/browser/resource.service.d.ts.map +1 -0
- package/lib/browser/resource.service.js +219 -0
- package/lib/browser/resource.service.js.map +1 -0
- package/lib/browser/tab.view.d.ts +12 -0
- package/lib/browser/tab.view.d.ts.map +1 -0
- package/lib/browser/tab.view.js +330 -0
- package/lib/browser/tab.view.js.map +1 -0
- package/lib/browser/types.d.ts +344 -0
- package/lib/browser/types.d.ts.map +1 -0
- package/lib/browser/types.js +94 -0
- package/lib/browser/types.js.map +1 -0
- package/lib/browser/untitled-resource.d.ts +33 -0
- package/lib/browser/untitled-resource.d.ts.map +1 -0
- package/lib/browser/untitled-resource.js +114 -0
- package/lib/browser/untitled-resource.js.map +1 -0
- package/lib/browser/view/editor.react.d.ts +10 -0
- package/lib/browser/view/editor.react.d.ts.map +1 -0
- package/lib/browser/view/editor.react.js +69 -0
- package/lib/browser/view/editor.react.js.map +1 -0
- package/lib/browser/view/react-hook.d.ts +3 -0
- package/lib/browser/view/react-hook.d.ts.map +1 -0
- package/lib/browser/view/react-hook.js +9 -0
- package/lib/browser/view/react-hook.js.map +1 -0
- package/lib/browser/view/suggest-widget.d.ts +8 -0
- package/lib/browser/view/suggest-widget.d.ts.map +1 -0
- package/lib/browser/view/suggest-widget.js +51 -0
- package/lib/browser/view/suggest-widget.js.map +1 -0
- package/lib/browser/view/topPadding.d.ts +6 -0
- package/lib/browser/view/topPadding.d.ts.map +1 -0
- package/lib/browser/view/topPadding.js +18 -0
- package/lib/browser/view/topPadding.js.map +1 -0
- package/lib/browser/workbench-editor.service.d.ts +244 -0
- package/lib/browser/workbench-editor.service.d.ts.map +1 -0
- package/lib/browser/workbench-editor.service.js +1689 -0
- package/lib/browser/workbench-editor.service.js.map +1 -0
- package/lib/common/doc-cache.d.ts +80 -0
- package/lib/common/doc-cache.d.ts.map +1 -0
- package/lib/common/doc-cache.js +39 -0
- package/lib/common/doc-cache.js.map +1 -0
- package/lib/common/editor.d.ts +571 -0
- package/lib/common/editor.d.ts.map +1 -0
- package/lib/common/editor.js +125 -0
- package/lib/common/editor.js.map +1 -0
- package/lib/common/index.d.ts +6 -0
- package/lib/common/index.d.ts.map +1 -0
- package/lib/common/index.js +9 -0
- package/lib/common/index.js.map +1 -0
- package/lib/common/language.d.ts +108 -0
- package/lib/common/language.d.ts.map +1 -0
- package/lib/common/language.js +72 -0
- package/lib/common/language.js.map +1 -0
- package/lib/common/mocks/workbench-editor.service.d.ts +21 -0
- package/lib/common/mocks/workbench-editor.service.d.ts.map +1 -0
- package/lib/common/mocks/workbench-editor.service.js +48 -0
- package/lib/common/mocks/workbench-editor.service.js.map +1 -0
- package/lib/common/resource.d.ts +94 -0
- package/lib/common/resource.d.ts.map +1 -0
- package/lib/common/resource.js +31 -0
- package/lib/common/resource.js.map +1 -0
- package/lib/common/utils.d.ts +3 -0
- package/lib/common/utils.d.ts.map +1 -0
- package/lib/common/utils.js +14 -0
- package/lib/common/utils.js.map +1 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +5 -0
- package/lib/index.js.map +1 -0
- package/package.json +33 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EditorActionRegistryImpl = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const di_1 = require("@opensumi/di");
|
|
6
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
7
|
+
const next_1 = require("@opensumi/ide-core-browser/lib/menu/next");
|
|
8
|
+
let EditorActionRegistryImpl = class EditorActionRegistryImpl extends ide_core_browser_1.Disposable {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this._cachedMenus = new Map();
|
|
12
|
+
}
|
|
13
|
+
registerEditorAction() {
|
|
14
|
+
this.logger.warn(new Error('registerEditorAction has been deprecated, use menu apis instead'));
|
|
15
|
+
return new ide_core_browser_1.Disposable();
|
|
16
|
+
}
|
|
17
|
+
getMenu(group) {
|
|
18
|
+
const key = group.currentFocusedEditor ? ('editor-menu-' + group.currentFocusedEditor.getId()) : ('editor-group-menu-' + group.name);
|
|
19
|
+
if (!this._cachedMenus.has(key)) {
|
|
20
|
+
const contextKeyService = group.currentFocusedEditor ? this.contextKeyService.createScoped(group.currentFocusedEditor.monacoEditor._contextKeyService) : group.contextKeyService;
|
|
21
|
+
const menus = this.registerDispose(this.menuService.createMenu(next_1.MenuId.EditorTitle, contextKeyService));
|
|
22
|
+
this._cachedMenus.set(key, menus);
|
|
23
|
+
menus.onDispose(() => {
|
|
24
|
+
if (this._cachedMenus.get(key) === menus) {
|
|
25
|
+
this._cachedMenus.delete(key);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
return this._cachedMenus.get(key);
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
(0, tslib_1.__decorate)([
|
|
33
|
+
(0, di_1.Autowired)(ide_core_browser_1.IContextKeyService),
|
|
34
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
35
|
+
], EditorActionRegistryImpl.prototype, "contextKeyService", void 0);
|
|
36
|
+
(0, tslib_1.__decorate)([
|
|
37
|
+
(0, di_1.Autowired)(next_1.AbstractMenuService),
|
|
38
|
+
(0, tslib_1.__metadata)("design:type", next_1.AbstractMenuService)
|
|
39
|
+
], EditorActionRegistryImpl.prototype, "menuService", void 0);
|
|
40
|
+
(0, tslib_1.__decorate)([
|
|
41
|
+
(0, di_1.Autowired)(ide_core_browser_1.ILogger),
|
|
42
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
43
|
+
], EditorActionRegistryImpl.prototype, "logger", void 0);
|
|
44
|
+
EditorActionRegistryImpl = (0, tslib_1.__decorate)([
|
|
45
|
+
(0, di_1.Injectable)()
|
|
46
|
+
], EditorActionRegistryImpl);
|
|
47
|
+
exports.EditorActionRegistryImpl = EditorActionRegistryImpl;
|
|
48
|
+
//# sourceMappingURL=editor.menu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor.menu.js","sourceRoot":"","sources":["../../../src/browser/menu/editor.menu.ts"],"names":[],"mappings":";;;;AAAA,qCAAqD;AAErD,iEAAkG;AAElG,mEAA8F;AAI9F,IAAa,wBAAwB,GAArC,MAAa,wBAAyB,SAAQ,6BAAU;IAAxD;;QAEU,iBAAY,GAAG,IAAI,GAAG,EAAiB,CAAC;IA+BlD,CAAC;IApBC,oBAAoB;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC,CAAC;QAC/F,OAAO,IAAI,6BAAU,EAAE,CAAC;IAC1B,CAAC;IAED,OAAO,CAAC,KAAmB;QACzB,MAAM,GAAG,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,KAAK,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QACrI,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC/B,MAAM,iBAAiB,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAE,KAAK,CAAC,oBAAoB,CAAC,YAAoB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAE,KAAqB,CAAC,iBAAiB,CAAC;YAC3M,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,aAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;YACvG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAClC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;gBACnB,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;oBACxC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;iBAC/B;YACH,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;IACrC,CAAC;CAEF,CAAA;AA5BC;IADC,IAAA,cAAS,EAAC,qCAAkB,CAAC;;mEACgB;AAG9C;IADC,IAAA,cAAS,EAAC,0BAAmB,CAAC;2CACD,0BAAmB;6DAAC;AAGlD;IADC,IAAA,cAAS,EAAC,0BAAO,CAAC;;wDACH;AAXL,wBAAwB;IADpC,IAAA,eAAU,GAAE;GACA,wBAAwB,CAiCpC;AAjCY,4DAAwB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AbstractContextMenuService, ICtxMenuRenderer } from '@opensumi/ide-core-browser/lib/menu/next';
|
|
2
|
+
import { URI } from '@opensumi/ide-core-common';
|
|
3
|
+
import { IEditorGroup } from '../../common';
|
|
4
|
+
import { IContextKeyService } from '@opensumi/ide-core-browser';
|
|
5
|
+
export declare class TabTitleMenuService {
|
|
6
|
+
ctxMenuService: AbstractContextMenuService;
|
|
7
|
+
ctxMenuRenderer: ICtxMenuRenderer;
|
|
8
|
+
contextKeyService: IContextKeyService;
|
|
9
|
+
private _editorTitleContextKey;
|
|
10
|
+
private get editorTitleContextKey();
|
|
11
|
+
show(x: number, y: number, uri: URI, group: IEditorGroup): void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=title-context.menu.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"title-context.menu.d.ts","sourceRoot":"","sources":["../../../src/browser/menu/title-context.menu.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAU,MAAM,0CAA0C,CAAC;AAChH,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,qBACa,mBAAmB;IAG9B,cAAc,EAAE,0BAA0B,CAAC;IAG3C,eAAe,EAAE,gBAAgB,CAAC;IAGlC,iBAAiB,EAAE,kBAAkB,CAAC;IAEtC,OAAO,CAAC,sBAAsB,CAAC;IAE/B,OAAO,KAAK,qBAAqB,GAKhC;IAED,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,YAAY;CAyBzD"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TabTitleMenuService = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const di_1 = require("@opensumi/di");
|
|
6
|
+
const next_1 = require("@opensumi/ide-core-browser/lib/menu/next");
|
|
7
|
+
const resource_1 = require("@opensumi/ide-core-browser/lib/contextkey/resource");
|
|
8
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
9
|
+
let TabTitleMenuService = class TabTitleMenuService {
|
|
10
|
+
get editorTitleContextKey() {
|
|
11
|
+
if (!this._editorTitleContextKey) {
|
|
12
|
+
this._editorTitleContextKey = this.contextKeyService.createKey('editorTitleContext', false);
|
|
13
|
+
}
|
|
14
|
+
return this._editorTitleContextKey;
|
|
15
|
+
}
|
|
16
|
+
show(x, y, uri, group) {
|
|
17
|
+
// 设置resourceScheme
|
|
18
|
+
const titleContext = group.contextKeyService.createScoped();
|
|
19
|
+
const resourceContext = new resource_1.ResourceContextKey(titleContext);
|
|
20
|
+
resourceContext.set(uri);
|
|
21
|
+
this.editorTitleContextKey.set(true);
|
|
22
|
+
const menus = this.ctxMenuService.createMenu({
|
|
23
|
+
id: next_1.MenuId.EditorTitleContext,
|
|
24
|
+
contextKeyService: titleContext,
|
|
25
|
+
});
|
|
26
|
+
const menuNodes = menus.getMergedMenuNodes();
|
|
27
|
+
menus.dispose();
|
|
28
|
+
titleContext.dispose();
|
|
29
|
+
this.ctxMenuRenderer.show({
|
|
30
|
+
anchor: { x, y },
|
|
31
|
+
menuNodes,
|
|
32
|
+
args: [{ uri, group }],
|
|
33
|
+
onHide: () => {
|
|
34
|
+
this.editorTitleContextKey.set(false);
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
(0, tslib_1.__decorate)([
|
|
40
|
+
(0, di_1.Autowired)(next_1.AbstractContextMenuService),
|
|
41
|
+
(0, tslib_1.__metadata)("design:type", next_1.AbstractContextMenuService)
|
|
42
|
+
], TabTitleMenuService.prototype, "ctxMenuService", void 0);
|
|
43
|
+
(0, tslib_1.__decorate)([
|
|
44
|
+
(0, di_1.Autowired)(next_1.ICtxMenuRenderer),
|
|
45
|
+
(0, tslib_1.__metadata)("design:type", next_1.ICtxMenuRenderer)
|
|
46
|
+
], TabTitleMenuService.prototype, "ctxMenuRenderer", void 0);
|
|
47
|
+
(0, tslib_1.__decorate)([
|
|
48
|
+
(0, di_1.Autowired)(ide_core_browser_1.IContextKeyService),
|
|
49
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
50
|
+
], TabTitleMenuService.prototype, "contextKeyService", void 0);
|
|
51
|
+
TabTitleMenuService = (0, tslib_1.__decorate)([
|
|
52
|
+
(0, di_1.Injectable)()
|
|
53
|
+
], TabTitleMenuService);
|
|
54
|
+
exports.TabTitleMenuService = TabTitleMenuService;
|
|
55
|
+
//# sourceMappingURL=title-context.menu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"title-context.menu.js","sourceRoot":"","sources":["../../../src/browser/menu/title-context.menu.ts"],"names":[],"mappings":";;;;AAAA,qCAAqD;AACrD,mEAAgH;AAIhH,iFAAwF;AACxF,iEAAgE;AAGhE,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAa9B,IAAY,qBAAqB;QAC/B,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE;YAChC,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;SAC7F;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IAED,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,GAAQ,EAAE,KAAmB;QACtD,mBAAmB;QACnB,MAAM,YAAY,GAAI,KAAqB,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;QAC7E,MAAM,eAAe,GAAG,IAAI,6BAAkB,CAAC,YAAY,CAAC,CAAC;QAC7D,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAErC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;YAC3C,EAAE,EAAE,aAAM,CAAC,kBAAkB;YAC7B,iBAAiB,EAAE,YAAY;SAChC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7C,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,YAAY,CAAC,OAAO,EAAE,CAAC;QAEvB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YACxB,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE;YAChB,SAAS;YACT,IAAI,EAAE,CAAC,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC;YACpB,MAAM,EAAE,GAAG,EAAE;gBACX,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACxC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CAEF,CAAA;AA1CC;IADC,IAAA,cAAS,EAAC,iCAA0B,CAAC;2CACtB,iCAA0B;2DAAC;AAG3C;IADC,IAAA,cAAS,EAAC,uBAAgB,CAAC;2CACX,uBAAgB;4DAAC;AAGlC;IADC,IAAA,cAAS,EAAC,qCAAkB,CAAC;;8DACQ;AAT3B,mBAAmB;IAD/B,IAAA,eAAU,GAAE;GACA,mBAAmB,CA6C/B;AA7CY,kDAAmB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { CommandContribution, CommandRegistry, IContextKeyService } from '@opensumi/ide-core-browser';
|
|
2
|
+
import { ICallHierarchyService } from '@opensumi/ide-monaco/lib/browser/contrib/callHierarchy';
|
|
3
|
+
import { BrowserEditorContribution, IEditorFeatureRegistry } from '../../types';
|
|
4
|
+
export declare const executePrepareCallHierarchyCommand: {
|
|
5
|
+
id: string;
|
|
6
|
+
};
|
|
7
|
+
export declare const executeProvideIncomingCallsCommand: {
|
|
8
|
+
id: string;
|
|
9
|
+
};
|
|
10
|
+
export declare const executeProvideOutgoingCallsCommand: {
|
|
11
|
+
id: string;
|
|
12
|
+
};
|
|
13
|
+
export declare class CallHierarchyContribution implements CommandContribution, BrowserEditorContribution {
|
|
14
|
+
private ctxHasProvider;
|
|
15
|
+
protected readonly contextKeyService: IContextKeyService;
|
|
16
|
+
protected readonly callHierarchyService: ICallHierarchyService;
|
|
17
|
+
registerCommands(commands: CommandRegistry): void;
|
|
18
|
+
registerEditorFeature(registry: IEditorFeatureRegistry): void;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=callHierarchy.contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callHierarchy.contribution.d.ts","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,mBAAmB,EAAE,eAAe,EAAS,kBAAkB,EAAoB,MAAM,4BAA4B,CAAC;AAGvI,OAAO,EAAoD,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAEjJ,OAAO,EAAE,yBAAyB,EAAW,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAEzF,eAAO,MAAM,kCAAkC;;CAE9C,CAAC;AAEF,eAAO,MAAM,kCAAkC;;CAE9C,CAAC;AAEF,eAAO,MAAM,kCAAkC;;CAE9C,CAAC;AAIF,qBACa,yBAA0B,YAAW,mBAAmB,EAAE,yBAAyB;IAE9F,OAAO,CAAC,cAAc,CAAuB;IAG7C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;IAGzD,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IAE/D,gBAAgB,CAAC,QAAQ,EAAE,eAAe;IAoB1C,qBAAqB,CAAC,QAAQ,EAAE,sBAAsB;CAkBvD"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CallHierarchyContribution = exports.executeProvideOutgoingCallsCommand = exports.executeProvideIncomingCallsCommand = exports.executePrepareCallHierarchyCommand = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const di_1 = require("@opensumi/di");
|
|
6
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
7
|
+
const raw_context_key_1 = require("@opensumi/ide-core-browser/lib/raw-context-key");
|
|
8
|
+
const callHierarchy_1 = require("@opensumi/ide-monaco/lib/browser/contrib/callHierarchy");
|
|
9
|
+
const types_1 = require("../../types");
|
|
10
|
+
exports.executePrepareCallHierarchyCommand = {
|
|
11
|
+
id: '_executePrepareCallHierarchy',
|
|
12
|
+
};
|
|
13
|
+
exports.executeProvideIncomingCallsCommand = {
|
|
14
|
+
id: '_executeProvideIncomingCalls',
|
|
15
|
+
};
|
|
16
|
+
exports.executeProvideOutgoingCallsCommand = {
|
|
17
|
+
id: '_executeProvideOutgoingCalls',
|
|
18
|
+
};
|
|
19
|
+
const _ctxHasCallHierarchyProvider = new raw_context_key_1.RawContextKey('editorHasCallHierarchyProvider', false);
|
|
20
|
+
let CallHierarchyContribution = class CallHierarchyContribution {
|
|
21
|
+
registerCommands(commands) {
|
|
22
|
+
commands.registerCommand(exports.executePrepareCallHierarchyCommand, {
|
|
23
|
+
execute: (resource, position) => {
|
|
24
|
+
return this.callHierarchyService.prepareCallHierarchyProvider(resource, position);
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
commands.registerCommand(exports.executeProvideIncomingCallsCommand, {
|
|
28
|
+
execute: (item) => {
|
|
29
|
+
return this.callHierarchyService.provideIncomingCalls(item);
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
commands.registerCommand(exports.executeProvideOutgoingCallsCommand, {
|
|
33
|
+
execute: (item) => {
|
|
34
|
+
return this.callHierarchyService.provideOutgoingCalls(item);
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
registerEditorFeature(registry) {
|
|
39
|
+
this.ctxHasProvider = _ctxHasCallHierarchyProvider.bind(this.contextKeyService);
|
|
40
|
+
registry.registerEditorFeatureContribution({
|
|
41
|
+
contribute: (editor) => {
|
|
42
|
+
const monacoEditor = editor.monacoEditor;
|
|
43
|
+
return ide_core_browser_1.Event.any(monacoEditor.onDidChangeModel, monacoEditor.onDidChangeModelLanguage, callHierarchy_1.CallHierarchyProviderRegistry.onDidChange)(() => {
|
|
44
|
+
if (monacoEditor.hasModel()) {
|
|
45
|
+
this.ctxHasProvider.set(callHierarchy_1.CallHierarchyProviderRegistry.has(monacoEditor.getModel()));
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
},
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
(0, tslib_1.__decorate)([
|
|
53
|
+
(0, di_1.Autowired)(ide_core_browser_1.IContextKeyService),
|
|
54
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
55
|
+
], CallHierarchyContribution.prototype, "contextKeyService", void 0);
|
|
56
|
+
(0, tslib_1.__decorate)([
|
|
57
|
+
(0, di_1.Autowired)(callHierarchy_1.ICallHierarchyService),
|
|
58
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
59
|
+
], CallHierarchyContribution.prototype, "callHierarchyService", void 0);
|
|
60
|
+
CallHierarchyContribution = (0, tslib_1.__decorate)([
|
|
61
|
+
(0, ide_core_browser_1.Domain)(ide_core_browser_1.CommandContribution, types_1.BrowserEditorContribution)
|
|
62
|
+
], CallHierarchyContribution);
|
|
63
|
+
exports.CallHierarchyContribution = CallHierarchyContribution;
|
|
64
|
+
//# sourceMappingURL=callHierarchy.contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callHierarchy.contribution.js","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.ts"],"names":[],"mappings":";;;;AAAA,qCAAyC;AACzC,iEAAuI;AAEvI,oFAA+E;AAC/E,0FAAiJ;AAEjJ,uCAAyF;AAE5E,QAAA,kCAAkC,GAAG;IAChD,EAAE,EAAE,8BAA8B;CACnC,CAAC;AAEW,QAAA,kCAAkC,GAAG;IAChD,EAAE,EAAE,8BAA8B;CACnC,CAAC;AAEW,QAAA,kCAAkC,GAAG;IAChD,EAAE,EAAE,8BAA8B;CACnC,CAAC;AAEF,MAAM,4BAA4B,GAAG,IAAI,+BAAa,CAAU,gCAAgC,EAAE,KAAK,CAAC,CAAC;AAGzG,IAAa,yBAAyB,GAAtC,MAAa,yBAAyB;IAUpC,gBAAgB,CAAC,QAAyB;QACxC,QAAQ,CAAC,eAAe,CAAC,0CAAkC,EAAE;YAC3D,OAAO,EAAE,CAAC,QAAa,EAAE,QAAkB,EAAE,EAAE;gBAC7C,OAAO,IAAI,CAAC,oBAAoB,CAAC,4BAA4B,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACpF,CAAC;SACF,CAAC,CAAC;QAEH,QAAQ,CAAC,eAAe,CAAC,0CAAkC,EAAE;YAC3D,OAAO,EAAE,CAAC,IAAuB,EAAE,EAAE;gBACnC,OAAO,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC;SACF,CAAC,CAAC;QAEH,QAAQ,CAAC,eAAe,CAAC,0CAAkC,EAAE;YAC3D,OAAO,EAAE,CAAC,IAAuB,EAAE,EAAE;gBACnC,OAAO,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,QAAgC;QACpD,IAAI,CAAC,cAAc,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAEhF,QAAQ,CAAC,iCAAiC,CAAC;YACzC,UAAU,EAAE,CAAC,MAAe,EAAE,EAAE;gBAC9B,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;gBACzC,OAAO,wBAAK,CAAC,GAAG,CACd,YAAY,CAAC,gBAAgB,EAC7B,YAAY,CAAC,wBAAwB,EACrC,6CAA6B,CAAC,WAAW,CAC1C,CAAC,GAAG,EAAE;oBACL,IAAI,YAAY,CAAC,QAAQ,EAAE,EAAE;wBAC3B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,6CAA6B,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;qBACrF;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA3CC;IADC,IAAA,cAAS,EAAC,qCAAkB,CAAC;;oEAC2B;AAGzD;IADC,IAAA,cAAS,EAAC,qCAAqB,CAAC;;uEAC8B;AARpD,yBAAyB;IADrC,IAAA,yBAAM,EAAC,sCAAmB,EAAE,iCAAyB,CAAC;GAC1C,yBAAyB,CAgDrC;AAhDY,8DAAyB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { CancellationToken, IDisposable, IPosition, Uri } from '@opensumi/ide-core-common';
|
|
2
|
+
import { CallHierarchyItem, CallHierarchyProvider, ICallHierarchyService, IncomingCall, OutgoingCall } from '@opensumi/ide-monaco/lib/browser/contrib/callHierarchy';
|
|
3
|
+
import { ITextModel, Position } from '@opensumi/ide-monaco/lib/browser/monaco-api/types';
|
|
4
|
+
import { IEditorDocumentModelService } from '../../doc-model/types';
|
|
5
|
+
declare type ProviderResult<T> = T | undefined | null | Thenable<T | undefined | null>;
|
|
6
|
+
declare class RefCountedDisposabled {
|
|
7
|
+
private readonly _disposable;
|
|
8
|
+
private _counter;
|
|
9
|
+
constructor(_disposable: IDisposable, _counter?: number);
|
|
10
|
+
acquire(): this;
|
|
11
|
+
release(): this;
|
|
12
|
+
}
|
|
13
|
+
export declare class CallHierarchyModel {
|
|
14
|
+
readonly id: string;
|
|
15
|
+
readonly provider: CallHierarchyProvider;
|
|
16
|
+
readonly roots: CallHierarchyItem[];
|
|
17
|
+
readonly ref: RefCountedDisposabled;
|
|
18
|
+
static create(model: ITextModel, position: IPosition, token: CancellationToken): Promise<CallHierarchyModel | undefined>;
|
|
19
|
+
readonly root: CallHierarchyItem;
|
|
20
|
+
private constructor();
|
|
21
|
+
dispose(): void;
|
|
22
|
+
fork(item: CallHierarchyItem): CallHierarchyModel;
|
|
23
|
+
resolveIncomingCalls(item: CallHierarchyItem, token: CancellationToken): Promise<IncomingCall[]>;
|
|
24
|
+
resolveOutgoingCalls(item: CallHierarchyItem, token: CancellationToken): Promise<OutgoingCall[]>;
|
|
25
|
+
}
|
|
26
|
+
export declare class CallHierarchyService implements ICallHierarchyService {
|
|
27
|
+
protected readonly modelService: IEditorDocumentModelService;
|
|
28
|
+
private models;
|
|
29
|
+
registerCallHierarchyProvider(selector: any, provider: CallHierarchyProvider): void;
|
|
30
|
+
prepareCallHierarchyProvider(resource: Uri, position: Position): Promise<CallHierarchyItem[]>;
|
|
31
|
+
provideIncomingCalls(item: CallHierarchyItem): ProviderResult<IncomingCall[]>;
|
|
32
|
+
provideOutgoingCalls(item: CallHierarchyItem): ProviderResult<OutgoingCall[]>;
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=callHierarchy.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callHierarchy.service.d.ts","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/callHierarchy/callHierarchy.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,SAAS,EAAmD,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAC5I,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAiC,qBAAqB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,wDAAwD,CAAC;AACpM,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAEzF,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AAEpE,OAAO,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;AAOvF,cAAM,qBAAqB;IAEvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ;gBADC,WAAW,EAAE,WAAW,EACjC,QAAQ,SAAI;IAGtB,OAAO;IAKP,OAAO;CAMR;AAED,qBAAa,kBAAkB;IAyB3B,QAAQ,CAAC,EAAE,EAAE,MAAM;IACnB,QAAQ,CAAC,QAAQ,EAAE,qBAAqB;IACxC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,EAAE;IACnC,QAAQ,CAAC,GAAG,EAAE,qBAAqB;WA3BxB,MAAM,CACjB,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAiB1C,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IAEjC,OAAO;IASP,OAAO,IAAI,IAAI;IAIf,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,kBAAkB;IAS3C,oBAAoB,CACxB,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,YAAY,EAAE,CAAC;IAYpB,oBAAoB,CACxB,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,YAAY,EAAE,CAAC;CAW3B;AAED,qBACa,oBAAqB,YAAW,qBAAqB;IAGhE,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,2BAA2B,CAAC;IAE7D,OAAO,CAAC,MAAM,CAA0E;IAExF,6BAA6B,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,qBAAqB;IAItE,4BAA4B,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ;IAgCpE,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,cAAc,CAAC,YAAY,EAAE,CAAC;IAS7E,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,cAAc,CAAC,YAAY,EAAE,CAAC;CAS9E"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CallHierarchyService = exports.CallHierarchyModel = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const di_1 = require("@opensumi/di");
|
|
6
|
+
const ide_core_common_1 = require("@opensumi/ide-core-common");
|
|
7
|
+
const callHierarchy_1 = require("@opensumi/ide-monaco/lib/browser/contrib/callHierarchy");
|
|
8
|
+
const types_1 = require("../../doc-model/types");
|
|
9
|
+
/*---------------------------------------------------------------------------------------------
|
|
10
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
11
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
12
|
+
*--------------------------------------------------------------------------------------------*/
|
|
13
|
+
// Some code copued and modified from https://github.com/microsoft/vscode/tree/main/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.ts
|
|
14
|
+
class RefCountedDisposabled {
|
|
15
|
+
constructor(_disposable, _counter = 1) {
|
|
16
|
+
this._disposable = _disposable;
|
|
17
|
+
this._counter = _counter;
|
|
18
|
+
}
|
|
19
|
+
acquire() {
|
|
20
|
+
this._counter++;
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
23
|
+
release() {
|
|
24
|
+
if (--this._counter === 0) {
|
|
25
|
+
this._disposable.dispose();
|
|
26
|
+
}
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
class CallHierarchyModel {
|
|
31
|
+
constructor(id, provider, roots, ref) {
|
|
32
|
+
this.id = id;
|
|
33
|
+
this.provider = provider;
|
|
34
|
+
this.roots = roots;
|
|
35
|
+
this.ref = ref;
|
|
36
|
+
this.root = roots[0];
|
|
37
|
+
}
|
|
38
|
+
static async create(model, position, token) {
|
|
39
|
+
const [provider] = callHierarchy_1.CallHierarchyProviderRegistry.ordered(model);
|
|
40
|
+
if (!provider) {
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
const session = await provider.prepareCallHierarchy(model, position, token);
|
|
44
|
+
if (!session) {
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
return new CallHierarchyModel(session.roots.reduce((p, c) => p + c._sessionId, ''), provider, session.roots, new RefCountedDisposabled(session));
|
|
48
|
+
}
|
|
49
|
+
dispose() {
|
|
50
|
+
this.ref.release();
|
|
51
|
+
}
|
|
52
|
+
fork(item) {
|
|
53
|
+
const that = this;
|
|
54
|
+
return new (class extends CallHierarchyModel {
|
|
55
|
+
constructor() {
|
|
56
|
+
super(that.id, that.provider, [item], that.ref.acquire());
|
|
57
|
+
}
|
|
58
|
+
})();
|
|
59
|
+
}
|
|
60
|
+
async resolveIncomingCalls(item, token) {
|
|
61
|
+
try {
|
|
62
|
+
const result = await this.provider.provideIncomingCalls(item, token);
|
|
63
|
+
if ((0, ide_core_common_1.isNonEmptyArray)(result)) {
|
|
64
|
+
return result;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
catch (e) {
|
|
68
|
+
(0, ide_core_common_1.onUnexpectedExternalError)(e);
|
|
69
|
+
}
|
|
70
|
+
return [];
|
|
71
|
+
}
|
|
72
|
+
async resolveOutgoingCalls(item, token) {
|
|
73
|
+
try {
|
|
74
|
+
const result = await this.provider.provideOutgoingCalls(item, token);
|
|
75
|
+
if ((0, ide_core_common_1.isNonEmptyArray)(result)) {
|
|
76
|
+
return result;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
catch (e) {
|
|
80
|
+
(0, ide_core_common_1.onUnexpectedExternalError)(e);
|
|
81
|
+
}
|
|
82
|
+
return [];
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
exports.CallHierarchyModel = CallHierarchyModel;
|
|
86
|
+
let CallHierarchyService = class CallHierarchyService {
|
|
87
|
+
constructor() {
|
|
88
|
+
this.models = new Map();
|
|
89
|
+
}
|
|
90
|
+
registerCallHierarchyProvider(selector, provider) {
|
|
91
|
+
callHierarchy_1.CallHierarchyProviderRegistry.register(selector, provider);
|
|
92
|
+
}
|
|
93
|
+
async prepareCallHierarchyProvider(resource, position) {
|
|
94
|
+
var _a;
|
|
95
|
+
let textModel = (_a = this.modelService.getModelReference(ide_core_common_1.URI.parse(resource.toString()))) === null || _a === void 0 ? void 0 : _a.instance.getMonacoModel();
|
|
96
|
+
let textModelReference;
|
|
97
|
+
if (!textModel) {
|
|
98
|
+
const result = await this.modelService.createModelReference(ide_core_common_1.URI.parse(resource.toString()));
|
|
99
|
+
textModel = result.instance.getMonacoModel();
|
|
100
|
+
textModelReference = result;
|
|
101
|
+
}
|
|
102
|
+
try {
|
|
103
|
+
const model = await CallHierarchyModel.create(textModel, position, ide_core_common_1.CancellationToken.None);
|
|
104
|
+
if (!model) {
|
|
105
|
+
return [];
|
|
106
|
+
}
|
|
107
|
+
//
|
|
108
|
+
this.models.set(model.id, model);
|
|
109
|
+
this.models.forEach((value, key, map) => {
|
|
110
|
+
if (map.size > 10) {
|
|
111
|
+
value.dispose();
|
|
112
|
+
this.models.delete(key);
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
return [model.root];
|
|
116
|
+
}
|
|
117
|
+
finally {
|
|
118
|
+
textModelReference === null || textModelReference === void 0 ? void 0 : textModelReference.dispose();
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
provideIncomingCalls(item) {
|
|
122
|
+
const model = this.models.get(item._sessionId);
|
|
123
|
+
if (!model) {
|
|
124
|
+
return undefined;
|
|
125
|
+
}
|
|
126
|
+
return model.resolveIncomingCalls(item, ide_core_common_1.CancellationToken.None);
|
|
127
|
+
}
|
|
128
|
+
provideOutgoingCalls(item) {
|
|
129
|
+
const model = this.models.get(item._sessionId);
|
|
130
|
+
if (!model) {
|
|
131
|
+
return undefined;
|
|
132
|
+
}
|
|
133
|
+
return model.resolveOutgoingCalls(item, ide_core_common_1.CancellationToken.None);
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
(0, tslib_1.__decorate)([
|
|
137
|
+
(0, di_1.Autowired)(types_1.IEditorDocumentModelService),
|
|
138
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
139
|
+
], CallHierarchyService.prototype, "modelService", void 0);
|
|
140
|
+
CallHierarchyService = (0, tslib_1.__decorate)([
|
|
141
|
+
(0, di_1.Injectable)()
|
|
142
|
+
], CallHierarchyService);
|
|
143
|
+
exports.CallHierarchyService = CallHierarchyService;
|
|
144
|
+
//# sourceMappingURL=callHierarchy.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"callHierarchy.service.js","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/callHierarchy/callHierarchy.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { Command, Emitter, CommandRegistry, CommandHandler, CommandService, IReporterService } from '@opensumi/ide-core-browser';
|
|
2
|
+
import { EditorExtensionsRegistry, ICommandEvent, ICommandService, IMonacoActionRegistry, IMonacoCommandService, IMonacoCommandsRegistry, MonacoEditorCommandHandler } from '@opensumi/ide-monaco/lib/browser/contrib/command';
|
|
3
|
+
import { Event, ICodeEditor, IEvent } from '@opensumi/ide-monaco/lib/browser/monaco-api/types';
|
|
4
|
+
/**
|
|
5
|
+
* monaco 命令分两种
|
|
6
|
+
* 一种命令不需要带参数,是封装过的命令,即为 action
|
|
7
|
+
* 一种是正常命令,执行可以带参数
|
|
8
|
+
*/
|
|
9
|
+
export declare enum MonacoCommandType {
|
|
10
|
+
ACTION = 0,
|
|
11
|
+
COMMAND = 1
|
|
12
|
+
}
|
|
13
|
+
export declare type MonacoCommand = Command & {
|
|
14
|
+
type: MonacoCommandType;
|
|
15
|
+
};
|
|
16
|
+
export declare class MonacoCommandService implements IMonacoCommandService {
|
|
17
|
+
_serviceBrand: undefined;
|
|
18
|
+
private _onDidExecuteCommand;
|
|
19
|
+
onDidExecuteCommand: Event<ICommandEvent>;
|
|
20
|
+
private delegate;
|
|
21
|
+
/**
|
|
22
|
+
* 事件触发器,在执行命令的时候会触发
|
|
23
|
+
* @type {Emitter<ICommandEvent>}
|
|
24
|
+
* @memberof MonacoCommandService
|
|
25
|
+
*/
|
|
26
|
+
_onWillExecuteCommand: Emitter<ICommandEvent>;
|
|
27
|
+
private logger;
|
|
28
|
+
commandRegistry: CommandRegistry;
|
|
29
|
+
commandService: CommandService;
|
|
30
|
+
reporterService: IReporterService;
|
|
31
|
+
/**
|
|
32
|
+
* 设置委托对象
|
|
33
|
+
* @param delegate 真正要执行 monaco 内部 command 的 commandSerice
|
|
34
|
+
*/
|
|
35
|
+
setDelegate(delegate: ICommandService): void;
|
|
36
|
+
get onWillExecuteCommand(): IEvent<ICommandEvent>;
|
|
37
|
+
/**
|
|
38
|
+
* 执行命令
|
|
39
|
+
* 先去全局 commands 里找,若没有尝试执行 delegate 的 command
|
|
40
|
+
* @param commandId
|
|
41
|
+
* @param args
|
|
42
|
+
*/
|
|
43
|
+
executeCommand<T>(commandId: string, ...args: any[]): Promise<T | undefined>;
|
|
44
|
+
}
|
|
45
|
+
export declare class MonacoCommandRegistry implements IMonacoCommandsRegistry {
|
|
46
|
+
private commands;
|
|
47
|
+
private workbenchEditorService;
|
|
48
|
+
private editorCollectionService;
|
|
49
|
+
/**
|
|
50
|
+
* 校验 command id 是否是 monaco id
|
|
51
|
+
* @param command 要校验的 id
|
|
52
|
+
* @returns 若找到则为转换过 monaco id,否则为 undefined
|
|
53
|
+
*/
|
|
54
|
+
validate(command: string): string | undefined;
|
|
55
|
+
/**
|
|
56
|
+
* 注册 monaco 命令
|
|
57
|
+
* 命令 id 会统一加入 monaco 前缀
|
|
58
|
+
* monaco handler 会注入当前 editor 参数
|
|
59
|
+
* @param command 注册的命令
|
|
60
|
+
* @param handler 命令处理函数
|
|
61
|
+
*/
|
|
62
|
+
registerCommand(command: Command, handler: MonacoEditorCommandHandler): void;
|
|
63
|
+
/**
|
|
64
|
+
* 注册处理函数函数
|
|
65
|
+
* monaco handler 会注入当前 editor 参数
|
|
66
|
+
* @param command 命令 id
|
|
67
|
+
* @param handler 命令处理函数
|
|
68
|
+
*/
|
|
69
|
+
registerHandler(commandID: string, handler: MonacoEditorCommandHandler): void;
|
|
70
|
+
/**
|
|
71
|
+
* 包装 monaco 命令处理函数为内部处理函数
|
|
72
|
+
* @param monacoHandler 要处理的 monaco 命令处理函数
|
|
73
|
+
*/
|
|
74
|
+
protected newHandler(monacoHandler: MonacoEditorCommandHandler): CommandHandler;
|
|
75
|
+
/**
|
|
76
|
+
* 给 monacoHandler 传递 editor 参数
|
|
77
|
+
* @param monacoHandler 要处理的 monaco 命令函数
|
|
78
|
+
* @param args 要透传的参数
|
|
79
|
+
*/
|
|
80
|
+
protected execute(monacoHandler: MonacoEditorCommandHandler, ...args: any[]): any;
|
|
81
|
+
/**
|
|
82
|
+
* 获取当前活动的编辑器
|
|
83
|
+
* 此处的活动编辑器和 workbenchEditorService.currentEditor 的概念不同,对于diffEditor,需要获取确实的那个editor而不是modifiedEditor
|
|
84
|
+
*/
|
|
85
|
+
protected getActiveCodeEditor(): ICodeEditor | undefined;
|
|
86
|
+
}
|
|
87
|
+
export declare class MonacoActionRegistry implements IMonacoActionRegistry {
|
|
88
|
+
private static COMMON_ACTIONS;
|
|
89
|
+
private static CONVERT_MONACO_COMMAND_ARGS;
|
|
90
|
+
private static CONVERT_MONACO_ACTIONS_TO_CONTRIBUTION_ID;
|
|
91
|
+
/**
|
|
92
|
+
* 要排除注册的 Action
|
|
93
|
+
*
|
|
94
|
+
* @protected
|
|
95
|
+
* @memberof MonacoActionModule
|
|
96
|
+
*/
|
|
97
|
+
protected static readonly EXCLUDE_ACTIONS: string[];
|
|
98
|
+
monacoCommandRegistry: MonacoCommandRegistry;
|
|
99
|
+
private readonly overrideServiceRegistry;
|
|
100
|
+
get globalInstantiationService(): import("@opensumi/monaco-editor-core/esm/vs/platform/instantiation/common/instantiation").IInstantiationService;
|
|
101
|
+
get monacoEditorRegistry(): typeof EditorExtensionsRegistry;
|
|
102
|
+
get monacoCommands(): import("@opensumi/monaco-editor-core/esm/vs/platform/commands/common/commands").ICommandsMap;
|
|
103
|
+
registerMonacoActions(): void;
|
|
104
|
+
/**
|
|
105
|
+
* monaco 内部有些 contribution 既注册了 actions 又注册了 commands,在这里优先调取 commands
|
|
106
|
+
*/
|
|
107
|
+
private actAndComHandler;
|
|
108
|
+
/**
|
|
109
|
+
* 是否是 _execute 开头的 monaco 命令
|
|
110
|
+
*/
|
|
111
|
+
private isInternalExecuteCommand;
|
|
112
|
+
/**
|
|
113
|
+
* monaco 内部会判断 uri 执行是否是 Uri 实例,执行改类命令统一转换一下
|
|
114
|
+
* @param args
|
|
115
|
+
*/
|
|
116
|
+
private processInternalCommandArgument;
|
|
117
|
+
/**
|
|
118
|
+
* 调用 monaco 内部 _commandService 执行命令
|
|
119
|
+
* 实际执行的就是 MonacoCommandService
|
|
120
|
+
* @param commandId 命令名称
|
|
121
|
+
*/
|
|
122
|
+
protected newCommandHandler(commandId: string): MonacoEditorCommandHandler;
|
|
123
|
+
/**
|
|
124
|
+
* 包装 action 为命令处理函数
|
|
125
|
+
* 调用 getAction 执行 run 命令
|
|
126
|
+
* @param id action id
|
|
127
|
+
*/
|
|
128
|
+
protected newActionHandler(id: string): MonacoEditorCommandHandler;
|
|
129
|
+
/**
|
|
130
|
+
* 执行 action
|
|
131
|
+
* @param id 要执行的 action
|
|
132
|
+
* @param editor 执行 action 的 editor,默认为当前 editor
|
|
133
|
+
*/
|
|
134
|
+
protected runAction(id: string, editor: ICodeEditor): Promise<void>;
|
|
135
|
+
/**
|
|
136
|
+
* 生成键盘处理函数
|
|
137
|
+
* @param action 对应 action
|
|
138
|
+
*/
|
|
139
|
+
protected newKeyboardHandler(action: string): MonacoEditorCommandHandler;
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=command.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.service.d.ts","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/command/command.service.ts"],"names":[],"mappings":"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"}
|