Files
sam-react-prod/src/components/common/ScheduleCalendar/MorePopover.tsx
byeongcheolryu 386cd30bc0 feat(WEB): 입찰/계약/주문관리 기능 추가 및 견적 상세 리팩토링
- 입찰관리: 목록/상세/수정 페이지 및 목업 데이터
- 계약관리: 목록/상세/수정 페이지 구현
- 주문관리: 수주/발주 목록 및 상세 페이지 구현
- 견적 상세 폼: 섹션별 분리 및 hooks/utils 리팩토링
- 품목관리, 카테고리관리, 단가관리 기능 추가
- 현장설명회/협력업체 폼 개선
- 프린트 유틸리티 공통화 (print-utils.ts)
- 문서 모달 공통 컴포넌트 정리
- IntegratedListTemplateV2, StatCards 개선

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-05 18:59:04 +09:00

45 lines
992 B
TypeScript

'use client';
import { cn } from '@/components/ui/utils';
import type { ScheduleEvent } from './types';
interface MorePopoverProps {
date: Date;
events: ScheduleEvent[];
hiddenCount: number;
onEventClick: (event: ScheduleEvent) => void;
onDateClick?: (date: Date) => void;
}
/**
* 더보기 버튼 컴포넌트
* - +N 버튼 렌더링
* - 클릭 시 해당 날짜 선택 (테이블 필터링)
*/
export function MorePopover({
date,
hiddenCount,
onDateClick,
}: MorePopoverProps) {
if (hiddenCount <= 0) return null;
const handleClick = (e: React.MouseEvent) => {
e.stopPropagation();
// 날짜 선택 → 테이블 필터링
onDateClick?.(date);
};
return (
<button
type="button"
className={cn(
'text-xs font-medium text-muted-foreground',
'hover:text-primary hover:underline',
'transition-colors cursor-pointer'
)}
onClick={handleClick}
>
+{hiddenCount}
</button>
);
}