cre-sync/components/control-center/UserMessageBubble.tsx
BusyBee3333 4e6467ffb0 Add CRESync CRM application with Setup page
- Build complete Next.js CRM for commercial real estate
- Add authentication with JWT sessions and role-based access
- Add GoHighLevel API integration for contacts, conversations, opportunities
- Add AI-powered Control Center with tool calling
- Add Setup page with onboarding checklist (/setup)
- Add sidebar navigation with Setup menu item
- Fix type errors in onboarding API, GHL services, and control center tools
- Add Prisma schema with SQLite for local development
- Add UI components with clay morphism design system

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 17:30:55 -05:00

43 lines
1.1 KiB
TypeScript

'use client';
import React from 'react';
import type { ControlCenterMessage } from '@/types/control-center';
import { cn } from '@/lib/utils';
interface UserMessageBubbleProps {
message: ControlCenterMessage;
}
export const UserMessageBubble: React.FC<UserMessageBubbleProps> = ({
message,
}) => {
return (
<div className="flex justify-end">
<div className="max-w-[75%] space-y-1">
{/* Message Bubble */}
<div
className={cn(
'bg-indigo-600 text-white rounded-2xl rounded-tr-md px-4 py-3',
'shadow-[6px_6px_12px_rgba(79,70,229,0.25),-4px_-4px_8px_rgba(255,255,255,0.15)]',
'transition-all duration-300'
)}
>
<p className="text-sm leading-relaxed whitespace-pre-wrap">
{message.content}
</p>
</div>
{/* Timestamp */}
<div className="text-xs text-gray-400 text-right px-1">
{new Date(message.createdAt).toLocaleTimeString([], {
hour: '2-digit',
minute: '2-digit',
})}
</div>
</div>
</div>
);
};
export default UserMessageBubble;