jupyterlab_ai_code_assistants_extension 1.2.30 → 1.2.35

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.
package/lib/core/panel.js CHANGED
@@ -1620,7 +1620,7 @@ export class AssistantSessionsPanel extends Widget {
1620
1620
  row.appendChild(this._renderIndicator(session));
1621
1621
  }
1622
1622
  // No star in the Favorites section - every row there is one by definition.
1623
- // The star sits before the time so the fixed-width time column stays the
1623
+ // The star sits before the time so the minimum-width time column stays the
1624
1624
  // rightmost alignment anchor across all rows.
1625
1625
  if (session.favourite && sectionKey !== 'favourites') {
1626
1626
  // A marker, not a control. It carried a `title` that made it read as
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jupyterlab_ai_code_assistants_extension",
3
- "version": "1.2.30",
3
+ "version": "1.2.35",
4
4
  "description": "A full launcher and manager for every AI code assistant in JupyterLab - Claude Code, Codex, Kimi, Gemini and DeepSeek. Start, resume, fork, switch, and clean up CLI sessions from a side panel per assistant - one click lands you in the right terminal with the assistant already running, no duplicate tabs, no UUID hunting.",
5
5
  "keywords": [
6
6
  "jupyter",
package/src/core/panel.ts CHANGED
@@ -1927,7 +1927,7 @@ export class AssistantSessionsPanel extends Widget {
1927
1927
  }
1928
1928
 
1929
1929
  // No star in the Favorites section - every row there is one by definition.
1930
- // The star sits before the time so the fixed-width time column stays the
1930
+ // The star sits before the time so the minimum-width time column stays the
1931
1931
  // rightmost alignment anchor across all rows.
1932
1932
  if (session.favourite && sectionKey !== 'favourites') {
1933
1933
  // A marker, not a control. It carried a `title` that made it read as
package/style/base.css CHANGED
@@ -13,6 +13,14 @@
13
13
  on purpose - the partial row is the scroll-continuation cue. */
14
14
  --aica-row-height: 24px;
15
15
 
16
+ /* Single source for the gap between the panel border and its content, on
17
+ both sides: the header, search field, error line, section headers and rows
18
+ all read it, so the title, the search field, the caret column and the
19
+ status-dot column keep one left edge. 4px, not 8px: the lists reserve a
20
+ scrollbar gutter as well, so 8px put the time column 23px from the right
21
+ border where the file browser's sits 12px from it. */
22
+ --aica-inset: 4px;
23
+
16
24
  display: flex;
17
25
  flex-direction: column;
18
26
  position: relative;
@@ -27,7 +35,7 @@
27
35
  .jp-AiAssistantsPanel-header {
28
36
  display: flex;
29
37
  align-items: center;
30
- padding: 4px 8px;
38
+ padding: 4px var(--aica-inset);
31
39
  border-bottom: 1px solid var(--jp-border-color2);
32
40
  background: var(--jp-layout-color2);
33
41
  flex: 0 0 auto;
@@ -87,7 +95,7 @@
87
95
  flex: 0 0 auto;
88
96
  display: flex;
89
97
  position: relative;
90
- margin: 4px 8px;
98
+ margin: 4px var(--aica-inset);
91
99
  }
92
100
 
93
101
  /* `display: flex` above would beat the user-agent `[hidden] { display: none }`,
@@ -169,7 +177,7 @@
169
177
  server must leave the other panels alone. */
170
178
  .jp-AiAssistantsPanel-error {
171
179
  flex: 0 0 auto;
172
- margin: 4px 8px;
180
+ margin: 4px var(--aica-inset);
173
181
  padding: 4px 6px;
174
182
  border-radius: 2px;
175
183
 
@@ -246,7 +254,7 @@
246
254
  display: flex;
247
255
  align-items: center;
248
256
  width: 100%;
249
- padding: 4px 8px;
257
+ padding: 4px var(--aica-inset);
250
258
  background: var(--jp-layout-color2);
251
259
  border: none;
252
260
  cursor: pointer;
@@ -305,7 +313,7 @@
305
313
  .jp-AiAssistantsPanel-row {
306
314
  display: flex;
307
315
  align-items: center;
308
- padding: 0 8px;
316
+ padding: 0 var(--aica-inset);
309
317
  height: var(--aica-row-height);
310
318
  line-height: var(--aica-row-height);
311
319
  cursor: pointer;
@@ -956,17 +964,21 @@ body[data-jp-theme-light='true'] .jp-AiAssistantsPanel-dotGlyph {
956
964
  color: var(--jp-layout-color1);
957
965
  }
958
966
 
959
- /* Last-activity time on session rows - dim, fixed-width right-aligned column so
967
+ /* Last-activity time on session rows - dim, minimum-width right-aligned column so
960
968
  values line up across rows; the star column sits before it. */
961
969
  .jp-AiAssistantsPanel-rowTime {
962
970
  flex: 0 0 auto;
963
971
 
964
972
  /* 4.5em, not 4em: the longest label this column draws ("11mo ago") measures
965
973
  47.4px against a 43.3px box, so the one column promised as fixed-width
966
- right-aligned went ragged on exactly the oldest rows. Tabular figures keep
967
- the digits aligned down the column, as the branch popup's twin already
968
- does. */
969
- width: 4.5em;
974
+ right-aligned went ragged on exactly the oldest rows. A minimum, not a
975
+ width: where system-ui is a wider face - DejaVu Sans on a stock Linux
976
+ desktop, 54.5px for the same label - a fixed box let the label spill 5.8px
977
+ past the column's right edge; a minimum grows that one box leftward
978
+ instead, so the labels stay aligned and only that row's star moves.
979
+ Tabular figures keep the digits aligned down the column, as the branch
980
+ popup's twin already does. */
981
+ min-width: 4.5em;
970
982
  white-space: nowrap;
971
983
  text-align: right;
972
984
  color: var(--jp-ui-font-color2);