@@ -91,8 +91,10 @@ interface Actions {
91
91
isNoneBenchmarkSelected : ( type : BenchmarkType ) => boolean ;
92
92
areAllFrameworksSelected : ( type : FrameworkType ) => boolean ;
93
93
isNoneFrameworkSelected : ( type : FrameworkType ) => boolean ;
94
+ isUnflaggedFrameworkSelected : ( type : FrameworkType ) => boolean ;
94
95
selectFramework : ( framework : Framework , add : boolean ) => void ;
95
96
selectAllFrameworks : ( frameworkType : FrameworkType , add : boolean ) => void ;
97
+ selectUnflaggedFrameworks : ( frameworkType : FrameworkType ) => void ;
96
98
selectCategory : ( categoryId : number , add : boolean ) => void ;
97
99
selectBenchmark : ( benchmark : Benchmark , add : boolean ) => void ;
98
100
selectAllBenchmarks : ( benchmarkType : BenchmarkType , add : boolean ) => void ;
@@ -232,6 +234,9 @@ export const useRootStore = create<State & Actions>((set, get) => ({
232
234
isNoneFrameworkSelected : ( type ) => {
233
235
return get ( ) . frameworkLists [ type ] . every ( ( framework ) => ! get ( ) . selectedFrameworks . has ( framework ) ) ;
234
236
} ,
237
+ isUnflaggedFrameworkSelected : ( type ) => {
238
+ return get ( ) . frameworkLists [ type ] . every ( ( framework ) => framework . issues . length ? ! get ( ) . selectedFrameworks . has ( framework ) : get ( ) . selectedFrameworks . has ( framework ) ) ;
239
+ } ,
235
240
// Actions
236
241
selectFramework : ( framework : Framework , add : boolean ) => {
237
242
const newSelectedFramework = new Set ( get ( ) . selectedFrameworks ) ;
@@ -241,6 +246,23 @@ export const useRootStore = create<State & Actions>((set, get) => ({
241
246
const t = { ...get ( ) , selectedFrameworks : newSelectedFramework } ;
242
247
return set ( ( ) => ( { ...t , resultTables : updateResultTable ( t ) } ) ) ;
243
248
} ,
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
+ } ,
244
266
selectAllFrameworks : ( frameworkType : FrameworkType , add : boolean ) => {
245
267
const newSelectedFramework = new Set ( get ( ) . selectedFrameworks ) ;
246
268
const frameworks =
0 commit comments