diff --git a/.changeset/gentle-baboons-peel.md b/.changeset/gentle-baboons-peel.md
new file mode 100644
index 0000000000..b51ad77283
--- /dev/null
+++ b/.changeset/gentle-baboons-peel.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-techdocs': patch
+---
+
+`TechDocsIndexPage` now accepts an optional `ownerPickerMode` for toggling the behavior of the `EntityOwnerPicker`, exposing a new mode `` particularly suitable for larger catalogs. In this new mode, `EntityOwnerPicker` will display all the users and groups present in the catalog.
diff --git a/.changeset/tiny-pandas-return.md b/.changeset/tiny-pandas-return.md
new file mode 100644
index 0000000000..cc9210a368
--- /dev/null
+++ b/.changeset/tiny-pandas-return.md
@@ -0,0 +1,5 @@
+---
+'@backstage/plugin-api-docs': patch
+---
+
+`DefaultApiExplorerPage` now accepts an optional `ownerPickerMode` for toggling the behavior of the `EntityOwnerPicker`, exposing a new mode `` particularly suitable for larger catalogs. In this new mode, `EntityOwnerPicker` will display all the users and groups present in the catalog.
diff --git a/plugins/api-docs/api-report.md b/plugins/api-docs/api-report.md
index 7523198298..2fc852777b 100644
--- a/plugins/api-docs/api-report.md
+++ b/plugins/api-docs/api-report.md
@@ -9,6 +9,7 @@ import { ApiEntity } from '@backstage/catalog-model';
import { ApiRef } from '@backstage/core-plugin-api';
import { BackstagePlugin } from '@backstage/core-plugin-api';
import { CatalogTableRow } from '@backstage/plugin-catalog';
+import { EntityOwnerPickerProps } from '@backstage/plugin-catalog-react';
import { ExternalRouteRef } from '@backstage/core-plugin-api';
import { InfoCardVariants } from '@backstage/core-components';
import { JSX as JSX_2 } from 'react';
@@ -105,6 +106,7 @@ export type DefaultApiExplorerPageProps = {
initiallySelectedFilter?: UserListFilterKind;
columns?: TableColumn[];
actions?: TableProps['actions'];
+ ownerPickerMode?: EntityOwnerPickerProps['mode'];
};
// @public (undocumented)
diff --git a/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx b/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx
index dc83c2528d..6b5917c52d 100644
--- a/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx
+++ b/plugins/api-docs/src/components/ApiExplorerPage/DefaultApiExplorerPage.tsx
@@ -35,6 +35,7 @@ import {
UserListFilterKind,
UserListPicker,
CatalogFilterLayout,
+ EntityOwnerPickerProps,
} from '@backstage/plugin-catalog-react';
import React from 'react';
import { registerComponentRouteRef } from '../../routes';
@@ -60,6 +61,7 @@ export type DefaultApiExplorerPageProps = {
initiallySelectedFilter?: UserListFilterKind;
columns?: TableColumn[];
actions?: TableProps['actions'];
+ ownerPickerMode?: EntityOwnerPickerProps['mode'];
};
/**
@@ -67,7 +69,12 @@ export type DefaultApiExplorerPageProps = {
* @public
*/
export const DefaultApiExplorerPage = (props: DefaultApiExplorerPageProps) => {
- const { initiallySelectedFilter = 'all', columns, actions } = props;
+ const {
+ initiallySelectedFilter = 'all',
+ columns,
+ actions,
+ ownerPickerMode,
+ } = props;
const configApi = useApi(configApiRef);
const generatedSubtitle = `${
@@ -101,7 +108,7 @@ export const DefaultApiExplorerPage = (props: DefaultApiExplorerPageProps) => {
-
+
diff --git a/plugins/techdocs/api-report.md b/plugins/techdocs/api-report.md
index 06b972bf5f..ff43f4309b 100644
--- a/plugins/techdocs/api-report.md
+++ b/plugins/techdocs/api-report.md
@@ -12,6 +12,7 @@ import { Config } from '@backstage/config';
import { CSSProperties } from '@material-ui/styles/withStyles';
import { DiscoveryApi } from '@backstage/core-plugin-api';
import { Entity } from '@backstage/catalog-model';
+import { EntityOwnerPickerProps } from '@backstage/plugin-catalog-react';
import { FetchApi } from '@backstage/core-plugin-api';
import { IdentityApi } from '@backstage/core-plugin-api';
import { JSX as JSX_2 } from 'react';
@@ -292,6 +293,7 @@ export type TechDocsIndexPageProps = {
initialFilter?: UserListFilterKind;
columns?: TableColumn[];
actions?: TableProps['actions'];
+ ownerPickerMode?: EntityOwnerPickerProps['mode'];
};
// @public @deprecated (undocumented)
diff --git a/plugins/techdocs/src/home/components/DefaultTechDocsHome.tsx b/plugins/techdocs/src/home/components/DefaultTechDocsHome.tsx
index 9b9b79ef66..2fbd5bb50a 100644
--- a/plugins/techdocs/src/home/components/DefaultTechDocsHome.tsx
+++ b/plugins/techdocs/src/home/components/DefaultTechDocsHome.tsx
@@ -46,7 +46,7 @@ export type DefaultTechDocsHomeProps = TechDocsIndexPageProps;
* @public
*/
export const DefaultTechDocsHome = (props: TechDocsIndexPageProps) => {
- const { initialFilter = 'owned', columns, actions } = props;
+ const { initialFilter = 'owned', columns, actions, ownerPickerMode } = props;
return (
@@ -60,7 +60,7 @@ export const DefaultTechDocsHome = (props: TechDocsIndexPageProps) => {
-
+
diff --git a/plugins/techdocs/src/home/components/TechDocsIndexPage.tsx b/plugins/techdocs/src/home/components/TechDocsIndexPage.tsx
index b5c568cd76..adbb68d3e9 100644
--- a/plugins/techdocs/src/home/components/TechDocsIndexPage.tsx
+++ b/plugins/techdocs/src/home/components/TechDocsIndexPage.tsx
@@ -17,7 +17,10 @@
import React from 'react';
import { useOutlet } from 'react-router-dom';
import { TableColumn, TableProps } from '@backstage/core-components';
-import { UserListFilterKind } from '@backstage/plugin-catalog-react';
+import {
+ EntityOwnerPickerProps,
+ UserListFilterKind,
+} from '@backstage/plugin-catalog-react';
import { DefaultTechDocsHome } from './DefaultTechDocsHome';
import { DocsTableRow } from './Tables';
@@ -30,6 +33,7 @@ export type TechDocsIndexPageProps = {
initialFilter?: UserListFilterKind;
columns?: TableColumn[];
actions?: TableProps['actions'];
+ ownerPickerMode?: EntityOwnerPickerProps['mode'];
};
export const TechDocsIndexPage = (props: TechDocsIndexPageProps) => {