- Step1, Step2 폼 레이블 현지화
- 발송 수단, 상품 정보, 구매자 정보 등 모든 필드 번역
- 구매자 정보 대조 옵션(개인/법인) 다국어 적용
- 언어 선택(국문/영문), 링크내용(기본/추가) 현지화
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 분리승인 상세, 성공, 실패 페이지 현지화
- 기간연장 및 링크중단 기능 텍스트 번역
- 에러 메시지 및 안내 문구 다국어 적용
- 거래금액, 결제상태, 유효기간 등 레이블 현지화
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- SMS 결제 통보 관련 컴포넌트에 i18n 적용
- 한글/영문 번역 키 추가 (ko.json, en.json)
- sms-payment-detail-resend, sms-payment-filter, sms-payment-page 현지화
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 부가서비스 MID 초기값 설정 개선
- 전화번호 입력 유효성 검사 추가
- 링크결제 상세 버튼 스크롤 개선
- KEY-IN 결제 에러 메시지 처리 개선
- 다국어 줄바꿈 처리
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove FULL_CANCEL and PARTIAL_CANCEL from KeyInPaymentTansactionType enum
- Remove corresponding filter buttons from payment status button group
- Simplify list item color logic to combine PRE_CANCEL and POST_CANCEL handling
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Change transaction.fields.detailInfo to transaction.sections.detailInfo
- Fixes missing translation issue in account holder auth and search detail pages
- detailInfo is a section title, not a field, so it belongs in sections namespace
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add common translation keys: select, requestSuccess, requestFailed, errorOccurred
- Replace hardcoded '선택' with t('common.select') in account holder search request page
- Fix KeyIn enum: uncomment FULL_CANCEL and PARTIAL_CANCEL to resolve TypeScript errors
- All labels now support Korean and English through i18n
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add transaction.apply translation key
- Add transaction.sms.resendConfirmMessage translation key
- Supports both Korean and English for SMS resend confirmation dialog
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace hardcoded Korean strings with translation keys in detail pages
- Add new translation keys for account holder services:
- accountHolderAuth: title, detailTitle, requestDate, requestWay
- accountHolderSearch: title, detailTitle
- Add 'result' key to common translations for reusability
- All labels now support Korean and English through i18n
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add transaction.filter.paymentStatus (결제상태 / Payment Status)
- Add transaction.filter.orderStatus (주문상태 / Order Status)
- Fix missing Korean translations in ARS filter
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add PRE_CANCEL and POST_CANCEL transaction types to KeyIn payment
- Update English translations for better readability (FAQ, Settlement Service)
- Fix calendar month date parsing to handle format correctly
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- additionalService section: Added 170+ missing Korean translations
- sms: smsDetailAndResend, sender, receiver, send status messages
- linkPay: 35 fields including product info, buyer info, language settings
- accountHolderSearch: 5 fields for search functionality
- faceAuth: merchantMemberId, transactionType, authenticationResult
- fundAccount: 10 fields for transfer and inquiry features
- alimtalk: notification categories and send types
- payout: 19 fields for disbursement details
- keyIn: productPrice
- linkPayment: Complete new section with 41 fields
- infoWrap: Complete new section with 24 fields
- settlementAgencyDetails: Complete new section with 27 fields
- support.notice.categories: Added ALL, NOTICE, SERVICE, IMPORTANT
- support.qna: Added submitButton, confirmButton, successMessage
- home: Added currencySymbol (₩)
All translations sourced from actual Korean strings in UI components,
not arbitrary translations, ensuring consistency with existing codebase.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Added else clauses to set valueMonth to undefined when month values are not provided:
- Prevents stale date values in calendar
- Ensures calendar displays correctly when switching between date ranges
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Fixed invalid date error when selecting month:
- Changed valueYear (string) to valueMonth (Date) state
- Set valueMonth using moment().toDate() for all calendar types
- Parse startMonth, endMonth, singleMonth with moment and convert to Date
- Calendar component now receives proper Date object instead of year string
- This fixes the "Invalid date" error and prevents error cascade
Changes:
- useState<string> → useState<Date | undefined>
- setValueYear(year) → setValueMonth(moment().toDate())
- Calendar value prop now receives Date object
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Improved date parsing in setMinMaxValueDate:
- Use moment with multiple format support: ['YYYY.MM', 'YYYYMM']
- Add strict parsing mode with true parameter
- Validate date with isValid() before setting
- Handles both 'YYYY.MM' and 'YYYYMM' input formats
This resolves the invalid date error when selecting year/month.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Fixed Invalid date error when selecting year/month:
- Changed date creation from `new Date(moment(endMonth+'01').format('YYYY.MM.DD'))`
to `moment(endMonth + '.01', 'YYYY.MM.DD').toDate()`
- Used proper moment parsing with explicit format string
- Applied to both minMonth and maxMonth date creation
This fixes the error that occurred after localization was applied.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Modified formatDay function in both calendar components:
- For Korean locale (ko), display only the day number (e.g., '10' instead of '10일')
- For other locales, use default toLocaleString formatting
Changes:
- nice-calendar.tsx: Updated formatDay to check currentLocale === 'ko'
- nice-calendar-month.tsx: Updated formatDay to check currentLocale === 'ko'
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Applied i18n locale to both calendar components:
Changes to nice-calendar.tsx:
- Added useTranslation hook import
- Get current locale from i18n.language
- Updated all format functions (formatMonthYear, formatYear, formatMonth, formatDay, formatShortWeekday) to use currentLocale instead of hardcoded 'en'
- Added locale prop to Calendar component
Changes to nice-calendar-month.tsx:
- Added useTranslation hook import
- Get current locale from i18n.language
- Updated all format functions to use currentLocale instead of hardcoded 'en'
- Added locale prop to Calendar component
Now calendars will display in Korean when language is set to 'ko' and in English when set to 'en'.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>