import { useCallback } from 'react';
import type { LinkProps } from 'next/link';
import { useTranslation } from 'react-i18next';
import ReactMarkdown from 'react-markdown';
import { NextLink } from '~/components/ReactMarkdownComponents/NextLink';
import { useRagSearchModal } from '../../../client/stores/rag-search';
import styles from './MessageCard.module.scss';
const moduleClass = styles['message-card'] ?? '';
const userMessageCardModuleClass = styles['user-message-card'] ?? '';
const UserMessageCard = ({ children }: { children: string }): JSX.Element => (
);
const assistantMessageCardModuleClass = styles['assistant-message-card'] ?? '';
const NextLinkWrapper = (props: LinkProps & {children: string, href: string}): JSX.Element => {
const { close: closeRagSearchModal } = useRagSearchModal();
const onClick = useCallback(() => {
closeRagSearchModal();
}, [closeRagSearchModal]);
return (
{props.children}
);
};
const AssistantMessageCard = ({ children }: { children: string }): JSX.Element => {
const { t } = useTranslation();
return (
growi_ai
{ children.length > 0
? (
{children}
)
: (
{t('modal_aichat.progress_label')} more_horiz
)
}
);
};
type Props = {
role: 'user' | 'assistant',
children: string,
}
export const MessageCard = (props: Props): JSX.Element => {
const { role, children } = props;
return role === 'user'
? {children}
: {children};
};