From 129df659b2ddedf2c2e0e8505e1df643e8c42e71 Mon Sep 17 00:00:00 2001 From: "nabijonovdavronbek619@gmail.com" Date: Fri, 3 Apr 2026 20:57:13 +0500 Subject: [PATCH] vercel error fixed --- src/app/favicon.ico | Bin 0 -> 15406 bytes src/widgets/detail/paidStatus.tsx | 60 ++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 src/app/favicon.ico create mode 100644 src/widgets/detail/paidStatus.tsx diff --git a/src/app/favicon.ico b/src/app/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..8d5dd27bc8693730a86702f59583ab9b0fd82494 GIT binary patch literal 15406 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 Z-00dR_h0xQ*6ZH&|L6X{2mY!a_&=&}fqMV| literal 0 HcmV?d00001 diff --git a/src/widgets/detail/paidStatus.tsx b/src/widgets/detail/paidStatus.tsx new file mode 100644 index 0000000..dfd6d03 --- /dev/null +++ b/src/widgets/detail/paidStatus.tsx @@ -0,0 +1,60 @@ +'use client'; + +import { useLocale } from 'next-intl'; // or your i18n library that exposes `locale` + +// ─── Types ──────────────────────────────────────────────────────────────────── +type PaymentStatusValue = 'paid' | 'unpaid'; + +interface PaymentStatusProps { + status: PaymentStatusValue; +} + +// ─── Translations ───────────────────────────────────────────────────────────── +const translations: Record> = { + uz: { + paid: "To'langan", + unpaid: "To'lanmagan", + }, + ru: { + paid: 'Оплачено', + unpaid: 'Не оплачено', + }, + en: { + paid: 'Paid', + unpaid: 'Unpaid', + }, +}; + +// ─── Component ──────────────────────────────────────────────────────────────── +export default function PaymentStatus({ status }: PaymentStatusProps) { + const locale = useLocale(); // reads "locale" key from your i18n library + const lang = translations[locale] ?? translations['en']; + const label = lang[status]; + + const isPaid = status === 'paid'; + + return ( + + {/* dot indicator */} + + {label} + + ); +}