@theia/scm 1.75.0-next.14 → 1.75.0-next.19

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 (69) hide show
  1. package/lib/browser/scm-frontend-module.d.ts.map +1 -1
  2. package/lib/browser/scm-frontend-module.js +6 -0
  3. package/lib/browser/scm-frontend-module.js.map +1 -1
  4. package/lib/browser/scm-history-graph-contribution.d.ts +42 -0
  5. package/lib/browser/scm-history-graph-contribution.d.ts.map +1 -0
  6. package/lib/browser/scm-history-graph-contribution.js +220 -0
  7. package/lib/browser/scm-history-graph-contribution.js.map +1 -0
  8. package/lib/browser/scm-history-graph-contribution.spec.d.ts +2 -0
  9. package/lib/browser/scm-history-graph-contribution.spec.d.ts.map +1 -0
  10. package/lib/browser/scm-history-graph-contribution.spec.js +66 -0
  11. package/lib/browser/scm-history-graph-contribution.spec.js.map +1 -0
  12. package/lib/browser/scm-history-graph-helpers.d.ts +34 -6
  13. package/lib/browser/scm-history-graph-helpers.d.ts.map +1 -1
  14. package/lib/browser/scm-history-graph-helpers.js +71 -5
  15. package/lib/browser/scm-history-graph-helpers.js.map +1 -1
  16. package/lib/browser/scm-history-graph-helpers.spec.d.ts +2 -0
  17. package/lib/browser/scm-history-graph-helpers.spec.d.ts.map +1 -0
  18. package/lib/browser/scm-history-graph-helpers.spec.js +96 -0
  19. package/lib/browser/scm-history-graph-helpers.spec.js.map +1 -0
  20. package/lib/browser/scm-history-graph-lanes.d.ts +19 -5
  21. package/lib/browser/scm-history-graph-lanes.d.ts.map +1 -1
  22. package/lib/browser/scm-history-graph-lanes.js +25 -9
  23. package/lib/browser/scm-history-graph-lanes.js.map +1 -1
  24. package/lib/browser/scm-history-graph-lanes.spec.js +62 -25
  25. package/lib/browser/scm-history-graph-lanes.spec.js.map +1 -1
  26. package/lib/browser/scm-history-graph-model.d.ts +49 -4
  27. package/lib/browser/scm-history-graph-model.d.ts.map +1 -1
  28. package/lib/browser/scm-history-graph-model.js +101 -9
  29. package/lib/browser/scm-history-graph-model.js.map +1 -1
  30. package/lib/browser/scm-history-graph-model.spec.js +197 -4
  31. package/lib/browser/scm-history-graph-model.spec.js.map +1 -1
  32. package/lib/browser/scm-history-graph-tooltip.d.ts +27 -2
  33. package/lib/browser/scm-history-graph-tooltip.d.ts.map +1 -1
  34. package/lib/browser/scm-history-graph-tooltip.js +113 -22
  35. package/lib/browser/scm-history-graph-tooltip.js.map +1 -1
  36. package/lib/browser/scm-history-graph-tooltip.spec.d.ts +2 -0
  37. package/lib/browser/scm-history-graph-tooltip.spec.d.ts.map +1 -0
  38. package/lib/browser/scm-history-graph-tooltip.spec.js +213 -0
  39. package/lib/browser/scm-history-graph-tooltip.spec.js.map +1 -0
  40. package/lib/browser/scm-history-graph-widget.d.ts +21 -1
  41. package/lib/browser/scm-history-graph-widget.d.ts.map +1 -1
  42. package/lib/browser/scm-history-graph-widget.js +84 -24
  43. package/lib/browser/scm-history-graph-widget.js.map +1 -1
  44. package/lib/browser/scm-history-graph-widget.spec.js +11 -1
  45. package/lib/browser/scm-history-graph-widget.spec.js.map +1 -1
  46. package/lib/browser/scm-provider.d.ts +9 -1
  47. package/lib/browser/scm-provider.d.ts.map +1 -1
  48. package/lib/browser/scm-provider.js.map +1 -1
  49. package/lib/common/scm-preferences.d.ts +3 -0
  50. package/lib/common/scm-preferences.d.ts.map +1 -1
  51. package/lib/common/scm-preferences.js +24 -0
  52. package/lib/common/scm-preferences.js.map +1 -1
  53. package/package.json +6 -6
  54. package/src/browser/scm-frontend-module.ts +7 -1
  55. package/src/browser/scm-history-graph-contribution.spec.ts +83 -0
  56. package/src/browser/scm-history-graph-contribution.ts +220 -0
  57. package/src/browser/scm-history-graph-helpers.spec.ts +118 -0
  58. package/src/browser/scm-history-graph-helpers.ts +81 -6
  59. package/src/browser/scm-history-graph-lanes.spec.ts +70 -25
  60. package/src/browser/scm-history-graph-lanes.ts +48 -11
  61. package/src/browser/scm-history-graph-model.spec.ts +247 -12
  62. package/src/browser/scm-history-graph-model.ts +119 -10
  63. package/src/browser/scm-history-graph-tooltip.spec.ts +254 -0
  64. package/src/browser/scm-history-graph-tooltip.ts +144 -24
  65. package/src/browser/scm-history-graph-widget.spec.ts +12 -1
  66. package/src/browser/scm-history-graph-widget.tsx +96 -34
  67. package/src/browser/scm-provider.ts +9 -1
  68. package/src/browser/style/scm-history-graph.css +43 -2
  69. package/src/common/scm-preferences.ts +27 -0
@@ -1 +1 @@
1
- {"version":3,"file":"scm-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/scm-frontend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,mCAAmC,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;;AAgCtF,wBAsGG;AAEH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,GAAG,SAAS,CAiB9E;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,GAAG,SAAS,CAKhF"}
1
+ {"version":3,"file":"scm-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/scm-frontend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,mCAAmC,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;;AAkCtF,wBA0GG;AAEH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,GAAG,SAAS,CAiB9E;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,GAAG,SAAS,CAKhF"}
@@ -44,6 +44,8 @@ const merge_editor_module_1 = require("./merge-editor/merge-editor-module");
44
44
  const scm_repositories_widget_1 = require("./scm-repositories-widget");
45
45
  const scm_history_graph_widget_1 = require("./scm-history-graph-widget");
46
46
  const scm_history_graph_model_1 = require("./scm-history-graph-model");
47
+ const scm_history_graph_contribution_1 = require("./scm-history-graph-contribution");
48
+ const core_1 = require("@theia/core");
47
49
  exports.default = new inversify_1.ContainerModule(bind => {
48
50
  bind(scm_context_key_service_1.ScmContextKeyService).toSelf().inSingletonScope();
49
51
  bind(scm_service_1.ScmService).toSelf().inSingletonScope();
@@ -80,6 +82,10 @@ exports.default = new inversify_1.ContainerModule(bind => {
80
82
  createWidget: () => container.get(scm_repositories_widget_1.ScmRepositoriesWidget)
81
83
  })).inSingletonScope();
82
84
  bind(scm_history_graph_model_1.ScmHistoryGraphModel).toSelf().inSingletonScope();
85
+ bind(scm_history_graph_model_1.ScmHistoryGraphModelProvider).toFactory(ctx => () => ctx.container.get(scm_history_graph_model_1.ScmHistoryGraphModel));
86
+ bind(scm_history_graph_contribution_1.ScmHistoryGraphContribution).toSelf().inSingletonScope();
87
+ bind(core_1.CommandContribution).toService(scm_history_graph_contribution_1.ScmHistoryGraphContribution);
88
+ bind(core_1.MenuContribution).toService(scm_history_graph_contribution_1.ScmHistoryGraphContribution);
83
89
  bind(scm_history_graph_widget_1.ScmHistoryGraphWidget).toSelf();
84
90
  bind(browser_1.WidgetFactory).toDynamicValue(({ container }) => ({
85
91
  id: scm_history_graph_widget_1.ScmHistoryGraphWidget.ID,
@@ -1 +1 @@
1
- {"version":3,"file":"scm-frontend-module.js","sourceRoot":"","sources":["../../src/browser/scm-frontend-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scm-frontend-module.js","sourceRoot":"","sources":["../../src/browser/scm-frontend-module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { Command, CommandContribution, CommandRegistry } from '@theia/core/lib/common/command';
2
+ import { MenuContribution, MenuModelRegistry } from '@theia/core/lib/common/menu';
3
+ import { QuickInputService } from '@theia/core/lib/browser';
4
+ import { QuickPickItem, QuickPickSeparator } from '@theia/core/lib/common/quick-pick-service';
5
+ import { ScmHistoryGraphModel, ScmHistoryGraphModelProvider } from './scm-history-graph-model';
6
+ import { ScmService } from './scm-service';
7
+ import { ScmHistoryItemRef, ScmHistoryProvider } from './scm-provider';
8
+ export declare namespace ScmHistoryGraphCommands {
9
+ const REFRESH: Command;
10
+ const PICK_HISTORY_ITEM_REFS: Command;
11
+ }
12
+ type RefPickItem = QuickPickItem & {
13
+ refId?: string;
14
+ auto?: boolean;
15
+ };
16
+ /**
17
+ * Contributes the native toolbar actions of the SCM history graph: the
18
+ * history item reference filter picker (VS Code's "Auto" dropdown) and the
19
+ * refresh action. Extension actions (e.g. fetch/pull/push from vscode.git)
20
+ * are contributed separately via the `scm/history/title` menu.
21
+ */
22
+ export declare class ScmHistoryGraphContribution implements CommandContribution, MenuContribution {
23
+ protected readonly scmService: ScmService;
24
+ protected readonly modelProvider: ScmHistoryGraphModelProvider;
25
+ protected readonly quickInputService: QuickInputService;
26
+ /**
27
+ * The graph model, resolved lazily: instantiating it starts loading
28
+ * history, so it must only be resolved when a graph command actually
29
+ * runs or the graph toolbar renders (the widget has created the model
30
+ * by then). In particular, `isEnabled`/`isVisible` are also queried by
31
+ * the command palette and therefore consult the `ScmService` instead.
32
+ */
33
+ protected get model(): ScmHistoryGraphModel;
34
+ protected get historyProvider(): ScmHistoryProvider | undefined;
35
+ registerCommands(commands: CommandRegistry): void;
36
+ registerMenus(menus: MenuModelRegistry): void;
37
+ protected pickHistoryItemRefs(): Promise<void>;
38
+ protected createRefPickItems(refs: readonly ScmHistoryItemRef[], provider: ScmHistoryProvider): (RefPickItem | QuickPickSeparator)[];
39
+ protected toRefPickItem(ref: ScmHistoryItemRef): RefPickItem;
40
+ }
41
+ export {};
42
+ //# sourceMappingURL=scm-history-graph-contribution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-history-graph-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGlF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAE9F,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAIvE,yBAAiB,uBAAuB,CAAC;IAC9B,MAAM,OAAO,SAKlB,CAAC;IACI,MAAM,sBAAsB,SAKA,CAAC;CACvC;AAED,KAAK,WAAW,GAAG,aAAa,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEtE;;;;;GAKG;AACH,qBACa,2BAA4B,YAAW,mBAAmB,EAAE,gBAAgB;IAEjE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,4BAA4B,CAAC;IAC9D,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAE/F;;;;;;OAMG;IACH,SAAS,KAAK,KAAK,IAAI,oBAAoB,CAE1C;IAED,SAAS,KAAK,eAAe,IAAI,kBAAkB,GAAG,SAAS,CAE9D;IAED,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAcjD,aAAa,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;cAa7B,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA+EpD,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,iBAAiB,EAAE,EAAE,QAAQ,EAAE,kBAAkB,GAAG,CAAC,WAAW,GAAG,kBAAkB,CAAC,EAAE;IA+BpI,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,iBAAiB,GAAG,WAAW;CAO/D"}
@@ -0,0 +1,220 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Safi Seid-Ahmad, K2view and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.ScmHistoryGraphContribution = exports.ScmHistoryGraphCommands = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const inversify_1 = require("@theia/core/shared/inversify");
21
+ const command_1 = require("@theia/core/lib/common/command");
22
+ const nls_1 = require("@theia/core/lib/common/nls");
23
+ const cancellation_1 = require("@theia/core/lib/common/cancellation");
24
+ const browser_1 = require("@theia/core/lib/browser");
25
+ const quick_pick_service_1 = require("@theia/core/lib/common/quick-pick-service");
26
+ const widget_1 = require("@theia/core/lib/browser/widgets/widget");
27
+ const scm_history_graph_model_1 = require("./scm-history-graph-model");
28
+ const scm_service_1 = require("./scm-service");
29
+ const scm_history_graph_widget_1 = require("./scm-history-graph-widget");
30
+ const scm_history_graph_helpers_1 = require("./scm-history-graph-helpers");
31
+ var ScmHistoryGraphCommands;
32
+ (function (ScmHistoryGraphCommands) {
33
+ ScmHistoryGraphCommands.REFRESH = command_1.Command.toDefaultLocalizedCommand({
34
+ id: 'scmHistoryGraph.refresh',
35
+ category: 'Source Control',
36
+ label: 'Refresh',
37
+ iconClass: (0, widget_1.codicon)('refresh')
38
+ });
39
+ ScmHistoryGraphCommands.PICK_HISTORY_ITEM_REFS = command_1.Command.toLocalizedCommand({
40
+ id: 'scmHistoryGraph.pickHistoryItemRefs',
41
+ category: 'Source Control',
42
+ label: 'Pick History Item Reference...',
43
+ iconClass: (0, widget_1.codicon)('git-branch')
44
+ }, 'theia/scm/pickHistoryItemRefs');
45
+ })(ScmHistoryGraphCommands || (exports.ScmHistoryGraphCommands = ScmHistoryGraphCommands = {}));
46
+ /**
47
+ * Contributes the native toolbar actions of the SCM history graph: the
48
+ * history item reference filter picker (VS Code's "Auto" dropdown) and the
49
+ * refresh action. Extension actions (e.g. fetch/pull/push from vscode.git)
50
+ * are contributed separately via the `scm/history/title` menu.
51
+ */
52
+ let ScmHistoryGraphContribution = class ScmHistoryGraphContribution {
53
+ /**
54
+ * The graph model, resolved lazily: instantiating it starts loading
55
+ * history, so it must only be resolved when a graph command actually
56
+ * runs or the graph toolbar renders (the widget has created the model
57
+ * by then). In particular, `isEnabled`/`isVisible` are also queried by
58
+ * the command palette and therefore consult the `ScmService` instead.
59
+ */
60
+ get model() {
61
+ return this.modelProvider();
62
+ }
63
+ get historyProvider() {
64
+ return this.scmService.selectedRepository?.provider.historyProvider;
65
+ }
66
+ registerCommands(commands) {
67
+ commands.registerCommand(ScmHistoryGraphCommands.REFRESH, {
68
+ isEnabled: () => !!this.historyProvider,
69
+ isVisible: () => !!this.historyProvider,
70
+ execute: () => this.model.refresh()
71
+ });
72
+ commands.registerCommand(ScmHistoryGraphCommands.PICK_HISTORY_ITEM_REFS, {
73
+ isEnabled: () => !!this.historyProvider && !!this.quickInputService,
74
+ isVisible: () => !!this.historyProvider,
75
+ isToggled: () => !!this.model.historyItemRefFilter,
76
+ execute: () => this.pickHistoryItemRefs()
77
+ });
78
+ }
79
+ registerMenus(menus) {
80
+ // Extension actions from vscode.git sit at order 900-902; the picker
81
+ // goes before them and refresh last, matching VS Code's graph toolbar.
82
+ menus.registerMenuAction([...scm_history_graph_widget_1.SCM_HISTORY_TITLE_MENU, 'navigation'], {
83
+ commandId: ScmHistoryGraphCommands.PICK_HISTORY_ITEM_REFS.id,
84
+ order: '100'
85
+ });
86
+ menus.registerMenuAction([...scm_history_graph_widget_1.SCM_HISTORY_TITLE_MENU, 'navigation'], {
87
+ commandId: ScmHistoryGraphCommands.REFRESH.id,
88
+ order: '999'
89
+ });
90
+ }
91
+ async pickHistoryItemRefs() {
92
+ if (!this.quickInputService) {
93
+ return;
94
+ }
95
+ const model = this.model;
96
+ const provider = model.provider;
97
+ if (!provider) {
98
+ return;
99
+ }
100
+ const picker = this.quickInputService.createQuickPick();
101
+ const cts = new cancellation_1.CancellationTokenSource();
102
+ try {
103
+ picker.placeholder = nls_1.nls.localize('theia/scm/pickHistoryItemRefsPlaceholder', 'Select one or more history item references');
104
+ picker.canSelectMany = true;
105
+ picker.matchOnDescription = true;
106
+ // Show the picker right away and populate it once the refs arrive,
107
+ // so that a slow ref lookup surfaces as a busy picker instead of a
108
+ // command that appears to do nothing.
109
+ picker.busy = true;
110
+ const selection = await new Promise(resolve => {
111
+ picker.onDidAccept(() => {
112
+ resolve(picker.selectedItems);
113
+ picker.hide();
114
+ });
115
+ // Also cancels a still-running ref lookup when the picker is dismissed.
116
+ picker.onDidHide(() => {
117
+ cts.cancel();
118
+ resolve(undefined);
119
+ });
120
+ picker.show();
121
+ provider.provideHistoryItemRefs(undefined, cts.token).then(refs => {
122
+ if (cts.token.isCancellationRequested) {
123
+ return;
124
+ }
125
+ const currentFilter = model.historyItemRefFilter;
126
+ const items = this.createRefPickItems(refs ?? [], provider);
127
+ picker.items = items;
128
+ picker.selectedItems = items.filter((item) => !quick_pick_service_1.QuickPickSeparator.is(item)
129
+ && (currentFilter ? !!item.refId && currentFilter.includes(item.refId) : item.auto === true));
130
+ // "Auto" is exclusive: checking it unchecks everything else and vice versa
131
+ let lastSelection = picker.selectedItems;
132
+ picker.onDidChangeSelection(newSelection => {
133
+ const autoNow = newSelection.some(item => item.auto);
134
+ if (autoNow && newSelection.length > 1) {
135
+ const autoBefore = lastSelection.some(item => item.auto);
136
+ picker.selectedItems = autoBefore ? newSelection.filter(item => !item.auto) : newSelection.filter(item => item.auto);
137
+ }
138
+ lastSelection = picker.selectedItems;
139
+ });
140
+ picker.busy = false;
141
+ }, err => {
142
+ if (!cts.token.isCancellationRequested) {
143
+ console.error('ScmHistoryGraphContribution: failed to load history item refs', err);
144
+ }
145
+ picker.hide();
146
+ });
147
+ });
148
+ if (!selection) {
149
+ return;
150
+ }
151
+ // The selected repository may have changed while the picker was open;
152
+ // the picked refs belong to the old provider and must not be applied
153
+ // to the new one.
154
+ if (model.provider !== provider) {
155
+ return;
156
+ }
157
+ const refIds = selection.filter(item => item.refId !== undefined).map(item => item.refId);
158
+ const auto = selection.some(item => item.auto) || refIds.length === 0;
159
+ model.setHistoryItemRefFilter(auto ? undefined : refIds);
160
+ }
161
+ finally {
162
+ picker.dispose();
163
+ cts.dispose();
164
+ }
165
+ }
166
+ createRefPickItems(refs, provider) {
167
+ const autoRefs = [provider.currentHistoryItemRef, provider.currentHistoryItemRemoteRef, provider.currentHistoryItemBaseRef]
168
+ .filter((ref) => !!ref);
169
+ const items = [{
170
+ label: nls_1.nls.localizeByDefault('Auto'),
171
+ description: autoRefs.map(ref => ref.name).join(', '),
172
+ auto: true
173
+ }];
174
+ const groups = [
175
+ { label: nls_1.nls.localize('theia/scm/refPickerBranches', 'branches'), badgeClass: 'head' },
176
+ { label: nls_1.nls.localize('theia/scm/refPickerRemoteBranches', 'remote branches'), badgeClass: 'remote' },
177
+ { label: nls_1.nls.localize('theia/scm/refPickerTags', 'tags'), badgeClass: 'tag' }
178
+ ];
179
+ const grouped = new Set();
180
+ for (const group of groups) {
181
+ const groupRefs = refs.filter(ref => (0, scm_history_graph_helpers_1.getRefBadgeClass)(ref) === group.badgeClass);
182
+ if (groupRefs.length > 0) {
183
+ groupRefs.forEach(ref => grouped.add(ref));
184
+ items.push({ type: 'separator', label: group.label });
185
+ items.push(...groupRefs.map(ref => this.toRefPickItem(ref)));
186
+ }
187
+ }
188
+ const remaining = refs.filter(ref => !grouped.has(ref));
189
+ if (remaining.length > 0) {
190
+ items.push({ type: 'separator' });
191
+ items.push(...remaining.map(ref => this.toRefPickItem(ref)));
192
+ }
193
+ return items;
194
+ }
195
+ toRefPickItem(ref) {
196
+ return {
197
+ label: ref.name,
198
+ description: ref.description,
199
+ refId: ref.id
200
+ };
201
+ }
202
+ };
203
+ exports.ScmHistoryGraphContribution = ScmHistoryGraphContribution;
204
+ tslib_1.__decorate([
205
+ (0, inversify_1.inject)(scm_service_1.ScmService),
206
+ tslib_1.__metadata("design:type", scm_service_1.ScmService)
207
+ ], ScmHistoryGraphContribution.prototype, "scmService", void 0);
208
+ tslib_1.__decorate([
209
+ (0, inversify_1.inject)(scm_history_graph_model_1.ScmHistoryGraphModelProvider),
210
+ tslib_1.__metadata("design:type", Function)
211
+ ], ScmHistoryGraphContribution.prototype, "modelProvider", void 0);
212
+ tslib_1.__decorate([
213
+ (0, inversify_1.inject)(browser_1.QuickInputService),
214
+ (0, inversify_1.optional)(),
215
+ tslib_1.__metadata("design:type", Object)
216
+ ], ScmHistoryGraphContribution.prototype, "quickInputService", void 0);
217
+ exports.ScmHistoryGraphContribution = ScmHistoryGraphContribution = tslib_1.__decorate([
218
+ (0, inversify_1.injectable)()
219
+ ], ScmHistoryGraphContribution);
220
+ //# sourceMappingURL=scm-history-graph-contribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-history-graph-contribution.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-contribution.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=scm-history-graph-contribution.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-history-graph-contribution.spec.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-contribution.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Safi Seid-Ahmad, K2view and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
+ const disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
+ const chai_1 = require("chai");
21
+ const disposable_1 = require("@theia/core/lib/common/disposable");
22
+ const scm_history_graph_contribution_1 = require("./scm-history-graph-contribution");
23
+ disableJSDOM();
24
+ function createContribution(historyProvider) {
25
+ const contribution = new scm_history_graph_contribution_1.ScmHistoryGraphContribution();
26
+ let resolved = false;
27
+ const internals = contribution;
28
+ internals.scmService = {
29
+ selectedRepository: historyProvider ? { provider: { historyProvider } } : undefined,
30
+ };
31
+ internals.modelProvider = () => {
32
+ resolved = true;
33
+ return { historyItemRefFilter: undefined };
34
+ };
35
+ internals.quickInputService = {};
36
+ const handlers = new Map();
37
+ const registry = {
38
+ registerCommand: (command, handler) => {
39
+ handlers.set(command.id, handler);
40
+ return disposable_1.Disposable.NULL;
41
+ },
42
+ };
43
+ contribution.registerCommands(registry);
44
+ return { handlers, modelResolved: () => resolved };
45
+ }
46
+ describe('ScmHistoryGraphContribution', () => {
47
+ it('does not resolve the graph model for enablement and visibility checks', () => {
48
+ const { handlers, modelResolved } = createContribution({});
49
+ for (const command of [scm_history_graph_contribution_1.ScmHistoryGraphCommands.REFRESH, scm_history_graph_contribution_1.ScmHistoryGraphCommands.PICK_HISTORY_ITEM_REFS]) {
50
+ const handler = handlers.get(command.id);
51
+ (0, chai_1.expect)(handler.isEnabled()).to.be.true;
52
+ (0, chai_1.expect)(handler.isVisible()).to.be.true;
53
+ }
54
+ (0, chai_1.expect)(modelResolved()).to.be.false;
55
+ });
56
+ it('disables the commands when the selected repository has no history provider', () => {
57
+ const { handlers, modelResolved } = createContribution(undefined);
58
+ for (const command of [scm_history_graph_contribution_1.ScmHistoryGraphCommands.REFRESH, scm_history_graph_contribution_1.ScmHistoryGraphCommands.PICK_HISTORY_ITEM_REFS]) {
59
+ const handler = handlers.get(command.id);
60
+ (0, chai_1.expect)(handler.isEnabled()).to.be.false;
61
+ (0, chai_1.expect)(handler.isVisible()).to.be.false;
62
+ }
63
+ (0, chai_1.expect)(modelResolved()).to.be.false;
64
+ });
65
+ });
66
+ //# sourceMappingURL=scm-history-graph-contribution.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-history-graph-contribution.spec.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-contribution.spec.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { ScmHistoryItemRef, ScmHistoryItemChange } from './scm-provider';
1
+ import { ScmHistoryItemRef, ScmHistoryItemChange, ScmHistoryProvider } from './scm-provider';
2
2
  /**
3
- * Returns the CSS color variable for the given lane index.
3
+ * Returns the CSS color variable for the given color index.
4
4
  * Uses Theia's `--theia-scmGraph-*` variables, mirroring the VS Code
5
5
  * scm graph color scheme:
6
- * lane 0 (current ref) → historyItemRefColor
7
- * lane 1 (remote ref) → historyItemRemoteRefColor
8
- * lane 2 (base ref) → historyItemBaseRefColor
9
- * lane 3–7 → foreground1–5
6
+ * 0 (current ref) → historyItemRefColor
7
+ * 1 (remote ref) → historyItemRemoteRefColor
8
+ * 2 (base ref) → historyItemBaseRefColor
9
+ * 3–7 (default rotation) → foreground1–5
10
10
  */
11
11
  export declare function laneColor(index: number): string;
12
12
  export declare function getChangeStatus(change: ScmHistoryItemChange): string;
@@ -17,6 +17,34 @@ export declare function getFilePath(uri: string): string;
17
17
  * Falls back to the full path if rootUri is unavailable or doesn't match.
18
18
  */
19
19
  export declare function getRepoRelativePath(uri: string, rootUri: string | undefined): string;
20
+ /**
21
+ * Returns the ref-based color index of the given ref (0 = current ref,
22
+ * 1 = remote ref, 2 = base ref), or `undefined` when the ref is none of
23
+ * the provider's current history item refs. Mirrors VS Code's scm graph
24
+ * color map.
25
+ */
26
+ export declare function getRefColorIndex(ref: ScmHistoryItemRef, provider: ScmHistoryProvider | undefined): number | undefined;
27
+ /**
28
+ * Filters which refs get badges in the graph, following VS Code's
29
+ * `scm.graph.badges` setting: `'all'` shows every ref, `'filter'` shows only
30
+ * the refs used as the graph's filter — the explicitly picked ref ids, or,
31
+ * without an explicit filter (auto mode), the current, remote, and base refs.
32
+ * Without provider information all refs are kept.
33
+ */
34
+ export declare function filterRefsForBadges(refs: readonly ScmHistoryItemRef[], provider: ScmHistoryProvider | undefined, badges: 'all' | 'filter', filter?: readonly string[]): readonly ScmHistoryItemRef[];
35
+ export interface RefBadgePresentation {
36
+ /** Icon class for the badge icon, e.g. 'codicon-git-branch'. */
37
+ iconClass: string;
38
+ /** Ref-based color index (0-2), or `undefined` to use the row color. */
39
+ colorIndex?: number;
40
+ }
41
+ /**
42
+ * Resolves how a ref badge is presented: the provider-supplied codicon icon
43
+ * when available (VS Code renders `ref.icon` unconditionally), otherwise a
44
+ * category fallback with the `target` icon marking the current ref; plus the
45
+ * ref-based color index.
46
+ */
47
+ export declare function getRefBadgePresentation(ref: ScmHistoryItemRef, provider: ScmHistoryProvider | undefined): RefBadgePresentation;
20
48
  export declare function getRefBadgeClass(ref: ScmHistoryItemRef): string;
21
49
  export declare function isTagRef(ref: ScmHistoryItemRef): boolean;
22
50
  export declare function isRemoteRef(ref: ScmHistoryItemRef): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"scm-history-graph-helpers.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-helpers.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEzE;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAW/C;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAWpE;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAO/C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYpF;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM,CAe/D;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAOxD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAO3D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED,MAAM,WAAW,eAAe;IAC5B,GAAG,EAAE,iBAAiB,CAAC;IACvB,oFAAoF;IACpF,OAAO,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,iBAAiB,EAAE,GAAG,eAAe,EAAE,CAkCrF"}
1
+ {"version":3,"file":"scm-history-graph-helpers.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-helpers.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAE7F;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAW/C;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAWpE;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG/C;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAO/C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYpF;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,EAAE,QAAQ,EAAE,kBAAkB,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAcrH;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,SAAS,iBAAiB,EAAE,EAClC,QAAQ,EAAE,kBAAkB,GAAG,SAAS,EACxC,MAAM,EAAE,KAAK,GAAG,QAAQ,EACxB,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,GAC3B,SAAS,iBAAiB,EAAE,CAW9B;AAED,MAAM,WAAW,oBAAoB;IACjC,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,iBAAiB,EAAE,QAAQ,EAAE,kBAAkB,GAAG,SAAS,GAAG,oBAAoB,CAa9H;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM,CAe/D;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAOxD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,iBAAiB,GAAG,OAAO,CAO3D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED,MAAM,WAAW,eAAe;IAC5B,GAAG,EAAE,iBAAiB,CAAC;IACvB,oFAAoF;IACpF,OAAO,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,iBAAiB,EAAE,GAAG,eAAe,EAAE,CAkCrF"}
@@ -20,19 +20,22 @@ exports.getChangeStatus = getChangeStatus;
20
20
  exports.getFileName = getFileName;
21
21
  exports.getFilePath = getFilePath;
22
22
  exports.getRepoRelativePath = getRepoRelativePath;
23
+ exports.getRefColorIndex = getRefColorIndex;
24
+ exports.filterRefsForBadges = filterRefsForBadges;
25
+ exports.getRefBadgePresentation = getRefBadgePresentation;
23
26
  exports.getRefBadgeClass = getRefBadgeClass;
24
27
  exports.isTagRef = isTagRef;
25
28
  exports.isRemoteRef = isRemoteRef;
26
29
  exports.getLocalNameFromRemote = getLocalNameFromRemote;
27
30
  exports.deduplicateRefs = deduplicateRefs;
28
31
  /**
29
- * Returns the CSS color variable for the given lane index.
32
+ * Returns the CSS color variable for the given color index.
30
33
  * Uses Theia's `--theia-scmGraph-*` variables, mirroring the VS Code
31
34
  * scm graph color scheme:
32
- * lane 0 (current ref) → historyItemRefColor
33
- * lane 1 (remote ref) → historyItemRemoteRefColor
34
- * lane 2 (base ref) → historyItemBaseRefColor
35
- * lane 3–7 → foreground1–5
35
+ * 0 (current ref) → historyItemRefColor
36
+ * 1 (remote ref) → historyItemRemoteRefColor
37
+ * 2 (base ref) → historyItemBaseRefColor
38
+ * 3–7 (default rotation) → foreground1–5
36
39
  */
37
40
  function laneColor(index) {
38
41
  switch (index % 8) {
@@ -88,6 +91,69 @@ function getRepoRelativePath(uri, rootUri) {
88
91
  }
89
92
  return fullPath;
90
93
  }
94
+ /**
95
+ * Returns the ref-based color index of the given ref (0 = current ref,
96
+ * 1 = remote ref, 2 = base ref), or `undefined` when the ref is none of
97
+ * the provider's current history item refs. Mirrors VS Code's scm graph
98
+ * color map.
99
+ */
100
+ function getRefColorIndex(ref, provider) {
101
+ if (!provider) {
102
+ return undefined;
103
+ }
104
+ if (ref.id === provider.currentHistoryItemRef?.id) {
105
+ return 0;
106
+ }
107
+ if (ref.id === provider.currentHistoryItemRemoteRef?.id) {
108
+ return 1;
109
+ }
110
+ if (ref.id === provider.currentHistoryItemBaseRef?.id) {
111
+ return 2;
112
+ }
113
+ return undefined;
114
+ }
115
+ /**
116
+ * Filters which refs get badges in the graph, following VS Code's
117
+ * `scm.graph.badges` setting: `'all'` shows every ref, `'filter'` shows only
118
+ * the refs used as the graph's filter — the explicitly picked ref ids, or,
119
+ * without an explicit filter (auto mode), the current, remote, and base refs.
120
+ * Without provider information all refs are kept.
121
+ */
122
+ function filterRefsForBadges(refs, provider, badges, filter) {
123
+ if (badges === 'all') {
124
+ return refs;
125
+ }
126
+ if (filter) {
127
+ return refs.filter(ref => filter.includes(ref.id));
128
+ }
129
+ if (!provider) {
130
+ return refs;
131
+ }
132
+ return refs.filter(ref => getRefColorIndex(ref, provider) !== undefined);
133
+ }
134
+ /**
135
+ * Resolves how a ref badge is presented: the provider-supplied codicon icon
136
+ * when available (VS Code renders `ref.icon` unconditionally), otherwise a
137
+ * category fallback with the `target` icon marking the current ref; plus the
138
+ * ref-based color index.
139
+ */
140
+ function getRefBadgePresentation(ref, provider) {
141
+ const colorIndex = getRefColorIndex(ref, provider);
142
+ let iconClass;
143
+ if (ref.icon && ref.icon.startsWith('codicon ')) {
144
+ iconClass = ref.icon.substring('codicon '.length);
145
+ }
146
+ else if (isTagRef(ref)) {
147
+ iconClass = 'codicon-tag';
148
+ }
149
+ else if (isRemoteRef(ref)) {
150
+ iconClass = 'codicon-cloud';
151
+ }
152
+ else {
153
+ iconClass = colorIndex === 0 ? 'codicon-target' : 'codicon-git-branch';
154
+ }
155
+ return { iconClass, colorIndex };
156
+ }
91
157
  function getRefBadgeClass(ref) {
92
158
  const cat = (ref.category ?? '').toLowerCase();
93
159
  if (cat === 'heads' || cat === 'head' || ref.id.startsWith('refs/heads/')) {
@@ -1 +1 @@
1
- {"version":3,"file":"scm-history-graph-helpers.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scm-history-graph-helpers.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=scm-history-graph-helpers.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-history-graph-helpers.spec.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-helpers.spec.ts"],"names":[],"mappings":""}