@serve.zone/dcrouter 13.16.1 → 13.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_serve/bundle.js +729 -721
- package/package.json +2 -2
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/monitoring/classes.metricsmanager.ts +43 -34
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/network/ops-view-network-activity.ts +2 -1
- package/ts_web/elements/network/ops-view-routes.ts +24 -8
- package/dist_ts/00_commitinfo_data.d.ts +0 -8
- package/dist_ts/00_commitinfo_data.js +0 -9
- package/dist_ts/acme/index.d.ts +0 -1
- package/dist_ts/acme/index.js +0 -2
- package/dist_ts/acme/manager.acme-config.d.ts +0 -48
- package/dist_ts/acme/manager.acme-config.js +0 -156
- package/dist_ts/classes.cert-provision-scheduler.d.ts +0 -52
- package/dist_ts/classes.cert-provision-scheduler.js +0 -138
- package/dist_ts/classes.dcrouter.d.ts +0 -401
- package/dist_ts/classes.dcrouter.js +0 -1852
- package/dist_ts/classes.storage-cert-manager.d.ts +0 -15
- package/dist_ts/classes.storage-cert-manager.js +0 -53
- package/dist_ts/config/classes.api-token-manager.d.ts +0 -44
- package/dist_ts/config/classes.api-token-manager.js +0 -180
- package/dist_ts/config/classes.db-seeder.d.ts +0 -25
- package/dist_ts/config/classes.db-seeder.js +0 -69
- package/dist_ts/config/classes.reference-resolver.d.ts +0 -80
- package/dist_ts/config/classes.reference-resolver.js +0 -483
- package/dist_ts/config/classes.route-config-manager.d.ts +0 -54
- package/dist_ts/config/classes.route-config-manager.js +0 -370
- package/dist_ts/config/classes.target-profile-manager.d.ts +0 -82
- package/dist_ts/config/classes.target-profile-manager.js +0 -349
- package/dist_ts/config/index.d.ts +0 -6
- package/dist_ts/config/index.js +0 -8
- package/dist_ts/config/validator.d.ts +0 -104
- package/dist_ts/config/validator.js +0 -152
- package/dist_ts/db/classes.cache.cleaner.d.ts +0 -47
- package/dist_ts/db/classes.cache.cleaner.js +0 -130
- package/dist_ts/db/classes.cached.document.d.ts +0 -76
- package/dist_ts/db/classes.cached.document.js +0 -100
- package/dist_ts/db/classes.dcrouter-db.d.ts +0 -70
- package/dist_ts/db/classes.dcrouter-db.js +0 -146
- package/dist_ts/db/documents/classes.accounting-session.doc.d.ts +0 -32
- package/dist_ts/db/documents/classes.accounting-session.doc.js +0 -214
- package/dist_ts/db/documents/classes.acme-cert.doc.d.ts +0 -13
- package/dist_ts/db/documents/classes.acme-cert.doc.js +0 -109
- package/dist_ts/db/documents/classes.acme-config.doc.d.ts +0 -22
- package/dist_ts/db/documents/classes.acme-config.doc.js +0 -121
- package/dist_ts/db/documents/classes.api-token.doc.d.ts +0 -18
- package/dist_ts/db/documents/classes.api-token.doc.js +0 -127
- package/dist_ts/db/documents/classes.cached.email.d.ts +0 -125
- package/dist_ts/db/documents/classes.cached.email.js +0 -337
- package/dist_ts/db/documents/classes.cached.ip.reputation.d.ts +0 -119
- package/dist_ts/db/documents/classes.cached.ip.reputation.js +0 -323
- package/dist_ts/db/documents/classes.cert-backoff.doc.d.ts +0 -11
- package/dist_ts/db/documents/classes.cert-backoff.doc.js +0 -97
- package/dist_ts/db/documents/classes.dns-provider.doc.d.ts +0 -22
- package/dist_ts/db/documents/classes.dns-provider.doc.js +0 -134
- package/dist_ts/db/documents/classes.dns-record.doc.d.ts +0 -21
- package/dist_ts/db/documents/classes.dns-record.doc.js +0 -143
- package/dist_ts/db/documents/classes.domain.doc.d.ts +0 -22
- package/dist_ts/db/documents/classes.domain.doc.js +0 -146
- package/dist_ts/db/documents/classes.email-domain.doc.d.ts +0 -17
- package/dist_ts/db/documents/classes.email-domain.doc.js +0 -124
- package/dist_ts/db/documents/classes.network-target.doc.d.ts +0 -15
- package/dist_ts/db/documents/classes.network-target.doc.js +0 -118
- package/dist_ts/db/documents/classes.proxy-cert.doc.d.ts +0 -12
- package/dist_ts/db/documents/classes.proxy-cert.doc.js +0 -103
- package/dist_ts/db/documents/classes.remote-ingress-edge.doc.d.ts +0 -17
- package/dist_ts/db/documents/classes.remote-ingress-edge.doc.js +0 -130
- package/dist_ts/db/documents/classes.route.doc.d.ts +0 -18
- package/dist_ts/db/documents/classes.route.doc.js +0 -121
- package/dist_ts/db/documents/classes.source-profile.doc.d.ts +0 -15
- package/dist_ts/db/documents/classes.source-profile.doc.js +0 -115
- package/dist_ts/db/documents/classes.target-profile.doc.d.ts +0 -16
- package/dist_ts/db/documents/classes.target-profile.doc.js +0 -121
- package/dist_ts/db/documents/classes.vlan-mappings.doc.d.ts +0 -15
- package/dist_ts/db/documents/classes.vlan-mappings.doc.js +0 -77
- package/dist_ts/db/documents/classes.vpn-client.doc.d.ts +0 -23
- package/dist_ts/db/documents/classes.vpn-client.doc.js +0 -172
- package/dist_ts/db/documents/classes.vpn-server-keys.doc.d.ts +0 -10
- package/dist_ts/db/documents/classes.vpn-server-keys.doc.js +0 -94
- package/dist_ts/db/documents/index.d.ts +0 -20
- package/dist_ts/db/documents/index.js +0 -30
- package/dist_ts/db/index.d.ts +0 -4
- package/dist_ts/db/index.js +0 -9
- package/dist_ts/dns/index.d.ts +0 -2
- package/dist_ts/dns/index.js +0 -3
- package/dist_ts/dns/manager.dns.d.ts +0 -267
- package/dist_ts/dns/manager.dns.js +0 -906
- package/dist_ts/dns/providers/cloudflare.provider.d.ts +0 -21
- package/dist_ts/dns/providers/cloudflare.provider.js +0 -106
- package/dist_ts/dns/providers/factory.d.ts +0 -23
- package/dist_ts/dns/providers/factory.js +0 -47
- package/dist_ts/dns/providers/index.d.ts +0 -3
- package/dist_ts/dns/providers/index.js +0 -4
- package/dist_ts/dns/providers/interfaces.d.ts +0 -54
- package/dist_ts/dns/providers/interfaces.js +0 -2
- package/dist_ts/email/classes.email-domain.manager.d.ts +0 -46
- package/dist_ts/email/classes.email-domain.manager.js +0 -276
- package/dist_ts/email/index.d.ts +0 -1
- package/dist_ts/email/index.js +0 -2
- package/dist_ts/errors/base.errors.d.ts +0 -224
- package/dist_ts/errors/base.errors.js +0 -320
- package/dist_ts/errors/error-handler.d.ts +0 -98
- package/dist_ts/errors/error-handler.js +0 -282
- package/dist_ts/errors/error.codes.d.ts +0 -115
- package/dist_ts/errors/error.codes.js +0 -136
- package/dist_ts/errors/index.d.ts +0 -54
- package/dist_ts/errors/index.js +0 -136
- package/dist_ts/errors/reputation.errors.d.ts +0 -183
- package/dist_ts/errors/reputation.errors.js +0 -292
- package/dist_ts/http3/http3-route-augmentation.d.ts +0 -50
- package/dist_ts/http3/http3-route-augmentation.js +0 -98
- package/dist_ts/http3/index.d.ts +0 -1
- package/dist_ts/http3/index.js +0 -2
- package/dist_ts/index.d.ts +0 -8
- package/dist_ts/index.js +0 -29
- package/dist_ts/logger.d.ts +0 -21
- package/dist_ts/logger.js +0 -81
- package/dist_ts/monitoring/classes.metricscache.d.ts +0 -32
- package/dist_ts/monitoring/classes.metricscache.js +0 -63
- package/dist_ts/monitoring/classes.metricsmanager.d.ts +0 -233
- package/dist_ts/monitoring/classes.metricsmanager.js +0 -897
- package/dist_ts/monitoring/index.d.ts +0 -1
- package/dist_ts/monitoring/index.js +0 -2
- package/dist_ts/opsserver/classes.opsserver.d.ts +0 -47
- package/dist_ts/opsserver/classes.opsserver.js +0 -105
- package/dist_ts/opsserver/handlers/acme-config.handler.d.ts +0 -16
- package/dist_ts/opsserver/handlers/acme-config.handler.js +0 -77
- package/dist_ts/opsserver/handlers/admin.handler.d.ts +0 -40
- package/dist_ts/opsserver/handlers/admin.handler.js +0 -191
- package/dist_ts/opsserver/handlers/api-token.handler.d.ts +0 -6
- package/dist_ts/opsserver/handlers/api-token.handler.js +0 -62
- package/dist_ts/opsserver/handlers/certificate.handler.d.ts +0 -77
- package/dist_ts/opsserver/handlers/certificate.handler.js +0 -574
- package/dist_ts/opsserver/handlers/config.handler.d.ts +0 -7
- package/dist_ts/opsserver/handlers/config.handler.js +0 -200
- package/dist_ts/opsserver/handlers/dns-provider.handler.d.ts +0 -16
- package/dist_ts/opsserver/handlers/dns-provider.handler.js +0 -156
- package/dist_ts/opsserver/handlers/dns-record.handler.d.ts +0 -13
- package/dist_ts/opsserver/handlers/dns-record.handler.js +0 -98
- package/dist_ts/opsserver/handlers/domain.handler.d.ts +0 -13
- package/dist_ts/opsserver/handlers/domain.handler.js +0 -137
- package/dist_ts/opsserver/handlers/email-domain.handler.d.ts +0 -16
- package/dist_ts/opsserver/handlers/email-domain.handler.js +0 -150
- package/dist_ts/opsserver/handlers/email-ops.handler.d.ts +0 -30
- package/dist_ts/opsserver/handlers/email-ops.handler.js +0 -227
- package/dist_ts/opsserver/handlers/index.d.ts +0 -21
- package/dist_ts/opsserver/handlers/index.js +0 -22
- package/dist_ts/opsserver/handlers/logs.handler.d.ts +0 -25
- package/dist_ts/opsserver/handlers/logs.handler.js +0 -264
- package/dist_ts/opsserver/handlers/network-target.handler.d.ts +0 -10
- package/dist_ts/opsserver/handlers/network-target.handler.js +0 -117
- package/dist_ts/opsserver/handlers/radius.handler.d.ts +0 -6
- package/dist_ts/opsserver/handlers/radius.handler.js +0 -295
- package/dist_ts/opsserver/handlers/remoteingress.handler.d.ts +0 -6
- package/dist_ts/opsserver/handlers/remoteingress.handler.js +0 -156
- package/dist_ts/opsserver/handlers/route-management.handler.d.ts +0 -14
- package/dist_ts/opsserver/handlers/route-management.handler.js +0 -98
- package/dist_ts/opsserver/handlers/security.handler.d.ts +0 -9
- package/dist_ts/opsserver/handlers/security.handler.js +0 -237
- package/dist_ts/opsserver/handlers/source-profile.handler.d.ts +0 -10
- package/dist_ts/opsserver/handlers/source-profile.handler.js +0 -119
- package/dist_ts/opsserver/handlers/stats.handler.d.ts +0 -11
- package/dist_ts/opsserver/handlers/stats.handler.js +0 -461
- package/dist_ts/opsserver/handlers/target-profile.handler.d.ts +0 -10
- package/dist_ts/opsserver/handlers/target-profile.handler.js +0 -117
- package/dist_ts/opsserver/handlers/users.handler.d.ts +0 -12
- package/dist_ts/opsserver/handlers/users.handler.js +0 -24
- package/dist_ts/opsserver/handlers/vpn.handler.d.ts +0 -6
- package/dist_ts/opsserver/handlers/vpn.handler.js +0 -262
- package/dist_ts/opsserver/helpers/guards.d.ts +0 -27
- package/dist_ts/opsserver/helpers/guards.js +0 -43
- package/dist_ts/opsserver/index.d.ts +0 -1
- package/dist_ts/opsserver/index.js +0 -2
- package/dist_ts/paths.d.ts +0 -25
- package/dist_ts/paths.js +0 -44
- package/dist_ts/plugins.d.ts +0 -81
- package/dist_ts/plugins.js +0 -115
- package/dist_ts/radius/classes.accounting.manager.d.ts +0 -223
- package/dist_ts/radius/classes.accounting.manager.js +0 -449
- package/dist_ts/radius/classes.radius.server.d.ts +0 -169
- package/dist_ts/radius/classes.radius.server.js +0 -384
- package/dist_ts/radius/classes.vlan.manager.d.ts +0 -124
- package/dist_ts/radius/classes.vlan.manager.js +0 -272
- package/dist_ts/radius/index.d.ts +0 -13
- package/dist_ts/radius/index.js +0 -14
- package/dist_ts/remoteingress/classes.remoteingress-manager.d.ts +0 -92
- package/dist_ts/remoteingress/classes.remoteingress-manager.js +0 -291
- package/dist_ts/remoteingress/classes.tunnel-manager.d.ts +0 -59
- package/dist_ts/remoteingress/classes.tunnel-manager.js +0 -165
- package/dist_ts/remoteingress/index.d.ts +0 -2
- package/dist_ts/remoteingress/index.js +0 -3
- package/dist_ts/security/classes.contentscanner.d.ts +0 -164
- package/dist_ts/security/classes.contentscanner.js +0 -642
- package/dist_ts/security/classes.ipreputationchecker.d.ts +0 -145
- package/dist_ts/security/classes.ipreputationchecker.js +0 -458
- package/dist_ts/security/classes.securitylogger.d.ts +0 -144
- package/dist_ts/security/classes.securitylogger.js +0 -235
- package/dist_ts/security/index.d.ts +0 -3
- package/dist_ts/security/index.js +0 -4
- package/dist_ts/sms/classes.smsservice.d.ts +0 -15
- package/dist_ts/sms/classes.smsservice.js +0 -72
- package/dist_ts/sms/config/sms.config.d.ts +0 -93
- package/dist_ts/sms/config/sms.config.js +0 -2
- package/dist_ts/sms/config/sms.schema.d.ts +0 -5
- package/dist_ts/sms/config/sms.schema.js +0 -121
- package/dist_ts/sms/index.d.ts +0 -1
- package/dist_ts/sms/index.js +0 -2
- package/dist_ts/vpn/classes.vpn-manager.d.ts +0 -159
- package/dist_ts/vpn/classes.vpn-manager.js +0 -459
- package/dist_ts/vpn/index.d.ts +0 -1
- package/dist_ts/vpn/index.js +0 -2
- package/dist_ts_apiclient/classes.apitoken.d.ts +0 -41
- package/dist_ts_apiclient/classes.apitoken.js +0 -115
- package/dist_ts_apiclient/classes.certificate.d.ts +0 -57
- package/dist_ts_apiclient/classes.certificate.js +0 -69
- package/dist_ts_apiclient/classes.config.d.ts +0 -7
- package/dist_ts_apiclient/classes.config.js +0 -11
- package/dist_ts_apiclient/classes.dcrouterapiclient.d.ts +0 -41
- package/dist_ts_apiclient/classes.dcrouterapiclient.js +0 -81
- package/dist_ts_apiclient/classes.email.d.ts +0 -30
- package/dist_ts_apiclient/classes.email.js +0 -52
- package/dist_ts_apiclient/classes.logs.d.ts +0 -21
- package/dist_ts_apiclient/classes.logs.js +0 -14
- package/dist_ts_apiclient/classes.radius.d.ts +0 -59
- package/dist_ts_apiclient/classes.radius.js +0 -95
- package/dist_ts_apiclient/classes.remoteingress.d.ts +0 -54
- package/dist_ts_apiclient/classes.remoteingress.js +0 -136
- package/dist_ts_apiclient/classes.route.d.ts +0 -39
- package/dist_ts_apiclient/classes.route.js +0 -125
- package/dist_ts_apiclient/classes.stats.d.ts +0 -47
- package/dist_ts_apiclient/classes.stats.js +0 -38
- package/dist_ts_apiclient/index.d.ts +0 -10
- package/dist_ts_apiclient/index.js +0 -14
- package/dist_ts_apiclient/plugins.d.ts +0 -3
- package/dist_ts_apiclient/plugins.js +0 -5
- package/dist_ts_interfaces/data/acme-config.d.ts +0 -25
- package/dist_ts_interfaces/data/acme-config.js +0 -2
- package/dist_ts_interfaces/data/auth.d.ts +0 -8
- package/dist_ts_interfaces/data/auth.js +0 -2
- package/dist_ts_interfaces/data/dns-provider.d.ts +0 -136
- package/dist_ts_interfaces/data/dns-provider.js +0 -41
- package/dist_ts_interfaces/data/dns-record.d.ts +0 -42
- package/dist_ts_interfaces/data/dns-record.js +0 -2
- package/dist_ts_interfaces/data/domain.d.ts +0 -35
- package/dist_ts_interfaces/data/domain.js +0 -2
- package/dist_ts_interfaces/data/email-domain.d.ts +0 -70
- package/dist_ts_interfaces/data/email-domain.js +0 -2
- package/dist_ts_interfaces/data/index.d.ts +0 -11
- package/dist_ts_interfaces/data/index.js +0 -12
- package/dist_ts_interfaces/data/remoteingress.d.ts +0 -60
- package/dist_ts_interfaces/data/remoteingress.js +0 -2
- package/dist_ts_interfaces/data/route-management.d.ts +0 -110
- package/dist_ts_interfaces/data/route-management.js +0 -2
- package/dist_ts_interfaces/data/stats.d.ts +0 -238
- package/dist_ts_interfaces/data/stats.js +0 -2
- package/dist_ts_interfaces/data/target-profile.d.ts +0 -28
- package/dist_ts_interfaces/data/target-profile.js +0 -2
- package/dist_ts_interfaces/data/vpn.d.ts +0 -61
- package/dist_ts_interfaces/data/vpn.js +0 -2
- package/dist_ts_interfaces/index.d.ts +0 -5
- package/dist_ts_interfaces/index.js +0 -8
- package/dist_ts_interfaces/plugins.d.ts +0 -2
- package/dist_ts_interfaces/plugins.js +0 -4
- package/dist_ts_interfaces/requests/acme-config.d.ts +0 -42
- package/dist_ts_interfaces/requests/acme-config.js +0 -2
- package/dist_ts_interfaces/requests/admin.d.ts +0 -31
- package/dist_ts_interfaces/requests/admin.js +0 -3
- package/dist_ts_interfaces/requests/api-tokens.d.ts +0 -79
- package/dist_ts_interfaces/requests/api-tokens.js +0 -2
- package/dist_ts_interfaces/requests/certificate.d.ts +0 -111
- package/dist_ts_interfaces/requests/certificate.js +0 -3
- package/dist_ts_interfaces/requests/combined.stats.d.ts +0 -28
- package/dist_ts_interfaces/requests/combined.stats.js +0 -2
- package/dist_ts_interfaces/requests/config.d.ts +0 -90
- package/dist_ts_interfaces/requests/config.js +0 -3
- package/dist_ts_interfaces/requests/dns-providers.d.ts +0 -117
- package/dist_ts_interfaces/requests/dns-providers.js +0 -2
- package/dist_ts_interfaces/requests/dns-records.d.ts +0 -89
- package/dist_ts_interfaces/requests/dns-records.js +0 -2
- package/dist_ts_interfaces/requests/domains.d.ts +0 -142
- package/dist_ts_interfaces/requests/domains.js +0 -2
- package/dist_ts_interfaces/requests/email-domains.d.ts +0 -142
- package/dist_ts_interfaces/requests/email-domains.js +0 -2
- package/dist_ts_interfaces/requests/email-ops.d.ts +0 -82
- package/dist_ts_interfaces/requests/email-ops.js +0 -3
- package/dist_ts_interfaces/requests/index.d.ts +0 -21
- package/dist_ts_interfaces/requests/index.js +0 -22
- package/dist_ts_interfaces/requests/logs.d.ts +0 -41
- package/dist_ts_interfaces/requests/logs.js +0 -4
- package/dist_ts_interfaces/requests/network-targets.d.ts +0 -102
- package/dist_ts_interfaces/requests/network-targets.js +0 -2
- package/dist_ts_interfaces/requests/radius.d.ts +0 -268
- package/dist_ts_interfaces/requests/radius.js +0 -3
- package/dist_ts_interfaces/requests/remoteingress.d.ts +0 -108
- package/dist_ts_interfaces/requests/remoteingress.js +0 -3
- package/dist_ts_interfaces/requests/route-management.d.ts +0 -85
- package/dist_ts_interfaces/requests/route-management.js +0 -2
- package/dist_ts_interfaces/requests/source-profiles.d.ts +0 -102
- package/dist_ts_interfaces/requests/source-profiles.js +0 -2
- package/dist_ts_interfaces/requests/stats.d.ts +0 -177
- package/dist_ts_interfaces/requests/stats.js +0 -4
- package/dist_ts_interfaces/requests/target-profiles.d.ts +0 -103
- package/dist_ts_interfaces/requests/target-profiles.js +0 -2
- package/dist_ts_interfaces/requests/users.d.ts +0 -19
- package/dist_ts_interfaces/requests/users.js +0 -3
- package/dist_ts_interfaces/requests/vpn.d.ts +0 -177
- package/dist_ts_interfaces/requests/vpn.js +0 -3
- package/dist_ts_migrations/index.d.ts +0 -28
- package/dist_ts_migrations/index.js +0 -82
- package/dist_ts_oci_container/index.d.ts +0 -8
- package/dist_ts_oci_container/index.js +0 -110
- package/dist_ts_oci_container/plugins.d.ts +0 -3
- package/dist_ts_oci_container/plugins.js +0 -4
- package/dist_ts_web/00_commitinfo_data.d.ts +0 -8
- package/dist_ts_web/00_commitinfo_data.js +0 -9
- package/dist_ts_web/appstate.d.ts +0 -478
- package/dist_ts_web/appstate.js +0 -1968
- package/dist_ts_web/elements/access/index.d.ts +0 -2
- package/dist_ts_web/elements/access/index.js +0 -3
- package/dist_ts_web/elements/access/ops-view-apitokens.d.ts +0 -13
- package/dist_ts_web/elements/access/ops-view-apitokens.js +0 -372
- package/dist_ts_web/elements/access/ops-view-users.d.ts +0 -11
- package/dist_ts_web/elements/access/ops-view-users.js +0 -190
- package/dist_ts_web/elements/domains/dns-provider-form.d.ts +0 -60
- package/dist_ts_web/elements/domains/dns-provider-form.js +0 -259
- package/dist_ts_web/elements/domains/index.d.ts +0 -5
- package/dist_ts_web/elements/domains/index.js +0 -6
- package/dist_ts_web/elements/domains/ops-view-certificates.d.ts +0 -25
- package/dist_ts_web/elements/domains/ops-view-certificates.js +0 -669
- package/dist_ts_web/elements/domains/ops-view-dns.d.ts +0 -17
- package/dist_ts_web/elements/domains/ops-view-dns.js +0 -305
- package/dist_ts_web/elements/domains/ops-view-domains.d.ts +0 -19
- package/dist_ts_web/elements/domains/ops-view-domains.js +0 -456
- package/dist_ts_web/elements/domains/ops-view-providers.d.ts +0 -21
- package/dist_ts_web/elements/domains/ops-view-providers.js +0 -330
- package/dist_ts_web/elements/email/index.d.ts +0 -3
- package/dist_ts_web/elements/email/index.js +0 -4
- package/dist_ts_web/elements/email/ops-view-email-domains.d.ts +0 -19
- package/dist_ts_web/elements/email/ops-view-email-domains.js +0 -410
- package/dist_ts_web/elements/email/ops-view-email-security.d.ts +0 -14
- package/dist_ts_web/elements/email/ops-view-email-security.js +0 -178
- package/dist_ts_web/elements/email/ops-view-emails.d.ts +0 -21
- package/dist_ts_web/elements/email/ops-view-emails.js +0 -165
- package/dist_ts_web/elements/index.d.ts +0 -9
- package/dist_ts_web/elements/index.js +0 -10
- package/dist_ts_web/elements/network/index.d.ts +0 -7
- package/dist_ts_web/elements/network/index.js +0 -8
- package/dist_ts_web/elements/network/ops-view-network-activity.d.ts +0 -60
- package/dist_ts_web/elements/network/ops-view-network-activity.js +0 -753
- package/dist_ts_web/elements/network/ops-view-networktargets.d.ts +0 -17
- package/dist_ts_web/elements/network/ops-view-networktargets.js +0 -255
- package/dist_ts_web/elements/network/ops-view-remoteingress.d.ts +0 -20
- package/dist_ts_web/elements/network/ops-view-remoteingress.js +0 -497
- package/dist_ts_web/elements/network/ops-view-routes.d.ts +0 -16
- package/dist_ts_web/elements/network/ops-view-routes.js +0 -674
- package/dist_ts_web/elements/network/ops-view-sourceprofiles.d.ts +0 -17
- package/dist_ts_web/elements/network/ops-view-sourceprofiles.js +0 -278
- package/dist_ts_web/elements/network/ops-view-targetprofiles.d.ts +0 -21
- package/dist_ts_web/elements/network/ops-view-targetprofiles.js +0 -420
- package/dist_ts_web/elements/network/ops-view-vpn.d.ts +0 -31
- package/dist_ts_web/elements/network/ops-view-vpn.js +0 -873
- package/dist_ts_web/elements/ops-dashboard.d.ts +0 -31
- package/dist_ts_web/elements/ops-dashboard.js +0 -405
- package/dist_ts_web/elements/ops-view-logs.d.ts +0 -13
- package/dist_ts_web/elements/ops-view-logs.js +0 -159
- package/dist_ts_web/elements/overview/index.d.ts +0 -2
- package/dist_ts_web/elements/overview/index.js +0 -3
- package/dist_ts_web/elements/overview/ops-view-config.d.ts +0 -19
- package/dist_ts_web/elements/overview/ops-view-config.js +0 -339
- package/dist_ts_web/elements/overview/ops-view-overview.d.ts +0 -24
- package/dist_ts_web/elements/overview/ops-view-overview.js +0 -545
- package/dist_ts_web/elements/security/index.d.ts +0 -3
- package/dist_ts_web/elements/security/index.js +0 -4
- package/dist_ts_web/elements/security/ops-view-security-authentication.d.ts +0 -13
- package/dist_ts_web/elements/security/ops-view-security-authentication.js +0 -157
- package/dist_ts_web/elements/security/ops-view-security-blocked.d.ts +0 -15
- package/dist_ts_web/elements/security/ops-view-security-blocked.js +0 -153
- package/dist_ts_web/elements/security/ops-view-security-overview.d.ts +0 -16
- package/dist_ts_web/elements/security/ops-view-security-overview.js +0 -205
- package/dist_ts_web/elements/shared/css.d.ts +0 -1
- package/dist_ts_web/elements/shared/css.js +0 -10
- package/dist_ts_web/elements/shared/index.d.ts +0 -1
- package/dist_ts_web/elements/shared/index.js +0 -2
- package/dist_ts_web/index.d.ts +0 -1
- package/dist_ts_web/index.js +0 -10
- package/dist_ts_web/plugins.d.ts +0 -7
- package/dist_ts_web/plugins.js +0 -13
- package/dist_ts_web/router.d.ts +0 -21
- package/dist_ts_web/router.js +0 -151
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Stable ID for the built-in DcRouter pseudo-provider. The Providers list
|
|
3
|
-
* surfaces this as the first, non-deletable row so operators see a uniform
|
|
4
|
-
* "who serves this?" answer for every domain. The ID is magic — it never
|
|
5
|
-
* exists in the DnsProviderDoc collection; handlers inject it at read time
|
|
6
|
-
* and reject any mutation that targets it.
|
|
7
|
-
*/
|
|
8
|
-
export const DCROUTER_BUILTIN_PROVIDER_ID = '__dcrouter__';
|
|
9
|
-
/**
|
|
10
|
-
* Single source of truth for which DNS provider types exist and what
|
|
11
|
-
* credentials each one needs. Used by both backend and frontend.
|
|
12
|
-
*/
|
|
13
|
-
export const dnsProviderTypeDescriptors = [
|
|
14
|
-
{
|
|
15
|
-
type: 'dcrouter',
|
|
16
|
-
displayName: 'DcRouter (built-in)',
|
|
17
|
-
description: 'Built-in authoritative DNS. Records are served directly by dcrouter — delegate the domain\'s NS records to make this effective.',
|
|
18
|
-
credentialFields: [],
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
type: 'cloudflare',
|
|
22
|
-
displayName: 'Cloudflare',
|
|
23
|
-
description: 'External DNS provider. The provider stays authoritative; dcrouter pushes record changes via its API.',
|
|
24
|
-
credentialFields: [
|
|
25
|
-
{
|
|
26
|
-
key: 'apiToken',
|
|
27
|
-
label: 'API Token',
|
|
28
|
-
helpText: 'A Cloudflare API token with Zone:Read and DNS:Edit permissions for the target zones.',
|
|
29
|
-
required: true,
|
|
30
|
-
secret: true,
|
|
31
|
-
},
|
|
32
|
-
],
|
|
33
|
-
},
|
|
34
|
-
];
|
|
35
|
-
/**
|
|
36
|
-
* Look up the descriptor for a given provider type.
|
|
37
|
-
*/
|
|
38
|
-
export function getDnsProviderTypeDescriptor(type) {
|
|
39
|
-
return dnsProviderTypeDescriptors.find((d) => d.type === type);
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG5zLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHNfaW50ZXJmYWNlcy9kYXRhL2Rucy1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxjQUFjLENBQUM7QUFpSTNEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUE4QztJQUNuRjtRQUNFLElBQUksRUFBRSxVQUFVO1FBQ2hCLFdBQVcsRUFBRSxxQkFBcUI7UUFDbEMsV0FBVyxFQUNULGlJQUFpSTtRQUNuSSxnQkFBZ0IsRUFBRSxFQUFFO0tBQ3JCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsWUFBWTtRQUNsQixXQUFXLEVBQUUsWUFBWTtRQUN6QixXQUFXLEVBQ1Qsc0dBQXNHO1FBQ3hHLGdCQUFnQixFQUFFO1lBQ2hCO2dCQUNFLEdBQUcsRUFBRSxVQUFVO2dCQUNmLEtBQUssRUFBRSxXQUFXO2dCQUNsQixRQUFRLEVBQ04sc0ZBQXNGO2dCQUN4RixRQUFRLEVBQUUsSUFBSTtnQkFDZCxNQUFNLEVBQUUsSUFBSTthQUNiO1NBQ0Y7S0FDRjtDQUNGLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sVUFBVSw0QkFBNEIsQ0FDMUMsSUFBc0I7SUFFdEIsT0FBTywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUM7QUFDakUsQ0FBQyJ9
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Supported DNS record types.
|
|
3
|
-
*/
|
|
4
|
-
export type TDnsRecordType = 'A' | 'AAAA' | 'CNAME' | 'MX' | 'TXT' | 'NS' | 'SOA' | 'CAA';
|
|
5
|
-
/**
|
|
6
|
-
* Where a DNS record came from.
|
|
7
|
-
*
|
|
8
|
-
* - 'local' → originated in this dcrouter (created via UI / API)
|
|
9
|
-
* - 'synced' → pulled from an upstream provider (Cloudflare, foreign
|
|
10
|
-
* dcrouter, …) during a sync operation
|
|
11
|
-
*/
|
|
12
|
-
export type TDnsRecordSource = 'local' | 'synced';
|
|
13
|
-
/**
|
|
14
|
-
* A DNS record. For dcrouter-hosted (authoritative) domains, the record is
|
|
15
|
-
* registered with the embedded smartdns.DnsServer. For provider-managed
|
|
16
|
-
* domains, the record is mirrored from / pushed to the provider API and
|
|
17
|
-
* `providerRecordId` holds the provider's internal record id (for updates
|
|
18
|
-
* and deletes).
|
|
19
|
-
*/
|
|
20
|
-
export interface IDnsRecord {
|
|
21
|
-
id: string;
|
|
22
|
-
/** ID of the parent IDomain. */
|
|
23
|
-
domainId: string;
|
|
24
|
-
/** Fully qualified record name (e.g. 'www.example.com'). */
|
|
25
|
-
name: string;
|
|
26
|
-
type: TDnsRecordType;
|
|
27
|
-
/**
|
|
28
|
-
* Record value as a string. For MX records, formatted as
|
|
29
|
-
* `<priority> <exchange>` (e.g. `10 mail.example.com`).
|
|
30
|
-
*/
|
|
31
|
-
value: string;
|
|
32
|
-
/** TTL in seconds. */
|
|
33
|
-
ttl: number;
|
|
34
|
-
/** Cloudflare-specific: whether the record is proxied through Cloudflare. */
|
|
35
|
-
proxied?: boolean;
|
|
36
|
-
source: TDnsRecordSource;
|
|
37
|
-
/** Provider's internal record id (for updates/deletes). Only set for provider records. */
|
|
38
|
-
providerRecordId?: string;
|
|
39
|
-
createdAt: number;
|
|
40
|
-
updatedAt: number;
|
|
41
|
-
createdBy: string;
|
|
42
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Where a domain came from / how it is managed.
|
|
3
|
-
*
|
|
4
|
-
* - 'dcrouter' → dcrouter is the authoritative DNS server for this domain;
|
|
5
|
-
* records are served by the embedded smartdns.DnsServer.
|
|
6
|
-
* Operators delegate the domain's NS records to make this
|
|
7
|
-
* effective.
|
|
8
|
-
* - 'provider' → domain was imported from an external DNS provider
|
|
9
|
-
* (e.g. Cloudflare). The provider stays authoritative;
|
|
10
|
-
* dcrouter only reads/writes records via the provider API.
|
|
11
|
-
*/
|
|
12
|
-
export type TDomainSource = 'dcrouter' | 'provider';
|
|
13
|
-
/**
|
|
14
|
-
* A domain under management by dcrouter.
|
|
15
|
-
*/
|
|
16
|
-
export interface IDomain {
|
|
17
|
-
id: string;
|
|
18
|
-
/** Fully qualified domain name (e.g. 'example.com'). */
|
|
19
|
-
name: string;
|
|
20
|
-
source: TDomainSource;
|
|
21
|
-
/** ID of the DnsProvider that owns this domain — only set when source === 'provider'. */
|
|
22
|
-
providerId?: string;
|
|
23
|
-
/** True when dcrouter is the authoritative DNS server for this domain (source === 'dcrouter'). */
|
|
24
|
-
authoritative: boolean;
|
|
25
|
-
/** Authoritative nameservers (display only — populated from provider for imported domains). */
|
|
26
|
-
nameservers?: string[];
|
|
27
|
-
/** Provider's internal zone identifier — only set when source === 'provider'. */
|
|
28
|
-
externalZoneId?: string;
|
|
29
|
-
/** Last time records were synced from the provider — only set when source === 'provider'. */
|
|
30
|
-
lastSyncedAt?: number;
|
|
31
|
-
description?: string;
|
|
32
|
-
createdAt: number;
|
|
33
|
-
updatedAt: number;
|
|
34
|
-
createdBy: string;
|
|
35
|
-
}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* DNS record validation status for a single email-related record (MX, SPF, DKIM, DMARC).
|
|
3
|
-
*/
|
|
4
|
-
export type TDnsRecordStatus = 'valid' | 'missing' | 'invalid' | 'unchecked';
|
|
5
|
-
/**
|
|
6
|
-
* An email domain managed by dcrouter.
|
|
7
|
-
*
|
|
8
|
-
* Each email domain is linked to an existing dcrouter DNS domain (dcrouter-hosted
|
|
9
|
-
* or provider-managed). The DNS management path is inherited from the linked domain
|
|
10
|
-
* — no separate DNS mode is needed.
|
|
11
|
-
*/
|
|
12
|
-
export interface IEmailDomain {
|
|
13
|
-
id: string;
|
|
14
|
-
/** Fully qualified email domain name (e.g. 'example.com' or 'mail.example.com'). */
|
|
15
|
-
domain: string;
|
|
16
|
-
/** ID of the linked dcrouter DNS domain — determines how DNS records are managed. */
|
|
17
|
-
linkedDomainId: string;
|
|
18
|
-
/** Optional subdomain prefix (e.g. 'mail' for mail.example.com). Empty/undefined = bare domain. */
|
|
19
|
-
subdomain?: string;
|
|
20
|
-
/** DKIM configuration and key state. */
|
|
21
|
-
dkim: IEmailDomainDkim;
|
|
22
|
-
/** Optional per-domain rate limits. */
|
|
23
|
-
rateLimits?: IEmailDomainRateLimits;
|
|
24
|
-
/** DNS record validation status — populated by validateDns(). */
|
|
25
|
-
dnsStatus: IEmailDomainDnsStatus;
|
|
26
|
-
createdAt: string;
|
|
27
|
-
updatedAt: string;
|
|
28
|
-
}
|
|
29
|
-
export interface IEmailDomainDkim {
|
|
30
|
-
/** DKIM selector (default: 'default'). */
|
|
31
|
-
selector: string;
|
|
32
|
-
/** RSA key size in bits (default: 2048). */
|
|
33
|
-
keySize: number;
|
|
34
|
-
/** Base64-encoded public key — populated after key generation. */
|
|
35
|
-
publicKey?: string;
|
|
36
|
-
/** Whether automatic key rotation is enabled. */
|
|
37
|
-
rotateKeys: boolean;
|
|
38
|
-
/** Days between key rotations (default: 90). */
|
|
39
|
-
rotationIntervalDays: number;
|
|
40
|
-
/** ISO date of last key rotation. */
|
|
41
|
-
lastRotatedAt?: string;
|
|
42
|
-
}
|
|
43
|
-
export interface IEmailDomainRateLimits {
|
|
44
|
-
outbound?: {
|
|
45
|
-
messagesPerMinute?: number;
|
|
46
|
-
messagesPerHour?: number;
|
|
47
|
-
messagesPerDay?: number;
|
|
48
|
-
};
|
|
49
|
-
inbound?: {
|
|
50
|
-
messagesPerMinute?: number;
|
|
51
|
-
connectionsPerIp?: number;
|
|
52
|
-
recipientsPerMessage?: number;
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
export interface IEmailDomainDnsStatus {
|
|
56
|
-
mx: TDnsRecordStatus;
|
|
57
|
-
spf: TDnsRecordStatus;
|
|
58
|
-
dkim: TDnsRecordStatus;
|
|
59
|
-
dmarc: TDnsRecordStatus;
|
|
60
|
-
lastCheckedAt?: string;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* A single required DNS record for an email domain — used for display / copy-paste.
|
|
64
|
-
*/
|
|
65
|
-
export interface IEmailDnsRecord {
|
|
66
|
-
type: 'MX' | 'TXT';
|
|
67
|
-
name: string;
|
|
68
|
-
value: string;
|
|
69
|
-
status: TDnsRecordStatus;
|
|
70
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export * from './auth.js';
|
|
2
|
-
export * from './stats.js';
|
|
3
|
-
export * from './remoteingress.js';
|
|
4
|
-
export * from './route-management.js';
|
|
5
|
-
export * from './target-profile.js';
|
|
6
|
-
export * from './vpn.js';
|
|
7
|
-
export * from './dns-provider.js';
|
|
8
|
-
export * from './domain.js';
|
|
9
|
-
export * from './dns-record.js';
|
|
10
|
-
export * from './acme-config.js';
|
|
11
|
-
export * from './email-domain.js';
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export * from './auth.js';
|
|
2
|
-
export * from './stats.js';
|
|
3
|
-
export * from './remoteingress.js';
|
|
4
|
-
export * from './route-management.js';
|
|
5
|
-
export * from './target-profile.js';
|
|
6
|
-
export * from './vpn.js';
|
|
7
|
-
export * from './dns-provider.js';
|
|
8
|
-
export * from './domain.js';
|
|
9
|
-
export * from './dns-record.js';
|
|
10
|
-
export * from './acme-config.js';
|
|
11
|
-
export * from './email-domain.js';
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c19pbnRlcmZhY2VzL2RhdGEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxtQkFBbUIsQ0FBQyJ9
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import type { IRouteConfig } from '@push.rocks/smartproxy';
|
|
2
|
-
/**
|
|
3
|
-
* A stored remote ingress edge registration.
|
|
4
|
-
*/
|
|
5
|
-
export interface IRemoteIngress {
|
|
6
|
-
id: string;
|
|
7
|
-
name: string;
|
|
8
|
-
secret: string;
|
|
9
|
-
listenPorts: number[];
|
|
10
|
-
/** UDP listen ports (e.g. for QUIC/HTTP3). Derived from routes with transport 'udp' or 'all'. */
|
|
11
|
-
listenPortsUdp?: number[];
|
|
12
|
-
enabled: boolean;
|
|
13
|
-
/** Whether to auto-derive ports from remoteIngress-tagged routes. Defaults to true. */
|
|
14
|
-
autoDerivePorts: boolean;
|
|
15
|
-
tags?: string[];
|
|
16
|
-
createdAt: number;
|
|
17
|
-
updatedAt: number;
|
|
18
|
-
/** Effective ports (union of manual + derived) — only present in API responses. */
|
|
19
|
-
effectiveListenPorts?: number[];
|
|
20
|
-
/** Ports explicitly set by the user — only present in API responses. */
|
|
21
|
-
manualPorts?: number[];
|
|
22
|
-
/** Ports auto-derived from route configs — only present in API responses. */
|
|
23
|
-
derivedPorts?: number[];
|
|
24
|
-
/** Effective UDP ports (union of manual + derived) — only present in API responses. */
|
|
25
|
-
effectiveListenPortsUdp?: number[];
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Runtime status of a remote ingress edge.
|
|
29
|
-
*/
|
|
30
|
-
export interface IRemoteIngressStatus {
|
|
31
|
-
edgeId: string;
|
|
32
|
-
connected: boolean;
|
|
33
|
-
publicIp: string | null;
|
|
34
|
-
activeTunnels: number;
|
|
35
|
-
lastHeartbeat: number | null;
|
|
36
|
-
connectedAt: number | null;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Route-level remote ingress configuration.
|
|
40
|
-
* When attached to a route, signals that traffic for this route
|
|
41
|
-
* should be accepted from remote edge nodes.
|
|
42
|
-
*/
|
|
43
|
-
export interface IRouteRemoteIngress {
|
|
44
|
-
/** Whether this route receives traffic from edge nodes */
|
|
45
|
-
enabled: boolean;
|
|
46
|
-
/** Optional filter: only edges whose id or tags match get this route's ports.
|
|
47
|
-
* When absent, the route applies to all edges. */
|
|
48
|
-
edgeFilter?: string[];
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Extended route config used within dcrouter.
|
|
52
|
-
* Adds optional `remoteIngress` and `vpnOnly` properties to SmartProxy's IRouteConfig.
|
|
53
|
-
* SmartProxy ignores unknown properties at runtime.
|
|
54
|
-
*/
|
|
55
|
-
export type IDcRouterRouteConfig = IRouteConfig & {
|
|
56
|
-
remoteIngress?: IRouteRemoteIngress;
|
|
57
|
-
/** When true, only VPN clients whose TargetProfile matches this route get access.
|
|
58
|
-
* Matching is determined by domain overlap, target overlap, or direct routeRef. */
|
|
59
|
-
vpnOnly?: boolean;
|
|
60
|
-
};
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import type { IRouteConfig } from '@push.rocks/smartproxy';
|
|
2
|
-
import type { IDcRouterRouteConfig } from './remoteingress.js';
|
|
3
|
-
export type IRouteSecurity = NonNullable<IRouteConfig['security']>;
|
|
4
|
-
export type TApiTokenScope = 'routes:read' | 'routes:write' | 'config:read' | 'tokens:read' | 'tokens:manage' | 'source-profiles:read' | 'source-profiles:write' | 'target-profiles:read' | 'target-profiles:write' | 'targets:read' | 'targets:write' | 'dns-providers:read' | 'dns-providers:write' | 'domains:read' | 'domains:write' | 'dns-records:read' | 'dns-records:write' | 'acme-config:read' | 'acme-config:write';
|
|
5
|
-
/**
|
|
6
|
-
* A reusable, named source profile that can be referenced by routes.
|
|
7
|
-
* Stores the full IRouteSecurity shape from SmartProxy.
|
|
8
|
-
*
|
|
9
|
-
* SourceProfile = source-side (who can access: ipAllowList, rateLimit, auth)
|
|
10
|
-
* TargetProfile = target-side (what can be accessed: domains, IP:port targets, route refs)
|
|
11
|
-
*/
|
|
12
|
-
export interface ISourceProfile {
|
|
13
|
-
id: string;
|
|
14
|
-
name: string;
|
|
15
|
-
description?: string;
|
|
16
|
-
/** The security configuration — mirrors SmartProxy's IRouteSecurity. */
|
|
17
|
-
security: IRouteSecurity;
|
|
18
|
-
/** IDs of profiles this one extends (resolved top-down, later overrides earlier). */
|
|
19
|
-
extendsProfiles?: string[];
|
|
20
|
-
createdAt: number;
|
|
21
|
-
updatedAt: number;
|
|
22
|
-
createdBy: string;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* A reusable, named network target (host + port) that can be referenced by routes.
|
|
26
|
-
*/
|
|
27
|
-
export interface INetworkTarget {
|
|
28
|
-
id: string;
|
|
29
|
-
name: string;
|
|
30
|
-
description?: string;
|
|
31
|
-
host: string | string[];
|
|
32
|
-
port: number;
|
|
33
|
-
createdAt: number;
|
|
34
|
-
updatedAt: number;
|
|
35
|
-
createdBy: string;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Metadata on a stored route tracking where its resolved values came from.
|
|
39
|
-
*/
|
|
40
|
-
export interface IRouteMetadata {
|
|
41
|
-
/** ID of the SourceProfileDoc used to resolve this route's security. */
|
|
42
|
-
sourceProfileRef?: string;
|
|
43
|
-
/** ID of the NetworkTargetDoc used to resolve this route's targets. */
|
|
44
|
-
networkTargetRef?: string;
|
|
45
|
-
/** Snapshot of the profile name at resolution time, for display. */
|
|
46
|
-
sourceProfileName?: string;
|
|
47
|
-
/** Snapshot of the target name at resolution time, for display. */
|
|
48
|
-
networkTargetName?: string;
|
|
49
|
-
/** Timestamp of last reference resolution. */
|
|
50
|
-
lastResolvedAt?: number;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* A route entry returned by the route management API.
|
|
54
|
-
*/
|
|
55
|
-
export interface IMergedRoute {
|
|
56
|
-
route: IDcRouterRouteConfig;
|
|
57
|
-
id: string;
|
|
58
|
-
enabled: boolean;
|
|
59
|
-
origin: 'config' | 'email' | 'dns' | 'api';
|
|
60
|
-
createdAt?: number;
|
|
61
|
-
updatedAt?: number;
|
|
62
|
-
metadata?: IRouteMetadata;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* A warning generated during route startup/apply.
|
|
66
|
-
*/
|
|
67
|
-
export interface IRouteWarning {
|
|
68
|
-
type: 'disabled-route';
|
|
69
|
-
routeName: string;
|
|
70
|
-
message: string;
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Public info about an API token (never includes the hash).
|
|
74
|
-
*/
|
|
75
|
-
export interface IApiTokenInfo {
|
|
76
|
-
id: string;
|
|
77
|
-
name: string;
|
|
78
|
-
scopes: TApiTokenScope[];
|
|
79
|
-
createdAt: number;
|
|
80
|
-
expiresAt: number | null;
|
|
81
|
-
lastUsedAt: number | null;
|
|
82
|
-
enabled: boolean;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* A route persisted in the database.
|
|
86
|
-
*/
|
|
87
|
-
export interface IRoute {
|
|
88
|
-
id: string;
|
|
89
|
-
route: IDcRouterRouteConfig;
|
|
90
|
-
enabled: boolean;
|
|
91
|
-
createdAt: number;
|
|
92
|
-
updatedAt: number;
|
|
93
|
-
createdBy: string;
|
|
94
|
-
origin: 'config' | 'email' | 'dns' | 'api';
|
|
95
|
-
metadata?: IRouteMetadata;
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* A stored API token, stored in /config-api/tokens/{id}.json
|
|
99
|
-
*/
|
|
100
|
-
export interface IStoredApiToken {
|
|
101
|
-
id: string;
|
|
102
|
-
name: string;
|
|
103
|
-
tokenHash: string;
|
|
104
|
-
scopes: TApiTokenScope[];
|
|
105
|
-
createdAt: number;
|
|
106
|
-
expiresAt: number | null;
|
|
107
|
-
lastUsedAt: number | null;
|
|
108
|
-
createdBy: string;
|
|
109
|
-
enabled: boolean;
|
|
110
|
-
}
|
|
@@ -1,238 +0,0 @@
|
|
|
1
|
-
export interface IServerStats {
|
|
2
|
-
uptime: number;
|
|
3
|
-
startTime: number;
|
|
4
|
-
memoryUsage: {
|
|
5
|
-
heapUsed: number;
|
|
6
|
-
heapTotal: number;
|
|
7
|
-
external: number;
|
|
8
|
-
rss: number;
|
|
9
|
-
maxMemoryMB?: number;
|
|
10
|
-
actualUsageBytes?: number;
|
|
11
|
-
actualUsagePercentage?: number;
|
|
12
|
-
};
|
|
13
|
-
cpuUsage: {
|
|
14
|
-
user: number;
|
|
15
|
-
system: number;
|
|
16
|
-
};
|
|
17
|
-
activeConnections: number;
|
|
18
|
-
totalConnections: number;
|
|
19
|
-
requestsPerSecond: number;
|
|
20
|
-
throughput: {
|
|
21
|
-
bytesIn: number;
|
|
22
|
-
bytesOut: number;
|
|
23
|
-
bytesInPerSecond: number;
|
|
24
|
-
bytesOutPerSecond: number;
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
export interface ITimeSeriesPoint {
|
|
28
|
-
timestamp: number;
|
|
29
|
-
value: number;
|
|
30
|
-
}
|
|
31
|
-
export interface IEmailStats {
|
|
32
|
-
sent: number;
|
|
33
|
-
received: number;
|
|
34
|
-
bounced: number;
|
|
35
|
-
queued: number;
|
|
36
|
-
failed: number;
|
|
37
|
-
averageDeliveryTime: number;
|
|
38
|
-
deliveryRate: number;
|
|
39
|
-
bounceRate: number;
|
|
40
|
-
timeSeries?: {
|
|
41
|
-
sent: ITimeSeriesPoint[];
|
|
42
|
-
received: ITimeSeriesPoint[];
|
|
43
|
-
failed: ITimeSeriesPoint[];
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
export interface IDnsStats {
|
|
47
|
-
totalQueries: number;
|
|
48
|
-
cacheHits: number;
|
|
49
|
-
cacheMisses: number;
|
|
50
|
-
cacheHitRate: number;
|
|
51
|
-
activeDomains: number;
|
|
52
|
-
averageResponseTime: number;
|
|
53
|
-
queryTypes: {
|
|
54
|
-
[key: string]: number;
|
|
55
|
-
};
|
|
56
|
-
timeSeries?: {
|
|
57
|
-
queries: ITimeSeriesPoint[];
|
|
58
|
-
};
|
|
59
|
-
recentQueries?: Array<{
|
|
60
|
-
timestamp: number;
|
|
61
|
-
domain: string;
|
|
62
|
-
type: string;
|
|
63
|
-
answered: boolean;
|
|
64
|
-
responseTimeMs: number;
|
|
65
|
-
}>;
|
|
66
|
-
}
|
|
67
|
-
export interface IRateLimitInfo {
|
|
68
|
-
domain: string;
|
|
69
|
-
currentRate: number;
|
|
70
|
-
limit: number;
|
|
71
|
-
remaining: number;
|
|
72
|
-
resetTime: number;
|
|
73
|
-
blocked: boolean;
|
|
74
|
-
}
|
|
75
|
-
export interface ISecurityEvent {
|
|
76
|
-
timestamp: number;
|
|
77
|
-
level: string;
|
|
78
|
-
type: string;
|
|
79
|
-
message: string;
|
|
80
|
-
details?: any;
|
|
81
|
-
ipAddress?: string;
|
|
82
|
-
domain?: string;
|
|
83
|
-
success?: boolean;
|
|
84
|
-
}
|
|
85
|
-
export interface ISecurityMetrics {
|
|
86
|
-
blockedIPs: string[];
|
|
87
|
-
reputationScores: {
|
|
88
|
-
[domain: string]: number;
|
|
89
|
-
};
|
|
90
|
-
spamDetected: number;
|
|
91
|
-
malwareDetected: number;
|
|
92
|
-
phishingDetected: number;
|
|
93
|
-
authenticationFailures: number;
|
|
94
|
-
suspiciousActivities: number;
|
|
95
|
-
recentEvents?: ISecurityEvent[];
|
|
96
|
-
}
|
|
97
|
-
export interface ILogEntry {
|
|
98
|
-
timestamp: number;
|
|
99
|
-
level: 'debug' | 'info' | 'warn' | 'error';
|
|
100
|
-
category: 'smtp' | 'dns' | 'security' | 'system' | 'email';
|
|
101
|
-
message: string;
|
|
102
|
-
metadata?: any;
|
|
103
|
-
}
|
|
104
|
-
export interface IConnectionInfo {
|
|
105
|
-
id: string;
|
|
106
|
-
remoteAddress: string;
|
|
107
|
-
localAddress: string;
|
|
108
|
-
startTime: number;
|
|
109
|
-
protocol: 'smtp' | 'smtps' | 'http' | 'https';
|
|
110
|
-
state: 'connecting' | 'connected' | 'authenticated' | 'transmitting' | 'closing';
|
|
111
|
-
bytesReceived: number;
|
|
112
|
-
bytesSent: number;
|
|
113
|
-
}
|
|
114
|
-
export interface IQueueStatus {
|
|
115
|
-
name: string;
|
|
116
|
-
size: number;
|
|
117
|
-
processing: number;
|
|
118
|
-
failed: number;
|
|
119
|
-
retrying: number;
|
|
120
|
-
averageProcessingTime: number;
|
|
121
|
-
}
|
|
122
|
-
export interface IHealthStatus {
|
|
123
|
-
healthy: boolean;
|
|
124
|
-
uptime: number;
|
|
125
|
-
services: {
|
|
126
|
-
[service: string]: {
|
|
127
|
-
status: 'healthy' | 'degraded' | 'unhealthy';
|
|
128
|
-
message?: string;
|
|
129
|
-
lastCheck: number;
|
|
130
|
-
};
|
|
131
|
-
};
|
|
132
|
-
version?: string;
|
|
133
|
-
}
|
|
134
|
-
export interface IDomainActivity {
|
|
135
|
-
domain: string;
|
|
136
|
-
bytesInPerSecond: number;
|
|
137
|
-
bytesOutPerSecond: number;
|
|
138
|
-
activeConnections: number;
|
|
139
|
-
routeCount: number;
|
|
140
|
-
}
|
|
141
|
-
export interface INetworkMetrics {
|
|
142
|
-
totalBandwidth: {
|
|
143
|
-
in: number;
|
|
144
|
-
out: number;
|
|
145
|
-
};
|
|
146
|
-
totalBytes?: {
|
|
147
|
-
in: number;
|
|
148
|
-
out: number;
|
|
149
|
-
};
|
|
150
|
-
activeConnections: number;
|
|
151
|
-
connectionDetails: IConnectionDetails[];
|
|
152
|
-
topEndpoints: Array<{
|
|
153
|
-
endpoint: string;
|
|
154
|
-
connections: number;
|
|
155
|
-
bandwidth: {
|
|
156
|
-
in: number;
|
|
157
|
-
out: number;
|
|
158
|
-
};
|
|
159
|
-
}>;
|
|
160
|
-
topEndpointsByBandwidth: Array<{
|
|
161
|
-
endpoint: string;
|
|
162
|
-
connections: number;
|
|
163
|
-
bandwidth: {
|
|
164
|
-
in: number;
|
|
165
|
-
out: number;
|
|
166
|
-
};
|
|
167
|
-
}>;
|
|
168
|
-
domainActivity: IDomainActivity[];
|
|
169
|
-
throughputHistory?: Array<{
|
|
170
|
-
timestamp: number;
|
|
171
|
-
in: number;
|
|
172
|
-
out: number;
|
|
173
|
-
}>;
|
|
174
|
-
requestsPerSecond?: number;
|
|
175
|
-
requestsTotal?: number;
|
|
176
|
-
backends?: IBackendInfo[];
|
|
177
|
-
frontendProtocols?: IProtocolDistribution | null;
|
|
178
|
-
backendProtocols?: IProtocolDistribution | null;
|
|
179
|
-
}
|
|
180
|
-
export interface IProtocolDistribution {
|
|
181
|
-
h1Active: number;
|
|
182
|
-
h1Total: number;
|
|
183
|
-
h2Active: number;
|
|
184
|
-
h2Total: number;
|
|
185
|
-
h3Active: number;
|
|
186
|
-
h3Total: number;
|
|
187
|
-
wsActive: number;
|
|
188
|
-
wsTotal: number;
|
|
189
|
-
otherActive: number;
|
|
190
|
-
otherTotal: number;
|
|
191
|
-
}
|
|
192
|
-
export interface IConnectionDetails {
|
|
193
|
-
remoteAddress: string;
|
|
194
|
-
protocol: 'http' | 'https' | 'smtp' | 'smtps';
|
|
195
|
-
state: 'connecting' | 'connected' | 'established' | 'closing';
|
|
196
|
-
startTime: number;
|
|
197
|
-
bytesIn: number;
|
|
198
|
-
bytesOut: number;
|
|
199
|
-
}
|
|
200
|
-
export interface IBackendInfo {
|
|
201
|
-
backend: string;
|
|
202
|
-
domain: string | null;
|
|
203
|
-
protocol: string;
|
|
204
|
-
activeConnections: number;
|
|
205
|
-
totalConnections: number;
|
|
206
|
-
connectErrors: number;
|
|
207
|
-
handshakeErrors: number;
|
|
208
|
-
requestErrors: number;
|
|
209
|
-
avgConnectTimeMs: number;
|
|
210
|
-
poolHitRate: number;
|
|
211
|
-
h2Failures: number;
|
|
212
|
-
h2Suppressed: boolean;
|
|
213
|
-
h3Suppressed: boolean;
|
|
214
|
-
h2CooldownRemainingSecs: number | null;
|
|
215
|
-
h3CooldownRemainingSecs: number | null;
|
|
216
|
-
h2ConsecutiveFailures: number | null;
|
|
217
|
-
h3ConsecutiveFailures: number | null;
|
|
218
|
-
h3Port: number | null;
|
|
219
|
-
cacheAgeSecs: number | null;
|
|
220
|
-
}
|
|
221
|
-
export interface IRadiusStats {
|
|
222
|
-
running: boolean;
|
|
223
|
-
uptime: number;
|
|
224
|
-
authRequests: number;
|
|
225
|
-
authAccepts: number;
|
|
226
|
-
authRejects: number;
|
|
227
|
-
accountingRequests: number;
|
|
228
|
-
activeSessions: number;
|
|
229
|
-
totalInputBytes: number;
|
|
230
|
-
totalOutputBytes: number;
|
|
231
|
-
}
|
|
232
|
-
export interface IVpnStats {
|
|
233
|
-
running: boolean;
|
|
234
|
-
subnet: string;
|
|
235
|
-
registeredClients: number;
|
|
236
|
-
connectedClients: number;
|
|
237
|
-
wgListenPort: number;
|
|
238
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A specific IP:port target within a TargetProfile.
|
|
3
|
-
*/
|
|
4
|
-
export interface ITargetProfileTarget {
|
|
5
|
-
ip: string;
|
|
6
|
-
port: number;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* A reusable, named target profile that defines what resources a VPN client can reach.
|
|
10
|
-
* Assigned to VPN clients via targetProfileIds.
|
|
11
|
-
*
|
|
12
|
-
* SourceProfile = source-side (who can access: ipAllowList, rateLimit, auth)
|
|
13
|
-
* TargetProfile = target-side (what can be accessed: domains, IP:port targets, route refs)
|
|
14
|
-
*/
|
|
15
|
-
export interface ITargetProfile {
|
|
16
|
-
id: string;
|
|
17
|
-
name: string;
|
|
18
|
-
description?: string;
|
|
19
|
-
/** Domain patterns this profile grants access to (supports wildcards: '*.example.com') */
|
|
20
|
-
domains?: string[];
|
|
21
|
-
/** Specific IP:port targets this profile grants access to */
|
|
22
|
-
targets?: ITargetProfileTarget[];
|
|
23
|
-
/** Route references by stored route ID or route name */
|
|
24
|
-
routeRefs?: string[];
|
|
25
|
-
createdAt: number;
|
|
26
|
-
updatedAt: number;
|
|
27
|
-
createdBy: string;
|
|
28
|
-
}
|