(progressMessages: ProgressMessage<Progress>[], {
tools,
verbose
}: {
tools: Tools;
verbose: boolean;
})
| 60 | return displayName; |
| 61 | } |
| 62 | export function renderToolUseProgressMessage(progressMessages: ProgressMessage<Progress>[], { |
| 63 | tools, |
| 64 | verbose |
| 65 | }: { |
| 66 | tools: Tools; |
| 67 | verbose: boolean; |
| 68 | }): React.ReactNode { |
| 69 | if (!progressMessages.length) { |
| 70 | return <MessageResponse height={1}> |
| 71 | <Text dimColor>{INITIALIZING_TEXT}</Text> |
| 72 | </MessageResponse>; |
| 73 | } |
| 74 | |
| 75 | // Take only the last few messages for display in non-verbose mode |
| 76 | const displayedMessages = verbose ? progressMessages : progressMessages.slice(-MAX_PROGRESS_MESSAGES_TO_SHOW); |
| 77 | const hiddenCount = progressMessages.length - displayedMessages.length; |
| 78 | const { |
| 79 | inProgressToolUseIDs |
| 80 | } = buildSubagentLookups(progressMessages.map(pm => pm.data)); |
| 81 | return <MessageResponse> |
| 82 | <Box flexDirection="column"> |
| 83 | <SubAgentProvider> |
| 84 | {displayedMessages.map(progressMessage => <Box key={progressMessage.uuid} height={1} overflow="hidden"> |
| 85 | <MessageComponent message={progressMessage.data.message} lookups={EMPTY_LOOKUPS} addMargin={false} tools={tools} commands={[]} verbose={verbose} inProgressToolUseIDs={inProgressToolUseIDs} progressMessagesForMessage={[]} shouldAnimate={false} shouldShowDot={false} style="condensed" isTranscriptMode={false} isStatic={true} /> |
| 86 | </Box>)} |
| 87 | </SubAgentProvider> |
| 88 | {hiddenCount > 0 && <Text dimColor> |
| 89 | +{hiddenCount} more tool {plural(hiddenCount, 'use')} |
| 90 | </Text>} |
| 91 | </Box> |
| 92 | </MessageResponse>; |
| 93 | } |
| 94 | export function renderToolUseRejectedMessage(_input: Input, { |
| 95 | progressMessagesForMessage, |
| 96 | tools, |
no test coverage detected