import authRoutes from './auth.js';
import membersRoutes from './members/index.js';
import albumsRoutes from './albums/index.js';
import schedulesRoutes from './schedules/index.js';
import statsRoutes from './stats/index.js';
import botsRoutes from './admin/bots.js';
import youtubeAdminRoutes from './admin/youtube.js';
import xAdminRoutes from './admin/x.js';

/**
 * 라우트 통합
 * /api/*
 */
export default async function routes(fastify) {
  // 인증 라우트
  fastify.register(authRoutes, { prefix: '/auth' });

  // 멤버 라우트
  fastify.register(membersRoutes, { prefix: '/members' });

  // 앨범 라우트
  fastify.register(albumsRoutes, { prefix: '/albums' });

  // 일정 라우트
  fastify.register(schedulesRoutes, { prefix: '/schedules' });

  // 통계 라우트
  fastify.register(statsRoutes, { prefix: '/stats' });

  // 관리자 - 봇 라우트
  fastify.register(botsRoutes, { prefix: '/admin/bots' });

  // 관리자 - YouTube 라우트
  fastify.register(youtubeAdminRoutes, { prefix: '/admin/youtube' });

  // 관리자 - X 라우트
  fastify.register(xAdminRoutes, { prefix: '/admin/x' });
}
