37 lines
925 B
PHP
37 lines
925 B
PHP
<?php
|
|
|
|
namespace App\Livewire;
|
|
|
|
use Livewire\Component;
|
|
use Livewire\Attributes\On; // Import untuk atribut listener
|
|
use Illuminate\Support\Collection;
|
|
use Kreait\Firebase\Factory; // Pastikan ini di-import
|
|
|
|
class Tables extends Component
|
|
{
|
|
public Collection $tablesData;
|
|
|
|
public function mount()
|
|
{
|
|
// Inisialisasi awal data meja kosong atau dari cache jika ada
|
|
$this->tablesData = collect();
|
|
}
|
|
|
|
/**
|
|
* Listener Livewire untuk menerima update data meja dari sisi klien (Firebase JS).
|
|
*/
|
|
#[On('firebaseTablesUpdated')]
|
|
public function updateTablesData(array $data)
|
|
{
|
|
// Mengubah array data dari JS menjadi Collection
|
|
$this->tablesData = collect($data);
|
|
// Debugging (opsional)
|
|
// \Log::info('Livewire received tables update:', ['data' => $data]);
|
|
}
|
|
|
|
public function render()
|
|
{
|
|
return view('livewire.tables');
|
|
}
|
|
}
|