feat(workflows): React Flow canvas editor + list + approvals UI

Adds the admin Workflows surface (top-level nav, gated by the workflows
flag + workflows.view): a list page (enable toggle, delete, new), a
pending-approvals inbox (confirm/deny), and a React Flow (@xyflow/react)
canvas editor — palette to add nodes, drag handle→handle to connect
(branch/gate/loop expose yes-no / confirm-deny / loop-exit handles), a
side-panel JSON config editor, and save (writes a new version). Routes +
sidebar entry + workflows.service. Build + tsc clean.

NOTE: the workflow page strings render via inline English fallbacks; DE
translations for the workflows.* block are still pending native review.
This commit is contained in:
Luca
2026-06-23 02:51:40 +02:00
parent 9b557efbf3
commit 5c0396d0c1
10 changed files with 791 additions and 2 deletions
@@ -11,6 +11,7 @@ import {
Users,
Briefcase,
Landmark,
Workflow,
PanelLeftClose,
PanelLeftOpen,
} from 'lucide-react';
@@ -110,6 +111,12 @@ const navigation: NavItem[] = [
permission: 'accounting.view',
featureFlag: 'accounting',
},
// Workflows (automation engine) — top-level, gated by the `workflows` flag.
{
nameKey: 'navigation.workflows', href: '/admin/workflows', icon: Workflow,
permission: 'workflows.view',
featureFlag: 'workflows',
},
];
export const AdminSidebar: React.FC<AdminSidebarProps> = ({ isOpen, onClose, collapsed = false, onToggleCollapse }) => {