list([ 'q' => $request->string('q')->toString(), 'per_page' => $request->integer('per_page', 20), 'sort' => $request->string('sort')->toString() ?: 'title_asc', 'genre' => $request->string('genre')->toString(), 'rating' => $request->string('rating')->toString(), 'year_min' => $request->has('year_min') ? $request->integer('year_min') : null, 'year_max' => $request->has('year_max') ? $request->integer('year_max') : null, 'actor' => $request->string('actor')->toString(), 'director' => $request->string('director')->toString(), 'studio' => $request->string('studio')->toString(), ]); return response()->json($paginator); } }