1- import { useTheme } from '@mui/material' ;
21import React , { useState , useEffect } from 'react' ;
2+ import { useTheme as useMuiTheme } from '@mui/material/styles' ;
33import styled from 'styled-components' ;
44import { Search } from '@mui/icons-material' ;
55import SVMSeekLogo from '../../images/SVMSeek.svg' ;
66import StakeBtn from '../../images/stakeBtn.png' ;
7- import { Row , RowContainer } from '../../pages/commonStyles' ;
7+ import { RowContainer } from '../../pages/commonStyles' ;
88import { Button } from '../Button' ;
99import { FeedbackPopup } from '../UsersFeedBackPopup/UsersFeedbackPopup' ;
1010import { SearchBar } from '../SearchBar' ;
11- import DiscordIcon from './DiscordIcon' ;
1211import ThemeToggle from '../ThemeToggle' ;
12+ import { useTheme } from '../../context/ThemeContext' ;
1313
1414import { DropDown } from './Dropdown' ;
1515import {
@@ -25,43 +25,25 @@ import {
2525 VaultNavLink ,
2626 WalletContainer ,
2727} from './styles' ;
28- import TelegramIcon from './TelegramIcon' ;
29- import TwitterIcon from './TwitterIcon' ;
3028
31- const Socials = styled ( Row ) `
32- & a:hover {
33- svg {
34- g {
35- path {
36- fill: var(--interactive-primary);
37- }
38- }
39- }
40- }
41- ` ;
42-
43- const StyledLink = styled . a `
44- height: 100%;
45- ` ;
46-
47- const SearchButton = styled . button `
29+ const SearchButton = styled . button < { theme ?: any } > `
4830 display: flex;
4931 align-items: center;
5032 gap: 8px;
5133 padding: 8px 12px;
52- background: var(--bg-secondary);
53- border: 1px solid var(--border-main) ;
54- border-radius: 8px;
55- color: var(--text-secondary);
34+ background: ${ props => props . theme ?. colors ?. background ?. secondary || ' var(--bg-secondary)' } ;
35+ border: 1px solid ${ props => props . theme ?. colors ?. border ?. primary || ' var(--border-primary)' } ;
36+ border-radius: ${ props => props . theme ?. effects ?. radius ?. md || ' 8px' } ;
37+ color: ${ props => props . theme ?. colors ?. text ?. secondary || ' var(--text-secondary)' } ;
5638 cursor: pointer;
5739 transition: all 0.2s;
5840 font-size: 14px;
5941 margin-right: 16px;
6042
6143 &:hover {
62- background: var(--bg-primary);
63- border-color: var(--interactive-primary);
64- color: var(--text-primary);
44+ background: ${ props => props . theme ?. colors ?. background ?. primary || ' var(--bg-primary)' } ;
45+ border-color: ${ props => props . theme ?. colors ?. interactive ?. primary || ' var(--interactive-primary)' } ;
46+ color: ${ props => props . theme ?. colors ?. text ?. primary || ' var(--text-primary)' } ;
6547 }
6648
6749 @media (max-width: 768px) {
@@ -84,9 +66,9 @@ const ShortcutKeys = styled.div`
8466 }
8567` ;
8668
87- const Key = styled . span `
88- background: var(--bg-primary);
89- border: 1px solid var(--border-main) ;
69+ const Key = styled . span < { theme ?: any } > `
70+ background: ${ props => props . theme ?. colors ?. background ?. primary || ' var(--bg-primary)' } ;
71+ border: 1px solid ${ props => props . theme ?. colors ?. border ?. primary || ' var(--border-primary)' } ;
9072 border-radius: 4px;
9173 padding: 2px 4px;
9274 font-family: monospace;
@@ -97,21 +79,21 @@ interface ExternalLinkProps {
9779 show ?: string ;
9880}
9981
100- const ExternalLink = styled . a < ExternalLinkProps > `
82+ const ExternalLink = styled . a < ExternalLinkProps & { theme ?: any } > `
10183 text-decoration: none;
10284 font-size: 0.7em;
10385 padding: 8px 12px;
10486 margin: 0px 4px;
10587 text-align: center;
106- border-radius: 8px;
107- color: var(--text-secondary);
108- background: var(--bg-primary);
88+ border-radius: ${ props => props . theme ?. effects ?. radius ?. md || ' 8px' } ;
89+ color: ${ props => props . theme ?. colors ?. text ?. secondary || ' var(--text-secondary)' } ;
90+ background: ${ props => props . theme ?. colors ?. background ?. primary || ' var(--bg-primary)' } ;
10991 transition: all ease-in 0.2s;
11092 cursor: pointer;
11193
11294 &:hover {
113- background: var(--bg-secondary);
114- color: var(--text-primary);
95+ background: ${ props => props . theme ?. colors ?. background ?. secondary || ' var(--bg-secondary)' } ;
96+ color: ${ props => props . theme ?. colors ?. text ?. primary || ' var(--text-primary)' } ;
11597 }
11698
11799 @media (max-width: 768px) {
@@ -122,7 +104,8 @@ const ExternalLink = styled.a<ExternalLinkProps>`
122104export const Navbar = ( ) => {
123105 const [ feedbackPopupOpen , setFeedbackPopupOpen ] = useState ( false ) ;
124106 const [ searchOpen , setSearchOpen ] = useState ( false ) ;
125- const theme = useTheme ( ) ;
107+ const { currentTheme } = useTheme ( ) ;
108+ const muiTheme = useMuiTheme ( ) ;
126109
127110 // Global keyboard shortcut for search
128111 useEffect ( ( ) => {
@@ -188,20 +171,23 @@ export const Navbar = () => {
188171 < MainLinksWrap >
189172 < MainLinksBlock >
190173 < ExternalLink
174+ theme = { currentTheme }
191175 href = "https://svmseek.com/chart/spot/SVMAI_USDC"
192176 target = "_blank"
193177 rel = "noopener noreferrer"
194178 >
195179 Trade
196180 </ ExternalLink >
197181 < ExternalLink
182+ theme = { currentTheme }
198183 href = "https://svmseek.com/swap"
199184 target = "_blank"
200185 rel = "noopener noreferrer"
201186 >
202187 Swap
203188 </ ExternalLink >
204189 < ExternalLink
190+ theme = { currentTheme }
205191 href = "https://svmseek.com/pools"
206192 target = "_blank"
207193 rel = "noopener noreferrer"
@@ -210,13 +196,15 @@ export const Navbar = () => {
210196 Pools
211197 </ ExternalLink >
212198 < ExternalLink
199+ theme = { currentTheme }
213200 href = "https://svmseek.com/rebalance"
214201 target = "_blank"
215202 rel = "noopener noreferrer"
216203 >
217204 Rebalance
218205 </ ExternalLink >
219206 < ExternalLink
207+ theme = { currentTheme }
220208 href = "https://svmseek.com/dashboard"
221209 target = "_blank"
222210 rel = "noopener noreferrer"
@@ -249,6 +237,7 @@ export const Navbar = () => {
249237 </ NavLink >
250238
251239 < ExternalLink
240+ theme = { currentTheme }
252241 href = "https://docs.svmseek.com/dex/how-to-get-started-on-aldrin-dex"
253242 target = "_blank"
254243 rel = "noopener noreferrer"
@@ -260,6 +249,7 @@ export const Navbar = () => {
260249 < DropDown hide = "lg" text = "···" >
261250 { feedbackLinks }
262251 < ExternalLink
252+ theme = { currentTheme }
263253 href = "https://svmseek.com/pools"
264254 target = "_blank"
265255 rel = "noopener noreferrer"
@@ -268,6 +258,7 @@ export const Navbar = () => {
268258 Liquidity Pools
269259 </ ExternalLink >
270260 < ExternalLink
261+ theme = { currentTheme }
271262 href = "https://docs.svmseek.com/dex/how-to-get-started-on-aldrin-dex"
272263 target = "_blank"
273264 rel = "noopener noreferrer"
@@ -280,52 +271,26 @@ export const Navbar = () => {
280271 </ MainLinksWrap >
281272 < WalletContainer >
282273 < RowContainer padding = "0" >
283- < SearchButton onClick = { ( ) => setSearchOpen ( true ) } >
274+ < SearchButton theme = { currentTheme } onClick = { ( ) => setSearchOpen ( true ) } >
284275 < Search fontSize = "small" />
285276 < span > Search</ span >
286277 < ShortcutKeys >
287- < Key > ⌘</ Key >
288- < Key > K</ Key >
278+ < Key theme = { currentTheme } > ⌘</ Key >
279+ < Key theme = { currentTheme } > K</ Key >
289280 </ ShortcutKeys >
290281 </ SearchButton >
291282
292- < div >
283+ < div >
293284 < ThemeToggle />
294285 </ div >
295- < Socials justify = { 'space-around' } height = "100%" width = { 'auto' } >
296- < StyledLink
297-
298- target = "_blank"
299- rel = "noopener noreferrer"
300- href = "https://twitter.com/svmseek"
301- >
302- < TwitterIcon />
303- </ StyledLink >
304- < StyledLink
305-
306- target = "_blank"
307- rel = "noopener noreferrer"
308- href = "https://t.me/svmseek"
309- >
310- < TelegramIcon />
311- </ StyledLink >
312- < StyledLink
313- target = "_blank"
314- rel = "noopener noreferrer"
315- href = "https://discord.gg/4VZyNxT2WU"
316-
317- >
318- < DiscordIcon />
319- </ StyledLink >
320- </ Socials >
321286 </ RowContainer >
322287 </ WalletContainer >
323288 </ HeaderWrap >
324289
325290 < SearchBar open = { searchOpen } onClose = { ( ) => setSearchOpen ( false ) } />
326291
327292 < FeedbackPopup
328- theme = { theme }
293+ theme = { muiTheme }
329294 open = { feedbackPopupOpen }
330295 onClose = { ( ) => {
331296 setFeedbackPopupOpen ( false ) ;
0 commit comments