['nullable', 'string', Rule::in(Payment::STATUSES)], 'payment_method' => ['nullable', 'string', Rule::in(Payment::PAYMENT_METHODS)], 'start_date' => ['nullable', 'date'], 'end_date' => ['nullable', 'date', 'after_or_equal:start_date'], 'search' => ['nullable', 'string', 'max:100'], 'sort_by' => ['nullable', 'string', 'in:created_at,paid_at,amount'], 'sort_dir' => ['nullable', 'string', 'in:asc,desc'], 'per_page' => ['nullable', 'integer', 'min:1'], ]; } }