Skip to content

Commit 29dc842

Browse files
committed
feat: added Me controller for get user profile API
1 parent 8ea86b8 commit 29dc842

File tree

3 files changed

+38
-3
lines changed

3 files changed

+38
-3
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<?php
2+
3+
namespace App\Http\Controllers\Api\V1\User;
4+
5+
use App\Http\Controllers\Controller;
6+
use App\Http\Resources\V1\Auth\UserResource;
7+
use Dedoc\Scramble\Attributes\Group;
8+
use Illuminate\Http\JsonResponse;
9+
use Illuminate\Http\Request;
10+
11+
#[Group('User', weight: 0)]
12+
class MeController extends Controller
13+
{
14+
/**
15+
* User Profile API
16+
*
17+
* Handle the incoming request to get the authenticated user.
18+
*
19+
* @response array{status: true, message: string, data: UserResource}
20+
*/
21+
public function __invoke(Request $request): JsonResponse
22+
{
23+
/**
24+
* Successful response
25+
*/
26+
27+
/** @var \App\Models\User $user */
28+
$user = $request->user();
29+
$user->load(['roles.permissions']);
30+
31+
return response()->apiSuccess(
32+
new \App\Http\Resources\V1\Auth\UserResource($user),
33+
__('common.success')
34+
);
35+
}
36+
}

lang/en/common.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@
1111
*/
1212

1313
'something_went_wrong' => 'Something went wrong! Try again later.',
14+
'success' => 'Response returned successfully.',
1415
];

routes/api_v1.php

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,6 @@
1818

1919
// User Routes
2020
Route::middleware(['auth:sanctum', 'ability:access-api'])->group(function () {
21-
Route::get('/me', function (Request $request) {
22-
return auth()->user();
23-
});
21+
Route::get('/me', \App\Http\Controllers\Api\V1\User\MeController::class);
2422
});
2523
});

0 commit comments

Comments
 (0)