RefreshTokenDTO.php 640 B

12345678910111213141516171819202122232425262728293031323334
  1. <?php
  2. namespace App\DTO;
  3. use App\Http\Requests\RefreshTokenRequest;
  4. readonly class RefreshTokenDTO
  5. {
  6. public function __construct(
  7. public string $token,
  8. ) {
  9. }
  10. public static function fromRequest(RefreshTokenRequest $request): self
  11. {
  12. return new self(
  13. token: $request->validated(key: 'refresh_token'),
  14. );
  15. }
  16. public static function fromArray(array $data): self
  17. {
  18. return new self(
  19. token: $data['refresh_token'],
  20. );
  21. }
  22. public function toArray(): array
  23. {
  24. return [
  25. 'refresh_token' => $this->token,
  26. ];
  27. }
  28. }