Skip to content

Commit d8b920f

Browse files
authored
Merge pull request #214 from secretkeylabs/feat/ENG-6145-add-network-query
Feat: Add network query + changeNetwork request
2 parents 9eaa133 + 631d7d8 commit d8b920f

File tree

5 files changed

+251
-27
lines changed

5 files changed

+251
-27
lines changed

example/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

example/src/App.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import { SendInscription } from './components/sendInscriptions';
2828
import AddressDisplay from './components/AddressDisplay';
2929
import { GetAddresses } from './components/bitcoin/GetAddresses.tsx';
3030
import { SendBtc } from './components/bitcoin/SendBtc';
31+
import ChangeNetwork from './components/ChangeNetwork/index.tsx';
3132
import { CreateInscription } from './components/createInscription/index.tsx';
3233
import EtchRunes from './components/EtchRunes';
3334
import MintRunes from './components/MintRunes';
@@ -298,6 +299,7 @@ const WalletMethods = () => {
298299
<WalletType />
299300
<GetPermissions />
300301
<GetNetwork />
302+
<ChangeNetwork />
301303
<GetAccounts />
302304
</>
303305
);
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
import { Button, Card, NativeSelect } from '@mantine/core';
2+
import { useState } from 'react';
3+
import Wallet, { BitcoinNetworkType } from 'sats-connect';
4+
5+
const ChangeNetwork = () => {
6+
const [desiredNetwork, setDesiredNetwork] = useState<BitcoinNetworkType>(
7+
BitcoinNetworkType.Testnet4,
8+
);
9+
const handleChangeNetwork = async () => {
10+
const response = await Wallet.request('wallet_changeNetwork', {
11+
name: desiredNetwork,
12+
});
13+
14+
if (response.status === 'error') {
15+
alert('Error changing network check logs for more info');
16+
console.error(response);
17+
return;
18+
}
19+
20+
alert('Wallet Network changed');
21+
};
22+
return (
23+
<Card>
24+
<h3>Change Network</h3>
25+
<div style={{ marginBottom: 15 }}>
26+
<div>Network</div>
27+
<NativeSelect
28+
defaultValue={desiredNetwork}
29+
onChange={(e) => setDesiredNetwork(e.target.value as BitcoinNetworkType)}
30+
>
31+
<option value={BitcoinNetworkType.Mainnet}>{BitcoinNetworkType.Mainnet}</option>
32+
<option value={BitcoinNetworkType.Testnet}>{BitcoinNetworkType.Testnet}</option>
33+
<option value={BitcoinNetworkType.Testnet4}>{BitcoinNetworkType.Testnet4}</option>
34+
<option value={BitcoinNetworkType.Signet}>{BitcoinNetworkType.Signet}</option>
35+
<option value={BitcoinNetworkType.Regtest}>{BitcoinNetworkType.Regtest}</option>
36+
</NativeSelect>
37+
</div>
38+
<Button
39+
onClick={() => {
40+
handleChangeNetwork().catch(console.error);
41+
}}
42+
>
43+
Change Network
44+
</Button>
45+
</Card>
46+
);
47+
};
48+
export default ChangeNetwork;

0 commit comments

Comments
 (0)