fix: add DeleteCertificateDialog component with confirmation dialog for certificate deletion

- Implement DeleteCertificateDialog component to handle certificate deletion confirmation.
- Add tests for DeleteCertificateDialog covering various scenarios including rendering, confirmation, and cancellation.
- Update translation files for multiple languages to include new strings related to certificate deletion.
- Create end-to-end tests for certificate deletion UX, including button visibility, confirmation dialog, and success/failure scenarios.
This commit is contained in:
GitHub Actions
2026-03-22 13:25:15 +00:00
parent 2c9c791ae5
commit 441864be95
18 changed files with 1821 additions and 647 deletions

View File

@@ -62,6 +62,21 @@ When you delete a proxy host, Charon automatically:
This prevents certificate accumulation and keeps your system tidy.
## Manual Certificate Deletion
Over time, expired or unused certificates can pile up in the Certificates list. You can remove them manually:
| Certificate Type | When You Can Delete It |
|------------------|----------------------|
| **Expired Let's Encrypt** | When it's not attached to any proxy host |
| **Custom (uploaded)** | When it's not attached to any proxy host |
| **Staging** | When it's not attached to any proxy host |
| **Valid Let's Encrypt** | Managed automatically — no delete button shown |
If a certificate is still attached to a proxy host, the delete button is disabled and a tooltip explains which host is using it. Remove the certificate from the proxy host first, then come back to delete it.
A confirmation dialog appears before anything is removed. Charon creates a backup before deleting, so you have a safety net.
## Troubleshooting
| Issue | Solution |