mirror of
https://github.com/archtechx/airwire-demo.git
synced 2025-12-12 08:34:03 +00:00
public release
This commit is contained in:
commit
d6d22f8355
115 changed files with 67218 additions and 0 deletions
46
app/Airwire/CreateUser.php
Normal file
46
app/Airwire/CreateUser.php
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
<?php
|
||||
|
||||
namespace App\Airwire;
|
||||
|
||||
use Airwire\Attributes\Wired;
|
||||
use Airwire\Component;
|
||||
use App\Models\User;
|
||||
use Exception;
|
||||
|
||||
class CreateUser extends Component
|
||||
{
|
||||
public bool $strictValidation = false;
|
||||
|
||||
#[Wired]
|
||||
public string $name = '';
|
||||
|
||||
#[Wired]
|
||||
public string $email = '';
|
||||
|
||||
#[Wired]
|
||||
public string $password = '';
|
||||
|
||||
#[Wired]
|
||||
public string $password_confirmation = '';
|
||||
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'name' => ['required', 'min:5', 'max:25', 'unique:users'],
|
||||
'email' => ['required', 'unique:users'],
|
||||
'password' => ['required', 'min:8', 'confirmed'],
|
||||
];
|
||||
}
|
||||
|
||||
#[Wired]
|
||||
public function create(): User
|
||||
{
|
||||
$user = User::create($this->validated());
|
||||
|
||||
$this->meta('notification', __('users.created', ['id' => $user->id, 'name' => $user->name]));
|
||||
|
||||
$this->reset();
|
||||
|
||||
return $user;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue