avatarManager->uploadAndCropAvatar( $request->file('file') ); $user = $this->users->update( auth()->id(), ['avatar' => $name] ); event(new ChangedAvatar); return new UserResource($user); } public function updateExternal(Request $request): UserResource { $this->validate($request, [ 'url' => 'required|url', ]); $this->avatarManager->deleteAvatarIfUploaded( auth()->user() ); $user = $this->users->update( auth()->id(), ['avatar' => $request->url] ); event(new ChangedAvatar); return new UserResource($user); } public function destroy(): UserResource { $user = auth()->user(); $this->avatarManager->deleteAvatarIfUploaded($user); $user = $this->users->update( $user->id, ['avatar' => null] ); event(new ChangedAvatar); return new UserResource($user); } }