fix: 사용 중인 hooks 복원

실제로 사용 중인 hooks를 잘못 삭제함:
- useMemberData.js (useMembers, useMemberDetail)
- useAlbumData.js (useAlbums, useAlbumDetail, useAlbumGallery)
- useScheduleData.js (useScheduleData, useScheduleDetail, useUpcomingSchedules, useCategories)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
caadiq 2026-01-22 21:44:14 +09:00
parent 27fc26ee96
commit 362182fb53
4 changed files with 125 additions and 0 deletions

View file

@ -1,2 +1,16 @@
// 토스트
export { default as useToast } from './useToast';
// 멤버 데이터
export { useMembers, useMemberDetail } from './useMemberData';
// 앨범 데이터
export { useAlbums, useAlbumDetail, useAlbumGallery } from './useAlbumData';
// 스케줄 데이터
export {
useScheduleData,
useScheduleDetail,
useUpcomingSchedules,
useCategories,
} from './useScheduleData';

View file

@ -0,0 +1,37 @@
import { useQuery } from '@tanstack/react-query';
import { albumApi } from '@/api';
/**
* 앨범 목록 조회
*/
export function useAlbums() {
return useQuery({
queryKey: ['albums'],
queryFn: albumApi.getAlbums,
staleTime: 1000 * 60 * 10, // 10분 캐시
});
}
/**
* 앨범 상세 조회
* @param {string} name - 앨범 이름
*/
export function useAlbumDetail(name) {
return useQuery({
queryKey: ['album', name],
queryFn: () => albumApi.getAlbumByName(name),
enabled: !!name,
});
}
/**
* 앨범 갤러리 조회
* @param {string} name - 앨범 이름
*/
export function useAlbumGallery(name) {
return useQuery({
queryKey: ['album', name, 'gallery'],
queryFn: () => albumApi.getAlbumGallery(name),
enabled: !!name,
});
}

View file

@ -0,0 +1,25 @@
import { useQuery } from '@tanstack/react-query';
import { memberApi } from '@/api';
/**
* 멤버 목록 조회
*/
export function useMembers() {
return useQuery({
queryKey: ['members'],
queryFn: memberApi.getMembers,
staleTime: 1000 * 60 * 10, // 10분 캐시
});
}
/**
* 멤버 상세 조회
* @param {string} name - 멤버 이름
*/
export function useMemberDetail(name) {
return useQuery({
queryKey: ['member', name],
queryFn: () => memberApi.getMemberByName(name),
enabled: !!name,
});
}

View file

@ -0,0 +1,49 @@
import { useQuery } from '@tanstack/react-query';
import { scheduleApi } from '@/api';
/**
* 스케줄 목록 조회 (월별)
* @param {number} year - 년도
* @param {number} month - (1-12)
*/
export function useScheduleData(year, month) {
return useQuery({
queryKey: ['schedules', year, month],
queryFn: () => scheduleApi.getSchedules(year, month),
enabled: !!year && !!month,
});
}
/**
* 스케줄 상세 조회
* @param {number} id - 스케줄 ID
*/
export function useScheduleDetail(id) {
return useQuery({
queryKey: ['schedule', id],
queryFn: () => scheduleApi.getSchedule(id),
enabled: !!id,
});
}
/**
* 다가오는 스케줄 조회
* @param {number} limit - 조회 개수
*/
export function useUpcomingSchedules(limit = 3) {
return useQuery({
queryKey: ['schedules', 'upcoming', limit],
queryFn: () => scheduleApi.getUpcomingSchedules(limit),
});
}
/**
* 카테고리 목록 조회
*/
export function useCategories() {
return useQuery({
queryKey: ['categories'],
queryFn: scheduleApi.getCategories,
staleTime: 1000 * 60 * 10, // 10분 캐시
});
}