@ez4/gateway 0.20.0 → 0.22.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/library.cjs CHANGED
@@ -1,189 +1,215 @@
1
- "use strict";var je=Object.defineProperty;var Dr=Object.getOwnPropertyDescriptor;var Fr=Object.getOwnPropertyNames;var Br=Object.prototype.hasOwnProperty;var Nr=(e,t)=>{for(var r in t)je(e,r,{get:t[r],enumerable:!0})},Ur=(e,t,r,o)=>{if(t&&
1
+ "use strict";var ue=Object.defineProperty;var Dr=Object.getOwnPropertyDescriptor;var Fr=Object.getOwnPropertyNames;var Br=Object.prototype.hasOwnProperty;var p=(e,t)=>ue(e,"name",{value:t,configurable:!0});var Nr=(e,t)=>{for(var r in t)ue(e,r,{get:t[r],enumerable:!0})},Ur=(e,t,r,o)=>{if(t&&
2
2
  typeof t=="object"||typeof t=="function")for(let n of Fr(t))!Br.call(e,n)&&n!==r&&
3
- je(e,n,{get:()=>t[n],enumerable:!(o=Dr(t,n))||o.enumerable});return e};var Vr=e=>Ur(je({},"__esModule",{value:!0}),e);var st={};Nr(st,{IncompleteAuthorizerError:()=>U,IncompleteCacheError:()=>ie,IncompleteCorsError:()=>ne,
4
- IncompleteHandlerError:()=>oe,IncompleteRouteError:()=>N,IncompleteServiceError:()=>D,
5
- IncorrectBodyTypeError:()=>G,IncorrectCacheTypeError:()=>le,IncorrectCorsTypeError:()=>se,
6
- IncorrectDefaultsTypeError:()=>B,IncorrectHeadersTypeError:()=>X,IncorrectIdentityTypeError:()=>K,
7
- IncorrectParameterTypeError:()=>ee,IncorrectQueryTypeError:()=>te,IncorrectRequestTypeError:()=>$,
8
- IncorrectResponseTypeError:()=>Q,InvalidBodyTypeError:()=>J,InvalidCacheTypeError:()=>ce,
9
- InvalidCorsTypeError:()=>pe,InvalidDefaultsTypeError:()=>F,InvalidHeadersTypeError:()=>W,
10
- InvalidIdentityTypeError:()=>Y,InvalidParameterTypeError:()=>L,InvalidQueryTypeError:()=>re,
11
- InvalidRequestTypeError:()=>_,InvalidResponseTypeError:()=>V,InvalidRouteErrorTypeError:()=>A,
12
- ServiceType:()=>me,getHttpAuthRequest:()=>Fe,getHttpAuthResponse:()=>Ce,getHttpAuthorizer:()=>Ue,
13
- getHttpCache:()=>Ye,getHttpCors:()=>Je,getHttpHandler:()=>Ve,getHttpHandlerRequest:()=>Be,
14
- getHttpHandlerResponse:()=>ke,getHttpHeaders:()=>Z,getHttpIdentity:()=>R,getHttpParameters:()=>qe,
15
- getHttpQuery:()=>De,getHttpRequestBody:()=>Oe,getHttpResponseBody:()=>ze,getHttpRoutes:()=>Qe,
16
- getHttpServices:()=>Ke,isHttpService:()=>Qr,registerTriggers:()=>pt});module.exports=
17
- Vr(st);var Cr=require("@ez4/common/library"),kr=require("@ez4/schema/library"),qr=require("@ez4/project/library");var T=require("@ez4/common/library"),Or=require("@ez4/reflection");var me="@ez4/http",Qr=e=>e.type===me;var We=require("@ez4/common/library"),D=class extends We.IncompleteTypeError{constructor(t,r){
18
- super("Incomplete service",t,r)}};var f=require("@ez4/common/library"),E=require("@ez4/reflection");var a=require("@ez4/common/library"),I=require("@ez4/reflection"),Jr=new Set(["A\
19
- NY","GET","POST","PUT","PATCH","DELETE","OPTIONS"]),Xe=e=>{let[t]=e.split(" ",2);
20
- return Jr.has(t)},Ze=e=>(0,a.isClassDeclaration)(e)&&(0,a.hasHeritageType)(e,"Ht\
21
- tp.Service"),_e=e=>(0,a.isModelDeclaration)(e)&&(0,a.hasHeritageType)(e,"Http.Ro\
22
- ute");var $e=e=>(0,a.hasHeritageType)(e,"Http.Defaults"),Le=e=>(0,a.hasHeritageType)(e,
23
- "Http.Headers"),er=e=>(0,a.hasHeritageType)(e,"Http.Identity"),rr=e=>(0,a.hasHeritageType)(
24
- e,"Http.QueryStrings"),tr=e=>(0,a.hasHeritageType)(e,"Http.PathParameters"),or=e=>(0,a.hasHeritageType)(
25
- e,"Http.JsonBody"),nr=e=>(0,a.hasHeritageType)(e,"Http.Cors"),pr=e=>(0,a.hasHeritageType)(
26
- e,"Http.Cache"),sr=e=>(0,I.isTypeCallback)(e)||(0,I.isTypeFunction)(e),ir=e=>(0,I.isTypeCallback)(
27
- e)||(0,I.isTypeFunction)(e);var h=require("@ez4/common/library"),ae=require("@ez4/utils"),b=require("@ez4/reflection");var ue=(e,t,r,o)=>{if(!(0,b.isTypeReference)(e))return cr(e,t,r,o);let n=(0,h.getReferenceType)(
28
- e,r);return n?cr(n,t,r,o):null},cr=(e,t,r,o)=>(0,b.isTypeObject)(e)?Gr(e,t,(0,h.getObjectMembers)(
29
- e),r,o):null,Gr=(e,t,r,o,n)=>{let p={};for(let s of r){if(!(0,b.isModelProperty)(
30
- s)||s.inherited)continue;let i=parseInt(s.name,10);(0,ae.isAnyNumber)(i)||n.push(
31
- new h.InvalidServicePropertyError(t.name,s.name,e.file));let c=Yr(s,i,t,o,n);c&&
32
- Object.assign(p,c)}return(0,ae.isEmptyObject)(p)?null:p},Yr=(e,t,r,o,n)=>{let p=(0,h.getPropertyTuple)(
33
- e)??[],s={};for(let i of p){if(!(0,b.isTypeReference)(i)){n.push(new A(r.file));
34
- continue}let c=(0,h.getReferenceType)(i,o);if(!c||!(0,b.isTypeClass)(c)){n.push(
35
- new A(r.file));continue}s[c.name]=t}return s};var ar=(e,t,r,o)=>{if(!(0,E.isTypeReference)(e))return lr(e,t,r,o);let n=(0,f.getReferenceType)(
36
- e,r);return n?lr(n,t,r,o):null},lr=(e,t,r,o)=>(0,E.isTypeObject)(e)?mr(t,(0,f.getObjectMembers)(
37
- e),r,o):(0,f.isModelDeclaration)(e)?$e(e)?mr(t,(0,f.getModelMembers)(e),r,o):(o.
38
- push(new B(e.name,t.file)),null):(o.push(new F(t.file)),null),mr=(e,t,r,o)=>{let n={};
39
- for(let p of t)if(!(!(0,E.isModelProperty)(p)||p.inherited))switch(p.name){default:
40
- o.push(new f.InvalidServicePropertyError(e.name,p.name,e.file));break;case"httpE\
41
- rrors":n.httpErrors=ue(p.value,e,r,o);break;case"memory":case"logRetention":case"\
42
- timeout":n[p.name]=(0,f.getPropertyNumber)(p);break;case"listener":n.listener=(0,f.getServiceListener)(
43
- p.value,o);break}return n};var x=require("@ez4/reflection"),l=require("@ez4/common/library");var fe=require("@ez4/common/library"),N=class extends fe.IncompleteTypeError{constructor(t,r){
44
- super("Incomplete gateway route",t,r)}},A=class extends fe.TypeError{constructor(t){
45
- super("Invalid route error type.",t)}};var ur=require("@ez4/common/library"),U=class extends ur.IncompleteTypeError{constructor(t,r){
46
- super("Incomplete route authorizer",t,r)}};var d=require("@ez4/common/library"),j=require("@ez4/reflection"),Mr=require("@ez4/utils");var ye=require("@ez4/common/library"),V=class extends ye.InvalidTypeError{constructor(r,o){
47
- super("Invalid route response",void 0,r,o);this.baseType=r}},Q=class extends ye.IncorrectTypeError{constructor(r,o,n){
48
- super("Incorrect route response",r,o,n);this.responseType=r;this.baseType=o}};var v=require("@ez4/schema/library"),Me=require("@ez4/common/library"),y=require("@ez4/reflection");var de=require("@ez4/common/library"),J=class extends de.InvalidTypeError{constructor(t){
49
- super("Invalid body",void 0,"Http.JsonBody",t)}},G=class extends de.IncorrectTypeError{constructor(r,o){
50
- super("Incorrect body",r,"Http.JsonBody",o);this.bodyType=r}};var Te=require("@ez4/schema/library"),u=(e,t)=>{let r=(0,Te.getObjectSchema)(e,t);
51
- return r&&(0,Te.isObjectSchema)(r)?r:null};var Oe=(e,t,r,o)=>He(e,r,n=>ge(n,t,r,o)),ze=(e,t,r,o)=>He(e,r,n=>we(n)??ge(n,t,r,
52
- o)),He=(e,t,r)=>{if((0,y.isTypeUndefined)(e))return null;if(!(0,y.isTypeReference)(
53
- e))return r(e);let o=(0,Me.getReferenceType)(e,t);return o?r(o):null},we=e=>(0,y.isTypeScalar)(
54
- e)?(0,v.getScalarSchema)(e):null,ge=(e,t,r,o)=>(0,y.isTypeUnion)(e)?Kr(e.elements,
55
- r,n=>we(n)??ge(n,t,r,o)):(0,y.isTypeArray)(e)?Wr(e.element,r,n=>we(n)??ge(n,t,r,
56
- o)):(0,y.isTypeObject)(e)||(0,y.isTypeIntersection)(e)?u(e,r):(0,Me.isModelDeclaration)(
57
- e)?or(e)?u(e,r):(o.push(new G(e.name,e.file)),null):(o.push(new J(t.file)),null),
58
- Kr=(e,t,r)=>{let o=[];for(let n of e){let p=He(n,t,r);p&&o.push(p)}return o.length?
59
- (0,v.createUnionSchema)({elements:o}):null},Wr=(e,t,r)=>{let o=He(e,t,r);return o?
60
- (0,v.createArraySchema)({element:o}):null};var H=require("@ez4/reflection"),be=require("@ez4/common/library"),yr=require("@ez4/schema/library");var he=require("@ez4/common/library"),Y=class extends he.InvalidTypeError{constructor(t){
61
- super("Invalid identity",void 0,"Http.Identity",t)}},K=class extends he.IncorrectTypeError{constructor(r,o){
62
- super("Incorrect identity",r,"Http.Identity",o);this.identityType=r}};var R=(e,t,r,o)=>{if((0,H.isTypeUndefined)(e))return null;if(!(0,H.isTypeReference)(
63
- e))return fr(e,t,r,o);let n=(0,be.getReferenceType)(e,r);return n?fr(n,t,r,o):null},
64
- fr=(e,t,r,o)=>{if((0,H.isTypeUnion)(e))return Xr(e.elements,t,r,o);if((0,H.isTypeObject)(
65
- e)||(0,H.isTypeIntersection)(e))return u(e,r);if(!(0,be.isModelDeclaration)(e))return o.
66
- push(new Y(t.file)),null;if(!er(e))return o.push(new K(e.name,t.file)),null;let n=u(
67
- e,r);return n&&(n.definitions={...n.definitions,extensible:!0}),n},Xr=(e,t,r,o)=>{
68
- let n=[];for(let p of e){let s=R(p,t,r,o);s&&n.push(s)}return n.length>1?(0,yr.createUnionSchema)(
69
- {elements:n}):n[0]};var P=require("@ez4/reflection"),xe=require("@ez4/common/library");var Se=require("@ez4/common/library"),W=class extends Se.InvalidTypeError{constructor(t){
70
- super("Invalid headers",void 0,"Http.Headers",t)}},X=class extends Se.IncorrectTypeError{constructor(r,o){
71
- super("Incorrect headers",r,"Http.Headers",o);this.headersType=r}};var Z=(e,t,r,o)=>{if(!(0,P.isTypeReference)(e))return dr(e,t,r,o);let n=(0,xe.getReferenceType)(
72
- e,r);return n?dr(n,t,r,o):null},dr=(e,t,r,o)=>(0,P.isTypeObject)(e)||(0,P.isTypeIntersection)(
73
- e)?u(e,r):(0,xe.isModelDeclaration)(e)?Le(e)?u(e,r):(o.push(new X(e.name,t.file)),
74
- null):(o.push(new W(t.file)),null);var Ce=(e,t,r,o)=>{let n=Hr(e,t,r,o,"Http.AuthResponse");return n&&Zr(n)?n:null},
75
- ke=(e,t,r,o)=>{let n=Hr(e,t,r,o,"Http.Response");return n&&_r(n)?n:null},Hr=(e,t,r,o,n)=>{
76
- if(!(0,j.isTypeReference)(e))return Tr(e,t,r,o,n);let p=(0,d.getReferenceType)(e,
77
- r);return p?Tr(p,t,r,o,n):null},Zr=e=>!!e.identity,_r=e=>(0,Mr.isAnyNumber)(e.status),
78
- Tr=(e,t,r,o,n)=>(0,j.isTypeObject)(e)?gr(e,t,(0,d.getObjectMembers)(e),r,o):(0,d.isModelDeclaration)(
79
- e)?(0,d.hasHeritageType)(e,n)?gr(e,t,(0,d.getModelMembers)(e),r,o):(o.push(new Q(
80
- e.name,n,e.file)),null):(o.push(new V(n,t.file)),null),gr=(e,t,r,o,n)=>{let p={};
81
- for(let s of r)if(!(!(0,j.isModelProperty)(s)||s.inherited))switch(s.name){default:
82
- n.push(new d.InvalidServicePropertyError(t.name,s.name,e.file));break;case"statu\
83
- s":p.status=(0,d.getPropertyNumber)(s);break;case"headers":{p.headers=Z(s.value,
84
- e,o,n),p.headers&&s.description&&(p.headers.description=s.description);break}case"\
85
- identity":{p.identity=R(s.value,e,o,n),p.identity&&s.description&&(p.identity.description=
86
- s.description);break}case"body":{p.body=ze(s.value,e,o,n),p.body&&s.description&&
87
- (p.body.description=s.description);break}}return p};var S=require("@ez4/reflection"),g=require("@ez4/common/library");var Ie=require("@ez4/common/library"),_=class extends Ie.InvalidTypeError{constructor(r,o){
88
- super("Invalid route request",void 0,r,o);this.baseType=r}},$=class extends Ie.IncorrectTypeError{constructor(r,o,n){
89
- super("Incorrect route request",r,o,n);this.requestType=r;this.baseType=o}};var w=require("@ez4/reflection"),Ee=require("@ez4/common/library");var Ae=require("@ez4/common/library"),L=class extends Ae.InvalidTypeError{constructor(t){
90
- super("Invalid request parameters",void 0,"Http.PathParameters",t)}},ee=class extends Ae.IncorrectTypeError{constructor(r,o){
91
- super("Incorrect request parameters",r,"Http.PathParameters",o);this.parametersType=
92
- r}};var qe=(e,t,r,o)=>{if(!(0,w.isTypeReference)(e))return hr(e,t,r,o);let n=(0,Ee.getReferenceType)(
93
- e,r);return n?hr(n,t,r,o):null},hr=(e,t,r,o)=>(0,w.isTypeObject)(e)||(0,w.isTypeIntersection)(
94
- e)?u(e,r):(0,Ee.isModelDeclaration)(e)?tr(e)?u(e,r):(o.push(new ee(e.name,e.file)),
95
- null):(o.push(new L(t.file)),null);var O=require("@ez4/reflection"),Re=require("@ez4/common/library");var ve=require("@ez4/common/library"),re=class extends ve.InvalidTypeError{constructor(t){
96
- super("Invalid request query strings",void 0,"Http.QueryStrings",t)}},te=class extends ve.IncorrectTypeError{constructor(r,o){
3
+ ue(e,n,{get:()=>t[n],enumerable:!(o=Dr(t,n))||o.enumerable});return e};var Vr=e=>Ur(ue({},"__esModule",{value:!0}),e);var st={};Nr(st,{IncompleteAuthorizerError:()=>V,IncompleteCacheError:()=>le,IncompleteCorsError:()=>se,
4
+ IncompleteHandlerError:()=>pe,IncompleteRouteError:()=>U,IncompleteServiceError:()=>F,
5
+ IncorrectBodyTypeError:()=>_,IncorrectCacheTypeError:()=>ae,IncorrectCorsTypeError:()=>ce,
6
+ IncorrectDefaultsTypeError:()=>N,IncorrectHeadersTypeError:()=>W,IncorrectIdentityTypeError:()=>Y,
7
+ IncorrectParameterTypeError:()=>te,IncorrectQueryTypeError:()=>ne,IncorrectRequestTypeError:()=>ee,
8
+ IncorrectResponseTypeError:()=>J,InvalidBodyTypeError:()=>Z,InvalidCacheTypeError:()=>me,
9
+ InvalidCorsTypeError:()=>ie,InvalidDefaultsTypeError:()=>B,InvalidHeadersTypeError:()=>K,
10
+ InvalidIdentityTypeError:()=>G,InvalidParameterTypeError:()=>re,InvalidQueryTypeError:()=>oe,
11
+ InvalidRequestTypeError:()=>L,InvalidResponseTypeError:()=>Q,InvalidRouteErrorTypeError:()=>E,
12
+ ServiceType:()=>fe,getHttpAuthRequest:()=>Fe,getHttpAuthResponse:()=>Ce,getHttpAuthorizer:()=>Ue,
13
+ getHttpBody:()=>$,getHttpCache:()=>Ye,getHttpCors:()=>Je,getHttpHandler:()=>Ve,getHttpHandlerRequest:()=>Be,
14
+ getHttpHandlerResponse:()=>ke,getHttpHeaders:()=>X,getHttpIdentity:()=>R,getHttpParameters:()=>qe,
15
+ getHttpQuery:()=>De,getHttpRoutes:()=>Qe,getHttpServices:()=>Ke,isHttpService:()=>Qr,
16
+ registerTriggers:()=>pt});module.exports=Vr(st);var Cr=require("@ez4/common/library"),kr=require("@ez4/schema/library"),qr=require("@ez4/project/library");var g=require("@ez4/common/library"),Or=require("@ez4/reflection");var fe="@ez4/http",Qr=p(e=>e.type===fe,"isHttpService");var We=require("@ez4/common/library");var F=class extends We.IncompleteTypeError{static{p(this,"IncompleteServiceError")}constructor(t,r){
17
+ super("Incomplete service",t,r)}};var y=require("@ez4/common/library"),v=require("@ez4/reflection");var u=require("@ez4/common/library"),A=require("@ez4/reflection");var Jr=new Set(["ANY","GET","POST","PUT","PATCH","DELETE","OPTIONS"]),Xe=p(e=>{let[
18
+ t]=e.split(" ",2);return Jr.has(t)},"isHttpPath"),Ze=p(e=>(0,u.isClassDeclaration)(
19
+ e)&&(0,u.hasHeritageType)(e,"Http.Service"),"isHttpService"),_e=p(e=>(0,u.isModelDeclaration)(
20
+ e)&&(0,u.hasHeritageType)(e,"Http.Route"),"isHttpRoute");var $e=p(e=>(0,u.hasHeritageType)(e,"Http.Defaults"),"isHttpDefaults"),Le=p(e=>(0,u.hasHeritageType)(
21
+ e,"Http.Headers"),"isHttpHeaders"),er=p(e=>(0,u.hasHeritageType)(e,"Http.Identit\
22
+ y"),"isHttpIdentity"),rr=p(e=>(0,u.hasHeritageType)(e,"Http.QueryStrings"),"isHt\
23
+ tpQuery"),tr=p(e=>(0,u.hasHeritageType)(e,"Http.PathParameters"),"isHttpParamete\
24
+ rs"),or=p(e=>(0,u.hasHeritageType)(e,"Http.JsonBody"),"isJsonBody"),nr=p(e=>(0,u.hasHeritageType)(
25
+ e,"Http.Cors"),"isHttpCors"),pr=p(e=>(0,u.hasHeritageType)(e,"Http.Cache"),"isHt\
26
+ tpCache"),sr=p(e=>(0,A.isTypeCallback)(e)||(0,A.isTypeFunction)(e),"isHttpAuthor\
27
+ izer"),ir=p(e=>(0,A.isTypeCallback)(e)||(0,A.isTypeFunction)(e),"isHttpHandler");var b=require("@ez4/common/library"),ye=require("@ez4/utils"),S=require("@ez4/reflection");var de=p((e,t,r,o)=>{if(!(0,S.isTypeReference)(e))return cr(e,t,r,o);let n=(0,b.getReferenceType)(
28
+ e,r);return n?cr(n,t,r,o):null},"getHttpErrors"),cr=p((e,t,r,o)=>(0,S.isTypeObject)(
29
+ e)?Gr(e,t,(0,b.getObjectMembers)(e),r,o):null,"getTypeErrors"),Gr=p((e,t,r,o,n)=>{
30
+ let s={};for(let i of r){if(!(0,S.isModelProperty)(i)||i.inherited)continue;let c=parseInt(
31
+ i.name,10);(0,ye.isAnyNumber)(c)||n.push(new b.InvalidServicePropertyError(t.name,
32
+ i.name,e.file));let l=Yr(i,c,t,o,n);l&&Object.assign(s,l)}return(0,ye.isEmptyObject)(
33
+ s)?null:s},"getTypeFromMembers"),Yr=p((e,t,r,o,n)=>{let s=(0,b.getPropertyTuple)(
34
+ e)??[],i={};for(let c of s){if(!(0,S.isTypeReference)(c)){n.push(new E(r.file));
35
+ continue}let l=(0,b.getReferenceType)(c,o);if(!l||!(0,S.isTypeClass)(l)){n.push(
36
+ new E(r.file));continue}i[l.name]=t}return i},"getErrorClasses");var ar=p((e,t,r,o)=>{if(!(0,v.isTypeReference)(e))return lr(e,t,r,o);let n=(0,y.getReferenceType)(
37
+ e,r);return n?lr(n,t,r,o):null},"getHttpDefaults"),lr=p((e,t,r,o)=>(0,v.isTypeObject)(
38
+ e)?mr(t,(0,y.getObjectMembers)(e),r,o):(0,y.isModelDeclaration)(e)?$e(e)?mr(t,(0,y.getModelMembers)(
39
+ e),r,o):(o.push(new N(e.name,t.file)),null):(o.push(new B(t.file)),null),"getTyp\
40
+ eDefaults"),mr=p((e,t,r,o)=>{let n={};for(let s of t)if(!(!(0,v.isModelProperty)(
41
+ s)||s.inherited))switch(s.name){default:o.push(new y.InvalidServicePropertyError(
42
+ e.name,s.name,e.file));break;case"httpErrors":n.httpErrors=de(s.value,e,r,o);break;case"\
43
+ memory":case"logRetention":case"timeout":n[s.name]=(0,y.getPropertyNumber)(s);break;case"\
44
+ listener":n.listener=(0,y.getServiceListener)(s.value,o);break}return n},"getTyp\
45
+ eFromMembers");var I=require("@ez4/reflection"),m=require("@ez4/common/library");var Te=require("@ez4/common/library");var U=class extends Te.IncompleteTypeError{static{p(this,"IncompleteRouteError")}constructor(t,r){
46
+ super("Incomplete gateway route",t,r)}},E=class extends Te.TypeError{static{p(this,
47
+ "InvalidRouteErrorTypeError")}constructor(t){super("Invalid route error type.",t)}};var ur=require("@ez4/common/library");var V=class extends ur.IncompleteTypeError{static{p(this,"IncompleteAuthorizerEr\
48
+ ror")}constructor(t,r){super("Incomplete route authorizer",t,r)}};var T=require("@ez4/common/library"),w=require("@ez4/reflection"),Mr=require("@ez4/utils");var ge=require("@ez4/common/library");var Q=class extends ge.InvalidTypeError{constructor(r,o){super("Invalid route re\
49
+ sponse",void 0,r,o);this.baseType=r}static{p(this,"InvalidResponseTypeError")}},
50
+ J=class extends ge.IncorrectTypeError{constructor(r,o,n){super("Incorrect route \
51
+ response",r,o,n);this.responseType=r;this.baseType=o}static{p(this,"IncorrectRes\
52
+ ponseTypeError")}};var h=require("@ez4/reflection"),he=require("@ez4/common/library"),yr=require("@ez4/schema/library");var Me=require("@ez4/common/library");var G=class extends Me.InvalidTypeError{static{p(this,"InvalidIdentityTypeError")}constructor(t){
53
+ super("Invalid identity",void 0,"Http.Identity",t)}},Y=class extends Me.IncorrectTypeError{constructor(r,o){
54
+ super("Incorrect identity",r,"Http.Identity",o);this.identityType=r}static{p(this,
55
+ "IncorrectIdentityTypeError")}};var He=require("@ez4/schema/library");var f=p((e,t)=>{let r=(0,He.getObjectSchema)(e,t);return r&&(0,He.isObjectSchema)(
56
+ r)?r:null},"getSchemaFromType");var R=p((e,t,r,o)=>{if((0,h.isTypeUndefined)(e))return null;if(!(0,h.isTypeReference)(
57
+ e))return fr(e,t,r,o);let n=(0,he.getReferenceType)(e,r);return n?fr(n,t,r,o):null},
58
+ "getHttpIdentity"),fr=p((e,t,r,o)=>{if((0,h.isTypeUnion)(e))return Kr(e.elements,
59
+ t,r,o);if((0,h.isTypeObject)(e)||(0,h.isTypeIntersection)(e))return f(e,r);if(!(0,he.isModelDeclaration)(
60
+ e))return o.push(new G(t.file)),null;if(!er(e))return o.push(new Y(e.name,t.file)),
61
+ null;let n=f(e,r);return n&&(n.definitions={...n.definitions,extensible:!0}),n},
62
+ "getTypeIdentity"),Kr=p((e,t,r,o)=>{let n=[];for(let s of e){let i=R(s,t,r,o);i&&
63
+ n.push(i)}return n.length>1?(0,yr.createUnionSchema)({elements:n}):n[0]},"getIde\
64
+ ntityFromUnion");var P=require("@ez4/reflection"),Se=require("@ez4/common/library");var be=require("@ez4/common/library");var K=class extends be.InvalidTypeError{static{p(this,"InvalidHeadersTypeError")}constructor(t){
65
+ super("Invalid headers",void 0,"Http.Headers",t)}},W=class extends be.IncorrectTypeError{constructor(r,o){
66
+ super("Incorrect headers",r,"Http.Headers",o);this.headersType=r}static{p(this,"\
67
+ IncorrectHeadersTypeError")}};var X=p((e,t,r,o)=>{if(!(0,P.isTypeReference)(e))return dr(e,t,r,o);let n=(0,Se.getReferenceType)(
68
+ e,r);return n?dr(n,t,r,o):null},"getHttpHeaders"),dr=p((e,t,r,o)=>(0,P.isTypeObject)(
69
+ e)||(0,P.isTypeIntersection)(e)?f(e,r):(0,Se.isModelDeclaration)(e)?Le(e)?f(e,r):
70
+ (o.push(new W(e.name,t.file)),null):(o.push(new K(t.file)),null),"getTypeHeaders");var j=require("@ez4/schema/library"),Ie=require("@ez4/common/library"),d=require("@ez4/reflection");var xe=require("@ez4/common/library");var Z=class extends xe.InvalidTypeError{static{p(this,"InvalidBodyTypeError")}constructor(t){
71
+ super("Invalid body",void 0,"Http.JsonBody",t)}},_=class extends xe.IncorrectTypeError{constructor(r,o){
72
+ super("Incorrect body",r,"Http.JsonBody",o);this.bodyType=r}static{p(this,"Incor\
73
+ rectBodyTypeError")}};var $=p((e,t,r,o)=>ze(e,r,n=>we(n)??Oe(n,t,r,o)),"getHttpBody"),ze=p((e,t,r)=>{if((0,d.isTypeUndefined)(
74
+ e))return null;if(!(0,d.isTypeReference)(e))return r(e);let o=(0,Ie.getReferenceType)(
75
+ e,t);return o?r(o):null},"getTypeBody"),we=p(e=>(0,d.isTypeScalar)(e)?(0,j.getScalarSchema)(
76
+ e):null,"getScalarTypeBody"),Oe=p((e,t,r,o)=>(0,d.isTypeUnion)(e)?Wr(e.elements,
77
+ r,n=>we(n)??Oe(n,t,r,o)):(0,d.isTypeArray)(e)?Xr(e.element,r,n=>we(n)??Oe(n,t,r,
78
+ o)):(0,d.isTypeObject)(e)||(0,d.isTypeIntersection)(e)?f(e,r):(0,Ie.isModelDeclaration)(
79
+ e)?or(e)?f(e,r):(o.push(new _(e.name,e.file)),null):(o.push(new Z(t.file)),null),
80
+ "getCompoundTypeBody"),Wr=p((e,t,r)=>{let o=[];for(let n of e){let s=ze(n,t,r);s&&
81
+ o.push(s)}return o.length?(0,j.createUnionSchema)({elements:o}):null},"getUnionT\
82
+ ypeBody"),Xr=p((e,t,r)=>{let o=ze(e,t,r);return o?(0,j.createArraySchema)({element:o}):
83
+ null},"getArrayTypeBody");var Ce=p((e,t,r,o)=>{let n=Hr(e,t,r,o,"Http.AuthResponse");return n&&Zr(n)?n:null},
84
+ "getHttpAuthResponse"),ke=p((e,t,r,o)=>{let n=Hr(e,t,r,o,"Http.Response");return n&&
85
+ _r(n)?n:null},"getHttpHandlerResponse"),Hr=p((e,t,r,o,n)=>{if(!(0,w.isTypeReference)(
86
+ e))return Tr(e,t,r,o,n);let s=(0,T.getReferenceType)(e,r);return s?Tr(s,t,r,o,n):
87
+ null},"getHttpResponse"),Zr=p(e=>!!e.identity,"isValidAuthResponse"),_r=p(e=>(0,Mr.isAnyNumber)(
88
+ e.status),"isValidHandlerResponse"),Tr=p((e,t,r,o,n)=>(0,w.isTypeObject)(e)?gr(e,
89
+ t,(0,T.getObjectMembers)(e),r,o):(0,T.isModelDeclaration)(e)?(0,T.hasHeritageType)(
90
+ e,n)?gr(e,t,(0,T.getModelMembers)(e),r,o):(o.push(new J(e.name,n,e.file)),null):
91
+ (o.push(new Q(n,t.file)),null),"getTypeResponse"),gr=p((e,t,r,o,n)=>{let s={};for(let i of r)
92
+ if(!(!(0,w.isModelProperty)(i)||i.inherited))switch(i.name){default:n.push(new T.InvalidServicePropertyError(
93
+ t.name,i.name,e.file));break;case"status":s.status=(0,T.getPropertyNumber)(i);break;case"\
94
+ headers":{s.headers=X(i.value,e,o,n),s.headers&&i.description&&(s.headers.description=
95
+ i.description);break}case"identity":{s.identity=R(i.value,e,o,n),s.identity&&i.description&&
96
+ (s.identity.description=i.description);break}case"body":{s.body=$(i.value,e,o,n),
97
+ s.body&&i.description&&(s.body.description=i.description);break}}return s},"getT\
98
+ ypeFromMembers");var x=require("@ez4/reflection"),M=require("@ez4/common/library");var Ae=require("@ez4/common/library");var L=class extends Ae.InvalidTypeError{constructor(r,o){super("Invalid route re\
99
+ quest",void 0,r,o);this.baseType=r}static{p(this,"InvalidRequestTypeError")}},ee=class extends Ae.IncorrectTypeError{constructor(r,o,n){
100
+ super("Incorrect route request",r,o,n);this.requestType=r;this.baseType=o}static{
101
+ p(this,"IncorrectRequestTypeError")}};var O=require("@ez4/reflection"),ve=require("@ez4/common/library");var Ee=require("@ez4/common/library");var re=class extends Ee.InvalidTypeError{static{p(this,"InvalidParameterTypeErro\
102
+ r")}constructor(t){super("Invalid request parameters",void 0,"Http.PathParameter\
103
+ s",t)}},te=class extends Ee.IncorrectTypeError{constructor(r,o){super("Incorrect\
104
+ request parameters",r,"Http.PathParameters",o);this.parametersType=r}static{p(this,
105
+ "IncorrectParameterTypeError")}};var qe=p((e,t,r,o)=>{if(!(0,O.isTypeReference)(e))return hr(e,t,r,o);let n=(0,ve.getReferenceType)(
106
+ e,r);return n?hr(n,t,r,o):null},"getHttpParameters"),hr=p((e,t,r,o)=>(0,O.isTypeObject)(
107
+ e)||(0,O.isTypeIntersection)(e)?f(e,r):(0,ve.isModelDeclaration)(e)?tr(e)?f(e,r):
108
+ (o.push(new te(e.name,e.file)),null):(o.push(new re(t.file)),null),"getTypeParam\
109
+ eter");var z=require("@ez4/reflection"),Pe=require("@ez4/common/library");var Re=require("@ez4/common/library");var oe=class extends Re.InvalidTypeError{static{p(this,"InvalidQueryTypeError")}constructor(t){
110
+ super("Invalid request query strings",void 0,"Http.QueryStrings",t)}},ne=class extends Re.IncorrectTypeError{constructor(r,o){
97
111
  super("Incorrect request query strings",r,"Http.QueryStrings",o);this.queryType=
98
- r}};var De=(e,t,r,o)=>{if(!(0,O.isTypeReference)(e))return br(e,t,r,o);let n=(0,Re.getReferenceType)(
99
- e,r);return n?br(n,t,r,o):null},br=(e,t,r,o)=>(0,O.isTypeObject)(e)||(0,O.isTypeIntersection)(
100
- e)?u(e,r):(0,Re.isModelDeclaration)(e)?rr(e)?u(e,r):(o.push(new te(e.name,t.file)),
101
- null):(o.push(new re(t.file)),null);var Fe=(e,t,r,o)=>Ne(e,t,r,o,"Http.AuthRequest"),Be=(e,t,r,o)=>Ne(e,t,r,o,"Http.\
102
- Request"),Ne=(e,t,r,o,n)=>{if((0,S.isTypeIntersection)(e)&&e.elements.length>0)return Ne(
103
- e.elements[0],t,r,o,n);if(!(0,S.isTypeReference)(e))return Sr(e,t,r,o,n);let p=(0,g.getReferenceType)(
104
- e,r);return p?Sr(p,t,r,o,n):null},Sr=(e,t,r,o,n)=>(0,S.isTypeObject)(e)?xr(e,t,(0,g.getObjectMembers)(
105
- e),r,o):(0,g.isModelDeclaration)(e)?(0,g.hasHeritageType)(e,n)?xr(e,t,(0,g.getModelMembers)(
106
- e),r,o):(o.push(new $(e.name,n,e.file)),null):(o.push(new _(n,t.file)),null),xr=(e,t,r,o,n)=>{
107
- let p={};for(let s of r)if(!(!(0,S.isModelProperty)(s)||s.inherited))switch(s.name){default:
108
- n.push(new g.InvalidServicePropertyError(t.name,s.name,e.file));break;case"heade\
109
- rs":{p.headers=Z(s.value,e,o,n),p.headers&&s.description&&(p.headers.description=
110
- s.description);break}case"identity":{p.identity=R(s.value,e,o,n),p.identity&&s.description&&
111
- (p.identity.description=s.description);break}case"query":{p.query=De(s.value,e,o,
112
- n),p.query&&s.description&&(p.query.description=s.description);break}case"parame\
113
- ters":{p.parameters=qe(s.value,e,o,n),p.parameters&&s.description&&(p.parameters.
114
- description=s.description);break}case"body":{p.body=Oe(s.value,e,o,n),p.body&&s.
115
- description&&(p.body.description=s.description);break}}return p};var Ue=(e,t,r,o)=>{if(!sr(e))return null;let n={},p=new Set(["name","file"]);if(e.
116
- description&&(n.description=e.description),(n.name=e.name)&&p.delete("name"),(n.
117
- file=e.file)&&p.delete("file"),e.parameters){let[{value:s}]=e.parameters;n.request=
118
- Fe(s,t,r,o)}return e.return&&(n.response=Ce(e.return,t,r,o)),$r(n)?n:(o.push(new U(
119
- [...p],e.file)),null)},$r=e=>!!e.name&&!!e.file;var Ir=require("@ez4/common/library"),oe=class extends Ir.IncompleteTypeError{constructor(t,r){
120
- super("Incomplete route handler",t,r)}};var Ve=(e,t,r,o)=>{if(!ir(e))return null;let n={},p=new Set(["name","file","resp\
121
- onse"]);if(e.description&&(n.description=e.description),(n.name=e.name)&&p.delete(
122
- "name"),(n.file=e.file)&&p.delete("file"),e.parameters){let[{value:s}]=e.parameters;
123
- n.request=Be(s,t,r,o)}if(e.return){let s=ke(e.return,t,r,o);s&&(n.response=s,p.delete(
124
- "response"))}return Lr(n)?n:(o.push(new oe([...p],e.file)),null)},Lr=e=>!!e.name&&
125
- !!e.file&&!!e.response;var Qe=(e,t,r,o)=>{let n=(0,l.getPropertyTuple)(t)??[];return vr(n,e,r,o)},vr=(e,t,r,o)=>{
126
- let n=[];for(let p of e){let s=et(p,t,r,o);Array.isArray(s)?n.push(...s):s&&n.push(
127
- s)}return n},et=(e,t,r,o)=>{if(!(0,x.isTypeReference)(e))return Ar(e,t,r,o);let n=(0,l.getReferenceType)(
128
- e,r);return n?Ar(n,t,r,o):null},rt=e=>!!e.path&&!!e.handler,Ar=(e,t,r,o)=>_e(e)?
129
- Er(e,t,(0,l.getModelMembers)(e),r,o):(0,x.isTypeObject)(e)?Er(e,t,(0,l.getObjectMembers)(
130
- e),r,o):(0,x.isTypeTuple)(e)&&e.spread?vr(e.elements,t,r,o):null,Er=(e,t,r,o,n)=>{
131
- let p={},s=new Set(["path","handler"]);for(let i of r)if(!(!(0,x.isModelProperty)(
132
- i)||i.inherited))switch(i.name){default:n.push(new l.InvalidServicePropertyError(
133
- t.name,i.name,e.file));break;case"path":{let c=(0,l.getPropertyString)(i);c&&Xe(
134
- c)&&(s.delete(i.name),p.path=c);break}case"handler":(p.handler=Ve(i.value,t,o,n))&&
135
- s.delete(i.name);break;case"authorizer":p.authorizer=Ue(i.value,t,o,n);break;case"\
136
- httpErrors":p.httpErrors=ue(i.value,t,o,n);break;case"memory":case"logRetention":case"\
137
- timeout":p[i.name]=(0,l.getPropertyNumber)(i);break;case"cors":p.cors=(0,l.getPropertyBoolean)(
138
- i);break;case"listener":p.listener=(0,l.getServiceListener)(i.value,n);break;case"\
139
- variables":p.variables=(0,l.getLinkedVariableList)(i,n);break}return rt(p)?p:(n.
140
- push(new N([...s],e.file)),null)};var m=require("@ez4/common/library"),C=require("@ez4/reflection");var z=require("@ez4/common/library"),ne=class extends z.IncompleteTypeError{constructor(t,r){
141
- super("Incomplete HTTP CORS",t,r)}},pe=class extends z.InvalidTypeError{constructor(t){
142
- super("Invalid HTTP CORS type",void 0,"Http.Cors",t)}},se=class extends z.IncorrectTypeError{constructor(r,o){
143
- super("Incorrect HTTP CORS type",r,"Http.Cors",o);this.fallbackType=r}};var Je=(e,t,r,o)=>{if(!(0,C.isTypeReference)(e))return Rr(e,t,o);let n=(0,m.getReferenceType)(
144
- e,r);return n?Rr(n,t,o):null},tt=e=>!!e.allowOrigins?.length,Rr=(e,t,r)=>(0,C.isTypeObject)(
145
- e)?Pr(e,t,(0,m.getObjectMembers)(e),r):(0,m.isModelDeclaration)(e)?nr(e)?Pr(e,t,
146
- (0,m.getModelMembers)(e),r):(r.push(new se(e.name,e.file)),null):(r.push(new pe(
147
- t.file)),null),Pr=(e,t,r,o)=>{let n={},p=new Set(["allowOrigins"]);for(let s of r)
148
- if(!(!(0,C.isModelProperty)(s)||s.inherited))switch(s.name){default:o.push(new m.InvalidServicePropertyError(
149
- t.name,s.name,e.file));break;case"allowOrigins":case"allowMethods":case"allowHea\
150
- ders":case"exposeHeaders":n[s.name]=(0,m.getPropertyStringList)(s);break;case"al\
151
- lowCredentials":n.allowCredentials=(0,m.getPropertyBoolean)(s);break;case"maxAge":
152
- n.maxAge=(0,m.getPropertyNumber)(s);break}return tt(n)?n:(o.push(new ne([...p],e.
153
- file)),null)};var M=require("@ez4/common/library"),q=require("@ez4/reflection"),Ge=require("@ez4/utils");var k=require("@ez4/common/library"),ie=class extends k.IncompleteTypeError{constructor(t,r){
154
- super("Incomplete gateway cache",t,r)}},ce=class extends k.InvalidTypeError{constructor(t){
155
- super("Invalid gateway cache type",void 0,"Http.Cache",t)}},le=class extends k.IncorrectTypeError{constructor(r,o){
156
- super("Incorrect gateway cache type",r,"Http.Cache",o);this.cacheType=r}};var Ye=(e,t,r,o)=>{if(!(0,q.isTypeReference)(e))return jr(e,t,o);let n=(0,M.getReferenceType)(
157
- e,r);return n?jr(n,t,o):null},ot=e=>(0,Ge.isAnyNumber)(e.authorizerTTL),jr=(e,t,r)=>(0,q.isTypeObject)(
158
- e)?wr(e,t,(0,M.getObjectMembers)(e),r):(0,M.isModelDeclaration)(e)?pr(e)?wr(e,t,
159
- (0,M.getModelMembers)(e),r):(r.push(new le(e.name,e.file)),null):(r.push(new ce(
160
- t.file)),null),wr=(e,t,r,o)=>{let n={},p=new Set(["authorizerTTL"]);for(let s of r)
161
- if(!(!(0,q.isModelProperty)(s)||s.inherited))switch(s.name){default:o.push(new M.InvalidServicePropertyError(
162
- t.name,s.name,e.file));break;case"authorizerTTL":{let i=(0,M.getPropertyNumber)(
163
- s);(0,Ge.isAnyNumber)(i)&&(n[s.name]=i,p.delete(s.name));break}}return ot(n)?n:(o.
164
- push(new ie([...p],e.file)),null)};var Ke=e=>{let t={},r=[];for(let o in e){let n=e[o];if(!Ze(n)||(0,T.isExternalDeclaration)(
165
- n))continue;let p={type:me,extras:{}},s=new Set(["routes"]),i=n.file;p.name=n.name,
166
- n.description&&(p.description=n.description);for(let c of(0,T.getModelMembers)(n))
167
- if(!(!(0,Or.isModelProperty)(c)||c.inherited))switch(c.name){default:r.push(new T.InvalidServicePropertyError(
168
- p.name,c.name,i));break;case"routes":(p.routes=Qe(n,c,e,r))&&s.delete(c.name);break;case"\
169
- name":p.displayName=(0,T.getPropertyString)(c);break;case"defaults":p.defaults=ar(
170
- c.value,n,e,r);break;case"cache":p.cache=Ye(c.value,n,e,r);break;case"cors":p.cors=
171
- Je(c.value,n,e,r);break;case"variables":p.variables=(0,T.getLinkedVariableList)(
172
- c,r);break;case"services":p.services=(0,T.getLinkedServiceList)(c,e,r);break}if(!nt(
173
- p)){r.push(new D([...s],i));continue}if(t[n.name]){r.push(new T.DuplicateServiceError(
174
- n.name,i));continue}t[n.name]=p}return{services:t,errors:r}},nt=e=>!!e.name&&!!e.
175
- routes&&!!e.extras;var zr=!1,pt=()=>{zr||((0,Cr.registerTriggers)(),(0,kr.registerTriggers)(),(0,qr.createTrigger)(
176
- "@ez4/gateway",{"metadata:getServices":Ke}),zr=!1)};var Pe=require("@ez4/common/library"),F=class extends Pe.InvalidTypeError{constructor(t){
177
- super("Invalid defaults",void 0,"Http.Defaults",t)}},B=class extends Pe.IncorrectTypeError{constructor(r,o){
178
- super("Incorrect defaults",r,"Http.Defaults",o);this.defaultsType=r}};0&&(module.exports={IncompleteAuthorizerError,IncompleteCacheError,IncompleteCorsError,
112
+ r}static{p(this,"IncorrectQueryTypeError")}};var De=p((e,t,r,o)=>{if(!(0,z.isTypeReference)(e))return br(e,t,r,o);let n=(0,Pe.getReferenceType)(
113
+ e,r);return n?br(n,t,r,o):null},"getHttpQuery"),br=p((e,t,r,o)=>(0,z.isTypeObject)(
114
+ e)||(0,z.isTypeIntersection)(e)?f(e,r):(0,Pe.isModelDeclaration)(e)?rr(e)?f(e,r):
115
+ (o.push(new ne(e.name,t.file)),null):(o.push(new oe(t.file)),null),"getTypeQuery");var Fe=p((e,t,r,o)=>Ne(e,t,r,o,"Http.AuthRequest"),"getHttpAuthRequest"),Be=p((e,t,r,o)=>Ne(
116
+ e,t,r,o,"Http.Request"),"getHttpHandlerRequest"),Ne=p((e,t,r,o,n)=>{if((0,x.isTypeIntersection)(
117
+ e)&&e.elements.length>0)return Ne(e.elements[0],t,r,o,n);if(!(0,x.isTypeReference)(
118
+ e))return Sr(e,t,r,o,n);let s=(0,M.getReferenceType)(e,r);return s?Sr(s,t,r,o,n):
119
+ null},"getHttpRequest"),Sr=p((e,t,r,o,n)=>(0,x.isTypeObject)(e)?xr(e,t,(0,M.getObjectMembers)(
120
+ e),r,o):(0,M.isModelDeclaration)(e)?(0,M.hasHeritageType)(e,n)?xr(e,t,(0,M.getModelMembers)(
121
+ e),r,o):(o.push(new ee(e.name,n,e.file)),null):(o.push(new L(n,t.file)),null),"g\
122
+ etTypeRequest"),xr=p((e,t,r,o,n)=>{let s={};for(let i of r)if(!(!(0,x.isModelProperty)(
123
+ i)||i.inherited))switch(i.name){default:n.push(new M.InvalidServicePropertyError(
124
+ t.name,i.name,e.file));break;case"headers":{s.headers=X(i.value,e,o,n),s.headers&&
125
+ i.description&&(s.headers.description=i.description);break}case"identity":{s.identity=
126
+ R(i.value,e,o,n),s.identity&&i.description&&(s.identity.description=i.description);
127
+ break}case"query":{s.query=De(i.value,e,o,n),s.query&&i.description&&(s.query.description=
128
+ i.description);break}case"parameters":{s.parameters=qe(i.value,e,o,n),s.parameters&&
129
+ i.description&&(s.parameters.description=i.description);break}case"body":{s.body=
130
+ $(i.value,e,o,n),s.body&&i.description&&(s.body.description=i.description);break}}
131
+ return s},"getTypeFromMembers");var Ue=p((e,t,r,o)=>{if(!sr(e))return null;let n={},s=new Set(["name","file"]);if(e.
132
+ description&&(n.description=e.description),(n.name=e.name)&&s.delete("name"),(n.
133
+ file=e.file)&&s.delete("file"),e.parameters){let[{value:i}]=e.parameters;n.request=
134
+ Fe(i,t,r,o)}return e.return&&(n.response=Ce(e.return,t,r,o)),$r(n)?n:(o.push(new V(
135
+ [...s],e.file)),null)},"getHttpAuthorizer"),$r=p(e=>!!e.name&&!!e.file,"isValidA\
136
+ uthorizer");var Ir=require("@ez4/common/library");var pe=class extends Ir.IncompleteTypeError{static{p(this,"IncompleteHandlerErro\
137
+ r")}constructor(t,r){super("Incomplete route handler",t,r)}};var Ve=p((e,t,r,o)=>{if(!ir(e))return null;let n={},s=new Set(["name","file","re\
138
+ sponse"]);if(e.description&&(n.description=e.description),(n.name=e.name)&&s.delete(
139
+ "name"),(n.file=e.file)&&s.delete("file"),e.parameters){let[{value:i}]=e.parameters;
140
+ n.request=Be(i,t,r,o)}if(e.return){let i=ke(e.return,t,r,o);i&&(n.response=i,s.delete(
141
+ "response"))}return Lr(n)?n:(o.push(new pe([...s],e.file)),null)},"getHttpHandle\
142
+ r"),Lr=p(e=>!!e.name&&!!e.file&&!!e.response,"isValidHandler");var Qe=p((e,t,r,o)=>{let n=(0,m.getPropertyTuple)(t)??[];return vr(n,e,r,o)},"ge\
143
+ tHttpRoutes"),vr=p((e,t,r,o)=>{let n=[];for(let s of e){let i=et(s,t,r,o);Array.
144
+ isArray(i)?n.push(...i):i&&n.push(i)}return n},"getRouteFromTuple"),et=p((e,t,r,o)=>{
145
+ if(!(0,I.isTypeReference)(e))return Ar(e,t,r,o);let n=(0,m.getReferenceType)(e,r);
146
+ return n?Ar(n,t,r,o):null},"getTypeFromRoute"),rt=p(e=>!!e.path&&!!e.handler,"is\
147
+ ValidRoute"),Ar=p((e,t,r,o)=>_e(e)?Er(e,t,(0,m.getModelMembers)(e),r,o):(0,I.isTypeObject)(
148
+ e)?Er(e,t,(0,m.getObjectMembers)(e),r,o):(0,I.isTypeTuple)(e)&&e.spread?vr(e.elements,
149
+ t,r,o):null,"getRouteType"),Er=p((e,t,r,o,n)=>{let s={},i=new Set(["path","handl\
150
+ er"]);for(let c of r)if(!(!(0,I.isModelProperty)(c)||c.inherited))switch(c.name){default:
151
+ n.push(new m.InvalidServicePropertyError(t.name,c.name,e.file));break;case"path":{
152
+ let l=(0,m.getPropertyString)(c);l&&Xe(l)&&(i.delete(c.name),s.path=l);break}case"\
153
+ handler":(s.handler=Ve(c.value,t,o,n))&&i.delete(c.name);break;case"authorizer":
154
+ s.authorizer=Ue(c.value,t,o,n);break;case"httpErrors":s.httpErrors=de(c.value,t,
155
+ o,n);break;case"memory":case"logRetention":case"timeout":s[c.name]=(0,m.getPropertyNumber)(
156
+ c);break;case"cors":s.cors=(0,m.getPropertyBoolean)(c);break;case"listener":s.listener=
157
+ (0,m.getServiceListener)(c.value,n);break;case"variables":s.variables=(0,m.getLinkedVariableList)(
158
+ c,n);break}return rt(s)?s:(n.push(new U([...i],e.file)),null)},"getTypeFromMembe\
159
+ rs");var a=require("@ez4/common/library"),k=require("@ez4/reflection");var C=require("@ez4/common/library");var se=class extends C.IncompleteTypeError{static{p(this,"IncompleteCorsError")}constructor(t,r){
160
+ super("Incomplete HTTP CORS",t,r)}},ie=class extends C.InvalidTypeError{static{p(
161
+ this,"InvalidCorsTypeError")}constructor(t){super("Invalid HTTP CORS type",void 0,
162
+ "Http.Cors",t)}},ce=class extends C.IncorrectTypeError{constructor(r,o){super("I\
163
+ ncorrect HTTP CORS type",r,"Http.Cors",o);this.fallbackType=r}static{p(this,"Inc\
164
+ orrectCorsTypeError")}};var Je=p((e,t,r,o)=>{if(!(0,k.isTypeReference)(e))return Rr(e,t,o);let n=(0,a.getReferenceType)(
165
+ e,r);return n?Rr(n,t,o):null},"getHttpCors"),tt=p(e=>!!e.allowOrigins?.length,"i\
166
+ sValidCors"),Rr=p((e,t,r)=>(0,k.isTypeObject)(e)?Pr(e,t,(0,a.getObjectMembers)(e),
167
+ r):(0,a.isModelDeclaration)(e)?nr(e)?Pr(e,t,(0,a.getModelMembers)(e),r):(r.push(
168
+ new ce(e.name,e.file)),null):(r.push(new ie(t.file)),null),"getTypeCors"),Pr=p((e,t,r,o)=>{
169
+ let n={},s=new Set(["allowOrigins"]);for(let i of r)if(!(!(0,k.isModelProperty)(
170
+ i)||i.inherited))switch(i.name){default:o.push(new a.InvalidServicePropertyError(
171
+ t.name,i.name,e.file));break;case"allowOrigins":case"allowMethods":case"allowHea\
172
+ ders":case"exposeHeaders":n[i.name]=(0,a.getPropertyStringList)(i);break;case"al\
173
+ lowCredentials":n.allowCredentials=(0,a.getPropertyBoolean)(i);break;case"maxAge":
174
+ n.maxAge=(0,a.getPropertyNumber)(i);break}return tt(n)?n:(o.push(new se([...s],e.
175
+ file)),null)},"getTypeFromMembers");var H=require("@ez4/common/library"),D=require("@ez4/reflection"),Ge=require("@ez4/utils");var q=require("@ez4/common/library");var le=class extends q.IncompleteTypeError{static{p(this,"IncompleteCacheError")}constructor(t,r){
176
+ super("Incomplete gateway cache",t,r)}},me=class extends q.InvalidTypeError{static{
177
+ p(this,"InvalidCacheTypeError")}constructor(t){super("Invalid gateway cache type",
178
+ void 0,"Http.Cache",t)}},ae=class extends q.IncorrectTypeError{constructor(r,o){
179
+ super("Incorrect gateway cache type",r,"Http.Cache",o);this.cacheType=r}static{p(
180
+ this,"IncorrectCacheTypeError")}};var Ye=p((e,t,r,o)=>{if(!(0,D.isTypeReference)(e))return jr(e,t,o);let n=(0,H.getReferenceType)(
181
+ e,r);return n?jr(n,t,o):null},"getHttpCache"),ot=p(e=>(0,Ge.isAnyNumber)(e.authorizerTTL),
182
+ "isValidCache"),jr=p((e,t,r)=>(0,D.isTypeObject)(e)?wr(e,t,(0,H.getObjectMembers)(
183
+ e),r):(0,H.isModelDeclaration)(e)?pr(e)?wr(e,t,(0,H.getModelMembers)(e),r):(r.push(
184
+ new ae(e.name,e.file)),null):(r.push(new me(t.file)),null),"getTypeCache"),wr=p(
185
+ (e,t,r,o)=>{let n={},s=new Set(["authorizerTTL"]);for(let i of r)if(!(!(0,D.isModelProperty)(
186
+ i)||i.inherited))switch(i.name){default:o.push(new H.InvalidServicePropertyError(
187
+ t.name,i.name,e.file));break;case"authorizerTTL":{let c=(0,H.getPropertyNumber)(
188
+ i);(0,Ge.isAnyNumber)(c)&&(n[i.name]=c,s.delete(i.name));break}}return ot(n)?n:(o.
189
+ push(new le([...s],e.file)),null)},"getTypeFromMembers");var Ke=p(e=>{let t={},r=[];for(let o in e){let n=e[o];if(!Ze(n)||(0,g.isExternalDeclaration)(
190
+ n))continue;let s={type:fe,extras:{}},i=new Set(["routes"]),c=n.file;s.name=n.name,
191
+ n.description&&(s.description=n.description);for(let l of(0,g.getModelMembers)(n))
192
+ if(!(!(0,Or.isModelProperty)(l)||l.inherited))switch(l.name){default:r.push(new g.InvalidServicePropertyError(
193
+ s.name,l.name,c));break;case"routes":(s.routes=Qe(n,l,e,r))&&i.delete(l.name);break;case"\
194
+ name":s.displayName=(0,g.getPropertyString)(l);break;case"defaults":s.defaults=ar(
195
+ l.value,n,e,r);break;case"cache":s.cache=Ye(l.value,n,e,r);break;case"cors":s.cors=
196
+ Je(l.value,n,e,r);break;case"variables":s.variables=(0,g.getLinkedVariableList)(
197
+ l,r);break;case"services":s.services=(0,g.getLinkedServiceList)(l,e,r);break}if(!nt(
198
+ s)){r.push(new F([...i],c));continue}if(t[n.name]){r.push(new g.DuplicateServiceError(
199
+ n.name,c));continue}t[n.name]=s}return{services:t,errors:r}},"getHttpServices"),
200
+ nt=p(e=>!!e.name&&!!e.routes&&!!e.extras,"isValidService");var zr=!1,pt=p(()=>{zr||((0,Cr.registerTriggers)(),(0,kr.registerTriggers)(),(0,qr.createTrigger)(
201
+ "@ez4/gateway",{"metadata:getServices":Ke}),zr=!1)},"registerTriggers");var je=require("@ez4/common/library");var B=class extends je.InvalidTypeError{static{p(this,"InvalidDefaultsTypeError")}constructor(t){
202
+ super("Invalid defaults",void 0,"Http.Defaults",t)}},N=class extends je.IncorrectTypeError{constructor(r,o){
203
+ super("Incorrect defaults",r,"Http.Defaults",o);this.defaultsType=r}static{p(this,
204
+ "IncorrectDefaultsTypeError")}};0&&(module.exports={IncompleteAuthorizerError,IncompleteCacheError,IncompleteCorsError,
179
205
  IncompleteHandlerError,IncompleteRouteError,IncompleteServiceError,IncorrectBodyTypeError,
180
206
  IncorrectCacheTypeError,IncorrectCorsTypeError,IncorrectDefaultsTypeError,IncorrectHeadersTypeError,
181
207
  IncorrectIdentityTypeError,IncorrectParameterTypeError,IncorrectQueryTypeError,IncorrectRequestTypeError,
182
208
  IncorrectResponseTypeError,InvalidBodyTypeError,InvalidCacheTypeError,InvalidCorsTypeError,
183
209
  InvalidDefaultsTypeError,InvalidHeadersTypeError,InvalidIdentityTypeError,InvalidParameterTypeError,
184
210
  InvalidQueryTypeError,InvalidRequestTypeError,InvalidResponseTypeError,InvalidRouteErrorTypeError,
185
- ServiceType,getHttpAuthRequest,getHttpAuthResponse,getHttpAuthorizer,getHttpCache,
186
- getHttpCors,getHttpHandler,getHttpHandlerRequest,getHttpHandlerResponse,getHttpHeaders,
187
- getHttpIdentity,getHttpParameters,getHttpQuery,getHttpRequestBody,getHttpResponseBody,
188
- getHttpRoutes,getHttpServices,isHttpService,registerTriggers});
211
+ ServiceType,getHttpAuthRequest,getHttpAuthResponse,getHttpAuthorizer,getHttpBody,
212
+ getHttpCache,getHttpCors,getHttpHandler,getHttpHandlerRequest,getHttpHandlerResponse,
213
+ getHttpHeaders,getHttpIdentity,getHttpParameters,getHttpQuery,getHttpRoutes,getHttpServices,
214
+ isHttpService,registerTriggers});
189
215
  //# sourceMappingURL=library.cjs.map