@sascha384/tic 5.9.0 → 5.10.1

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 (57) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/dist/backends/github/image-upload.d.ts +5 -0
  3. package/dist/backends/github/image-upload.js +22 -0
  4. package/dist/backends/github/image-upload.js.map +1 -0
  5. package/dist/backends/github/index.d.ts +1 -0
  6. package/dist/backends/github/index.js.map +1 -1
  7. package/dist/cli/components/CliEditor.d.ts +5 -0
  8. package/dist/cli/components/CliEditor.js +41 -0
  9. package/dist/cli/components/CliEditor.js.map +1 -0
  10. package/dist/cli/index.js +1 -1
  11. package/dist/cli/index.js.map +1 -1
  12. package/dist/clipboard.d.ts +3 -0
  13. package/dist/clipboard.js +57 -18
  14. package/dist/clipboard.js.map +1 -1
  15. package/dist/commands.js +72 -63
  16. package/dist/commands.js.map +1 -1
  17. package/dist/components/AuthPrompt.js +5 -2
  18. package/dist/components/AuthPrompt.js.map +1 -1
  19. package/dist/components/BranchList.js +7 -5
  20. package/dist/components/BranchList.js.map +1 -1
  21. package/dist/components/CommandBar.js +6 -3
  22. package/dist/components/CommandBar.js.map +1 -1
  23. package/dist/components/DetailPanel.d.ts +7 -0
  24. package/dist/components/DetailPanel.js +56 -7
  25. package/dist/components/DetailPanel.js.map +1 -1
  26. package/dist/components/Header.js +9 -6
  27. package/dist/components/Header.js.map +1 -1
  28. package/dist/components/HelpScreen.js +8 -5
  29. package/dist/components/HelpScreen.js.map +1 -1
  30. package/dist/components/IterationPicker.js +7 -4
  31. package/dist/components/IterationPicker.js.map +1 -1
  32. package/dist/components/MarkdownEditor.js +69 -20
  33. package/dist/components/MarkdownEditor.js.map +1 -1
  34. package/dist/components/OverlayPanel.js +5 -5
  35. package/dist/components/OverlayPanel.js.map +1 -1
  36. package/dist/components/PullRequestList.js +9 -6
  37. package/dist/components/PullRequestList.js.map +1 -1
  38. package/dist/components/Settings.js +56 -47
  39. package/dist/components/Settings.js.map +1 -1
  40. package/dist/components/StatusScreen.js +15 -11
  41. package/dist/components/StatusScreen.js.map +1 -1
  42. package/dist/components/WorkItemForm.js +3 -3
  43. package/dist/components/WorkItemForm.js.map +1 -1
  44. package/dist/components/WorkItemList.js +21 -29
  45. package/dist/components/WorkItemList.js.map +1 -1
  46. package/dist/git.d.ts +1 -0
  47. package/dist/git.js +19 -0
  48. package/dist/git.js.map +1 -1
  49. package/dist/storage/index.js +8 -13
  50. package/dist/storage/index.js.map +1 -1
  51. package/dist/stores/editorStore.d.ts +13 -1
  52. package/dist/stores/editorStore.js +72 -42
  53. package/dist/stores/editorStore.js.map +1 -1
  54. package/package.json +1 -1
  55. package/dist/editor.d.ts +0 -5
  56. package/dist/editor.js +0 -31
  57. package/dist/editor.js.map +0 -1
@@ -1,40 +1,55 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useLayoutEffect } from 'react';
2
+ import { useEffect, useLayoutEffect } from 'react';
3
3
  import { Box, Text, useInput } from 'ink';
4
- import { editorStore, useEditorStore } from '../stores/editorStore.js';
4
+ import { editorStore, useEditorStore, computeScrollOffset, computeVisibleLines, } from '../stores/editorStore.js';
5
5
  import { formStackStore, useFormStackStore } from '../stores/formStackStore.js';
6
6
  import { navigationStore } from '../stores/navigationStore.js';
7
7
  import { useTerminalSize } from '../hooks/useTerminalSize.js';
8
8
  import { highlightLine, highlightLineWithCursor, highlightSlice, highlightSliceWithCursor, computeLineContexts, } from './markdownHighlight.js';
9
9
  import { useThemeStore } from '../stores/themeStore.js';
10
+ import { readClipboardImage, ClipboardError } from '../clipboard.js';
11
+ import { saveImage } from '../backends/github/image-upload.js';
12
+ import { uiStore } from '../stores/uiStore.js';
13
+ // Escape codes to disable terminal mouse tracking and focus reporting
14
+ // so that click/focus events don't leak through as printable characters.
15
+ const DISABLE_MOUSE_FOCUS = '\x1b[?1000l' + // disable basic mouse tracking
16
+ '\x1b[?1002l' + // disable button-event tracking
17
+ '\x1b[?1003l' + // disable any-event tracking
18
+ '\x1b[?1004l'; // disable focus reporting
10
19
  export function MarkdownEditor() {
11
20
  const lines = useEditorStore((s) => s.lines);
12
21
  const cursor = useEditorStore((s) => s.cursor);
13
22
  const scrollOffset = useEditorStore((s) => s.scrollOffset);
14
23
  const dirty = useEditorStore((s) => s.dirty);
15
24
  const showDiscardPrompt = useEditorStore((s) => s.showDiscardPrompt);
25
+ const uploadStatus = useEditorStore((s) => s.uploadStatus);
16
26
  const draft = useFormStackStore((s) => s.currentDraft());
17
- const { height, width } = useTerminalSize();
27
+ const { height, width: terminalWidth } = useTerminalSize();
18
28
  const accent = useThemeStore((s) => s.colors.accent);
19
29
  const viewportHeight = height - 2; // status bar + help bar
30
+ // Disable mouse tracking and focus reporting so clicks don't produce [I / [O
31
+ useEffect(() => {
32
+ process.stdout.write(DISABLE_MOUSE_FOCUS);
33
+ }, []);
20
34
  // Keep scroll in sync with cursor (useLayoutEffect to update before paint)
21
35
  useLayoutEffect(() => {
22
- editorStore.getState().updateScroll(viewportHeight, width);
36
+ editorStore.getState().updateScroll(viewportHeight, terminalWidth);
23
37
  }, [
24
38
  cursor.row,
25
39
  cursor.col,
26
40
  lines.length,
27
41
  viewportHeight,
28
- width,
42
+ terminalWidth,
29
43
  scrollOffset,
30
44
  ]);
31
45
  useInput((input, key) => {
32
46
  const s = editorStore.getState();
47
+ const returnScreen = (s.returnScreen ?? 'form');
33
48
  // Discard prompt mode — only handle d and escape
34
49
  if (showDiscardPrompt) {
35
50
  if (input === 'd') {
36
51
  s.destroy();
37
- navigationStore.getState().navigate('form');
52
+ navigationStore.getState().navigate(returnScreen);
38
53
  }
39
54
  if (key.escape) {
40
55
  editorStore.setState({ showDiscardPrompt: false });
@@ -43,9 +58,15 @@ export function MarkdownEditor() {
43
58
  }
44
59
  // Save: Ctrl+S
45
60
  if (input === 's' && key.ctrl) {
46
- formStackStore.getState().updateFields({ description: s.getContent() });
61
+ const content = s.getContent();
62
+ if (s.onSave) {
63
+ s.onSave(content);
64
+ }
65
+ else {
66
+ formStackStore.getState().updateFields({ description: content });
67
+ }
47
68
  s.destroy();
48
- navigationStore.getState().navigate('form');
69
+ navigationStore.getState().navigate(returnScreen);
49
70
  return;
50
71
  }
51
72
  // Cancel: Escape
@@ -55,7 +76,7 @@ export function MarkdownEditor() {
55
76
  }
56
77
  else {
57
78
  s.destroy();
58
- navigationStore.getState().navigate('form');
79
+ navigationStore.getState().navigate(returnScreen);
59
80
  }
60
81
  return;
61
82
  }
@@ -69,6 +90,33 @@ export function MarkdownEditor() {
69
90
  s.redo();
70
91
  return;
71
92
  }
93
+ // Paste image: Ctrl+V
94
+ if (input === 'v' && key.ctrl) {
95
+ let imageData;
96
+ try {
97
+ imageData = readClipboardImage();
98
+ }
99
+ catch (err) {
100
+ if (err instanceof ClipboardError) {
101
+ uiStore.getState().setToast(err.message);
102
+ }
103
+ return;
104
+ }
105
+ if (!imageData) {
106
+ uiStore.getState().setToast('No image found in clipboard');
107
+ return;
108
+ }
109
+ try {
110
+ const relPath = saveImage(process.cwd(), imageData);
111
+ s.insertText(`![image](${relPath})`);
112
+ uiStore.getState().setToast('Image saved and staged');
113
+ }
114
+ catch (err) {
115
+ const msg = err instanceof Error ? err.message : 'Save failed';
116
+ uiStore.getState().setToast(`Image paste failed: ${msg}`);
117
+ }
118
+ return;
119
+ }
72
120
  // Readline shortcuts
73
121
  if (input === 'a' && key.ctrl) {
74
122
  s.moveToLineStart();
@@ -156,31 +204,32 @@ export function MarkdownEditor() {
156
204
  s.insertChar(input);
157
205
  }
158
206
  });
159
- const visibleLines = editorStore
160
- .getState()
161
- .getVisibleLines(viewportHeight, width);
207
+ // Compute scroll offset inline using React-subscribed state to avoid
208
+ // stale reads from the store (which lag by one frame via useLayoutEffect).
209
+ const adjustedScroll = computeScrollOffset(lines, cursor, scrollOffset, viewportHeight, terminalWidth);
210
+ const visibleLines = computeVisibleLines(lines, adjustedScroll, viewportHeight, terminalWidth);
162
211
  const lineContexts = computeLineContexts(lines);
163
212
  function renderVisibleLine(lineIndex, fullLine, sliceStart, context, key) {
164
- const sliceEnd = Math.min(sliceStart + width, fullLine.length);
213
+ const sliceEnd = Math.min(sliceStart + terminalWidth, fullLine.length);
165
214
  const isCursorLine = lineIndex === cursor.row;
166
215
  const cursorInSlice = isCursorLine &&
167
216
  cursor.col >= sliceStart &&
168
217
  (cursor.col < sliceEnd || sliceEnd === fullLine.length);
169
- if (sliceStart === 0 && fullLine.length <= width) {
218
+ if (sliceStart === 0 && fullLine.length <= terminalWidth) {
170
219
  // Short line — no wrapping needed, use fast path
171
220
  if (isCursorLine) {
172
- return (_jsx(Box, { children: highlightLineWithCursor(fullLine, cursor.col, context) }, key));
221
+ return (_jsx(Box, { overflowX: "hidden", children: highlightLineWithCursor(fullLine, cursor.col, context) }, key));
173
222
  }
174
- return _jsx(Box, { children: highlightLine(fullLine, context) }, key);
223
+ return (_jsx(Box, { overflowX: "hidden", children: highlightLine(fullLine, context) }, key));
175
224
  }
176
225
  // Wrapped sub-line
177
226
  if (cursorInSlice) {
178
- return (_jsx(Box, { children: highlightSliceWithCursor(fullLine, sliceStart, sliceEnd, cursor.col, context) }, key));
227
+ return (_jsx(Box, { overflowX: "hidden", children: highlightSliceWithCursor(fullLine, sliceStart, sliceEnd, cursor.col, context) }, key));
179
228
  }
180
- return (_jsx(Box, { children: highlightSlice(fullLine, sliceStart, sliceEnd, context) }, key));
229
+ return (_jsx(Box, { overflowX: "hidden", children: highlightSlice(fullLine, sliceStart, sliceEnd, context) }, key));
181
230
  }
182
- return (_jsxs(Box, { flexDirection: "column", height: height, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsxs(Text, { bold: true, color: accent, children: ["Editing: ", draft?.itemId ? `#${draft.itemId} ` : '', draft?.itemTitle ?? ''] }), _jsxs(Text, { dimColor: true, children: ["Ln ", cursor.row + 1, ", Col ", cursor.col + 1, dirty ? ' [modified]' : ''] })] }), _jsxs(Box, { flexDirection: "column", height: viewportHeight, children: [visibleLines.map(({ lineIndex, sliceStart }, i) => renderVisibleLine(lineIndex, lines[lineIndex], sliceStart, lineContexts[lineIndex] ?? 'normal', i)), Array.from({
231
+ return (_jsxs(Box, { flexDirection: "column", height: height, children: [_jsxs(Box, { justifyContent: "space-between", overflowX: "hidden", children: [_jsxs(Text, { bold: true, color: accent, wrap: "truncate", children: ["Editing: ", draft?.itemId ? `#${draft.itemId} ` : '', draft?.itemTitle ?? ''] }), _jsxs(Text, { dimColor: true, wrap: "truncate", children: ["Ln ", cursor.row + 1, ", Col ", cursor.col + 1, dirty ? ' [modified]' : '', uploadStatus ? ` ${uploadStatus}` : ''] })] }), _jsxs(Box, { flexDirection: "column", height: viewportHeight, children: [visibleLines.map(({ lineIndex, sliceStart }, i) => renderVisibleLine(lineIndex, lines[lineIndex], sliceStart, lineContexts[lineIndex] ?? 'normal', i)), Array.from({
183
232
  length: Math.max(0, viewportHeight - visibleLines.length),
184
- }).map((_, i) => (_jsx(Box, { children: _jsx(Text, { dimColor: true, children: "~" }) }, `empty-${i}`)))] }), _jsx(Box, { children: showDiscardPrompt ? (_jsxs(Text, { children: ["Discard changes? ", _jsx(Text, { bold: true, children: "(d)" }), " discard", ' ', _jsx(Text, { bold: true, children: "(esc)" }), " back"] })) : (_jsx(Text, { dimColor: true, children: "Ctrl+S save Esc cancel Ctrl+Z undo Ctrl+U kill line Ctrl+Y yank Alt+\u2191\u2193 page Alt+\u2190\u2192 word" })) })] }));
233
+ }).map((_, i) => (_jsx(Box, { children: _jsx(Text, { dimColor: true, children: "~" }) }, `empty-${i}`)))] }), _jsx(Box, { overflowX: "hidden", children: showDiscardPrompt ? (_jsxs(Text, { wrap: "truncate", children: ["Discard changes? ", _jsx(Text, { bold: true, children: "(d)" }), " discard", ' ', _jsx(Text, { bold: true, children: "(esc)" }), " back"] })) : (_jsx(Text, { dimColor: true, wrap: "truncate", children: "Ctrl+S save \u2502 Esc cancel \u2502 Ctrl+V paste image \u2502 Ctrl+Z undo \u2502 Ctrl+U kill line \u2502 Ctrl+Y yank \u2502 Alt+\u2191\u2193 page \u2502 Alt+\u2190\u2192 word" })) })] }));
185
234
  }
186
235
  //# sourceMappingURL=MarkdownEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownEditor.js","sourceRoot":"","sources":["../../src/components/MarkdownEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MarkdownEditor.js","sourceRoot":"","sources":["../../src/components/MarkdownEditor.tsx"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { useState, useMemo } from 'react';
3
3
  import { Box, Text, useInput } from 'ink';
4
4
  import TextInput from 'ink-text-input';
5
5
  import { useScrollViewport } from '../hooks/useScrollViewport.js';
6
- import { useThemeStore } from '../stores/themeStore.js';
6
+ import { useThemeStore, autoFg } from '../stores/themeStore.js';
7
7
  import { ColorPill } from './ColorPill.js';
8
8
  export function filterItems(items, query) {
9
9
  if (query.trim() === '')
@@ -113,7 +113,7 @@ export function OverlayPanel({ title, items, onSelect, onCancel, multiSelect = f
113
113
  if (onQueryChange)
114
114
  onQueryChange(value);
115
115
  };
116
- const { accent, mutedDim } = useThemeStore((s) => s.colors);
116
+ const { accent, mutedDim, selectionBg } = useThemeStore((s) => s.colors);
117
117
  const defaultFooter = multiSelect
118
118
  ? 'space toggle enter confirm esc cancel'
119
119
  : '↑↓ navigate enter select esc cancel';
@@ -126,13 +126,13 @@ export function OverlayPanel({ title, items, onSelect, onCancel, multiSelect = f
126
126
  const idx = selectableIdx++;
127
127
  const isSelected = idx === viewport.visibleCursor;
128
128
  const isToggled = toggled.has(item.id);
129
- return (_jsxs(Box, { children: [_jsx(Text, { color: isSelected ? accent : undefined, bold: isSelected, children: multiSelect
129
+ return (_jsxs(Box, { backgroundColor: isSelected ? selectionBg : undefined, children: [_jsx(Text, { color: isSelected ? autoFg(selectionBg) : undefined, bold: isSelected, children: multiSelect
130
130
  ? isToggled
131
131
  ? '☑ '
132
132
  : '☐ '
133
133
  : isSelected
134
- ? ' '
135
- : ' ' }), _jsx(Box, { flexGrow: 1, gap: 1, children: fieldType && !item.value.startsWith('__') ? (_jsx(ColorPill, { field: fieldType, value: item.value })) : (_jsx(Text, { color: isSelected ? accent : undefined, bold: isSelected, children: item.label })) }), item.hint && _jsxs(Text, { dimColor: mutedDim, children: [" ", item.hint] })] }, item.id));
134
+ ? '> '
135
+ : ' ' }), _jsx(Box, { flexGrow: 1, gap: 1, children: fieldType && !item.value.startsWith('__') ? (_jsx(ColorPill, { field: fieldType, value: item.value })) : (_jsx(Text, { color: isSelected ? autoFg(selectionBg) : undefined, bold: isSelected, children: item.label })) }), item.hint && (_jsxs(Text, { color: isSelected ? autoFg(selectionBg) : undefined, dimColor: !isSelected ? mutedDim : undefined, children: [' ', item.hint] }))] }, item.id));
136
136
  })] }, group.category || '__default'))), _jsx(Box, { marginTop: 1, children: _jsx(Text, { dimColor: mutedDim, children: footer ?? defaultFooter }) })] }));
137
137
  }
138
138
  //# sourceMappingURL=OverlayPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OverlayPanel.js","sourceRoot":"","sources":["../../src/components/OverlayPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OverlayPanel.js","sourceRoot":"","sources":["../../src/components/OverlayPanel.tsx"],"names":[],"mappings":"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"}
@@ -4,7 +4,8 @@ import { Box, Text, useInput } from 'ink';
4
4
  import { useThemeStore, autoFg } from '../stores/themeStore.js';
5
5
  import { navigationStore, useNavigationStore, } from '../stores/navigationStore.js';
6
6
  import { useBackendDataStore } from '../stores/backendDataStore.js';
7
- import { uiStore } from '../stores/uiStore.js';
7
+ import { useShallow } from 'zustand/shallow';
8
+ import { uiStore, useUIStore } from '../stores/uiStore.js';
8
9
  import { ColorPill } from './ColorPill.js';
9
10
  import { CommandBar } from './CommandBar.js';
10
11
  import { TableLayout } from './TableLayout.js';
@@ -62,14 +63,16 @@ function buildPrColumns(muted, mutedDim, selectionBg) {
62
63
  }
63
64
  export function PullRequestList() {
64
65
  const { accent, muted, mutedDim, selectionBg } = useThemeStore((s) => s.colors);
65
- const navigate = useNavigationStore((s) => s.navigate);
66
- const navigateToHelp = useNavigationStore((s) => s.navigateToHelp);
66
+ const { navigate, navigateToHelp } = navigationStore.getState();
67
67
  const selectedPrId = useNavigationStore((s) => s.selectedPrId);
68
- const pullRequests = useBackendDataStore((s) => s.pullRequests);
69
- const capabilities = useBackendDataStore((s) => s.capabilities);
68
+ const { pullRequests, capabilities } = useBackendDataStore(useShallow((s) => ({
69
+ pullRequests: s.pullRequests,
70
+ capabilities: s.capabilities,
71
+ })));
70
72
  const termWidth = useTerminalWidth();
71
73
  const [cursor, setCursor] = useState(0);
72
- const { activeOverlay, openOverlay, closeOverlay } = uiStore.getState();
74
+ const activeOverlay = useUIStore((s) => s.activeOverlay);
75
+ const { openOverlay, closeOverlay } = uiStore.getState();
73
76
  const prColumns = useMemo(() => buildPrColumns(muted, mutedDim, selectionBg), [muted, mutedDim, selectionBg]);
74
77
  // Set initial cursor from navigation
75
78
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"PullRequestList.js","sourceRoot":"","sources":["../../src/components/PullRequestList.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PullRequestList.js","sourceRoot":"","sources":["../../src/components/PullRequestList.tsx"],"names":[],"mappings":"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"}
@@ -2,8 +2,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState, useEffect, useMemo } from 'react';
3
3
  import { Box, Text, useInput, useApp } from 'ink';
4
4
  import TextInput from 'ink-text-input';
5
- import { useNavigationStore } from '../stores/navigationStore.js';
5
+ import { navigationStore, useNavigationStore, } from '../stores/navigationStore.js';
6
6
  import { backendDataStore, useBackendDataStore, defaultCapabilities, } from '../stores/backendDataStore.js';
7
+ import { useShallow } from 'zustand/shallow';
7
8
  import { useConfigStore, configStore } from '../stores/configStore.js';
8
9
  import { uiStore, useUIStore } from '../stores/uiStore.js';
9
10
  import { VALID_BACKENDS } from '../backends/factory.js';
@@ -12,7 +13,7 @@ import { checkForUpdate } from '../update-checker.js';
12
13
  import { VERSION } from '../version.js';
13
14
  import { requestUpdate } from '../updater.js';
14
15
  import { OverlayPanel } from './OverlayPanel.js';
15
- import { openInEditor } from '../editor.js';
16
+ import { editorStore } from '../stores/editorStore.js';
16
17
  import { matchesCommand } from '../commands.js';
17
18
  import { defaultConfig } from '../storage/config.js';
18
19
  import { useTerminalWidth } from '../hooks/useTerminalWidth.js';
@@ -20,22 +21,25 @@ import { themeStore, useThemeStore, themes, autoFg, } from '../stores/themeStore
20
21
  const JIRA_FIELDS = ['site', 'project', 'boardId'];
21
22
  export function Settings() {
22
23
  const { exit } = useApp();
23
- const backend = useBackendDataStore((s) => s.backend);
24
- const syncManager = useBackendDataStore((s) => s.syncManager);
25
- const navigate = useNavigationStore((s) => s.navigate);
24
+ const { backend, syncManager, queue, labels: storeLabels, } = useBackendDataStore(useShallow((s) => ({
25
+ backend: s.backend,
26
+ syncManager: s.syncManager,
27
+ queue: s.queue,
28
+ labels: s.labels,
29
+ })));
30
+ // Navigation store — actions via getState() (stable, never trigger re-renders)
31
+ const { navigate, navigateToHelp, setFormMode, setEditingTemplateSlug, selectWorkItem, setSettingsInitialFocus, } = navigationStore.getState();
32
+ // Only reactive data via hooks
26
33
  const settingsInitialFocus = useNavigationStore((s) => s.settingsInitialFocus);
27
- const setSettingsInitialFocus = useNavigationStore((s) => s.setSettingsInitialFocus);
28
- const navigateToHelp = useNavigationStore((s) => s.navigateToHelp);
29
- const setFormMode = useNavigationStore((s) => s.setFormMode);
30
- const setEditingTemplateSlug = useNavigationStore((s) => s.setEditingTemplateSlug);
31
- const selectWorkItem = useNavigationStore((s) => s.selectWorkItem);
32
34
  const terminalWidth = useTerminalWidth();
33
- const themeName = useThemeStore((s) => s.themeName);
34
- const { accent, success, mutedDim } = useThemeStore((s) => s.colors);
35
- const queue = useBackendDataStore((s) => s.queue);
36
- const storeLabels = useBackendDataStore((s) => s.labels);
37
- const config = useConfigStore((s) => s.config);
38
- const configLoaded = useConfigStore((s) => s.loaded);
35
+ const { themeName, colors: { accent, success, mutedDim, selectionBg }, } = useThemeStore(useShallow((s) => ({
36
+ themeName: s.themeName,
37
+ colors: s.colors,
38
+ })));
39
+ const { config, loaded: configLoaded } = useConfigStore(useShallow((s) => ({
40
+ config: s.config,
41
+ loaded: s.loaded,
42
+ })));
39
43
  const [cursor, setCursor] = useState(0);
40
44
  const [jiraSite, setJiraSite] = useState('');
41
45
  const [jiraProject, setJiraProject] = useState('');
@@ -279,22 +283,17 @@ export function Settings() {
279
283
  .catch(() => { });
280
284
  }
281
285
  else if (item.kind === 'branch-command') {
282
- try {
283
- const current = config?.branchCommand ?? defaultConfig.branchCommand ?? '';
284
- process.stdin.setRawMode?.(false);
285
- const edited = openInEditor(current);
286
- process.stdin.setRawMode?.(true);
287
- console.clear();
288
- void configStore
289
- .getState()
290
- .update({ branchCommand: edited.trim() })
291
- .catch(() => { });
292
- }
293
- catch {
294
- process.stdin.setRawMode?.(true);
295
- console.clear();
296
- // Editor failed, ignore
297
- }
286
+ const current = config?.branchCommand ?? defaultConfig.branchCommand ?? '';
287
+ editorStore.getState().init(current, {
288
+ returnScreen: 'settings',
289
+ onSave: (content) => {
290
+ void configStore
291
+ .getState()
292
+ .update({ branchCommand: content.trim() })
293
+ .catch(() => { });
294
+ },
295
+ });
296
+ navigationStore.getState().navigate('editor');
298
297
  }
299
298
  else if (item.kind === 'branch-clipboard-toggle') {
300
299
  void configStore
@@ -328,6 +327,11 @@ export function Settings() {
328
327
  selectWorkItem(null);
329
328
  navigate('form');
330
329
  }
330
+ if (matchesCommand('settings-update', input, key) &&
331
+ updateInfo?.updateAvailable) {
332
+ requestUpdate();
333
+ exit();
334
+ }
331
335
  if (matchesCommand('settings-delete-template', input, key)) {
332
336
  const item = navItems[cursor];
333
337
  if (item && item.kind === 'template') {
@@ -355,7 +359,7 @@ export function Settings() {
355
359
  const b = item.backend;
356
360
  const isCurrent = b === config.backend;
357
361
  const status = availability[b];
358
- return (_jsxs(Box, { children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { color: focused ? accent : undefined, bold: focused, dimColor: status !== 'available', children: [b, isCurrent ? ' (current)' : '', status === 'checking' ? ' (checking...)' : '', status === 'unavailable' ? ' (not available)' : ''] })] }, b));
362
+ return (_jsxs(Box, { backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, bold: focused, dimColor: status !== 'available' && !focused, children: [b, isCurrent ? ' (current)' : '', status === 'checking' ? ' (checking...)' : '', status === 'unavailable' ? ' (not available)' : ''] })] }, b));
359
363
  }
360
364
  if (item.kind === 'template-header' ||
361
365
  item.kind === 'template' ||
@@ -393,10 +397,10 @@ export function Settings() {
393
397
  : setJiraBoardId;
394
398
  const required = field !== 'boardId';
395
399
  const isEditing = focused && activeOverlay?.type === 'settings-edit';
396
- return (_jsxs(Box, { marginLeft: 4, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), isEditing ? (_jsxs(Box, { children: [_jsxs(Text, { bold: true, color: accent, children: [label, ":", ' '] }), _jsx(TextInput, { value: value, onChange: setter, focus: true, onSubmit: () => {
400
+ return (_jsxs(Box, { marginLeft: 4, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), isEditing ? (_jsxs(Box, { children: [_jsxs(Text, { bold: true, color: autoFg(selectionBg), children: [label, ":", ' '] }), _jsx(TextInput, { value: value, onChange: setter, focus: true, onSubmit: () => {
397
401
  closeOverlay();
398
402
  saveJiraConfig();
399
- } })] })) : (_jsxs(Text, { bold: focused, color: focused ? accent : undefined, children: [label, ":", ' ', value || (_jsx(Text, { dimColor: mutedDim, children: required ? '(required)' : '(optional)' }))] }))] }, `jira-${field}`));
403
+ } })] })) : (_jsxs(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: [label, ":", ' ', value || (_jsx(Text, { dimColor: !focused ? mutedDim : undefined, children: required ? '(required)' : '(optional)' }))] }))] }, `jira-${field}`));
400
404
  }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, children: "Defaults:" }), navItems.map((item, idx) => {
401
405
  if (item.kind !== 'default-type' && item.kind !== 'default-iteration')
402
406
  return null;
@@ -405,7 +409,7 @@ export function Settings() {
405
409
  const value = item.kind === 'default-type'
406
410
  ? (config.defaultType ?? config.types[0] ?? 'none')
407
411
  : config.current_iteration;
408
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? accent : undefined, children: [label, ": ", value] })] }, item.kind));
412
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: [label, ": ", value] })] }, item.kind));
409
413
  })] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, children: "Branch:" }), navItems.map((item, idx) => {
410
414
  if (item.kind !== 'branch-command' &&
411
415
  item.kind !== 'branch-clipboard-toggle')
@@ -418,17 +422,17 @@ export function Settings() {
418
422
  const truncCmd = rawCmd.length > maxLen
419
423
  ? rawCmd.slice(0, maxLen - 1) + '\u2026'
420
424
  : rawCmd;
421
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? accent : undefined, children: ["Branch command: ", truncCmd || '(none)'] }), focused && (_jsx(Text, { dimColor: mutedDim, children: " [enter opens $EDITOR]" }))] }, "branch-command"));
425
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: ["Branch command: ", truncCmd || '(none)'] }), focused && (_jsx(Text, { color: autoFg(selectionBg), children: " [enter to edit]" }))] }, "branch-command"));
422
426
  }
423
427
  if (item.kind === 'branch-clipboard-toggle') {
424
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? accent : undefined, children: ["Copy to clipboard:", ' ', config?.copyToClipboard !== false ? 'on' : 'off'] })] }, "branch-clipboard-toggle"));
428
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: ["Copy to clipboard:", ' ', config?.copyToClipboard !== false ? 'on' : 'off'] })] }, "branch-clipboard-toggle"));
425
429
  }
426
430
  return null;
427
431
  })] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, children: "Display:" }), navItems.map((item, idx) => {
428
432
  if (item.kind !== 'theme')
429
433
  return null;
430
434
  const focused = idx === cursor;
431
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? accent : undefined, children: ["Theme: ", themeName] })] }, "theme"));
435
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: ["Theme: ", themeName] })] }, "theme"));
432
436
  })] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, children: "Colors:" }), navItems.map((item, idx) => {
433
437
  if (item.kind !== 'color-status' &&
434
438
  item.kind !== 'color-priority' &&
@@ -442,12 +446,12 @@ export function Settings() {
442
446
  'color-type': 'Type colors',
443
447
  'color-label': 'Label colors',
444
448
  };
445
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? accent : undefined, children: [label[item.kind], " \u2192"] })] }, item.kind));
449
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: [label[item.kind], " \u2192"] })] }, item.kind));
446
450
  })] }), capabilities.templates && (_jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, children: "Templates:" }), navItems.map((item, idx) => {
447
451
  if (item.kind !== 'template')
448
452
  return null;
449
453
  const focused = idx === cursor;
450
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsx(Text, { bold: focused, color: focused ? accent : undefined, children: item.name })] }, `tmpl-${item.slug}`));
454
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsx(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: item.name })] }, `tmpl-${item.slug}`));
451
455
  }), templates.length === 0 && (_jsx(Box, { marginLeft: 2, children: _jsx(Text, { dimColor: mutedDim, children: "(no templates \u2014 press c to create)" }) }))] })), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, children: "Updates:" }), _jsx(Box, { marginLeft: 2, children: _jsxs(Text, { dimColor: mutedDim, children: ["Current: v", VERSION] }) }), _jsx(Box, { marginLeft: 2, children: _jsxs(Text, { dimColor: mutedDim, children: ["Latest:", ' ', updateChecking
452
456
  ? 'checking...'
453
457
  : updateInfo
@@ -457,13 +461,13 @@ export function Settings() {
457
461
  : 'unknown'] }) }), navItems.map((item, idx) => {
458
462
  const focused = idx === cursor;
459
463
  if (item.kind === 'update-now') {
460
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? accent : success, children: ["Update to v", updateInfo?.latest] })] }, "update-now"));
464
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? autoFg(selectionBg) : success, children: ["Update to v", updateInfo?.latest] })] }, "update-now"));
461
465
  }
462
466
  if (item.kind === 'update-check') {
463
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsx(Text, { bold: focused, color: focused ? accent : undefined, children: updateChecking ? 'Checking...' : 'Check for updates' })] }, "update-check"));
467
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsx(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: updateChecking ? 'Checking...' : 'Check for updates' })] }, "update-check"));
464
468
  }
465
469
  if (item.kind === 'update-toggle') {
466
- return (_jsxs(Box, { marginLeft: 2, children: [_jsxs(Text, { color: focused ? accent : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? accent : undefined, children: ["Auto-check on launch:", ' ', config?.autoUpdate !== false ? 'on' : 'off'] })] }, "update-toggle"));
470
+ return (_jsxs(Box, { marginLeft: 2, backgroundColor: focused ? selectionBg : undefined, children: [_jsxs(Text, { color: focused ? autoFg(selectionBg) : undefined, children: [focused ? '>' : ' ', ' '] }), _jsxs(Text, { bold: focused, color: focused ? autoFg(selectionBg) : undefined, children: ["Auto-check on launch:", ' ', config?.autoUpdate !== false ? 'on' : 'off'] })] }, "update-toggle"));
467
471
  }
468
472
  return null;
469
473
  })] }), activeOverlay?.type === 'default-type-picker' && (_jsx(OverlayPanel, { title: "Default Type", items: config.types.map((t) => ({ id: t, label: t, value: t })), onSelect: (item) => {
@@ -610,8 +614,13 @@ export function Settings() {
610
614
  // Go back to value picker
611
615
  openOverlay({ type: 'color-value-picker', fieldType: ft });
612
616
  } }));
613
- })(), _jsx(Box, { marginTop: 1, children: _jsx(Text, { dimColor: mutedDim, children: capabilities.templates
614
- ? '↑↓ navigate enter select c create template d delete template esc back ? help'
615
- : '↑↓ navigate enter select esc back ? help' }) })] }));
617
+ })(), _jsx(Box, { marginTop: 1, children: _jsx(Text, { dimColor: mutedDim, children: [
618
+ '↑↓ navigateenter select',
619
+ capabilities.templates
620
+ ? ' │ c create template │ d delete template'
621
+ : '',
622
+ updateInfo?.updateAvailable ? ' │ u update' : '',
623
+ ' │ esc back │ ? help',
624
+ ].join('') }) })] }));
616
625
  }
617
626
  //# sourceMappingURL=Settings.js.map