mirror of
https://github.com/MAGICGrants/campaign-site.git
synced 2026-01-08 03:53:59 -05:00
Change erc20 to evm
This commit is contained in:
@@ -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']),
|
||||
|
||||
@@ -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']),
|
||||
|
||||
@@ -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
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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,
|
||||
},
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user