@@ -13,12 +13,10 @@ import {Heading, Text} from 'sentry/components/core/text';
1313import  { Tooltip }  from  'sentry/components/core/tooltip' ; 
1414import  { IconSettings }  from  'sentry/icons' ; 
1515import  { t ,  tct }  from  'sentry/locale' ; 
16- import  type  { OrganizationIntegration }  from  'sentry/types/integrations' ; 
16+ import  type  { OrganizationIntegration ,   Repository }  from  'sentry/types/integrations' ; 
1717import  { useInfiniteRepositories }  from  'sentry/views/prevent/preventAI/hooks/usePreventAIInfiniteRepositories' ; 
1818import  ManageReposPanel  from  'sentry/views/prevent/preventAI/manageReposPanel' ; 
19- import  ManageReposToolbar ,  { 
20-   ALL_REPOS_VALUE , 
21- }  from  'sentry/views/prevent/preventAI/manageReposToolbar' ; 
19+ import  ManageReposToolbar  from  'sentry/views/prevent/preventAI/manageReposToolbar' ; 
2220
2321import  { FeatureOverview }  from  './onboarding' ; 
2422
@@ -29,7 +27,7 @@ function ManageReposPage({integratedOrgs}: {integratedOrgs: OrganizationIntegrat
2927  const  [ selectedOrgId ,  setSelectedOrgId ]  =  useState < string > ( 
3028    ( )  =>  integratedOrgs [ 0 ] ?. id  ??  '' 
3129  ) ; 
32-   const  [ selectedRepoId ,   setSelectedRepoId ]  =  useState < string > ( ( )  =>  ALL_REPOS_VALUE ) ; 
30+   const  [ selectedRepo ,   setSelectedRepo ]  =  useState < Repository   |   null > ( ( )  =>  null ) ; 
3331
3432  const  queryResult  =  useInfiniteRepositories ( { 
3533    integrationId : selectedOrgId , 
@@ -46,34 +44,24 @@ function ManageReposPage({integratedOrgs}: {integratedOrgs: OrganizationIntegrat
4644    return  found  ??  integratedOrgs [ 0 ] ; 
4745  } ,  [ integratedOrgs ,  selectedOrgId ] ) ; 
4846
49-   // If the selected repo is not present in the list of repos, use null (for "All Repos") 
50-   const  selectedRepo  =  useMemo ( ( )  =>  { 
51-     if  ( selectedRepoId  ===  ALL_REPOS_VALUE )  { 
52-       return  null ; 
53-     } 
54-     const  found  =  reposData . find ( repo  =>  repo . id  ===  selectedRepoId ) ; 
55-     return  found  ??  null ; 
56-   } ,  [ reposData ,  selectedRepoId ] ) ; 
57- 
5847  // When the org changes, reset to "All Repos" 
5948  const  setSelectedOrgIdWithCascadeRepoId  =  useCallback ( ( orgId : string )  =>  { 
6049    setSelectedOrgId ( orgId ) ; 
61-     setSelectedRepoId ( ALL_REPOS_VALUE ) ; 
50+     setSelectedRepo ( null ) ; 
6251  } ,  [ ] ) ; 
6352
6453  const  isOrgSelected  =  ! ! selectedOrg ; 
65-   const  isRepoSelected  =  selectedRepoId   ===   ALL_REPOS_VALUE   ||   ! ! selectedRepo ; 
54+   const  isRepoSelected  =  true ;   // Always true since null means "All Repos" 
6655
6756  return  ( 
6857    < Flex  direction = "column"  maxWidth = "1000px"  gap = "xl" > 
6958      < Flex  align = "center"  justify = "between" > 
7059        < ManageReposToolbar 
7160          integratedOrgs = { integratedOrgs } 
7261          selectedOrg = { selectedOrgId } 
73-           selectedRepo = { selectedRepoId } 
74-           selectedRepoData = { selectedRepo } 
62+           selectedRepo = { selectedRepo } 
7563          onOrgChange = { setSelectedOrgIdWithCascadeRepoId } 
76-           onRepoChange = { setSelectedRepoId } 
64+           onRepoChange = { setSelectedRepo } 
7765        /> 
7866        < Flex  style = { { transform : 'translateY(-70px)' } } > 
7967          < Tooltip 
@@ -141,15 +129,15 @@ function ManageReposPage({integratedOrgs}: {integratedOrgs: OrganizationIntegrat
141129        /> 
142130      </ Flex > 
143131
144-       { selectedOrg  &&  ( selectedRepoId   ===   ALL_REPOS_VALUE   ||   selectedRepo )   &&   ( 
132+       { selectedOrg  &&  ( 
145133        < ManageReposPanel 
146-           key = { `${ selectedOrgId  ||  'no-org' }  -${ selectedRepoId  ||  'no-repo ' }  ` } 
134+           key = { `${ selectedOrgId  ||  'no-org' }  -${ selectedRepo ?. id  ||  'all-repos ' }  ` } 
147135          collapsed = { ! isPanelOpen } 
148136          onClose = { ( )  =>  setIsPanelOpen ( false ) } 
149137          org = { selectedOrg } 
150138          repo = { selectedRepo } 
151139          allRepos = { reposData } 
152-           isEditingOrgDefaults = { selectedRepoId  ===  ALL_REPOS_VALUE } 
140+           isEditingOrgDefaults = { selectedRepo  ===  null } 
153141        /> 
154142      ) } 
155143    </ Flex > 
0 commit comments