Skip to content

Commit 46ae8d7

Browse files
backmerge 04-03-26 (#399)
2 parents 2e243df + a9d76b3 commit 46ae8d7

3 files changed

Lines changed: 15 additions & 7 deletions

File tree

.changeset/backmerge-04-03-26.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"create-eth": patch
3+
---
4+
5+
- configure burner visibility (https://github.com/scaffold-eth/scaffold-eth-2/pull/1239)

templates/base/packages/nextjs/scaffold.config.ts.template.mjs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ const defaultScaffoldConfig = {
66
alchemyApiKey: "$$process.env.NEXT_PUBLIC_ALCHEMY_API_KEY || DEFAULT_ALCHEMY_API_KEY$$",
77
rpcOverrides: {},
88
walletConnectProjectId: "$$process.env.NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID || '3a8170812b534d0ff9d794f19a901d64'$$",
9-
onlyLocalBurnerWallet: true,
9+
burnerWalletMode: "localNetworksOnly",
1010
};
1111

1212
const contents = ({ preContent, configOverrides, extraConfigTypeName, skipLocalChainInTargetNetworks }) => {
@@ -32,7 +32,7 @@ export type BaseConfig = {
3232
alchemyApiKey: string;
3333
rpcOverrides?: Record<number, string>;
3434
walletConnectProjectId: string;
35-
onlyLocalBurnerWallet: boolean;
35+
burnerWalletMode: "localNetworksOnly" | "allNetworks" | "disabled";
3636
};
3737
3838
export type ScaffoldConfig = BaseConfig ${extraConfigTypeName[0] ? `& ${extraConfigTypeName[0]}` : ''};
@@ -46,6 +46,7 @@ const scaffoldConfig = ${stringify(finalConfig, {
4646
walletConnectProjectId: "This is ours WalletConnect's default project ID.\nYou can get your own at https://cloud.walletconnect.com\nIt's recommended to store it in an env variable:\n.env.local for local testing, and in the Vercel/system env config for live apps.",
4747
rpcOverrides: "If you want to use a different RPC for a specific network, you can add it here.\nThe key is the chain ID, and the value is the HTTP RPC URL",
4848
"rpcOverrides.": "Example:\n[chains.mainnet.id]: \"https://mainnet.rpc.buidlguidl.com\",",
49+
burnerWalletMode: "Configure Burner Wallet visibility:\n- \"localNetworksOnly\": only show when all target networks are local (hardhat/anvil)\n- \"allNetworks\": show on any configured target networks\n- \"disabled\": completely disable",
4950
})} as const satisfies ScaffoldConfig;
5051
5152
export default scaffoldConfig;`;

templates/base/packages/nextjs/services/web3/wagmiConnectors.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,13 @@ import {
99
} from "@rainbow-me/rainbowkit/wallets";
1010
import { rainbowkitBurnerWallet } from "burner-connector";
1111
import * as chains from "viem/chains";
12-
import scaffoldConfig from "~~/scaffold.config";
12+
import scaffoldConfig, { type ScaffoldConfig } from "~~/scaffold.config";
1313

14-
const { onlyLocalBurnerWallet, targetNetworks } = scaffoldConfig;
14+
const { burnerWalletMode, targetNetworks } = scaffoldConfig as ScaffoldConfig;
15+
16+
const hasOnlyLocalTargetNetworks = targetNetworks.every(network => network.id === (chains.hardhat as chains.Chain).id);
17+
const showBurnerWallet =
18+
burnerWalletMode !== "disabled" && (burnerWalletMode === "allNetworks" || hasOnlyLocalTargetNetworks);
1519

1620
const wallets = [
1721
metaMaskWallet,
@@ -20,9 +24,7 @@ const wallets = [
2024
baseAccount,
2125
rainbowWallet,
2226
safeWallet,
23-
...(!targetNetworks.some(network => network.id !== (chains.hardhat as chains.Chain).id) || !onlyLocalBurnerWallet
24-
? [rainbowkitBurnerWallet]
25-
: []),
27+
...(showBurnerWallet ? [rainbowkitBurnerWallet] : []),
2628
];
2729

2830
/**

0 commit comments

Comments
 (0)