From 80d8faccbd61238e97e6fe26e288693514f06dee Mon Sep 17 00:00:00 2001 From: Mufeed VH Date: Mon, 23 Jun 2025 00:30:45 +0530 Subject: [PATCH] feat(stream): add link detection to message output - Add onLinkDetected callback prop - Integrate with URL detection system - Support enhanced message types from upstream Enables automatic detection of URLs in Claude's responses and terminal command outputs. --- src/components/StreamMessage.tsx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/StreamMessage.tsx b/src/components/StreamMessage.tsx index 7eb048a..1ea77bb 100644 --- a/src/components/StreamMessage.tsx +++ b/src/components/StreamMessage.tsx @@ -42,12 +42,13 @@ interface StreamMessageProps { message: ClaudeStreamMessage | EnhancedMessage; className?: string; streamMessages: (ClaudeStreamMessage | EnhancedMessage)[]; + onLinkDetected?: (url: string) => void; } /** * Component to render a single Claude Code stream message */ -export const StreamMessage: React.FC = ({ message, className, streamMessages }) => { +const StreamMessageComponent: React.FC = ({ message, className, streamMessages, onLinkDetected }) => { try { // Skip rendering for meta messages that don't have meaningful content if (message.isMeta && !message.leafUuid && !message.summary) { @@ -284,7 +285,7 @@ export const StreamMessage: React.FC = ({ message, className const stdoutMatch = contentStr.match(/([\s\S]*?)<\/local-command-stdout>/); if (stdoutMatch) { const [, output] = stdoutMatch; - return ; + return ; } // Otherwise render as plain text @@ -631,4 +632,6 @@ export const StreamMessage: React.FC = ({ message, className ); } -}; \ No newline at end of file +}; + +export const StreamMessage = React.memo(StreamMessageComponent); \ No newline at end of file