diff --git a/src/components/buttons/copy-to-clipboard-button.tsx b/src/components/buttons/copy-to-clipboard-button.tsx index 6607f92..2339272 100644 --- a/src/components/buttons/copy-to-clipboard-button.tsx +++ b/src/components/buttons/copy-to-clipboard-button.tsx @@ -6,13 +6,33 @@ interface CopyToClipboardButtonProps { generatedAnswer: string; } +/** + * check if the text has indented sections - return original text if not + * otherwise only copy the indented sections + */ +const checkForIndentedText = (text: string) => { + if (!text.includes("> ")) { + return text; + } + + const lines = text.split("\n"); + + const indentedLines = lines.filter((line) => line.startsWith("> ")); + const cleanedIndentedLines = indentedLines.map((line) => + line.replace("> ", "").replace(/\*\*/g, ""), + ); + + return cleanedIndentedLines.join("\n"); +}; + export const CopyToClipboardButton: React.FC = ({ generatedAnswer, }) => { const [isCopiedToClipboard, setIsCopiedToClipboard] = useState(false); const copyToClipboard = async () => { - await navigator.clipboard.writeText(generatedAnswer); + const filteredText = checkForIndentedText(generatedAnswer); + await navigator.clipboard.writeText(filteredText); setIsCopiedToClipboard(true); }; diff --git a/src/index.css b/src/index.css index cad035e..8d66629 100644 --- a/src/index.css +++ b/src/index.css @@ -70,7 +70,7 @@ } .markdown-container blockquote { - @apply w-[90%] ml-10 my-10; + @apply w-[90%] ml-5 my-5 py-5 pl-5 bg-ber-lighter-grey; } .markdown-container hr { diff --git a/src/system-prompts.ts b/src/system-prompts.ts index a6d0e58..68db08d 100644 --- a/src/system-prompts.ts +++ b/src/system-prompts.ts @@ -120,9 +120,12 @@ Sobald der Benutzer seine Bearbeitungswünsche geäußert hat, gehe wie folgt vo - **Ein Wort suchen:** Hilf dem Benutzer, bestimmte Wörter oder Ausdrücke im Text zu finden oder zu ersetzen. - **Einfache Sprache:** Vereinfache den Text für eine leichtere Verständlichkeit. -- Gebe den Entwurf IMMER als Markdown-Blockquote zurück. -- Beziehe dich dabei immer auf den zuletzt generierten Text und leite kurz den generierten Text ein. -Beispiel: "Hier ist der zusammengefasste Text: +- **Gebe den bearbeiteten Text IMMER und ausnahmslos in einer Markdown-Blockquote zurück.** Dies gilt unabhängig von der Art der Bearbeitung. +- Beginne immer mit einer kurzen Einleitung und stelle den bearbeiteten Text in einer Markdown-Blockquote dar. + +Beispiel: +Hier ist der zusammengefasste Text: +> Der Hauptinhalt des Textes lautet... Frage nach weiteren Wünschen, wenn nötig.