From f57d735a495a63e87f619063f6c57b2ad44153df Mon Sep 17 00:00:00 2001 From: HrithikSampson Date: Fri, 4 Oct 2024 16:15:00 +0530 Subject: [PATCH] quadratic funding toast on donate success page --- lang/ca.json | 9 +++-- lang/en.json | 9 +++-- lang/es.json | 9 +++-- src/apollo/gql/gqlQF.ts | 1 + src/components/modals/PassportModal.tsx | 2 +- src/components/views/donate/DonateIndex.tsx | 5 +-- .../views/donate/OneTime/DonateModal.tsx | 5 +-- src/components/views/donate/QFToast.tsx | 38 +++++++++++++------ 8 files changed, 46 insertions(+), 32 deletions(-) diff --git a/lang/ca.json b/lang/ca.json index fa5b4f6e37..b233e82f4c 100644 --- a/lang/ca.json +++ b/lang/ca.json @@ -1352,12 +1352,12 @@ "page.donate.matching_toast.bottom_invalid_p2": "són elegibles per a l'aparellament.", "page.donate.matching_toast.bottom_valid": "Els fons de finançament es destinaran al projecte seleccionat després que acabi la ronda. Dona a més projectes per rebre més finançament!", "page.donate.network_not_eligible_for_qf": "Les donacions de {network} no són aptes per coincidir", - "page.donate.passport_toast.description.eligible": "La teva donació és elegible per ser emparellada! Després del", - "page.donate.passport_toast.description.eligible_2": ", totes les donacions seran revisades per a la protecció contra frau i els fons d'emparellament seran enviats als projectes. Estigues atent a les notificacions :)", - "page.donate.passport_toast.description.non_eligible": "Obtén el teu emparellament de donació amb finançament quadràtic!\nComproveu la vostra elegibilitat QF abans", + "page.donate.passport_toast.description.eligible": "Sou elegible per a QF! Sempre que les vostres donacions siguin almenys $", + "page.donate.passport_toast.description.eligible_2": ", són aptes per ser emparellats", + "page.donate.passport_toast.description.non_eligible": "Les donacions superiors a ${usd_value} són aptes per ser igualades amb finançament quadràtic.\nVerifiqueu la vostra elegibilitat de QF abans", "page.donate.passport_toast.description.not_connected": "Obtén el teu emparellament de donació amb finançament quadràtic!\nVerifica el teu Gitcoin Passport abans de", "page.donate.passport_toast.title.eligible": "Finançament Quadràtic", - "page.donate.passport_toast.title.non_eligible": "No et perdis l'emparellament!", + "page.donate.passport_toast.title.non_eligible": "No us ho perdeu!", "page.donate.project_not_eligible_for_qf": "El projecte no és elegible per a la concordança QF.", "page.donate.project_not_givbacks_eligible": "El projecte no és elegible per a GIVbacks", "page.donate.title": "Donar", @@ -1709,6 +1709,7 @@ "public-goods": "Béns públics", "qf_donor_eligibility.banner.link.check_eligibility": "Comprovar elegibilitat", "qf_donor_eligibility.banner.link.recheck_eligibility": "Re-comprovar elegibilitat", + "qf_donor_eligibility.banner.link.back_to_project": "Tornar als projectes", "real-estate": "Béns immobles", "refi": "Refi", "registered-non-profits": "Organitzacions sense ànim de lucre", diff --git a/lang/en.json b/lang/en.json index c81997f83b..b483e9fc2d 100644 --- a/lang/en.json +++ b/lang/en.json @@ -1352,12 +1352,12 @@ "page.donate.matching_toast.bottom_invalid_p2": "are eligible for matching.", "page.donate.matching_toast.bottom_valid": "Matching funds will be sent to the selected project after the round ends. Donate to more projects to receive higher matching!", "page.donate.network_not_eligible_for_qf": "{network} donations aren’t eligible for matching", - "page.donate.passport_toast.description.eligible": "Your donation is eligible to be matched! After the", - "page.donate.passport_toast.description.eligible_2": ", all donations will be reviewed for fraud protection and matching funds will be sent to the projects. Stay tuned for notifications :)", - "page.donate.passport_toast.description.non_eligible": "Get your donation matched with quadratic funding!\nCheck your QF Eligibility before", + "page.donate.passport_toast.description.eligible": "You are QF-eligible! As long as your donations are at least $", + "page.donate.passport_toast.description.eligible_2": ", they are eligible to be matched in ", + "page.donate.passport_toast.description.non_eligible": "Donations above ${usd_value} are eligible to be matched with quadratic funding.\nVerify your QF Eligibility before ", "page.donate.passport_toast.description.not_connected": "Get your donation matched with quadratic funding!\nVerify your Gitcoin Passport before", "page.donate.passport_toast.title.eligible": "Quadratic Funding", - "page.donate.passport_toast.title.non_eligible": "Don’t miss out on matching!", + "page.donate.passport_toast.title.non_eligible": "Don't miss out!", "page.donate.project_not_eligible_for_qf": "Project is not eligible for QF matching.", "page.donate.project_not_givbacks_eligible": "Project is not GIVbacks eligible", "page.donate.title": "Donate", @@ -1710,6 +1710,7 @@ "public-goods": "Public Goods", "qf_donor_eligibility.banner.link.check_eligibility": "Check Eligibility", "qf_donor_eligibility.banner.link.recheck_eligibility": "Re-check Eligibility", + "qf_donor_eligibility.banner.link.back_to_project": "Back to projects", "real-estate": "Real Estate", "refi": "Refi", "registered-non-profits": "Registered Non Profits", diff --git a/lang/es.json b/lang/es.json index 757a50adb2..c610faf2d6 100644 --- a/lang/es.json +++ b/lang/es.json @@ -1352,12 +1352,12 @@ "page.donate.matching_toast.bottom_invalid_p2": "son subvencionables.", "page.donate.matching_toast.bottom_valid": "Los fondos de emparejamiento se enviarán al proyecto seleccionado después de que termine la ronda. ¡Dona a más proyectos para recibir un mayor emparejamiento!", "page.donate.network_not_eligible_for_qf": "Las donaciones de {network} no son elegibles para igualar", - "page.donate.passport_toast.description.eligible": "¡Tu donación es elegible para ser complementada! Después de la", - "page.donate.passport_toast.description.eligible_2": ", todas las donaciones serán revisadas para protección contra fraudes y los fondos de complementarios se enviarán a los proyectos. ¡Mantente atento a las notificaciones! :)", - "page.donate.passport_toast.description.non_eligible": "¡Haz que tu donación sea complementada con financiamiento cuadrático!\nCompruebe su elegibilidad QF antes de", + "page.donate.passport_toast.description.eligible": "¡Eres elegible para QF! Siempre que tus donaciones sean de al menos $", + "page.donate.passport_toast.description.eligible_2": ", son elegibles para ser emparejados en", + "page.donate.passport_toast.description.non_eligible": "Las donaciones superiores a ${usd_value} son elegibles para ser igualadas con fondos cuadráticos.\nVerifique su elegibilidad para QF antes", "page.donate.passport_toast.description.not_connected": "¡Haz que tu donación sea complementada con financiamiento cuadrático! Verifica tu Gitcoin Passport antes de", "page.donate.passport_toast.title.eligible": "Financiamiento Cuadrático", - "page.donate.passport_toast.title.non_eligible": "¡No te pierdas la oportunidad!", + "page.donate.passport_toast.title.non_eligible": "¡No te lo pierdas!", "page.donate.project_not_eligible_for_qf": "El proyecto no es elegible para la financiación QF.", "page.donate.project_not_givbacks_eligible": "El proyecto no es elegible para GIVbacks", "page.donate.title": "Donar", @@ -1710,6 +1710,7 @@ "public-goods": "Bienes públicos", "qf_donor_eligibility.banner.link.check_eligibility": "Verificar elegibilidad", "qf_donor_eligibility.banner.link.recheck_eligibility": "Re-verificar elegibilidad", + "qf_donor_eligibility.banner.link.back_to_project": "Volver a proyectos", "real-estate": "Bienes Raíces", "refi": "Refi", "registered-non-profits": "Organizaciones sin ánimo de lucro", diff --git a/src/apollo/gql/gqlQF.ts b/src/apollo/gql/gqlQF.ts index e3686d6b17..aa165d145a 100644 --- a/src/apollo/gql/gqlQF.ts +++ b/src/apollo/gql/gqlQF.ts @@ -18,6 +18,7 @@ export const QF_ROUNDS_QUERY = ` allocatedFundUSDPreferred allocatedTokenSymbol minMBDScore + minimumValidUsdValue } `; diff --git a/src/components/modals/PassportModal.tsx b/src/components/modals/PassportModal.tsx index 1f843431b4..64fdeb0efc 100644 --- a/src/components/modals/PassportModal.tsx +++ b/src/components/modals/PassportModal.tsx @@ -296,7 +296,7 @@ const PassportModal: FC = props => { size={10} /> ) : ( - (passportScore ?? '--') + passportScore ?? '--' )} diff --git a/src/components/views/donate/DonateIndex.tsx b/src/components/views/donate/DonateIndex.tsx index f6f38df6ff..7602a5a6b6 100644 --- a/src/components/views/donate/DonateIndex.tsx +++ b/src/components/views/donate/DonateIndex.tsx @@ -157,10 +157,7 @@ const DonateIndex: FC = () => { if (!transactionId) return; const includeInQF = - activeStartedRound && - !!getDonationById.valueUsd && - getDonationById.valueUsd >= - (activeStartedRound?.minimumValidUsdValue || 0); + activeStartedRound && !!getDonationById.valueUsd; setSuccessDonation({ txHash: [ { diff --git a/src/components/views/donate/OneTime/DonateModal.tsx b/src/components/views/donate/OneTime/DonateModal.tsx index 5056cf274d..923bd350b9 100644 --- a/src/components/views/donate/OneTime/DonateModal.tsx +++ b/src/components/views/donate/OneTime/DonateModal.tsx @@ -138,10 +138,7 @@ const DonateModal: FC = props => { formatUnits(amount, token.decimals), token.decimals, ) || 0); - const includeInQF = - activeStartedRound && - isOnEligibleNetworks && - donationUsdValue >= (activeStartedRound.minimumValidUsdValue || 0); + const includeInQF = activeStartedRound && isOnEligibleNetworks; const chainvineReferred = getWithExpiry(StorageLabel.CHAINVINEREFERRED); const { title, addresses } = project || {}; diff --git a/src/components/views/donate/QFToast.tsx b/src/components/views/donate/QFToast.tsx index 0ee603faf3..3039b53600 100644 --- a/src/components/views/donate/QFToast.tsx +++ b/src/components/views/donate/QFToast.tsx @@ -10,6 +10,7 @@ import { FlexCenter, } from '@giveth/ui-design-system'; import { useIntl } from 'react-intl'; +import { useRouter } from 'next/router'; import { EQFElegibilityState, usePassport } from '@/hooks/usePassport'; import PassportModal from '@/components/modals/PassportModal'; @@ -19,6 +20,7 @@ const QFToast = () => { usePassport(); const { qfEligibilityState, passportState, passportScore, currentRound } = info; + const router = useRouter(); const [showModal, setShowModal] = useState(false); const isEligible = qfEligibilityState === EQFElegibilityState.ELIGIBLE; @@ -46,23 +48,25 @@ const QFToast = () => { formatMessage({ id: 'page.donate.passport_toast.description.eligible', }) + - ' ' + - currentRound?.name + + currentRound?.minimumValidUsdValue + ' ' + formatMessage({ - id: 'label.ends_on', + id: 'page.donate.passport_toast.description.eligible_2', }) + ' ' + - endDate + - formatMessage({ - id: 'page.donate.passport_toast.description.eligible_2', - }); + currentRound?.name + + '.'; } else { description = ( <> - {formatMessage({ - id: 'page.donate.passport_toast.description.non_eligible', - })}{' '} + {formatMessage( + { + id: 'page.donate.passport_toast.description.non_eligible', + }, + { + usd_value: currentRound?.minimumValidUsdValue, + }, + )}{' '} {endDate} ); @@ -75,7 +79,19 @@ const QFToast = () => { {title} {description} - {!isEligible && ( + {isEligible ? ( + +