forked from Gildado/PayD
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathNetworkSwitcher.tsx
More file actions
38 lines (34 loc) · 1.23 KB
/
Copy pathNetworkSwitcher.tsx
File metadata and controls
38 lines (34 loc) · 1.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import React from 'react';
import { useNetworkStore, type StellarNetwork } from '../stores/networkStore';
export const NetworkSwitcher: React.FC = () => {
const { network, setNetwork } = useNetworkStore();
const handleChange = (e: React.ChangeEvent<HTMLSelectElement>) => {
setNetwork(e.target.value as StellarNetwork);
};
const isTestnet = network === 'TESTNET';
return (
<div role="group" aria-label="Stellar network selector">
<select
value={network}
onChange={handleChange}
aria-label="Select Stellar network"
title="Switch Stellar network"
className={[
'text-[10px] font-mono font-bold uppercase tracking-widest',
'px-2 py-1 rounded border bg-transparent cursor-pointer',
'focus:outline-none transition-colors',
isTestnet
? 'border-yellow-500/50 text-yellow-500 hover:border-yellow-400'
: 'border-(--accent)/50 text-(--accent) hover:border-(--accent)',
].join(' ')}
>
<option value="TESTNET" className="bg-(--bg) text-(--text)">
Testnet
</option>
<option value="MAINNET" className="bg-(--bg) text-(--text)">
Mainnet
</option>
</select>
</div>
);
};