@php
$isSameAsNext = ($message?->sendable_id === $nextMessage?->sendable_id) && ($message?->sendable_type === $nextMessage?->sendable_type);
$isNotSameAsNext = !$isSameAsNext;
$isSameAsPrevious = ($message?->sendable_id === $previousMessage?->sendable_id) && ($message?->sendable_type === $previousMessage?->sendable_type);
$isNotSameAsPrevious = !$isSameAsPrevious;
@endphp
@php
$isQr = str_starts_with($attachment?->mime_type ?? '', 'image/svg');
$appUrl = rtrim(config('app.url'), '/');
$msgBody = trim($message?->body ?? '');
$transactionLinkPattern = '#^' . preg_quote($appUrl, '#') . '/[a-z]{2}/[a-z\-]+/(\d+)$#';
$isTransactionBody = $isQr && preg_match($transactionLinkPattern, $msgBody, $qrMatches);
$transactionLinkId = $isTransactionBody ? $qrMatches[1] : null;
$attachmentUrl = $attachment ? route('wirechat.attachment.serve', $attachment) : null;
@endphp
@if ($isQr)
($isSameAsNext && $isNotSameAsPrevious && $belongsToAuth),
'rounded-r-md' => ($isSameAsPrevious && $belongsToAuth),
'rounded-br-xl rounded-r-xl' => ($isNotSameAsPrevious && $isNotSameAsNext && $belongsToAuth),
'rounded-br-2xl' => ($isNotSameAsNext && $belongsToAuth),
'rounded-bl-md rounded-tl-2xl' => ($isSameAsNext && $isNotSameAsPrevious && !$belongsToAuth),
'rounded-l-md' => ($isSameAsPrevious && !$belongsToAuth),
'rounded-bl-xl rounded-l-xl' => ($isNotSameAsPrevious && $isNotSameAsNext && !$belongsToAuth),
'rounded-bl-2xl' => ($isNotSameAsNext && !$belongsToAuth),
])>
@else
![]()
($isSameAsNext && $isNotSameAsPrevious && $belongsToAuth),
'rounded-r-md' => ($isSameAsPrevious && $belongsToAuth),
'rounded-br-xl rounded-r-xl' => ($isNotSameAsPrevious && $isNotSameAsNext && $belongsToAuth),
'rounded-br-2xl' => ($isNotSameAsNext && $belongsToAuth),
'rounded-bl-md rounded-tl-2xl' => ($isSameAsNext && $isNotSameAsPrevious && !$belongsToAuth),
'rounded-l-md' => ($isSameAsPrevious && !$belongsToAuth),
'rounded-bl-xl rounded-l-xl' => ($isNotSameAsPrevious && $isNotSameAsNext && !$belongsToAuth),
'rounded-bl-2xl' => ($isNotSameAsNext && !$belongsToAuth),
])
loading="lazy" src="{{ $attachmentUrl }}" alt="{{ __('wirechat::chat.labels.attachment') }}"
@click="open = true">
@endif
{{-- Fullscreen lightbox --}}
@if ($isQr)

@else

@endif