@@ -10,11 +10,8 @@ import { motion } from 'framer-motion'
1010import type { DrawShape } from 'chessground/draw'
1111import { Dispatch , SetStateAction , useCallback , useMemo } from 'react'
1212import type { ComponentProps , CSSProperties , ReactNode } from 'react'
13- import { useLocalStorage } from 'src/hooks'
1413import { useAnalysisController } from 'src/hooks/useAnalysisController'
1514import type { MaiaEvaluation , StockfishEvaluation } from 'src/types'
16-
17- type AnalysisViewMode = 'simple' | 'detailed'
1815type HighlightBoardDescription = ComponentProps <
1916 typeof Highlight
2017> [ 'boardDescription' ]
@@ -87,17 +84,8 @@ export const AnalysisSidebar: React.FC<Props> = ({
8784 )
8885
8986 const mockHover = useCallback ( ( ) => void 0 , [ ] )
90- const mockSetHoverArrow = useCallback ( ( ) => void 0 , [ ] )
9187 const mockMakeMove = useCallback ( ( ) => void 0 , [ ] )
9288
93- const [ analysisViewMode , setAnalysisViewMode ] =
94- useLocalStorage < AnalysisViewMode > ( 'maia-analysis-view-mode' , 'simple' )
95- const isSimplifiedView = analysisViewMode !== 'detailed'
96-
97- const handleToggleViewMode = useCallback ( ( ) => {
98- setAnalysisViewMode ( isSimplifiedView ? 'detailed' : 'simple' )
99- } , [ isSimplifiedView , setAnalysisViewMode ] )
100-
10189 const highlightMoveEvaluation = analysisEnabled
10290 ? ( controller . moveEvaluation as {
10391 maia ?: MaiaEvaluation
@@ -132,7 +120,7 @@ export const AnalysisSidebar: React.FC<Props> = ({
132120 colorSanMapping : analysisEnabled ? controller . colorSanMapping : { } ,
133121 boardDescription : highlightBoardDescription ,
134122 currentNode : controller . currentNode ?? undefined ,
135- simplified : isSimplifiedView ,
123+ simplified : false ,
136124 hideStockfishEvalSummary : hideDetailedBlunderMeter ,
137125 hideWhiteWinRateSummary : hideDetailedBlunderMeter ,
138126 }
@@ -155,7 +143,7 @@ export const AnalysisSidebar: React.FC<Props> = ({
155143 const moveMapProps = {
156144 moveMap : analysisEnabled ? controller . moveMap : undefined ,
157145 colorSanMapping : analysisEnabled ? controller . colorSanMapping : { } ,
158- setHoverArrow : analysisEnabled ? setHoverArrow : mockSetHoverArrow ,
146+ setHoverArrow,
159147 makeMove : analysisEnabled ? makeMove : mockMakeMove ,
160148 playerToMove : analysisEnabled ? ( controller . currentNode ?. turn ?? 'w' ) : 'w' ,
161149 }
@@ -183,9 +171,6 @@ export const AnalysisSidebar: React.FC<Props> = ({
183171 ? 'flex items-center gap-1 rounded-md border border-glass-border bg-glass px-2 py-1 text-xs transition-colors hover:bg-glass-stronger'
184172 : 'flex items-center gap-1 rounded-md border border-glass-border bg-glass px-2 py-1 text-xs transition-colors'
185173
186- const viewButtonClass = `${ buttonBase } ${
187- isSimplifiedView ? 'text-white' : 'text-white/80'
188- } `
189174 const visibilityButtonClass = `${ buttonBase } ${
190175 analysisEnabled ? 'text-white' : 'text-white/80'
191176 } `
@@ -207,19 +192,6 @@ export const AnalysisSidebar: React.FC<Props> = ({
207192 </ h3 >
208193 </ div >
209194 < div className = "flex items-center gap-2" >
210- < button
211- type = "button"
212- onClick = { handleToggleViewMode }
213- className = { viewButtonClass }
214- aria-pressed = { isSimplifiedView }
215- >
216- < span className = "material-symbols-outlined !text-xs text-white/80" >
217- { isSimplifiedView ? 'expand_all' : 'collapse_all' }
218- </ span >
219- < span className = "text-white/90" >
220- { isSimplifiedView ? 'Expand' : 'Collapse' }
221- </ span >
222- </ button >
223195 < button
224196 type = "button"
225197 onClick = { handleToggleAnalysis }
@@ -263,45 +235,6 @@ export const AnalysisSidebar: React.FC<Props> = ({
263235 )
264236 }
265237
266- const simplifiedLayout = (
267- < >
268- < div className = "hidden xl:flex xl:flex-col xl:gap-3" >
269- < div className = "relative flex h-full flex-col overflow-hidden rounded-md border border-glass-border bg-glass-strong backdrop-blur-md" >
270- { renderHeader ( 'desktop' ) }
271- < div className = "flex h-full w-full flex-1" >
272- < SimplifiedAnalysisOverview
273- highlightProps = { highlightProps }
274- blunderMeterProps = { simplifiedBlunderMeterProps }
275- analysisEnabled = { analysisEnabled }
276- hideBlunderMeter = { hideDetailedBlunderMeter }
277- />
278- </ div >
279- { ! analysisEnabled &&
280- renderDisabledOverlay ( 'Enable analysis to see move evaluations' , {
281- offsetTop : true ,
282- } ) }
283- </ div >
284- </ div >
285- < div className = "flex h-full flex-col gap-3 xl:hidden" >
286- < div className = "relative flex overflow-hidden rounded-md border border-glass-border bg-glass-strong pt-10 backdrop-blur-md" >
287- { renderHeader ( 'mobile' , 'absolute left-0 top-0 z-10 w-full' ) }
288- < div className = "flex h-full w-full flex-col gap-3 p-3" >
289- < SimplifiedAnalysisOverview
290- highlightProps = { highlightProps }
291- blunderMeterProps = { simplifiedBlunderMeterProps }
292- analysisEnabled = { analysisEnabled }
293- hideBlunderMeter = { hideDetailedBlunderMeter }
294- />
295- </ div >
296- { ! analysisEnabled &&
297- renderDisabledOverlay ( 'Enable analysis to see move evaluations' , {
298- offsetTop : true ,
299- } ) }
300- </ div >
301- </ div >
302- </ >
303- )
304-
305238 const detailedLayout = (
306239 < >
307240 < div className = "hidden xl:flex xl:h-full xl:flex-col xl:gap-3" >
@@ -312,12 +245,12 @@ export const AnalysisSidebar: React.FC<Props> = ({
312245 < div className = "flex h-full w-full flex-col overflow-hidden rounded-md border border-glass-border bg-glass-strong backdrop-blur-md" >
313246 { renderHeader ( 'desktop' ) }
314247 < div className = "flex h-full w-full flex-1" >
315- < div className = "flex h-full w-auto min-w-[40%] max-w-[40%] border-r border-glass-border" >
316- < Highlight { ...highlightProps } />
317- </ div >
318- < div className = "flex h-full w-full" >
319- < MovesByRating { ... movesByRatingProps } />
320- </ div >
248+ < SimplifiedAnalysisOverview
249+ highlightProps = { { ...highlightProps , simplified : true } }
250+ blunderMeterProps = { simplifiedBlunderMeterProps }
251+ analysisEnabled = { analysisEnabled }
252+ hideBlunderMeter = { hideDetailedBlunderMeter }
253+ / >
321254 </ div >
322255 </ div >
323256 { ! analysisEnabled &&
@@ -330,8 +263,8 @@ export const AnalysisSidebar: React.FC<Props> = ({
330263 className = "desktop-analysis-big-row-2-container relative flex flex-row gap-3"
331264 style = { { height : `calc((${ desktopContentHeightCss } - 0.75rem) / 2)` } }
332265 >
333- < div className = "flex h-full w-full flex-col" >
334- < MoveMap { ...moveMapProps } />
266+ < div className = "relative flex h-full w-full flex-col overflow-hidden rounded-md border border-glass-border bg-glass backdrop-blur-md " >
267+ < MovesByRating { ...movesByRatingProps } />
335268 </ div >
336269 { ! hideDetailedBlunderMeter && < BlunderMeter { ...blunderMeterProps } /> }
337270 { ! analysisEnabled &&
@@ -384,9 +317,7 @@ export const AnalysisSidebar: React.FC<Props> = ({
384317 className = "desktop-right-column-container flex flex-col gap-3"
385318 style = { { willChange : 'transform, opacity' , ...containerStyle } }
386319 >
387- < div className = "min-h-0 flex-1" >
388- { isSimplifiedView ? simplifiedLayout : detailedLayout }
389- </ div >
320+ < div className = "min-h-0 flex-1" > { detailedLayout } </ div >
390321 { footerContent ? < div className = "shrink-0" > { footerContent } </ div > : null }
391322 </ motion . div >
392323 )
0 commit comments