@@ -32,6 +32,11 @@ import * as os from 'os';
3232import { cancelVariantAnalysis } from './gh-api/gh-actions-api-client' ;
3333import { ProgressCallback , UserCancellationException } from '../commandRunner' ;
3434import { CodeQLCliServer } from '../cli' ;
35+ import {
36+ defaultFilterSortState ,
37+ filterAndSortRepositoriesWithResults ,
38+ RepositoriesFilterSortState ,
39+ } from '../pure/variant-analysis-filter-sort' ;
3540
3641export class VariantAnalysisManager extends DisposableObject implements VariantAnalysisViewManager < VariantAnalysisView > {
3742 private static readonly REPO_STATES_FILENAME = 'repo_states.json' ;
@@ -368,13 +373,15 @@ export class VariantAnalysisManager extends DisposableObject implements VariantA
368373 await cancelVariantAnalysis ( credentials , variantAnalysis ) ;
369374 }
370375
371- public async copyRepoListToClipboard ( variantAnalysisId : number ) {
376+ public async copyRepoListToClipboard ( variantAnalysisId : number , filterSort : RepositoriesFilterSortState = defaultFilterSortState ) {
372377 const variantAnalysis = this . variantAnalyses . get ( variantAnalysisId ) ;
373378 if ( ! variantAnalysis ) {
374379 throw new Error ( `No variant analysis with id: ${ variantAnalysisId } ` ) ;
375380 }
376381
377- const fullNames = variantAnalysis . scannedRepos ?. filter ( a => a . resultCount && a . resultCount > 0 ) . map ( a => a . repository . fullName ) ;
382+ const filteredRepositories = filterAndSortRepositoriesWithResults ( variantAnalysis . scannedRepos , filterSort ) ;
383+
384+ const fullNames = filteredRepositories ?. filter ( a => a . resultCount && a . resultCount > 0 ) . map ( a => a . repository . fullName ) ;
378385 if ( ! fullNames || fullNames . length === 0 ) {
379386 return ;
380387 }
0 commit comments