Change erc20 to evm

This commit is contained in:
Artur
2025-04-30 17:25:21 -03:00
parent f5e83e1b3e
commit 5077518082
7 changed files with 41 additions and 41 deletions

View File

@@ -53,7 +53,7 @@ const paymentMethodOptions = [
{ label: 'Monero', icon: MoneroLogo, value: 'xmr' },
{ label: 'Bitcoin', icon: BitcoinLogo, value: 'btc' },
{ label: 'Litecoin', icon: LitecoinLogo, value: 'ltc' },
{ label: 'EVMs', icon: EvmIcon, value: 'erc20' },
{ label: 'EVMs', icon: EvmIcon, value: 'evm' },
] as const
function DonationPage({ fund: fundSlug, slug, project, ...props }: Props) {
@@ -67,7 +67,7 @@ function DonationPage({ fund: fundSlug, slug, project, ...props }: Props) {
name: z.string().optional(),
email: z.string().email().optional(),
amount: z.coerce.number().min(1).max(MAX_AMOUNT),
paymentMethod: z.enum(['card', 'btc', 'xmr', 'ltc', 'erc20']),
paymentMethod: z.enum(['card', 'btc', 'xmr', 'ltc', 'evm']),
taxDeductible: z.enum(['yes', 'no']),
givePointsBack: z.enum(['yes', 'no']),
showDonorNameOnLeaderboard: z.enum(['yes', 'no']),

View File

@@ -53,7 +53,7 @@ const paymentMethodOptions = [
{ label: 'Monero', icon: MoneroLogo, value: 'xmr' },
{ label: 'Bitcoin', icon: BitcoinLogo, value: 'btc' },
{ label: 'Litecoin', icon: LitecoinLogo, value: 'ltc' },
{ label: 'EVMs', icon: EvmIcon, value: 'erc20' },
{ label: 'EVMs', icon: EvmIcon, value: 'evm' },
] as const
function MembershipPage({ fund: fundSlug, project }: Props) {
@@ -63,7 +63,7 @@ function MembershipPage({ fund: fundSlug, project }: Props) {
const schema = z
.object({
amount: z.coerce.number(),
paymentMethod: z.enum(['card', 'btc', 'xmr', 'ltc', 'erc20']),
paymentMethod: z.enum(['card', 'btc', 'xmr', 'ltc', 'evm']),
term: z.enum(['monthly', 'annually']),
taxDeductible: z.enum(['yes', 'no']),
recurring: z.enum(['yes', 'no']),

View File

@@ -59,14 +59,14 @@ const Project: NextPage<SingleProjectPageProps> = ({ project, donationStats }) =
donationStats.xmr.fiatAmount +
donationStats.btc.fiatAmount +
donationStats.ltc.fiatAmount +
donationStats.erc20.fiatAmount +
donationStats.evm.fiatAmount +
donationStats.usd.fiatAmount
const totalDonationCount =
donationStats.xmr.count +
donationStats.btc.count +
donationStats.ltc.count +
donationStats.erc20.count +
donationStats.evm.count +
donationStats.manual.count +
donationStats.usd.count
@@ -128,9 +128,9 @@ const Project: NextPage<SingleProjectPageProps> = ({ project, donationStats }) =
</span>
</li>
<li>
{formatUsd(donationStats.erc20.amount)}{' '}
{formatUsd(donationStats.evm.amount)}{' '}
<span className="font-normal text-sm text-gray">
in {donationStats.erc20.count} EVM token donations
in {donationStats.evm.count} EVM token donations
</span>
</li>
<li>
@@ -213,10 +213,10 @@ export async function getServerSideProps({ params, resolvedUrl }: GetServerSideP
amount: project.isFunded ? project.totalDonationsLTC : 0,
fiatAmount: project.isFunded ? project.totalDonationsLTCInFiat : 0,
},
erc20: {
count: project.isFunded ? project.numDonationsERC20 : 0,
amount: project.isFunded ? project.totalDonationsERC20 : 0,
fiatAmount: project.isFunded ? project.totalDonationsERC20InFiat : 0,
evm: {
count: project.isFunded ? project.numDonationsEVM : 0,
amount: project.isFunded ? project.totalDonationsEVM : 0,
fiatAmount: project.isFunded ? project.totalDonationsEVMInFiat : 0,
},
manual: {
count: project.isFunded ? project.numDonationsManual : 0,
@@ -239,7 +239,7 @@ export async function getServerSideProps({ params, resolvedUrl }: GetServerSideP
BTC: donationStats.btc,
XMR: donationStats.xmr,
LTC: donationStats.ltc,
ERC20: donationStats.erc20,
EVM: donationStats.evm,
MANUAL: donationStats.manual,
} as const
@@ -252,9 +252,9 @@ export async function getServerSideProps({ params, resolvedUrl }: GetServerSideP
stats.amount += payment.netAmount
stats.fiatAmount += payment.netAmount * payment.rate
} else if (donation.coinbaseChargeId) {
cryptoCodeToStats.ERC20.count += 1
cryptoCodeToStats.ERC20.amount += payment.netAmount
cryptoCodeToStats.ERC20.fiatAmount += payment.netAmount * payment.rate
cryptoCodeToStats.EVM.count += 1
cryptoCodeToStats.EVM.amount += payment.netAmount
cryptoCodeToStats.EVM.fiatAmount += payment.netAmount * payment.rate
}
})

View File

@@ -137,7 +137,7 @@ export const donationRouter = router({
donateWithCrypto: publicProcedure
.input(
z.object({
paymentMethod: z.enum(['btc', 'xmr', 'ltc', 'erc20']),
paymentMethod: z.enum(['btc', 'xmr', 'ltc', 'evm']),
name: z.string().trim().min(1).nullable(),
email: z.string().trim().email().nullable(),
projectName: z.string().min(1),
@@ -180,7 +180,7 @@ export const donationRouter = router({
let url = ''
if (input.paymentMethod !== 'erc20') {
if (input.paymentMethod !== 'evm') {
const { data: invoice } = await btcpayApi.post<BtcPayCreateInvoiceRes>(`/invoices`, {
amount: input.amount,
currency: CURRENCY,
@@ -194,7 +194,7 @@ export const donationRouter = router({
url = invoice.checkoutLink.replace(/^(https?:\/\/)([^\/]+)/, env.BTCPAY_EXTERNAL_URL)
}
if (input.paymentMethod === 'erc20') {
if (input.paymentMethod === 'evm') {
const charge = await createCoinbaseCharge({
amountUsd: 0.1,
fundSlug: input.fundSlug,
@@ -348,7 +348,7 @@ export const donationRouter = router({
payMembershipWithCrypto: protectedProcedure
.input(
z.object({
paymentMethod: z.enum(['btc', 'xmr', 'ltc', 'erc20']),
paymentMethod: z.enum(['btc', 'xmr', 'ltc', 'evm']),
fundSlug: z.enum(fundSlugs),
amount: z.number(),
term: z.enum(['monthly', 'annually']),
@@ -412,7 +412,7 @@ export const donationRouter = router({
let url = ''
if (input.paymentMethod !== 'erc20') {
if (input.paymentMethod !== 'evm') {
const { data: invoice } = await btcpayApi.post<BtcPayCreateInvoiceRes>(`/invoices`, {
amount: input.amount,
currency: CURRENCY,
@@ -426,7 +426,7 @@ export const donationRouter = router({
url = invoice.checkoutLink.replace(/^(https?:\/\/)([^\/]+)/, env.BTCPAY_EXTERNAL_URL)
}
if (input.paymentMethod === 'erc20') {
if (input.paymentMethod === 'evm') {
const charge = await createCoinbaseCharge({
amountUsd: input.amount,
fundSlug: input.fundSlug,

View File

@@ -19,18 +19,18 @@ export const funds: Record<FundSlug, ProjectItem & { slug: FundSlug }> = {
numDonationsBTC: 0,
numDonationsXMR: 0,
numDonationsLTC: 0,
numDonationsERC20: 0,
numDonationsEVM: 0,
numDonationsFiat: 0,
numDonationsManual: 0,
totalDonationsBTC: 0,
totalDonationsXMR: 0,
totalDonationsLTC: 0,
totalDonationsERC20: 0,
totalDonationsEVM: 0,
totalDonationsFiat: 0,
totalDonationsBTCInFiat: 0,
totalDonationsXMRInFiat: 0,
totalDonationsLTCInFiat: 0,
totalDonationsERC20InFiat: 0,
totalDonationsEVMInFiat: 0,
totalDonationsManual: 0,
},
firo: {
@@ -49,18 +49,18 @@ export const funds: Record<FundSlug, ProjectItem & { slug: FundSlug }> = {
numDonationsBTC: 0,
numDonationsXMR: 0,
numDonationsLTC: 0,
numDonationsERC20: 0,
numDonationsEVM: 0,
numDonationsFiat: 0,
numDonationsManual: 0,
totalDonationsBTC: 0,
totalDonationsXMR: 0,
totalDonationsLTC: 0,
totalDonationsERC20: 0,
totalDonationsEVM: 0,
totalDonationsFiat: 0,
totalDonationsBTCInFiat: 0,
totalDonationsXMRInFiat: 0,
totalDonationsLTCInFiat: 0,
totalDonationsERC20InFiat: 0,
totalDonationsEVMInFiat: 0,
totalDonationsManual: 0,
},
privacyguides: {
@@ -84,18 +84,18 @@ export const funds: Record<FundSlug, ProjectItem & { slug: FundSlug }> = {
numDonationsBTC: 0,
numDonationsXMR: 0,
numDonationsLTC: 0,
numDonationsERC20: 0,
numDonationsEVM: 0,
numDonationsFiat: 0,
numDonationsManual: 0,
totalDonationsBTC: 0,
totalDonationsXMR: 0,
totalDonationsLTC: 0,
totalDonationsERC20: 0,
totalDonationsEVM: 0,
totalDonationsFiat: 0,
totalDonationsBTCInFiat: 0,
totalDonationsXMRInFiat: 0,
totalDonationsLTCInFiat: 0,
totalDonationsERC20InFiat: 0,
totalDonationsEVMInFiat: 0,
totalDonationsManual: 0,
},
general: {
@@ -118,18 +118,18 @@ export const funds: Record<FundSlug, ProjectItem & { slug: FundSlug }> = {
numDonationsBTC: 0,
numDonationsXMR: 0,
numDonationsLTC: 0,
numDonationsERC20: 0,
numDonationsEVM: 0,
numDonationsFiat: 0,
numDonationsManual: 0,
totalDonationsBTC: 0,
totalDonationsXMR: 0,
totalDonationsLTC: 0,
totalDonationsERC20: 0,
totalDonationsEVM: 0,
totalDonationsFiat: 0,
totalDonationsBTCInFiat: 0,
totalDonationsXMRInFiat: 0,
totalDonationsLTCInFiat: 0,
totalDonationsERC20InFiat: 0,
totalDonationsEVMInFiat: 0,
totalDonationsManual: 0,
},
}

View File

@@ -63,19 +63,19 @@ export function getProjectBySlug(slug: string, fundSlug: FundSlug) {
numDonationsBTC: data.numDonationsBTC || 0,
numDonationsXMR: data.numDonationsXMR || 0,
numDonationsLTC: data.numDonationsLTC || 0,
numDonationsERC20: data.numDonationsERC20 || 0,
numDonationsEVM: data.numDonationsEVM || 0,
numDonationsFiat: data.numDonationsFiat || 0,
numDonationsManual: data.numDonationsManual || 0,
totalDonationsBTC: data.totalDonationsBTC || 0,
totalDonationsXMR: data.totalDonationsXMR || 0,
totalDonationsLTC: data.totalDonationsLTC || 0,
totalDonationsERC20: data.totalDonationsERC20 || 0,
totalDonationsEVM: data.totalDonationsEVM || 0,
totalDonationsFiat: data.totalDonationsFiat || 0,
totalDonationsManual: data.totalDonationsManual || 0,
totalDonationsBTCInFiat: data.totalDonationsBTCInFiat || 0,
totalDonationsXMRInFiat: data.totalDonationsXMRInFiat || 0,
totalDonationsLTCInFiat: data.totalDonationsLTCInFiat || 0,
totalDonationsERC20InFiat: data.totalDonationsERC20InFiat || 0,
totalDonationsEVMInFiat: data.totalDonationsEVMInFiat || 0,
}
return project

View File

@@ -17,19 +17,19 @@ export type ProjectItem = {
numDonationsBTC: number
numDonationsXMR: number
numDonationsLTC: number
numDonationsERC20: number
numDonationsEVM: number
numDonationsFiat: number
numDonationsManual: number
totalDonationsBTC: number
totalDonationsXMR: number
totalDonationsLTC: number
totalDonationsERC20: number
totalDonationsEVM: number
totalDonationsFiat: number
totalDonationsManual: number
totalDonationsBTCInFiat: number
totalDonationsXMRInFiat: number
totalDonationsLTCInFiat: number
totalDonationsERC20InFiat: number
totalDonationsEVMInFiat: number
}
export type PayReq = {
@@ -56,7 +56,7 @@ export type ProjectDonationStats = {
amount: number
fiatAmount: number
}
erc20: {
evm: {
count: number
amount: number
fiatAmount: number