• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

conedevelopment / root / 15084089635

17 May 2025 10:00AM UTC coverage: 77.93% (+0.04%) from 77.891%
15084089635

push

github

web-flow
Modernize back-end.yml (#240)

3291 of 4223 relevant lines covered (77.93%)

36.04 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

42.86
/src/Traits/ResolvesFilters.php
1
<?php
2

3
namespace Cone\Root\Traits;
4

5
use Closure;
6
use Cone\Root\Filters\Filter;
7
use Cone\Root\Filters\Filters;
8
use Illuminate\Http\Request;
9
use Illuminate\Support\Arr;
10

11
trait ResolvesFilters
12
{
13
    /**
14
     * The filters collection.
15
     */
16
    protected ?Filters $filters = null;
17

18
    /**
19
     * The filters resolver callback.
20
     */
21
    protected ?Closure $filtersResolver = null;
22

23
    /**
24
     * Define the filters for the object.
25
     */
26
    public function filters(Request $request): array
×
27
    {
28
        return [
×
29
            //
×
30
        ];
×
31
    }
32

33
    /**
34
     * Set the filters resolver callback.
35
     */
36
    public function withFilters(Closure $callback): static
×
37
    {
38
        $this->filtersResolver = $callback;
×
39

40
        return $this;
×
41
    }
42

43
    /**
44
     * Resolve the filters collection.
45
     */
46
    public function resolveFilters(Request $request): Filters
9✔
47
    {
48
        if (is_null($this->filters)) {
9✔
49
            $this->filters = new Filters($this->filters($request));
9✔
50

51
            $this->filters->when(! is_null($this->filtersResolver), function (Filters $filters) use ($request): void {
9✔
52
                $filters->register(
×
53
                    Arr::wrap(call_user_func_array($this->filtersResolver, [$request]))
×
54
                );
×
55
            });
9✔
56

57
            $this->filters->each(function (Filter $filter) use ($request): void {
9✔
58
                $this->resolveFilter($request, $filter);
7✔
59
            });
9✔
60
        }
61

62
        return $this->filters;
9✔
63
    }
64

65
    /**
66
     * Handle the callback for the filter resolution.
67
     */
68
    protected function resolveFilter(Request $request, Filter $filter): void
×
69
    {
70
        //
71
    }
×
72
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc