feat(dev-tools): 인증 모달에 회사 선택 및 토큰 표시 기능 추가

- 인증 모달에 회사(테넌트) 선택 드롭다운 추가
  - 헤더의 $globalTenants 재사용
  - tenant.switch 라우트와 동기화
  - 회사 변경 시 사용자 목록 자동 갱신

- Bearer 토큰 표시 및 복사 기능 추가
  - 토큰 발급 API 엔드포인트 추가 (POST /dev-tools/api-explorer/issue-token)
  - 현재 상태 영역에 토큰 표시
  - 클립보드 복사 버튼 (Clipboard API + fallback)
  - 적용 후 모달 유지하여 토큰 복사 가능

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-05 15:10:09 +09:00
parent 301f2da23e
commit f70f75fb22
4 changed files with 216 additions and 26 deletions

View File

@@ -493,6 +493,36 @@ public function users(): JsonResponse
]);
}
/**
* 사용자 선택 시 Sanctum 토큰 발급
*/
public function issueToken(Request $request): JsonResponse
{
$validated = $request->validate([
'user_id' => 'required|integer|exists:users,id',
]);
$user = \App\Models\User::find($validated['user_id']);
if (!$user) {
return response()->json(['error' => '사용자를 찾을 수 없습니다.'], 404);
}
// Sanctum 토큰 발급
$token = $user->createToken('api-explorer', ['*'])->plainTextToken;
session(['api_explorer_token' => $token]);
return response()->json([
'success' => true,
'token' => $token,
'user' => [
'id' => $user->id,
'name' => $user->name,
'email' => $user->email,
],
]);
}
/**
* 즐겨찾기 수정
*/