Skip to content

Commit ca204e4

Browse files
[dashboard] do not show repo examples from incompatible providers (#20335)
1 parent 03295e3 commit ca204e4

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

components/dashboard/src/components/RepositoryFinder.tsx

+12-3
Original file line numberDiff line numberDiff line change
@@ -255,10 +255,19 @@ export default function RepositoryFinder({
255255
}
256256
};
257257

258+
const filteredPredefinedRepos = useMemo(() => {
259+
return PREDEFINED_REPOS.filter((repo) => {
260+
const url = new URL(repo.url);
261+
const isMatchingAuthProviderAvailable =
262+
authProviders.data?.some((provider) => provider.host === url.host) ?? false;
263+
return isMatchingAuthProviderAvailable;
264+
});
265+
}, [authProviders.data]);
266+
258267
const getElements = useCallback(
259268
(searchString: string): ComboboxElement[] => {
260269
if (isShowingExamples && !onlyConfigurations) {
261-
return PREDEFINED_REPOS.map((repo) => ({
270+
return filteredPredefinedRepos.map((repo) => ({
262271
id: repo.url,
263272
element: <PredefinedRepositoryOption repo={repo} />,
264273
isSelectable: true,
@@ -276,7 +285,7 @@ export default function RepositoryFinder({
276285

277286
if (!onlyConfigurations) {
278287
// Add predefined repos to end of the list.
279-
PREDEFINED_REPOS.forEach((repo) => {
288+
filteredPredefinedRepos.forEach((repo) => {
280289
if (
281290
repo.url.toLowerCase().includes(searchString.toLowerCase()) ||
282291
repo.repoName.toLowerCase().includes(searchString.toLowerCase())
@@ -347,7 +356,7 @@ export default function RepositoryFinder({
347356

348357
return result;
349358
},
350-
[repos, hasMore, authProviders.data, onlyConfigurations, isShowingExamples],
359+
[isShowingExamples, onlyConfigurations, repos, hasMore, authProviders.data, filteredPredefinedRepos],
351360
);
352361

353362
return (

0 commit comments

Comments
 (0)