From f7879485effc944f3196c6107cce88d960d0ef3d Mon Sep 17 00:00:00 2001 From: smanylov Date: Sat, 14 Mar 2026 10:49:07 +0700 Subject: [PATCH] add validation message for back card input --- package.json | 2 +- .../setting-referral-program.tsx | 31 ++++++++++++++++--- src/i18n/messages/en.json | 1 + src/i18n/messages/ru.json | 1 + 4 files changed, 30 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 876d538..d6c179f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "no-copy-frontend", - "version": "0.60.0", + "version": "0.61.0", "private": true, "scripts": { "dev": "next dev -p 2999", diff --git a/src/app/ui/referral-page/setting-referral-program.tsx b/src/app/ui/referral-page/setting-referral-program.tsx index 22ae97e..fe0c6eb 100644 --- a/src/app/ui/referral-page/setting-referral-program.tsx +++ b/src/app/ui/referral-page/setting-referral-program.tsx @@ -12,7 +12,8 @@ import valid from 'card-validator'; interface cardInfoType { cardType: string, - potentiallyValid: boolean + potentiallyValid: boolean, + cardValid?: boolean } export default function SettingReferralProgram() { @@ -51,6 +52,7 @@ export default function SettingReferralProgram() { setFormState(state); if (state?.success) { toast.success('success'); + setIsEditing(false); queryClient.invalidateQueries({ queryKey: ['payoutMethods'] }); } @@ -103,10 +105,23 @@ export default function SettingReferralProgram() { if (numberValidation.card) { setCardInfo({ cardType: numberValidation.card.type, - potentiallyValid: numberValidation.isPotentiallyValid + potentiallyValid: numberValidation.isPotentiallyValid, + cardValid: true }); } + if (e.target.value.length === 19 && !numberValidation.isValid) { + setCardInfo((prev) => { + if (prev) { + return { + ...prev, + cardValid: false + } + } + return null; + }) + } + if (validatedField.success) { setFormState(prevState => { if (!prevState?.error || !prevState?.error[fieldName]) { @@ -195,8 +210,9 @@ export default function SettingReferralProgram() { bankCardState={defaultCardNumber?.cardNumber} validateHandler={onChangeHandler} disabled={!isEditing} - isValid={cardInfo?.potentiallyValid} + isValid={cardInfo?.cardValid} /> + {/* */} {cardInfo && (
)}
+ {cardInfo?.cardValid === false && ( +

+ + {t('bank-card-not-valid')} + +

+ )} {formState?.error?.bankCard && (

{ @@ -247,7 +270,7 @@ export default function SettingReferralProgram() {