| Code Coverage | ||||||||||
| Lines | Functions and Methods | Classes and Traits | ||||||||
| Total |  | 0.00% | 0 / 5 |  | 0.00% | 0 / 1 | CRAP |  | 0.00% | 0 / 1 | 
| LaravelUserDecoratorFactory |  | 0.00% | 0 / 5 |  | 0.00% | 0 / 1 | 12 |  | 0.00% | 0 / 1 | 
| create |  | 0.00% | 0 / 5 |  | 0.00% | 0 / 1 | 12 | |||
| 1 | <?php | 
| 2 | |
| 3 | namespace Apie\LaravelApie\Wrappers\Security; | 
| 4 | |
| 5 | use Apie\Core\Entities\EntityInterface; | 
| 6 | use Apie\Core\Permissions\PermissionInterface; | 
| 7 | use Illuminate\Contracts\Auth\Authenticatable; | 
| 8 | |
| 9 | class LaravelUserDecoratorFactory | 
| 10 | { | 
| 11 | public function create(Authenticatable $user): LaravelUserDecorator|EntityInterface | 
| 12 | { | 
| 13 | if ($user instanceof EntityInterface) { | 
| 14 | return $user; | 
| 15 | } | 
| 16 | if ($user instanceof PermissionInterface) { | 
| 17 | return new LaravelUserWithPermissionDecorator($user); | 
| 18 | } | 
| 19 | return new LaravelUserDecorator($user); | 
| 20 | } | 
| 21 | } |