29 lines
820 B
PHP
29 lines
820 B
PHP
<?php
|
|
|
|
namespace App\Data;
|
|
|
|
use App\Contracts\InputDataTransferObject;
|
|
use Illuminate\Foundation\Http\FormRequest;
|
|
|
|
final class RegisterDTO implements InputDataTransferObject
|
|
{
|
|
public function __construct(
|
|
public readonly string $name,
|
|
public readonly string $email,
|
|
public readonly string $mobileNumber,
|
|
public readonly string $password,
|
|
public readonly string $city,
|
|
) {}
|
|
|
|
public static function fromRequest(FormRequest $request): InputDataTransferObject
|
|
{
|
|
return new self(
|
|
name: $request->validated('name'),
|
|
email: $request->validated('email'),
|
|
mobileNumber: $request->validated('mobile_number'),
|
|
password: $request->validated('password'),
|
|
city: $request->validated('city')
|
|
);
|
|
}
|
|
}
|