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:
@@ -128,7 +128,23 @@ Migrating from another Caddy setup? Import your existing Caddyfile configuration
|
||||
|
||||
---
|
||||
|
||||
### 🔌 WebSocket Support
|
||||
### <EFBFBD> Nginx Proxy Manager Import
|
||||
|
||||
Migrating from Nginx Proxy Manager? Import your proxy host configurations directly from NPM export files. Charon parses your domains, upstream servers, SSL settings, and access lists, giving you a preview before committing.
|
||||
|
||||
→ [Learn More](features/npm-import.md)
|
||||
|
||||
---
|
||||
|
||||
### 📄 JSON Configuration Import
|
||||
|
||||
Import configurations from generic JSON exports or Charon backup files. Supports both Charon's native export format and Nginx Proxy Manager format with automatic detection. Perfect for restoring backups or migrating between Charon instances.
|
||||
|
||||
→ [Learn More](features/json-import.md)
|
||||
|
||||
---
|
||||
|
||||
### <20>🔌 WebSocket Support
|
||||
|
||||
Real-time applications like chat servers, live dashboards, and collaborative tools work out of the box. Charon handles WebSocket connections automatically with no special configuration needed.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user