@@ -351,6 +351,7 @@ export default function SprintBoard({ sprint, isFullScreen, toggleFullScreen, ha
351351 const [ showBurndown , setShowBurndown ] = useState ( false ) ;
352352 const [ showCFD , setShowCFD ] = useState ( false ) ;
353353 const [ showCycleLead , setShowCycleLead ] = useState ( false ) ;
354+ const [ showNotInBacklog , setShowNotInBacklog ] = useState ( false ) ;
354355
355356 if ( ! sprint ) return null ;
356357
@@ -419,6 +420,15 @@ export default function SprintBoard({ sprint, isFullScreen, toggleFullScreen, ha
419420 < Badge variant = "secondary" className = "text-sm px-3 py-1" >
420421 { sprint . closed } /{ sprint . open + sprint . closed } completed
421422 </ Badge >
423+ < label className = "flex items-center gap-1 text-xs text-gray-700 border rounded px-2 py-1 bg-white" >
424+ < input
425+ type = "checkbox"
426+ className = "accent-blue-600"
427+ checked = { showNotInBacklog }
428+ onChange = { ( e ) => setShowNotInBacklog ( e . target . checked ) }
429+ />
430+ Show "Not in backlog"
431+ </ label >
422432 < Button
423433 className = "text-xs border px-3 py-1"
424434 onClick = { ( ) => downloadIssuesExcel ( sprint . issues || [ ] , `${ sprint . title } .xlsx` , sprint . title ) }
@@ -467,8 +477,8 @@ export default function SprintBoard({ sprint, isFullScreen, toggleFullScreen, ha
467477 </ div >
468478 </ div >
469479
470- < div className = " grid lg:grid-cols-6 md:grid-cols-3 sm:grid-cols-2 gap-6" >
471- { sprint . grouped . map ( ( [ status , list ] ) => (
480+ < div className = { ` grid ${ showNotInBacklog ? ' lg:grid-cols-6' : 'lg:grid-cols-5' } md:grid-cols-3 sm:grid-cols-2 gap-6` } >
481+ { ( showNotInBacklog ? sprint . grouped : sprint . grouped . filter ( ( [ s ] ) => s !== 'Not in backlog' ) ) . map ( ( [ status , list ] ) => (
472482 < div key = { status } className = "bg-white border rounded-xl shadow-sm" >
473483 < div className = "p-4 border-b bg-gray-50 rounded-t-xl" >
474484 < div className = "flex items-center justify-between" >
0 commit comments