claude-code-kanban 3.0.1 → 3.1.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-code-kanban",
3
- "version": "3.0.1",
3
+ "version": "3.1.0",
4
4
  "description": "A web-based Kanban board for viewing Claude Code tasks with agent teams support",
5
5
  "main": "server.js",
6
6
  "bin": {
package/public/app.js CHANGED
@@ -2798,9 +2798,9 @@ function navigateSession(direction, items) {
2798
2798
  const restoredIdx = selectedSessionKbId ? items.findIndex((el) => getKbId(el) === selectedSessionKbId) : -1;
2799
2799
  newIdx = restoredIdx >= 0 ? restoredIdx : 0;
2800
2800
  }
2801
- if (newIdx >= 0 && newIdx < items.length) {
2802
- selectSessionByIndex(newIdx, items);
2803
- }
2801
+ if (newIdx < 0) newIdx = items.length - 1;
2802
+ else if (newIdx >= items.length) newIdx = 0;
2803
+ selectSessionByIndex(newIdx, items);
2804
2804
  }
2805
2805
 
2806
2806
  function setGroupCollapsed(header, collapsed) {
@@ -3981,6 +3981,22 @@ document.addEventListener('keydown', (e) => {
3981
3981
  toggleScratchpad();
3982
3982
  return;
3983
3983
  }
3984
+ if (e.key === '$' && !e.ctrlKey && !e.altKey && !e.metaKey) {
3985
+ e.preventDefault();
3986
+ hubNavigate('cost', contextSid ? `?view=detail&session=${encodeURIComponent(contextSid)}` : undefined);
3987
+ return;
3988
+ }
3989
+ if (matchKey(e, 'KeyM')) {
3990
+ e.preventDefault();
3991
+ const mSession = contextSid ? sessions.find((s) => s.id === contextSid) : null;
3992
+ hubNavigate('marketplace', mSession?.project ? `?project=${encodeURIComponent(mSession.project)}` : undefined);
3993
+ return;
3994
+ }
3995
+ if (matchKey(e, 'KeyT')) {
3996
+ e.preventDefault();
3997
+ toggleTheme();
3998
+ return;
3999
+ }
3984
4000
  if (e.key === '?' || (e.key === '/' && e.shiftKey)) {
3985
4001
  e.preventDefault();
3986
4002
  showHelpModal();
@@ -4601,7 +4617,6 @@ function updateThemeColor(isLight) {
4601
4617
  //#endregion
4602
4618
 
4603
4619
  //#region THEME
4604
- // biome-ignore lint/correctness/noUnusedVariables: used in HTML
4605
4620
  function toggleTheme() {
4606
4621
  const isCurrentlyLight = document.body.classList.contains('light');
4607
4622
  if (isCurrentlyLight) {
package/public/index.html CHANGED
@@ -46,7 +46,7 @@
46
46
  <header class="sidebar-header">
47
47
  <div class="logo">
48
48
  <div class="logo-mark">
49
- <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5">
49
+ <svg viewBox="4 6 16 12" fill="none" stroke="currentColor" stroke-width="2.5">
50
50
  <path d="M5 13l4 4L19 7"/>
51
51
  </svg>
52
52
  </div>
@@ -396,6 +396,18 @@
396
396
  <td style="padding: 4px 0; color: var(--text-secondary);"><kbd style="background: var(--bg-hover); padding: 2px 6px; border-radius: 4px; font-family: monospace;">N</kbd></td>
397
397
  <td style="padding: 4px 0; color: var(--text-primary);">Toggle scratchpad</td>
398
398
  </tr>
399
+ <tr>
400
+ <td style="padding: 4px 0; color: var(--text-secondary);"><kbd style="background: var(--bg-hover); padding: 2px 6px; border-radius: 4px; font-family: monospace;">T</kbd></td>
401
+ <td style="padding: 4px 0; color: var(--text-primary);">Toggle theme</td>
402
+ </tr>
403
+ <tr>
404
+ <td style="padding: 4px 0; color: var(--text-secondary);"><kbd style="background: var(--bg-hover); padding: 2px 6px; border-radius: 4px; font-family: monospace;">$</kbd></td>
405
+ <td style="padding: 4px 0; color: var(--text-primary);">Jump to cost</td>
406
+ </tr>
407
+ <tr>
408
+ <td style="padding: 4px 0; color: var(--text-secondary);"><kbd style="background: var(--bg-hover); padding: 2px 6px; border-radius: 4px; font-family: monospace;">M</kbd></td>
409
+ <td style="padding: 4px 0; color: var(--text-primary);">Jump to marketplace</td>
410
+ </tr>
399
411
  <tr>
400
412
  <td style="padding: 4px 0; color: var(--text-secondary);"><kbd style="background: var(--bg-hover); padding: 2px 6px; border-radius: 4px; font-family: monospace;">Shift+S</kbd></td>
401
413
  <td style="padding: 4px 0; color: var(--text-primary);">Storage manager</td>