Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
Signed-off-by: Mior Muhammad Zaki <crynobone@gmail.com>
  • Loading branch information
crynobone committed Dec 10, 2021
1 parent ea85f92 commit 94cbf67
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 30 deletions.
7 changes: 0 additions & 7 deletions phpstan-baseline.neon
Original file line number Diff line number Diff line change
@@ -1,7 +0,0 @@
parameters:
ignoreErrors:
-
message: "#^Cannot use array destructuring on Illuminate\\\\Support\\\\Collection\\<\\(int\\|string\\), mixed\\>&iterable\\<Illuminate\\\\Support\\\\Collection\\<\\(int\\|string\\), mixed\\>\\>\\.$#"
count: 1
path: src/Searchable.php

8 changes: 4 additions & 4 deletions src/Searchable.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,14 @@ class Searchable
/**
* Search columns.
*
* @var array
* @var array<int, string|\Laravie\QueryFilter\Contracts\Filter\Filter>
*/
protected $fields = [];

/**
* Construct a new Search Query.
*
* @param array<int, string|\Laravie\QueryFilter\Contracts\Filter> $fields
*
* @param array<int, string|\Laravie\QueryFilter\Contracts\Filter\Filter> $fields
*/
public function __construct(?string $keyword, array $fields = [])
{
Expand Down Expand Up @@ -68,7 +68,7 @@ public function apply($query)
$likeOperator = like_operator(connection_type($query));

/**
* @var \Illuminate\Support\Collection<int, \Laravie\QueryFilter\Contracts\Filter> $filters
* @var \Illuminate\Support\Collection<int, \Laravie\QueryFilter\Contracts\Filter\Filter> $filters
* @var \Illuminate\Support\Collection<int, string> $fields
*/
[$filters, $fields] = Collection::make($this->fields)->partition(static function ($field) {
Expand Down
27 changes: 13 additions & 14 deletions src/Taxonomy.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ class Taxonomy
/**
* Taxonomy columns.
*
* @var array<int, string|\Laravie\QueryFilter\Contracts\Filter>
* @var array<int, string|\Laravie\QueryFilter\Contracts\Filter\Filter>
*/
protected $fields = [];

Expand All @@ -33,9 +33,9 @@ class Taxonomy

/**
* Construct a new Matches Query.
*
*
* @param array<string, \Closure|callable> $rules
* @param array<int, string|\Laravie\QueryFilter\Contracts\Filter> $fields
* @param array<int, string|\Laravie\QueryFilter\Contracts\Filter\Filter> $fields
*/
public function __construct(?string $terms, array $rules = [], array $fields = [])
{
Expand Down Expand Up @@ -67,17 +67,16 @@ public function apply($query)
*/
protected function matchBasicConditions($query): void
{
(new Searchable(
$this->terms->basic(), $this->fields
))
->wildcardCharacter($this->wildcardCharacter)
->tap(function (Searchable $searchable) {
if (($this->wildcardSearching ?? true) === true) {
$searchable->allowWildcardSearching();
} else {
$searchable->noWildcardSearching();
}
})->apply($query);
$searchable = (new Searchable($this->terms->basic(), $this->fields))
->wildcardCharacter($this->wildcardCharacter);

if (($this->wildcardSearching ?? true) === true) {
$searchable->allowWildcardSearching();
} else {
$searchable->noWildcardSearching();
}

$searchable->apply($query);
}

/**
Expand Down
10 changes: 5 additions & 5 deletions src/Terms.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ class Terms implements Countable

/**
* Construct a new Condition value object.
*
*
* @param array<int, string> $tagged
*/
public function __construct(string $basic, array $tagged)
Expand All @@ -37,7 +37,7 @@ public function __construct(string $basic, array $tagged)
* Parse rules from keyword.
*
* @param array<int, string> $rules
*
*
* @return static
*/
public static function parse(string $term, array $rules)
Expand Down Expand Up @@ -78,8 +78,8 @@ public function basic(): string

/**
* Get tagged conditions.
*
* @return array<int, string>
*
* @return array<int, string>
*/
public function tagged(): array
{
Expand Down Expand Up @@ -121,7 +121,7 @@ public function where(string $term)
}

if ($type === '*') {
[, $value] = explode(':', $results[0] ?? null, 2);
[, $value] = explode(':', $results[0] ?? '', 2);

return trim($value, '"');
}
Expand Down

0 comments on commit 94cbf67

Please sign in to comment.