From b2ac4ee24568235e796ae0c382324455eb020629 Mon Sep 17 00:00:00 2001 From: "SPRINX0\\prochazka" Date: Wed, 12 Nov 2025 11:21:42 +0100 Subject: [PATCH] SYNC: CSV parameters --- .../dbgate-plugin-csv/src/backend/writer.js | 2 +- .../dbgate-plugin-csv/src/frontend/index.js | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/plugins/dbgate-plugin-csv/src/backend/writer.js b/plugins/dbgate-plugin-csv/src/backend/writer.js index 7e65cb6ae..61ec68536 100644 --- a/plugins/dbgate-plugin-csv/src/backend/writer.js +++ b/plugins/dbgate-plugin-csv/src/backend/writer.js @@ -86,7 +86,7 @@ async function writer({ }) { logger.info(`DBGM-00133 Writing file ${fileName}`); const csvPrepare = new CsvPrepareStream({ header }); - const csvStream = csv.stringify({ delimiter, quoted, record_delimiter: recordDelimiter }); + const csvStream = csv.stringify({ delimiter, quoted, record_delimiter: recordDelimiter || undefined }); const fileStream = fs.createWriteStream(fileName, encoding); if (writeBom) { switch (encoding.toLowerCase()) { diff --git a/plugins/dbgate-plugin-csv/src/frontend/index.js b/plugins/dbgate-plugin-csv/src/frontend/index.js index e0616449b..659d5661d 100644 --- a/plugins/dbgate-plugin-csv/src/frontend/index.js +++ b/plugins/dbgate-plugin-csv/src/frontend/index.js @@ -39,6 +39,24 @@ const fileFormat = { apiName: 'header', default: true, }, + { + type: 'checkbox', + name: 'writeBom', + label: 'Write BOM (Byte Order Mark)', + apiName: 'writeBom', + direction: 'target', + }, + { + type: 'select', + name: 'recordDelimiter', + label: 'Record Delimiter', + options: [ + { name: 'CR', value: '\r' }, + { name: 'CRLF', value: '\r\n' }, + ], + apiName: 'recordDelimiter', + direction: 'target', + }, ], };