feat(admin-schedule): 일정 추가 카테고리 선택에서 생일·기념일 제외

생일/기념일은 멤버 생일·데뷔일에서 자동 계산되는 카테고리라 수동 추가
대상이 아님. 카테고리 선택 목록과 기본 선택값에서 제외.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
caadiq 2026-06-16 21:40:19 +09:00
parent 680ea46cd5
commit ad20149c88

View file

@ -1,4 +1,4 @@
import { useState, useEffect } from "react";
import { useState, useEffect, useMemo } from "react";
import { useNavigate, Link } from "react-router-dom";
import { useQuery } from "@tanstack/react-query";
import { motion, AnimatePresence } from "framer-motion";
@ -49,19 +49,20 @@ function ScheduleFormPage() {
queryFn: categoriesApi.getCategories,
enabled: isAuthenticated,
staleTime: 10 * 60 * 1000,
onSuccess: (data) => {
if (data.length > 0 && !selectedCategory) {
setSelectedCategory(data[0].id);
}
},
});
//
// / (·)
const selectableCategories = useMemo(
() => categories.filter((c) => c.name !== '생일' && c.name !== '기념일'),
[categories]
);
// ( )
useEffect(() => {
if (categories.length > 0 && !selectedCategory) {
setSelectedCategory(categories[0].id);
if (selectableCategories.length > 0 && !selectedCategory) {
setSelectedCategory(selectableCategories[0].id);
}
}, [categories, selectedCategory]);
}, [selectableCategories, selectedCategory]);
//
const renderForm = () => {
@ -150,7 +151,7 @@ function ScheduleFormPage() {
{/* 카테고리 선택 */}
<motion.div variants={itemVariants} className="mb-6">
<CategorySelector
categories={categories}
categories={selectableCategories}
selectedId={selectedCategory}
onChange={(id) => {
setSelectedCategory(id);