<?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');
    }
}
