chore(vendor): import pi 0.85.1
Imported as a linear vendor commit so forge rebases do not replay the upstream root tree. git-subtree-dir: third_party/pi git-subtree-split: d981de1229ef899957bbe968bc8dcda02a21f477
This commit is contained in:
12
third_party/pi/packages/ai/src/utils/text.ts
vendored
Normal file
12
third_party/pi/packages/ai/src/utils/text.ts
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
import type { ImageContent, TextContent, ThinkingContent, ToolCall } from "../types.ts";
|
||||
|
||||
type Content = TextContent | ImageContent | ThinkingContent | ToolCall;
|
||||
|
||||
/** Extract and join text from message content. */
|
||||
export function contentText(content: string | readonly Content[], separator = "\n"): string {
|
||||
if (typeof content === "string") return content;
|
||||
return content
|
||||
.filter((block) => block.type === "text")
|
||||
.map((block) => block.text)
|
||||
.join(separator);
|
||||
}
|
||||
Reference in New Issue
Block a user