diff --git a/src/Engines/TypesenseSearchEngine.php b/src/Engines/TypesenseSearchEngine.php index ebd2637..8ce0c83 100644 --- a/src/Engines/TypesenseSearchEngine.php +++ b/src/Engines/TypesenseSearchEngine.php @@ -132,17 +132,17 @@ public function paginate(Builder $builder, $perPage, $page): mixed /** * @param \Laravel\Scout\Builder $builder * @param int $page - * @param int $perPage + * @param int|null $perPage * * @return array */ - private function buildSearchParams(Builder $builder, int $page, int $perPage): array + private function buildSearchParams(Builder $builder, int $page, ?int $perPage): array { $params = [ 'q' => $builder->query, 'query_by' => implode(',', $builder->model->typesenseQueryBy()), 'filter_by' => $this->filters($builder), - 'per_page' => $perPage, + 'per_page' => $perPage ?? 10, 'page' => $page, 'highlight_start_tag' => $this->startTag, 'highlight_end_tag' => $this->endTag, @@ -223,7 +223,7 @@ protected function performSearch(Builder $builder, array $options = []): mixed $documents = $this->typesense->getCollectionIndex($builder->model) ->getDocuments(); if ($builder->callback) { - return call_user_func($builder->callback, $documents, $builder->query, $options); + return call_user_func($builder->callback, $builder, $documents, $builder->query, $options); } return $documents->search($options);