SDK-Architektur
Das @5minds/processcube_app_sdk hat eine Drei-Schichten-Modulstruktur mit strikter Trennung zwischen Server- und Client-Code.
Modulstruktur
| Schicht | Import-Pfad | Umgebung | Inhalt |
|---|---|---|---|
| Common | @5minds/processcube_app_sdk | Client + Server | Gemeinsame Typen, RemoteUserTask, hasClaim, Auth-Callbacks |
| Server | @5minds/processcube_app_sdk/server | Nur Server | Engine-Funktionen, Server Actions, Auth, Authority Client, External Tasks |
| Client | @5minds/processcube_app_sdk/client | Nur Client | React-Komponenten (BPMNViewer, DynamicUi, ProcessInstanceInspector, …). CSS wird automatisch mitgeladen. |
| Styles | @5minds/processcube_app_sdk/client/styles | CSS-Import | Tailwind-Basisstyles (optional, nur wenn separat benötigt) |
Export-Map
Das Paket hat drei Einstiegspunkte — jeder mit ESM- und CJS-Support:
Komponenten-CSS wird beim Import automatisch vom Consumer-Bundler (webpack/turbopack) mit aufgelöst.
Common-Exporte
Aus dem Default-Import (@5minds/processcube_app_sdk) stehen zur Verfügung:
| Export | Typ | Beschreibung |
|---|---|---|
RemoteUserTask | Komponente | iFrame-basierte Remote User Task |
hasClaim | Funktion | Prüft Claims des aktuellen Benutzers |
authConfigJwtCallback | Callback | NextAuth JWT-Callback mit Token-Refresh |
authConfigSessionCallback | Callback | NextAuth Session-Callback mit Claims |
Server-Exporte
Aus @5minds/processcube_app_sdk/server:
| Kategorie | Exporte |
|---|---|
| Authentifizierung | getIdentity, getServerAccessToken, getServerIdentity |
| Authority | AuthorityClient |
| Prozess-Instanzen | getProcessInstanceById, getActiveProcessInstances, retryProcessInstance, terminateProcessInstance, waitForProcessEnd, … |
| User Tasks | getWaitingUserTasks, getUserTasks, finishUserTaskAndGetNext, reserveUserTask, … |
| Server Actions | startProcess, finishUserTask, finishManualTask, navigateToUrl, … |
| Engine | getEngineClient |
| Plugin | withApplicationSdk |
Alle Details: Server-Funktionen
Client-Exporte
Aus @5minds/processcube_app_sdk/client:
| Komponente | Beschreibung | CSS erforderlich |
|---|---|---|
BPMNViewerNextJS | BPMN-Diagramm-Rendering mit Overlays | Ja |
ProcessInstanceInspectorNextJS | Prozessinstanz-Inspektor mit Token-Ansicht | Ja |
DynamicUi | Dynamischer Formular-Builder | Ja |
ProcessModelInspectorNextJS | Prozessmodell mit Heatmap | Ja |
DocumentationViewer | Markdown-Dokumentation | Ja |
SplitterLayout | Größenveränderbares Panel-Layout | Ja |
DropdownMenu | Dropdown-Menü (Headless UI) | Ja |
Alle Details: Komponenten