8
8
9
9
class ApiResourceDataTable extends CollectionDataTable
10
10
{
11
- /**
12
- * Collection object.
13
- *
14
- * @var \Illuminate\Http\Resources\Json\AnonymousResourceCollection
15
- */
16
- public $ collection ;
17
-
18
- /**
19
- * Collection object.
20
- *
21
- * @var \Illuminate\Http\Resources\Json\AnonymousResourceCollection
22
- */
23
- public $ original ;
24
-
25
11
/**
26
12
* Can the DataTable engine be created with these parameters.
27
13
*
@@ -36,7 +22,7 @@ public static function canCreate($source)
36
22
/**
37
23
* Factory method, create and return an instance for the DataTable engine.
38
24
*
39
- * @param \Illuminate\Http\Resources\Json\AnonymousResourceCollection $source
25
+ * @param \Illuminate\Http\Resources\Json\AnonymousResourceCollection<array-key, array>|array $source
40
26
* @return ApiResourceDataTable|DataTableAbstract
41
27
*/
42
28
public static function create ($ source )
@@ -47,17 +33,14 @@ public static function create($source)
47
33
/**
48
34
* CollectionEngine constructor.
49
35
*
50
- * @param \Illuminate\Http\Resources\Json\AnonymousResourceCollection $collection
36
+ * @param \Illuminate\Http\Resources\Json\AnonymousResourceCollection<array-key, array> $collection
51
37
*/
52
38
public function __construct (AnonymousResourceCollection $ collection )
53
39
{
54
40
$ this ->request = app ('datatables.request ' );
55
41
$ this ->config = app ('datatables.config ' );
56
- $ this ->collection = collect ($ collection ->toArray ($ this ->request ));
57
- $ this ->original = $ collection ;
58
- $ this ->columns = array_keys ($ this ->serialize (collect ($ collection ->toArray ($ this ->request ))->first ()));
59
- if ($ collection ->resource instanceof LengthAwarePaginator) {
60
- $ this ->isFilterApplied = true ;
61
- }
42
+ $ this ->collection = collect ($ collection );
43
+ $ this ->original = collect ($ collection );
44
+ $ this ->columns = array_keys ($ this ->serialize (collect ($ collection )->first ()));
62
45
}
63
- }
46
+ }
0 commit comments