Files
nice-app-web/src/entities/additional-service/model/ars/constant.ts
Jay Sheen ee932f2a46 Add i18n localization foundation to additional-service entity
- Convert 10 constant files to i18n-compatible getter functions:
  - ars/constant.ts: ARS status codes and payment methods
  - sms-payment/constant.ts: SMS payment status codes
  - link-pay/constant.ts: Link payment status codes
  - account-holder-auth/constant.ts: Account holder verification
  - account-holder-search/constant.ts: Account holder search types
  - face-auth/constant.ts: Face authentication types
  - fund-account/constant.ts: Fund account status codes
  - alimtalk/constant.ts: Alimtalk status and transaction types
  - payout/constant.ts: Payout search types
  - key-in/constant.ts: Key-in cancel types

- Refactor lib/payment-status-utils.ts to curried functions with TFunction

- Add 63 translation keys to additionalService namespace in ko.json/en.json

- Localize 2 UI components as examples:
  - ui/filter/ars-filter.tsx
  - ui/ars/resend-sms-bottom-sheet.tsx

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-30 18:06:52 +09:00

33 lines
1.5 KiB
TypeScript

import { TFunction } from 'i18next';
import { ArsPaymentMethod, OrderStatus, PaymentStatus } from './types';
export const getArsPaymentStatusBtnGroup = (t: TFunction) => [
{name: t('transaction.constants.all'), value: PaymentStatus.ALL },
{name: t('additionalService.ars.paymentComplete'), value: PaymentStatus.COMPLETE },
{name: t('additionalService.ars.unpaid'), value: PaymentStatus.UNPAID }
];
export const getArsOrderStatusBtnGroup = (t: TFunction) => [
{name: t('transaction.constants.all'), value: OrderStatus.ALL },
{name: t('additionalService.ars.pendingPayment'), value: OrderStatus.PENDING },
{name: t('additionalService.ars.paymentSuccess'), value: OrderStatus.SUCCESS },
{name: t('additionalService.ars.expired'), value: OrderStatus.EXPIRED },
{name: t('additionalService.ars.canceled'), value: OrderStatus.CANCELED },
];
export const getArsPaymentMethodBtnGroup = (t: TFunction) => [
{name: 'SMS', value: ArsPaymentMethod.SMS },
{name: 'ARS', value: ArsPaymentMethod.ARS },
];
export const getArsPaymentStatusName = (t: TFunction) => (status?: string): string => {
if (!status) return '';
const found = getArsPaymentStatusBtnGroup(t).find(item => item.value === status);
return found ? found.name : status;
}
export const getArsOrderStatusName = (t: TFunction) => (status?: string): string => {
if (!status) return '';
const found = getArsOrderStatusBtnGroup(t).find(item => item.value === status);
return found ? found.name : status;
}