- 백엔드: /api/admin/x/post-info, /api/admin/x/schedule API 추가 - scraper.js에 fetchSingleTweet 함수 추가 (Nitter로 단일 트윗 조회) - 프론트엔드: XForm 컴포넌트 생성 (게시글 ID 입력 → 미리보기 → 저장) - 일정 추가 폼에서 X 카테고리 분기 추가 - API 문서 업데이트 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
38 lines
1.1 KiB
JavaScript
38 lines
1.1 KiB
JavaScript
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' });
|
|
}
|