@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 +1 @@
1
- {"version":3,"file":"scm-history-graph-lanes.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-lanes.ts"],"names":[],"mappings":"AAgBA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;AAEvE,MAAM,WAAW,SAAS;IACtB,mGAAmG;IACnG,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sGAAsG;IACtG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAChC;AAED,MAAM,WAAW,QAAQ;IACrB,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAC;IACrC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAChC;AAaD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,OAAO,EAAE,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC,GACtE,QAAQ,EAAE,CAoKZ"}
1
+ {"version":3,"file":"scm-history-graph-lanes.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-lanes.ts"],"names":[],"mappings":"AAgBA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;AAEvE,MAAM,WAAW,SAAS;IACtB,mGAAmG;IACnG,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sGAAsG;IACtG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;CAChC;AAED,MAAM,WAAW,QAAQ;IACrB,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAC;IACrC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAChC;AAcD,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAOD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,OAAO,EAAE,aAAa,CAAC,gBAAgB,CAAC,GACzC,QAAQ,EAAE,CAiLZ"}
@@ -16,6 +16,10 @@
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.computeGraphRows = computeGraphRows;
19
+ /** First color index of the default rotation (`scmGraph.foreground1`). */
20
+ const DEFAULT_COLOR_FIRST = 3;
21
+ /** Number of default rotation colors (`scmGraph.foreground1-5`). */
22
+ const DEFAULT_COLOR_COUNT = 5;
19
23
  /**
20
24
  * Compute graph rows for an ordered list of commits (topological order,
21
25
  * newest first). Each commit must supply its own `id` and `parentIds`.
@@ -27,8 +31,15 @@ function computeGraphRows(commits) {
27
31
  // lanes[i] = id of commit that "owns" lane i (i.e. we are waiting for this
28
32
  // commit to appear in the list so we can close the lane).
29
33
  const lanes = [];
30
- // laneColors[i] = the color index permanently assigned to lane i
34
+ // laneColors[i] = the color index currently assigned to lane i
31
35
  const laneColors = [];
36
+ // Default lane colors rotate through foreground1-5, like VS Code's
37
+ // color registry; indices 0-2 are reserved for ref-based colors.
38
+ let rotation = -1;
39
+ const nextDefaultColor = () => {
40
+ rotation = (rotation + 1) % DEFAULT_COLOR_COUNT;
41
+ return DEFAULT_COLOR_FIRST + rotation;
42
+ };
32
43
  const rows = [];
33
44
  for (const commit of commits) {
34
45
  const parentIds = commit.parentIds ?? [];
@@ -41,9 +52,14 @@ function computeGraphRows(commits) {
41
52
  // Not yet tracked → open a new lane
42
53
  myLane = firstFreeLane(lanes);
43
54
  lanes[myLane] = commit.id;
44
- laneColors[myLane] = myLane % 8;
55
+ laneColors[myLane] = commit.colorIndex ?? nextDefaultColor();
45
56
  }
46
- const myColor = laneColors[myLane] ?? myLane % 8;
57
+ // The segment above the commit keeps the color inherited from the
58
+ // chain above; the commit's own ref color (if any) takes over from
59
+ // this row downward.
60
+ const topColor = laneColors[myLane] ?? DEFAULT_COLOR_FIRST;
61
+ const myColor = commit.colorIndex ?? topColor;
62
+ laneColors[myLane] = myColor;
47
63
  // Collect any duplicate lane occupants: other lanes that were kept
48
64
  // alive pointing at this same commit (sibling branch tips whose lane
49
65
  // was preserved until the parent row). These emit merge-in edges and
@@ -53,7 +69,7 @@ function computeGraphRows(commits) {
53
69
  if (hasTopLine) {
54
70
  for (let li = 0; li < lanes.length; li++) {
55
71
  if (lanes[li] === commit.id && li !== myLane) {
56
- duplicateLanes.push({ lane: li, color: laneColors[li] ?? li % 8 });
72
+ duplicateLanes.push({ lane: li, color: laneColors[li] ?? DEFAULT_COLOR_FIRST });
57
73
  lanes[li] = undefined;
58
74
  laneColors[li] = undefined;
59
75
  }
@@ -102,7 +118,7 @@ function computeGraphRows(commits) {
102
118
  // Additional parents get new lanes — branch-out
103
119
  const newLane = firstFreeLane(lanes);
104
120
  lanes[newLane] = pid;
105
- laneColors[newLane] = newLane % 8;
121
+ laneColors[newLane] = nextDefaultColor();
106
122
  parentLanes.push(newLane);
107
123
  parentIsExisting.push(false);
108
124
  }
@@ -137,7 +153,7 @@ function computeGraphRows(commits) {
137
153
  if (!occupant || occupant === commit.id) {
138
154
  continue;
139
155
  }
140
- const color = laneColors[li] ?? li % 8;
156
+ const color = laneColors[li] ?? DEFAULT_COLOR_FIRST;
141
157
  edges.push({ fromLane: li, toLane: li, color, type: 'pass-through' });
142
158
  }
143
159
  for (let pi = 0; pi < parentIds.length; pi++) {
@@ -153,12 +169,12 @@ function computeGraphRows(commits) {
153
169
  if (isExisting) {
154
170
  // Merge-in: an existing lane at the top of the row curves into
155
171
  // the commit position at mid-row.
156
- const color = laneColors[toLane] ?? toLane % 8;
172
+ const color = laneColors[toLane] ?? DEFAULT_COLOR_FIRST;
157
173
  edges.push({ fromLane: toLane, toLane: myLane, color, type: 'merge-in' });
158
174
  }
159
175
  else {
160
176
  // Branch-out: the commit spawns a new lane below mid-row.
161
- const color = laneColors[toLane] ?? toLane % 8;
177
+ const color = laneColors[toLane] ?? DEFAULT_COLOR_FIRST;
162
178
  edges.push({ fromLane: myLane, toLane, color, type: 'branch-out' });
163
179
  }
164
180
  }
@@ -171,7 +187,7 @@ function computeGraphRows(commits) {
171
187
  // OR if this is a sibling branch tip whose lane was kept alive (pointing
172
188
  // at the parent) so it persists as a pass-through to the parent row.
173
189
  const hasContinuation = parentIds.length > 0 && (parentLanes[0] === myLane || lanes[myLane] === parentIds[0]);
174
- rows.push({ lane: myLane, color: myColor, edges, hasContinuation, hasTopLine });
190
+ rows.push({ lane: myLane, color: myColor, topColor, edges, hasContinuation, hasTopLine });
175
191
  }
176
192
  return rows;
177
193
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scm-history-graph-lanes.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-lanes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scm-history-graph-lanes.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-lanes.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oDAAoD;AACpD,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AA+FhF,4CAmLC;AA/LD,0EAA0E;AAC1E,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,oEAAoE;AACpE,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAC5B,OAAwC;IAExC,2EAA2E;IAC3E,0DAA0D;IAC1D,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,+DAA+D;IAC/D,MAAM,UAAU,GAA2B,EAAE,CAAC;IAE9C,mEAAmE;IACnE,iEAAiE;IACjE,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;IAClB,MAAM,gBAAgB,GAAG,GAAW,EAAE;QAClC,QAAQ,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,mBAAmB,CAAC;QAChD,OAAO,mBAAmB,GAAG,QAAQ,CAAC;IAC1C,CAAC,CAAC;IAEF,MAAM,IAAI,GAAsB,EAAE,CAAC;IAEnC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;QAEzC,uEAAuE;QACvE,IAAI,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACtC,wEAAwE;QACxE,oEAAoE;QACpE,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC;QACjC,IAAI,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YAChB,oCAAoC;YACpC,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YAC9B,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC;YAC1B,UAAU,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,gBAAgB,EAAE,CAAC;QACjE,CAAC;QAED,kEAAkE;QAClE,mEAAmE;QACnE,qBAAqB;QACrB,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC;QAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC;QAC9C,UAAU,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;QAE7B,mEAAmE;QACnE,qEAAqE;QACrE,sEAAsE;QACtE,qEAAqE;QACrE,2CAA2C;QAC3C,MAAM,cAAc,GAAsC,EAAE,CAAC;QAC7D,IAAI,UAAU,EAAE,CAAC;YACb,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;gBACvC,IAAI,KAAK,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;oBAC3C,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC;oBAChF,KAAK,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;oBACtB,UAAU,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;gBAC/B,CAAC;YACL,CAAC;QACL,CAAC;QAED,uEAAuE;QACvE,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAEhC,uEAAuE;QACvE,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,uEAAuE;QACvE,MAAM,gBAAgB,GAAc,EAAE,CAAC;QAEvC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;YAE1B,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAE1C,IAAI,UAAU,KAAK,CAAC,CAAC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC7C,IAAI,UAAU,EAAE,CAAC;oBACb,8EAA8E;oBAC9E,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAC7B,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACJ,kEAAkE;oBAClE,oEAAoE;oBACpE,0DAA0D;oBAC1D,qEAAqE;oBACrE,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;oBACpB,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACzB,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,CAAC;YACL,CAAC;iBAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC/B,iEAAiE;gBACjE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzB,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,iCAAiC;YACnE,CAAC;iBAAM,CAAC;gBACJ,6BAA6B;gBAC7B,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;oBACX,0CAA0C;oBAC1C,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;oBACpB,qDAAqD;oBACrD,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACzB,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACJ,gDAAgD;oBAChD,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;oBACrC,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC;oBACrB,UAAU,CAAC,OAAO,CAAC,GAAG,gBAAgB,EAAE,CAAC;oBACzC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAC1B,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,CAAC;YACL,CAAC;QACL,CAAC;QAED,4DAA4D;QAC5D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;YAC1B,UAAU,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;QACnC,CAAC;aAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,wEAAwE;YACxE,IAAI,UAAU,EAAE,CAAC;gBACb,sEAAsE;gBACtE,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;gBAC1B,UAAU,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACJ,oEAAoE;gBACpE,iEAAiE;gBACjE,iEAAiE;gBACjE,yDAAyD;gBACzD,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC;QACL,CAAC;QAED,uEAAuE;QACvE,MAAM,KAAK,GAAgB,EAAE,CAAC;QAE9B,mEAAmE;QACnE,2DAA2D;QAC3D,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC;gBACtC,SAAS;YACb,CAAC;YACD,MAAM,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,IAAI,mBAAmB,CAAC;YACpD,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;YAC/B,MAAM,UAAU,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;YAExC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACpB,gEAAgE;gBAChE,oEAAoE;gBACpE,qEAAqE;gBACrE,uEAAuE;gBACvE,SAAS;YACb,CAAC;YAED,IAAI,UAAU,EAAE,CAAC;gBACb,+DAA+D;gBAC/D,kCAAkC;gBAClC,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC;gBACxD,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YAC9E,CAAC;iBAAM,CAAC;gBACJ,0DAA0D;gBAC1D,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC;gBACxD,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;YACxE,CAAC;QACL,CAAC;QAED,mEAAmE;QACnE,uCAAuC;QACvC,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QACzF,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,qEAAqE;QACrE,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAE9G,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;IAC9F,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,SAAS,aAAa,CAAC,KAA6B;IAChD,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;AAC3C,CAAC"}
@@ -33,9 +33,13 @@ describe('computeGraphRows', () => {
33
33
  it('all commits stay in lane 0', () => {
34
34
  (0, chai_1.expect)(lanes(commits)).to.deep.equal([0, 0, 0]);
35
35
  });
36
- it('colors are all 0', () => {
36
+ it('colors default to the first rotation color (foreground1 = index 3)', () => {
37
37
  const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(commits);
38
- (0, chai_1.expect)(rows.map(r => r.color)).to.deep.equal([0, 0, 0]);
38
+ (0, chai_1.expect)(rows.map(r => r.color)).to.deep.equal([3, 3, 3]);
39
+ });
40
+ it('topColor equals color when no ref color overrides the lane', () => {
41
+ const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(commits);
42
+ rows.forEach(r => (0, chai_1.expect)(r.topColor).to.equal(r.color));
39
43
  });
40
44
  it('first parent same-lane continuation emits no separate edge (handled by commit line)', () => {
41
45
  const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(commits);
@@ -174,9 +178,13 @@ describe('computeGraphRows', () => {
174
178
  const mergeIn = rows[0].edges.filter(e => e.type === 'merge-in');
175
179
  (0, chai_1.expect)(mergeIn.length).to.equal(0);
176
180
  });
177
- it('lane colors are correct modulo 8', () => {
181
+ it('lane colors rotate through the default registry (indices 3-7)', () => {
178
182
  const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(commits);
179
- rows.forEach(r => (0, chai_1.expect)(r.color).to.equal(r.lane % 8));
183
+ // O and P1 share lane 0 → first rotation color; P2/P3 opened new lanes
184
+ (0, chai_1.expect)(rows[0].color).to.equal(3);
185
+ (0, chai_1.expect)(rows[1].color).to.equal(3);
186
+ (0, chai_1.expect)(rows[2].color).to.not.equal(rows[3].color);
187
+ rows.forEach(r => (0, chai_1.expect)(r.color).to.be.within(3, 7));
180
188
  });
181
189
  });
182
190
  // -------------------------------------------------------------------------
@@ -337,25 +345,14 @@ describe('computeGraphRows', () => {
337
345
  });
338
346
  });
339
347
  // -------------------------------------------------------------------------
340
- // Lane color wraps at 8
348
+ // Default color rotation (VS Code cycles scmGraph.foreground1-5)
341
349
  // -------------------------------------------------------------------------
342
- describe('color wrapping', () => {
343
- it('lane color is always lane % 8', () => {
344
- // 4 parallel chains so we have lanes 0, 1, 2, 3 occupied at once.
345
- // Chain structure: X0→X1→X2, Y0→Y1→Y2, etc., interleaved.
346
- const commits = [
347
- { id: 'X0', parentIds: ['X1'] },
348
- { id: 'Y0', parentIds: ['Y1'] },
349
- { id: 'Z0', parentIds: ['Z1'] },
350
- { id: 'W0', parentIds: ['W1'] },
351
- { id: 'X1', parentIds: [] },
352
- { id: 'Y1', parentIds: [] },
353
- { id: 'Z1', parentIds: [] },
354
- { id: 'W1', parentIds: [] },
355
- ];
350
+ describe('default color rotation', () => {
351
+ it('cycles through indices 3-7 and wraps', () => {
352
+ // 6 independent tips → 6 lanes; the sixth wraps back to the first color
353
+ const commits = ['A', 'B', 'C', 'D', 'E', 'F'].map(id => ({ id, parentIds: [id.toLowerCase()] }));
356
354
  const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(commits);
357
- // Every row's color must equal lane % 8
358
- rows.forEach(r => (0, chai_1.expect)(r.color).to.equal(r.lane % 8));
355
+ (0, chai_1.expect)(rows.map(r => r.color)).to.deep.equal([3, 4, 5, 6, 7, 3]);
359
356
  });
360
357
  it('assigns distinct lanes to 8 simultaneous branches', () => {
361
358
  // 8 independent commits whose parents haven't been seen yet
@@ -372,10 +369,50 @@ describe('computeGraphRows', () => {
372
369
  const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(commits);
373
370
  const laneSet = new Set(rows.map(r => r.lane));
374
371
  (0, chai_1.expect)(laneSet.size).to.equal(8); // all distinct lanes
375
- // Color of lane 7 is 7, lane 0 is 0
376
- const lane7 = rows.find(r => r.lane === 7);
377
- (0, chai_1.expect)(lane7).to.not.be.undefined;
378
- (0, chai_1.expect)(lane7.color).to.equal(7);
372
+ // Default colors never use the reserved ref color indices 0-2
373
+ rows.forEach(r => (0, chai_1.expect)(r.color).to.be.within(3, 7));
374
+ });
375
+ });
376
+ // -------------------------------------------------------------------------
377
+ // Ref-based colors (VS Code colorMap: current=0, remote=1, base=2)
378
+ // -------------------------------------------------------------------------
379
+ describe('ref-based colors', () => {
380
+ // Remote is one commit ahead: R (origin/main) → L (main = HEAD) → A
381
+ const behindCommits = [
382
+ { id: 'R', parentIds: ['L'], colorIndex: 1 },
383
+ { id: 'L', parentIds: ['A'], colorIndex: 0 },
384
+ { id: 'A', parentIds: [] },
385
+ ];
386
+ it('a tip with a color index colors its row', () => {
387
+ const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(behindCommits);
388
+ (0, chai_1.expect)(rows[0].color).to.equal(1);
389
+ });
390
+ it('an overriding commit recolors the chain from its row downward', () => {
391
+ const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(behindCommits);
392
+ (0, chai_1.expect)(rows[1].color).to.equal(0);
393
+ (0, chai_1.expect)(rows[2].color).to.equal(0);
394
+ });
395
+ it('topColor keeps the inherited color for the segment above an overriding commit', () => {
396
+ const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(behindCommits);
397
+ (0, chai_1.expect)(rows[0].topColor).to.equal(1);
398
+ (0, chai_1.expect)(rows[1].topColor).to.equal(1);
399
+ (0, chai_1.expect)(rows[2].topColor).to.equal(0);
400
+ });
401
+ // Diverged: L (main = HEAD) and R (origin/main) both branched off A
402
+ const divergedCommits = [
403
+ { id: 'L', parentIds: ['A'], colorIndex: 0 },
404
+ { id: 'R', parentIds: ['A'], colorIndex: 1 },
405
+ { id: 'A', parentIds: [] },
406
+ ];
407
+ it('pass-through edges use the propagated ref color', () => {
408
+ const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(divergedCommits);
409
+ const pass = rows[1].edges.find(e => e.type === 'pass-through');
410
+ (0, chai_1.expect)(pass?.color).to.equal(0);
411
+ });
412
+ it('merge-in edges from a ref-colored lane keep that color', () => {
413
+ const rows = (0, scm_history_graph_lanes_1.computeGraphRows)(divergedCommits);
414
+ const mergeIn = rows[2].edges.find(e => e.type === 'merge-in');
415
+ (0, chai_1.expect)(mergeIn?.color).to.equal(1);
379
416
  });
380
417
  });
381
418
  // -------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"scm-history-graph-lanes.spec.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-lanes.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scm-history-graph-lanes.spec.js","sourceRoot":"","sources":["../../src/browser/scm-history-graph-lanes.spec.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,33 @@
1
1
  import { DisposableCollection } from '@theia/core/lib/common/disposable';
2
- import { Emitter } from '@theia/core/lib/common/event';
2
+ import { Emitter, Event } from '@theia/core/lib/common/event';
3
3
  import { CancellationTokenSource } from '@theia/core/lib/common/cancellation';
4
4
  import { ScmService } from './scm-service';
5
- import { ScmHistoryItem, ScmHistoryProvider } from './scm-provider';
5
+ import { ScmHistoryItem, ScmHistoryItemRef, ScmHistoryProvider } from './scm-provider';
6
6
  import { GraphRow } from './scm-history-graph-lanes';
7
+ import { ILogger } from '@theia/core';
8
+ import { ScmPreferences } from '../common/scm-preferences';
7
9
  export declare const PAGE_SIZE = 50;
10
+ /** How the changes of an expanded history item are laid out. */
11
+ export type ScmHistoryViewMode = 'list' | 'tree';
12
+ export declare const ScmHistoryGraphModelProvider: unique symbol;
13
+ /**
14
+ * Resolves the {@link ScmHistoryGraphModel} singleton on first use. The model
15
+ * starts loading history and subscribing to provider events as soon as it is
16
+ * instantiated, so clients that may not need it (e.g. command contributions
17
+ * instantiated at application start) must inject this provider instead of the
18
+ * model itself.
19
+ */
20
+ export type ScmHistoryGraphModelProvider = () => ScmHistoryGraphModel;
8
21
  export interface HistoryGraphEntry {
9
22
  readonly item: ScmHistoryItem;
10
23
  readonly graphRow: GraphRow;
24
+ /** True when this item is the commit the current history item ref points at (HEAD). */
25
+ readonly isCurrent: boolean;
11
26
  }
12
27
  export declare class ScmHistoryGraphModel {
13
28
  protected readonly scmService: ScmService;
29
+ protected readonly scmPreferences: ScmPreferences;
30
+ protected readonly logger: ILogger;
14
31
  protected readonly toDispose: DisposableCollection;
15
32
  protected readonly toDisposeOnProviderChange: DisposableCollection;
16
33
  protected _entries: HistoryGraphEntry[];
@@ -18,12 +35,37 @@ export declare class ScmHistoryGraphModel {
18
35
  protected _loading: boolean;
19
36
  protected _hasAttemptedLoad: boolean;
20
37
  protected _provider: ScmHistoryProvider | undefined;
38
+ /** Explicitly picked ref ids to filter the graph by; `undefined` = auto (current/remote/base). */
39
+ protected _historyItemRefFilter: string[] | undefined;
40
+ protected _viewMode: ScmHistoryViewMode;
21
41
  protected readonly onDidChangeEmitter: Emitter<void>;
22
- readonly onDidChange: import("@theia/core/lib/common/event").Event<void>;
42
+ readonly onDidChange: Event<void>;
43
+ protected readonly onDidRequestRevealEmitter: Emitter<number>;
44
+ /** Fired with the index of an entry the view should scroll to and select. */
45
+ readonly onDidRequestReveal: Event<number>;
23
46
  protected cancelSource: CancellationTokenSource;
24
47
  protected init(): void;
25
48
  dispose(): void;
26
49
  get provider(): ScmHistoryProvider | undefined;
50
+ /** The explicitly picked ref ids filtering the graph, or `undefined` in auto mode. */
51
+ get historyItemRefFilter(): readonly string[] | undefined;
52
+ /** How the changes of an expanded history item are laid out. */
53
+ get viewMode(): ScmHistoryViewMode;
54
+ /**
55
+ * Switches how the changes of an expanded history item are laid out. This
56
+ * only affects rendering, so the loaded history is kept as is.
57
+ */
58
+ setViewMode(viewMode: ScmHistoryViewMode): void;
59
+ /**
60
+ * Sets the ref ids to filter the graph by (`undefined` returns to auto
61
+ * mode) and reloads the graph.
62
+ */
63
+ setHistoryItemRefFilter(refIds: readonly string[] | undefined): void;
64
+ /**
65
+ * Whether the current history item ref is part of the graph's filter.
66
+ * Always true in auto mode, which includes the current ref.
67
+ */
68
+ isCurrentRefInFilter(): boolean;
27
69
  get entries(): readonly HistoryGraphEntry[];
28
70
  get hasMore(): boolean;
29
71
  get loading(): boolean;
@@ -34,12 +76,39 @@ export declare class ScmHistoryGraphModel {
34
76
  */
35
77
  get hasAttemptedLoad(): boolean;
36
78
  refresh(): void;
79
+ /**
80
+ * Drops refs that no longer exist from the explicit filter, so that
81
+ * deleting or renaming a filtered ref does not leave the graph stuck
82
+ * requesting history for it. When the last filtered ref is removed,
83
+ * the filter falls back to auto mode.
84
+ */
85
+ protected pruneHistoryItemRefFilter(removed: readonly ScmHistoryItemRef[]): void;
86
+ /** Clears the loaded entries and loads the first page again from the current provider. */
87
+ protected reload(): void;
88
+ /**
89
+ * Locates the commit the current history item ref points at, loading
90
+ * further pages while it is outside the loaded range, and asks the view to
91
+ * reveal it. Returns its index, or `undefined` when there is no current
92
+ * history item ref or the commit is not part of the graph (e.g. the ref is
93
+ * excluded by the filter).
94
+ */
95
+ revealCurrentHistoryItem(): Promise<number | undefined>;
96
+ protected indexOfCurrentHistoryItem(): number | undefined;
37
97
  loadMore(): Promise<void>;
38
98
  protected loadPage(): Promise<void>;
99
+ /** The configured page size (`scm.graph.pageSize`). */
100
+ protected get pageSize(): number;
101
+ /**
102
+ * Resolves the ref-based color index of an item from its references,
103
+ * preferring current (0) over remote (1) over base (2). Refs excluded by
104
+ * an explicit filter get no role color, mirroring VS Code's color map.
105
+ */
106
+ protected resolveColorIndex(item: ScmHistoryItem): number | undefined;
39
107
  /**
40
- * Returns the revisions of the current branch ref, its remote tracking ref,
41
- * and the merge-base ref to pass to `provideHistoryItems`. Providers walk
42
- * history starting from these revisions.
108
+ * Returns the refs to pass to `provideHistoryItems`: the explicitly picked
109
+ * ref ids when a filter is active, otherwise (auto mode) the revisions of
110
+ * the current branch ref, its remote tracking ref, and the merge-base ref.
111
+ * Providers walk history starting from these refs.
43
112
  */
44
113
  protected getCurrentHistoryItemRefs(): string[];
45
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scm-history-graph-model.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-model.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAc,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAqB,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAoB,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAEvE,eAAO,MAAM,SAAS,KAAK,CAAC;AAE5B,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC/B;AAED,qBACa,oBAAoB;IAET,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAE9D,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAA8B;IAC1D,SAAS,CAAC,QAAQ,CAAC,yBAAyB,uBAA8B;IAE1E,SAAS,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAM;IAC7C,SAAS,CAAC,QAAQ,UAAS;IAC3B,SAAS,CAAC,QAAQ,UAAS;IAC3B,SAAS,CAAC,iBAAiB,UAAS;IACpC,SAAS,CAAC,SAAS,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAEpD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,QAAQ,CAAC,WAAW,qDAAiC;IAErD,SAAS,CAAC,YAAY,0BAAiC;IAGvD,SAAS,CAAC,IAAI,IAAI,IAAI;IAStB,OAAO,IAAI,IAAI;IAKf,IAAI,QAAQ,IAAI,kBAAkB,GAAG,SAAS,CAE7C;IAED,IAAI,OAAO,IAAI,SAAS,iBAAiB,EAAE,CAE1C;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;OAIG;IACH,IAAI,gBAAgB,IAAI,OAAO,CAE9B;IAED,OAAO,IAAI,IAAI;IA+BT,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;cAOf,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAyDzC;;;;OAIG;IACH,SAAS,CAAC,yBAAyB,IAAI,MAAM,EAAE;CAgBlD"}
1
+ {"version":3,"file":"scm-history-graph-model.d.ts","sourceRoot":"","sources":["../../src/browser/scm-history-graph-model.ts"],"names":[],"mappings":"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"}