From 3ffbf9e46ada9460a7976a0c19c5bce278c8fb2e Mon Sep 17 00:00:00 2001 From: MartinOscar <40749467+rmartinoscar@users.noreply.github.com> Date: Sun, 13 Apr 2025 02:29:46 +0200 Subject: [PATCH] Allow users to remove their `Avatar` (#1247) --- app/Filament/Pages/Auth/EditProfile.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/Filament/Pages/Auth/EditProfile.php b/app/Filament/Pages/Auth/EditProfile.php index 82822b7d6..5ad30f707 100644 --- a/app/Filament/Pages/Auth/EditProfile.php +++ b/app/Filament/Pages/Auth/EditProfile.php @@ -132,7 +132,16 @@ class EditProfile extends BaseEditProfile ->avatar() ->acceptedFileTypes(['image/png']) ->directory('avatars') - ->getUploadedFileNameForStorageUsing(fn () => $this->getUser()->id . '.png'), + ->getUploadedFileNameForStorageUsing(fn () => $this->getUser()->id . '.png') + ->hintAction(function (FileUpload $fileUpload) { + $path = $fileUpload->getDirectory() . '/' . $this->getUser()->id . '.png'; + + return Action::make('remove_avatar') + ->icon('tabler-photo-minus') + ->iconButton() + ->hidden(fn () => !$fileUpload->getDisk()->exists($path)) + ->action(fn () => $fileUpload->getDisk()->delete($path)); + }), ]), Tab::make(trans('profile.tabs.oauth'))