amount_g] public function toggleFilament($filamentId) { if (isset($this->selectedFilaments[$filamentId])) { unset($this->selectedFilaments[$filamentId]); } else { $this->selectedFilaments[$filamentId] = 0; } } public function render() { $filaments = Filament::query() ->where(function ($query) { $query->when($this->search_type, function ($query) { $query->whereHas('type', function ($q) { $q->where('name', $this->search_type); }); }) ->when($this->search_manufacturer, function ($query) { $query->whereHas('manufacturer', function ($q) { $q->where('name', 'like', '%' . $this->search_manufacturer . '%'); }); }) ->when($this->search_name, function ($query) { $query->where('name', 'like', '%' . $this->search_name . '%'); }) ->when($this->search_color, function ($query) { $query->whereHas('color', function ($q) { $q->where('name', 'like', '%' . $this->search_color . '%'); }); }); }) ->orWhereIn('id', array_keys($this->selectedFilaments)) ->with(['type', 'manufacturer', 'color']) ->get(); return view('livewire.calculator', [ 'presets' => \App\Models\Calculationpreset::all(), 'calculationpreset' => \App\Models\Calculationpreset::find($this->selection), 'filaments' => $filaments, 'filamenttypes' => FilamentType::all(), ]); } }