44
55use App \Concerns \SendsAlerts ;
66use App \Jobs \UpdateUserIdenticonStatus ;
7+ use App \Models \User ;
78use Illuminate \Support \Facades \RateLimiter ;
8- use Illuminate \Support \ Facades \ Redirect ;
9+ use Illuminate \View \ View ;
910use Livewire \Component ;
1011
1112final class RefreshAvatar extends Component
@@ -14,26 +15,30 @@ final class RefreshAvatar extends Component
1415
1516 public $ user ;
1617
17- public function mount ($ user ): void
18+ public function mount (User $ user ): void
1819 {
1920 $ this ->user = $ user ;
2021 }
2122
22- public function refresh ()
23+ public function refresh (): void
2324 {
2425 if (! $ this ->user ->hasConnectedGitHubAccount ()) {
2526 $ this ->error ('You need to connect your GitHub account to refresh your avatar. ' );
2627
27- return Redirect::route ('settings.profile ' );
28+ $ this ->redirectRoute ('settings.profile ' );
29+
30+ return ;
2831 }
2932
30- // Rate limiting: 1 request per 1 minute per user
33+ // Rate limiting: 1 request per 1 minute per user.
3134 $ key = 'avatar-refresh: ' .$ this ->user ->id ();
3235
3336 if (RateLimiter::tooManyAttempts ($ key , 1 )) {
3437 $ this ->error ('Please wait 1 minute before refreshing your avatar again. ' );
3538
36- return Redirect::route ('settings.profile ' );
39+ $ this ->redirectRoute ('settings.profile ' );
40+
41+ return ;
3742 }
3843
3944 // Record this attempt for 1 minute.
@@ -43,10 +48,10 @@ public function refresh()
4348
4449 $ this ->success ('Avatar refreshed successfully! ' );
4550
46- return Redirect:: route ('settings.profile ' );
51+ $ this -> redirectRoute ('settings.profile ' );
4752 }
4853
49- public function render ()
54+ public function render (): View
5055 {
5156 return view ('livewire.refresh-avatar ' );
5257 }
0 commit comments