centaurus-cli 2.7.3 → 2.8.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 (97) hide show
  1. package/dist/cli-adapter.d.ts +10 -6
  2. package/dist/cli-adapter.d.ts.map +1 -1
  3. package/dist/cli-adapter.js +613 -154
  4. package/dist/cli-adapter.js.map +1 -1
  5. package/dist/config/slash-commands.d.ts.map +1 -1
  6. package/dist/config/slash-commands.js +1 -0
  7. package/dist/config/slash-commands.js.map +1 -1
  8. package/dist/context/context-manager.d.ts +4 -1
  9. package/dist/context/context-manager.d.ts.map +1 -1
  10. package/dist/context/context-manager.js +30 -7
  11. package/dist/context/context-manager.js.map +1 -1
  12. package/dist/context/handlers/wsl-handler.d.ts +10 -0
  13. package/dist/context/handlers/wsl-handler.d.ts.map +1 -1
  14. package/dist/context/handlers/wsl-handler.js +31 -2
  15. package/dist/context/handlers/wsl-handler.js.map +1 -1
  16. package/dist/index.js +33 -0
  17. package/dist/index.js.map +1 -1
  18. package/dist/services/ai-service-client.d.ts +1 -0
  19. package/dist/services/ai-service-client.d.ts.map +1 -1
  20. package/dist/services/ai-service-client.js +20 -0
  21. package/dist/services/ai-service-client.js.map +1 -1
  22. package/dist/tools/command.d.ts.map +1 -1
  23. package/dist/tools/command.js +136 -21
  24. package/dist/tools/command.js.map +1 -1
  25. package/dist/tools/file-ops.d.ts +1 -0
  26. package/dist/tools/file-ops.d.ts.map +1 -1
  27. package/dist/tools/file-ops.js +144 -3
  28. package/dist/tools/file-ops.js.map +1 -1
  29. package/dist/tools/inspect-symbol.js +27 -27
  30. package/dist/tools/inspect-symbol.js.map +1 -1
  31. package/dist/tools/plan-mode.d.ts +55 -19
  32. package/dist/tools/plan-mode.d.ts.map +1 -1
  33. package/dist/tools/plan-mode.js +204 -123
  34. package/dist/tools/plan-mode.js.map +1 -1
  35. package/dist/tools/types.d.ts +1 -1
  36. package/dist/tools/types.d.ts.map +1 -1
  37. package/dist/types/index.d.ts +11 -1
  38. package/dist/types/index.d.ts.map +1 -1
  39. package/dist/ui/components/App.d.ts +6 -5
  40. package/dist/ui/components/App.d.ts.map +1 -1
  41. package/dist/ui/components/App.js +277 -125
  42. package/dist/ui/components/App.js.map +1 -1
  43. package/dist/ui/components/InputBox.d.ts.map +1 -1
  44. package/dist/ui/components/InputBox.js +24 -5
  45. package/dist/ui/components/InputBox.js.map +1 -1
  46. package/dist/ui/components/InteractiveShell.d.ts +2 -1
  47. package/dist/ui/components/InteractiveShell.d.ts.map +1 -1
  48. package/dist/ui/components/InteractiveShell.js +41 -106
  49. package/dist/ui/components/InteractiveShell.js.map +1 -1
  50. package/dist/ui/components/MarkdownRenderer.d.ts.map +1 -1
  51. package/dist/ui/components/MarkdownRenderer.js +12 -8
  52. package/dist/ui/components/MarkdownRenderer.js.map +1 -1
  53. package/dist/ui/components/MessageDisplay.d.ts.map +1 -1
  54. package/dist/ui/components/MessageDisplay.js +11 -3
  55. package/dist/ui/components/MessageDisplay.js.map +1 -1
  56. package/dist/ui/components/PlanAcceptedMessage.d.ts +12 -0
  57. package/dist/ui/components/PlanAcceptedMessage.d.ts.map +1 -0
  58. package/dist/ui/components/PlanAcceptedMessage.js +22 -0
  59. package/dist/ui/components/PlanAcceptedMessage.js.map +1 -0
  60. package/dist/ui/components/PlanReviewScreen.d.ts +14 -0
  61. package/dist/ui/components/PlanReviewScreen.d.ts.map +1 -0
  62. package/dist/ui/components/PlanReviewScreen.js +52 -0
  63. package/dist/ui/components/PlanReviewScreen.js.map +1 -0
  64. package/dist/ui/components/StreamingMessageDisplay.d.ts.map +1 -1
  65. package/dist/ui/components/StreamingMessageDisplay.js +5 -5
  66. package/dist/ui/components/StreamingMessageDisplay.js.map +1 -1
  67. package/dist/ui/components/TaskCompletedMessage.d.ts +14 -0
  68. package/dist/ui/components/TaskCompletedMessage.d.ts.map +1 -0
  69. package/dist/ui/components/TaskCompletedMessage.js +25 -0
  70. package/dist/ui/components/TaskCompletedMessage.js.map +1 -0
  71. package/dist/ui/components/ToolExecutionMessage.d.ts.map +1 -1
  72. package/dist/ui/components/ToolExecutionMessage.js +174 -17
  73. package/dist/ui/components/ToolExecutionMessage.js.map +1 -1
  74. package/dist/utils/conversation-logger.d.ts +127 -0
  75. package/dist/utils/conversation-logger.d.ts.map +1 -0
  76. package/dist/utils/conversation-logger.js +283 -0
  77. package/dist/utils/conversation-logger.js.map +1 -0
  78. package/dist/utils/editor-utils.d.ts +87 -0
  79. package/dist/utils/editor-utils.d.ts.map +1 -0
  80. package/dist/utils/editor-utils.js +712 -0
  81. package/dist/utils/editor-utils.js.map +1 -0
  82. package/dist/utils/input-classifier.d.ts.map +1 -1
  83. package/dist/utils/input-classifier.js +12 -4
  84. package/dist/utils/input-classifier.js.map +1 -1
  85. package/dist/utils/markdown-parser.d.ts.map +1 -1
  86. package/dist/utils/markdown-parser.js +4 -2
  87. package/dist/utils/markdown-parser.js.map +1 -1
  88. package/dist/utils/shell.d.ts +32 -1
  89. package/dist/utils/shell.d.ts.map +1 -1
  90. package/dist/utils/shell.js +97 -161
  91. package/dist/utils/shell.js.map +1 -1
  92. package/dist/utils/syntax-checker.d.ts +24 -0
  93. package/dist/utils/syntax-checker.d.ts.map +1 -0
  94. package/dist/utils/syntax-checker.js +320 -0
  95. package/dist/utils/syntax-checker.js.map +1 -0
  96. package/package.json +4 -3
  97. package/prompts/system-prompt-autonomous.md +0 -377
@@ -1,15 +1,29 @@
1
- import React from 'react';
1
+ import React, { useEffect } from 'react';
2
2
  import { Box, Text, useInput } from 'ink';
3
3
  import Spinner from 'ink-spinner';
4
4
  import stripAnsi from 'strip-ansi';
5
5
  import { encodeKeyToAnsi } from '../../utils/ansi-encoder.js';
6
- export const InteractiveShell = React.memo(({ command, cwd, isRunning, output, exitCode, error, onInput, isFocused, onFocusChange, userInput, onSignal }) => {
7
- const maxVisibleLines = 8; // Limit height while running to prevent duplication with history
8
- // Get last N lines of output, merging with user input inline
6
+ export const InteractiveShell = React.memo(({ command, cwd, isRunning, output, exitCode, error, onInput, isFocused, onFocusChange, onSignal, onResize }) => {
7
+ const maxVisibleLines = 8;
8
+ // Handle terminal resize events
9
+ useEffect(() => {
10
+ if (!onResize || !isRunning)
11
+ return;
12
+ const handleResize = () => {
13
+ const cols = process.stdout.columns || 80;
14
+ const rows = process.stdout.rows || 24;
15
+ onResize(cols, rows);
16
+ };
17
+ handleResize();
18
+ process.stdout.on('resize', handleResize);
19
+ return () => {
20
+ process.stdout.off('resize', handleResize);
21
+ };
22
+ }, [onResize, isRunning]);
23
+ // Get last N lines of output
9
24
  const getVisibleOutput = () => {
10
25
  if (!output)
11
26
  return '';
12
- // Remove \r (carriage return) to prevent cursor jumping over borders
13
27
  const safeOutput = output.replace(/\r/g, '');
14
28
  const lines = safeOutput.split('\n');
15
29
  if (lines.length <= maxVisibleLines) {
@@ -17,101 +31,37 @@ export const InteractiveShell = React.memo(({ command, cwd, isRunning, output, e
17
31
  }
18
32
  return lines.slice(-maxVisibleLines).join('\n');
19
33
  };
20
- // Merge output with user input inline (for display)
21
- const getMergedOutput = () => {
22
- const baseOutput = getVisibleOutput();
23
- // If not focused or no user input, just return the output
24
- if (!isFocused || !userInput) {
25
- return { text: baseOutput, userInputStart: -1 };
26
- }
27
- // Append user input to the output inline
28
- // This makes it appear as if the user is typing directly in the terminal
29
- const mergedOutput = baseOutput + userInput;
30
- const userInputStart = baseOutput.length;
31
- return { text: mergedOutput, userInputStart };
32
- };
33
- // Handle input when shell is focused - LINE-BUFFERED with ANSI encoding
34
+ // Handle input - PTY mode sends everything immediately
34
35
  useInput((input, key) => {
35
36
  if (!isFocused || !onInput)
36
37
  return;
37
- // ============================================
38
- // CRITICAL: LINE-BUFFERED MODE
39
- // ============================================
40
- // We buffer regular characters locally and only send the complete line
41
- // when Enter is pressed. This ensures compatibility with programs that
42
- // expect line-buffered input (batch files, shell scripts, etc.)
43
- //
44
- // Special keys (arrows, Ctrl+C, etc.) are sent immediately as ANSI codes.
45
- // ============================================
46
- // 1. Global App Controls
38
+ // Global: Ctrl+F to exit focus mode
47
39
  if (key.ctrl && input === 'f') {
48
40
  onFocusChange(false);
49
41
  return;
50
42
  }
51
- // 2. Handle Enter - Send complete buffered line
52
- if (key.return) {
53
- // Send the complete user input + platform-specific newline
54
- const completeInput = (userInput || '') + encodeKeyToAnsi(input, key);
55
- onInput(completeInput);
56
- return;
57
- }
58
- // 3. Handle Backspace - Signal to remove from buffer
59
- if (key.backspace || key.delete) {
60
- onInput('\x08'); // Backspace marker (handled by App.tsx)
61
- return;
62
- }
63
- // 4. Handle Control Keys - Send immediately
64
- if (key.ctrl) {
65
- // Special handling for signals
66
- if (input === 'c') {
67
- try {
68
- require('fs').appendFileSync('shell_ui_debug.log', `[InteractiveShell] Ctrl+C detected. onSignal exists: ${!!onSignal}\n`);
69
- }
70
- catch (e) { }
71
- // 1. Inject ETX (\x03) to simulate real terminal input
72
- if (onInput) {
73
- onInput('\x03');
74
- }
75
- // 2. Send signal to backend
76
- if (onSignal) {
77
- onSignal('SIGINT');
78
- return;
79
- }
80
- }
81
- if (input === 'd' && onSignal) {
82
- // Only send EOF if buffer is empty, otherwise it might be delete char
83
- if (!userInput) {
84
- onSignal('SIGTERM'); // Or close stdin
85
- return;
86
- }
87
- }
88
- const encoded = encodeKeyToAnsi(input, key);
89
- if (encoded) {
90
- onInput(encoded);
43
+ // Ctrl+C - send to PTY AND signal backend for forceful termination
44
+ if (key.ctrl && input === 'c') {
45
+ onInput('\x03');
46
+ if (onSignal) {
47
+ onSignal('SIGINT');
91
48
  }
92
49
  return;
93
50
  }
94
- // 5. Handle Arrow Keys - Send immediately (for readline support)
95
- if (key.upArrow || key.downArrow || key.leftArrow || key.rightArrow || key.pageUp || key.pageDown) {
96
- const encoded = encodeKeyToAnsi(input, key);
97
- if (encoded) {
98
- onInput(encoded);
99
- }
51
+ // Ctrl+D - EOF
52
+ if (key.ctrl && input === 'd') {
53
+ onInput('\x04');
100
54
  return;
101
55
  }
102
- // 6. Handle Tab - Add to buffer
103
- if (key.tab) {
104
- onInput('\t');
56
+ // Ctrl+Z - Suspend
57
+ if (key.ctrl && input === 'z') {
58
+ onInput('\x1A');
105
59
  return;
106
60
  }
107
- // 7. Regular Characters - Add to buffer (don't send yet)
108
- // These will be sent when Enter is pressed
109
- if (input && input.length > 0) {
110
- // Filter out control characters
111
- const charCode = input.charCodeAt(0);
112
- if (charCode >= 32 || input === '\t') {
113
- onInput(input); // Add to buffer (handled by App.tsx)
114
- }
61
+ // Encode and send all keys immediately
62
+ const encoded = encodeKeyToAnsi(input, key);
63
+ if (encoded) {
64
+ onInput(encoded);
115
65
  }
116
66
  }, { isActive: isFocused });
117
67
  // Determine border color and icon based on status
@@ -130,24 +80,8 @@ export const InteractiveShell = React.memo(({ command, cwd, isRunning, output, e
130
80
  return '✓';
131
81
  };
132
82
  const color = getBorderColor();
133
- // Get merged output with user input inline
134
- const { text: mergedText, userInputStart } = isRunning ? getMergedOutput() : { text: output, userInputStart: -1 };
135
- const cleanOutput = stripAnsi(mergedText);
136
- // Split output into parts: before user input and user input
137
- const renderOutput = () => {
138
- if (!cleanOutput)
139
- return null;
140
- // If no user input or not focused, render normally
141
- if (userInputStart === -1 || !isFocused) {
142
- return React.createElement(Text, { wrap: "wrap" }, cleanOutput);
143
- }
144
- // Split at user input position
145
- const beforeInput = cleanOutput.substring(0, userInputStart);
146
- const userInputPart = cleanOutput.substring(userInputStart);
147
- return (React.createElement(Text, { wrap: "wrap" },
148
- beforeInput,
149
- React.createElement(Text, { color: "#00ff00" }, userInputPart)));
150
- };
83
+ const visibleOutput = getVisibleOutput();
84
+ const cleanOutput = stripAnsi(visibleOutput);
151
85
  return (React.createElement(Box, { flexDirection: "column", marginBottom: 1 },
152
86
  React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: color, paddingX: 1 },
153
87
  React.createElement(Box, { marginBottom: 1 },
@@ -162,10 +96,11 @@ export const InteractiveShell = React.memo(({ command, cwd, isRunning, output, e
162
96
  "[current working directory ",
163
97
  cwd,
164
98
  "]")),
165
- cleanOutput && (React.createElement(Box, null, renderOutput())),
99
+ cleanOutput && (React.createElement(Box, null,
100
+ React.createElement(Text, { wrap: "wrap" }, cleanOutput))),
166
101
  isFocused && isRunning && (React.createElement(Box, { marginTop: 1 },
167
102
  React.createElement(Text, { color: "#ffaa00", bold: true }, "[ FOCUS MODE ] "),
168
- React.createElement(Text, { color: "#666666" }, "Ctrl+F to exit focus mode | Type to send input"))),
103
+ React.createElement(Text, { color: "#666666" }, "Ctrl+F to exit | PTY Mode - Full terminal emulation"))),
169
104
  error && !isRunning && (React.createElement(Box, { marginTop: 1 },
170
105
  React.createElement(Text, { color: "#ff3366", wrap: "wrap" }, error.replace(/\r/g, ''))))),
171
106
  isRunning && !isFocused && (React.createElement(Box, { marginLeft: 1 },
@@ -1 +1 @@
1
- {"version":3,"file":"InteractiveShell.js","sourceRoot":"","sources":["../../../src/ui/components/InteractiveShell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InteractiveShell.js","sourceRoot":"","sources":["../../../src/ui/components/InteractiveShell.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownRenderer.d.ts","sourceRoot":"","sources":["../../../src/ui/components/MarkdownRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAIvC,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAgL5D,CAAC"}
1
+ {"version":3,"file":"MarkdownRenderer.d.ts","sourceRoot":"","sources":["../../../src/ui/components/MarkdownRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAIvC,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAoL5D,CAAC"}
@@ -32,7 +32,7 @@ export const MarkdownRenderer = ({ content, maxWidth = 100 }) => {
32
32
  // Wrap heading text if it's too long
33
33
  const availableWidth = maxWidth - 2; // -2 for padding
34
34
  const wrappedLines = wrapText(element.content, availableWidth, 0);
35
- return (React.createElement(Box, { key: index, flexDirection: "column", marginTop: 1, marginBottom: 0 }, wrappedLines.map((line, lineIdx) => (React.createElement(Text, { key: lineIdx, bold: true, color: color }, line)))));
35
+ return (React.createElement(Box, { key: index, flexDirection: "column", marginTop: 0, marginBottom: 0 }, wrappedLines.map((line, lineIdx) => (React.createElement(Text, { key: lineIdx, bold: true, color: color }, line)))));
36
36
  }
37
37
  case 'code-block': {
38
38
  const lines = element.content.split('\n');
@@ -46,14 +46,16 @@ export const MarkdownRenderer = ({ content, maxWidth = 100 }) => {
46
46
  const indent = (element.level || 0) * 2;
47
47
  const bullet = element.ordered ? `${element.index}.` : '•';
48
48
  const bulletColor = '#00cc66';
49
- // Render list item with inline formatting preserved
49
+ const bulletWidth = element.ordered ? 3 : 2; // "1." or "•" + space
50
+ const availableWidth = maxWidth - indent - bulletWidth - 4; // Account for all padding
51
+ // Render list item with proper width constraints
50
52
  return (React.createElement(Box, { key: index, flexDirection: "row", marginBottom: 0 },
51
53
  React.createElement(Text, { color: "#666666" }, ' '.repeat(indent)),
52
54
  React.createElement(Text, { color: bulletColor, bold: true },
53
55
  bullet,
54
56
  ' '),
55
- React.createElement(Box, { flexShrink: 1 },
56
- React.createElement(Text, null, element.children && element.children.length > 0
57
+ React.createElement(Box, { flexShrink: 1, width: availableWidth },
58
+ React.createElement(Text, { wrap: "wrap" }, element.children && element.children.length > 0
57
59
  ? renderInlineElements(element.children)
58
60
  : React.createElement(Text, { color: "#ffffff" }, element.content)))));
59
61
  }
@@ -71,14 +73,16 @@ export const MarkdownRenderer = ({ content, maxWidth = 100 }) => {
71
73
  React.createElement(Text, { color: "#444444" }, '─'.repeat(Math.min(maxWidth, 80)))));
72
74
  }
73
75
  case 'line-break': {
74
- return React.createElement(Box, { key: index, height: 0 });
76
+ // Use a Text element with newline instead of Box with height={0}
77
+ // to prevent breaking the parent's border
78
+ return React.createElement(Text, { key: index }, ' ');
75
79
  }
76
80
  case 'text': {
77
- // If we have inline children (formatted text), render them directly
81
+ // If we have inline children (formatted text), render them with proper wrapping
78
82
  if (element.children && element.children.length > 0) {
79
83
  return (React.createElement(Box, { key: index, flexDirection: "column", marginBottom: 0 },
80
- React.createElement(Box, { paddingLeft: 2 },
81
- React.createElement(Text, null, renderInlineElements(element.children)))));
84
+ React.createElement(Box, { paddingLeft: 2, width: maxWidth - 2, flexWrap: "wrap" },
85
+ React.createElement(Text, { wrap: "wrap" }, renderInlineElements(element.children)))));
82
86
  }
83
87
  // Otherwise, wrap plain text if needed
84
88
  // Account for paddingLeft={2} in the wrapping calculation
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownRenderer.js","sourceRoot":"","sources":["../../../src/ui/components/MarkdownRenderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MarkdownRenderer.js","sourceRoot":"","sources":["../../../src/ui/components/MarkdownRenderer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MessageDisplay.d.ts","sourceRoot":"","sources":["../../../src/ui/components/MessageDisplay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAM/C,UAAU,mBAAmB;IAC3B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA8GvD,CAAC"}
1
+ {"version":3,"file":"MessageDisplay.d.ts","sourceRoot":"","sources":["../../../src/ui/components/MessageDisplay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C,UAAU,mBAAmB;IAC3B,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA6GvD,CAAC"}
@@ -51,6 +51,14 @@ export const MessageDisplay = React.memo(({ message }) => {
51
51
  if (message.approval) {
52
52
  return null;
53
53
  }
54
+ // Determine border color based on message type
55
+ const getBorderColor = () => {
56
+ if (message.isCommandMode) {
57
+ return message.role === 'assistant' ? '#00cc66' : '#00ccff';
58
+ }
59
+ return message.role === 'assistant' ? '#00ccff' : '#666666';
60
+ };
61
+ const borderColor = getBorderColor();
54
62
  // Regular message rendering
55
63
  return (React.createElement(Box, { flexDirection: "column", marginBottom: 1 },
56
64
  React.createElement(Box, { marginBottom: 1 },
@@ -67,8 +75,8 @@ export const MessageDisplay = React.memo(({ message }) => {
67
75
  " second",
68
76
  message.thinkingDuration !== 1 ? 's' : '',
69
77
  " \u203A"))),
70
- message.isCommandMode ? (React.createElement(Box, { borderStyle: "single", borderColor: message.role === 'assistant' ? '#00cc66' : '#00ccff', borderLeft: true, borderRight: false, borderTop: false, borderBottom: false, paddingLeft: 1 }, message.role === 'assistant' ? (React.createElement(MarkdownRenderer, { content: message.content, maxWidth: 94 })) : (React.createElement(Text, { color: "#ffffff" }, message.content)))) : message.role === 'assistant' ? (React.createElement(Box, { borderStyle: "single", borderColor: "#00ccff", borderLeft: true, borderRight: false, borderTop: false, borderBottom: false, paddingLeft: 1 },
71
- React.createElement(MarkdownRenderer, { content: message.content, maxWidth: 94 }))) : (React.createElement(Box, { paddingLeft: 2 },
72
- React.createElement(Text, { color: "#ffffff" }, message.content)))));
78
+ message.role === 'assistant' ? (message.content.trim() ? (React.createElement(Box, { borderStyle: "single", borderColor: borderColor, borderLeft: true, borderRight: false, borderTop: false, borderBottom: false, paddingLeft: 1, flexDirection: "column", width: "100%" },
79
+ React.createElement(MarkdownRenderer, { content: message.content, maxWidth: (process.stdout.columns || 120) - 6 }))) : null) : (message.content.trim() ? (React.createElement(Box, { paddingLeft: 2 },
80
+ React.createElement(Text, { color: "#ffffff" }, message.content))) : null)));
73
81
  });
74
82
  //# sourceMappingURL=MessageDisplay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MessageDisplay.js","sourceRoot":"","sources":["../../../src/ui/components/MessageDisplay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MessageDisplay.js","sourceRoot":"","sources":["../../../src/ui/components/MessageDisplay.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * PlanAcceptedMessage Component
3
+ * Displays a message when the plan is accepted and execution begins
4
+ */
5
+ import React from 'react';
6
+ interface PlanAcceptedMessageProps {
7
+ planTitle?: string;
8
+ totalTasks?: number;
9
+ }
10
+ export declare const PlanAcceptedMessage: React.FC<PlanAcceptedMessageProps>;
11
+ export default PlanAcceptedMessage;
12
+ //# sourceMappingURL=PlanAcceptedMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlanAcceptedMessage.d.ts","sourceRoot":"","sources":["../../../src/ui/components/PlanAcceptedMessage.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,wBAAwB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CA6BlE,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * PlanAcceptedMessage Component
3
+ * Displays a message when the plan is accepted and execution begins
4
+ */
5
+ import React from 'react';
6
+ import { Box, Text } from 'ink';
7
+ export const PlanAcceptedMessage = ({ planTitle, totalTasks }) => {
8
+ return (React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#00cc66", paddingX: 1, paddingY: 0, marginY: 0 },
9
+ React.createElement(Box, null,
10
+ React.createElement(Text, { color: "#00cc66", bold: true }, "\u2713 "),
11
+ React.createElement(Text, { color: "#00cc66", bold: true }, "Plan Accepted")),
12
+ planTitle && (React.createElement(Box, { marginLeft: 2 },
13
+ React.createElement(Text, { color: "#888888" }, planTitle))),
14
+ totalTasks && (React.createElement(Box, { marginLeft: 2 },
15
+ React.createElement(Text, { color: "#666666", dimColor: true },
16
+ "Starting execution of ",
17
+ totalTasks,
18
+ " task",
19
+ totalTasks > 1 ? 's' : '')))));
20
+ };
21
+ export default PlanAcceptedMessage;
22
+ //# sourceMappingURL=PlanAcceptedMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlanAcceptedMessage.js","sourceRoot":"","sources":["../../../src/ui/components/PlanAcceptedMessage.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAOhC,MAAM,CAAC,MAAM,mBAAmB,GAAuC,CAAC,EACpE,SAAS,EACT,UAAU,EACb,EAAE,EAAE;IACD,OAAO,CACH,oBAAC,GAAG,IACA,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,OAAO,EACnB,WAAW,EAAC,SAAS,EACrB,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,CAAC;QAEV,oBAAC,GAAG;YACA,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,EAAC,IAAI,oBAAU;YACpC,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,EAAC,IAAI,0BAAqB,CAC7C;QACL,SAAS,IAAI,CACV,oBAAC,GAAG,IAAC,UAAU,EAAE,CAAC;YACd,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,IAAE,SAAS,CAAQ,CACtC,CACT;QACA,UAAU,IAAI,CACX,oBAAC,GAAG,IAAC,UAAU,EAAE,CAAC;YACd,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,EAAC,QAAQ;;gBAAwB,UAAU;;gBAAO,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAQ,CACtG,CACT,CACC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * PlanReviewScreen Component
3
+ * Dedicated screen for reviewing and approving/editing a plan
4
+ */
5
+ import React from 'react';
6
+ import { Plan } from '../../tools/plan-mode.js';
7
+ interface PlanReviewScreenProps {
8
+ plan: Plan;
9
+ onApprove: () => void;
10
+ onEdit: () => void;
11
+ }
12
+ export declare const PlanReviewScreen: React.FC<PlanReviewScreenProps>;
13
+ export default PlanReviewScreen;
14
+ //# sourceMappingURL=PlanReviewScreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlanReviewScreen.d.ts","sourceRoot":"","sources":["../../../src/ui/components/PlanReviewScreen.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAEhD,UAAU,qBAAqB;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,MAAM,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAuF5D,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * PlanReviewScreen Component
3
+ * Dedicated screen for reviewing and approving/editing a plan
4
+ */
5
+ import React from 'react';
6
+ import { Box, Text, useInput } from 'ink';
7
+ export const PlanReviewScreen = ({ plan, onApprove, onEdit }) => {
8
+ // Handle keyboard input
9
+ useInput((input, key) => {
10
+ if (key.return || input.toLowerCase() === 'y') {
11
+ onApprove();
12
+ }
13
+ else if (input.toLowerCase() === 'e' || input.toLowerCase() === 'n') {
14
+ onEdit();
15
+ }
16
+ });
17
+ return (React.createElement(Box, { flexDirection: "column", paddingX: 2, paddingY: 1 },
18
+ React.createElement(Box, { borderStyle: "double", borderColor: "#ffaa00", paddingX: 2, paddingY: 1, marginBottom: 1 },
19
+ React.createElement(Text, { color: "#ffaa00", bold: true }, "\uD83D\uDCCB PLAN REVIEW")),
20
+ React.createElement(Box, { marginBottom: 1 },
21
+ React.createElement(Text, { color: "#00ccff", bold: true }, plan.title)),
22
+ plan.summary && (React.createElement(Box, { marginBottom: 1 },
23
+ React.createElement(Text, { color: "#888888" }, plan.summary))),
24
+ React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#666666", paddingX: 1, paddingY: 1, marginBottom: 1 },
25
+ React.createElement(Text, { color: "#888888", dimColor: true }, "Tasks to execute:"),
26
+ React.createElement(Box, { flexDirection: "column", marginTop: 1 }, plan.steps.map((step, index) => {
27
+ const complexityColor = step.estimatedComplexity === 'high' ? '#ff6666' :
28
+ step.estimatedComplexity === 'medium' ? '#ffaa00' : '#00cc66';
29
+ const complexityLabel = step.estimatedComplexity ? ` [${step.estimatedComplexity}]` : '';
30
+ return (React.createElement(Box, { key: step.id },
31
+ React.createElement(Text, { color: "#888888" },
32
+ index + 1,
33
+ ". "),
34
+ React.createElement(Text, null, step.description),
35
+ step.estimatedComplexity && (React.createElement(Text, { color: complexityColor }, complexityLabel))));
36
+ }))),
37
+ React.createElement(Box, { marginTop: 1, flexDirection: "column" },
38
+ React.createElement(Box, null,
39
+ React.createElement(Text, { color: "#888888" }, "Press "),
40
+ React.createElement(Text, { color: "#00cc66", bold: true }, "Enter"),
41
+ React.createElement(Text, { color: "#888888" }, " or "),
42
+ React.createElement(Text, { color: "#00cc66", bold: true }, "Y"),
43
+ React.createElement(Text, { color: "#888888" }, " to proceed with plan")),
44
+ React.createElement(Box, null,
45
+ React.createElement(Text, { color: "#888888" }, "Press "),
46
+ React.createElement(Text, { color: "#ffaa00", bold: true }, "E"),
47
+ React.createElement(Text, { color: "#888888" }, " or "),
48
+ React.createElement(Text, { color: "#ffaa00", bold: true }, "N"),
49
+ React.createElement(Text, { color: "#888888" }, " to edit plan (provide feedback)")))));
50
+ };
51
+ export default PlanReviewScreen;
52
+ //# sourceMappingURL=PlanReviewScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlanReviewScreen.js","sourceRoot":"","sources":["../../../src/ui/components/PlanReviewScreen.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"StreamingMessageDisplay.d.ts","sourceRoot":"","sources":["../../../src/ui/components/StreamingMessageDisplay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,UAAU,4BAA4B;IACpC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAuHzE,CAAC"}
1
+ {"version":3,"file":"StreamingMessageDisplay.d.ts","sourceRoot":"","sources":["../../../src/ui/components/StreamingMessageDisplay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,UAAU,4BAA4B;IACpC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CA8HzE,CAAC"}
@@ -26,7 +26,7 @@ export const StreamingMessageDisplay = React.memo(({ message }) => {
26
26
  if (updateTimerRef.current) {
27
27
  clearTimeout(updateTimerRef.current);
28
28
  }
29
- // Throttle updates to every 100ms to reduce re-renders while keeping it responsive
29
+ // Throttle updates to every 50ms for more responsive streaming while preventing excessive re-renders
30
30
  updateTimerRef.current = setTimeout(() => {
31
31
  const fullContent = contentBufferRef.current;
32
32
  const lines = fullContent.split('\n');
@@ -41,7 +41,7 @@ export const StreamingMessageDisplay = React.memo(({ message }) => {
41
41
  // Show all content if within limit
42
42
  setDisplayContent(fullContent);
43
43
  }
44
- }, 100);
44
+ }, 50);
45
45
  return () => {
46
46
  if (updateTimerRef.current) {
47
47
  clearTimeout(updateTimerRef.current);
@@ -84,8 +84,8 @@ export const StreamingMessageDisplay = React.memo(({ message }) => {
84
84
  " second",
85
85
  message.thinkingDuration !== 1 ? 's' : '',
86
86
  " \u203A"))),
87
- React.createElement(Box, { borderStyle: "single", borderColor: "#00ccff", borderLeft: true, borderRight: false, borderTop: false, borderBottom: false, paddingLeft: 1 },
88
- React.createElement(MarkdownRenderer, { content: displayContent, maxWidth: 94 })),
89
- message.thoughts && message.thoughts.length > 0 && message.thinkingDuration === undefined && (React.createElement(Box, { flexDirection: "column", marginTop: 1, paddingLeft: 1 }, message.thoughts.map((line, idx) => (React.createElement(Text, { key: idx, dimColor: true }, line)))))));
87
+ (displayContent.trim() || (message.thoughts && message.thoughts.length > 0 && message.thinkingDuration === undefined)) && (React.createElement(Box, { borderStyle: "single", borderColor: "#00ccff", borderLeft: true, borderRight: false, borderTop: false, borderBottom: false, paddingLeft: 1, flexDirection: "column" },
88
+ displayContent.trim() && (React.createElement(MarkdownRenderer, { content: displayContent, maxWidth: (process.stdout.columns || 120) - 6 })),
89
+ message.thoughts && message.thoughts.length > 0 && message.thinkingDuration === undefined && (React.createElement(Box, { flexDirection: "column", marginTop: displayContent.trim() ? 1 : 0 }, message.thoughts.map((line, idx) => (React.createElement(Text, { key: idx, dimColor: true }, line)))))))));
90
90
  });
91
91
  //# sourceMappingURL=StreamingMessageDisplay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StreamingMessageDisplay.js","sourceRoot":"","sources":["../../../src/ui/components/StreamingMessageDisplay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAMzD;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAA2C,KAAK,CAAC,IAAI,CAAC,CAAC,EACzF,OAAO,EACR,EAAE,EAAE;IACH,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzD,MAAM,gBAAgB,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,cAAc,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAExC,SAAS,CAAC,GAAG,EAAE;QACb,0CAA0C;QAC1C,IAAI,YAAY,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,EAAE,CAAC;YACxC,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC;YAClC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YACtB,gBAAgB,CAAC,OAAO,GAAG,EAAE,CAAC;YAC9B,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC3B,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,gBAAgB,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAE3C,2BAA2B;QAC3B,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YAC3B,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;QAED,mFAAmF;QACnF,cAAc,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC;YAC7C,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEtC,iEAAiE;YACjE,MAAM,SAAS,GAAG,EAAE,CAAC;YAErB,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;gBAC7B,qCAAqC;gBACrC,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC/C,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,mCAAmC;gBACnC,iBAAiB,CAAC,WAAW,CAAC,CAAC;YACjC,CAAC;QACH,CAAC,EAAE,GAAG,CAAC,CAAC;QAER,OAAO,GAAG,EAAE;YACV,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC3B,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IAElC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,EAAE;QACpC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM,CAAC,CAAC,OAAO,SAAS,CAAC;YAC9B,KAAK,WAAW,CAAC,CAAC,OAAO,SAAS,CAAC;YACnC,KAAK,QAAQ,CAAC,CAAC,OAAO,SAAS,CAAC;YAChC,KAAK,MAAM,CAAC,CAAC,OAAO,SAAS,CAAC;YAC9B,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC;QAC5B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,EAAE;QACpC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM,CAAC,CAAC,OAAO,KAAK,CAAC;YAC1B,KAAK,WAAW,CAAC,CAAC,OAAO,WAAW,CAAC;YACrC,KAAK,QAAQ,CAAC,CAAC,OAAO,QAAQ,CAAC;YAC/B,KAAK,MAAM,CAAC,CAAC,OAAO,MAAM,CAAC;YAC3B,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC;QACvB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS;QACjC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,kBAAkB,EAAE;QAClD,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC;QACzC,oBAAC,GAAG,IAAC,YAAY,EAAE,CAAC;YAClB,oBAAC,IAAI,IAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI;gBAC1C,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC;oBACtB;YACN,SAAS,IAAI,CACZ,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,EAAC,QAAQ;;gBAAG,SAAS,CAAQ,CACnD,CACG;QAGL,OAAO,CAAC,gBAAgB,KAAK,SAAS,IAAI,OAAO,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAC1E,oBAAC,GAAG,IAAC,YAAY,EAAE,CAAC;YAClB,oBAAC,IAAI,IAAC,QAAQ;;gBAAc,OAAO,CAAC,gBAAgB;;gBAAS,OAAO,CAAC,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;0BAAU,CAC5G,CACP;QAGD,oBAAC,GAAG,IACF,WAAW,EAAC,QAAQ,EACpB,WAAW,EAAC,SAAS,EACrB,UAAU,EAAE,IAAI,EAChB,WAAW,EAAE,KAAK,EAClB,SAAS,EAAE,KAAK,EAChB,YAAY,EAAE,KAAK,EACnB,WAAW,EAAE,CAAC;YAEd,oBAAC,gBAAgB,IAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,GAAI,CACvD;QAGL,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS,IAAI,CAC5F,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,IACrD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CACnC,oBAAC,IAAI,IAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,UACrB,IAAI,CACA,CACR,CAAC,CACE,CACP,CACG,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"StreamingMessageDisplay.js","sourceRoot":"","sources":["../../../src/ui/components/StreamingMessageDisplay.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * TaskCompletedMessage Component
3
+ * Displays a task completion message in the chat with checkbox styling
4
+ */
5
+ import React from 'react';
6
+ interface TaskCompletedMessageProps {
7
+ taskNumber: number;
8
+ totalTasks: number;
9
+ taskDescription: string;
10
+ completionNote?: string;
11
+ }
12
+ export declare const TaskCompletedMessage: React.FC<TaskCompletedMessageProps>;
13
+ export default TaskCompletedMessage;
14
+ //# sourceMappingURL=TaskCompletedMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskCompletedMessage.d.ts","sourceRoot":"","sources":["../../../src/ui/components/TaskCompletedMessage.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,yBAAyB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA6BpE,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * TaskCompletedMessage Component
3
+ * Displays a task completion message in the chat with checkbox styling
4
+ */
5
+ import React from 'react';
6
+ import { Box, Text } from 'ink';
7
+ export const TaskCompletedMessage = ({ taskNumber, totalTasks, taskDescription, completionNote }) => {
8
+ return (React.createElement(Box, { flexDirection: "column", borderStyle: "round", borderColor: "#f59e0b", paddingX: 1, paddingY: 0, marginY: 0 },
9
+ React.createElement(Box, null,
10
+ React.createElement(Text, { color: "#f59e0b", bold: true }, "\u2713 "),
11
+ React.createElement(Text, { color: "#f59e0b", bold: true },
12
+ "Task ",
13
+ taskNumber,
14
+ " of ",
15
+ totalTasks,
16
+ " Completed")),
17
+ React.createElement(Box, { marginLeft: 2 },
18
+ React.createElement(Text, { color: "#888888" }, taskDescription)),
19
+ completionNote && (React.createElement(Box, { marginLeft: 2, marginTop: 0 },
20
+ React.createElement(Text, { color: "#666666", dimColor: true },
21
+ "Note: ",
22
+ completionNote)))));
23
+ };
24
+ export default TaskCompletedMessage;
25
+ //# sourceMappingURL=TaskCompletedMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskCompletedMessage.js","sourceRoot":"","sources":["../../../src/ui/components/TaskCompletedMessage.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAShC,MAAM,CAAC,MAAM,oBAAoB,GAAwC,CAAC,EACtE,UAAU,EACV,UAAU,EACV,eAAe,EACf,cAAc,EACjB,EAAE,EAAE;IACD,OAAO,CACH,oBAAC,GAAG,IACA,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,OAAO,EACnB,WAAW,EAAC,SAAS,EACrB,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,CAAC;QAEV,oBAAC,GAAG;YACA,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,EAAC,IAAI,oBAAU;YACpC,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,EAAC,IAAI;;gBAAO,UAAU;;gBAAM,UAAU;6BAAkB,CAC3E;QACN,oBAAC,GAAG,IAAC,UAAU,EAAE,CAAC;YACd,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,IAAE,eAAe,CAAQ,CAC5C;QACL,cAAc,IAAI,CACf,oBAAC,GAAG,IAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC;YAC5B,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,EAAC,QAAQ;;gBAAQ,cAAc,CAAQ,CAC1D,CACT,CACC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,oBAAoB,CAAC"}