Replace hardcoded Korean text '자주 묻는 질문' with dynamic
translation key using useTranslation hook.
Changes:
- Import useTranslation from react-i18next
- Replace hardcoded title with t('support.faq.title')
- Maintains consistency with FAQ list page localization
Note: FAQ list-page.tsx was already fully localized.
Translation key 'support.faq.title' already exists in en.json.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Add comprehensive category translation keys for notice pages
to support all notice types used in the application.
Categories added:
- INTEREST_FREE_INSTALLMENT: Interest-Free Installment
- NEWS: News
- SERVICE_DISRUPTION_NOTICE: Service Disruption Notice
- MAINTENANCE_NOTICE: Maintenance Notice
- SERVICE_CHANGE_OR_ADDITION: Service Change or Addition
- IMPORTANT_NOTICE: Important Notice
- ADDITIONAL_SERVICE: Additional Service
Note: Notice pages (list-page.tsx and detail-page.tsx) are already
fully localized with useTranslation and t() function calls.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Replace all hardcoded Korean text with i18n translation keys in
common bottom sheet components for email selection and download
type selection.
Components localized:
- email-bottom-sheet: Title, image save label, receive by email label,
image requested snackbar message, close button alt, request button
- download-type-bottom-sheet: Title, download method selection labels,
image/email alt texts, close button alt
Translation keys added to en.json:
- selectEmailAddress: "Select Email Address"
- imageSave: "Save as Image"
- receiveByEmail: "Receive by Email"
- mail: "Mail"
- image: "Image"
- request: "Request"
- imageRequested: "Image has been requested."
- selectDownloadMethod: "Select Download Method"
All bottom sheet UI text now supports internationalization.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Replace all hardcoded Korean text with i18n translation keys in
key-in payment list and fund account components including tab
navigation and wrap components.
Components localized:
- key-in-payment-list: Payment request button
- fund-account/tab: Transfer request and result inquiry tab buttons
- fund-account/transfer-list-wrap: Balance, won unit, transfer registration notice and button
- fund-account/result-list-wrap: Request/success/fail labels, won units, transfer registration button
All text now supports multi-language through translation keys.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Replace all hardcoded Korean text with i18n translation keys in
6 filter components covering payout, fund account, alimtalk,
face authentication, and account holder authentication.
Components localized:
- payout-filter: Filter title, merchant, search criteria, period, payment status, transaction amount
- fund-account-transaction-filter: Select option, merchant, recipient/account, period, bank, processing result
- fund-account-result-filter: Search criteria, recipient/account, period, bank, processing result
- alimtalk-filter: Merchant, order/TID, payment method, notification category, period, send type/category
- face-auth-filter: Merchant, member ID, period, transaction type, authentication result
- account-holder-auth-filter: Merchant, period, payment status
All filter headers, close buttons, and apply buttons now use dynamic translations.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Add extensive translation keys to en.json for all additional-service
components including link payment, fund account, SMS, alimtalk, face auth,
key-in payment, payout, settlement agency, and info-wrap components.
Localize components:
- account-holder-search-list: Add search request button translation
- key-in-payment-filter: Replace all Korean filter labels with i18n keys
Translation keys added cover:
- Link payment forms, steps, and bottom sheets
- Fund account transfer and result views
- SMS detail and resend functionality
- Filter components for all service types
- Info wrap components for payment and detail information
- Settlement agency management interfaces
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Replace all hardcoded Korean text with dynamic translation keys
in the account-holder-search filter component for internationalization
support.
Changes:
- Add translation keys for filter labels (select, bank, search result)
- Replace filter title, close button, merchant, and apply button text
- Update bank select options and form field labels with i18n keys
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace hardcoded Korean text with i18n translation keys
- Update page titles, form labels, and button text
- Localize error messages and console logs
- Apply to list page, detail page, and request page
- Support dynamic language switching (ko/en)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update moment locale based on current language (ko/en-gb)
- Apply to transaction, settlement, and additional-service modules
- Add service name localization in transaction list-date-group
- Date format displays weekday in user's language (ko: 수, en: Wed)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add payment method name localization mapping for both Korean and English
- Support payment methods: Credit Card, Virtual Account, Account Transfer, Simple Account Transfer, Mobile Payment, SSG Money, SSG Bank Account, Culture Voucher, Tmoney Pay
- Update transaction list to use localized currency format (ko: 9,999,999원, en: ₩9,999,999)
- Apply localization to payment method dropdown options in filters and list pages
- Update settlement transaction info to display localized payment method names
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Updated 24 files to resolve 111 TypeScript compilation errors by:
- Updating imports from direct constant exports to getter functions
- Adding i18n support with useTranslation hook
- Fixing curried function calls to use translation function parameter
- Adding explicit type annotations to map callbacks
All filter components, list wrappers, and page components now properly
use internationalized getter functions for status text and button groups.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add translation keys to filter namespace:
- filter.periods.currentMonth: Current month period option
- filter.periods.2months: 2 months period option
- filter.selectDate: Date selection placeholder and alt text
- Localize shared/ui/filter/calendar-month.tsx:
- Replace hardcoded "조회기간" with filter.period
- Replace hardcoded "당월" with filter.periods.currentMonth
- Replace hardcoded "2개월" with filter.periods.2months
- Replace hardcoded "3개월" with filter.periods.3months
- Replace hardcoded "직접입력" with filter.periods.custom
- Replace hardcoded "날짜 선택" with filter.selectDate
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace hardcoded Korean sort labels with translation keys
- Add useTranslation hook to sort-type-box.tsx
- Add common.highAmountOrder to ko.json and en.json
- Use filter.sortOrders.latest for latest sort option
- Convert default sortOptions to use t() function
Now supports dynamic language switching for sort options.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Convert installmentMonth string to number for count parameter
- Fix type mismatch: t() expects count as number, not string
- Updated files: list-item.tsx, billing-info-section.tsx
Fixes compilation errors where { count: string } was incompatible
with TOptionsBase requirement of count: number.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add i18n support to all transaction filter components
- Add translation keys for filter UI elements in ko.json and en.json
- Replace hardcoded Korean text with useTranslation hook
- Updated components: all-transaction-filter, cash-receipt-filter, billing-filter, escrow-filter
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- i18n 초기화 시 네이티브 앱 언어 설정을 확인하여 적용
- 네이티브 환경: 앱 언어를 가져와 localStorage에 저장
- 웹 환경: localStorage에서 저장된 언어 사용
- setting-page에서 언어 동기화 시 localStorage 업데이트 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>