validateOnly($property); } /** * @param User $user * @return array */ public function rules(User $user): array { return [ 'current_password' => ['required', new IsCurrentPassword($user)], 'password' => $this->passwordRules($user->username, $user->email), 'password_confirmation' => $this->passwordConfirmationRules() ]; } public function render() { return view('livewire.account.update-password'); } public function submit() { /** @var \App\Models\User */ $user = Auth::user(); $data = $this->validate($this->rules($user)); $user->updatePassword($data['password'], Request::ip(), Request::userAgent(), $data['current_password']); return redirect()->route('account')->with('status', __('Your password has been updated!')); } }