@@ -91,8 +91,10 @@ interface Actions {
9191 isNoneBenchmarkSelected : ( type : BenchmarkType ) => boolean ;
9292 areAllFrameworksSelected : ( type : FrameworkType ) => boolean ;
9393 isNoneFrameworkSelected : ( type : FrameworkType ) => boolean ;
94+ isUnflaggedFrameworkSelected : ( type : FrameworkType ) => boolean ;
9495 selectFramework : ( framework : Framework , add : boolean ) => void ;
9596 selectAllFrameworks : ( frameworkType : FrameworkType , add : boolean ) => void ;
97+ selectUnflaggedFrameworks : ( frameworkType : FrameworkType ) => void ;
9698 selectCategory : ( categoryId : number , add : boolean ) => void ;
9799 selectBenchmark : ( benchmark : Benchmark , add : boolean ) => void ;
98100 selectAllBenchmarks : ( benchmarkType : BenchmarkType , add : boolean ) => void ;
@@ -232,6 +234,9 @@ export const useRootStore = create<State & Actions>((set, get) => ({
232234 isNoneFrameworkSelected : ( type ) => {
233235 return get ( ) . frameworkLists [ type ] . every ( ( framework ) => ! get ( ) . selectedFrameworks . has ( framework ) ) ;
234236 } ,
237+ isUnflaggedFrameworkSelected : ( type ) => {
238+ return get ( ) . frameworkLists [ type ] . every ( ( framework ) => framework . issues . length ? ! get ( ) . selectedFrameworks . has ( framework ) : get ( ) . selectedFrameworks . has ( framework ) ) ;
239+ } ,
235240 // Actions
236241 selectFramework : ( framework : Framework , add : boolean ) => {
237242 const newSelectedFramework = new Set ( get ( ) . selectedFrameworks ) ;
@@ -241,6 +246,23 @@ export const useRootStore = create<State & Actions>((set, get) => ({
241246 const t = { ...get ( ) , selectedFrameworks : newSelectedFramework } ;
242247 return set ( ( ) => ( { ...t , resultTables : updateResultTable ( t ) } ) ) ;
243248 } ,
249+ selectUnflaggedFrameworks : ( frameworkType : FrameworkType ) => {
250+ const newSelectedFramework = new Set ( get ( ) . selectedFrameworks ) ;
251+ const frameworks =
252+ frameworkType === FrameworkType . KEYED
253+ ? get ( ) . frameworkLists [ FrameworkType . KEYED ]
254+ : get ( ) . frameworkLists [ FrameworkType . NON_KEYED ] ;
255+
256+ for ( const framework of frameworks ) {
257+ framework . issues . length ? newSelectedFramework . delete ( framework ) : newSelectedFramework . add ( framework ) ;
258+ }
259+
260+ const t = { ...get ( ) , selectedFrameworks : newSelectedFramework } ;
261+ return set ( ( ) => ( {
262+ ...t ,
263+ resultTables : updateResultTable ( t ) ,
264+ } ) ) ;
265+ } ,
244266 selectAllFrameworks : ( frameworkType : FrameworkType , add : boolean ) => {
245267 const newSelectedFramework = new Set ( get ( ) . selectedFrameworks ) ;
246268 const frameworks =
0 commit comments