public function scopeSearch(Builder $query, ?string $keyword, ?array $columns = null): Builder
    {
        return $this->setupWildcardQueryFilter($query, $keyword ?? '', $columns ?? $this->getSearchableColumns());
    }
public function scopeSearch(Builder $query, ?string $keyword, ?array $columns = null): Builder
    {
        return $this->setupWildcardQueryFilter($query, $keyword ?? '', $columns ?? $this->getSearchableColumns());
    }
public function scopeSearch ( Builder $ query , ? string $ keyword , ? array $ columns = null ) : Builder { return $ this -> setupWildcardQueryFilter ( $ query , $ keyword ?? '' , $ columns ?? $ this -> getSearchableColumns ( ) ) ; }
Search based on keyword.

@param \Illuminate\Database\Eloquent\Builder  $query
@param string|null. $keyword
@param array|null  $columns

@return \Illuminate\Database\Eloquent\Builder
Search based on keyword .