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
	 Jens L.
					Jens L.