BaseDTO.php 440 B

123456789101112131415161718192021222324
  1. <?php
  2. namespace Knuckles\Camel;
  3. use Illuminate\Contracts\Support\Arrayable;
  4. use Spatie\DataTransferObject\DataTransferObject;
  5. class BaseDTO extends DataTransferObject implements Arrayable
  6. {
  7. /**
  8. * @param array|self $data
  9. *
  10. * @return static
  11. */
  12. public static function create($data): self
  13. {
  14. if ($data instanceof static) {
  15. return $data;
  16. }
  17. return new static($data);
  18. }
  19. }