10
10
trait WithColumnSelect
11
11
{
12
12
public bool $ columnSelect = false ;
13
- public array $ columnSelectExcluded = [];
14
13
public array $ columnSelectEnabled = [];
15
14
16
15
public function mountWithColumnSelect (): void
@@ -22,7 +21,7 @@ public function mountWithColumnSelect(): void
22
21
23
22
// Get a list of visible default columns that are not excluded
24
23
$ columns = collect ($ this ->columns ())
25
- ->filter (fn ($ column ) => $ column ->isVisible () && ! $ this -> isColumnSelectExcluded ( $ column ))
24
+ ->filter (fn ($ column ) => $ column ->isVisible () && $ column -> isSelectable ( ))
26
25
->map (fn ($ column ) => $ column ->column ())
27
26
->values ()
28
27
->toArray ();
@@ -31,9 +30,10 @@ public function mountWithColumnSelect(): void
31
30
$ this ->columnSelectEnabled = session ()->get ($ this ->tableName .'-columnSelectEnabled ' , $ columns );
32
31
33
32
// Check to see if there are any excluded that are already stored in the enabled and remove them
34
- foreach ($ this ->columnSelectExcluded as $ column ) {
35
- if (! in_array ($ column , $ this ->columnSelectEnabled , true )) {
36
- session ([$ this ->tableName .'-columnSelectEnabled ' => $ this ->columnSelectEnabled [] = $ column ]);
33
+ foreach ($ this ->columns () as $ column ) {
34
+ if (! $ column ->isSelectable () && ! in_array ($ column ->column (), $ this ->columnSelectEnabled , true )) {
35
+ $ this ->columnSelectEnabled [] = $ column ->column ();
36
+ session ([$ this ->tableName .'-columnSelectEnabled ' => $ this ->columnSelectEnabled ]);
37
37
}
38
38
}
39
39
}
@@ -47,9 +47,4 @@ public function isColumnSelectEnabled($column): bool
47
47
{
48
48
return in_array ($ column instanceof Column ? $ column ->column () : $ column , $ this ->columnSelectEnabled , true );
49
49
}
50
-
51
- public function isColumnSelectExcluded ($ column ): bool
52
- {
53
- return in_array ($ column instanceof Column ? $ column ->column () : $ column , $ this ->columnSelectExcluded , true );
54
- }
55
50
}
0 commit comments