web/admin: fix source selection for identification stage (#13007)
closes #12995 Signed-off-by: Jens Langhammer <jens@goauthentik.io>
This commit is contained in:
@ -85,7 +85,7 @@ class SourceViewSet(
|
|||||||
serializer_class = SourceSerializer
|
serializer_class = SourceSerializer
|
||||||
lookup_field = "slug"
|
lookup_field = "slug"
|
||||||
search_fields = ["slug", "name"]
|
search_fields = ["slug", "name"]
|
||||||
filterset_fields = ["slug", "name", "managed"]
|
filterset_fields = ["slug", "name", "managed", "pbm_uuid"]
|
||||||
|
|
||||||
def get_queryset(self): # pragma: no cover
|
def get_queryset(self): # pragma: no cover
|
||||||
return Source.objects.select_subclasses()
|
return Source.objects.select_subclasses()
|
||||||
|
|||||||
@ -25207,6 +25207,11 @@ paths:
|
|||||||
description: Number of results to return per page.
|
description: Number of results to return per page.
|
||||||
schema:
|
schema:
|
||||||
type: integer
|
type: integer
|
||||||
|
- in: query
|
||||||
|
name: pbm_uuid
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: uuid
|
||||||
- name: search
|
- name: search
|
||||||
required: false
|
required: false
|
||||||
in: query
|
in: query
|
||||||
|
|||||||
@ -27,13 +27,13 @@ export function sourcesSelector(instanceSources: string[] | undefined) {
|
|||||||
return async () => {
|
return async () => {
|
||||||
const sourcesApi = new SourcesApi(DEFAULT_CONFIG);
|
const sourcesApi = new SourcesApi(DEFAULT_CONFIG);
|
||||||
const sources = await Promise.allSettled(
|
const sources = await Promise.allSettled(
|
||||||
instanceSources.map((instanceId) =>
|
instanceSources.map((instanceId) => sourcesApi.sourcesAllList({ pbmUuid: instanceId })),
|
||||||
sourcesApi.sourcesAllRetrieve({ slug: instanceId }),
|
|
||||||
),
|
|
||||||
);
|
);
|
||||||
return sources
|
return sources
|
||||||
.filter((s) => s.status === "fulfilled")
|
.filter((s) => s.status === "fulfilled")
|
||||||
.map((s) => s.value)
|
.map((s) => s.value)
|
||||||
|
.filter((s) => s.pagination.count > 0)
|
||||||
|
.map((s) => s.results[0])
|
||||||
.map(sourceToSelect);
|
.map(sourceToSelect);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user