From ec2cec0c1de82d2c729d27c920f38e45504d17f5 Mon Sep 17 00:00:00 2001 From: Stephane de Labrusse Date: Sat, 6 Dec 2025 11:51:00 +0100 Subject: [PATCH 1/2] feat: add CSV error handling messages for import process --- core/ui/public/i18n/en/translation.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/core/ui/public/i18n/en/translation.json b/core/ui/public/i18n/en/translation.json index c49e04041..180ba57f9 100644 --- a/core/ui/public/i18n/en/translation.json +++ b/core/ui/public/i18n/en/translation.json @@ -1753,6 +1753,15 @@ "no_import_users_description": "The CSV file does not contain any user to import.", "invalid_csv_format_not_expected_columns": "Invalid CSV format: unexpected number of columns", "file_read_error": "File read error", - "importing_data_on_domain_name": "Importing data on domain {name}" + "importing_data_on_domain_name": "Importing data on domain {name}", + "csv_missing_header": "CSV file is missing the header row.", + "expected_columns": "Expected columns: {columns}", + "found_columns": "Found: {columns}", + "csv_missing_columns": "CSV file is missing required columns: {columns}", + "no_header_found": "no header row detected", + "csv_parse_errors": "CSV parsing errors detected:", + "csv_column_mismatch": "Line {line}: expected {expected} columns, found {found}", + "line": "Line", + "and_more_errors": "... and {count} more errors" } } From 59242a3809aa49c2a6b17b60a5aaa7d8b1c4d21c Mon Sep 17 00:00:00 2001 From: Stephane de Labrusse Date: Sat, 6 Dec 2025 11:51:11 +0100 Subject: [PATCH 2/2] feat: enhance CSV import error handling and validation --- .../components/domains/ImportUsersModal.vue | 120 ++++++++++++------ 1 file changed, 82 insertions(+), 38 deletions(-) diff --git a/core/ui/src/components/domains/ImportUsersModal.vue b/core/ui/src/components/domains/ImportUsersModal.vue index b3e995768..5e7b65018 100644 --- a/core/ui/src/components/domains/ImportUsersModal.vue +++ b/core/ui/src/components/domains/ImportUsersModal.vue @@ -47,9 +47,8 @@
- {{ $t(error.uploadCsvFile) }} -
+ v-html="$t(error.uploadCsvFile)" + >