@serve.zone/dcrouter 13.43.5 → 13.44.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 (82) hide show
  1. package/deno.json +1 -1
  2. package/dist_serve/bundle.js +491 -436
  3. package/dist_ts/00_commitinfo_data.js +1 -1
  4. package/dist_ts/classes.dcrouter.d.ts +16 -13
  5. package/dist_ts/classes.dcrouter.js +320 -82
  6. package/dist_ts/config/classes.route-config-manager.d.ts +1 -0
  7. package/dist_ts/config/classes.route-config-manager.js +4 -1
  8. package/dist_ts/db/documents/classes.cached.email.d.ts +2 -5
  9. package/dist_ts/db/documents/classes.cached.email.js +4 -23
  10. package/dist_ts/db/documents/classes.cached.ip.reputation.d.ts +2 -5
  11. package/dist_ts/db/documents/classes.cached.ip.reputation.js +4 -23
  12. package/dist_ts/db/documents/classes.email-server-settings.doc.d.ts +14 -0
  13. package/dist_ts/db/documents/classes.email-server-settings.doc.js +103 -0
  14. package/dist_ts/db/documents/classes.remote-ingress-hub-settings.doc.d.ts +3 -0
  15. package/dist_ts/db/documents/classes.remote-ingress-hub-settings.doc.js +20 -2
  16. package/dist_ts/db/documents/index.d.ts +1 -0
  17. package/dist_ts/db/documents/index.js +2 -1
  18. package/dist_ts/db/index.d.ts +0 -1
  19. package/dist_ts/db/index.js +1 -3
  20. package/dist_ts/email/classes.email-domain.manager.d.ts +3 -1
  21. package/dist_ts/email/classes.email-domain.manager.js +6 -3
  22. package/dist_ts/email/classes.email-settings.manager.d.ts +25 -0
  23. package/dist_ts/email/classes.email-settings.manager.js +184 -0
  24. package/dist_ts/email/index.d.ts +1 -0
  25. package/dist_ts/email/index.js +2 -1
  26. package/dist_ts/opsserver/classes.opsserver.d.ts +1 -0
  27. package/dist_ts/opsserver/classes.opsserver.js +3 -1
  28. package/dist_ts/opsserver/handlers/config.handler.js +17 -14
  29. package/dist_ts/opsserver/handlers/email-settings.handler.d.ts +10 -0
  30. package/dist_ts/opsserver/handlers/email-settings.handler.js +57 -0
  31. package/dist_ts/opsserver/handlers/index.d.ts +1 -0
  32. package/dist_ts/opsserver/handlers/index.js +2 -1
  33. package/dist_ts/opsserver/handlers/remoteingress.handler.js +24 -6
  34. package/dist_ts/opsserver/handlers/workhoster.handler.js +2 -2
  35. package/dist_ts/remoteingress/classes.remoteingress-manager.d.ts +4 -6
  36. package/dist_ts/remoteingress/classes.remoteingress-manager.js +58 -19
  37. package/dist_ts_interfaces/data/email-settings.d.ts +39 -0
  38. package/dist_ts_interfaces/data/email-settings.js +2 -0
  39. package/dist_ts_interfaces/data/index.d.ts +1 -0
  40. package/dist_ts_interfaces/data/index.js +2 -1
  41. package/dist_ts_interfaces/data/remoteingress.d.ts +7 -0
  42. package/dist_ts_interfaces/requests/email-settings.d.ts +26 -0
  43. package/dist_ts_interfaces/requests/email-settings.js +2 -0
  44. package/dist_ts_interfaces/requests/index.d.ts +1 -0
  45. package/dist_ts_interfaces/requests/index.js +2 -1
  46. package/dist_ts_interfaces/requests/remoteingress.d.ts +4 -1
  47. package/dist_ts_migrations/index.d.ts +14 -1
  48. package/dist_ts_migrations/index.js +107 -2
  49. package/dist_ts_web/00_commitinfo_data.js +1 -1
  50. package/dist_ts_web/appstate.d.ts +6 -1
  51. package/dist_ts_web/appstate.js +23 -1
  52. package/dist_ts_web/elements/email/ops-view-email-domains.d.ts +4 -0
  53. package/dist_ts_web/elements/email/ops-view-email-domains.js +122 -1
  54. package/dist_ts_web/elements/network/ops-view-remoteingress.d.ts +2 -1
  55. package/dist_ts_web/elements/network/ops-view-remoteingress.js +57 -17
  56. package/package.json +2 -2
  57. package/ts/00_commitinfo_data.ts +1 -1
  58. package/ts/classes.dcrouter.ts +361 -100
  59. package/ts/config/classes.route-config-manager.ts +4 -0
  60. package/ts/db/documents/classes.cached.email.ts +3 -12
  61. package/ts/db/documents/classes.cached.ip.reputation.ts +3 -12
  62. package/ts/db/documents/classes.email-server-settings.doc.ts +40 -0
  63. package/ts/db/documents/classes.remote-ingress-hub-settings.doc.ts +9 -0
  64. package/ts/db/documents/index.ts +1 -0
  65. package/ts/db/index.ts +0 -3
  66. package/ts/email/classes.email-domain.manager.ts +6 -2
  67. package/ts/email/classes.email-settings.manager.ts +221 -0
  68. package/ts/email/index.ts +1 -0
  69. package/ts/opsserver/classes.opsserver.ts +2 -0
  70. package/ts/opsserver/handlers/config.handler.ts +16 -13
  71. package/ts/opsserver/handlers/email-settings.handler.ts +72 -0
  72. package/ts/opsserver/handlers/index.ts +1 -0
  73. package/ts/opsserver/handlers/remoteingress.handler.ts +25 -5
  74. package/ts/opsserver/handlers/workhoster.handler.ts +1 -1
  75. package/ts/remoteingress/classes.remoteingress-manager.ts +65 -18
  76. package/ts_web/00_commitinfo_data.ts +1 -1
  77. package/ts_web/appstate.ts +33 -1
  78. package/ts_web/elements/email/ops-view-email-domains.ts +126 -0
  79. package/ts_web/elements/network/ops-view-remoteingress.ts +59 -17
  80. package/dist_ts/db/classes.cached.document.d.ts +0 -76
  81. package/dist_ts/db/classes.cached.document.js +0 -100
  82. package/ts/db/classes.cached.document.ts +0 -111
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@serve.zone/dcrouter',
6
- version: '13.43.5',
6
+ version: '13.44.1',
7
7
  description: 'A multifaceted routing service handling mail and SMS delivery functions.'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxzQkFBc0I7SUFDNUIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsV0FBVyxFQUFFLDBFQUEwRTtDQUN4RixDQUFBIn0=
@@ -13,8 +13,9 @@ import { SecurityPolicyManager } from './security/index.js';
13
13
  import { type IHttp3Config } from './http3/index.js';
14
14
  import { DnsManager } from './dns/manager.dns.js';
15
15
  import { AcmeConfigManager } from './acme/manager.acme-config.js';
16
- import { EmailDomainManager, WorkAppMailManager } from './email/index.js';
17
- import type { IRemoteIngressHubSettings, IRemoteIngressPerformanceConfig } from '../dist_ts_interfaces/data/remoteingress.js';
16
+ import { EmailDomainManager, EmailSettingsManager, WorkAppMailManager } from './email/index.js';
17
+ import type { IEmailPortConfig, IEmailServerSettings, TEmailServerSettingsUpdate } from '../dist_ts_interfaces/data/email-settings.js';
18
+ import type { IRemoteIngressHubSettings, TRemoteIngressHubSettingsUpdate } from '../dist_ts_interfaces/data/remoteingress.js';
18
19
  export interface IDcRouterOptions {
19
20
  /** Base directory for all dcrouter data. Defaults to ~/.serve.zone/dcrouter */
20
21
  baseDir?: string;
@@ -33,14 +34,7 @@ export interface IDcRouterOptions {
33
34
  * Allows configuring specific ports for email handling
34
35
  * This overrides the default port mapping in the emailConfig
35
36
  */
36
- emailPortConfig?: {
37
- /** External to internal port mapping */
38
- portMapping?: Record<number, number>;
39
- /** Custom port configuration for specific ports */
40
- portSettings?: Record<number, any>;
41
- /** Path to store received emails */
42
- receivedEmailsPath?: string;
43
- };
37
+ emailPortConfig?: IEmailPortConfig;
44
38
  /** TLS/certificate configuration */
45
39
  tls?: {
46
40
  /** Contact email for ACME certificates */
@@ -231,6 +225,8 @@ export declare class DcRouter {
231
225
  remoteIngressManager?: RemoteIngressManager;
232
226
  tunnelManager?: TunnelManager;
233
227
  private remoteIngressHubLifecycleChain;
228
+ private smartProxyLifecycleChain;
229
+ private emailLifecycleChain;
234
230
  private remoteIngressHubStopping;
235
231
  private remoteIngressHubGeneration;
236
232
  vpnManager?: VpnManager;
@@ -241,6 +237,7 @@ export declare class DcRouter {
241
237
  targetProfileManager?: TargetProfileManager;
242
238
  dnsManager?: DnsManager;
243
239
  acmeConfigManager?: AcmeConfigManager;
240
+ emailSettingsManager?: EmailSettingsManager;
244
241
  emailDomainManager?: EmailDomainManager;
245
242
  workAppMailManager: WorkAppMailManager;
246
243
  securityPolicyManager?: SecurityPolicyManager;
@@ -278,6 +275,9 @@ export declare class DcRouter {
278
275
  * Services are started in dependency order, with failure isolation for optional services.
279
276
  */
280
277
  private registerServices;
278
+ private isRemoteIngressHubEnabled;
279
+ private getRemoteIngressHubSettingsLegacySeed;
280
+ private getEmailSettingsLegacySeed;
281
281
  private startSmartAcmeInBackground;
282
282
  private scheduleSmartAcmeStart;
283
283
  private runSmartAcmeStartAttempt;
@@ -340,6 +340,7 @@ export declare class DcRouter {
340
340
  * @param config New email configuration
341
341
  */
342
342
  updateEmailConfig(config: IUnifiedEmailServerOptions): Promise<void>;
343
+ updateEmailServerSettings(settings: TEmailServerSettingsUpdate, updatedBy?: string): Promise<IEmailServerSettings>;
343
344
  /**
344
345
  * Stop all unified email components
345
346
  */
@@ -415,12 +416,14 @@ export declare class DcRouter {
415
416
  private setupRemoteIngress;
416
417
  private isRemoteIngressHubGenerationCurrent;
417
418
  private queueRemoteIngressHubTask;
419
+ private queueSmartProxyLifecycleTask;
420
+ private queueEmailLifecycleTask;
418
421
  private stopRemoteIngress;
419
422
  mutateRemoteIngressEdges<T>(mutation: (manager: RemoteIngressManager) => Promise<T>, syncAllowedEdges?: boolean): Promise<T>;
420
423
  private updateRemoteIngressRoutes;
421
- updateRemoteIngressHubSettings(updates: {
422
- performance?: IRemoteIngressPerformanceConfig;
423
- }, updatedBy: string): Promise<IRemoteIngressHubSettings>;
424
+ updateRemoteIngressHubSettings(updates: TRemoteIngressHubSettingsUpdate, updatedBy: string): Promise<IRemoteIngressHubSettings>;
425
+ private restartSmartProxyForRemoteIngressSettings;
426
+ private stopRemoteIngressTunnelHubLocked;
424
427
  private restartRemoteIngressTunnelHubLocked;
425
428
  private startRemoteIngressTunnelHubLocked;
426
429
  private resolveRemoteIngressTlsConfig;