Spracherkennung für: .ts vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
/**
* Helper functions for tool card rendering.
*/
import { PREVIEW_MAX_CHARS, PREVIEW_MAX_LINES } from "./constants.ts";
/**
* Format tool output content for display in the sidebar.
* Detects JSON and wraps it in a code block with formatting.
*/
export function formatToolOutputForSidebar(text: string): string {
const trimmed = text.trim();
// Try to detect and format JSON
if (trimmed.startsWith("{") || trimmed.startsWith("[")) {
try {
const parsed = JSON.parse(trimmed);
return "```json\n" + JSON.stringify(parsed, null, 2) + "\n```";
} catch {
// Not valid JSON, return as-is
}
}
return text;
}
/**
* Get a truncated preview of tool output text.
* Truncates to first N lines or first N characters, whichever is shorter.
*/
export function getTruncatedPreview(text: string): string {
const allLines = text.split("\n");
const lines = allLines.slice(0, PREVIEW_MAX_LINES);
const preview = lines.join("\n");
if (preview.length > PREVIEW_MAX_CHARS) {
return preview.slice(0, PREVIEW_MAX_CHARS) + "…";
}
return lines.length < allLines.length ? preview + "…" : preview;
}
¤ Dauer der Verarbeitung: 0.23 Sekunden
(vorverarbeitet am 2026-04-27)
¤
*© Formatika GbR, Deutschland