diff --git a/src/locales/en.json b/src/locales/en.json index c293399..4ea605c 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -14,7 +14,8 @@ "loading": "Loading...", "error": "An error occurred", "success": "Success", - "noData": "No data available" + "noData": "No data available", + "next": "Next" }, "menu": { "home": "Home", @@ -275,5 +276,22 @@ "download": "Download", "cancelTransaction": "Cancel Transaction", "confirmCancel": "Do you want to cancel this transaction?" + }, + "cashReceipt": { + "title": "Cash Receipt", + "detailTitle": "Cash Receipt Details", + "manualIssuance": "Manual Issuance", + "approval": "Approved", + "changePurpose": "Change Purpose", + "issue": "Issue" + }, + "escrow": { + "title": "Escrow", + "detailTitle": "Escrow Details" + }, + "billing": { + "title": "Billing", + "detailTitle": "Billing Details", + "charge": "Billing Charge" } } \ No newline at end of file diff --git a/src/locales/ko.json b/src/locales/ko.json index 12414c0..1764335 100644 --- a/src/locales/ko.json +++ b/src/locales/ko.json @@ -14,7 +14,8 @@ "loading": "로딩중...", "error": "오류가 발생했습니다", "success": "성공", - "noData": "데이터가 없습니다" + "noData": "데이터가 없습니다", + "next": "다음" }, "menu": { "home": "홈", @@ -279,5 +280,22 @@ "download": "다운로드", "cancelTransaction": "거래 취소", "confirmCancel": "거래를 취소하시겠습니까?" + }, + "cashReceipt": { + "title": "현금영수증", + "detailTitle": "현금영수증 상세", + "manualIssuance": "수기 발행", + "approval": "승인", + "changePurpose": "용도 변경", + "issue": "발행" + }, + "escrow": { + "title": "에스크로", + "detailTitle": "에스크로 상세" + }, + "billing": { + "title": "빌링", + "detailTitle": "빌링 상세", + "charge": "빌링 청구" } } \ No newline at end of file diff --git a/src/pages/transaction/billing/charge-page.tsx b/src/pages/transaction/billing/charge-page.tsx index c66eec4..403f865 100644 --- a/src/pages/transaction/billing/charge-page.tsx +++ b/src/pages/transaction/billing/charge-page.tsx @@ -1,4 +1,5 @@ import { ChangeEvent, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { PATHS } from '@/shared/constants/paths'; import { IMAGE_ROOT } from '@/shared/constants/common'; import { useNavigate } from '@/shared/lib/hooks/use-navigate'; @@ -18,6 +19,7 @@ import { notiBar, snackBar } from '@/shared/lib'; export const BillingChargePage = () => { const { navigate } = useNavigate(); + const { t } = useTranslation(); const [billKey, setBillKey] = useState(''); const [productName, setProductName] = useState(''); @@ -30,7 +32,7 @@ export const BillingChargePage = () => { const [calendarOpen, setCalendarOpen] = useState(false); - useSetHeaderTitle('빌링 결제 신청'); + useSetHeaderTitle(t('billing.charge')); useSetHeaderType(HeaderType.RightClose); useSetOnBack(() => { navigate(PATHS.transaction.billing.list); diff --git a/src/pages/transaction/billing/detail-page.tsx b/src/pages/transaction/billing/detail-page.tsx index 6eff76e..49afef9 100644 --- a/src/pages/transaction/billing/detail-page.tsx +++ b/src/pages/transaction/billing/detail-page.tsx @@ -1,4 +1,5 @@ import { useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { useLocation } from 'react-router'; import { PATHS } from '@/shared/constants/paths'; import { useNavigate } from '@/shared/lib/hooks/use-navigate'; @@ -24,6 +25,7 @@ import { AmountInfoSection } from '@/entities/transaction/ui/section/amount-info export const BillingDetailPage = () => { const { navigate } = useNavigate(); + const { t, i18n } = useTranslation(); const location = useLocation(); const tid = location?.state.tid; const serviceCode = location?.state.serviceCode; @@ -32,7 +34,7 @@ export const BillingDetailPage = () => { const [billingInfo, setBillingInfo] = useState(); const [amountInfo, setAmountInfo] = useState(); - useSetHeaderTitle('빌링 상세'); + useSetHeaderTitle(t('billing.detailTitle')); useSetHeaderType(HeaderType.RightClose); useSetOnBack(() => { navigate(PATHS.transaction.billing.list); @@ -67,12 +69,13 @@ export const BillingDetailPage = () => {
+ { i18n.language === 'en' && { t('home.currencySymbol') } } - + { i18n.language !== 'en' && { t('home.currencyWon') } }
diff --git a/src/pages/transaction/billing/list-page.tsx b/src/pages/transaction/billing/list-page.tsx index 2eaf8ec..7b48d4c 100644 --- a/src/pages/transaction/billing/list-page.tsx +++ b/src/pages/transaction/billing/list-page.tsx @@ -1,5 +1,6 @@ import moment from 'moment'; import { useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { useStore } from '@/shared/model/store'; import { IMAGE_ROOT } from '@/shared/constants/common'; import { PATHS } from '@/shared/constants/paths'; @@ -33,6 +34,7 @@ import useIntersectionObserver from '@/widgets/intersection-observer'; export const BillingListPage = () => { const { navigate } = useNavigate(); + const { t } = useTranslation(); const userMid = useStore.getState().UserStore.mid; const [onActionIntersect, setOnActionIntersect] = useState(false); @@ -54,7 +56,7 @@ export const BillingListPage = () => { const [downloadBottomSheetOn, setDownloadBottomSheetOn] = useState(false); - useSetHeaderTitle('빌링'); + useSetHeaderTitle(t('billing.title')); useSetHeaderType(HeaderType.LeftArrow); useSetOnBack(() => { navigate(PATHS.home); @@ -176,19 +178,19 @@ export const BillingListPage = () => { readOnly={ true } />
diff --git a/src/pages/transaction/cash-receipt/detail-page.tsx b/src/pages/transaction/cash-receipt/detail-page.tsx index e6d6110..455e8a7 100644 --- a/src/pages/transaction/cash-receipt/detail-page.tsx +++ b/src/pages/transaction/cash-receipt/detail-page.tsx @@ -1,4 +1,5 @@ import { useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { useLocation } from 'react-router'; import { PATHS } from '@/shared/constants/paths'; import { useNavigate } from '@/shared/lib/hooks/use-navigate'; @@ -31,6 +32,7 @@ import { snackBar } from '@/shared/lib'; export const CashReceiptDetailPage = () => { const { navigate, reload } = useNavigate(); + const { t } = useTranslation(); const location = useLocation(); const [amountInfo, setAmountInfo] = useState(); @@ -42,8 +44,8 @@ export const CashReceiptDetailPage = () => { const [purposeType, setPurposeType] = useState(); const [canDownloadReceipt, setCanDownloadReceipt] = useState(false); - - useSetHeaderTitle('현금영수증 상세'); + + useSetHeaderTitle(t('cashReceipt.detailTitle')); useSetHeaderType(HeaderType.RightClose); useSetOnBack(() => { navigate(PATHS.transaction.cashReceipt.list); @@ -140,10 +142,10 @@ export const CashReceiptDetailPage = () => { { (issueInfo?.transactionType === CashReceiptTransactionType.APPROVAL) && (issueInfo?.processResult === '발급완료') &&
- + >{ t('cashReceipt.changePurpose') }
} diff --git a/src/pages/transaction/cash-receipt/hand-written-issuance-page.tsx b/src/pages/transaction/cash-receipt/hand-written-issuance-page.tsx index 64f7cc1..2f481a0 100644 --- a/src/pages/transaction/cash-receipt/hand-written-issuance-page.tsx +++ b/src/pages/transaction/cash-receipt/hand-written-issuance-page.tsx @@ -1,4 +1,5 @@ import { useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { PATHS } from '@/shared/constants/paths'; import { useNavigate } from '@/shared/lib/hooks/use-navigate'; import { CashReceiptHandWrittenIssuanceStep1 } from '@/entities/transaction/ui/cash-receipt-hand-written-issuance-step1'; @@ -13,6 +14,7 @@ import { snackBar } from '@/shared/lib'; export const CashReceitHandWrittenIssuancePage = () => { const { navigate } = useNavigate(); + const { t } = useTranslation(); let businessInfo = useStore.getState().UserStore.businessInfo; let userMid = useStore.getState().UserStore.mid; // 1 or 2 @@ -30,7 +32,7 @@ export const CashReceitHandWrittenIssuancePage = () => { const [taxFreeAmount, setTaxFreeAmount] = useState(0); const [serviceCharge, setServiceCharge] = useState(0); - useSetHeaderTitle('수기 발행'); + useSetHeaderTitle(t('cashReceipt.manualIssuance')); useSetHeaderType(HeaderType.RightClose); useSetFooterMode(false); @@ -172,12 +174,12 @@ export const CashReceitHandWrittenIssuancePage = () => { }
-
diff --git a/src/pages/transaction/cash-receipt/list-page.tsx b/src/pages/transaction/cash-receipt/list-page.tsx index 4843395..b710b61 100644 --- a/src/pages/transaction/cash-receipt/list-page.tsx +++ b/src/pages/transaction/cash-receipt/list-page.tsx @@ -1,5 +1,6 @@ import moment from 'moment'; import { useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { NumericFormat } from 'react-number-format'; import { IMAGE_ROOT } from '@/shared/constants/common'; import { PATHS } from '@/shared/constants/paths'; @@ -37,6 +38,7 @@ import useIntersectionObserver from '@/widgets/intersection-observer'; export const CashReceiptListPage = () => { const { navigate } = useNavigate(); + const { t, i18n } = useTranslation(); const userMid = useStore.getState().UserStore.mid; const [onActionIntersect, setOnActionIntersect] = useState(false); @@ -60,7 +62,7 @@ export const CashReceiptListPage = () => { const [emailBottomSheetOn, setEmailBottomSheetOn] = useState(false); - useSetHeaderTitle('현금영수증'); + useSetHeaderTitle(t('cashReceipt.title')); useSetHeaderType(HeaderType.LeftArrow); useSetOnBack(() => { navigate(PATHS.home); @@ -199,7 +201,7 @@ export const CashReceiptListPage = () => { @@ -207,20 +209,21 @@ export const CashReceiptListPage = () => {
- 승인 + { t('cashReceipt.approval') } @@ -234,13 +237,14 @@ export const CashReceiptListPage = () => {
- 취소 + { t('common.cancel') } diff --git a/src/pages/transaction/escrow/detail-page.tsx b/src/pages/transaction/escrow/detail-page.tsx index 0752c8f..ff3b2f3 100644 --- a/src/pages/transaction/escrow/detail-page.tsx +++ b/src/pages/transaction/escrow/detail-page.tsx @@ -1,4 +1,5 @@ import { useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { useLocation } from 'react-router'; import { PATHS } from '@/shared/constants/paths'; import { useNavigate } from '@/shared/lib/hooks/use-navigate'; @@ -35,6 +36,7 @@ import { AmountInfoSection } from '@/entities/transaction/ui/section/amount-info export const EscrowDetailPage = () => { const { navigate } = useNavigate(); + const { t } = useTranslation(); const location = useLocation(); const paramTid = location?.state.tid; const serviceCode = location?.state.serviceCode; @@ -60,7 +62,7 @@ export const EscrowDetailPage = () => { const [orderNumber, setOrderNumber] = useState(); const [tid, setTid] = useState(paramTid); - useSetHeaderTitle('에스크로 상세'); + useSetHeaderTitle(t('escrow.detailTitle')); useSetHeaderType(HeaderType.RightClose); useSetOnBack(() => { navigate(PATHS.transaction.escrow.list); diff --git a/src/pages/transaction/escrow/list-page.tsx b/src/pages/transaction/escrow/list-page.tsx index 294a293..0b52a2d 100644 --- a/src/pages/transaction/escrow/list-page.tsx +++ b/src/pages/transaction/escrow/list-page.tsx @@ -1,5 +1,6 @@ import moment from 'moment'; import { useEffect, useState } from 'react'; +import { useTranslation } from 'react-i18next'; import { useStore } from '@/shared/model/store'; import { IMAGE_ROOT } from '@/shared/constants/common'; import { PATHS } from '@/shared/constants/paths'; @@ -32,6 +33,7 @@ import useIntersectionObserver from '@/widgets/intersection-observer'; export const EscrowListPage = () => { const { navigate } = useNavigate(); + const { t } = useTranslation(); const userInfo = useStore((state) => state.UserStore.userInfo); const userMid = useStore.getState().UserStore.mid; @@ -53,7 +55,7 @@ export const EscrowListPage = () => { const [emailBottomSheetOn, setEmailBottomSheetOn] = useState(false); - useSetHeaderTitle('에스크로'); + useSetHeaderTitle(t('escrow.title')); useSetHeaderType(HeaderType.LeftArrow); useSetOnBack(() => { navigate(PATHS.home); @@ -180,19 +182,19 @@ export const EscrowListPage = () => { readOnly={ true } />