52 lines
2.5 KiB
PHP
52 lines
2.5 KiB
PHP
<div>
|
|
<div class="bg-white shadow rounded-lg p-6">
|
|
<!-- Email Address Display -->
|
|
<div class="mb-6">
|
|
<h2 class="text-2xl font-bold mb-2">Your Disposable Email</h2>
|
|
<div class="flex items-center space-x-4">
|
|
<input type="text" value="{{ $currentEmail }}" readonly class="flex-1 p-2 border rounded bg-gray-50" />
|
|
<button wire:click="generateNewEmail" class="bg-blue-500 text-white px-4 py-2 rounded hover:bg-blue-600">
|
|
Generate New
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Messages List -->
|
|
<div class="space-y-4">
|
|
@if(count($messages) > 0)
|
|
@foreach($messages as $message)
|
|
<div class="border rounded p-4 hover:bg-gray-50 cursor-pointer {{ $selectedMessage === $message->id ? 'bg-blue-50' : '' }}"
|
|
wire:click="selectMessage({{ $message->id }})">
|
|
<div class="flex justify-between items-start">
|
|
<div>
|
|
<h3 class="font-semibold">{{ $message->subject }}</h3>
|
|
<p class="text-sm text-gray-600">From: {{ $message->from }}</p>
|
|
<p class="text-sm text-gray-500">{{ $message->date }}</p>
|
|
</div>
|
|
<button wire:click.stop="deleteMessage({{ $message->id }})"
|
|
class="text-red-500 hover:text-red-700">
|
|
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16" />
|
|
</svg>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
@endforeach
|
|
@else
|
|
<div class="text-center py-8 text-gray-500">
|
|
No messages yet. They will appear here automatically.
|
|
</div>
|
|
@endif
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Auto-refresh script -->
|
|
<script>
|
|
document.addEventListener('livewire:load', function () {
|
|
setInterval(() => {
|
|
@this.loadMessages()
|
|
}, {{ $this->getPollingInterval() }});
|
|
});
|
|
</script>
|
|
</div>
|