@php $currentUrl = url()->current(); $previousUrl = url()->previous(); $canvas_enabled = \App\Helpers\Classes\MarketplaceHelper::isRegistered('canvas') && (bool) setting('ai_chat_pro_canvas', 1); $is_chat_pro = \App\Helpers\Classes\MarketplaceHelper::isRegistered('ai-chat-pro') && (route('dashboard.user.openai.chat.pro.index') === $currentUrl || route('chat.pro') === $currentUrl || route('dashboard.user.openai.chat.pro.index') === $previousUrl || route('chat.pro') === $previousUrl); $messages = $chat?->messages ?? []; if ($canvas_enabled) { $messages = $chat?->messages()->with('tiptapContent')->get() ?? []; } $multi_model_message_pairs = []; // Group messages by shared_uuid if ($is_chat_pro) { foreach ($messages as $message) { if (isset($message->shared_uuid) && !empty($message->shared_uuid)) { $multi_model_message_pairs[$message->shared_uuid][] = $message; } } } @endphp @foreach ($messages ?? [] as $message) {{-- to prevent showing first 'Hi, ...' message on ai vision chat --}} @continue(isset($category) && ($category?->slug == 'ai_vision' || $category?->slug === 'ai_realtime_voice_chat') && count($chat?->messages) === 1) @php $is_multi_model_message = $is_chat_pro && isset($message->shared_uuid) && !empty($message->shared_uuid); @endphp @include('panel.user.openai_chat.components.chat_user_message') @if ($is_chat_pro) @if (!$is_multi_model_message) @include('panel.user.openai_chat.components.chat_ai_message') @else
{{ $output }}