UNPKG

n8n-nodes-nextcloud-tables

Version:

Production-Ready n8n Node für Nextcloud Tables - Vollständige API-Abdeckung mit erweiterten Filtern, Multi-Column-Sorting, CSV-Import und professioneller Datenvalidierung

275 lines 9.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.importFields = exports.importOperations = void 0; exports.importOperations = [ { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['import'], }, }, options: [ { name: 'CSV-Import', value: 'importCsv', description: 'Eine CSV-Datei in eine Tabelle importieren', action: 'CSV-Datei importieren', }, { name: 'Import-Status Prüfen', value: 'getImportStatus', description: 'Den Status eines laufenden Imports prüfen', action: 'Import-Status prüfen', }, ], default: 'importCsv', }, ]; exports.importFields = [ // Tabellen-ID für Import { displayName: 'Tabelle', name: 'tableId', type: 'resourceLocator', default: { mode: 'list', value: '' }, required: true, description: 'Wählen Sie eine Tabelle aus der Liste oder geben Sie deren ID an', modes: [ { displayName: 'Liste', name: 'list', type: 'list', typeOptions: { searchListMethod: 'getTables', searchable: true, searchFilterRequired: false, }, }, { displayName: 'ID', name: 'id', type: 'string', placeholder: 'Tabellen-ID', }, ], displayOptions: { show: { resource: ['import'], operation: ['importCsv'], }, }, }, // CSV-Datei { displayName: 'CSV-Datei', name: 'csvFile', type: 'string', required: true, displayOptions: { show: { resource: ['import'], operation: ['importCsv'], }, }, default: '', description: 'Die CSV-Datei zum Importieren (Dateiinhalt oder Dateipfad)', placeholder: 'CSV-Dateiinhalt oder Pfad zur Datei...', typeOptions: { alwaysOpenEditWindow: true, }, }, // Import-Optionen { displayName: 'Import-Optionen', name: 'importOptions', type: 'collection', placeholder: 'Option hinzufügen', displayOptions: { show: { resource: ['import'], operation: ['importCsv'], }, }, default: {}, options: [ { displayName: 'Erste Zeile enthält Spaltenüberschriften', name: 'hasHeader', type: 'boolean', default: true, description: 'Ob die erste Zeile der CSV-Datei Spaltenüberschriften enthält', }, { displayName: 'Trennzeichen', name: 'delimiter', type: 'options', default: ',', description: 'Das Trennzeichen für CSV-Spalten', options: [ { name: 'Komma (,)', value: ',', }, { name: 'Semikolon (;)', value: ';', }, { name: 'Tab', value: '\t', }, { name: 'Pipe (|)', value: '|', }, { name: 'Benutzerdefiniert', value: 'custom', }, ], }, { displayName: 'Benutzerdefiniertes Trennzeichen', name: 'customDelimiter', type: 'string', default: '', description: 'Benutzerdefiniertes Trennzeichen (nur relevant wenn Trennzeichen auf "Benutzerdefiniert" gesetzt ist)', placeholder: 'z.B. | oder ;', }, { displayName: 'Textqualifizierer', name: 'textQualifier', type: 'options', default: '"', description: 'Zeichen zum Umschließen von Textwerten', options: [ { name: 'Anführungszeichen (")', value: '"', }, { name: 'Apostroph (\')', value: "'", }, { name: 'Keine', value: '', }, ], }, { displayName: 'Leere Zeilen überspringen', name: 'skipEmptyRows', type: 'boolean', default: true, description: 'Ob leere Zeilen beim Import übersprungen werden sollen', }, { displayName: 'Fehlerhafte Zeilen überspringen', name: 'skipInvalidRows', type: 'boolean', default: false, description: 'Ob Zeilen mit Fehlern übersprungen werden sollen (anstatt den Import abzubrechen)', }, ], }, // Spalten-Mapping { displayName: 'Spalten-Mapping', name: 'columnMapping', type: 'fixedCollection', typeOptions: { multipleValues: true, }, displayOptions: { show: { resource: ['import'], operation: ['importCsv'], }, }, default: {}, placeholder: 'Spalten-Zuordnung hinzufügen', options: [ { displayName: 'Spalten-Zuordnung', name: 'mapping', values: [ { displayName: 'CSV-Spalte', name: 'csvColumn', type: 'string', default: '', description: 'Name oder Index der CSV-Spalte (bei Index: 0, 1, 2, ...)', placeholder: 'z.B. "Name" oder "0"', }, { displayName: 'Tabellen-Spalte', name: 'tableColumn', type: 'options', typeOptions: { loadOptionsMethod: 'getColumns', }, default: '', description: 'Zielspalte in der Nextcloud-Tabelle', }, { displayName: 'Datentyp-Konvertierung', name: 'dataType', type: 'options', default: 'auto', description: 'Wie die Daten konvertiert werden sollen', options: [ { name: 'Automatisch', value: 'auto', description: 'Automatische Erkennung basierend auf Spaltentyp', }, { name: 'Text', value: 'text', description: 'Als Text behandeln', }, { name: 'Zahl', value: 'number', description: 'Als Zahl behandeln', }, { name: 'Datum', value: 'datetime', description: 'Als Datum/Zeit behandeln', }, { name: 'Boolean', value: 'boolean', description: 'Als Wahr/Falsch behandeln', }, ], }, ], }, ], description: 'Zuordnung zwischen CSV-Spalten und Tabellen-Spalten (optional - ohne Mapping werden Spalten automatisch zugeordnet)', }, // Import-ID für Status-Abfrage { displayName: 'Import-ID', name: 'importId', type: 'string', required: true, displayOptions: { show: { resource: ['import'], operation: ['getImportStatus'], }, }, default: '', description: 'Die ID des zu prüfenden Imports', placeholder: 'Import-ID eingeben...', }, ]; //# sourceMappingURL=import.js.map