Skip to content

Commit

Permalink
use validation attributes
Browse files Browse the repository at this point in the history
  • Loading branch information
dcblogdev committed May 29, 2024
1 parent 2e9bd4d commit e4838a3
Showing 1 changed file with 7 additions and 29 deletions.
36 changes: 7 additions & 29 deletions app/Livewire/Admin/Users/Invite.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,51 +11,29 @@
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Str;
use Illuminate\Validation\ValidationException;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
use Livewire\WithPagination;

class Invite extends Component
{
use withPagination;

#[Rule('required', message: 'Please enter a name')]
public string $name = '';

#[Rule('required', as: 'email', message: 'Please enter an email address')]
#[Rule('email', message: 'The email must be a valid email address.')]
#[Rule('unique:users,email')]
public string $email = '';

/**
* @var array<int>
*/
#[Validate('required', 'min:1', as: 'role', message: 'Please select at least one role')]
public array $rolesSelected = [];

/**
* @var array<string, array<int, string>>
*/
protected array $rules = [
'name' => [
'required',
'string',
],
'email' => [
'required',
'string',
'email',
'unique:users,email',
],
'rolesSelected' => [
'required',
'min:1',
],
];

/**
* @var array<string, string>
*/
protected array $messages = [
'name.required' => 'Name is required',
'email.required' => 'Email is required',
'rolesSelected.required' => 'A role is required',
];

/**
* @throws ValidationException
*/
Expand Down

0 comments on commit e4838a3

Please sign in to comment.