@serve.zone/dcrouter 13.5.0 → 13.7.1

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.
Files changed (136) hide show
  1. package/dist_serve/bundle.js +1705 -1365
  2. package/dist_ts/00_commitinfo_data.js +1 -1
  3. package/dist_ts/classes.dcrouter.d.ts +2 -5
  4. package/dist_ts/classes.dcrouter.js +41 -10
  5. package/dist_ts/db/documents/classes.dns-provider.doc.d.ts +22 -0
  6. package/dist_ts/db/documents/classes.dns-provider.doc.js +134 -0
  7. package/dist_ts/db/documents/classes.dns-record.doc.d.ts +21 -0
  8. package/dist_ts/db/documents/classes.dns-record.doc.js +143 -0
  9. package/dist_ts/db/documents/classes.domain.doc.d.ts +22 -0
  10. package/dist_ts/db/documents/classes.domain.doc.js +146 -0
  11. package/dist_ts/db/documents/index.d.ts +3 -0
  12. package/dist_ts/db/documents/index.js +5 -1
  13. package/dist_ts/dns/index.d.ts +2 -0
  14. package/dist_ts/dns/index.js +3 -0
  15. package/dist_ts/dns/manager.dns.d.ts +227 -0
  16. package/dist_ts/dns/manager.dns.js +747 -0
  17. package/dist_ts/dns/providers/cloudflare.provider.d.ts +21 -0
  18. package/dist_ts/dns/providers/cloudflare.provider.js +106 -0
  19. package/dist_ts/dns/providers/factory.d.ts +23 -0
  20. package/dist_ts/dns/providers/factory.js +38 -0
  21. package/dist_ts/dns/providers/index.d.ts +3 -0
  22. package/dist_ts/dns/providers/index.js +4 -0
  23. package/dist_ts/dns/providers/interfaces.d.ts +54 -0
  24. package/dist_ts/dns/providers/interfaces.js +2 -0
  25. package/dist_ts/opsserver/classes.opsserver.d.ts +3 -0
  26. package/dist_ts/opsserver/classes.opsserver.js +7 -1
  27. package/dist_ts/opsserver/handlers/config.handler.js +11 -2
  28. package/dist_ts/opsserver/handlers/dns-provider.handler.d.ts +16 -0
  29. package/dist_ts/opsserver/handlers/dns-provider.handler.js +119 -0
  30. package/dist_ts/opsserver/handlers/dns-record.handler.d.ts +13 -0
  31. package/dist_ts/opsserver/handlers/dns-record.handler.js +98 -0
  32. package/dist_ts/opsserver/handlers/domain.handler.d.ts +13 -0
  33. package/dist_ts/opsserver/handlers/domain.handler.js +124 -0
  34. package/dist_ts/opsserver/handlers/index.d.ts +3 -0
  35. package/dist_ts/opsserver/handlers/index.js +4 -1
  36. package/dist_ts_interfaces/data/dns-provider.d.ts +112 -0
  37. package/dist_ts_interfaces/data/dns-provider.js +27 -0
  38. package/dist_ts_interfaces/data/dns-record.d.ts +40 -0
  39. package/dist_ts_interfaces/data/dns-record.js +2 -0
  40. package/dist_ts_interfaces/data/domain.d.ts +34 -0
  41. package/dist_ts_interfaces/data/domain.js +2 -0
  42. package/dist_ts_interfaces/data/index.d.ts +3 -0
  43. package/dist_ts_interfaces/data/index.js +4 -1
  44. package/dist_ts_interfaces/data/route-management.d.ts +1 -1
  45. package/dist_ts_interfaces/requests/dns-providers.d.ts +117 -0
  46. package/dist_ts_interfaces/requests/dns-providers.js +2 -0
  47. package/dist_ts_interfaces/requests/dns-records.d.ts +89 -0
  48. package/dist_ts_interfaces/requests/dns-records.js +2 -0
  49. package/dist_ts_interfaces/requests/domains.d.ts +118 -0
  50. package/dist_ts_interfaces/requests/domains.js +2 -0
  51. package/dist_ts_interfaces/requests/index.d.ts +3 -0
  52. package/dist_ts_interfaces/requests/index.js +4 -1
  53. package/dist_ts_web/00_commitinfo_data.js +1 -1
  54. package/dist_ts_web/appstate.d.ts +72 -0
  55. package/dist_ts_web/appstate.js +308 -6
  56. package/dist_ts_web/elements/access/ops-view-apitokens.js +1 -1
  57. package/dist_ts_web/elements/access/ops-view-users.js +1 -1
  58. package/dist_ts_web/elements/domains/dns-provider-form.d.ts +58 -0
  59. package/dist_ts_web/elements/domains/dns-provider-form.js +268 -0
  60. package/dist_ts_web/elements/domains/index.d.ts +5 -0
  61. package/dist_ts_web/elements/domains/index.js +6 -0
  62. package/dist_ts_web/elements/{ops-view-certificates.d.ts → domains/ops-view-certificates.d.ts} +1 -1
  63. package/dist_ts_web/elements/{ops-view-certificates.js → domains/ops-view-certificates.js} +5 -5
  64. package/dist_ts_web/elements/domains/ops-view-dns.d.ts +17 -0
  65. package/dist_ts_web/elements/domains/ops-view-dns.js +304 -0
  66. package/dist_ts_web/elements/domains/ops-view-domains.d.ts +18 -0
  67. package/dist_ts_web/elements/domains/ops-view-domains.js +361 -0
  68. package/dist_ts_web/elements/domains/ops-view-providers.d.ts +21 -0
  69. package/dist_ts_web/elements/domains/ops-view-providers.js +316 -0
  70. package/dist_ts_web/elements/email/ops-view-email-security.js +1 -1
  71. package/dist_ts_web/elements/email/ops-view-emails.js +1 -1
  72. package/dist_ts_web/elements/index.d.ts +1 -1
  73. package/dist_ts_web/elements/index.js +2 -2
  74. package/dist_ts_web/elements/network/ops-view-network-activity.js +1 -1
  75. package/dist_ts_web/elements/network/ops-view-networktargets.js +1 -1
  76. package/dist_ts_web/elements/network/ops-view-remoteingress.js +1 -1
  77. package/dist_ts_web/elements/network/ops-view-routes.js +1 -1
  78. package/dist_ts_web/elements/network/ops-view-sourceprofiles.js +1 -1
  79. package/dist_ts_web/elements/network/ops-view-targetprofiles.js +1 -1
  80. package/dist_ts_web/elements/network/ops-view-vpn.js +1 -1
  81. package/dist_ts_web/elements/ops-dashboard.js +14 -5
  82. package/dist_ts_web/elements/ops-view-logs.js +1 -1
  83. package/dist_ts_web/elements/overview/ops-view-config.js +3 -3
  84. package/dist_ts_web/elements/overview/ops-view-overview.js +1 -1
  85. package/dist_ts_web/elements/security/ops-view-security-authentication.js +1 -1
  86. package/dist_ts_web/elements/security/ops-view-security-blocked.js +1 -1
  87. package/dist_ts_web/elements/security/ops-view-security-overview.js +1 -1
  88. package/dist_ts_web/router.d.ts +1 -1
  89. package/dist_ts_web/router.js +4 -2
  90. package/package.json +2 -2
  91. package/ts/00_commitinfo_data.ts +1 -1
  92. package/ts/classes.dcrouter.ts +46 -17
  93. package/ts/db/documents/classes.dns-provider.doc.ts +63 -0
  94. package/ts/db/documents/classes.dns-record.doc.ts +62 -0
  95. package/ts/db/documents/classes.domain.doc.ts +66 -0
  96. package/ts/db/documents/index.ts +5 -0
  97. package/ts/dns/index.ts +2 -0
  98. package/ts/dns/manager.dns.ts +869 -0
  99. package/ts/dns/providers/cloudflare.provider.ts +131 -0
  100. package/ts/dns/providers/factory.ts +48 -0
  101. package/ts/dns/providers/index.ts +3 -0
  102. package/ts/dns/providers/interfaces.ts +67 -0
  103. package/ts/opsserver/classes.opsserver.ts +6 -0
  104. package/ts/opsserver/handlers/config.handler.ts +10 -1
  105. package/ts/opsserver/handlers/dns-provider.handler.ts +159 -0
  106. package/ts/opsserver/handlers/dns-record.handler.ts +127 -0
  107. package/ts/opsserver/handlers/domain.handler.ts +161 -0
  108. package/ts/opsserver/handlers/index.ts +4 -1
  109. package/ts_web/00_commitinfo_data.ts +1 -1
  110. package/ts_web/appstate.ts +403 -5
  111. package/ts_web/elements/access/ops-view-apitokens.ts +1 -1
  112. package/ts_web/elements/access/ops-view-users.ts +1 -1
  113. package/ts_web/elements/domains/dns-provider-form.ts +216 -0
  114. package/ts_web/elements/domains/index.ts +5 -0
  115. package/ts_web/elements/{ops-view-certificates.ts → domains/ops-view-certificates.ts} +4 -4
  116. package/ts_web/elements/domains/ops-view-dns.ts +273 -0
  117. package/ts_web/elements/domains/ops-view-domains.ts +335 -0
  118. package/ts_web/elements/domains/ops-view-providers.ts +284 -0
  119. package/ts_web/elements/email/ops-view-email-security.ts +1 -1
  120. package/ts_web/elements/email/ops-view-emails.ts +1 -1
  121. package/ts_web/elements/index.ts +1 -1
  122. package/ts_web/elements/network/ops-view-network-activity.ts +1 -1
  123. package/ts_web/elements/network/ops-view-networktargets.ts +1 -1
  124. package/ts_web/elements/network/ops-view-remoteingress.ts +1 -1
  125. package/ts_web/elements/network/ops-view-routes.ts +1 -1
  126. package/ts_web/elements/network/ops-view-sourceprofiles.ts +1 -1
  127. package/ts_web/elements/network/ops-view-targetprofiles.ts +1 -1
  128. package/ts_web/elements/network/ops-view-vpn.ts +1 -1
  129. package/ts_web/elements/ops-dashboard.ts +14 -4
  130. package/ts_web/elements/ops-view-logs.ts +1 -1
  131. package/ts_web/elements/overview/ops-view-config.ts +2 -2
  132. package/ts_web/elements/overview/ops-view-overview.ts +1 -1
  133. package/ts_web/elements/security/ops-view-security-authentication.ts +1 -1
  134. package/ts_web/elements/security/ops-view-security-blocked.ts +1 -1
  135. package/ts_web/elements/security/ops-view-security-overview.ts +1 -1
  136. package/ts_web/router.ts +3 -1
@@ -77,7 +77,7 @@ export class OpsViewTargetProfiles extends DeesElement {
77
77
  ];
78
78
 
79
79
  return html`
80
- <dees-heading level="hr">Target Profiles</dees-heading>
80
+ <dees-heading level="3">Target Profiles</dees-heading>
81
81
  <div class="profilesContainer">
82
82
  <dees-statsgrid .tiles=${statsTiles}></dees-statsgrid>
83
83
  <dees-table
@@ -223,7 +223,7 @@ export class OpsViewVpn extends DeesElement {
223
223
  ];
224
224
 
225
225
  return html`
226
- <dees-heading level="hr">VPN</dees-heading>
226
+ <dees-heading level="3">VPN</dees-heading>
227
227
  <div class="vpnContainer">
228
228
 
229
229
  ${this.vpnState.newClientConfig ? html`
@@ -15,7 +15,6 @@ import type { IView } from '@design.estate/dees-catalog';
15
15
 
16
16
  // Top-level / flat views
17
17
  import { OpsViewLogs } from './ops-view-logs.js';
18
- import { OpsViewCertificates } from './ops-view-certificates.js';
19
18
 
20
19
  // Overview group
21
20
  import { OpsViewOverview } from './overview/ops-view-overview.js';
@@ -43,6 +42,12 @@ import { OpsViewSecurityOverview } from './security/ops-view-security-overview.j
43
42
  import { OpsViewSecurityBlocked } from './security/ops-view-security-blocked.js';
44
43
  import { OpsViewSecurityAuthentication } from './security/ops-view-security-authentication.js';
45
44
 
45
+ // Domains group
46
+ import { OpsViewProviders } from './domains/ops-view-providers.js';
47
+ import { OpsViewDomains } from './domains/ops-view-domains.js';
48
+ import { OpsViewDns } from './domains/ops-view-dns.js';
49
+ import { OpsViewCertificates } from './domains/ops-view-certificates.js';
50
+
46
51
  /**
47
52
  * Extended IView with explicit URL slug. Without an explicit `slug`, the URL
48
53
  * slug is derived from `name.toLowerCase().replace(/\s+/g, '')`.
@@ -128,9 +133,14 @@ export class OpsDashboard extends DeesElement {
128
133
  ],
129
134
  },
130
135
  {
131
- name: 'Certificates',
132
- iconName: 'lucide:badgeCheck',
133
- element: OpsViewCertificates,
136
+ name: 'Domains',
137
+ iconName: 'lucide:globe',
138
+ subViews: [
139
+ { slug: 'providers', name: 'Providers', iconName: 'lucide:plug', element: OpsViewProviders },
140
+ { slug: 'domains', name: 'Domains', iconName: 'lucide:globe', element: OpsViewDomains },
141
+ { slug: 'dns', name: 'DNS', iconName: 'lucide:list', element: OpsViewDns },
142
+ { slug: 'certificates', name: 'Certificates', iconName: 'lucide:badgeCheck', element: OpsViewCertificates },
143
+ ],
134
144
  },
135
145
  ];
136
146
 
@@ -39,7 +39,7 @@ export class OpsViewLogs extends DeesElement {
39
39
 
40
40
  public render() {
41
41
  return html`
42
- <dees-heading level="hr">Logs</dees-heading>
42
+ <dees-heading level="3">Logs</dees-heading>
43
43
 
44
44
  <dees-chart-log
45
45
  .label=${'Application Logs'}
@@ -57,7 +57,7 @@ export class OpsViewConfig extends DeesElement {
57
57
 
58
58
  public render() {
59
59
  return html`
60
- <dees-heading level="hr">Configuration</dees-heading>
60
+ <dees-heading level="3">Configuration</dees-heading>
61
61
 
62
62
  ${this.configState.isLoading
63
63
  ? html`
@@ -227,7 +227,7 @@ export class OpsViewConfig extends DeesElement {
227
227
 
228
228
  const status = tls.source === 'none' ? 'not-configured' : 'enabled';
229
229
  const actions: IConfigSectionAction[] = [
230
- { label: 'View Certificates', icon: 'lucide:arrow-right', event: 'navigate', detail: { view: 'certificates' } },
230
+ { label: 'View Certificates', icon: 'lucide:arrow-right', event: 'navigate', detail: { view: 'domains', subview: 'certificates' } },
231
231
  ];
232
232
 
233
233
  return html`
@@ -94,7 +94,7 @@ export class OpsViewOverview extends DeesElement {
94
94
 
95
95
  public render() {
96
96
  return html`
97
- <dees-heading level="hr">Stats</dees-heading>
97
+ <dees-heading level="3">Stats</dees-heading>
98
98
 
99
99
  ${this.statsState.isLoading ? html`
100
100
  <div class="loadingMessage">
@@ -96,7 +96,7 @@ export class OpsViewSecurityAuthentication extends DeesElement {
96
96
  }));
97
97
 
98
98
  return html`
99
- <dees-heading level="hr">Authentication</dees-heading>
99
+ <dees-heading level="3">Authentication</dees-heading>
100
100
 
101
101
  <dees-statsgrid
102
102
  .tiles=${tiles}
@@ -69,7 +69,7 @@ export class OpsViewSecurityBlocked extends DeesElement {
69
69
  ];
70
70
 
71
71
  return html`
72
- <dees-heading level="hr">Blocked IPs</dees-heading>
72
+ <dees-heading level="3">Blocked IPs</dees-heading>
73
73
 
74
74
  <dees-statsgrid
75
75
  .tiles=${tiles}
@@ -118,7 +118,7 @@ export class OpsViewSecurityOverview extends DeesElement {
118
118
  ];
119
119
 
120
120
  return html`
121
- <dees-heading level="hr">Overview</dees-heading>
121
+ <dees-heading level="3">Overview</dees-heading>
122
122
 
123
123
  <dees-statsgrid
124
124
  .tiles=${tiles}
package/ts_web/router.ts CHANGED
@@ -4,7 +4,7 @@ import * as appstate from './appstate.js';
4
4
  const SmartRouter = plugins.domtools.plugins.smartrouter.SmartRouter;
5
5
 
6
6
  // Flat top-level views (no subviews)
7
- const flatViews = ['logs', 'certificates'] as const;
7
+ const flatViews = ['logs'] as const;
8
8
 
9
9
  // Tabbed views and their valid subviews
10
10
  const subviewMap: Record<string, readonly string[]> = {
@@ -13,6 +13,7 @@ const subviewMap: Record<string, readonly string[]> = {
13
13
  email: ['log', 'security'] as const,
14
14
  access: ['apitokens', 'users'] as const,
15
15
  security: ['overview', 'blocked', 'authentication'] as const,
16
+ domains: ['providers', 'domains', 'dns', 'certificates'] as const,
16
17
  };
17
18
 
18
19
  // Default subview when user visits the bare parent URL
@@ -22,6 +23,7 @@ const defaultSubview: Record<string, string> = {
22
23
  email: 'log',
23
24
  access: 'apitokens',
24
25
  security: 'overview',
26
+ domains: 'domains',
25
27
  };
26
28
 
27
29
  export const validTopLevelViews = [...flatViews, ...Object.keys(subviewMap)] as const;