feat: 저장소 생성 이름 실시간 가용성 체크 + 소유자 아바타 제거

- GET /repos/name-available?slug= 추가(:repoId 앞 선언, Relay slug 중복만 검사)
- 생성 폼: 형식 즉시 검사 + 350ms 디바운스 서버 조회로 상태별(빈칸/형식위반/확인중/사용가능/중복) 색·아이콘 표기
- 항상 떠 있던 정적 "사용 가능한 이름입니다" 표시 제거
- 조직 이니셜 소유자 아바타 제거

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-19 17:03:59 +09:00
parent 42db9b5d00
commit 7a2c70a260
4 changed files with 114 additions and 18 deletions
+9 -1
View File
@@ -22,6 +22,14 @@ export function useRepo() {
return (await api.get('/repos/meta')) as unknown as RepoCreateMeta
}
// 이름(slug) 사용 가능 여부 — 생성 폼 실시간 체크 (실패해도 전역 알림 X)
async function checkName(slug: string): Promise<{ available: boolean }> {
return (await api.get('/repos/name-available', {
params: { slug },
silent: true,
})) as unknown as { available: boolean }
}
async function get(id: string): Promise<ApiRepo> {
return (await api.get(`/repos/${id}`)) as unknown as ApiRepo
}
@@ -38,5 +46,5 @@ export function useRepo() {
await api.delete(`/repos/${id}`)
}
return { list, meta, get, create, update, remove }
return { list, meta, checkName, get, create, update, remove }
}