feat: add external notification templates management
- Introduced NotificationTemplate model for reusable external notification templates. - Implemented CRUD operations for external templates in NotificationService. - Added routes for managing external templates in the API. - Created frontend API methods for external templates. - Enhanced Notifications page to manage external templates with a form and list view. - Updated layout and login pages to improve UI consistency. - Added integration tests for proxy host management with improved error handling.
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIBxDCCAWqgAwIBAgIRAKxvOpSX7dY/DFcxlxeVYlwwCgYIKoZIzj0EAwIwMzEx
|
||||
MC8GA1UEAxMoQ2FkZHkgTG9jYWwgQXV0aG9yaXR5IC0gRUNDIEludGVybWVkaWF0
|
||||
ZTAeFw0yNTExMjkxODI1NDdaFw0yNTExMzAwNjI1NDdaMAAwWTATBgcqhkjOPQIB
|
||||
BggqhkjOPQMBBwNCAARW60CpqeJ5U4xDgS0qtdxoxImMBtfgBQdL84thZUu2aUbn
|
||||
/PwNsnplo1zK6T3XUQPs6oMp4vT3Ay0HhkZJI8u3o4GRMIGOMA4GA1UdDwEB/wQE
|
||||
AwIHgDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHQYDVR0OBBYEFC+t
|
||||
WqIT91x5K/dJmk4048hU+lFMMB8GA1UdIwQYMBaAFMhhDbgnCp960HTlyVla/ULK
|
||||
skuUMB0GA1UdEQEB/wQTMBGCD3Rlc3QyLmxvY2FsaG9zdDAKBggqhkjOPQQDAgNI
|
||||
ADBFAiAJycukC7hroy2QaM+ORchMwba7A83f5qSjdnDmM/h8AQIhAMx0AbU4nJlF
|
||||
j2iAKlVsZaPze+F3OfBbm0Jg7emfFmx4
|
||||
-----END CERTIFICATE-----
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIBxzCCAW2gAwIBAgIQLEy0I3NtCyk+vKrWiqWa9TAKBggqhkjOPQQDAjAwMS4w
|
||||
LAYDVQQDEyVDYWRkeSBMb2NhbCBBdXRob3JpdHkgLSAyMDI1IEVDQyBSb290MB4X
|
||||
DTI1MTEyOTE4MjU0N1oXDTI1MTIwNjE4MjU0N1owMzExMC8GA1UEAxMoQ2FkZHkg
|
||||
TG9jYWwgQXV0aG9yaXR5IC0gRUNDIEludGVybWVkaWF0ZTBZMBMGByqGSM49AgEG
|
||||
CCqGSM49AwEHA0IABBzP8BZUlO8uEk7c09Sl3I68CS+AC60w+l+DIKuaqhi+sCJM
|
||||
ksM3MFZ6SfGs8rURi6MZqqkRfJqsF6ma/ko/oiyjZjBkMA4GA1UdDwEB/wQEAwIB
|
||||
BjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTIYQ24JwqfetB05clZWv1C
|
||||
yrJLlDAfBgNVHSMEGDAWgBREcndLnTskIjkt5DalMgkrk+/+iDAKBggqhkjOPQQD
|
||||
AgNIADBFAiAZ1KKvFsJGdbCSbTpEl5CQQrPf7PQzYN7w9AFpcGl3iQIhAKMy7uy8
|
||||
Hr0w5vrl/1R9FcrvNZKsDwquCBVr/BKAAIsk
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"sans": [
|
||||
"test2.localhost"
|
||||
],
|
||||
"issuer_data": null
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
-----BEGIN EC PRIVATE KEY-----
|
||||
MHcCAQEEIHuTybGDaH2llLl0Ye/IRlcL7UEluaswZWqFHo7A4WZyoAoGCCqGSM49
|
||||
AwEHoUQDQgAEVutAqanieVOMQ4EtKrXcaMSJjAbX4AUHS/OLYWVLtmlG5/z8DbJ6
|
||||
ZaNcyuk911ED7OqDKeL09wMtB4ZGSSPLtw==
|
||||
-----END EC PRIVATE KEY-----
|
||||
@@ -0,0 +1 @@
|
||||
{"tls":{"timestamp":"2025-11-29T18:19:07.702634586Z","instance_id":"2acc9ef3-fc3e-40f5-9462-d6682722eb94"}}
|
||||
@@ -0,0 +1,12 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIBxzCCAW2gAwIBAgIQLEy0I3NtCyk+vKrWiqWa9TAKBggqhkjOPQQDAjAwMS4w
|
||||
LAYDVQQDEyVDYWRkeSBMb2NhbCBBdXRob3JpdHkgLSAyMDI1IEVDQyBSb290MB4X
|
||||
DTI1MTEyOTE4MjU0N1oXDTI1MTIwNjE4MjU0N1owMzExMC8GA1UEAxMoQ2FkZHkg
|
||||
TG9jYWwgQXV0aG9yaXR5IC0gRUNDIEludGVybWVkaWF0ZTBZMBMGByqGSM49AgEG
|
||||
CCqGSM49AwEHA0IABBzP8BZUlO8uEk7c09Sl3I68CS+AC60w+l+DIKuaqhi+sCJM
|
||||
ksM3MFZ6SfGs8rURi6MZqqkRfJqsF6ma/ko/oiyjZjBkMA4GA1UdDwEB/wQEAwIB
|
||||
BjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTIYQ24JwqfetB05clZWv1C
|
||||
yrJLlDAfBgNVHSMEGDAWgBREcndLnTskIjkt5DalMgkrk+/+iDAKBggqhkjOPQQD
|
||||
AgNIADBFAiAZ1KKvFsJGdbCSbTpEl5CQQrPf7PQzYN7w9AFpcGl3iQIhAKMy7uy8
|
||||
Hr0w5vrl/1R9FcrvNZKsDwquCBVr/BKAAIsk
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,5 @@
|
||||
-----BEGIN EC PRIVATE KEY-----
|
||||
MHcCAQEEIK62nlQXS+XmU6lLY1dkxanQW+5C+hDMRkAyMeLVPDrioAoGCCqGSM49
|
||||
AwEHoUQDQgAEHM/wFlSU7y4STtzT1KXcjrwJL4ALrTD6X4Mgq5qqGL6wIkySwzcw
|
||||
VnpJ8azytRGLoxmqqRF8mqwXqZr+Sj+iLA==
|
||||
-----END EC PRIVATE KEY-----
|
||||
@@ -0,0 +1,11 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIBojCCAUmgAwIBAgIQFfTjqoMpNZnTSWKmX53qCzAKBggqhkjOPQQDAjAwMS4w
|
||||
LAYDVQQDEyVDYWRkeSBMb2NhbCBBdXRob3JpdHkgLSAyMDI1IEVDQyBSb290MB4X
|
||||
DTI1MTEyOTE4MjU0N1oXDTM1MTAwODE4MjU0N1owMDEuMCwGA1UEAxMlQ2FkZHkg
|
||||
TG9jYWwgQXV0aG9yaXR5IC0gMjAyNSBFQ0MgUm9vdDBZMBMGByqGSM49AgEGCCqG
|
||||
SM49AwEHA0IABPSnVwHAJdl5JJN8JT2K0VxGmtXMx1qMeQIq3bG891mR/Fa889/k
|
||||
PS8lb/txO1kDbkS46ZJZn1+iWRYGroHM9iejRTBDMA4GA1UdDwEB/wQEAwIBBjAS
|
||||
BgNVHRMBAf8ECDAGAQH/AgEBMB0GA1UdDgQWBBREcndLnTskIjkt5DalMgkrk+/+
|
||||
iDAKBggqhkjOPQQDAgNHADBEAiBcfxd1wNE1WakMLWMYU2kGCUTyB/S9MD0vlYtL
|
||||
AmTaUQIgJQ4Og2/PSGhG0UYGpICBI/dhxVkm7HQGKDiTaUNDHcE=
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,5 @@
|
||||
-----BEGIN EC PRIVATE KEY-----
|
||||
MHcCAQEEIE4Z8xnl0mswc0hJile7xtFbVWhqcvgYS8ofcOY9rhJhoAoGCCqGSM49
|
||||
AwEHoUQDQgAE9KdXAcAl2Xkkk3wlPYrRXEaa1czHWox5Airdsbz3WZH8Vrzz3+Q9
|
||||
LyVv+3E7WQNuRLjpklmfX6JZFgaugcz2Jw==
|
||||
-----END EC PRIVATE KEY-----
|
||||
Reference in New Issue
Block a user