@serve.zone/dcrouter 14.1.0 → 14.2.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/deno.json +1 -1
- package/dist_serve/bundle.js +1 -1
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/classes.dcrouter.d.ts +26 -0
- package/dist_ts/classes.dcrouter.js +491 -58
- package/dist_ts/config/classes.reference-resolver.js +3 -1
- package/dist_ts/db/documents/classes.cached.email.d.ts +4 -2
- package/dist_ts/db/documents/classes.cached.email.js +25 -5
- package/dist_ts/http3/http3-route-augmentation.js +2 -1
- package/dist_ts/plugins.d.ts +4 -2
- package/dist_ts/plugins.js +5 -3
- package/dist_ts_migrations/index.js +2 -2
- package/dist_ts_web/00_commitinfo_data.js +1 -1
- package/dist_ts_web/elements/network/ops-view-sourceprofiles.js +2 -1
- package/package.json +5 -4
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.dcrouter.ts +592 -60
- package/ts/config/classes.reference-resolver.ts +1 -0
- package/ts/db/documents/classes.cached.email.ts +31 -5
- package/ts/http3/http3-route-augmentation.ts +1 -0
- package/ts/plugins.ts +4 -1
- package/ts_web/00_commitinfo_data.ts +1 -1
- package/ts_web/elements/network/ops-view-sourceprofiles.ts +1 -0
package/deno.json
CHANGED
package/dist_serve/bundle.js
CHANGED
|
@@ -44379,7 +44379,7 @@ Customer Support Team`}};async onActivate(b){this.appui=b.appui,this.appui.setCo
|
|
|
44379
44379
|
<dees-input-text .key=${"rateLimitMaxRequests"} .label=${"Max Requests"} .description=${"Requests per source IP"} .value=${String(t.security?.rateLimit?.maxRequests||"")}></dees-input-text>
|
|
44380
44380
|
<dees-input-text .key=${"rateLimitWindow"} .label=${"Window Seconds"} .value=${String(t.security?.rateLimit?.window||"")}></dees-input-text>
|
|
44381
44381
|
</dees-form>
|
|
44382
|
-
`,menuOptions:[{name:"Cancel",action:i(async s=>s.destroy(),"action")},{name:"Save",action:i(async s=>{let o=s.shadowRoot?.querySelector(".content")?.querySelector("dees-form");if(!o)return;let n=await o.collectFormData(),l=Array.isArray(n.ipAllowList)?n.ipAllowList:[],c=Array.isArray(n.ipBlockList)?n.ipBlockList:[],d=zne(n.maxConnections),u=_7a(n);u!==null&&(await Qa.dispatchAction(dma,{id:t.id,name:String(n.name),description:n.description?String(n.description):void 0,security:{ipAllowList:l,ipBlockList:c,...d?{maxConnections:d}:{},...u?{rateLimit:u}:{}}}),s.destroy())},"action")}]})}async deleteProfile(t){await Qa.dispatchAction(srt,{id:t.id,force:!1});let r=Qa.getState();if(r.error?.includes("in use")){let{DeesModal:s}=await Promise.resolve().then(()=>(et(),ht));s.createAndShow({heading:"Profile In Use",content:w`<p>${r.error} Force delete?</p>`,menuOptions:[{name:"Force Delete",action:i(async o=>{await Qa.dispatchAction(srt,{id:t.id,force:!0}),o.destroy()},"action")},{name:"Cancel",action:i(async o=>o.destroy(),"action")}]})}}};w9=Ft(L7a),Trt=new WeakMap,Ue(w9,4,"profilesState",$7a,wd,Trt),wd=Ue(w9,0,"OpsViewSourceProfiles",I7a,wd),i(wd,"OpsViewSourceProfiles"),gt(wd,"styles",[h.defaultStyles,Vt,Q`
|
|
44382
|
+
`,menuOptions:[{name:"Cancel",action:i(async s=>s.destroy(),"action")},{name:"Save",action:i(async s=>{let o=s.shadowRoot?.querySelector(".content")?.querySelector("dees-form");if(!o)return;let n=await o.collectFormData(),l=Array.isArray(n.ipAllowList)?n.ipAllowList:[],c=Array.isArray(n.ipBlockList)?n.ipBlockList:[],d=zne(n.maxConnections),u=_7a(n);u!==null&&(await Qa.dispatchAction(dma,{id:t.id,name:String(n.name),description:n.description?String(n.description):void 0,security:{ipAllowList:l,ipBlockList:c,...d?{maxConnections:d}:{},...u?{rateLimit:u}:{},...t.security?.challenge?{challenge:t.security.challenge}:{}}}),s.destroy())},"action")}]})}async deleteProfile(t){await Qa.dispatchAction(srt,{id:t.id,force:!1});let r=Qa.getState();if(r.error?.includes("in use")){let{DeesModal:s}=await Promise.resolve().then(()=>(et(),ht));s.createAndShow({heading:"Profile In Use",content:w`<p>${r.error} Force delete?</p>`,menuOptions:[{name:"Force Delete",action:i(async o=>{await Qa.dispatchAction(srt,{id:t.id,force:!0}),o.destroy()},"action")},{name:"Cancel",action:i(async o=>o.destroy(),"action")}]})}}};w9=Ft(L7a),Trt=new WeakMap,Ue(w9,4,"profilesState",$7a,wd,Trt),wd=Ue(w9,0,"OpsViewSourceProfiles",I7a,wd),i(wd,"OpsViewSourceProfiles"),gt(wd,"styles",[h.defaultStyles,Vt,Q`
|
|
44383
44383
|
.profilesContainer {
|
|
44384
44384
|
display: flex;
|
|
44385
44385
|
flex-direction: column;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@serve.zone/dcrouter',
|
|
6
|
-
version: '14.
|
|
6
|
+
version: '14.2.0',
|
|
7
7
|
description: 'A multifaceted routing service handling mail and SMS delivery functions.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxzQkFBc0I7SUFDNUIsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLDBFQUEwRTtDQUN4RixDQUFBIn0=
|
|
@@ -227,6 +227,11 @@ export declare class DcRouter {
|
|
|
227
227
|
private remoteIngressHubLifecycleChain;
|
|
228
228
|
private smartProxyLifecycleChain;
|
|
229
229
|
private emailLifecycleChain;
|
|
230
|
+
private acceptedEmailSpoolTimer?;
|
|
231
|
+
private acceptedEmailSpoolRun?;
|
|
232
|
+
private acceptedEmailSpoolProcessing;
|
|
233
|
+
private acceptedEmailSpoolStopping;
|
|
234
|
+
private acceptedEmailQueueUpdatePromises;
|
|
230
235
|
private remoteIngressHubStopping;
|
|
231
236
|
private remoteIngressHubGeneration;
|
|
232
237
|
vpnManager?: VpnManager;
|
|
@@ -322,6 +327,7 @@ export declare class DcRouter {
|
|
|
322
327
|
private createServerFirstEmailRuntimeRoute;
|
|
323
328
|
private getRemoteIngressEmailInboundProxyPolicy;
|
|
324
329
|
private createEmailSocketProxyHandler;
|
|
330
|
+
private createProxyProtocolV1Header;
|
|
325
331
|
private hydrateStoredRouteForRuntime;
|
|
326
332
|
/**
|
|
327
333
|
* Check if a domain matches a pattern (including wildcard support)
|
|
@@ -345,6 +351,26 @@ export declare class DcRouter {
|
|
|
345
351
|
* This implements the consolidated emailConfig approach
|
|
346
352
|
*/
|
|
347
353
|
private setupUnifiedEmailHandling;
|
|
354
|
+
private acceptSmartMtaMessage;
|
|
355
|
+
private setDcRouterCacheIdHeader;
|
|
356
|
+
private processAcceptedCachedEmail;
|
|
357
|
+
private startAcceptedEmailSpoolProcessor;
|
|
358
|
+
private clearAcceptedEmailSpoolTimer;
|
|
359
|
+
private stopAcceptedEmailSpoolProcessor;
|
|
360
|
+
private runAcceptedEmailSpoolProcessor;
|
|
361
|
+
private processAcceptedEmailSpool;
|
|
362
|
+
private buildCachedEmailSession;
|
|
363
|
+
private parseCachedEmailRouteData;
|
|
364
|
+
private updateAcceptedEmailFromQueueItem;
|
|
365
|
+
private trackAcceptedEmailQueueUpdate;
|
|
366
|
+
private drainAcceptedEmailQueueUpdates;
|
|
367
|
+
private waitForPromiseToSettleWithTimeout;
|
|
368
|
+
private recoverQueuedAcceptedEmails;
|
|
369
|
+
private isCachedEmailTerminal;
|
|
370
|
+
private getCachedEmailIdFromQueueItem;
|
|
371
|
+
private getHeaderValue;
|
|
372
|
+
private removeHeader;
|
|
373
|
+
private throwIfMessageAcceptanceAborted;
|
|
348
374
|
/**
|
|
349
375
|
* Update the unified email configuration
|
|
350
376
|
* @param config New email configuration
|