Compare commits

...

7 Commits

Author SHA1 Message Date
rish
405abb24e1 Merge pull request #35 from vaibhavmule/fix/cve-2025-66478-nextjs-security-update 2025-12-09 09:39:15 -05:00
Vaibhav Mule
c535332e30 fix: update Next.js to 15.5.7 to resolve CVE-2025-66478
- Update Next.js from ^15 to ^15.5.7 (patched version)
- Update eslint-config-next from 15.0.3 to 15.5.7 to match
- Addresses critical security vulnerability CVE-2025-66478
- Reference: https://nextjs.org/blog/CVE-2025-66478
2025-12-08 01:03:22 +05:30
veganbeef
c73b955cf9 v1.9.1 2025-12-01 09:05:38 -08:00
Lucas Myers
76396153a1 Merge pull request #33 from neynarxyz/veganbeef/fix-donation-addresses
fix: update protocol guild donation addresses to latest
2025-12-01 11:01:51 -06:00
veganbeef
36b4540e47 fix: update protocol guild donation addresses to latest 2025-12-01 09:01:00 -08:00
Lucas Myers
c5fef388b2 Merge pull request #30 from vaibhavmule/fix/add-pigment-css-react-dependency
fix: add @pigment-css/react as dependency
2025-12-01 10:49:46 -06:00
Vaibhav Mule
91658503ff fix: add @pigment-css/react as dependency
@neynar/react requires @pigment-css/react at runtime but it wasn't
included in the generated package.json, causing module resolution errors.

This fixes the issue where newly created mini apps fail with:
'Module not found: Can't resolve @pigment-css/react'
2025-11-30 13:01:09 +05:30
3 changed files with 33 additions and 13 deletions

View File

@@ -496,6 +496,7 @@ export async function init(
'@farcaster/mini-app-solana': '>=0.0.17 <1.0.0',
'@farcaster/quick-auth': '>=0.0.7 <1.0.0',
'@neynar/react': '^1.2.15',
'@pigment-css/react': '^0.0.30',
'@radix-ui/react-label': '^2.1.1',
'@solana/wallet-adapter-react': '^0.15.38',
'@tanstack/react-query': '^5.61.0',
@@ -505,7 +506,7 @@ export async function init(
dotenv: '^16.4.7',
'lucide-react': '^0.469.0',
mipd: '^0.0.7',
next: '^15',
next: '^15.5.7',
react: '^19',
'react-dom': '^19',
'tailwind-merge': '^2.6.0',
@@ -524,7 +525,7 @@ export async function init(
"@vercel/sdk": "^1.9.0",
"crypto": "^1.0.1",
"eslint": "^8",
"eslint-config-next": "15.0.3",
"eslint-config-next": "15.5.7",
"inquirer": "^10.2.2",
"pino-pretty": "^13.0.0",
"postcss": "^8",

View File

@@ -1,6 +1,6 @@
{
"name": "@neynar/create-farcaster-mini-app",
"version": "1.9.0",
"version": "1.9.1",
"type": "module",
"private": false,
"access": "public",

View File

@@ -2,7 +2,7 @@
import { useCallback, useMemo } from "react";
import { useAccount, useSendTransaction, useWaitForTransactionReceipt } from "wagmi";
import { base } from "wagmi/chains";
import { arbitrum, base, mainnet, optimism, polygon, scroll, shape, zkSync, zora } from "wagmi/chains";
import { Button } from "../Button";
import { truncateAddress } from "../../../lib/truncateAddress";
import { renderError } from "../../../lib/errorUtils";
@@ -44,18 +44,37 @@ export function SendEth() {
// --- Computed Values ---
/**
* Determines the recipient address based on the current chain.
*
* Uses different protocol guild addresses for different chains:
* - Base: 0x32e3C7fD24e175701A35c224f2238d18439C7dBC
* - Other chains: 0xB3d8d7887693a9852734b4D25e9C0Bb35Ba8a830
*
*
* Uses different protocol guild addresses for different chains.
* Defaults to Ethereum mainnet address if chain is not recognized.
* Addresses are taken from the protocol guilds documentation: https://protocol-guild.readthedocs.io/en/latest/
*
* @returns string - The recipient address for the current chain
*/
const protocolGuildRecipientAddress = useMemo(() => {
// Protocol guild address
return chainId === base.id
? "0x32e3C7fD24e175701A35c224f2238d18439C7dBC"
: "0xB3d8d7887693a9852734b4D25e9C0Bb35Ba8a830";
switch (chainId) {
case mainnet.id:
return "0x25941dC771bB64514Fc8abBce970307Fb9d477e9";
case arbitrum.id:
return "0x7F8DCFd764bA8e9B3BA577dC641D5c664B74c47b";
case base.id:
return "0xd16713A5D4Eb7E3aAc9D2228eB72f6f7328FADBD";
case optimism.id:
return "0x58ae0925077527a87D3B785aDecA018F9977Ec34";
case polygon.id:
return "0xccccEbdBdA2D68bABA6da99449b9CA41Dba9d4FF";
case scroll.id:
return "0xccccEbdBdA2D68bABA6da99449b9CA41Dba9d4FF";
case shape.id:
return "0x700fccD433E878F1AF9B64A433Cb2E09f5226CE8";
case zkSync.id:
return "0x9fb5F754f5222449F98b904a34494cB21AADFdf8";
case zora.id:
return "0x32e3C7fD24e175701A35c224f2238d18439C7dBC";
default:
// Default to Ethereum mainnet address
return "0x25941dC771bB64514Fc8abBce970307Fb9d477e9";
}
}, [chainId]);
// --- Handlers ---