# Copyright (c) 2025 Patrick Motsch # Trustee node definitions - map to methodTrustee actions. # Pipeline: extractFromFiles -> processDocuments -> syncToAccounting. TRUSTEE_NODES = [ { "id": "trustee.extractFromFiles", "category": "trustee", "label": {"en": "Extract Documents", "de": "Dokumente extrahieren", "fr": "Extraire documents"}, "description": { "en": "Extract document type and data from PDF/JPG via AI (from fileIds or SharePoint folder)", "de": "Dokumenttyp und Daten aus PDF/JPG per AI extrahieren (aus Dateien oder SharePoint-Ordner)", "fr": "Extraire type et données de PDF/JPG par IA", }, "parameters": [ {"name": "connectionId", "type": "string", "required": False, "description": {"en": "SharePoint connection (if reading from SharePoint)", "de": "SharePoint-Verbindung (falls aus SharePoint)", "fr": "Connexion SharePoint"}, "default": ""}, {"name": "sharepointFolder", "type": "string", "required": False, "description": {"en": "SharePoint folder path (e.g. /sites/MySite/Documents/Expenses)", "de": "SharePoint-Ordnerpfad", "fr": "Chemin dossier SharePoint"}, "default": ""}, {"name": "featureInstanceId", "type": "string", "required": True, "description": {"en": "Trustee feature instance ID", "de": "Trustee Feature-Instanz-ID", "fr": "ID instance Trustee"}}, {"name": "prompt", "type": "string", "required": False, "description": {"en": "AI prompt for extraction (optional)", "de": "AI-Prompt für Extraktion (optional)", "fr": "Prompt IA pour extraction"}, "default": ""}, ], "inputs": 1, "outputs": 1, "meta": {"icon": "mdi-file-document-scan", "color": "#4CAF50"}, "_method": "trustee", "_action": "extractFromFiles", "_paramMap": {"connectionId": "connectionReference", "sharepointFolder": "sharepointFolder", "featureInstanceId": "featureInstanceId", "prompt": "prompt"}, }, { "id": "trustee.processDocuments", "category": "trustee", "label": {"en": "Process Documents", "de": "Dokumente verarbeiten", "fr": "Traiter documents"}, "description": { "en": "Create TrusteeDocument + TrusteePosition from extraction result", "de": "TrusteeDocument + TrusteePosition aus Extraktionsergebnis erstellen", "fr": "Créer TrusteeDocument + TrusteePosition à partir du résultat", }, "parameters": [ {"name": "documentList", "type": "string", "required": True, "description": {"en": "Reference to extractFromFiles result", "de": "Referenz auf extractFromFiles-Ergebnis", "fr": "Référence au résultat extractFromFiles"}}, {"name": "featureInstanceId", "type": "string", "required": True, "description": {"en": "Trustee feature instance ID", "de": "Trustee Feature-Instanz-ID", "fr": "ID instance Trustee"}}, ], "inputs": 1, "outputs": 1, "meta": {"icon": "mdi-file-document-check", "color": "#4CAF50"}, "_method": "trustee", "_action": "processDocuments", "_paramMap": {"documentList": "documentList", "featureInstanceId": "featureInstanceId"}, }, { "id": "trustee.syncToAccounting", "category": "trustee", "label": {"en": "Sync to Accounting", "de": "In Buchhaltung synchronisieren", "fr": "Synchroniser comptabilité"}, "description": { "en": "Push trustee positions to accounting system", "de": "Trustee-Positionen in Buchhaltungssystem übertragen", "fr": "Transférer les positions vers la comptabilité", }, "parameters": [ {"name": "documentList", "type": "string", "required": True, "description": {"en": "Reference to processDocuments result", "de": "Referenz auf processDocuments-Ergebnis", "fr": "Référence au résultat processDocuments"}}, {"name": "featureInstanceId", "type": "string", "required": True, "description": {"en": "Trustee feature instance ID", "de": "Trustee Feature-Instanz-ID", "fr": "ID instance Trustee"}}, ], "inputs": 1, "outputs": 1, "meta": {"icon": "mdi-calculator", "color": "#4CAF50"}, "_method": "trustee", "_action": "syncToAccounting", "_paramMap": {"documentList": "documentList", "featureInstanceId": "featureInstanceId"}, }, ]