get('search'); $countries = Country::query() ->select('id', 'name', 'code') ->orderBy('name') ->when( $search, fn (Builder $query) => $query ->where('name', 'ilike', "%{$search}%") ->orWhere('code', 'ilike', "%{$search}%"), ) ->limit(10) ->get() ->map(function (Country $country) { $country->flag = asset('vendor/blade-country-flags/4x3-'.$country->code.'.svg'); return $country; }); return Response::json($countries->values()); } /** * @return array */ public function schema(JsonSchema $schema): array { return [ 'search' => $schema->string()->description('Suche in Name oder Code (Ländercode).'), ]; } }