|
16 | 16 | use Illuminate\Contracts\Support\Arrayable as IlluminateArrayable;
|
17 | 17 | use Illuminate\Foundation\Http\FormRequest;
|
18 | 18 |
|
| 19 | +use function array_merge; |
| 20 | +use function get_class; |
| 21 | +use function is_array; |
| 22 | +use function is_bool; |
| 23 | +use function is_numeric; |
| 24 | +use function is_object; |
| 25 | +use function is_string; |
| 26 | +use function method_exists; |
| 27 | + |
19 | 28 | trait Arrayable
|
20 | 29 | {
|
21 | 30 | protected function arrayMap(array $values, callable $callback): array
|
@@ -44,7 +53,7 @@ protected function arrayFlattenKeysMap(array $values, callable $callback): array
|
44 | 53 | return Arr::of($values)
|
45 | 54 | ->flattenKeys()
|
46 | 55 | ->filter(static fn ($value) => ! empty($value) || is_numeric($value) || is_bool($value))
|
47 |
| - ->map(fn (mixed $value, mixed $key) => $callback($key . '=' . $value)) |
| 56 | + ->map(static fn (mixed $value, mixed $key) => $callback($key . '=' . $value)) |
48 | 57 | ->toArray();
|
49 | 58 | }
|
50 | 59 |
|
@@ -72,10 +81,12 @@ protected function flattenKeys(mixed $array, string $delimiter = '.', ?string $p
|
72 | 81 | protected function toArray($value): array
|
73 | 82 | {
|
74 | 83 | return Arr::of(Arr::wrap($value))
|
75 |
| - ->map(fn ($value) => Instance::of($value, Carbon::class) ? $value->toIso8601String() : $value) |
76 |
| - ->map(fn ($value) => Instance::of($value, FormRequest::class) ? $value->validated() : $value) |
77 |
| - ->map(fn ($value) => Instance::of($value, BackedEnum::class) ? ($value->value ?? $value->name) : $value) |
78 |
| - ->map(fn ($value) => is_object($value) ? (Arr::resolve($value) ?: get_class($value)) : $value) |
| 84 | + ->map(static fn ($value) => Instance::of($value, Carbon::class) ? $value->toIso8601String() : $value) |
| 85 | + ->map(static fn ($value) => Instance::of($value, FormRequest::class) ? $value->validated() : $value) |
| 86 | + ->map( |
| 87 | + static fn ($value) => Instance::of($value, BackedEnum::class) ? ($value->value ?? $value->name) : $value |
| 88 | + ) |
| 89 | + ->map(static fn ($value) => is_object($value) ? (Arr::resolve($value) ?: get_class($value)) : $value) |
79 | 90 | ->resolve()
|
80 | 91 | ->toArray();
|
81 | 92 | }
|
|
0 commit comments