Commit Graph

7 Commits

Author SHA1 Message Date
SEAN
32b48af34c fix: 대시보드 및 기기 관리 화면 버그 수정 (#47)
- StatusBadge: 매핑 실패 시 undefined variant → default 폴백 처리
- RecentMessages: STATUS_MAP 미등록 status 값 → default 폴백 처리
- DashboardPage: mapChart에서 최근 7일 날짜 항상 채우기 (빈 날짜 0으로)
- DeviceListPage/DeviceSlidePanel: 플랫폼 비교 toLowerCase() 처리
- DeviceSlidePanel: 플랫폼 텍스트 iOS/Android 정규화, 날짜 formatDate 적용
- PlatformBadge: Android 아이콘 lineHeight: 1 추가로 수직 정렬 수정
- formatDate: 서버 기본값(0001-01-01) → "-" 반환
- SecretToggleCell: position fixed로 테이블 overflow 탈출

Closes #47
2026-03-18 10:43:08 +09:00
SEAN
aef2890474 feat: 대시보드 API 타입 swagger 기준 전면 수정 (#33)
- types.ts: swagger 기준 타입 전면 교체 (DashboardKpi, DailyStat, HourlyStat, PlatformStat, TopMessage, DashboardData)
- DashboardPage.tsx: map 함수 4개 수정 (mapCards, mapChart, mapMessages, mapPlatform) + hasData 조건 개선
- ServiceDetailPage.tsx: KPI 필드명 변경 (total_sent→total_send, success_rate→계산식)
- DashboardFilter.tsx: 서비스 드롭다운 제거 (전체 서비스 통합 현황만 표시)
- dashboard.api.ts: 미사용 fetchServiceList/ServiceOption 제거

Closes #33
2026-03-01 20:56:17 +09:00
SEAN
cf7076f525 feat: 대시보드 API 연동 (#29)
- 대시보드 API 타입 정의 (DashboardRequest, DashboardData 등)
- API 함수 생성 (fetchDashboard, fetchServiceList)
- DashboardFilter 서비스 드롭다운 API 연동 (하드코딩 제거)
- DashboardPage 랜덤 더미 데이터 → API 호출로 전환
- 에러/빈 데이터 오버레이 분리 (API 에러 vs 조회 결과 없음)

Closes #29
2026-02-28 17:07:42 +09:00
SEAN
4f8c282572 fix: TypeScript 빌드 에러 수정 (#17)
- DashboardPage: 미사용 변수 i 제거 (TS6133)
- PlatformStatusIndicator: CredentialStatus 타입 내로잉 적용 (TS7053)

Closes #17
2026-02-27 14:15:36 +09:00
SEAN
59c206e0c2 feat: 대시보드 조회 로딩 상태 및 필터 disabled 처리
- 조회 클릭 시 전체 필터 비활성화 (날짜/드롭다운/초기화/조회)
- 각 위젯 로딩 오버레이 및 스켈레톤 추가
- 조회 완료 시 랜덤 Mock 데이터로 갱신
- 공통 컴포넌트(FilterDropdown, DateRangeInput, FilterResetButton)에 disabled prop 추가
- StatsCards 뱃지 아이콘 크기 및 중앙 정렬 개선

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 09:59:59 +09:00
SEAN
61508e25f7 feat: 대시보드 페이지 구현 (통계카드/차트/필터/최근발송/플랫폼도넛)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 09:29:22 +09:00
SEAN
fc9b0c0f75 feat: 프론트엔드 아키텍처 셋업 (#2)
- Vite 기본 템플릿 정리 및 index.html 수정
- guideline.html 기반 디자인 토큰 적용 (index.css)
- Feature-based 폴더 구조 (8개 feature 모듈)
- 18개 placeholder 페이지 + lazy loading 라우터
- 레이아웃 컴포넌트 (AppLayout, AppHeader, AppSidebar, AuthLayout)
- Zustand 스토어 (authStore, uiStore)
- API 계층 (Axios client, auth.api)
- 타입 정의, 유틸리티, 환경변수 설정
- ErrorBoundary, ProtectedRoute, PublicRoute

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-26 13:02:22 +09:00