|string> */ public function rules(): array { $userId = $this->route('user'); // Get user ID from route (used in update) return [ 'name' => ['required', 'string', 'max:255'], 'email' => [ 'required', 'string', 'email', 'max:255', Rule::unique('users')->ignore($userId), // Ignore the user's own email when updating ], 'password' => [$this->isMethod('post') ? 'required' : 'nullable', 'confirmed', 'max:255'], 'firstname' => ['required', 'string', 'max:255'], 'lastname' => ['required', 'string', 'max:255'], 'position' => ['required', 'string', 'max:255'], 'role_id' => ['required', 'exists:roles,id'], ]; } }