refactor(webui): host-render function row actions

This commit is contained in:
2026-07-21 13:52:38 +02:00
parent 81e532fd54
commit df91c70491
2 changed files with 16 additions and 27 deletions

View File

@@ -22,7 +22,6 @@ import {
type AuthInfo,
type DataGridColumn,
type ModuleSubnavGroup,
type OrganizationFunctionActionContribution,
type OrganizationFunctionActionsUiCapability
} from "@govoplan/core-webui";
import {
@@ -919,20 +918,25 @@ export default function OrganizationsPage({
{
id: "actions",
header: "i18n:govoplan-organizations.actions.c3cd636a",
width: functionActionContributions.length ? 220 : 88,
width: 88 + (functionActionContributions.length * 40),
sticky: "end",
resizable: false,
align: "right",
render: (row) => (
<div className="organizations-row-actions">
<TableActionGroup actions={[{ id: "edit", label: "i18n:govoplan-organizations.edit.7dce1220", icon: <Edit3 size={16} aria-hidden="true" />, disabled: !canWriteFunctions || busy, onClick: () => editFunction(row) }]} />
{functionActionContributions.map((contribution) => (
<span className="organizations-contributed-action" key={contribution.id}>
{contribution.render({ settings, auth, function: row })}
</span>
))}
</div>
)
render: (row) => <TableActionGroup actions={[
{
id: "edit",
label: "i18n:govoplan-organizations.edit.7dce1220",
icon: <Edit3 size={16} aria-hidden="true" />,
disabled: !canWriteFunctions || busy,
onClick: () => editFunction(row)
},
...functionActionContributions.map((contribution) => ({
id: contribution.id,
label: contribution.label,
icon: contribution.icon,
onClick: () => contribution.onClick({ settings, auth, function: row })
}))
]} />
}
];

View File

@@ -30,21 +30,6 @@
flex-wrap: wrap;
}
.organizations-row-actions {
display: flex;
align-items: center;
gap: 6px;
flex-wrap: nowrap;
}
.organizations-row-actions {
justify-content: flex-end;
}
.organizations-contributed-action {
display: inline-flex;
}
.organizations-check-list {
display: grid;
gap: 10px;