Add comprehensive i18n localization to transaction UI components

- Localize 23 transaction UI component files
- Add 150+ translation keys to ko.json and en.json
- Organized translations under transaction namespace:
  * transaction.bottomSheet - Bottom sheet modals
  * transaction.sections - Section titles
  * transaction.fields - Field labels (90+ keys)
  * transaction.cancel - Cancellation flows
  * transaction.handWrittenIssuance - Manual issuance forms
  * transaction.list - List actions

Updated files:
- Bottom sheets: escrow-mail-resend, cash-receipt-purpose-update
- Sections: billing-info, part-cancel-info, detail-info, issue-info,
  escrow-info, important-info, payment-info, transaction-info,
  settlement-info, merchant-info, amount-info, cancel-bank-group,
  cancel-password-group
- Lists: list-item, billing-list, cash-receipt-list
- Cancel flows: all-cancel, part-cancel, prevent-bond
- Issuance: hand-written-issuance-step1, hand-written-issuance-step2

🤖 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-30 16:14:25 +09:00
parent 5f420c212b
commit e067fc8d4f
25 changed files with 847 additions and 384 deletions

View File

@@ -358,7 +358,214 @@
"searchOptions": "Search Options",
"download": "Download",
"cancelTransaction": "Cancel Transaction",
"confirmCancel": "Do you want to cancel this transaction?"
"confirmCancel": "Do you want to cancel this transaction?",
"bottomSheet": {
"escrowMailResend": {
"title": "Select Email Address",
"close": "Close",
"mailLabel": "Receive by Email",
"mail": "Mail",
"select": "Select",
"errorNoEmail": "No registered email information.\nPlease add email authentication information from the user management menu before applying."
},
"cashReceiptPurposeUpdate": {
"title": "Cash Receipt Purpose Change Notice",
"description": "When changing the purpose of a cash receipt, the existing issuance record will be cancelled and a new one will be issued according to the selected purpose.",
"expenseProof": "Expense Proof",
"incomeDeduction": "Income Deduction",
"expenseToIncome": "Expense Proof → Income Deduction",
"incomeToExpense": "Income Deduction → Expense Proof"
}
},
"sections": {
"importantInfo": "Important Information",
"billingInfo": "Billing Information",
"partCancelInfo": "Partial Cancel Information",
"detailInfo": "Detail Information",
"issueInfo": "Issue Information",
"escrowInfo": "Escrow Information",
"paymentInfo": "Payment Information",
"transactionInfo": "Transaction Information",
"settlementInfo": "Settlement Information",
"merchantInfo": "Merchant Information",
"amountDetail": "Amount Details"
},
"fields": {
"billKey": "Bill Key",
"tid": "TID",
"orderNumber": "Order Number",
"approvalNumber": "Approval Number",
"approvalDate": "Approval Date",
"approvalDay": "Approval Day",
"requestStatus": "Request Status",
"processResult": "Process Result",
"installmentMonth": "Installment Month",
"installmentPeriod": "Installment Period",
"installmentMonthly": "{{count}} Month Installment",
"lumpSum": "Lump Sum",
"productName": "Product Name",
"buyerName": "Buyer Name",
"buyer": "Buyer",
"originalTid": "Original TID",
"originalAmount": "Original Amount",
"partCancelTid": "Partial Cancel TID",
"reApprovalTid": "Re-approval TID",
"partCancelAmount": "Partial Cancel Amount",
"remainingAmount": "Remaining Amount",
"reApprovalAmount": "Re-approval Amount",
"cancelDate": "Cancel Date",
"cancelApprovalNumber": "Cancel Approval Number",
"receiptInfo": "Cash Receipt",
"transactionId": "Transaction ID",
"merchantTid": "Transaction ID",
"subMallName": "Sub Mall Name",
"subMallBusinessNumber": "Sub Mall Business Number",
"issueChannel": "Issue Channel",
"failureReason": "Failure Reason",
"issueNumber": "Issue Number",
"issueDate": "Issue Date",
"issueDateTime": "Issue Date Time",
"purpose": "Purpose",
"paymentMethod": "Payment Method",
"transactionStatus": "Transaction Status",
"transactionMethod": "Transaction Method",
"transactionType": "Transaction Type",
"deliveryStatus": "Delivery Status",
"deliveryRegistration": "Delivery Registration",
"deliveryComplete": "Delivery Complete",
"purchaseConfirm": "Purchase Confirm",
"purchaseReject": "Purchase Reject",
"rejectReason": "Reject Reason",
"escrowCertNumber": "Escrow Cert Number",
"deliveryCompany": "Delivery Company",
"trackingNumber": "Tracking Number",
"deliveryAddress": "Delivery Address",
"approvalPurchase": "Approval Purchase",
"approvalPurchaseDate": "Approval Purchase Date",
"approvalRejectCount": "Approval Reject (Count)",
"approvalRepurchaseCount": "Approval Repurchase (Count)",
"approvalVAN": "Approval VAN",
"cancelPurchase": "Cancel Purchase",
"cancelPurchaseDate": "Cancel Purchase",
"cancelRejectCount": "Cancel Reject (Count)",
"cancelRepurchaseCount": "Cancel Repurchase (Count)",
"purchaseVan": "Purchase VAN",
"purchaseCompany": "Purchase Company (Issuer)",
"cardNo": "Card Number",
"approvalNo": "Approval Number",
"authentication": "Authentication",
"joinType": "Type",
"bankName": "Bank Name",
"bank": "Bank",
"accountNo": "Account Number",
"refundCompleteDate": "Refund Complete Date",
"customerId": "Customer ID",
"culturelandId": "Cultureland ID",
"partner": "Partner",
"cpid": "CPID",
"goodsCategory": "Goods Category",
"cellphoneNo": "Cellphone Number",
"giftCardNumber": "Gift Card Number",
"depositBankName": "Deposit Bank Name",
"depositorName": "Depositor Name",
"depositDeadline": "Deposit Deadline",
"depositDate": "Deposit Date",
"refundScheduleDate": "Refund Schedule Date",
"refundBankName": "Refund Bank Name",
"refundAccountNo": "Refund Account Number",
"accountHolder": "Account Holder",
"buyerEmail": "Email",
"buyerTel": "Phone Number",
"cancelReason": "Cancel Reason",
"cancelRequestor": "Cancel Requestor",
"partialCancel": "Partial Cancel",
"cashReceiptIssue": "Cash Receipt Issue",
"approvalSettlementDate": "Approval Settlement Date",
"approvalSettlementAmount": "Approval Settlement Amount",
"cancelSettlementDate": "Cancel Settlement Date",
"cancelSettlementAmount": "Cancel Settlement Amount",
"companyName": "Company Name",
"gid": "GID",
"aid": "AID",
"mid": "MID",
"transactionRequestAmount": "Transaction Request Amount",
"approvalRequestAmount": "Approval Request Amount",
"transactionAmount": "Transaction Amount",
"creditCardAmount": "Credit Card Amount",
"cardAmount": "Credit Card Amount",
"pointAmount": "Point Amount",
"couponAmount": "Coupon Amount",
"escrowFee": "Escrow Fee",
"kakaoMoneyAmount": "Kakao Money",
"kakaoPointAmount": "Kakao Point",
"kakaoDiscountAmount": "Kakao Instant Discount",
"naverPointAmount": "Naver Point",
"tossMoneyAmount": "Toss Money",
"tossDiscountAmount": "Toss Discount",
"paycoPointAmount": "Payco Point",
"paycoCouponAmount": "Payco Coupon",
"supplyAmount": "Supply Amount",
"vat": "VAT",
"serviceAmount": "Service Charge",
"taxFreeAmount": "Tax Free Amount",
"amount": "Amount",
"totalBalance": "Total Balance",
"totalCancelAmount": "Total Cancel Amount",
"customerName": "Customer Name",
"transactionConfirmation": "Transaction Confirmation"
},
"handWrittenIssuance": {
"step1Title": "Enter Issue Information",
"step2Title": "Enter Issue Amount",
"businessNumber": "Business Number",
"incomeDeduction": "Income Deduction",
"expenseProof": "Expense Proof",
"productNamePlaceholder": "Product Name",
"buyerNamePlaceholder": "Buyer Name",
"issueNumberPlaceholder": "Business Number OR Phone Number",
"emailPlaceholder": "TEST123@nicepay.com",
"phoneNumberPlaceholder": "01012345678",
"issueAmount": "Issue Amount",
"vatAutoCalc": "VAT Auto Calculate",
"errorMessage": "The issue amount must equal the sum of supply amount, VAT, tax-free amount, and service charge."
},
"list": {
"paymentRequest": "Payment Request",
"manualIssuance": "Manual Issuance",
"separator": "|"
},
"cancel": {
"bankGroup": {
"select": "Select",
"notice": "Refunds will be paid to the entered account information without separate verification.\nPlease check the entered information once more."
},
"passwordGroup": {
"cancelPassword": "Cancel Password",
"passwordMismatch": "Password Mismatch"
},
"afterDeposit": {
"title": "Transaction Cancel (After Deposit Cancel)",
"notice": "The requested transaction cancellation can be processed after deposit.",
"cancelTransactionTitle": "Cancel Transaction Details",
"approvalAmount": "Approval Amount",
"depositRequestAmount": "Deposit Request Amount",
"depositInfoTitle": "Deposit Information",
"guide1": "Cancellation must be submitted through the [Cancel Request] button.",
"guide2": "Please enter the merchant name as the depositor name.",
"guide3": "Cancellation will proceed only if the same amount as the deposit request amount is deposited.",
"guide4": "Cancellation details can be confirmed after up to 3 days.",
"guide5": "After Deposit Cancellation Process:\nMerchant Cancel Request -> Merchant Deposit -> Confirm Deposit -> Process Cancel",
"guide6": "For transactions that have not been settled, please send transaction details to service@nicepay.co.kr. (Only for transactions with more than 2 days remaining until the settlement date)"
},
"partCancel": {
"balance": "Balance",
"cancelAmount": "Cancel Amount",
"taxableAmount": "Taxable Amount",
"taxAmount": "Tax Amount",
"taxFree": "Tax Free",
"serviceFee": "Service Fee"
}
}
},
"cashReceipt": {
"title": "Cash Receipt",

View File

@@ -362,7 +362,214 @@
"searchOptions": "검색옵션",
"download": "다운로드",
"cancelTransaction": "거래 취소",
"confirmCancel": "거래를 취소하시겠습니까?"
"confirmCancel": "거래를 취소하시겠습니까?",
"bottomSheet": {
"escrowMailResend": {
"title": "이메일 주소를 선택하세요",
"close": "닫기",
"mailLabel": "메일로 받기",
"mail": "메일",
"select": "선택",
"errorNoEmail": "등록된 메일 정보가 없습니다.\n이메일 인증정보를 사용자관리 메뉴에서 추가 후 신청하세요."
},
"cashReceiptPurposeUpdate": {
"title": "현금영수증 용도 변경 안내",
"description": "현금영수증의 용도 변경 시 기존 발급 내역이 취소되며, 선택한 용도에 맞게 새로 발급됩니다.",
"expenseProof": "지출증빙용",
"incomeDeduction": "소득공제용",
"expenseToIncome": "지출증빙용 → 소득공제용",
"incomeToExpense": "소득공제용 → 지출증빙용"
}
},
"sections": {
"importantInfo": "중요 정보",
"billingInfo": "빌링 정보",
"partCancelInfo": "부분취소 정보",
"detailInfo": "상세 정보",
"issueInfo": "발급 정보",
"escrowInfo": "에스크로 정보",
"paymentInfo": "결제 정보",
"transactionInfo": "거래 정보",
"settlementInfo": "정산 정보",
"merchantInfo": "상점 정보",
"amountDetail": "금액상세"
},
"fields": {
"billKey": "빌키",
"tid": "TID",
"orderNumber": "주문번호",
"approvalNumber": "승인번호",
"approvalDate": "승인일자",
"approvalDay": "승인일",
"requestStatus": "요청상태",
"processResult": "처리결과",
"installmentMonth": "할부개월",
"installmentPeriod": "할부기간",
"installmentMonthly": "{{count}}개월 할부",
"lumpSum": "일시불",
"productName": "상품명",
"buyerName": "구매자명",
"buyer": "구매자",
"originalTid": "원거래 TID",
"originalAmount": "원거래 금액",
"partCancelTid": "부분취소 TID",
"reApprovalTid": "재승인 TID",
"partCancelAmount": "부분취소 금액",
"remainingAmount": "부분취소 후 잔액",
"reApprovalAmount": "재승인 금액",
"cancelDate": "취소일자",
"cancelApprovalNumber": "취소승인번호",
"receiptInfo": "현금영수증",
"transactionId": "거래ID",
"merchantTid": "거래ID",
"subMallName": "서브몰명",
"subMallBusinessNumber": "서브몰 사업자 번호",
"issueChannel": "발행경로",
"failureReason": "실패사유",
"issueNumber": "발행번호",
"issueDate": "발행일자",
"issueDateTime": "발행일시",
"purpose": "용도",
"paymentMethod": "결제수단",
"transactionStatus": "거래상태",
"transactionMethod": "거래수단",
"transactionType": "거래구분",
"deliveryStatus": "배송상태",
"deliveryRegistration": "배송등록",
"deliveryComplete": "배송완료",
"purchaseConfirm": "구매확인",
"purchaseReject": "구매거절",
"rejectReason": "거절사유",
"escrowCertNumber": "에스크로인증번호",
"deliveryCompany": "택배사",
"trackingNumber": "운송장번호",
"deliveryAddress": "배송주소",
"approvalPurchase": "승인매입",
"approvalPurchaseDate": "승인매입일",
"approvalRejectCount": "승인반송(횟수)",
"approvalRepurchaseCount": "승인재매입(횟수)",
"approvalVAN": "승인VAN",
"cancelPurchase": "취소매입",
"cancelPurchaseDate": "취소매입",
"cancelRejectCount": "취소반송(횟수)",
"cancelRepurchaseCount": "취소재매입(횟수)",
"purchaseVan": "매입VAN",
"purchaseCompany": "매입사(발급사)",
"cardNo": "카드번호",
"approvalNo": "승인번호",
"authentication": "인증",
"joinType": "유형",
"bankName": "은행명",
"bank": "은행",
"accountNo": "계좌번호",
"refundCompleteDate": "환불완료일",
"customerId": "고객ID",
"culturelandId": "컬처랜드ID",
"partner": "제휴사",
"cpid": "CPID",
"goodsCategory": "상품구분",
"cellphoneNo": "휴대폰번호",
"giftCardNumber": "상품권번호",
"depositBankName": "입금금융기관명",
"depositorName": "입금자명",
"depositDeadline": "입금기한",
"depositDate": "입금일",
"refundScheduleDate": "환불예정일",
"refundBankName": "환불은행명",
"refundAccountNo": "환불계좌번호",
"accountHolder": "예금주",
"buyerEmail": "이메일",
"buyerTel": "전화번호",
"cancelReason": "취소사유",
"cancelRequestor": "취소요청자",
"partialCancel": "부분취소",
"cashReceiptIssue": "현금영수증발행",
"approvalSettlementDate": "승인정산일",
"approvalSettlementAmount": "승인정산금액",
"cancelSettlementDate": "취소정산일",
"cancelSettlementAmount": "취소정산금액",
"companyName": "상호",
"gid": "GID",
"aid": "AID",
"mid": "MID",
"transactionRequestAmount": "거래요청금액",
"approvalRequestAmount": "승인요청금액",
"transactionAmount": "거래금액",
"creditCardAmount": "신용카드금액",
"cardAmount": "신용카드금액",
"pointAmount": "포인트금액",
"couponAmount": "쿠폰금액",
"escrowFee": "에스크로수수료",
"kakaoMoneyAmount": "카카오머니",
"kakaoPointAmount": "카카오포인트",
"kakaoDiscountAmount": "카카오 즉시할인",
"naverPointAmount": "네이버포인트",
"tossMoneyAmount": "토스머니",
"tossDiscountAmount": "토스할인",
"paycoPointAmount": "페이코포인트",
"paycoCouponAmount": "페이코쿠폰",
"supplyAmount": "공급가액",
"vat": "VAT",
"serviceAmount": "봉사료",
"taxFreeAmount": "면세금액",
"amount": "금액",
"totalBalance": "총 잔액",
"totalCancelAmount": "총 취소금액",
"customerName": "고객명",
"transactionConfirmation": "거래 확인서"
},
"handWrittenIssuance": {
"step1Title": "발행 정보 입력",
"step2Title": "발행 금액 입력",
"businessNumber": "사업자 번호",
"incomeDeduction": "소득공제",
"expenseProof": "지출증빙",
"productNamePlaceholder": "상품명",
"buyerNamePlaceholder": "구매자명",
"issueNumberPlaceholder": "사업자번호 OR 휴대폰번호",
"emailPlaceholder": "TEST123@nicepay.com",
"phoneNumberPlaceholder": "01012345678",
"issueAmount": "발행금액",
"vatAutoCalc": "VAT자동계산",
"errorMessage": "발행금액은 공급가액 VAT,면세금액, 봉사료의 총합과 같아야 합니다."
},
"list": {
"paymentRequest": "결제신청",
"manualIssuance": "수기발행",
"separator": "|"
},
"cancel": {
"bankGroup": {
"select": "선택",
"notice": "환불은 입력한 계좌정보로 별도 확인 절차없이 지급됩니다.\n입력 정보를 한번 더 확인해 주세요."
},
"passwordGroup": {
"cancelPassword": "취소 비밀번호",
"passwordMismatch": "비밀번호 불일치"
},
"afterDeposit": {
"title": "거래취소(입금 후 취소)",
"notice": "요청하신 거래취소는 입금 후 취소처리 가능합니다.",
"cancelTransactionTitle": "취소거래내역",
"approvalAmount": "승인금액",
"depositRequestAmount": "입금요청금액",
"depositInfoTitle": "입금 정보",
"guide1": "[취소요청] 버튼을 통해 취소 요청을 진행해야 접수됩니다.",
"guide2": "입금자명은 가맹점 상호로 입력해 주세요.",
"guide3": "입금요청금액과 동일한 금액을 입금해야 취소가 진행됩니다.",
"guide4": "취소내역은 최대 3일 이후 확인 가능합니다.",
"guide5": "입금 후 취소 프로세스 :\n가맹점의 취소요청 -> 가맹점의입금 -> 입금 확인 -> 취소 처리",
"guide6": "정산받지 않은 거래인 경우 service@nicepay.co.kr로 거래내역을 발송바랍니다. (단. 정산예정일이 2일 이상 남은 거래에 한함)"
},
"partCancel": {
"balance": "잔액",
"cancelAmount": "취소금액",
"taxableAmount": "과세액",
"taxAmount": "부가세",
"taxFree": "면세",
"serviceFee": "봉사료"
}
}
},
"cashReceipt": {
"title": "현금영수증",