feat(WEB): 동적 게시판, 파트너 관리, 공지 팝업 모달 추가

- 동적 게시판 시스템 구현 (/boards/[boardCode])
- 파트너 관리 페이지 및 폼 추가
- 공지 팝업 모달 컴포넌트 (NoticePopupModal)
  - localStorage 기반 1일간 숨김 기능
  - 테스트 페이지 (/test/popup)
- IntegratedListTemplateV2 개선
- 기타 버그 수정 및 타입 개선

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
byeongcheolryu
2025-12-30 21:56:01 +09:00
parent 7b917fcbcd
commit f8dbc6b2ae
43 changed files with 6395 additions and 113 deletions

View File

@@ -12,6 +12,8 @@ interface StatCardData {
value: string;
isPositive: boolean;
};
onClick?: () => void;
isActive?: boolean;
}
interface StatCardsProps {
@@ -23,8 +25,18 @@ export function StatCards({ stats }: StatCardsProps) {
<div className="grid grid-cols-2 lg:grid-cols-4 gap-3 md:gap-4">
{stats.map((stat, index) => {
const Icon = stat.icon;
const isClickable = !!stat.onClick;
return (
<Card key={index}>
<Card
key={index}
className={`transition-colors ${
isClickable ? 'cursor-pointer hover:border-primary/50' : ''
} ${
stat.isActive ? 'border-primary bg-primary/5' : ''
}`}
onClick={stat.onClick}
>
<CardContent className="p-3 md:p-4 lg:p-6">
<div className="flex items-center justify-between">
<div className="flex-1">