select('id', 'name', 'code') ->orderBy('name') ->when( $request->search, fn (Builder $query) => $query ->where('name', 'ilike', "%{$request->search}%") ->orWhere('code', 'ilike', "%{$request->search}%"), ) ->when( $request->exists('selected'), fn (Builder $query) => $query ->whereIn('code', $request->input('selected', [])) ->orWhereIn('id', $request->input('selected', [])), fn (Builder $query) => $query->limit(10), ) ->get() ->map(function (Country $country) { $country->flag = asset('vendor/blade-country-flags/4x3-'.$country->code.'.svg'); return $country; }); } #[ExcludeRouteFromDocs] public function store(Request $request) { // } #[ExcludeRouteFromDocs] public function show(Country $country) { // } #[ExcludeRouteFromDocs] public function update(Request $request, Country $country) { // } #[ExcludeRouteFromDocs] public function destroy(Country $country) { // } }