(
request: Request,
data: BundleListRequest = Depends(),
auth_info: Dict = Depends(auth_info_required),
)
| 17 | response_model=BaseListResponse, |
| 18 | ) |
| 19 | async def api_list_bundles( |
| 20 | request: Request, |
| 21 | data: BundleListRequest = Depends(), |
| 22 | auth_info: Dict = Depends(auth_info_required), |
| 23 | ): |
| 24 | bundles, total, has_more = list_bundles( |
| 25 | limit=data.limit, |
| 26 | offset=data.offset, |
| 27 | ) |
| 28 | |
| 29 | bundle_registered_dict = await get_bundle_registered_dict( |
| 30 | bundle_ids=[bundle.bundle_id for bundle in bundles], |
| 31 | ) |
| 32 | |
| 33 | results = [] |
| 34 | for bundle in bundles: |
| 35 | plugins = list_plugins(bundle.bundle_id) |
| 36 | result = bundle.to_dict(data.lang) |
| 37 | result["registered"] = bundle_registered_dict.get(bundle.bundle_id, False) |
| 38 | result["plugins"] = [plugin.to_dict(data.lang) for plugin in plugins] |
| 39 | results.append(result) |
| 40 | |
| 41 | return BaseListResponse( |
| 42 | data=results, |
| 43 | fetched_count=len(bundles), |
| 44 | total_count=total, |
| 45 | has_more=has_more, |
| 46 | ) |
| 47 | |
| 48 | |
| 49 | @router.get( |
nothing calls this directly
no test coverage detected