chore: implement NPM/JSON import routes and fix SMTP persistence
Phase 3 of skipped tests remediation - enables 7 previously skipped E2E tests Backend: Add NPM import handler with session-based upload/commit/cancel Add JSON import handler with Charon/NPM format support Fix SMTP SaveSMTPConfig using transaction-based upsert Add comprehensive unit tests for new handlers Frontend: Add ImportNPM page component following ImportCaddy pattern Add ImportJSON page component with format detection Add useNPMImport and useJSONImport React Query hooks Add API clients for npm/json import endpoints Register routes in App.tsx and navigation in Layout.tsx Add i18n keys for new import pages Tests: 7 E2E tests now enabled and passing Backend coverage: 86.8% Reduced total skipped tests from 98 to 91 Closes: Phase 3 of skipped-tests-remediation plan
This commit is contained in:
@@ -69,6 +69,8 @@
|
||||
"accountManagement": "Account Management",
|
||||
"import": "Import",
|
||||
"caddyfile": "Caddyfile",
|
||||
"importNPM": "Import NPM",
|
||||
"importJSON": "Import JSON",
|
||||
"backups": "Backups",
|
||||
"logs": "Logs",
|
||||
"securityHeaders": "Security Headers",
|
||||
@@ -761,6 +763,38 @@
|
||||
"creatingBackup": "Creating backup...",
|
||||
"importing": "Importing CrowdSec..."
|
||||
},
|
||||
"importNPM": {
|
||||
"title": "Import from NPM",
|
||||
"description": "Import proxy hosts from Nginx Proxy Manager export",
|
||||
"enterContent": "Please paste NPM export JSON",
|
||||
"invalidJSON": "Invalid JSON format",
|
||||
"upload": "Upload & Preview",
|
||||
"import": "Import",
|
||||
"success": "Import completed successfully",
|
||||
"previewTitle": "Preview Import",
|
||||
"conflict": "Conflict",
|
||||
"new": "New",
|
||||
"skip": "Skip",
|
||||
"keep": "Keep Existing",
|
||||
"replace": "Replace",
|
||||
"cancelConfirm": "Are you sure you want to cancel this import?"
|
||||
},
|
||||
"importJSON": {
|
||||
"title": "Import from JSON",
|
||||
"description": "Import configuration from JSON export",
|
||||
"enterContent": "Please paste JSON configuration",
|
||||
"invalidJSON": "Invalid JSON format",
|
||||
"upload": "Upload & Preview",
|
||||
"import": "Import",
|
||||
"success": "Import completed successfully",
|
||||
"previewTitle": "Preview Import",
|
||||
"conflict": "Conflict",
|
||||
"new": "New",
|
||||
"skip": "Skip",
|
||||
"keep": "Keep Existing",
|
||||
"replace": "Replace",
|
||||
"cancelConfirm": "Are you sure you want to cancel this import?"
|
||||
},
|
||||
"systemSettings": {
|
||||
"title": "System Settings",
|
||||
"settingsSaved": "System settings saved",
|
||||
|
||||
Reference in New Issue
Block a user