@opensumi/ide-outline 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.
Files changed (55) hide show
  1. package/lib/browser/index.d.ts +6 -0
  2. package/lib/browser/index.d.ts.map +1 -0
  3. package/lib/browser/index.js +41 -0
  4. package/lib/browser/index.js.map +1 -0
  5. package/lib/browser/outline-node.d.ts +18 -0
  6. package/lib/browser/outline-node.d.ts.map +1 -0
  7. package/lib/browser/outline-node.define.d.ts +28 -0
  8. package/lib/browser/outline-node.define.d.ts.map +1 -0
  9. package/lib/browser/outline-node.define.js +59 -0
  10. package/lib/browser/outline-node.define.js.map +1 -0
  11. package/lib/browser/outline-node.js +78 -0
  12. package/lib/browser/outline-node.js.map +1 -0
  13. package/lib/browser/outline-node.module.less +220 -0
  14. package/lib/browser/outline.contribution.d.ts +12 -0
  15. package/lib/browser/outline.contribution.d.ts.map +1 -0
  16. package/lib/browser/outline.contribution.js +125 -0
  17. package/lib/browser/outline.contribution.js.map +1 -0
  18. package/lib/browser/outline.d.ts +6 -0
  19. package/lib/browser/outline.d.ts.map +1 -0
  20. package/lib/browser/outline.js +79 -0
  21. package/lib/browser/outline.js.map +1 -0
  22. package/lib/browser/outline.module.less +11 -0
  23. package/lib/browser/services/outline-contextkey.service.d.ts +8 -0
  24. package/lib/browser/services/outline-contextkey.service.d.ts.map +1 -0
  25. package/lib/browser/services/outline-contextkey.service.js +25 -0
  26. package/lib/browser/services/outline-contextkey.service.js.map +1 -0
  27. package/lib/browser/services/outline-decoration.service.d.ts +14 -0
  28. package/lib/browser/services/outline-decoration.service.d.ts.map +1 -0
  29. package/lib/browser/services/outline-decoration.service.js +56 -0
  30. package/lib/browser/services/outline-decoration.service.js.map +1 -0
  31. package/lib/browser/services/outline-event.service.d.ts +21 -0
  32. package/lib/browser/services/outline-event.service.d.ts.map +1 -0
  33. package/lib/browser/services/outline-event.service.js +57 -0
  34. package/lib/browser/services/outline-event.service.js.map +1 -0
  35. package/lib/browser/services/outline-model.d.ts +12 -0
  36. package/lib/browser/services/outline-model.d.ts.map +1 -0
  37. package/lib/browser/services/outline-model.js +43 -0
  38. package/lib/browser/services/outline-model.js.map +1 -0
  39. package/lib/browser/services/outline-model.service.d.ts +83 -0
  40. package/lib/browser/services/outline-model.service.d.ts.map +1 -0
  41. package/lib/browser/services/outline-model.service.js +508 -0
  42. package/lib/browser/services/outline-model.service.js.map +1 -0
  43. package/lib/browser/services/outline-tree.service.d.ts +33 -0
  44. package/lib/browser/services/outline-tree.service.d.ts.map +1 -0
  45. package/lib/browser/services/outline-tree.service.js +143 -0
  46. package/lib/browser/services/outline-tree.service.js.map +1 -0
  47. package/lib/common/index.d.ts +26 -0
  48. package/lib/common/index.d.ts.map +1 -0
  49. package/lib/common/index.js +5 -0
  50. package/lib/common/index.js.map +1 -0
  51. package/lib/index.d.ts +2 -0
  52. package/lib/index.d.ts.map +1 -0
  53. package/lib/index.js +5 -0
  54. package/lib/index.js.map +1 -0
  55. package/package.json +29 -0
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutlinePanel = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = (0, tslib_1.__importDefault)(require("react"));
6
+ const react_hooks_1 = require("@opensumi/ide-core-browser/lib/react-hooks");
7
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
8
+ const ide_components_1 = require("@opensumi/ide-components");
9
+ const outline_module_less_1 = (0, tslib_1.__importDefault)(require("./outline.module.less"));
10
+ const outline_model_service_1 = require("./services/outline-model.service");
11
+ const outline_node_1 = require("./outline-node");
12
+ const OutlinePanel = ({ viewState, }) => {
13
+ const [model, setModel] = react_1.default.useState();
14
+ const { width, height } = viewState;
15
+ const wrapperRef = react_1.default.createRef();
16
+ const outlineModelService = (0, react_hooks_1.useInjectable)(outline_model_service_1.OutlineModelService);
17
+ const { decorationService, commandService } = outlineModelService;
18
+ const handleTreeReady = (handle) => {
19
+ outlineModelService.handleTreeHandler(Object.assign(Object.assign({}, handle), { getModel: () => outlineModelService.treeModel, hasDirectFocus: () => wrapperRef.current === document.activeElement }));
20
+ };
21
+ const handleItemClicked = (ev, item, type) => {
22
+ // 阻止点击事件冒泡
23
+ ev.stopPropagation();
24
+ const { handleItemClick } = outlineModelService;
25
+ if (!item) {
26
+ return;
27
+ }
28
+ handleItemClick(item, type);
29
+ };
30
+ const handleTwistierClicked = (ev, item, type) => {
31
+ // 阻止点击事件冒泡
32
+ ev.stopPropagation();
33
+ const { toggleDirectory } = outlineModelService;
34
+ if (!item) {
35
+ return;
36
+ }
37
+ toggleDirectory(item);
38
+ };
39
+ const handleOuterClick = (ev) => {
40
+ // 空白区域点击,取消焦点状态
41
+ const { enactiveNodeDecoration } = outlineModelService;
42
+ enactiveNodeDecoration();
43
+ };
44
+ react_1.default.useEffect(() => {
45
+ setModel(outlineModelService.treeModel);
46
+ const disposable = outlineModelService.onDidUpdateTreeModel(async (model) => {
47
+ setModel(model);
48
+ });
49
+ return () => {
50
+ disposable.dispose();
51
+ };
52
+ }, []);
53
+ react_1.default.useEffect(() => {
54
+ var _a;
55
+ const handleBlur = () => {
56
+ outlineModelService.handleTreeBlur();
57
+ };
58
+ (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener('blur', handleBlur, true);
59
+ return () => {
60
+ var _a;
61
+ (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('blur', handleBlur, true);
62
+ outlineModelService.handleTreeBlur();
63
+ };
64
+ }, [wrapperRef.current]);
65
+ const renderTreeNode = react_1.default.useCallback((props) => react_1.default.createElement(outline_node_1.OutlineNode, { item: props.item, itemType: props.itemType, decorationService: decorationService, commandService: commandService, decorations: outlineModelService.decorations.getDecorations(props.item), onClick: handleItemClicked, onTwistierClick: handleTwistierClicked, defaultLeftPadding: 8, leftPadding: 8 }), [model]);
66
+ const renderContent = () => {
67
+ if (!model) {
68
+ return react_1.default.createElement("span", { className: outline_module_less_1.default.outline_empty_text }, (0, ide_core_browser_1.localize)('outline.noinfo'));
69
+ }
70
+ else {
71
+ return react_1.default.createElement(ide_components_1.RecycleTree, { height: height, width: width, itemHeight: outline_node_1.OUTLINE_TREE_NODE_HEIGHT, onReady: handleTreeReady, model: model, placeholder: () => {
72
+ return react_1.default.createElement("span", { className: outline_module_less_1.default.outline_empty_text }, (0, ide_core_browser_1.localize)('outline.noinfo'));
73
+ } }, renderTreeNode);
74
+ }
75
+ };
76
+ return react_1.default.createElement("div", { className: outline_module_less_1.default.outline_container, tabIndex: -1, ref: wrapperRef, onClick: handleOuterClick }, renderContent());
77
+ };
78
+ exports.OutlinePanel = OutlinePanel;
79
+ //# sourceMappingURL=outline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline.js","sourceRoot":"","sources":["../../src/browser/outline.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ .outline_empty_text {
2
+ display: block;
3
+ text-align: center;
4
+ padding-top: 12px;
5
+ user-select: none;
6
+ color: var(--descriptionForeground);
7
+ }
8
+
9
+ .outline_container {
10
+ overflow: hidden;
11
+ }
@@ -0,0 +1,8 @@
1
+ import { IContextKeyService, IContextKey } from '@opensumi/ide-core-browser';
2
+ export declare class OutlineContextKeyService {
3
+ private readonly globalContextKeyService;
4
+ readonly outlineSortTypeContext: IContextKey<number>;
5
+ readonly outlineFollowCursorContext: IContextKey<boolean>;
6
+ constructor(contextKeyService: IContextKeyService);
7
+ }
8
+ //# sourceMappingURL=outline-contextkey.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-contextkey.service.d.ts","sourceRoot":"","sources":["../../../src/browser/services/outline-contextkey.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAG7E,qBACa,wBAAwB;IAGnC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAqB;IAE7D,SAAgB,sBAAsB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5D,SAAgB,0BAA0B,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;gBAEzC,iBAAiB,EAAE,kBAAkB;CAK9D"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutlineContextKeyService = 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 contextkey_1 = require("@opensumi/ide-core-browser/lib/contextkey");
8
+ let OutlineContextKeyService = class OutlineContextKeyService {
9
+ constructor(contextKeyService) {
10
+ contextKeyService = contextKeyService || this.globalContextKeyService;
11
+ this.outlineSortTypeContext = contextkey_1.OutlineSortTypeContext.bind(contextKeyService);
12
+ this.outlineFollowCursorContext = contextkey_1.OutlineFollowCursorContext.bind(contextKeyService);
13
+ }
14
+ };
15
+ (0, tslib_1.__decorate)([
16
+ (0, di_1.Autowired)(ide_core_browser_1.IContextKeyService),
17
+ (0, tslib_1.__metadata)("design:type", Object)
18
+ ], OutlineContextKeyService.prototype, "globalContextKeyService", void 0);
19
+ OutlineContextKeyService = (0, tslib_1.__decorate)([
20
+ (0, di_1.Injectable)(),
21
+ (0, tslib_1.__param)(0, (0, di_1.Optional)()),
22
+ (0, tslib_1.__metadata)("design:paramtypes", [Object])
23
+ ], OutlineContextKeyService);
24
+ exports.OutlineContextKeyService = OutlineContextKeyService;
25
+ //# sourceMappingURL=outline-contextkey.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-contextkey.service.js","sourceRoot":"","sources":["../../../src/browser/services/outline-contextkey.service.ts"],"names":[],"mappings":";;;;AAAA,qCAA+D;AAC/D,iEAA6E;AAC7E,0EAA+G;AAG/G,IAAa,wBAAwB,GAArC,MAAa,wBAAwB;IAQnC,YAAwB,iBAAqC;QAC3D,iBAAiB,GAAG,iBAAiB,IAAI,IAAI,CAAC,uBAAuB,CAAC;QACtE,IAAI,CAAC,sBAAsB,GAAG,mCAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC7E,IAAI,CAAC,0BAA0B,GAAG,uCAA0B,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACvF,CAAC;CACF,CAAA;AAVC;IADC,IAAA,cAAS,EAAC,qCAAkB,CAAC;;yEAC+B;AAHlD,wBAAwB;IADpC,IAAA,eAAU,GAAE;IASE,wBAAA,IAAA,aAAQ,GAAE,CAAA;;GARZ,wBAAwB,CAapC;AAbY,4DAAwB"}
@@ -0,0 +1,14 @@
1
+ import { URI } from '@opensumi/ide-core-browser';
2
+ import { OutlineTreeNode } from '../outline-node.define';
3
+ export declare class OutlineDecorationService {
4
+ private markerManager;
5
+ private themeService;
6
+ private _diagnosisInfo;
7
+ updateDiagnosisInfo(uri?: URI): void;
8
+ getDecoration(node: OutlineTreeNode): {
9
+ color: string | undefined;
10
+ tooltip: string | undefined;
11
+ badge: string;
12
+ };
13
+ }
14
+ //# sourceMappingURL=outline-decoration.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-decoration.service.d.ts","sourceRoot":"","sources":["../../../src/browser/services/outline-decoration.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAA0C,MAAM,4BAA4B,CAAC;AAGzF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,qBACa,wBAAwB;IAEnC,OAAO,CAAC,aAAa,CAAgB;IAGrC,OAAO,CAAC,YAAY,CAAgB;IAEpC,OAAO,CAAC,cAAc,CAAwB;IAE9C,mBAAmB,CAAC,GAAG,CAAC,EAAE,GAAG;IAI7B,aAAa,CAAC,IAAI,EAAE,eAAe;;;;;CA2BpC"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutlineDecorationService = 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 ide_theme_1 = require("@opensumi/ide-theme");
8
+ let OutlineDecorationService = class OutlineDecorationService {
9
+ constructor() {
10
+ this._diagnosisInfo = [];
11
+ }
12
+ updateDiagnosisInfo(uri) {
13
+ this._diagnosisInfo = uri ? this.markerManager.getMarkers({ resource: uri.toString(), opened: true }) : [];
14
+ }
15
+ getDecoration(node) {
16
+ const markers = [];
17
+ let topMarker;
18
+ // 根据 node.raw.range 判断相交情况
19
+ // 这里的相交判断实际上可以做一下数据裁剪
20
+ const diagnosisInfos = this._diagnosisInfo.filter((marker) => {
21
+ if (marker.startLineNumber <= node.raw.range.startLineNumber && marker.endLineNumber >= node.raw.range.startLineNumber) {
22
+ return true;
23
+ }
24
+ else if (node.raw.range.startLineNumber <= marker.startLineNumber && node.raw.range.endLineNumber >= marker.startLineNumber) {
25
+ return true;
26
+ }
27
+ return false;
28
+ });
29
+ for (const marker of diagnosisInfos) {
30
+ if (marker.severity === ide_core_browser_1.MarkerSeverity.Error || marker.severity === ide_core_browser_1.MarkerSeverity.Warning) {
31
+ markers.push(marker);
32
+ }
33
+ if (!topMarker || marker.severity > topMarker.severity) {
34
+ topMarker = marker;
35
+ }
36
+ }
37
+ return {
38
+ color: ((topMarker === null || topMarker === void 0 ? void 0 : topMarker.severity) === ide_core_browser_1.MarkerSeverity.Error || (topMarker === null || topMarker === void 0 ? void 0 : topMarker.severity) === ide_core_browser_1.MarkerSeverity.Warning) ? this.themeService.getColor({ id: topMarker.severity === ide_core_browser_1.MarkerSeverity.Error ? ide_theme_1.listErrorForeground : ide_theme_1.listWarningForeground }) : undefined,
39
+ tooltip: topMarker === null || topMarker === void 0 ? void 0 : topMarker.message,
40
+ badge: markers.length > 0 ? (markers.length > 9 ? '9+' : markers.length + '') : '',
41
+ };
42
+ }
43
+ };
44
+ (0, tslib_1.__decorate)([
45
+ (0, di_1.Autowired)(),
46
+ (0, tslib_1.__metadata)("design:type", ide_core_browser_1.MarkerManager)
47
+ ], OutlineDecorationService.prototype, "markerManager", void 0);
48
+ (0, tslib_1.__decorate)([
49
+ (0, di_1.Autowired)(ide_theme_1.IThemeService),
50
+ (0, tslib_1.__metadata)("design:type", Object)
51
+ ], OutlineDecorationService.prototype, "themeService", void 0);
52
+ OutlineDecorationService = (0, tslib_1.__decorate)([
53
+ (0, di_1.Injectable)()
54
+ ], OutlineDecorationService);
55
+ exports.OutlineDecorationService = OutlineDecorationService;
56
+ //# sourceMappingURL=outline-decoration.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-decoration.service.js","sourceRoot":"","sources":["../../../src/browser/services/outline-decoration.service.ts"],"names":[],"mappings":";;;;AAAA,qCAAqD;AACrD,iEAAyF;AACzF,mDAAgG;AAKhG,IAAa,wBAAwB,GAArC,MAAa,wBAAwB;IAArC;QAOU,mBAAc,GAAqB,EAAE,CAAC;IAiChD,CAAC;IA/BC,mBAAmB,CAAC,GAAS;QAC3B,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7G,CAAC;IAED,aAAa,CAAC,IAAqB;QACjC,MAAM,OAAO,GAAqB,EAAE,CAAC;QACrC,IAAI,SAAqC,CAAC;QAC1C,2BAA2B;QAC3B,sBAAsB;QACtB,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,MAAe,EAAE,EAAE;YACpE,IAAI,MAAM,CAAC,eAAe,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE;gBACtH,OAAO,IAAI,CAAC;aACb;iBAAM,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,IAAK,MAAM,CAAC,eAAe,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,MAAM,CAAC,eAAe,EAAE;gBAC9H,OAAO,IAAI,CAAC;aACb;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE;YACnC,IAAI,MAAM,CAAC,QAAQ,KAAK,iCAAc,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,KAAK,iCAAc,CAAC,OAAO,EAAE;gBAC1F,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACtB;YACD,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,EAAE;gBACtD,SAAS,GAAG,MAAM,CAAC;aACpB;SACF;QACD,OAAO;YACL,KAAK,EAAE,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,MAAK,iCAAc,CAAC,KAAK,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,MAAK,iCAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,QAAQ,KAAK,iCAAc,CAAC,KAAK,CAAC,CAAC,CAAC,+BAAmB,CAAC,CAAC,CAAC,iCAAqB,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YACnP,OAAO,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO;YAC3B,KAAK,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;SACnF,CAAC;IACJ,CAAC;CACF,CAAA;AAtCC;IADC,IAAA,cAAS,GAAE;2CACW,gCAAa;+DAAC;AAGrC;IADC,IAAA,cAAS,EAAC,yBAAa,CAAC;;8DACW;AALzB,wBAAwB;IADpC,IAAA,eAAU,GAAE;GACA,wBAAwB,CAwCpC;AAxCY,4DAAwB"}
@@ -0,0 +1,21 @@
1
+ import { WithEventBus, URI, Event } from '@opensumi/ide-core-browser';
2
+ import { IResource, IEditorGroup } from '@opensumi/ide-editor';
3
+ import { EditorActiveResourceStateChangedEvent, EditorSelectionChangeEvent } from '@opensumi/ide-editor/lib/browser';
4
+ import { DocumentSymbolChangedEvent } from '@opensumi/ide-editor/lib/browser/breadcrumb/document-symbol';
5
+ export declare type OpenedEditorData = IEditorGroup | IResource;
6
+ export interface OpenedEditorEvent {
7
+ group: IEditorGroup;
8
+ resource: IResource;
9
+ }
10
+ export declare class OutlineEventService extends WithEventBus {
11
+ private _onDidChange;
12
+ private _onDidSelectionChange;
13
+ private _onDidActiveChange;
14
+ get onDidChange(): Event<URI | null>;
15
+ get onDidActiveChange(): Event<URI | null>;
16
+ get onDidSelectionChange(): Event<URI | null>;
17
+ onEditorActiveResourceStateChangedEvent(e: EditorActiveResourceStateChangedEvent): void;
18
+ onEditorSelectionChangeEvent(e: EditorSelectionChangeEvent): void;
19
+ onDocumentSymbolChange(e: DocumentSymbolChangedEvent): void;
20
+ }
21
+ //# sourceMappingURL=outline-event.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-event.service.d.ts","sourceRoot":"","sources":["../../../src/browser/services/outline-event.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAW,GAAG,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,qCAAqC,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AACrH,OAAO,EAAE,0BAA0B,EAAE,MAAM,6DAA6D,CAAC;AAEzG,oBAAY,gBAAgB,GAAG,YAAY,GAAG,SAAS,CAAC;AACxD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,qBACa,mBAAoB,SAAQ,YAAY;IAEnD,OAAO,CAAC,YAAY,CAAsC;IAC1D,OAAO,CAAC,qBAAqB,CAAsC;IACnE,OAAO,CAAC,kBAAkB,CAAsC;IAEhE,IAAI,WAAW,IAAI,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAEnC;IAED,IAAI,iBAAiB,IAAI,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAEzC;IAED,IAAI,oBAAoB,IAAI,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAE5C;IAGD,uCAAuC,CAAC,CAAC,EAAE,qCAAqC;IAKhF,4BAA4B,CAAC,CAAC,EAAE,0BAA0B;IAK1D,sBAAsB,CAAC,CAAC,EAAE,0BAA0B;CAGrD"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutlineEventService = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
6
+ const di_1 = require("@opensumi/di");
7
+ const browser_1 = require("@opensumi/ide-editor/lib/browser");
8
+ const document_symbol_1 = require("@opensumi/ide-editor/lib/browser/breadcrumb/document-symbol");
9
+ let OutlineEventService = class OutlineEventService extends ide_core_browser_1.WithEventBus {
10
+ constructor() {
11
+ super(...arguments);
12
+ this._onDidChange = new ide_core_browser_1.Emitter();
13
+ this._onDidSelectionChange = new ide_core_browser_1.Emitter();
14
+ this._onDidActiveChange = new ide_core_browser_1.Emitter();
15
+ }
16
+ get onDidChange() {
17
+ return this._onDidChange.event;
18
+ }
19
+ get onDidActiveChange() {
20
+ return this._onDidActiveChange.event;
21
+ }
22
+ get onDidSelectionChange() {
23
+ return this._onDidSelectionChange.event;
24
+ }
25
+ onEditorActiveResourceStateChangedEvent(e) {
26
+ this._onDidActiveChange.fire(e.payload.editorUri);
27
+ }
28
+ onEditorSelectionChangeEvent(e) {
29
+ this._onDidSelectionChange.fire(e.payload.editorUri);
30
+ }
31
+ onDocumentSymbolChange(e) {
32
+ this._onDidChange.fire(e.payload);
33
+ }
34
+ };
35
+ (0, tslib_1.__decorate)([
36
+ (0, ide_core_browser_1.OnEvent)(browser_1.EditorActiveResourceStateChangedEvent),
37
+ (0, tslib_1.__metadata)("design:type", Function),
38
+ (0, tslib_1.__metadata)("design:paramtypes", [browser_1.EditorActiveResourceStateChangedEvent]),
39
+ (0, tslib_1.__metadata)("design:returntype", void 0)
40
+ ], OutlineEventService.prototype, "onEditorActiveResourceStateChangedEvent", null);
41
+ (0, tslib_1.__decorate)([
42
+ (0, ide_core_browser_1.OnEvent)(browser_1.EditorSelectionChangeEvent),
43
+ (0, tslib_1.__metadata)("design:type", Function),
44
+ (0, tslib_1.__metadata)("design:paramtypes", [browser_1.EditorSelectionChangeEvent]),
45
+ (0, tslib_1.__metadata)("design:returntype", void 0)
46
+ ], OutlineEventService.prototype, "onEditorSelectionChangeEvent", null);
47
+ (0, tslib_1.__decorate)([
48
+ (0, ide_core_browser_1.OnEvent)(document_symbol_1.DocumentSymbolChangedEvent),
49
+ (0, tslib_1.__metadata)("design:type", Function),
50
+ (0, tslib_1.__metadata)("design:paramtypes", [document_symbol_1.DocumentSymbolChangedEvent]),
51
+ (0, tslib_1.__metadata)("design:returntype", void 0)
52
+ ], OutlineEventService.prototype, "onDocumentSymbolChange", null);
53
+ OutlineEventService = (0, tslib_1.__decorate)([
54
+ (0, di_1.Injectable)()
55
+ ], OutlineEventService);
56
+ exports.OutlineEventService = OutlineEventService;
57
+ //# sourceMappingURL=outline-event.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-event.service.js","sourceRoot":"","sources":["../../../src/browser/services/outline-event.service.ts"],"names":[],"mappings":";;;;AAAA,iEAAwF;AAExF,qCAA0C;AAC1C,8DAAqH;AACrH,iGAAyG;AASzG,IAAa,mBAAmB,GAAhC,MAAa,mBAAoB,SAAQ,+BAAY;IAArD;;QAEU,iBAAY,GAAwB,IAAI,0BAAO,EAAE,CAAC;QAClD,0BAAqB,GAAwB,IAAI,0BAAO,EAAE,CAAC;QAC3D,uBAAkB,GAAwB,IAAI,0BAAO,EAAE,CAAC;IA4BlE,CAAC;IA1BC,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;IACjC,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;IACvC,CAAC;IAED,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC;IAC1C,CAAC;IAGD,uCAAuC,CAAC,CAAwC;QAC9E,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAU,CAAC,CAAC;IACrD,CAAC;IAGD,4BAA4B,CAAC,CAA6B;QACxD,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAGD,sBAAsB,CAAC,CAA6B;QAClD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;CACF,CAAA;AAbC;IADC,IAAA,0BAAO,EAAC,+CAAqC,CAAC;;kDACJ,+CAAqC;;kFAE/E;AAGD;IADC,IAAA,0BAAO,EAAC,oCAA0B,CAAC;;kDACJ,oCAA0B;;uEAEzD;AAGD;IADC,IAAA,0BAAO,EAAC,4CAA0B,CAAC;;kDACV,4CAA0B;;iEAEnD;AA/BU,mBAAmB;IAD/B,IAAA,eAAU,GAAE;GACA,mBAAmB,CAgC/B;AAhCY,kDAAmB"}
@@ -0,0 +1,12 @@
1
+ import { TreeModel, CompositeTreeNode } from '@opensumi/ide-components';
2
+ import { Event } from '@opensumi/ide-core-browser';
3
+ import { OutlineCompositeTreeNode } from '../outline-node.define';
4
+ export declare class OutlineTreeModel extends TreeModel {
5
+ static DEFAULT_FLUSH_DELAY: number;
6
+ private flushDispatchChangeDelayer;
7
+ private onWillUpdateEmitter;
8
+ constructor(root: OutlineCompositeTreeNode);
9
+ get onWillUpdate(): Event<void>;
10
+ init(root: CompositeTreeNode): void;
11
+ }
12
+ //# sourceMappingURL=outline-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-model.d.ts","sourceRoot":"","sources":["../../../src/browser/services/outline-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAEvF,OAAO,EAA6B,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,qBACa,gBAAiB,SAAQ,SAAS;IAE7C,MAAM,CAAC,mBAAmB,SAAO;IAEjC,OAAO,CAAC,0BAA0B,CAAqE;IACvG,OAAO,CAAC,mBAAmB,CAAgC;gBAEnC,IAAI,EAAE,wBAAwB;IAKtD,IAAI,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,CAE9B;IAED,IAAI,CAAC,IAAI,EAAE,iBAAiB;CAe7B"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var OutlineTreeModel_1;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.OutlineTreeModel = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const ide_components_1 = require("@opensumi/ide-components");
7
+ const di_1 = require("@opensumi/di");
8
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
9
+ const outline_node_define_1 = require("../outline-node.define");
10
+ let OutlineTreeModel = OutlineTreeModel_1 = class OutlineTreeModel extends ide_components_1.TreeModel {
11
+ constructor(root) {
12
+ super();
13
+ this.flushDispatchChangeDelayer = new ide_core_browser_1.ThrottledDelayer(OutlineTreeModel_1.DEFAULT_FLUSH_DELAY);
14
+ this.onWillUpdateEmitter = new ide_core_browser_1.Emitter();
15
+ this.init(root);
16
+ }
17
+ get onWillUpdate() {
18
+ return this.onWillUpdateEmitter.event;
19
+ }
20
+ init(root) {
21
+ this.root = root;
22
+ // 分支更新时通知树刷新, 不是立即更新,而是延迟更新,待树稳定后再更新
23
+ // 100ms的延迟并不能保证树稳定,特别是在node_modules展开的情况下
24
+ // 但在普通使用上已经足够可用,即不会有渲染闪烁问题
25
+ this.root.watcher.on(ide_components_1.TreeNodeEvent.BranchDidUpdate, () => {
26
+ if (!this.flushDispatchChangeDelayer.isTriggered()) {
27
+ this.flushDispatchChangeDelayer.cancel();
28
+ }
29
+ this.flushDispatchChangeDelayer.trigger(async () => {
30
+ await this.onWillUpdateEmitter.fireAndAwait();
31
+ this.dispatchChange();
32
+ });
33
+ });
34
+ }
35
+ };
36
+ OutlineTreeModel.DEFAULT_FLUSH_DELAY = 100;
37
+ OutlineTreeModel = OutlineTreeModel_1 = (0, tslib_1.__decorate)([
38
+ (0, di_1.Injectable)({ multiple: true }),
39
+ (0, tslib_1.__param)(0, (0, di_1.Optional)()),
40
+ (0, tslib_1.__metadata)("design:paramtypes", [outline_node_define_1.OutlineCompositeTreeNode])
41
+ ], OutlineTreeModel);
42
+ exports.OutlineTreeModel = OutlineTreeModel;
43
+ //# sourceMappingURL=outline-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-model.js","sourceRoot":"","sources":["../../../src/browser/services/outline-model.ts"],"names":[],"mappings":";;;;;AAAA,6DAAuF;AACvF,qCAAmD;AACnD,iEAA8E;AAC9E,gEAAkE;AAGlE,IAAa,gBAAgB,wBAA7B,MAAa,gBAAiB,SAAQ,0BAAS;IAO7C,YAAwB,IAA8B;QACpD,KAAK,EAAE,CAAC;QAJF,+BAA0B,GAAI,IAAI,mCAAgB,CAAO,kBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAC/F,wBAAmB,GAAkB,IAAI,0BAAO,EAAE,CAAC;QAIzD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,IAAuB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,qCAAqC;QACrC,0CAA0C;QAC1C,2BAA2B;QAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,8BAAa,CAAC,eAAe,EAAE,GAAG,EAAE;YACvD,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,WAAW,EAAE,EAAE;gBAClD,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,CAAC;aAC1C;YACD,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;gBACjD,MAAM,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;gBAC9C,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA7BQ,oCAAmB,GAAG,GAAG,CAAC;AAFtB,gBAAgB;IAD5B,IAAA,eAAU,EAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;IAQd,wBAAA,IAAA,aAAQ,GAAE,CAAA;kDAAO,8CAAwB;GAP3C,gBAAgB,CA+B5B;AA/BY,4CAAgB"}
@@ -0,0 +1,83 @@
1
+ import { DecorationsManager, IRecycleTreeHandle, TreeNodeType } from '@opensumi/ide-components';
2
+ import { URI, CommandService, Event } from '@opensumi/ide-core-browser';
3
+ import { OutlineEventService } from './outline-event.service';
4
+ import { OutlineTreeNode, OutlineCompositeTreeNode } from '../outline-node.define';
5
+ import { OutlineTreeModel } from './outline-model';
6
+ import { INormalizedDocumentSymbol } from '@opensumi/ide-editor/lib/browser/breadcrumb/document-symbol';
7
+ import { IOutlineDecorationService } from '../../common';
8
+ export interface IEditorTreeHandle extends IRecycleTreeHandle {
9
+ hasDirectFocus: () => boolean;
10
+ }
11
+ export declare class OutlineModelService {
12
+ private static DEFAULT_REFRESH_DELAY;
13
+ private static DEFAULT_INIT_TREE_MODEL_DELAY;
14
+ private readonly injector;
15
+ private readonly outlineTreeService;
16
+ private markerManager;
17
+ decorationService: IOutlineDecorationService;
18
+ readonly outlineEventService: OutlineEventService;
19
+ private readonly editorService;
20
+ readonly commandService: CommandService;
21
+ private documentSymbolStore;
22
+ private _activeTreeModel;
23
+ private _allTreeModels;
24
+ private _whenInitTreeModelReady;
25
+ private _whenActiveChangeDeferred;
26
+ private _whenReady;
27
+ private _decorations;
28
+ private _outlineTreeHandle;
29
+ private refreshDeferred;
30
+ private _changeEventDispatchQueue;
31
+ private selectedDecoration;
32
+ private focusedDecoration;
33
+ private dirtyDecoration;
34
+ private _focusedNode;
35
+ private _selectedNodes;
36
+ private preContextMenuFocusedNode;
37
+ private disposableCollection;
38
+ private onDidRefreshedEmitter;
39
+ private onDidUpdateTreeModelEmitter;
40
+ private _ignoreFollowCursorUpdateEventTimer;
41
+ private initTreeModelDelayer;
42
+ private refreshDelayer;
43
+ constructor();
44
+ get whenReady(): Promise<void>;
45
+ get flushEventQueuePromise(): Promise<void> | null;
46
+ get outlineTreeHandle(): IEditorTreeHandle;
47
+ get decorations(): DecorationsManager;
48
+ get treeModel(): OutlineTreeModel;
49
+ get focusedNode(): OutlineCompositeTreeNode | OutlineTreeNode | undefined;
50
+ get selectedNodes(): (OutlineCompositeTreeNode | OutlineTreeNode)[];
51
+ get onDidRefreshed(): Event<void>;
52
+ get onDidUpdateTreeModel(): Event<OutlineTreeModel | undefined>;
53
+ get whenActiveChangeReady(): Promise<void> | undefined;
54
+ get whenInitTreeModelReady(): Promise<void>;
55
+ get whenRefreshReady(): Promise<void> | undefined;
56
+ initTreeModelByCurrentUri(uri?: URI | null): Promise<void>;
57
+ initTreeModel(): Promise<void>;
58
+ initDecorations(root: any): DecorationsManager;
59
+ private locateSelection;
60
+ private findCurrentDocumentSymbol;
61
+ private positionInRange;
62
+ clearNodeSelectedDecoration: () => void;
63
+ activeNodeDecoration: (target: OutlineCompositeTreeNode | OutlineTreeNode, dispatch?: boolean) => void;
64
+ selectNodeDecoration: (target: OutlineCompositeTreeNode | OutlineTreeNode, dispatch?: boolean) => void;
65
+ activeNodeFocusedDecoration: (target: OutlineCompositeTreeNode | OutlineTreeNode, removePreFocusedDecoration?: boolean) => void;
66
+ activeNodeSelectedDecoration: (target: OutlineCompositeTreeNode | OutlineTreeNode) => void;
67
+ enactiveNodeDecoration: () => void;
68
+ removeNodeDecoration(): void;
69
+ handleTreeHandler(handle: IEditorTreeHandle): void;
70
+ handleTreeBlur: () => void;
71
+ handleItemClick: (item: OutlineCompositeTreeNode | OutlineTreeNode, type: TreeNodeType) => void;
72
+ toggleDirectory: (item: OutlineCompositeTreeNode) => Promise<void>;
73
+ protected revealRange(symbol: INormalizedDocumentSymbol): void;
74
+ /**
75
+ * 刷新指定下的所有子节点
76
+ */
77
+ refresh(): Promise<void>;
78
+ flushEventQueue: () => Promise<any> | undefined;
79
+ location: (node: OutlineTreeNode) => Promise<void>;
80
+ collapseAll: () => Promise<void>;
81
+ dispose(): void;
82
+ }
83
+ //# sourceMappingURL=outline-model.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outline-model.service.d.ts","sourceRoot":"","sources":["../../../src/browser/services/outline-model.service.ts"],"names":[],"mappings":"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"}