Skip to content

Commit 3f34a88

Browse files
refactor: remove ThemeButton component and update theme handling to support only dark mode
1 parent 651b1a2 commit 3f34a88

10 files changed

Lines changed: 29 additions & 67 deletions

File tree

src/components/Board/GameplayInterface.tsx

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import Head from 'next/head'
1212
import { useUnload } from 'src/hooks/useUnload'
1313
import type { DrawShape } from 'chessground/draw'
1414
import { useCallback, useContext, useMemo, useState } from 'react'
15-
import { AuthContext, ThemeContext, WindowSizeContext } from 'src/contexts'
15+
import { AuthContext, WindowSizeContext } from 'src/contexts'
1616
import { PlayControllerContext } from 'src/contexts/PlayControllerContext/PlayControllerContext'
1717

1818
interface Props {
@@ -44,7 +44,7 @@ export const GameplayInterface: React.FC<React.PropsWithChildren<Props>> = (
4444
setOrientation,
4545
goToPreviousNode,
4646
} = useContext(PlayControllerContext)
47-
const { theme } = useContext(ThemeContext)
47+
4848
const { user } = useContext(AuthContext)
4949
const { isMobile } = useContext(WindowSizeContext)
5050

@@ -115,9 +115,7 @@ export const GameplayInterface: React.FC<React.PropsWithChildren<Props>> = (
115115
const Info = (
116116
<>
117117
<div className="flex w-full items-center justify-between text-secondary">
118-
<p>
119-
{theme == 'dark' ? '●' : '○'} {whitePlayer ?? 'Unknown'}
120-
</p>
118+
<p>{whitePlayer ?? 'Unknown'}</p>
121119
<p>
122120
{game.termination?.winner === 'white' ? (
123121
<span className="text-engine-3">1</span>
@@ -129,9 +127,7 @@ export const GameplayInterface: React.FC<React.PropsWithChildren<Props>> = (
129127
</p>
130128
</div>
131129
<div className="flex w-full items-center justify-between text-secondary">
132-
<p>
133-
{theme == 'light' ? '●' : '○'} {blackPlayer ?? 'Unknown'}
134-
</p>
130+
<p>{blackPlayer ?? 'Unknown'}</p>
135131
<p>
136132
{game.termination?.winner === 'black' ? (
137133
<span className="text-engine-3">1</span>

src/components/Core/Header.tsx

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import { useRouter } from 'next/router'
66
import { useCallback, useContext, useEffect, useState } from 'react'
77

88
import { PlayType } from 'src/types'
9-
import { ThemeButton } from 'src/components'
109
import { AuthContext, ModalContext, WindowSizeContext } from 'src/contexts'
1110
import { MenuIcon, UserIcon, DiscordIcon } from 'src/components/Icons/icons'
1211

@@ -187,7 +186,6 @@ export const Header: React.FC = () => {
187186
</div>
188187
</div>
189188
<div className="hidden flex-row items-center gap-3 md:flex">
190-
<ThemeButton />
191189
<a
192190
target="_blank"
193191
rel="noreferrer"
@@ -295,7 +293,6 @@ export const Header: React.FC = () => {
295293
</a>
296294
</div>
297295
<div className="flex w-full flex-row items-center gap-3 px-4">
298-
<ThemeButton />
299296
<a
300297
target="_blank"
301298
rel="noreferrer"

src/components/Core/ThemeButton.tsx

Lines changed: 0 additions & 17 deletions
This file was deleted.

src/components/Core/index.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
export * from './Header'
2-
export * from './Footer'
1+
export * from './AuthenticatedWrapper'
32
export * from './Compose'
3+
export * from './ErrorBoundary'
4+
export * from './Footer'
5+
export * from './Header'
46
export * from './Loading'
57
export * from './Markdown'
6-
export * from './ThemeButton'
7-
export * from './ErrorBoundary'
8-
export * from './AuthenticatedWrapper'
98
export * from './PlayerInfo'

src/contexts/ThemeContext/ThemeContext.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ interface IThemeContext {
88
}
99

1010
export const ThemeContext = React.createContext<IThemeContext>({
11-
theme: 'light',
11+
theme: 'dark',
1212
toggleTheme: () => {
13-
throw new Error('poorly provided ThemeContext, missing toggle Theme')
13+
// No-op since we only support dark mode
1414
},
1515
})

src/hooks/index.ts

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1-
export * from './useLocalStorage'
2-
export * from './useTheme'
3-
export * from './useWindowSize'
4-
export * from './useTreeController'
5-
export * from './useTrainingController'
6-
export * from './useTuringController'
7-
export * from './useStockfishEngine'
8-
export * from './useMaiaEngine'
91
export * from './useAnalysisController'
2+
export * from './useBaseTreeController'
103
export * from './useChessSound'
11-
export * from './usePlayController'
4+
export * from './useLocalStorage'
5+
export * from './useMaiaEngine'
126
export * from './useOpeningDrillController'
7+
export * from './usePlayController'
8+
export * from './useStats'
9+
export * from './useStockfishEngine'
10+
export * from './useTrainingController'
11+
export * from './useTreeController'
12+
export * from './useTuringController'
13+
export * from './useUnload'
14+
export * from './useWindowSize'

src/hooks/useTheme/index.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

src/hooks/useTheme/useTheme.ts

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/pages/turing.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import { NextPage } from 'next/types'
33
import { useCallback, useContext, useEffect } from 'react'
44

55
import {
6-
ThemeContext,
76
ModalContext,
87
WindowSizeContext,
98
TuringControllerContext,
@@ -54,7 +53,7 @@ interface Props {
5453

5554
const Turing: React.FC<Props> = (props: Props) => {
5655
const { game, stats } = props
57-
const { theme } = useContext(ThemeContext)
56+
5857
const { isMobile } = useContext(WindowSizeContext)
5958

6059
const controller = useContext(TuringControllerContext)
@@ -71,7 +70,7 @@ const Turing: React.FC<Props> = (props: Props) => {
7170
const Info = (
7271
<>
7372
<div className="flex w-full items-center justify-between text-secondary">
74-
<p>{theme == 'dark' ? '●' : '○'} Unknown</p>
73+
<p> Unknown</p>
7574
<p>
7675
{game.termination.winner === 'white' ? (
7776
<span className="text-engine-3">1</span>
@@ -83,7 +82,7 @@ const Turing: React.FC<Props> = (props: Props) => {
8382
</p>
8483
</div>
8584
<div className="flex w-full items-center justify-between text-secondary">
86-
<p>{theme == 'light' ? '●' : '○'} Unknown</p>
85+
<p> Unknown</p>
8786
<p>
8887
{game.termination.winner === 'black' ? (
8988
<span className="text-engine-3">1</span>

src/providers/ThemeContextProvider/ThemeContextProvider.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
import { ReactNode } from 'react'
22
import { ThemeContext } from 'src/contexts'
3-
import { useTheme } from 'src/hooks'
43

54
export const ThemeContextProvider: React.FC<{ children: ReactNode }> = ({
65
children,
76
}: {
87
children: ReactNode
98
}) => {
10-
const [theme, toggleTheme] = useTheme()
9+
const theme = 'dark'
10+
const toggleTheme = () => {
11+
// No-op since we only support dark mode
12+
}
13+
1114
return (
1215
<ThemeContext.Provider value={{ theme, toggleTheme }}>
1316
<div className={`theme-${theme}`}>{children}</div>

0 commit comments

Comments
 (0)