Something went wrong. Try again.
source dump of claude code forked from oppi.li/claude-code
Something went wrong. Try again.
1.1 kB · 40 lines
TypeScript
at main
1234567891011121314151617181920212223242526272829303132333435363738394041import type { AssistantMessage, AttachmentMessage, SystemMessage, UserMessage,} from 'src/types/message.js'
/** * Tags user messages with a sourceToolUseID so they stay transient until the tool resolves. * This prevents the "is running" message from being duplicated in the UI. */export function tagMessagesWithToolUseID( messages: (UserMessage | AttachmentMessage | SystemMessage)[], toolUseID: string | undefined,): (UserMessage | AttachmentMessage | SystemMessage)[] { if (!toolUseID) { return messages } return messages.map(m => { if (m.type === 'user') { return { ...m, sourceToolUseID: toolUseID } } return m })}
/** * Extracts the tool use ID from a parent message for a given tool name. */export function getToolUseIDFromParentMessage( parentMessage: AssistantMessage, toolName: string,): string | undefined { const toolUseBlock = parentMessage.message.content.find( block => block.type === 'tool_use' && block.name === toolName, ) return toolUseBlock && toolUseBlock.type === 'tool_use' ? toolUseBlock.id : undefined}