@theia/scm 1.75.0-next.4 → 1.75.0-next.42

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 (83) hide show
  1. package/lib/browser/decorations/scm-navigator-decorator.d.ts.map +1 -1
  2. package/lib/browser/decorations/scm-navigator-decorator.js +1 -0
  3. package/lib/browser/decorations/scm-navigator-decorator.js.map +1 -1
  4. package/lib/browser/scm-context-key-service.d.ts +2 -0
  5. package/lib/browser/scm-context-key-service.d.ts.map +1 -1
  6. package/lib/browser/scm-context-key-service.js +4 -0
  7. package/lib/browser/scm-context-key-service.js.map +1 -1
  8. package/lib/browser/scm-context-key-service.spec.js +7 -0
  9. package/lib/browser/scm-context-key-service.spec.js.map +1 -1
  10. package/lib/browser/scm-frontend-module.d.ts.map +1 -1
  11. package/lib/browser/scm-frontend-module.js +6 -0
  12. package/lib/browser/scm-frontend-module.js.map +1 -1
  13. package/lib/browser/scm-history-graph-contribution.d.ts +49 -0
  14. package/lib/browser/scm-history-graph-contribution.d.ts.map +1 -0
  15. package/lib/browser/scm-history-graph-contribution.js +280 -0
  16. package/lib/browser/scm-history-graph-contribution.js.map +1 -0
  17. package/lib/browser/scm-history-graph-contribution.spec.d.ts +2 -0
  18. package/lib/browser/scm-history-graph-contribution.spec.d.ts.map +1 -0
  19. package/lib/browser/scm-history-graph-contribution.spec.js +119 -0
  20. package/lib/browser/scm-history-graph-contribution.spec.js.map +1 -0
  21. package/lib/browser/scm-history-graph-helpers.d.ts +59 -6
  22. package/lib/browser/scm-history-graph-helpers.d.ts.map +1 -1
  23. package/lib/browser/scm-history-graph-helpers.js +129 -5
  24. package/lib/browser/scm-history-graph-helpers.js.map +1 -1
  25. package/lib/browser/scm-history-graph-helpers.spec.d.ts +2 -0
  26. package/lib/browser/scm-history-graph-helpers.spec.d.ts.map +1 -0
  27. package/lib/browser/scm-history-graph-helpers.spec.js +154 -0
  28. package/lib/browser/scm-history-graph-helpers.spec.js.map +1 -0
  29. package/lib/browser/scm-history-graph-lanes.d.ts +19 -5
  30. package/lib/browser/scm-history-graph-lanes.d.ts.map +1 -1
  31. package/lib/browser/scm-history-graph-lanes.js +25 -9
  32. package/lib/browser/scm-history-graph-lanes.js.map +1 -1
  33. package/lib/browser/scm-history-graph-lanes.spec.js +62 -25
  34. package/lib/browser/scm-history-graph-lanes.spec.js.map +1 -1
  35. package/lib/browser/scm-history-graph-model.d.ts +75 -6
  36. package/lib/browser/scm-history-graph-model.d.ts.map +1 -1
  37. package/lib/browser/scm-history-graph-model.js +155 -10
  38. package/lib/browser/scm-history-graph-model.js.map +1 -1
  39. package/lib/browser/scm-history-graph-model.spec.js +299 -4
  40. package/lib/browser/scm-history-graph-model.spec.js.map +1 -1
  41. package/lib/browser/scm-history-graph-tooltip.d.ts +27 -2
  42. package/lib/browser/scm-history-graph-tooltip.d.ts.map +1 -1
  43. package/lib/browser/scm-history-graph-tooltip.js +113 -22
  44. package/lib/browser/scm-history-graph-tooltip.js.map +1 -1
  45. package/lib/browser/scm-history-graph-tooltip.spec.d.ts +2 -0
  46. package/lib/browser/scm-history-graph-tooltip.spec.d.ts.map +1 -0
  47. package/lib/browser/scm-history-graph-tooltip.spec.js +213 -0
  48. package/lib/browser/scm-history-graph-tooltip.spec.js.map +1 -0
  49. package/lib/browser/scm-history-graph-widget.d.ts +36 -2
  50. package/lib/browser/scm-history-graph-widget.d.ts.map +1 -1
  51. package/lib/browser/scm-history-graph-widget.js +154 -27
  52. package/lib/browser/scm-history-graph-widget.js.map +1 -1
  53. package/lib/browser/scm-history-graph-widget.spec.d.ts +2 -0
  54. package/lib/browser/scm-history-graph-widget.spec.d.ts.map +1 -0
  55. package/lib/browser/scm-history-graph-widget.spec.js +262 -0
  56. package/lib/browser/scm-history-graph-widget.spec.js.map +1 -0
  57. package/lib/browser/scm-provider.d.ts +9 -1
  58. package/lib/browser/scm-provider.d.ts.map +1 -1
  59. package/lib/browser/scm-provider.js.map +1 -1
  60. package/lib/common/scm-preferences.d.ts +3 -0
  61. package/lib/common/scm-preferences.d.ts.map +1 -1
  62. package/lib/common/scm-preferences.js +24 -0
  63. package/lib/common/scm-preferences.js.map +1 -1
  64. package/package.json +6 -6
  65. package/src/browser/decorations/scm-navigator-decorator.ts +3 -2
  66. package/src/browser/scm-context-key-service.spec.ts +9 -0
  67. package/src/browser/scm-context-key-service.ts +6 -0
  68. package/src/browser/scm-frontend-module.ts +7 -1
  69. package/src/browser/scm-history-graph-contribution.spec.ts +148 -0
  70. package/src/browser/scm-history-graph-contribution.ts +273 -0
  71. package/src/browser/scm-history-graph-helpers.spec.ts +193 -0
  72. package/src/browser/scm-history-graph-helpers.ts +180 -6
  73. package/src/browser/scm-history-graph-lanes.spec.ts +70 -25
  74. package/src/browser/scm-history-graph-lanes.ts +48 -11
  75. package/src/browser/scm-history-graph-model.spec.ts +378 -12
  76. package/src/browser/scm-history-graph-model.ts +181 -13
  77. package/src/browser/scm-history-graph-tooltip.spec.ts +254 -0
  78. package/src/browser/scm-history-graph-tooltip.ts +144 -24
  79. package/src/browser/scm-history-graph-widget.spec.ts +310 -0
  80. package/src/browser/scm-history-graph-widget.tsx +199 -39
  81. package/src/browser/scm-provider.ts +9 -1
  82. package/src/browser/style/scm-history-graph.css +53 -2
  83. package/src/common/scm-preferences.ts +27 -0
@@ -1,45 +1,67 @@
1
1
  import * as React from '@theia/core/shared/react';
2
+ import { VirtuosoHandle } from '@theia/core/shared/react-virtuoso';
2
3
  import { ReactWidget } from '@theia/core/lib/browser/widgets/react-widget';
3
4
  import { LabelProvider } from '@theia/core/lib/browser/label-provider';
4
5
  import { HoverService } from '@theia/core/lib/browser/hover-service';
6
+ import { ClipboardService } from '@theia/core/lib/browser/clipboard-service';
5
7
  import { MarkdownRenderer, MarkdownRendererFactory } from '@theia/core/lib/browser/markdown-rendering/markdown-renderer';
6
8
  import { ScmHistoryGraphModel, HistoryGraphEntry } from './scm-history-graph-model';
7
9
  import { ScmHistoryItemRef, ScmHistoryItemChange } from './scm-provider';
8
10
  import { ScmService } from './scm-service';
9
11
  import { GraphRow } from './scm-history-graph-lanes';
10
12
  import { CancellationTokenSource } from '@theia/core/lib/common/cancellation';
13
+ import { DisposableCollection } from '@theia/core/lib/common/disposable';
14
+ import { Emitter, Event } from '@theia/core/lib/common/event';
15
+ import { DynamicToolbarWidget } from '@theia/core/lib/browser/view-container';
11
16
  import { MenuPath } from '@theia/core/lib/common/menu/menu-types';
12
17
  import { ContextMenuRenderer } from '@theia/core/lib/browser/context-menu-renderer';
13
18
  import { OpenerService } from '@theia/core/lib/browser/opener-service';
14
19
  import { ScmContextKeyService } from './scm-context-key-service';
20
+ import { ScmPreferences } from '../common/scm-preferences';
21
+ import { ChangeTreeFolderRow } from './scm-history-graph-helpers';
22
+ import { ILogger } from '@theia/core';
15
23
  /** Menu path matching the VS Code 'scm/history/title' contribution point (graph section toolbar). */
16
24
  export declare const SCM_HISTORY_TITLE_MENU: MenuPath;
17
25
  /** Menu path matching the VS Code 'scm/historyItem/context' contribution point (commit row context menu). */
18
26
  export declare const SCM_HISTORY_ITEM_CONTEXT_MENU: MenuPath;
19
27
  /** Menu path matching the VS Code 'scm/historyItemRef/context' contribution point (ref badge context menu). */
20
28
  export declare const SCM_HISTORY_ITEM_REF_CONTEXT_MENU: MenuPath;
21
- export declare class ScmHistoryGraphWidget extends ReactWidget {
29
+ export declare class ScmHistoryGraphWidget extends ReactWidget implements DynamicToolbarWidget {
22
30
  static readonly ID = "scm-history-graph-widget";
23
31
  static readonly LABEL: string;
24
32
  protected readonly model: ScmHistoryGraphModel;
25
33
  protected readonly hoverService: HoverService;
34
+ protected readonly clipboardService: ClipboardService;
26
35
  protected readonly markdownRendererFactory: MarkdownRendererFactory;
27
36
  protected readonly scmService: ScmService;
28
37
  protected readonly labelProvider: LabelProvider;
29
38
  protected readonly contextMenuRenderer: ContextMenuRenderer;
30
39
  protected readonly openerService: OpenerService;
31
40
  protected readonly scmContextKeys: ScmContextKeyService;
41
+ protected readonly scmPreferences: ScmPreferences;
42
+ protected readonly logger: ILogger;
32
43
  protected selectedIndex: number;
44
+ /** Handle on the virtualized list, used to scroll an entry into view. */
45
+ protected readonly listRef: React.RefObject<VirtuosoHandle>;
33
46
  /** Currently selected change row key (`${itemId}-${ci}`), or undefined. */
34
47
  protected selectedChangeKey: string | undefined;
35
48
  /** Map from commit id → loaded changes (undefined = not loaded yet). */
36
49
  protected expandedChanges: Map<string, ScmHistoryItemChange[] | "loading">;
37
50
  /** Set of commit ids that are currently expanded. */
38
51
  protected expandedIds: Set<string>;
52
+ /** Map from commit id → folder paths collapsed in its change tree. */
53
+ protected collapsedFolders: Map<string, Set<string>>;
39
54
  /** Map from commit id → in-flight CancellationTokenSource for loadChanges. */
40
55
  protected loadChangesCts: Map<string, CancellationTokenSource>;
56
+ /** Cleanup for the content of the hover currently being shown. */
57
+ protected readonly toDisposeOnHover: DisposableCollection;
58
+ protected readonly onDidChangeToolbarItemsEmitter: Emitter<void>;
59
+ /** Re-renders the part toolbar on model changes, e.g. to reflect the toggled state of the ref filter picker. */
60
+ readonly onDidChangeToolbarItems: Event<void>;
41
61
  constructor();
42
62
  protected init(): void;
63
+ /** Scrolls the entry at `index` into view and selects it. */
64
+ protected revealIndex(index: number): void;
43
65
  protected updateContextKeys(): void;
44
66
  protected render(): React.ReactNode;
45
67
  protected handleEndReached: () => void;
@@ -47,8 +69,20 @@ export declare class ScmHistoryGraphWidget extends ReactWidget {
47
69
  protected _markdownRenderer: MarkdownRenderer | undefined;
48
70
  protected get markdownRenderer(): MarkdownRenderer;
49
71
  protected handleRowMouseEnter: (e: React.MouseEvent<HTMLDivElement>, entry: HistoryGraphEntry) => void;
72
+ /**
73
+ * Prefers the hover content supplied by the provider, so that its own links and commands
74
+ * (author `mailto:`, "Open Commit", remote actions) stay intact, and falls back to the hover
75
+ * derived from the history item's fields for providers that supply none.
76
+ */
77
+ protected buildTooltip(entry: HistoryGraphEntry): HTMLElement;
78
+ /** Selects the commit and expands its changes, closing the hover first. */
79
+ protected openCommitFromTooltip(entry: HistoryGraphEntry): void;
50
80
  protected renderChangesRows(itemId: string, svgWidth: number, graphRow: GraphRow, changes: ScmHistoryItemChange[] | 'loading' | undefined): React.ReactElement;
51
- protected renderChangeRow(change: ScmHistoryItemChange, ci: number, itemId: string, svgWidth: number, graphRow: GraphRow): React.ReactElement;
81
+ protected renderChangeFolderRow(row: ChangeTreeFolderRow, itemId: string, svgWidth: number, graphRow: GraphRow): React.ReactElement;
82
+ protected isFolderCollapsed(itemId: string, path: string): boolean;
83
+ protected toggleFolder(itemId: string, path: string): void;
84
+ protected handleFolderClick: (e: React.MouseEvent, itemId: string, path: string) => void;
85
+ protected renderChangeRow(change: ScmHistoryItemChange, ci: number, itemId: string, svgWidth: number, graphRow: GraphRow, depth?: number): React.ReactElement;
52
86
  protected handleChangeClick: (e: React.MouseEvent, change: ScmHistoryItemChange, changeKey: string) => void;
53
87
  protected openChange(change: ScmHistoryItemChange): void;
54
88
  protected renderChangeRowSvg(graphRow: GraphRow, svgWidth: number): React.ReactElement;
@@ -1 +1 @@
1
- {"version":3,"file":"scm-history-graph-widget.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scm-history-graph-widget.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-widget.tsx"],"names":[],"mappings":"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"}
@@ -24,17 +24,22 @@ const inversify_1 = require("@theia/core/shared/inversify");
24
24
  const react_widget_1 = require("@theia/core/lib/browser/widgets/react-widget");
25
25
  const label_provider_1 = require("@theia/core/lib/browser/label-provider");
26
26
  const hover_service_1 = require("@theia/core/lib/browser/hover-service");
27
+ const clipboard_service_1 = require("@theia/core/lib/browser/clipboard-service");
27
28
  const markdown_renderer_1 = require("@theia/core/lib/browser/markdown-rendering/markdown-renderer");
28
29
  const scm_history_graph_model_1 = require("./scm-history-graph-model");
29
30
  const scm_service_1 = require("./scm-service");
30
31
  const uri_1 = require("@theia/core/lib/common/uri");
31
32
  const nls_1 = require("@theia/core/lib/common/nls");
32
33
  const cancellation_1 = require("@theia/core/lib/common/cancellation");
34
+ const disposable_1 = require("@theia/core/lib/common/disposable");
35
+ const event_1 = require("@theia/core/lib/common/event");
33
36
  const context_menu_renderer_1 = require("@theia/core/lib/browser/context-menu-renderer");
34
37
  const opener_service_1 = require("@theia/core/lib/browser/opener-service");
35
38
  const diff_uris_1 = require("@theia/core/lib/browser/diff-uris");
36
39
  const scm_context_key_service_1 = require("./scm-context-key-service");
40
+ const scm_preferences_1 = require("../common/scm-preferences");
37
41
  const scm_history_graph_helpers_1 = require("./scm-history-graph-helpers");
42
+ const core_1 = require("@theia/core");
38
43
  const scm_history_graph_tooltip_1 = require("./scm-history-graph-tooltip");
39
44
  /** Menu path matching the VS Code 'scm/history/title' contribution point (graph section toolbar). */
40
45
  exports.SCM_HISTORY_TITLE_MENU = ['plugin_scm/history/title'];
@@ -48,6 +53,17 @@ const ROW_HEIGHT = 22;
48
53
  const LANE_WIDTH = 22;
49
54
  /** Y position of the commit dot — vertically centered in the row. */
50
55
  const DOT_CY = 11;
56
+ /** Indentation of one level of the change tree, in pixels. */
57
+ const TREE_INDENT = 8;
58
+ /** Shared empty set for history items whose change tree is fully expanded. */
59
+ const EMPTY_FOLDER_SET = new Set();
60
+ /**
61
+ * Indentation for a row of the change tree. Like Theia's tree widget, the depth
62
+ * is applied as padding rather than through a class, as it is not known upfront.
63
+ */
64
+ function indentStyle(depth) {
65
+ return depth > 0 ? { paddingLeft: `${4 + depth * TREE_INDENT}px` } : undefined;
66
+ }
51
67
  /** Renders a ref badge as a JSX element for the commit row. */
52
68
  function renderJsxRefBadge(ref, iconClass, showText, style, key, onContextMenu) {
53
69
  return (React.createElement("span", { key: key, className: `scm-history-ref-badge ${(0, scm_history_graph_helpers_1.getRefBadgeClass)(ref)}`, title: ref.description ?? ref.name, style: style, onContextMenu: onContextMenu },
@@ -62,25 +78,39 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
62
78
  constructor() {
63
79
  super();
64
80
  this.selectedIndex = -1;
81
+ /** Handle on the virtualized list, used to scroll an entry into view. */
82
+ this.listRef = React.createRef();
65
83
  /** Map from commit id → loaded changes (undefined = not loaded yet). */
66
84
  this.expandedChanges = new Map();
67
85
  /** Set of commit ids that are currently expanded. */
68
86
  this.expandedIds = new Set();
87
+ /** Map from commit id → folder paths collapsed in its change tree. */
88
+ this.collapsedFolders = new Map();
69
89
  /** Map from commit id → in-flight CancellationTokenSource for loadChanges. */
70
90
  this.loadChangesCts = new Map();
91
+ /** Cleanup for the content of the hover currently being shown. */
92
+ this.toDisposeOnHover = new disposable_1.DisposableCollection();
93
+ this.onDidChangeToolbarItemsEmitter = new event_1.Emitter();
94
+ /** Re-renders the part toolbar on model changes, e.g. to reflect the toggled state of the ref filter picker. */
95
+ this.onDidChangeToolbarItems = this.onDidChangeToolbarItemsEmitter.event;
71
96
  this.handleEndReached = () => {
72
97
  if (this.model.hasMore && !this.model.loading) {
73
98
  this.model.loadMore();
74
99
  }
75
100
  };
76
101
  this.handleRowMouseEnter = (e, entry) => {
102
+ this.toDisposeOnHover.dispose();
77
103
  this.hoverService.requestHover({
78
- content: (0, scm_history_graph_tooltip_1.buildHtmlTooltip)(entry, this.markdownRenderer),
104
+ content: this.buildTooltip(entry),
79
105
  target: e.currentTarget,
80
106
  position: 'right',
81
107
  interactive: true,
82
108
  });
83
109
  };
110
+ this.handleFolderClick = (e, itemId, path) => {
111
+ e.stopPropagation();
112
+ this.toggleFolder(itemId, path);
113
+ };
84
114
  this.handleChangeClick = (e, change, changeKey) => {
85
115
  e.stopPropagation();
86
116
  this.selectedChangeKey = changeKey;
@@ -136,6 +166,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
136
166
  const { item } = entry;
137
167
  if (this.expandedIds.has(item.id)) {
138
168
  this.expandedIds.delete(item.id);
169
+ this.collapsedFolders.delete(item.id);
139
170
  const cts = this.loadChangesCts.get(item.id);
140
171
  if (cts) {
141
172
  cts.cancel();
@@ -167,9 +198,17 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
167
198
  this.node.tabIndex = 0;
168
199
  }
169
200
  init() {
201
+ this.toDispose.push(this.onDidChangeToolbarItemsEmitter);
170
202
  this.toDispose.push(this.model.onDidChange(() => {
171
203
  this.updateContextKeys();
172
204
  this.update();
205
+ this.onDidChangeToolbarItemsEmitter.fire();
206
+ }));
207
+ this.toDispose.push(this.model.onDidRequestReveal(index => this.revealIndex(index)));
208
+ this.toDispose.push(this.scmPreferences.onPreferenceChanged(e => {
209
+ if (e.preferenceName.startsWith('scm.graph.')) {
210
+ this.update();
211
+ }
173
212
  }));
174
213
  this.toDispose.push({
175
214
  dispose: () => {
@@ -180,12 +219,22 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
180
219
  this.loadChangesCts.clear();
181
220
  }
182
221
  });
222
+ this.toDispose.push(this.toDisposeOnHover);
223
+ this.update();
224
+ }
225
+ /** Scrolls the entry at `index` into view and selects it. */
226
+ revealIndex(index) {
227
+ this.selectedIndex = index;
228
+ this.selectedChangeKey = undefined;
229
+ this.listRef.current?.scrollToIndex({ index, align: 'center' });
183
230
  this.update();
184
231
  }
185
232
  updateContextKeys() {
186
233
  const provider = this.model.provider;
187
234
  this.scmContextKeys.scmCurrentHistoryItemRefHasRemote.set(!!provider?.currentHistoryItemRemoteRef);
188
235
  this.scmContextKeys.scmCurrentHistoryItemRefHasBase.set(!!provider?.currentHistoryItemBaseRef);
236
+ // Commands like git.pullRef/git.pushRef gate their enablement on this key.
237
+ this.scmContextKeys.scmCurrentHistoryItemRefInFilter.set(!!provider?.currentHistoryItemRef && this.model.isCurrentRefInFilter());
189
238
  }
190
239
  render() {
191
240
  const { entries, hasMore, loading } = this.model;
@@ -209,15 +258,14 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
209
258
  : hasMore
210
259
  ? () => (React.createElement("div", { className: 'scm-history-load-more', onClick: this.handleLoadMore, role: 'button', tabIndex: 0, onKeyDown: this.handleLoadMoreKey }, nls_1.nls.localizeByDefault('Load more')))
211
260
  : undefined;
212
- return (React.createElement(react_virtuoso_1.Virtuoso, { className: 'scm-history-graph-list', data: entries, itemContent: (idx, entry) => this.renderRow(entry, idx, svgWidth), endReached: hasMore && !loading ? this.handleEndReached : undefined, overscan: 500, components: footer ? { Footer: footer } : {}, style: { overflowX: 'hidden' } }));
261
+ return (React.createElement(react_virtuoso_1.Virtuoso, { ref: this.listRef, className: 'scm-history-graph-list', data: entries, itemContent: (idx, entry) => this.renderRow(entry, idx, svgWidth), endReached: hasMore && !loading && this.scmPreferences['scm.graph.pageOnScroll'] !== false ? this.handleEndReached : undefined, overscan: 500, components: footer ? { Footer: footer } : {}, style: { overflowX: 'hidden' } }));
213
262
  }
214
263
  renderRow(entry, idx, svgWidth) {
215
264
  const { item, graphRow } = entry;
216
265
  const isSelected = idx === this.selectedIndex;
217
266
  const isExpanded = this.expandedIds.has(item.id);
218
267
  const changes = this.expandedChanges.get(item.id);
219
- // The first commit (idx === 0) on lane 0 is treated as HEAD/current
220
- const isHead = idx === 0 && graphRow.lane === 0;
268
+ const isHead = entry.isCurrent;
221
269
  return (React.createElement(React.Fragment, { key: item.id },
222
270
  React.createElement("div", { className: `scm-history-graph-row${isSelected ? ' selected' : ''}`, onClick: () => this.handleRowClick(idx, entry), onContextMenu: e => this.handleRowContextMenu(e, entry), onMouseEnter: e => this.handleRowMouseEnter(e, entry) },
223
271
  this.renderGraphSvg(graphRow, svgWidth, isHead),
@@ -231,6 +279,39 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
231
279
  this._markdownRenderer ||= this.markdownRendererFactory();
232
280
  return this._markdownRenderer;
233
281
  }
282
+ /**
283
+ * Prefers the hover content supplied by the provider, so that its own links and commands
284
+ * (author `mailto:`, "Open Commit", remote actions) stay intact, and falls back to the hover
285
+ * derived from the history item's fields for providers that supply none.
286
+ */
287
+ buildTooltip(entry) {
288
+ const { tooltip } = entry.item;
289
+ if (tooltip) {
290
+ const provided = (0, scm_history_graph_tooltip_1.buildProviderTooltip)(tooltip, this.markdownRenderer, this.openerService, this.toDisposeOnHover);
291
+ if (provided) {
292
+ return provided;
293
+ }
294
+ }
295
+ return (0, scm_history_graph_tooltip_1.buildHtmlTooltip)(entry, this.markdownRenderer, this.model.provider, {
296
+ openCommit: () => this.openCommitFromTooltip(entry),
297
+ copyCommitHash: () => this.clipboardService.writeText(entry.item.id),
298
+ });
299
+ }
300
+ /** Selects the commit and expands its changes, closing the hover first. */
301
+ openCommitFromTooltip(entry) {
302
+ this.hoverService.cancelHover();
303
+ const idx = this.model.entries.indexOf(entry);
304
+ if (idx < 0) {
305
+ return;
306
+ }
307
+ if (this.expandedIds.has(entry.item.id)) {
308
+ this.selectedIndex = idx;
309
+ this.update();
310
+ }
311
+ else {
312
+ this.handleRowClick(idx, entry);
313
+ }
314
+ }
234
315
  renderChangesRows(itemId, svgWidth, graphRow, changes) {
235
316
  if (changes === 'loading' || changes === undefined) {
236
317
  return (React.createElement("div", { key: `${itemId}-loading`, className: 'scm-history-changes-loading' }, nls_1.nls.localizeByDefault('Loading')));
@@ -238,14 +319,44 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
238
319
  if (changes.length === 0) {
239
320
  return (React.createElement("div", { key: `${itemId}-empty`, className: 'scm-history-changes-empty' }, nls_1.nls.localize('theia/scm/noChanges', 'No changed files.')));
240
321
  }
322
+ if (this.model.viewMode === 'tree') {
323
+ const rootUri = this.scmService.selectedRepository?.provider.rootUri;
324
+ const rows = (0, scm_history_graph_helpers_1.buildChangeTreeRows)(changes, rootUri, this.collapsedFolders.get(itemId) ?? EMPTY_FOLDER_SET);
325
+ return (React.createElement(React.Fragment, { key: `${itemId}-changes` }, rows.map(row => row.type === 'folder'
326
+ ? this.renderChangeFolderRow(row, itemId, svgWidth, graphRow)
327
+ : this.renderChangeRow(row.change, row.index, itemId, svgWidth, graphRow, row.depth))));
328
+ }
241
329
  return (React.createElement(React.Fragment, { key: `${itemId}-changes` }, changes.map((change, ci) => this.renderChangeRow(change, ci, itemId, svgWidth, graphRow))));
242
330
  }
243
- renderChangeRow(change, ci, itemId, svgWidth, graphRow) {
331
+ renderChangeFolderRow(row, itemId, svgWidth, graphRow) {
332
+ const collapsed = this.isFolderCollapsed(itemId, row.path);
333
+ return (React.createElement("div", { key: `${itemId}-folder-${row.path}`, className: 'scm-history-change-row scm-history-change-folder-row', onClick: e => this.handleFolderClick(e, itemId, row.path), role: 'treeitem', "aria-expanded": !collapsed, tabIndex: -1 },
334
+ this.renderChangeRowSvg(graphRow, svgWidth),
335
+ React.createElement("div", { className: 'scm-history-change-info', style: indentStyle(row.depth) },
336
+ React.createElement("span", { className: `codicon ${collapsed ? 'codicon-chevron-right' : 'codicon-chevron-down'} scm-history-change-twistie` }),
337
+ React.createElement("span", { className: 'name scm-history-change-name', title: row.path }, row.label))));
338
+ }
339
+ isFolderCollapsed(itemId, path) {
340
+ return !!this.collapsedFolders.get(itemId)?.has(path);
341
+ }
342
+ toggleFolder(itemId, path) {
343
+ let collapsed = this.collapsedFolders.get(itemId);
344
+ if (!collapsed) {
345
+ collapsed = new Set();
346
+ this.collapsedFolders.set(itemId, collapsed);
347
+ }
348
+ if (!collapsed.delete(path)) {
349
+ collapsed.add(path);
350
+ }
351
+ this.update();
352
+ }
353
+ renderChangeRow(change, ci, itemId, svgWidth, graphRow, depth = 0) {
244
354
  const rootUri = this.scmService.selectedRepository?.provider.rootUri;
245
355
  const uri = change.modifiedUri ?? change.originalUri ?? change.uri;
246
356
  const relativePath = (0, scm_history_graph_helpers_1.getRepoRelativePath)(uri, rootUri);
247
357
  const fileName = (0, scm_history_graph_helpers_1.getFileName)(relativePath);
248
- const dirPath = relativePath.includes('/')
358
+ // In tree mode the folder rows already carry the directory.
359
+ const dirPath = this.model.viewMode === 'list' && relativePath.includes('/')
249
360
  ? relativePath.slice(0, relativePath.lastIndexOf('/'))
250
361
  : '';
251
362
  const status = (0, scm_history_graph_helpers_1.getChangeStatus)(change);
@@ -256,7 +367,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
256
367
  const isSelected = this.selectedChangeKey === changeKey;
257
368
  return (React.createElement("div", { key: changeKey, className: `scm-history-change-row${isSelected ? ' selected' : ''}`, onClick: e => this.handleChangeClick(e, change, changeKey), role: 'treeitem', tabIndex: -1 },
258
369
  this.renderChangeRowSvg(graphRow, svgWidth),
259
- React.createElement("div", { className: 'scm-history-change-info' },
370
+ React.createElement("div", { className: 'scm-history-change-info', style: indentStyle(depth) },
260
371
  React.createElement("span", { className: `${fileIcon} file-icon scm-history-change-file-icon` }),
261
372
  React.createElement("div", { className: 'scm-history-change-name-container' },
262
373
  React.createElement("span", { className: 'name scm-history-change-name', title: relativePath }, fileName),
@@ -282,7 +393,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
282
393
  }
283
394
  }
284
395
  catch (err) {
285
- console.error('ScmHistoryGraphWidget: failed to open change', err);
396
+ this.logger.error('Failed to open change', err);
286
397
  }
287
398
  }
288
399
  renderChangeRowSvg(graphRow, svgWidth) {
@@ -345,9 +456,11 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
345
456
  }
346
457
  // Commit lane lines — split at cy=11
347
458
  // Top segment: only drawn if there is an incoming line from above
348
- // (i.e. this commit was referenced as a parent by an earlier row)
459
+ // (i.e. this commit was referenced as a parent by an earlier row).
460
+ // It keeps the color inherited from the chain above, which may differ
461
+ // from the commit's own (ref-based) color.
349
462
  if (row.hasTopLine) {
350
- elements.push(React.createElement("path", { key: `top-${keyIdx++}`, fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${commitX} 0 V ${cy}`, style: { stroke: commitColor } }));
463
+ elements.push(React.createElement("path", { key: `top-${keyIdx++}`, fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${commitX} 0 V ${cy}`, style: { stroke: (0, scm_history_graph_helpers_1.laneColor)(row.topColor) } }));
351
464
  }
352
465
  // Bottom segment: only drawn if the lane continues to a parent below
353
466
  if (row.hasContinuation) {
@@ -381,11 +494,14 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
381
494
  if (!refs || refs.length === 0) {
382
495
  return undefined;
383
496
  }
497
+ const provider = this.model.provider;
498
+ const visibleRefs = (0, scm_history_graph_helpers_1.filterRefsForBadges)(refs, provider, this.scmPreferences['scm.graph.badges'] ?? 'filter', this.model.historyItemRefFilter);
499
+ if (visibleRefs.length === 0) {
500
+ return undefined;
501
+ }
384
502
  const laneColorValue = entry ? (0, scm_history_graph_helpers_1.laneColor)(entry.graphRow.color) : undefined;
385
- const deduplicated = (0, scm_history_graph_helpers_1.deduplicateRefs)(refs);
386
- const style = laneColorValue
387
- ? { backgroundColor: laneColorValue, color: 'var(--theia-scmGraph-historyItemRefForeground, var(--theia-badge-foreground))' }
388
- : {};
503
+ const deduplicated = (0, scm_history_graph_helpers_1.deduplicateRefs)(visibleRefs);
504
+ const badgeForeground = 'var(--theia-scmGraph-historyItemRefForeground, var(--theia-badge-foreground))';
389
505
  const badges = [];
390
506
  for (const info of deduplicated) {
391
507
  if (badges.length >= 3) {
@@ -395,18 +511,16 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
395
511
  const isTag = (0, scm_history_graph_helpers_1.isTagRef)(ref);
396
512
  const isRemote = (0, scm_history_graph_helpers_1.isRemoteRef)(ref);
397
513
  const onContextMenu = entry ? (e) => this.handleRefBadgeContextMenu(e, entry, ref) : undefined;
398
- if (isTag) {
399
- badges.push(renderJsxRefBadge(ref, 'codicon-tag', false, style, ref.id, onContextMenu));
400
- }
401
- else if (isRemote) {
402
- badges.push(renderJsxRefBadge(ref, 'codicon-cloud', true, style, ref.id, onContextMenu));
403
- }
404
- else {
405
- badges.push(renderJsxRefBadge(ref, 'codicon-git-branch', true, style, ref.id, onContextMenu));
406
- if (hasBoth && badges.length < 3) {
407
- badges.push(React.createElement("span", { key: `${ref.id}-cloud`, className: 'scm-history-ref-badge scm-history-ref-badge-cloud', title: ref.description ?? ref.name, style: style },
408
- React.createElement("i", { className: 'codicon codicon-cloud scm-history-ref-icon' })));
409
- }
514
+ // Current/remote/base refs are colored by role, others by the row's lane color
515
+ const { iconClass, colorIndex } = (0, scm_history_graph_helpers_1.getRefBadgePresentation)(ref, provider);
516
+ const backgroundColor = colorIndex !== undefined ? (0, scm_history_graph_helpers_1.laneColor)(colorIndex) : laneColorValue;
517
+ const style = backgroundColor
518
+ ? { backgroundColor, color: badgeForeground }
519
+ : {};
520
+ badges.push(renderJsxRefBadge(ref, iconClass, !isTag, style, ref.id, onContextMenu));
521
+ if (!isTag && !isRemote && hasBoth && badges.length < 3) {
522
+ badges.push(React.createElement("span", { key: `${ref.id}-cloud`, className: 'scm-history-ref-badge scm-history-ref-badge-cloud', title: ref.description ?? ref.name, style: style },
523
+ React.createElement("i", { className: 'codicon codicon-cloud scm-history-ref-icon' })));
410
524
  }
411
525
  }
412
526
  return badges;
@@ -434,7 +548,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
434
548
  }
435
549
  catch (err) {
436
550
  if (!cts.token.isCancellationRequested) {
437
- console.error('ScmHistoryGraphWidget: failed to load changes', err);
551
+ this.logger.error('Failed to load changes', err);
438
552
  this.expandedChanges.set(item.id, []);
439
553
  this.update();
440
554
  }
@@ -453,6 +567,10 @@ tslib_1.__decorate([
453
567
  (0, inversify_1.inject)(hover_service_1.HoverService),
454
568
  tslib_1.__metadata("design:type", hover_service_1.HoverService)
455
569
  ], ScmHistoryGraphWidget.prototype, "hoverService", void 0);
570
+ tslib_1.__decorate([
571
+ (0, inversify_1.inject)(clipboard_service_1.ClipboardService),
572
+ tslib_1.__metadata("design:type", Object)
573
+ ], ScmHistoryGraphWidget.prototype, "clipboardService", void 0);
456
574
  tslib_1.__decorate([
457
575
  (0, inversify_1.inject)(markdown_renderer_1.MarkdownRendererFactory),
458
576
  tslib_1.__metadata("design:type", Function)
@@ -477,6 +595,15 @@ tslib_1.__decorate([
477
595
  (0, inversify_1.inject)(scm_context_key_service_1.ScmContextKeyService),
478
596
  tslib_1.__metadata("design:type", scm_context_key_service_1.ScmContextKeyService)
479
597
  ], ScmHistoryGraphWidget.prototype, "scmContextKeys", void 0);
598
+ tslib_1.__decorate([
599
+ (0, inversify_1.inject)(scm_preferences_1.ScmPreferences),
600
+ tslib_1.__metadata("design:type", Object)
601
+ ], ScmHistoryGraphWidget.prototype, "scmPreferences", void 0);
602
+ tslib_1.__decorate([
603
+ (0, inversify_1.inject)(core_1.ILogger),
604
+ (0, inversify_1.named)('scm:ScmHistoryGraphWidget'),
605
+ tslib_1.__metadata("design:type", Object)
606
+ ], ScmHistoryGraphWidget.prototype, "logger", void 0);
480
607
  tslib_1.__decorate([
481
608
  (0, inversify_1.postConstruct)(),
482
609
  tslib_1.__metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"scm-history-graph-widget.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scm-history-graph-widget.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-widget.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=scm-history-graph-widget.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-history-graph-widget.spec.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-widget.spec.ts"],"names":[],"mappings":""}