Compare commits

...

2 Commits

@ -0,0 +1,22 @@
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
class DeleteUserController extends Controller
{
public function destroy(Request $request): Response
{
if (! $request->user()) {
return response(status: 419);
}
User::destroy($request->user()->id);
return response()->noContent();
}
}

@ -1,6 +1,7 @@
<?php
use App\Http\Controllers\Auth\AuthenticatedSessionController;
use App\Http\Controllers\Auth\DeleteUserController;
use App\Http\Controllers\Auth\EmailVerificationNotificationController;
use App\Http\Controllers\Auth\NewPasswordController;
use App\Http\Controllers\Auth\PasswordResetLinkController;
@ -35,3 +36,6 @@ Route::post('/email/verification-notification', [EmailVerificationNotificationCo
Route::post('/logout', [AuthenticatedSessionController::class, 'destroy'])
->middleware('auth')
->name('logout');
Route::delete('/user', [DeleteUserController::class, 'destroy'])
->middleware('auth');

@ -9,6 +9,8 @@ const loggedInUserSchema = z.object({
name: z.string(),
})
const useUser = () => useState<String>('user', () => '')
const userLogin = async (email: String, password: String) => {
await getUser()
if (useUser().value) return
@ -23,7 +25,7 @@ const userLogin = async (email: String, password: String) => {
body: user.data,
})
if (error) return { user: 'Invalid User' }
if (error.value) return { user: 'Invalid User' }
await getUser()
}
@ -45,7 +47,7 @@ const userSignup = async (data: unknown) => {
body: newUser.data,
})
if (error) return error
if (error.value) return error
await getUser()
}
@ -65,6 +67,9 @@ const userLogout = async () => {
useUser().value = ''
}
const useUser = () => useState<String>('user', () => '')
const userDelete = async () => {
await useCustomFetch('/user', { method: 'DELETE' })
useUser().value = ''
}
export { getUser, userLogin, userLogout, userSignup, useUser }
export { getUser, userDelete, userLogin, userLogout, userSignup, useUser }

Loading…
Cancel
Save