@theia/scm 1.75.0-next.8 → 1.75.0

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 (97) 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/merge-editor/view/merge-editor-panes/merge-editor-pane-header.js +7 -10
  5. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.js.map +1 -1
  6. package/lib/browser/scm-action-button-widget.js +10 -15
  7. package/lib/browser/scm-action-button-widget.js.map +1 -1
  8. package/lib/browser/scm-amend-component.js +24 -57
  9. package/lib/browser/scm-amend-component.js.map +1 -1
  10. package/lib/browser/scm-commit-widget.d.ts +1 -1
  11. package/lib/browser/scm-commit-widget.d.ts.map +1 -1
  12. package/lib/browser/scm-commit-widget.js +9 -10
  13. package/lib/browser/scm-commit-widget.js.map +1 -1
  14. package/lib/browser/scm-context-key-service.d.ts +2 -0
  15. package/lib/browser/scm-context-key-service.d.ts.map +1 -1
  16. package/lib/browser/scm-context-key-service.js +4 -0
  17. package/lib/browser/scm-context-key-service.js.map +1 -1
  18. package/lib/browser/scm-context-key-service.spec.js +7 -0
  19. package/lib/browser/scm-context-key-service.spec.js.map +1 -1
  20. package/lib/browser/scm-frontend-module.d.ts.map +1 -1
  21. package/lib/browser/scm-frontend-module.js +6 -0
  22. package/lib/browser/scm-frontend-module.js.map +1 -1
  23. package/lib/browser/scm-history-graph-contribution.d.ts +49 -0
  24. package/lib/browser/scm-history-graph-contribution.d.ts.map +1 -0
  25. package/lib/browser/scm-history-graph-contribution.js +280 -0
  26. package/lib/browser/scm-history-graph-contribution.js.map +1 -0
  27. package/lib/browser/scm-history-graph-contribution.spec.d.ts +2 -0
  28. package/lib/browser/scm-history-graph-contribution.spec.d.ts.map +1 -0
  29. package/lib/browser/scm-history-graph-contribution.spec.js +119 -0
  30. package/lib/browser/scm-history-graph-contribution.spec.js.map +1 -0
  31. package/lib/browser/scm-history-graph-helpers.d.ts +59 -6
  32. package/lib/browser/scm-history-graph-helpers.d.ts.map +1 -1
  33. package/lib/browser/scm-history-graph-helpers.js +129 -5
  34. package/lib/browser/scm-history-graph-helpers.js.map +1 -1
  35. package/lib/browser/scm-history-graph-helpers.spec.d.ts +2 -0
  36. package/lib/browser/scm-history-graph-helpers.spec.d.ts.map +1 -0
  37. package/lib/browser/scm-history-graph-helpers.spec.js +154 -0
  38. package/lib/browser/scm-history-graph-helpers.spec.js.map +1 -0
  39. package/lib/browser/scm-history-graph-lanes.d.ts +19 -5
  40. package/lib/browser/scm-history-graph-lanes.d.ts.map +1 -1
  41. package/lib/browser/scm-history-graph-lanes.js +25 -9
  42. package/lib/browser/scm-history-graph-lanes.js.map +1 -1
  43. package/lib/browser/scm-history-graph-lanes.spec.js +62 -25
  44. package/lib/browser/scm-history-graph-lanes.spec.js.map +1 -1
  45. package/lib/browser/scm-history-graph-model.d.ts +75 -6
  46. package/lib/browser/scm-history-graph-model.d.ts.map +1 -1
  47. package/lib/browser/scm-history-graph-model.js +155 -10
  48. package/lib/browser/scm-history-graph-model.js.map +1 -1
  49. package/lib/browser/scm-history-graph-model.spec.js +299 -4
  50. package/lib/browser/scm-history-graph-model.spec.js.map +1 -1
  51. package/lib/browser/scm-history-graph-tooltip.d.ts +27 -2
  52. package/lib/browser/scm-history-graph-tooltip.d.ts.map +1 -1
  53. package/lib/browser/scm-history-graph-tooltip.js +113 -22
  54. package/lib/browser/scm-history-graph-tooltip.js.map +1 -1
  55. package/lib/browser/scm-history-graph-tooltip.spec.d.ts +2 -0
  56. package/lib/browser/scm-history-graph-tooltip.spec.d.ts.map +1 -0
  57. package/lib/browser/scm-history-graph-tooltip.spec.js +213 -0
  58. package/lib/browser/scm-history-graph-tooltip.spec.js.map +1 -0
  59. package/lib/browser/scm-history-graph-widget.d.ts +36 -2
  60. package/lib/browser/scm-history-graph-widget.d.ts.map +1 -1
  61. package/lib/browser/scm-history-graph-widget.js +174 -67
  62. package/lib/browser/scm-history-graph-widget.js.map +1 -1
  63. package/lib/browser/scm-history-graph-widget.spec.d.ts +2 -0
  64. package/lib/browser/scm-history-graph-widget.spec.d.ts.map +1 -0
  65. package/lib/browser/scm-history-graph-widget.spec.js +273 -0
  66. package/lib/browser/scm-history-graph-widget.spec.js.map +1 -0
  67. package/lib/browser/scm-provider.d.ts +9 -1
  68. package/lib/browser/scm-provider.d.ts.map +1 -1
  69. package/lib/browser/scm-provider.js.map +1 -1
  70. package/lib/browser/scm-repositories-widget.js +12 -21
  71. package/lib/browser/scm-repositories-widget.js.map +1 -1
  72. package/lib/browser/scm-tree-widget.js +35 -53
  73. package/lib/browser/scm-tree-widget.js.map +1 -1
  74. package/lib/common/scm-preferences.d.ts +3 -0
  75. package/lib/common/scm-preferences.d.ts.map +1 -1
  76. package/lib/common/scm-preferences.js +24 -0
  77. package/lib/common/scm-preferences.js.map +1 -1
  78. package/package.json +7 -7
  79. package/src/browser/decorations/scm-navigator-decorator.ts +3 -2
  80. package/src/browser/scm-context-key-service.spec.ts +9 -0
  81. package/src/browser/scm-context-key-service.ts +6 -0
  82. package/src/browser/scm-frontend-module.ts +7 -1
  83. package/src/browser/scm-history-graph-contribution.spec.ts +148 -0
  84. package/src/browser/scm-history-graph-contribution.ts +273 -0
  85. package/src/browser/scm-history-graph-helpers.spec.ts +193 -0
  86. package/src/browser/scm-history-graph-helpers.ts +180 -6
  87. package/src/browser/scm-history-graph-lanes.spec.ts +70 -25
  88. package/src/browser/scm-history-graph-lanes.ts +48 -11
  89. package/src/browser/scm-history-graph-model.spec.ts +378 -12
  90. package/src/browser/scm-history-graph-model.ts +181 -13
  91. package/src/browser/scm-history-graph-tooltip.spec.ts +254 -0
  92. package/src/browser/scm-history-graph-tooltip.ts +144 -24
  93. package/src/browser/scm-history-graph-widget.spec.ts +322 -0
  94. package/src/browser/scm-history-graph-widget.tsx +199 -39
  95. package/src/browser/scm-provider.ts +9 -1
  96. package/src/browser/style/scm-history-graph.css +53 -2
  97. package/src/common/scm-preferences.ts +27 -0
@@ -1,4 +1,9 @@
1
1
  "use strict";
2
+ var ScmHistoryGraphWidget_1;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ScmHistoryGraphWidget = exports.SCM_HISTORY_ITEM_REF_CONTEXT_MENU = exports.SCM_HISTORY_ITEM_CONTEXT_MENU = exports.SCM_HISTORY_TITLE_MENU = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const jsx_runtime_1 = require("@theia/core/shared/react/jsx-runtime");
2
7
  // *****************************************************************************
3
8
  // Copyright (C) 2026 EclipseSource GmbH and others.
4
9
  //
@@ -14,27 +19,28 @@
14
19
  //
15
20
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
21
  // *****************************************************************************
17
- var ScmHistoryGraphWidget_1;
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.ScmHistoryGraphWidget = exports.SCM_HISTORY_ITEM_REF_CONTEXT_MENU = exports.SCM_HISTORY_ITEM_CONTEXT_MENU = exports.SCM_HISTORY_TITLE_MENU = void 0;
20
- const tslib_1 = require("tslib");
21
22
  const React = require("@theia/core/shared/react");
22
23
  const react_virtuoso_1 = require("@theia/core/shared/react-virtuoso");
23
24
  const inversify_1 = require("@theia/core/shared/inversify");
24
25
  const react_widget_1 = require("@theia/core/lib/browser/widgets/react-widget");
25
26
  const label_provider_1 = require("@theia/core/lib/browser/label-provider");
26
27
  const hover_service_1 = require("@theia/core/lib/browser/hover-service");
28
+ const clipboard_service_1 = require("@theia/core/lib/browser/clipboard-service");
27
29
  const markdown_renderer_1 = require("@theia/core/lib/browser/markdown-rendering/markdown-renderer");
28
30
  const scm_history_graph_model_1 = require("./scm-history-graph-model");
29
31
  const scm_service_1 = require("./scm-service");
30
32
  const uri_1 = require("@theia/core/lib/common/uri");
31
33
  const nls_1 = require("@theia/core/lib/common/nls");
32
34
  const cancellation_1 = require("@theia/core/lib/common/cancellation");
35
+ const disposable_1 = require("@theia/core/lib/common/disposable");
36
+ const event_1 = require("@theia/core/lib/common/event");
33
37
  const context_menu_renderer_1 = require("@theia/core/lib/browser/context-menu-renderer");
34
38
  const opener_service_1 = require("@theia/core/lib/browser/opener-service");
35
39
  const diff_uris_1 = require("@theia/core/lib/browser/diff-uris");
36
40
  const scm_context_key_service_1 = require("./scm-context-key-service");
41
+ const scm_preferences_1 = require("../common/scm-preferences");
37
42
  const scm_history_graph_helpers_1 = require("./scm-history-graph-helpers");
43
+ const core_1 = require("@theia/core");
38
44
  const scm_history_graph_tooltip_1 = require("./scm-history-graph-tooltip");
39
45
  /** Menu path matching the VS Code 'scm/history/title' contribution point (graph section toolbar). */
40
46
  exports.SCM_HISTORY_TITLE_MENU = ['plugin_scm/history/title'];
@@ -48,11 +54,20 @@ const ROW_HEIGHT = 22;
48
54
  const LANE_WIDTH = 22;
49
55
  /** Y position of the commit dot — vertically centered in the row. */
50
56
  const DOT_CY = 11;
57
+ /** Indentation of one level of the change tree, in pixels. */
58
+ const TREE_INDENT = 8;
59
+ /** Shared empty set for history items whose change tree is fully expanded. */
60
+ const EMPTY_FOLDER_SET = new Set();
61
+ /**
62
+ * Indentation for a row of the change tree. Like Theia's tree widget, the depth
63
+ * is applied as padding rather than through a class, as it is not known upfront.
64
+ */
65
+ function indentStyle(depth) {
66
+ return depth > 0 ? { paddingLeft: `${4 + depth * TREE_INDENT}px` } : undefined;
67
+ }
51
68
  /** Renders a ref badge as a JSX element for the commit row. */
52
69
  function renderJsxRefBadge(ref, iconClass, showText, style, key, onContextMenu) {
53
- 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 },
54
- React.createElement("i", { className: `codicon ${iconClass} scm-history-ref-icon` }),
55
- showText && React.createElement("span", { className: 'scm-history-ref-text' }, ref.name)));
70
+ return ((0, jsx_runtime_1.jsxs)("span", { className: `scm-history-ref-badge ${(0, scm_history_graph_helpers_1.getRefBadgeClass)(ref)}`, title: ref.description ?? ref.name, style: style, onContextMenu: onContextMenu, children: [(0, jsx_runtime_1.jsx)("i", { className: `codicon ${iconClass} scm-history-ref-icon` }), showText && (0, jsx_runtime_1.jsx)("span", { className: 'scm-history-ref-text', children: ref.name })] }, key));
56
71
  }
57
72
  // ── Widget ──────────────────────────────────────────────────────────────────
58
73
  let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.ReactWidget {
@@ -62,25 +77,39 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
62
77
  constructor() {
63
78
  super();
64
79
  this.selectedIndex = -1;
80
+ /** Handle on the virtualized list, used to scroll an entry into view. */
81
+ this.listRef = React.createRef();
65
82
  /** Map from commit id → loaded changes (undefined = not loaded yet). */
66
83
  this.expandedChanges = new Map();
67
84
  /** Set of commit ids that are currently expanded. */
68
85
  this.expandedIds = new Set();
86
+ /** Map from commit id → folder paths collapsed in its change tree. */
87
+ this.collapsedFolders = new Map();
69
88
  /** Map from commit id → in-flight CancellationTokenSource for loadChanges. */
70
89
  this.loadChangesCts = new Map();
90
+ /** Cleanup for the content of the hover currently being shown. */
91
+ this.toDisposeOnHover = new disposable_1.DisposableCollection();
92
+ this.onDidChangeToolbarItemsEmitter = new event_1.Emitter();
93
+ /** Re-renders the part toolbar on model changes, e.g. to reflect the toggled state of the ref filter picker. */
94
+ this.onDidChangeToolbarItems = this.onDidChangeToolbarItemsEmitter.event;
71
95
  this.handleEndReached = () => {
72
96
  if (this.model.hasMore && !this.model.loading) {
73
97
  this.model.loadMore();
74
98
  }
75
99
  };
76
100
  this.handleRowMouseEnter = (e, entry) => {
101
+ this.toDisposeOnHover.dispose();
77
102
  this.hoverService.requestHover({
78
- content: (0, scm_history_graph_tooltip_1.buildHtmlTooltip)(entry, this.markdownRenderer),
103
+ content: this.buildTooltip(entry),
79
104
  target: e.currentTarget,
80
105
  position: 'right',
81
106
  interactive: true,
82
107
  });
83
108
  };
109
+ this.handleFolderClick = (e, itemId, path) => {
110
+ e.stopPropagation();
111
+ this.toggleFolder(itemId, path);
112
+ };
84
113
  this.handleChangeClick = (e, change, changeKey) => {
85
114
  e.stopPropagation();
86
115
  this.selectedChangeKey = changeKey;
@@ -136,6 +165,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
136
165
  const { item } = entry;
137
166
  if (this.expandedIds.has(item.id)) {
138
167
  this.expandedIds.delete(item.id);
168
+ this.collapsedFolders.delete(item.id);
139
169
  const cts = this.loadChangesCts.get(item.id);
140
170
  if (cts) {
141
171
  cts.cancel();
@@ -167,9 +197,17 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
167
197
  this.node.tabIndex = 0;
168
198
  }
169
199
  init() {
200
+ this.toDispose.push(this.onDidChangeToolbarItemsEmitter);
170
201
  this.toDispose.push(this.model.onDidChange(() => {
171
202
  this.updateContextKeys();
172
203
  this.update();
204
+ this.onDidChangeToolbarItemsEmitter.fire();
205
+ }));
206
+ this.toDispose.push(this.model.onDidRequestReveal(index => this.revealIndex(index)));
207
+ this.toDispose.push(this.scmPreferences.onPreferenceChanged(e => {
208
+ if (e.preferenceName.startsWith('scm.graph.')) {
209
+ this.update();
210
+ }
173
211
  }));
174
212
  this.toDispose.push({
175
213
  dispose: () => {
@@ -180,12 +218,22 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
180
218
  this.loadChangesCts.clear();
181
219
  }
182
220
  });
221
+ this.toDispose.push(this.toDisposeOnHover);
222
+ this.update();
223
+ }
224
+ /** Scrolls the entry at `index` into view and selects it. */
225
+ revealIndex(index) {
226
+ this.selectedIndex = index;
227
+ this.selectedChangeKey = undefined;
228
+ this.listRef.current?.scrollToIndex({ index, align: 'center' });
183
229
  this.update();
184
230
  }
185
231
  updateContextKeys() {
186
232
  const provider = this.model.provider;
187
233
  this.scmContextKeys.scmCurrentHistoryItemRefHasRemote.set(!!provider?.currentHistoryItemRemoteRef);
188
234
  this.scmContextKeys.scmCurrentHistoryItemRefHasBase.set(!!provider?.currentHistoryItemBaseRef);
235
+ // Commands like git.pullRef/git.pushRef gate their enablement on this key.
236
+ this.scmContextKeys.scmCurrentHistoryItemRefInFilter.set(!!provider?.currentHistoryItemRef && this.model.isCurrentRefInFilter());
189
237
  }
190
238
  render() {
191
239
  const { entries, hasMore, loading } = this.model;
@@ -194,9 +242,9 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
194
242
  // render a loading indicator to avoid a flash of "no history" on startup.
195
243
  if (!loading && entries.length === 0) {
196
244
  if (!this.model.hasAttemptedLoad) {
197
- return (React.createElement("div", { className: 'scm-history-loading' }, nls_1.nls.localizeByDefault('Loading')));
245
+ return ((0, jsx_runtime_1.jsx)("div", { className: 'scm-history-loading', children: nls_1.nls.localizeByDefault('Loading') }));
198
246
  }
199
- return (React.createElement("div", { className: 'scm-history-empty' }, nls_1.nls.localize('theia/scm/noHistory', 'No source control history available.')));
247
+ return ((0, jsx_runtime_1.jsx)("div", { className: 'scm-history-empty', children: nls_1.nls.localize('theia/scm/noHistory', 'No source control history available.') }));
200
248
  }
201
249
  // Determine how many lanes are active for SVG width
202
250
  const maxLane = entries.reduce((max, e) => {
@@ -205,47 +253,98 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
205
253
  }, 0);
206
254
  const svgWidth = (maxLane + 1) * LANE_WIDTH;
207
255
  const footer = loading
208
- ? () => React.createElement("div", { className: 'scm-history-loading' }, nls_1.nls.localizeByDefault('Loading'))
256
+ ? () => (0, jsx_runtime_1.jsx)("div", { className: 'scm-history-loading', children: nls_1.nls.localizeByDefault('Loading') })
209
257
  : hasMore
210
- ? () => (React.createElement("div", { className: 'scm-history-load-more', onClick: this.handleLoadMore, role: 'button', tabIndex: 0, onKeyDown: this.handleLoadMoreKey }, nls_1.nls.localizeByDefault('Load more')))
258
+ ? () => ((0, jsx_runtime_1.jsx)("div", { className: 'scm-history-load-more', onClick: this.handleLoadMore, role: 'button', tabIndex: 0, onKeyDown: this.handleLoadMoreKey, children: nls_1.nls.localizeByDefault('Load more') }))
211
259
  : 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' } }));
260
+ return ((0, jsx_runtime_1.jsx)(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
261
  }
214
262
  renderRow(entry, idx, svgWidth) {
215
263
  const { item, graphRow } = entry;
216
264
  const isSelected = idx === this.selectedIndex;
217
265
  const isExpanded = this.expandedIds.has(item.id);
218
266
  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;
221
- return (React.createElement(React.Fragment, { key: item.id },
222
- 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
- this.renderGraphSvg(graphRow, svgWidth, isHead),
224
- React.createElement("div", { className: 'scm-history-graph-info' },
225
- React.createElement("span", { className: 'scm-history-subject' }, item.subject),
226
- item.author && (React.createElement("span", { className: 'scm-history-author' }, item.author)),
227
- item.references && item.references.length > 0 && (React.createElement("span", { className: 'scm-history-badges scm-history-badges-right' }, this.renderRefBadges(item.references, entry))))),
228
- isExpanded && this.renderChangesRows(item.id, svgWidth, graphRow, changes)));
267
+ const isHead = entry.isCurrent;
268
+ return ((0, jsx_runtime_1.jsxs)(React.Fragment, { children: [(0, jsx_runtime_1.jsxs)("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), children: [this.renderGraphSvg(graphRow, svgWidth, isHead), (0, jsx_runtime_1.jsxs)("div", { className: 'scm-history-graph-info', children: [(0, jsx_runtime_1.jsx)("span", { className: 'scm-history-subject', children: item.subject }), item.author && ((0, jsx_runtime_1.jsx)("span", { className: 'scm-history-author', children: item.author })), item.references && item.references.length > 0 && ((0, jsx_runtime_1.jsx)("span", { className: 'scm-history-badges scm-history-badges-right', children: this.renderRefBadges(item.references, entry) }))] })] }), isExpanded && this.renderChangesRows(item.id, svgWidth, graphRow, changes)] }, item.id));
229
269
  }
230
270
  get markdownRenderer() {
231
271
  this._markdownRenderer ||= this.markdownRendererFactory();
232
272
  return this._markdownRenderer;
233
273
  }
274
+ /**
275
+ * Prefers the hover content supplied by the provider, so that its own links and commands
276
+ * (author `mailto:`, "Open Commit", remote actions) stay intact, and falls back to the hover
277
+ * derived from the history item's fields for providers that supply none.
278
+ */
279
+ buildTooltip(entry) {
280
+ const { tooltip } = entry.item;
281
+ if (tooltip) {
282
+ const provided = (0, scm_history_graph_tooltip_1.buildProviderTooltip)(tooltip, this.markdownRenderer, this.openerService, this.toDisposeOnHover);
283
+ if (provided) {
284
+ return provided;
285
+ }
286
+ }
287
+ return (0, scm_history_graph_tooltip_1.buildHtmlTooltip)(entry, this.markdownRenderer, this.model.provider, {
288
+ openCommit: () => this.openCommitFromTooltip(entry),
289
+ copyCommitHash: () => this.clipboardService.writeText(entry.item.id),
290
+ });
291
+ }
292
+ /** Selects the commit and expands its changes, closing the hover first. */
293
+ openCommitFromTooltip(entry) {
294
+ this.hoverService.cancelHover();
295
+ const idx = this.model.entries.indexOf(entry);
296
+ if (idx < 0) {
297
+ return;
298
+ }
299
+ if (this.expandedIds.has(entry.item.id)) {
300
+ this.selectedIndex = idx;
301
+ this.update();
302
+ }
303
+ else {
304
+ this.handleRowClick(idx, entry);
305
+ }
306
+ }
234
307
  renderChangesRows(itemId, svgWidth, graphRow, changes) {
235
308
  if (changes === 'loading' || changes === undefined) {
236
- return (React.createElement("div", { key: `${itemId}-loading`, className: 'scm-history-changes-loading' }, nls_1.nls.localizeByDefault('Loading')));
309
+ return ((0, jsx_runtime_1.jsx)("div", { className: 'scm-history-changes-loading', children: nls_1.nls.localizeByDefault('Loading') }, `${itemId}-loading`));
237
310
  }
238
311
  if (changes.length === 0) {
239
- return (React.createElement("div", { key: `${itemId}-empty`, className: 'scm-history-changes-empty' }, nls_1.nls.localize('theia/scm/noChanges', 'No changed files.')));
312
+ return ((0, jsx_runtime_1.jsx)("div", { className: 'scm-history-changes-empty', children: nls_1.nls.localize('theia/scm/noChanges', 'No changed files.') }, `${itemId}-empty`));
313
+ }
314
+ if (this.model.viewMode === 'tree') {
315
+ const rootUri = this.scmService.selectedRepository?.provider.rootUri;
316
+ const rows = (0, scm_history_graph_helpers_1.buildChangeTreeRows)(changes, rootUri, this.collapsedFolders.get(itemId) ?? EMPTY_FOLDER_SET);
317
+ return ((0, jsx_runtime_1.jsx)(React.Fragment, { children: rows.map(row => row.type === 'folder'
318
+ ? this.renderChangeFolderRow(row, itemId, svgWidth, graphRow)
319
+ : this.renderChangeRow(row.change, row.index, itemId, svgWidth, graphRow, row.depth)) }, `${itemId}-changes`));
240
320
  }
241
- return (React.createElement(React.Fragment, { key: `${itemId}-changes` }, changes.map((change, ci) => this.renderChangeRow(change, ci, itemId, svgWidth, graphRow))));
321
+ return ((0, jsx_runtime_1.jsx)(React.Fragment, { children: changes.map((change, ci) => this.renderChangeRow(change, ci, itemId, svgWidth, graphRow)) }, `${itemId}-changes`));
322
+ }
323
+ renderChangeFolderRow(row, itemId, svgWidth, graphRow) {
324
+ const collapsed = this.isFolderCollapsed(itemId, row.path);
325
+ return ((0, jsx_runtime_1.jsxs)("div", { 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, children: [this.renderChangeRowSvg(graphRow, svgWidth), (0, jsx_runtime_1.jsxs)("div", { className: 'scm-history-change-info', style: indentStyle(row.depth), children: [(0, jsx_runtime_1.jsx)("span", { className: `codicon ${collapsed ? 'codicon-chevron-right' : 'codicon-chevron-down'} scm-history-change-twistie` }), (0, jsx_runtime_1.jsx)("span", { className: 'name scm-history-change-name', title: row.path, children: row.label })] })] }, `${itemId}-folder-${row.path}`));
242
326
  }
243
- renderChangeRow(change, ci, itemId, svgWidth, graphRow) {
327
+ isFolderCollapsed(itemId, path) {
328
+ return !!this.collapsedFolders.get(itemId)?.has(path);
329
+ }
330
+ toggleFolder(itemId, path) {
331
+ let collapsed = this.collapsedFolders.get(itemId);
332
+ if (!collapsed) {
333
+ collapsed = new Set();
334
+ this.collapsedFolders.set(itemId, collapsed);
335
+ }
336
+ if (!collapsed.delete(path)) {
337
+ collapsed.add(path);
338
+ }
339
+ this.update();
340
+ }
341
+ renderChangeRow(change, ci, itemId, svgWidth, graphRow, depth = 0) {
244
342
  const rootUri = this.scmService.selectedRepository?.provider.rootUri;
245
343
  const uri = change.modifiedUri ?? change.originalUri ?? change.uri;
246
344
  const relativePath = (0, scm_history_graph_helpers_1.getRepoRelativePath)(uri, rootUri);
247
345
  const fileName = (0, scm_history_graph_helpers_1.getFileName)(relativePath);
248
- const dirPath = relativePath.includes('/')
346
+ // In tree mode the folder rows already carry the directory.
347
+ const dirPath = this.model.viewMode === 'list' && relativePath.includes('/')
249
348
  ? relativePath.slice(0, relativePath.lastIndexOf('/'))
250
349
  : '';
251
350
  const status = (0, scm_history_graph_helpers_1.getChangeStatus)(change);
@@ -254,14 +353,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
254
353
  const fileIcon = this.labelProvider.getIcon(resourceUri);
255
354
  const changeKey = `${itemId}-change-${ci}`;
256
355
  const isSelected = this.selectedChangeKey === changeKey;
257
- 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
- this.renderChangeRowSvg(graphRow, svgWidth),
259
- React.createElement("div", { className: 'scm-history-change-info' },
260
- React.createElement("span", { className: `${fileIcon} file-icon scm-history-change-file-icon` }),
261
- React.createElement("div", { className: 'scm-history-change-name-container' },
262
- React.createElement("span", { className: 'name scm-history-change-name', title: relativePath }, fileName),
263
- dirPath && React.createElement("span", { className: 'path scm-history-change-dir' }, dirPath)),
264
- React.createElement("span", { className: `scm-history-change-status ${statusClass}` }, status))));
356
+ return ((0, jsx_runtime_1.jsxs)("div", { className: `scm-history-change-row${isSelected ? ' selected' : ''}`, onClick: e => this.handleChangeClick(e, change, changeKey), role: 'treeitem', tabIndex: -1, children: [this.renderChangeRowSvg(graphRow, svgWidth), (0, jsx_runtime_1.jsxs)("div", { className: 'scm-history-change-info', style: indentStyle(depth), children: [(0, jsx_runtime_1.jsx)("span", { className: `${fileIcon} file-icon scm-history-change-file-icon` }), (0, jsx_runtime_1.jsxs)("div", { className: 'scm-history-change-name-container', children: [(0, jsx_runtime_1.jsx)("span", { className: 'name scm-history-change-name', title: relativePath, children: fileName }), dirPath && (0, jsx_runtime_1.jsx)("span", { className: 'path scm-history-change-dir', children: dirPath })] }), (0, jsx_runtime_1.jsx)("span", { className: `scm-history-change-status ${statusClass}`, children: status })] })] }, changeKey));
265
357
  }
266
358
  openChange(change) {
267
359
  try {
@@ -282,7 +374,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
282
374
  }
283
375
  }
284
376
  catch (err) {
285
- console.error('ScmHistoryGraphWidget: failed to open change', err);
377
+ this.logger.error('Failed to open change', err);
286
378
  }
287
379
  }
288
380
  renderChangeRowSvg(graphRow, svgWidth) {
@@ -296,12 +388,12 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
296
388
  }
297
389
  const x = edge.fromLane * LANE_WIDTH + 11;
298
390
  const color = (0, scm_history_graph_helpers_1.laneColor)(edge.color);
299
- elements.push(React.createElement("path", { key: `pass-${keyIdx++}`, fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${x} 0 V 22`, style: { stroke: color } }));
391
+ elements.push((0, jsx_runtime_1.jsx)("path", { fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${x} 0 V 22`, style: { stroke: color } }, `pass-${keyIdx++}`));
300
392
  }
301
393
  if (graphRow.hasContinuation) {
302
- elements.push(React.createElement("path", { key: `commit-${keyIdx++}`, fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${commitX} 0 V 22`, style: { stroke: commitColor } }));
394
+ elements.push((0, jsx_runtime_1.jsx)("path", { fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${commitX} 0 V 22`, style: { stroke: commitColor } }, `commit-${keyIdx++}`));
303
395
  }
304
- return (React.createElement("svg", { className: 'scm-history-graph-svg', style: { height: `${ROW_HEIGHT}px`, width: `${svgWidth}px` } }, elements));
396
+ return ((0, jsx_runtime_1.jsx)("svg", { className: 'scm-history-graph-svg', style: { height: `${ROW_HEIGHT}px`, width: `${svgWidth}px` }, children: elements }));
305
397
  }
306
398
  /**
307
399
  * Renders the SVG graph column for a commit row, matching VS Code's SVG structure:
@@ -329,7 +421,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
329
421
  }
330
422
  const x = edge.fromLane * LANE_WIDTH + 11;
331
423
  const color = (0, scm_history_graph_helpers_1.laneColor)(edge.color);
332
- elements.push(React.createElement("path", { key: `pass-${keyIdx++}`, fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${x} 0 V 22`, style: { stroke: color } }));
424
+ elements.push((0, jsx_runtime_1.jsx)("path", { fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${x} 0 V 22`, style: { stroke: color } }, `pass-${keyIdx++}`));
333
425
  }
334
426
  // Merge-in edges: source lane at top curves into the commit position (mid-row)
335
427
  for (const edge of row.edges) {
@@ -341,17 +433,19 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
341
433
  // Cubic bezier: start at (srcX, 0), control points pull both ends to mid-row,
342
434
  // end at commit position (commitX, cy)
343
435
  const d = `M ${srcX} 0 C ${srcX} ${cy}, ${commitX} ${cy}, ${commitX} ${cy}`;
344
- elements.push(React.createElement("path", { key: `merge-${keyIdx++}`, fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: d, style: { stroke: color } }));
436
+ elements.push((0, jsx_runtime_1.jsx)("path", { fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: d, style: { stroke: color } }, `merge-${keyIdx++}`));
345
437
  }
346
438
  // Commit lane lines — split at cy=11
347
439
  // 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)
440
+ // (i.e. this commit was referenced as a parent by an earlier row).
441
+ // It keeps the color inherited from the chain above, which may differ
442
+ // from the commit's own (ref-based) color.
349
443
  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 } }));
444
+ elements.push((0, jsx_runtime_1.jsx)("path", { fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${commitX} 0 V ${cy}`, style: { stroke: (0, scm_history_graph_helpers_1.laneColor)(row.topColor) } }, `top-${keyIdx++}`));
351
445
  }
352
446
  // Bottom segment: only drawn if the lane continues to a parent below
353
447
  if (row.hasContinuation) {
354
- elements.push(React.createElement("path", { key: `bottom-${keyIdx++}`, fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${commitX} ${cy} V 22`, style: { stroke: commitColor } }));
448
+ elements.push((0, jsx_runtime_1.jsx)("path", { fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: `M ${commitX} ${cy} V 22`, style: { stroke: commitColor } }, `bottom-${keyIdx++}`));
355
449
  }
356
450
  // Branch-out edges: commit position (mid-row) curves down to a new lane at bottom
357
451
  for (const edge of row.edges) {
@@ -365,27 +459,30 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
365
459
  // down-and-right (or left) from the commit circle to the target lane.
366
460
  const srcX = edge.fromLane * LANE_WIDTH + 11;
367
461
  const d = `M ${srcX} ${cy} C ${srcX} 22, ${dstX} ${cy}, ${dstX} 22`;
368
- elements.push(React.createElement("path", { key: `branch-${keyIdx++}`, fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: d, style: { stroke: color } }));
462
+ elements.push((0, jsx_runtime_1.jsx)("path", { fill: 'none', strokeWidth: '1px', strokeLinecap: 'round', d: d, style: { stroke: color } }, `branch-${keyIdx++}`));
369
463
  }
370
464
  // Commit circle — drawn last so it renders on top of all lines
371
465
  if (isHead) {
372
- elements.push(React.createElement("circle", { key: `circle-${keyIdx++}`, cx: commitX, cy: cy, r: 7, style: { strokeWidth: '2px', fill: commitColor } }));
373
- elements.push(React.createElement("circle", { key: `inner-${keyIdx++}`, cx: commitX, cy: cy, r: 2, style: { strokeWidth: '4px', fill: 'var(--theia-editor-background)', stroke: 'var(--theia-editor-background)' } }));
466
+ elements.push((0, jsx_runtime_1.jsx)("circle", { cx: commitX, cy: cy, r: 7, style: { strokeWidth: '2px', fill: commitColor } }, `circle-${keyIdx++}`));
467
+ elements.push((0, jsx_runtime_1.jsx)("circle", { cx: commitX, cy: cy, r: 2, style: { strokeWidth: '4px', fill: 'var(--theia-editor-background)', stroke: 'var(--theia-editor-background)' } }, `inner-${keyIdx++}`));
374
468
  }
375
469
  else {
376
- elements.push(React.createElement("circle", { key: `circle-${keyIdx++}`, cx: commitX, cy: cy, r: 5, style: { strokeWidth: '2px', fill: commitColor } }));
470
+ elements.push((0, jsx_runtime_1.jsx)("circle", { cx: commitX, cy: cy, r: 5, style: { strokeWidth: '2px', fill: commitColor } }, `circle-${keyIdx++}`));
377
471
  }
378
- return (React.createElement("svg", { className: 'scm-history-graph-svg', style: { height: `${ROW_HEIGHT}px`, width: `${svgWidth}px` } }, elements));
472
+ return ((0, jsx_runtime_1.jsx)("svg", { className: 'scm-history-graph-svg', style: { height: `${ROW_HEIGHT}px`, width: `${svgWidth}px` }, children: elements }));
379
473
  }
380
474
  renderRefBadges(refs, entry) {
381
475
  if (!refs || refs.length === 0) {
382
476
  return undefined;
383
477
  }
478
+ const provider = this.model.provider;
479
+ const visibleRefs = (0, scm_history_graph_helpers_1.filterRefsForBadges)(refs, provider, this.scmPreferences['scm.graph.badges'] ?? 'filter', this.model.historyItemRefFilter);
480
+ if (visibleRefs.length === 0) {
481
+ return undefined;
482
+ }
384
483
  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
- : {};
484
+ const deduplicated = (0, scm_history_graph_helpers_1.deduplicateRefs)(visibleRefs);
485
+ const badgeForeground = 'var(--theia-scmGraph-historyItemRefForeground, var(--theia-badge-foreground))';
389
486
  const badges = [];
390
487
  for (const info of deduplicated) {
391
488
  if (badges.length >= 3) {
@@ -395,18 +492,15 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
395
492
  const isTag = (0, scm_history_graph_helpers_1.isTagRef)(ref);
396
493
  const isRemote = (0, scm_history_graph_helpers_1.isRemoteRef)(ref);
397
494
  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
- }
495
+ // Current/remote/base refs are colored by role, others by the row's lane color
496
+ const { iconClass, colorIndex } = (0, scm_history_graph_helpers_1.getRefBadgePresentation)(ref, provider);
497
+ const backgroundColor = colorIndex !== undefined ? (0, scm_history_graph_helpers_1.laneColor)(colorIndex) : laneColorValue;
498
+ const style = backgroundColor
499
+ ? { backgroundColor, color: badgeForeground }
500
+ : {};
501
+ badges.push(renderJsxRefBadge(ref, iconClass, !isTag, style, ref.id, onContextMenu));
502
+ if (!isTag && !isRemote && hasBoth && badges.length < 3) {
503
+ badges.push((0, jsx_runtime_1.jsx)("span", { className: 'scm-history-ref-badge scm-history-ref-badge-cloud', title: ref.description ?? ref.name, style: style, children: (0, jsx_runtime_1.jsx)("i", { className: 'codicon codicon-cloud scm-history-ref-icon' }) }, `${ref.id}-cloud`));
410
504
  }
411
505
  }
412
506
  return badges;
@@ -434,7 +528,7 @@ let ScmHistoryGraphWidget = class ScmHistoryGraphWidget extends react_widget_1.R
434
528
  }
435
529
  catch (err) {
436
530
  if (!cts.token.isCancellationRequested) {
437
- console.error('ScmHistoryGraphWidget: failed to load changes', err);
531
+ this.logger.error('Failed to load changes', err);
438
532
  this.expandedChanges.set(item.id, []);
439
533
  this.update();
440
534
  }
@@ -453,6 +547,10 @@ tslib_1.__decorate([
453
547
  (0, inversify_1.inject)(hover_service_1.HoverService),
454
548
  tslib_1.__metadata("design:type", hover_service_1.HoverService)
455
549
  ], ScmHistoryGraphWidget.prototype, "hoverService", void 0);
550
+ tslib_1.__decorate([
551
+ (0, inversify_1.inject)(clipboard_service_1.ClipboardService),
552
+ tslib_1.__metadata("design:type", Object)
553
+ ], ScmHistoryGraphWidget.prototype, "clipboardService", void 0);
456
554
  tslib_1.__decorate([
457
555
  (0, inversify_1.inject)(markdown_renderer_1.MarkdownRendererFactory),
458
556
  tslib_1.__metadata("design:type", Function)
@@ -477,6 +575,15 @@ tslib_1.__decorate([
477
575
  (0, inversify_1.inject)(scm_context_key_service_1.ScmContextKeyService),
478
576
  tslib_1.__metadata("design:type", scm_context_key_service_1.ScmContextKeyService)
479
577
  ], ScmHistoryGraphWidget.prototype, "scmContextKeys", void 0);
578
+ tslib_1.__decorate([
579
+ (0, inversify_1.inject)(scm_preferences_1.ScmPreferences),
580
+ tslib_1.__metadata("design:type", Object)
581
+ ], ScmHistoryGraphWidget.prototype, "scmPreferences", void 0);
582
+ tslib_1.__decorate([
583
+ (0, inversify_1.inject)(core_1.ILogger),
584
+ (0, inversify_1.named)('scm:ScmHistoryGraphWidget'),
585
+ tslib_1.__metadata("design:type", Object)
586
+ ], ScmHistoryGraphWidget.prototype, "logger", void 0);
480
587
  tslib_1.__decorate([
481
588
  (0, inversify_1.postConstruct)(),
482
589
  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":""}