Add comprehensive localization keys and localize initial components

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>
This commit is contained in:
Jay Sheen
2025-10-31 11:29:53 +09:00
parent 5a61fbc102
commit dfe7152631
3 changed files with 133 additions and 16 deletions

View File

@@ -4,12 +4,14 @@ import { ListDateGroup } from '../list-date-group';
import { AdditionalServiceCategory } from '../../model/types'
import { AccountHolderSearchListItem, AccountHolderSearchListProps } from '../../model/account-holder-search/types';
import { JSX } from 'react';
import { useTranslation } from 'react-i18next';
export const AccountHolderSearchList = ({
listItems,
mid
}: AccountHolderSearchListProps) => {
const { navigate } = useNavigate();
const { t } = useTranslation();
const getListDateGroup = () => {
let rs = [];
@@ -71,7 +73,7 @@ export const AccountHolderSearchList = ({
<button
className="btn-50 btn-blue flex-1"
onClick={() => onClickToNavigate()}
> </button>
>{t('additionalService.accountHolderSearch.searchRequest')}</button>
</div>
</>
);

View File

@@ -64,7 +64,7 @@ export const KeyInPaymentFilter = ({
>
<div className="full-menu-container">
<div className="full-menu-header">
<div className="full-menu-title center"></div>
<div className="full-menu-title center">{t('filter.filter')}</div>
<div className="full-menu-actions">
<button
id="closeFullMenu"
@@ -72,7 +72,7 @@ export const KeyInPaymentFilter = ({
>
<img
src={IMAGE_ROOT + '/ico_close.svg'}
alt="닫기"
alt={t('filter.close')}
onClick={() => onClickToClose()}
/>
</button>
@@ -81,12 +81,12 @@ export const KeyInPaymentFilter = ({
<div className="option-list pt-16">
<FilterSelectMid
title='가맹점'
title={t('filter.merchant')}
selectSetter={setFilterMid}
showType={'GID'}
></FilterSelectMid>
<FilterCalendar
title='조회기간'
title={t('filter.period')}
startDate={filterStartDate}
endDate={filterEndDate}
setStartDate={setFilterStartDate}
@@ -94,14 +94,14 @@ export const KeyInPaymentFilter = ({
></FilterCalendar>
<FilterButtonGroups
title='거래상태'
title={t('filter.transactionStatus')}
activeValue={filterTransactionStatus}
btnGroups={getKeyInPaymentPaymentStatusBtnGroup(t)}
setter={setFilterTransactionStatus}
></FilterButtonGroups>
<FilterRangeAmount
title='상품가격'
title={t('additionalService.keyIn.productPrice')}
minAmount={filterMinAmount}
maxAmount={filterMaxAmount}
setMinAmount={setFilterMinAmount}
@@ -112,7 +112,7 @@ export const KeyInPaymentFilter = ({
<button
className="btn-50 btn-blue flex-1"
onClick={() => onClickToSetFilter()}
></button>
>{t('filter.apply')}</button>
</div>
</div>
</motion.div>