MCPcopy Index your code
hub / github.com/AnswerOverflow/AnswerOverflow / MessageContents

Function MessageContents

packages/ui/src/message/Message.tsx:50–83  ·  view source on GitHub ↗
(
	props: Pick<MessageProps, 'collapseContent' | 'message'> & {
		className?: string;
	},
)

Source from the content-addressed store, hash-verified

48const DEFAULT_COLLAPSE_CONTENT_LENGTH = 500;
49
50export const MessageContents = async (
51 props: Pick<MessageProps, 'collapseContent' | 'message'> & {
52 className?: string;
53 },
54) => {
55 const { message, collapseContent } = props;
56
57 const collapseBy =
58 typeof collapseContent === 'number'
59 ? collapseContent
60 : DEFAULT_COLLAPSE_CONTENT_LENGTH;
61
62 const shouldCollapse =
63 collapseContent !== false &&
64 collapseContent !== undefined &&
65 (message.content.length > collapseBy ||
66 (message.content.match(/\n/g)?.length ?? 0 > 5));
67 const trimmedText = shouldCollapse
68 ? (message.content.match(/\n/g)?.length ?? 0 > 5)
69 ? message.content.split('\n').slice(0, 5).join('\n') + '...'
70 : `${message.content.slice(0, collapseBy).trim()}...`
71 : message.content;
72 const discordMarkdownAsHTML = await parse(trimmedText);
73 return (
74 <div
75 className={cn(
76 'max-w-4xl whitespace-break-spaces pt-2 font-body text-primary [overflow-wrap:_anywhere]',
77 props.className,
78 )}
79 >
80 {discordMarkdownAsHTML}
81 </div>
82 );
83};
84
85export const MessageEmbeds = (props: { message: MessageProps['message'] }) => {
86 if (props.message.embeds?.length === 0) return null;

Callers

nothing calls this directly

Calls 2

cnFunction · 0.90
parseFunction · 0.85

Tested by

no test coverage detected