@serve.zone/dcrouter 8.1.0 → 9.1.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 +1417 -992
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/monitoring/classes.metricsmanager.d.ts +169 -0
- package/dist_ts/monitoring/classes.metricsmanager.js +591 -0
- package/dist_ts/monitoring/index.d.ts +1 -0
- package/dist_ts/monitoring/index.js +2 -0
- package/dist_ts/opsserver/handlers/certificate.handler.d.ts +34 -0
- package/dist_ts/opsserver/handlers/certificate.handler.js +419 -0
- package/dist_ts/opsserver/handlers/email-ops.handler.d.ts +32 -0
- package/dist_ts/opsserver/handlers/email-ops.handler.js +226 -0
- package/dist_ts/opsserver/handlers/radius.handler.d.ts +8 -0
- package/dist_ts/opsserver/handlers/radius.handler.js +296 -0
- package/dist_ts/opsserver/handlers/remoteingress.handler.d.ts +8 -0
- package/dist_ts/opsserver/handlers/remoteingress.handler.js +154 -0
- package/dist_ts/opsserver/handlers/security.handler.d.ts +11 -0
- package/dist_ts/opsserver/handlers/security.handler.js +232 -0
- package/dist_ts/opsserver/handlers/stats.handler.d.ts +13 -0
- package/dist_ts/opsserver/handlers/stats.handler.js +400 -0
- package/dist_ts/security/classes.securitylogger.d.ts +140 -0
- package/dist_ts_interfaces/requests/config.d.ts +77 -1
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/appstate.d.ts +1 -1
- package/dist_ts_web/elements/ops-dashboard.js +15 -5
- package/dist_ts_web/elements/ops-view-apitokens.js +8 -4
- package/dist_ts_web/elements/ops-view-config.d.ts +10 -8
- package/dist_ts_web/elements/ops-view-config.js +215 -297
- package/package.json +2 -2
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/opsserver/handlers/config.handler.ts +154 -72
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/appstate.ts +1 -1
- package/ts_web/elements/ops-dashboard.ts +14 -4
- package/ts_web/elements/ops-view-apitokens.ts +7 -3
- package/ts_web/elements/ops-view-config.ts +237 -299
|
@@ -35,6 +35,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
|
|
|
35
35
|
import * as plugins from '../plugins.js';
|
|
36
36
|
import * as shared from './shared/index.js';
|
|
37
37
|
import * as appstate from '../appstate.js';
|
|
38
|
+
import { appRouter } from '../router.js';
|
|
38
39
|
import { DeesElement, customElement, html, state, css, cssManager, } from '@design.estate/dees-element';
|
|
39
40
|
let OpsViewConfig = (() => {
|
|
40
41
|
let _classDecorators = [customElement('ops-view-config')];
|
|
@@ -76,165 +77,19 @@ let OpsViewConfig = (() => {
|
|
|
76
77
|
cssManager.defaultStyles,
|
|
77
78
|
shared.viewHostCss,
|
|
78
79
|
css `
|
|
79
|
-
.configSection {
|
|
80
|
-
background: ${cssManager.bdTheme('#fff', '#222')};
|
|
81
|
-
border: 1px solid ${cssManager.bdTheme('#e9ecef', '#333')};
|
|
82
|
-
border-radius: 8px;
|
|
83
|
-
margin-bottom: 24px;
|
|
84
|
-
overflow: hidden;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
.sectionHeader {
|
|
88
|
-
background: ${cssManager.bdTheme('#f8f9fa', '#1a1a1a')};
|
|
89
|
-
padding: 16px 24px;
|
|
90
|
-
border-bottom: 1px solid ${cssManager.bdTheme('#e9ecef', '#333')};
|
|
91
|
-
display: flex;
|
|
92
|
-
justify-content: space-between;
|
|
93
|
-
align-items: center;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
.sectionTitle {
|
|
97
|
-
font-size: 18px;
|
|
98
|
-
font-weight: 600;
|
|
99
|
-
color: ${cssManager.bdTheme('#333', '#ccc')};
|
|
100
|
-
display: flex;
|
|
101
|
-
align-items: center;
|
|
102
|
-
gap: 12px;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
.sectionTitle dees-icon {
|
|
106
|
-
font-size: 20px;
|
|
107
|
-
color: ${cssManager.bdTheme('#666', '#888')};
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
.sectionContent {
|
|
111
|
-
padding: 24px;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
.configField {
|
|
115
|
-
margin-bottom: 20px;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
.configField:last-child {
|
|
119
|
-
margin-bottom: 0;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
.fieldLabel {
|
|
123
|
-
font-size: 13px;
|
|
124
|
-
font-weight: 600;
|
|
125
|
-
color: ${cssManager.bdTheme('#666', '#999')};
|
|
126
|
-
margin-bottom: 8px;
|
|
127
|
-
display: block;
|
|
128
|
-
text-transform: uppercase;
|
|
129
|
-
letter-spacing: 0.5px;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
.fieldValue {
|
|
133
|
-
font-family: 'Consolas', 'Monaco', monospace;
|
|
134
|
-
font-size: 14px;
|
|
135
|
-
color: ${cssManager.bdTheme('#333', '#ccc')};
|
|
136
|
-
background: ${cssManager.bdTheme('#f8f9fa', '#1a1a1a')};
|
|
137
|
-
padding: 10px 14px;
|
|
138
|
-
border-radius: 6px;
|
|
139
|
-
border: 1px solid ${cssManager.bdTheme('#e9ecef', '#333')};
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
.fieldValue.empty {
|
|
143
|
-
color: ${cssManager.bdTheme('#999', '#666')};
|
|
144
|
-
font-style: italic;
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
.nestedFields {
|
|
148
|
-
margin-left: 16px;
|
|
149
|
-
padding-left: 16px;
|
|
150
|
-
border-left: 2px solid ${cssManager.bdTheme('#e9ecef', '#333')};
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
/* Status badge styles */
|
|
154
|
-
.statusBadge {
|
|
155
|
-
display: inline-flex;
|
|
156
|
-
align-items: center;
|
|
157
|
-
gap: 6px;
|
|
158
|
-
padding: 4px 12px;
|
|
159
|
-
border-radius: 20px;
|
|
160
|
-
font-size: 13px;
|
|
161
|
-
font-weight: 600;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
.statusBadge.enabled {
|
|
165
|
-
background: ${cssManager.bdTheme('#d4edda', '#1a3d1a')};
|
|
166
|
-
color: ${cssManager.bdTheme('#155724', '#66cc66')};
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
.statusBadge.disabled {
|
|
170
|
-
background: ${cssManager.bdTheme('#f8d7da', '#3d1a1a')};
|
|
171
|
-
color: ${cssManager.bdTheme('#721c24', '#cc6666')};
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
.statusBadge dees-icon {
|
|
175
|
-
font-size: 14px;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
/* Array/list display */
|
|
179
|
-
.arrayItems {
|
|
180
|
-
display: flex;
|
|
181
|
-
flex-wrap: wrap;
|
|
182
|
-
gap: 8px;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
.arrayItem {
|
|
186
|
-
display: inline-flex;
|
|
187
|
-
align-items: center;
|
|
188
|
-
background: ${cssManager.bdTheme('#e7f3ff', '#1a2a3d')};
|
|
189
|
-
color: ${cssManager.bdTheme('#0066cc', '#66aaff')};
|
|
190
|
-
padding: 4px 12px;
|
|
191
|
-
border-radius: 16px;
|
|
192
|
-
font-size: 13px;
|
|
193
|
-
font-family: 'Consolas', 'Monaco', monospace;
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
.arrayCount {
|
|
197
|
-
font-size: 12px;
|
|
198
|
-
color: ${cssManager.bdTheme('#999', '#666')};
|
|
199
|
-
margin-bottom: 8px;
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
/* Numeric value formatting */
|
|
203
|
-
.numericValue {
|
|
204
|
-
font-weight: 600;
|
|
205
|
-
color: ${cssManager.bdTheme('#0066cc', '#66aaff')};
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
.errorMessage {
|
|
209
|
-
background: ${cssManager.bdTheme('#fee', '#4a1f1f')};
|
|
210
|
-
border: 1px solid ${cssManager.bdTheme('#fcc', '#6a2f2f')};
|
|
211
|
-
border-radius: 4px;
|
|
212
|
-
padding: 16px;
|
|
213
|
-
color: ${cssManager.bdTheme('#c00', '#ff6666')};
|
|
214
|
-
margin: 16px 0;
|
|
215
|
-
}
|
|
216
|
-
|
|
217
80
|
.loadingMessage {
|
|
218
81
|
text-align: center;
|
|
219
82
|
padding: 40px;
|
|
220
|
-
color: ${cssManager.bdTheme('#
|
|
83
|
+
color: ${cssManager.bdTheme('#71717a', '#a1a1aa')};
|
|
221
84
|
}
|
|
222
85
|
|
|
223
|
-
.
|
|
224
|
-
background: ${cssManager.bdTheme('#
|
|
225
|
-
border: 1px solid ${cssManager.bdTheme('#
|
|
86
|
+
.errorMessage {
|
|
87
|
+
background: ${cssManager.bdTheme('#fee2e2', 'rgba(239,68,68,0.1)')};
|
|
88
|
+
border: 1px solid ${cssManager.bdTheme('#fecaca', 'rgba(239,68,68,0.3)')};
|
|
226
89
|
border-radius: 8px;
|
|
227
90
|
padding: 16px;
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
display: flex;
|
|
231
|
-
align-items: center;
|
|
232
|
-
gap: 12px;
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
.infoNote dees-icon {
|
|
236
|
-
font-size: 20px;
|
|
237
|
-
flex-shrink: 0;
|
|
91
|
+
color: ${cssManager.bdTheme('#dc2626', '#ef4444')};
|
|
92
|
+
margin: 16px 0;
|
|
238
93
|
}
|
|
239
94
|
`,
|
|
240
95
|
];
|
|
@@ -242,167 +97,230 @@ let OpsViewConfig = (() => {
|
|
|
242
97
|
return html `
|
|
243
98
|
<ops-sectionheading>Configuration</ops-sectionheading>
|
|
244
99
|
|
|
245
|
-
${this.configState.isLoading
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
${this.renderConfigSection('dns', 'DNS', 'lucide:globe', this.configState.config?.dns)}
|
|
262
|
-
${this.renderConfigSection('proxy', 'Proxy', 'lucide:network', this.configState.config?.proxy)}
|
|
263
|
-
${this.renderConfigSection('security', 'Security', 'lucide:shield', this.configState.config?.security)}
|
|
264
|
-
` : html `
|
|
265
|
-
<div class="errorMessage">No configuration loaded</div>
|
|
266
|
-
`}
|
|
100
|
+
${this.configState.isLoading
|
|
101
|
+
? html `
|
|
102
|
+
<div class="loadingMessage">
|
|
103
|
+
<dees-spinner></dees-spinner>
|
|
104
|
+
<p>Loading configuration...</p>
|
|
105
|
+
</div>
|
|
106
|
+
`
|
|
107
|
+
: this.configState.error
|
|
108
|
+
? html `
|
|
109
|
+
<div class="errorMessage">
|
|
110
|
+
Error loading configuration: ${this.configState.error}
|
|
111
|
+
</div>
|
|
112
|
+
`
|
|
113
|
+
: this.configState.config
|
|
114
|
+
? this.renderConfig()
|
|
115
|
+
: html `<div class="errorMessage">No configuration loaded</div>`}
|
|
267
116
|
`;
|
|
268
117
|
}
|
|
269
|
-
|
|
270
|
-
const
|
|
118
|
+
renderConfig() {
|
|
119
|
+
const cfg = this.configState.config;
|
|
271
120
|
return html `
|
|
272
|
-
<
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
121
|
+
<sz-config-overview
|
|
122
|
+
infoText="This view displays the current running configuration. DcRouter is configured through code or remote management."
|
|
123
|
+
@navigate=${(e) => {
|
|
124
|
+
if (e.detail?.view) {
|
|
125
|
+
appRouter.navigateToView(e.detail.view);
|
|
126
|
+
}
|
|
127
|
+
}}
|
|
128
|
+
>
|
|
129
|
+
${this.renderSystemSection(cfg.system)}
|
|
130
|
+
${this.renderSmartProxySection(cfg.smartProxy)}
|
|
131
|
+
${this.renderEmailSection(cfg.email)}
|
|
132
|
+
${this.renderDnsSection(cfg.dns)}
|
|
133
|
+
${this.renderTlsSection(cfg.tls)}
|
|
134
|
+
${this.renderCacheSection(cfg.cache)}
|
|
135
|
+
${this.renderRadiusSection(cfg.radius)}
|
|
136
|
+
${this.renderRemoteIngressSection(cfg.remoteIngress)}
|
|
137
|
+
</sz-config-overview>
|
|
286
138
|
`;
|
|
287
139
|
}
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
:
|
|
140
|
+
renderSystemSection(sys) {
|
|
141
|
+
const fields = [
|
|
142
|
+
{ key: 'Base Directory', value: sys.baseDir },
|
|
143
|
+
{ key: 'Data Directory', value: sys.dataDir },
|
|
144
|
+
{ key: 'Public IP', value: sys.publicIp },
|
|
145
|
+
{ key: 'Proxy IPs', value: sys.proxyIps.length > 0 ? sys.proxyIps : null, type: 'pills' },
|
|
146
|
+
{ key: 'Uptime', value: this.formatUptime(sys.uptime) },
|
|
147
|
+
{ key: 'Storage Backend', value: sys.storageBackend, type: 'badge' },
|
|
148
|
+
{ key: 'Storage Path', value: sys.storagePath },
|
|
149
|
+
];
|
|
150
|
+
return html `
|
|
151
|
+
<sz-config-section
|
|
152
|
+
title="System"
|
|
153
|
+
subtitle="Base paths and infrastructure"
|
|
154
|
+
icon="lucide:server"
|
|
155
|
+
status="enabled"
|
|
156
|
+
.fields=${fields}
|
|
157
|
+
></sz-config-section>
|
|
158
|
+
`;
|
|
292
159
|
}
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
160
|
+
renderSmartProxySection(proxy) {
|
|
161
|
+
const fields = [
|
|
162
|
+
{ key: 'Route Count', value: proxy.routeCount },
|
|
163
|
+
];
|
|
164
|
+
if (proxy.acme) {
|
|
165
|
+
fields.push({ key: 'ACME Enabled', value: proxy.acme.enabled, type: 'boolean' }, { key: 'Account Email', value: proxy.acme.accountEmail || null }, { key: 'Use Production', value: proxy.acme.useProduction, type: 'boolean' }, { key: 'Auto Renew', value: proxy.acme.autoRenew, type: 'boolean' }, { key: 'Renew Threshold', value: `${proxy.acme.renewThresholdDays} days` });
|
|
296
166
|
}
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
if (Array.isArray(value)) {
|
|
311
|
-
return html `
|
|
312
|
-
<div class="configField">
|
|
313
|
-
<label class="fieldLabel">${displayName}</label>
|
|
314
|
-
${this.renderArrayValue(value, key)}
|
|
315
|
-
</div>
|
|
316
|
-
`;
|
|
317
|
-
}
|
|
318
|
-
// Handle nested objects
|
|
319
|
-
if (typeof value === 'object' && value !== null) {
|
|
320
|
-
return html `
|
|
321
|
-
<div class="configField">
|
|
322
|
-
<label class="fieldLabel">${displayName}</label>
|
|
323
|
-
<div class="nestedFields">
|
|
324
|
-
${this.renderConfigFields(value, fieldName)}
|
|
325
|
-
</div>
|
|
326
|
-
</div>
|
|
327
|
-
`;
|
|
328
|
-
}
|
|
329
|
-
// Handle primitive values
|
|
330
|
-
return html `
|
|
331
|
-
<div class="configField">
|
|
332
|
-
<label class="fieldLabel">${displayName}</label>
|
|
333
|
-
<div class="fieldValue">${this.formatValue(value, key)}</div>
|
|
334
|
-
</div>
|
|
335
|
-
`;
|
|
336
|
-
});
|
|
167
|
+
const actions = [
|
|
168
|
+
{ label: 'View Routes', icon: 'lucide:arrow-right', event: 'navigate', detail: { view: 'routes' } },
|
|
169
|
+
];
|
|
170
|
+
return html `
|
|
171
|
+
<sz-config-section
|
|
172
|
+
title="SmartProxy"
|
|
173
|
+
subtitle="HTTP/HTTPS and TCP/SNI reverse proxy"
|
|
174
|
+
icon="lucide:network"
|
|
175
|
+
.status=${proxy.enabled ? 'enabled' : 'disabled'}
|
|
176
|
+
.fields=${fields}
|
|
177
|
+
.actions=${actions}
|
|
178
|
+
></sz-config-section>
|
|
179
|
+
`;
|
|
337
180
|
}
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
`;
|
|
181
|
+
renderEmailSection(email) {
|
|
182
|
+
const fields = [
|
|
183
|
+
{ key: 'Ports', value: email.ports.length > 0 ? email.ports.map(String) : null, type: 'pills' },
|
|
184
|
+
{ key: 'Hostname', value: email.hostname },
|
|
185
|
+
{ key: 'Domains', value: email.domains.length > 0 ? email.domains : null, type: 'pills' },
|
|
186
|
+
{ key: 'Email Routes', value: email.emailRouteCount },
|
|
187
|
+
{ key: 'Received Emails Path', value: email.receivedEmailsPath },
|
|
188
|
+
];
|
|
189
|
+
if (email.portMapping) {
|
|
190
|
+
const mappingStr = Object.entries(email.portMapping)
|
|
191
|
+
.map(([ext, int]) => `${ext} → ${int}`)
|
|
192
|
+
.join(', ');
|
|
193
|
+
fields.splice(1, 0, { key: 'Port Mapping', value: mappingStr, type: 'code' });
|
|
352
194
|
}
|
|
353
|
-
|
|
195
|
+
const actions = [
|
|
196
|
+
{ label: 'View Emails', icon: 'lucide:arrow-right', event: 'navigate', detail: { view: 'emails' } },
|
|
197
|
+
];
|
|
354
198
|
return html `
|
|
355
|
-
<
|
|
356
|
-
|
|
357
|
-
|
|
199
|
+
<sz-config-section
|
|
200
|
+
title="Email Server"
|
|
201
|
+
subtitle="SMTP email handling with smartmta"
|
|
202
|
+
icon="lucide:mail"
|
|
203
|
+
.status=${email.enabled ? 'enabled' : 'disabled'}
|
|
204
|
+
.fields=${fields}
|
|
205
|
+
.actions=${actions}
|
|
206
|
+
></sz-config-section>
|
|
358
207
|
`;
|
|
359
208
|
}
|
|
360
|
-
|
|
361
|
-
const
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
return
|
|
209
|
+
renderDnsSection(dns) {
|
|
210
|
+
const fields = [
|
|
211
|
+
{ key: 'Port', value: dns.port },
|
|
212
|
+
{ key: 'NS Domains', value: dns.nsDomains.length > 0 ? dns.nsDomains : null, type: 'pills' },
|
|
213
|
+
{ key: 'Scopes', value: dns.scopes.length > 0 ? dns.scopes : null, type: 'pills' },
|
|
214
|
+
{ key: 'Record Count', value: dns.recordCount },
|
|
215
|
+
{ key: 'DNS Challenge', value: dns.dnsChallenge, type: 'boolean' },
|
|
216
|
+
];
|
|
217
|
+
return html `
|
|
218
|
+
<sz-config-section
|
|
219
|
+
title="DNS Server"
|
|
220
|
+
subtitle="Authoritative DNS with smartdns"
|
|
221
|
+
icon="lucide:globe"
|
|
222
|
+
.status=${dns.enabled ? 'enabled' : 'disabled'}
|
|
223
|
+
.fields=${fields}
|
|
224
|
+
></sz-config-section>
|
|
225
|
+
`;
|
|
369
226
|
}
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
.
|
|
375
|
-
.
|
|
227
|
+
renderTlsSection(tls) {
|
|
228
|
+
const fields = [
|
|
229
|
+
{ key: 'Contact Email', value: tls.contactEmail },
|
|
230
|
+
{ key: 'Domain', value: tls.domain },
|
|
231
|
+
{ key: 'Source', value: tls.source, type: 'badge' },
|
|
232
|
+
{ key: 'Certificate Path', value: tls.certPath },
|
|
233
|
+
{ key: 'Key Path', value: tls.keyPath },
|
|
234
|
+
];
|
|
235
|
+
const status = tls.source === 'none' ? 'not-configured' : 'enabled';
|
|
236
|
+
const actions = [
|
|
237
|
+
{ label: 'View Certificates', icon: 'lucide:arrow-right', event: 'navigate', detail: { view: 'certificates' } },
|
|
238
|
+
];
|
|
239
|
+
return html `
|
|
240
|
+
<sz-config-section
|
|
241
|
+
title="TLS / Certificates"
|
|
242
|
+
subtitle="Certificate management and ACME"
|
|
243
|
+
icon="lucide:shield-check"
|
|
244
|
+
.status=${status}
|
|
245
|
+
.fields=${fields}
|
|
246
|
+
.actions=${actions}
|
|
247
|
+
></sz-config-section>
|
|
248
|
+
`;
|
|
376
249
|
}
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
if (fieldKey?.toLowerCase().includes('ttl') || fieldKey?.toLowerCase().includes('timeout')) {
|
|
388
|
-
return html `<span class="numericValue">${value} seconds</span>`;
|
|
389
|
-
}
|
|
390
|
-
// Format port numbers
|
|
391
|
-
if (fieldKey?.toLowerCase().includes('port')) {
|
|
392
|
-
return html `<span class="numericValue">${value}</span>`;
|
|
250
|
+
renderCacheSection(cache) {
|
|
251
|
+
const fields = [
|
|
252
|
+
{ key: 'Storage Path', value: cache.storagePath },
|
|
253
|
+
{ key: 'DB Name', value: cache.dbName },
|
|
254
|
+
{ key: 'Default TTL', value: `${cache.defaultTTLDays} days` },
|
|
255
|
+
{ key: 'Cleanup Interval', value: `${cache.cleanupIntervalHours} hours` },
|
|
256
|
+
];
|
|
257
|
+
if (cache.ttlConfig && Object.keys(cache.ttlConfig).length > 0) {
|
|
258
|
+
for (const [key, val] of Object.entries(cache.ttlConfig)) {
|
|
259
|
+
fields.push({ key: `TTL: ${key}`, value: `${val} days` });
|
|
393
260
|
}
|
|
394
|
-
// Format counts with separators
|
|
395
|
-
return html `<span class="numericValue">${value.toLocaleString()}</span>`;
|
|
396
261
|
}
|
|
397
|
-
return
|
|
262
|
+
return html `
|
|
263
|
+
<sz-config-section
|
|
264
|
+
title="Cache Database"
|
|
265
|
+
subtitle="Persistent caching with smartdata"
|
|
266
|
+
icon="lucide:database"
|
|
267
|
+
.status=${cache.enabled ? 'enabled' : 'disabled'}
|
|
268
|
+
.fields=${fields}
|
|
269
|
+
></sz-config-section>
|
|
270
|
+
`;
|
|
271
|
+
}
|
|
272
|
+
renderRadiusSection(radius) {
|
|
273
|
+
const fields = [
|
|
274
|
+
{ key: 'Auth Port', value: radius.authPort },
|
|
275
|
+
{ key: 'Accounting Port', value: radius.acctPort },
|
|
276
|
+
{ key: 'Bind Address', value: radius.bindAddress },
|
|
277
|
+
{ key: 'Client Count', value: radius.clientCount },
|
|
278
|
+
];
|
|
279
|
+
if (radius.vlanDefaultVlan !== null) {
|
|
280
|
+
fields.push({ key: 'Default VLAN', value: radius.vlanDefaultVlan }, { key: 'Allow Unknown MACs', value: radius.vlanAllowUnknownMacs, type: 'boolean' }, { key: 'VLAN Mappings', value: radius.vlanMappingCount });
|
|
281
|
+
}
|
|
282
|
+
const status = radius.enabled ? 'enabled' : 'not-configured';
|
|
283
|
+
return html `
|
|
284
|
+
<sz-config-section
|
|
285
|
+
title="RADIUS Server"
|
|
286
|
+
subtitle="Network authentication and VLAN assignment"
|
|
287
|
+
icon="lucide:wifi"
|
|
288
|
+
.status=${status}
|
|
289
|
+
.fields=${fields}
|
|
290
|
+
></sz-config-section>
|
|
291
|
+
`;
|
|
292
|
+
}
|
|
293
|
+
renderRemoteIngressSection(ri) {
|
|
294
|
+
const fields = [
|
|
295
|
+
{ key: 'Tunnel Port', value: ri.tunnelPort },
|
|
296
|
+
{ key: 'Hub Domain', value: ri.hubDomain },
|
|
297
|
+
{ key: 'TLS Configured', value: ri.tlsConfigured, type: 'boolean' },
|
|
298
|
+
];
|
|
299
|
+
const actions = [
|
|
300
|
+
{ label: 'View Remote Ingress', icon: 'lucide:arrow-right', event: 'navigate', detail: { view: 'remoteingress' } },
|
|
301
|
+
];
|
|
302
|
+
return html `
|
|
303
|
+
<sz-config-section
|
|
304
|
+
title="Remote Ingress"
|
|
305
|
+
subtitle="Edge tunnel nodes"
|
|
306
|
+
icon="lucide:cloud"
|
|
307
|
+
.status=${ri.enabled ? 'enabled' : 'disabled'}
|
|
308
|
+
.fields=${fields}
|
|
309
|
+
.actions=${actions}
|
|
310
|
+
></sz-config-section>
|
|
311
|
+
`;
|
|
398
312
|
}
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
const
|
|
403
|
-
const
|
|
404
|
-
|
|
405
|
-
|
|
313
|
+
formatUptime(seconds) {
|
|
314
|
+
const days = Math.floor(seconds / 86400);
|
|
315
|
+
const hours = Math.floor((seconds % 86400) / 3600);
|
|
316
|
+
const mins = Math.floor((seconds % 3600) / 60);
|
|
317
|
+
const parts = [];
|
|
318
|
+
if (days > 0)
|
|
319
|
+
parts.push(`${days}d`);
|
|
320
|
+
if (hours > 0)
|
|
321
|
+
parts.push(`${hours}h`);
|
|
322
|
+
parts.push(`${mins}m`);
|
|
323
|
+
return parts.join(' ');
|
|
406
324
|
}
|
|
407
325
|
static {
|
|
408
326
|
__runInitializers(_classThis, _classExtraInitializers);
|
|
@@ -411,4 +329,4 @@ let OpsViewConfig = (() => {
|
|
|
411
329
|
return OpsViewConfig = _classThis;
|
|
412
330
|
})();
|
|
413
331
|
export { OpsViewConfig };
|
|
414
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLXZpZXctY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHNfd2ViL2VsZW1lbnRzL29wcy12aWV3LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQztBQUM1QyxPQUFPLEtBQUssUUFBUSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFDTCxXQUFXLEVBQ1gsYUFBYSxFQUNiLElBQUksRUFDSixLQUFLLEVBQ0wsR0FBRyxFQUNILFVBQVUsR0FFWCxNQUFNLDZCQUE2QixDQUFDO0lBR3hCLGFBQWE7NEJBRHpCLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQzs7OztzQkFDRSxXQUFXOzs7OzZCQUFuQixTQUFRLFdBQVc7Ozs7dUNBQzNDLEtBQUssRUFBRTtZQUNSLHNMQUFTLFdBQVcsNkJBQVgsV0FBVyxpR0FJbEI7WUFOSiw2S0FrWEM7Ozs7UUFoWEMsbUZBQThDO1lBQzVDLE1BQU0sRUFBRSxJQUFJO1lBQ1osU0FBUyxFQUFFLEtBQUs7WUFDaEIsS0FBSyxFQUFFLElBQUk7U0FDWixFQUFDO1FBSkYsSUFBUyxXQUFXLGlEQUlsQjtRQUpGLElBQVMsV0FBVyx1REFJbEI7UUFFRjtZQUNFLEtBQUssRUFBRSxDQUFDOztZQUNSLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxlQUFlO2lCQUMxQyxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQztpQkFDOUIsU0FBUyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1lBQ2pDLENBQUMsQ0FBQyxDQUFDO1lBQ0wsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENB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
|
|
332
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BzLXZpZXctY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHNfd2ViL2VsZW1lbnRzL29wcy12aWV3LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxLQUFLLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQztBQUM1QyxPQUFPLEtBQUssUUFBUSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFekMsT0FBTyxFQUNMLFdBQVcsRUFDWCxhQUFhLEVBQ2IsSUFBSSxFQUNKLEtBQUssRUFDTCxHQUFHLEVBQ0gsVUFBVSxHQUVYLE1BQU0sNkJBQTZCLENBQUM7SUFLeEIsYUFBYTs0QkFEekIsYUFBYSxDQUFDLGlCQUFpQixDQUFDOzs7O3NCQUNFLFdBQVc7Ozs7NkJBQW5CLFNBQVEsV0FBVzs7Ozt1Q0FDM0MsS0FBSyxFQUFFO1lBQ1Isc0xBQVMsV0FBVyw2QkFBWCxXQUFXLGlHQUlsQjtZQU5KLDZLQWlUQzs7OztRQS9TQyxtRkFBOEM7WUFDNUMsTUFBTSxFQUFFLElBQUk7WUFDWixTQUFTLEVBQUUsS0FBSztZQUNoQixLQUFLLEVBQUUsSUFBSTtTQUNaLEVBQUM7UUFKRixJQUFTLFdBQVcsaURBSWxCO1FBSkYsSUFBUyxXQUFXLHVEQUlsQjtRQUVGO1lBQ0UsS0FBSyxFQUFFLENBQUM7O1lBQ1IsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLGVBQWU7aUJBQzFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDO2lCQUM5QixTQUFTLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRTtnQkFDekIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7WUFDakMsQ0FBQyxDQUFDLENBQUM7WUFDTCxJ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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serve.zone/dcrouter",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "9.1.0",
|
|
5
5
|
"description": "A multifaceted routing service handling mail and SMS delivery functions.",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"exports": {
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"@push.rocks/smartrx": "^3.0.10",
|
|
56
56
|
"@push.rocks/smartstate": "^2.0.30",
|
|
57
57
|
"@push.rocks/smartunique": "^3.0.9",
|
|
58
|
-
"@serve.zone/catalog": "^2.
|
|
58
|
+
"@serve.zone/catalog": "^2.5.0",
|
|
59
59
|
"@serve.zone/interfaces": "^5.3.0",
|
|
60
60
|
"@serve.zone/remoteingress": "^4.0.0",
|
|
61
61
|
"@tsclass/tsclass": "^9.3.0",
|