From 906879caf1b4211e85cb9c4135705b898620586a Mon Sep 17 00:00:00 2001 From: Albrecht Degering Date: Tue, 28 Jul 2026 21:04:54 +0200 Subject: [PATCH] Declare organization action View surface --- src/govoplan_idm/backend/manifest.py | 10 ++++++++++ webui/src/module.ts | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/govoplan_idm/backend/manifest.py b/src/govoplan_idm/backend/manifest.py index 64c5371..416ed6a 100644 --- a/src/govoplan_idm/backend/manifest.py +++ b/src/govoplan_idm/backend/manifest.py @@ -6,6 +6,7 @@ from govoplan_core.core.access import CAPABILITY_AUTH_PERMISSION_EVALUATOR, CAPA from govoplan_core.core.identity import CAPABILITY_IDENTITY_DIRECTORY, CAPABILITY_IDENTITY_SEARCH, IdentityDirectory from govoplan_core.core.idm import CAPABILITY_IDM_DIRECTORY from govoplan_core.core.organizations import CAPABILITY_ORGANIZATION_DIRECTORY, OrganizationDirectory +from govoplan_core.core.views import ViewSurface from govoplan_core.core.module_guards import persistent_table_uninstall_guard from govoplan_core.core.modules import ( DocumentationTopic, @@ -128,6 +129,15 @@ manifest = ModuleManifest( package_name="@govoplan/idm-webui", routes=(FrontendRoute(path="/idm", component="IdmPage", required_any=IDM_READ_SCOPES, order=72),), nav_items=(NavItem(path="/idm", label="IDM", icon="users", required_any=IDM_READ_SCOPES, order=72),), + view_surfaces=( + ViewSurface( + id="idm.action.view-function-assignments", + module_id="idm", + kind="action", + label="View function assignments", + order=40, + ), + ), ), migration_spec=MigrationSpec( module_id="idm", diff --git a/webui/src/module.ts b/webui/src/module.ts index 0da9ca3..a864731 100644 --- a/webui/src/module.ts +++ b/webui/src/module.ts @@ -21,6 +21,7 @@ const organizationFunctionActions: OrganizationFunctionActionsUiCapability = { actions: [ { id: "idm.view-function-assignments", + surfaceId: "idm.action.view-function-assignments", label: "i18n:govoplan-idm.view_assignments.2d40d6a5", icon: createElement(Users, { size: 16 }), anyOf: idmReadScopes, @@ -40,6 +41,15 @@ export const idmModule: PlatformWebModule = { version: "0.1.6", dependencies: ["identity", "organizations"], translations, + viewSurfaces: [ + { + id: "idm.action.view-function-assignments", + moduleId: "idm", + kind: "action", + label: "View function assignments", + order: 40 + } + ], navItems: [ { to: "/idm",