Bank Logov1.0.0
لوگوی بانکهای ایران. بانک را از شناسه، از ۶ رقمِ اولِ شماره کارت یا از کدِ بانک در شبا پیدا میکند، پس کافی است همان مقدارِ فیلد را بدهید. تا بانک شناخته نشود چیزی نشان نمیدهد؛ برای فیلدِ شماره کارت، انتقال وجه، کارتهای ذخیرهشده و فهرستِ حسابها.
این کامپوننت فعلاً برای ۱ فریمورک از ۴ فریمورک آماده است.
این نمونه هنوز برای Vue پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
این نمونه هنوز برای Svelte پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
این نمونه هنوز برای Angular پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
نصب
با CLI اختصاصی digdesign کامپوننت را از رجیستری دیگ نصب کنید؛ وابستگیها و فایلها خودکار اضافه میشوند.
npx digdesign@latest add https://docs.digdesign.ir/r/bank-logo.jsonpnpm dlx digdesign@latest add https://docs.digdesign.ir/r/bank-logo.jsonyarn dlx digdesign@latest add https://docs.digdesign.ir/r/bank-logo.jsonbunx --bun digdesign@latest add https://docs.digdesign.ir/r/bank-logo.jsonاین کامپوننت هنوز برای Vue پورت نشده است.
نسخهٔ ریاکت آماده است؛ پورت این فریمورک در دست کار است.
این کامپوننت هنوز برای Svelte پورت نشده است.
نسخهٔ ریاکت آماده است؛ پورت این فریمورک در دست کار است.
این کامپوننت هنوز برای Angular پورت نشده است.
نسخهٔ ریاکت آماده است؛ پورت این فریمورک در دست کار است.
استفاده
import { BankLogo } from "@/components/ui/bank-logo"
<BankLogo cardNumber="6104337852109675" showName />این کامپوننت هنوز برای Vue پورت نشده است.
نسخهٔ ریاکت آماده است؛ پورت این فریمورک در دست کار است.
این کامپوننت هنوز برای Svelte پورت نشده است.
نسخهٔ ریاکت آماده است؛ پورت این فریمورک در دست کار است.
این کامپوننت هنوز برای Angular پورت نشده است.
نسخهٔ ریاکت آماده است؛ پورت این فریمورک در دست کار است.
ترکیب اجزا
یکی از سه پراپ را بدهید: bank (شناسه، مثل mellat)، cardNumber یا sheba. ارقامِ فارسی و فاصله پذیرفته میشوند. showName نامِ کوتاهِ بانک را بعد از لوگو میآورد.
لوگوها SVGهای دیگچهاند در public/logos/banks/<id>.svg. اگر جای دیگری میزبانی میکنید logoBasePath را بدهید. بانکی که لوگو ندارد آیکونِ عمومیِ بانک میگیرد. برای منطقِ فرم از getBankByCard و getBankBySheba استفاده کنید؛ فهرستِ کامل در IRANIAN_BANKS است.
نئوبانکها (بلو، ویپاد، بانکینو، هیبانک، باجت، کیوبانک) هم لوگو دارند ولی کارتشان با پیششمارهٔ بانکِ مادر صادر میشود؛ پس از روی شماره کارت بانکِ مادر شناخته میشود و نئوبانک را با bank="blu" نشان دهید (مثلاً در فهرستِ حسابها). parent بانکِ مادر را میگوید.
دسترسپذیری
- لوگو role="img" با نامِ کاملِ بانک (مثلاً «بانک ملت») در aria-label است، پس صفحهخوان بانک را میخواند.
- با showName نامِ دیدهشده از صفحهخوان پنهان است تا نامِ بانک دو بار خوانده نشود.
- تا بانک شناخته نشود چیزی رندر نمیشود؛ برای خطای «بانک ناشناخته» از invalid و errorMessageِ همان فیلد استفاده کنید.
نمونهها
فیلد شماره کارت
این نمونه هنوز برای Vue پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
این نمونه هنوز برای Svelte پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
این نمونه هنوز برای Angular پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
فیلد شبا
این نمونه هنوز برای Vue پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
این نمونه هنوز برای Svelte پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
این نمونه هنوز برای Angular پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
فهرست حسابها
این نمونه هنوز برای Vue پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
این نمونه هنوز برای Svelte پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
این نمونه هنوز برای Angular پورت نشده است؛ آنچه میبینید نسخهٔ ریاکت است.
کدام نمونه برای کدام موقعیت
| نمونه | کجا به کار میآید |
|---|---|
| فیلد شماره کارت | کارت به کارت: لوگو و نامِ بانک با تایپِ ۶ رقمِ اول |
| فیلد شبا | برداشت به حساب: بانک از کدِ بانک در شبا |
| فهرست حسابها | حسابها و کارتهای ذخیرهشده با لوگوی بانک |
دستورالعمل استفاده
بانک را از خودِ شماره پیدا کنید، نه از کاربر
انجام بده
BankLogo داخلِ endContentِ فیلد، با تایپِ ۶ رقمِ اول بانک را نشان میدهد و کاربر اشتباه را همانجا میبیند.
انجام نده
پرسیدنِ «بانک مقصد» با یک Select جدا، کارِ اضافه و منبعِ خطاست؛ شماره کارت خودش بانک را میگوید.