From a2e3f4514aff3d80b716ac75c816596ea4c1d4d0 Mon Sep 17 00:00:00 2001 From: flemming-it Date: Tue, 5 May 2026 22:13:49 +0200 Subject: [PATCH] feat: HubClient.moduleInfo for Studio module-detail sheet Wraps the existing HubAdmin.ModuleInfo RPC so Studio can render a detail panel for one module without re-implementing the proto types. Bumps fai_dart_sdk 0.3.0 -> 0.4.0. Signed-off-by: flemming-it --- lib/src/hub_client.dart | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/src/hub_client.dart b/lib/src/hub_client.dart index fbb1fae..0f06397 100644 --- a/lib/src/hub_client.dart +++ b/lib/src/hub_client.dart @@ -40,6 +40,7 @@ typedef LoggedEvent = pb.LoggedEvent; typedef PendingApprovalEntry = pb.PendingApprovalEntry; typedef DeclaredService = pb.DeclaredService; typedef VerifyEventChainResponse = pb.VerifyEventChainResponse; +typedef ModuleInfoResponse = pb.ModuleInfoResponse; /// Typed client for the F∆I Hub gRPC surface. Construct once, /// reuse for the process lifetime, call [close] on shutdown. @@ -99,6 +100,13 @@ class HubClient { return r.capabilities; } + /// Detailed info for one installed module: name, version, + /// provided capabilities, declared permissions, on-disk path. + Future moduleInfo(String moduleName) { + final req = pb.ModuleInfoRequest()..moduleName = moduleName; + return _admin.moduleInfo(req); + } + /// Recent events from the audit log, newest-first. Pass an /// empty `types` list for all event types. Future> eventLog({