feat: 공지 팝업 시스템 구현 및 캘린더/어음/팝업관리 개선

- NoticePopupModal: 공지 팝업 컨테이너/actions 신규 구현
- AuthenticatedLayout에 공지 팝업 연동
- CalendarSection: 일정 타입 확장 및 UI 개선
- BillManagementClient: 기능 확장
- PopupManagement: popupDetailConfig 대폭 확장, 상세/폼 개선
- BoardForm/BoardManagement: 게시판 폼 개선
- LoginPage, logout, userStorage: 인증 관련 소폭 수정
- dashboard types 정비
- claudedocs: 공지팝업 구현, 캘린더 어음연동/일정타입, API changelog 문서 추가
This commit is contained in:
유병철
2026-03-10 15:16:41 +09:00
parent 7bd4bd38da
commit 397eb2c19c
23 changed files with 1004 additions and 79 deletions

View File

@@ -257,7 +257,8 @@ export interface TodayIssueApiResponse {
// ============================================
/** 캘린더 일정 타입 */
export type CalendarScheduleType = 'schedule' | 'order' | 'construction' | 'other';
export type CalendarScheduleType = 'schedule' | 'order' | 'construction' | 'other' | 'bill'
| 'expected_expense' | 'delivery' | 'shipment';
/** 캘린더 일정 아이템 */
export interface CalendarScheduleItemApiResponse {

View File

@@ -98,6 +98,9 @@ export function resetZustandStores(): void {
// itemMasterStore 초기화
const itemMasterStore = useItemMasterStore.getState();
itemMasterStore.reset();
// favoritesStore는 persist 연동이라 setFavorites([])하면 localStorage까지 비워짐
// 로그인 시 rehydrate로 새 유저 데이터 로드하므로 여기서는 건드리지 않음
} catch (error) {
console.error('[Logout] Failed to reset Zustand stores:', error);
}