@ez4/gateway 0.35.0 → 0.36.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.
Files changed (145) hide show
  1. package/README.md +121 -2
  2. package/dist/client/authorization.d.ts +1 -1
  3. package/dist/client/operations.d.ts +1 -2
  4. package/dist/errors/auth/authorizer.d.ts +4 -0
  5. package/dist/errors/{identity.d.ts → auth/identity.d.ts} +4 -2
  6. package/dist/errors/{authorization.d.ts → http/authorization.d.ts} +4 -2
  7. package/dist/errors/{cache.d.ts → http/cache.d.ts} +4 -2
  8. package/dist/errors/{cors.d.ts → http/cors.d.ts} +5 -3
  9. package/dist/errors/{body.d.ts → web/body.d.ts} +4 -2
  10. package/dist/errors/{defaults.d.ts → web/defaults.d.ts} +4 -2
  11. package/dist/errors/{headers.d.ts → web/headers.d.ts} +4 -2
  12. package/dist/errors/web/parameters.d.ts +14 -0
  13. package/dist/errors/{preferences.d.ts → web/preferences.d.ts} +4 -2
  14. package/dist/errors/{query.d.ts → web/query.d.ts} +4 -2
  15. package/dist/errors/ws/event.d.ts +10 -0
  16. package/dist/errors/{authorizer.d.ts → ws/target.d.ts} +1 -1
  17. package/dist/library.cjs +460 -311
  18. package/dist/library.d.ts +26 -23
  19. package/dist/library.mjs +436 -293
  20. package/dist/main.cjs +17 -17
  21. package/dist/main.d.ts +5 -3
  22. package/dist/main.mjs +8 -8
  23. package/dist/metadata/auth/handler.d.ts +4 -0
  24. package/dist/metadata/auth/identity.d.ts +6 -0
  25. package/dist/metadata/auth/request.d.ts +4 -0
  26. package/dist/metadata/auth/response.d.ts +4 -0
  27. package/dist/metadata/auth/types.d.ts +17 -0
  28. package/dist/metadata/http/access.d.ts +4 -0
  29. package/dist/metadata/http/authorization.d.ts +4 -0
  30. package/dist/metadata/http/cache.d.ts +4 -0
  31. package/dist/metadata/http/cors.d.ts +4 -0
  32. package/dist/metadata/http/defaults.d.ts +4 -0
  33. package/dist/metadata/{errors.d.ts → http/errors.d.ts} +2 -2
  34. package/dist/metadata/http/handler.d.ts +4 -0
  35. package/dist/metadata/http/import.d.ts +7 -0
  36. package/dist/metadata/http/provider.d.ts +4 -0
  37. package/dist/metadata/http/request.d.ts +4 -0
  38. package/dist/metadata/http/response.d.ts +4 -0
  39. package/dist/metadata/{route.d.ts → http/routes.d.ts} +3 -2
  40. package/dist/metadata/http/service.d.ts +7 -0
  41. package/dist/{types/common.d.ts → metadata/http/types.d.ts} +33 -22
  42. package/dist/metadata/utils/path.d.ts +2 -0
  43. package/dist/metadata/utils/type.d.ts +1 -0
  44. package/dist/metadata/web/body.d.ts +6 -0
  45. package/dist/metadata/web/headers.d.ts +5 -0
  46. package/dist/metadata/web/parameters.d.ts +5 -0
  47. package/dist/metadata/web/preferences.d.ts +4 -0
  48. package/dist/metadata/web/query.d.ts +5 -0
  49. package/dist/metadata/web/types.d.ts +4 -0
  50. package/dist/metadata/ws/connection.d.ts +4 -0
  51. package/dist/metadata/ws/defaults.d.ts +5 -0
  52. package/dist/metadata/ws/event.d.ts +4 -0
  53. package/dist/metadata/ws/handlers.d.ts +5 -0
  54. package/dist/metadata/ws/message.d.ts +4 -0
  55. package/dist/metadata/ws/request.d.ts +4 -0
  56. package/dist/metadata/ws/response.d.ts +4 -0
  57. package/dist/metadata/ws/service.d.ts +7 -0
  58. package/dist/metadata/ws/types.d.ts +72 -0
  59. package/dist/services/auth/cache.d.ts +9 -0
  60. package/dist/services/auth/handler.d.ts +9 -0
  61. package/dist/services/auth/identity.d.ts +5 -0
  62. package/dist/services/auth/incoming.d.ts +22 -0
  63. package/dist/services/auth/provider.d.ts +11 -0
  64. package/dist/services/auth/request.d.ts +20 -0
  65. package/dist/services/auth/response.d.ts +10 -0
  66. package/dist/services/{client.d.ts → http/client.d.ts} +3 -3
  67. package/dist/services/{contract.d.ts → http/contract.d.ts} +42 -30
  68. package/dist/services/http/defaults.d.ts +17 -0
  69. package/dist/services/http/errors.d.ts +6 -0
  70. package/dist/services/http/handler.d.ts +10 -0
  71. package/dist/services/http/incoming.d.ts +30 -0
  72. package/dist/services/http/listener.d.ts +9 -0
  73. package/dist/services/http/path.d.ts +2 -0
  74. package/dist/services/http/request.d.ts +30 -0
  75. package/dist/services/http/response.d.ts +19 -0
  76. package/dist/services/http/route.d.ts +45 -0
  77. package/dist/services/{utils.d.ts → http/utils.d.ts} +13 -5
  78. package/dist/services/web/body.d.ts +13 -0
  79. package/dist/services/web/defaults.d.ts +22 -0
  80. package/dist/services/web/headers.d.ts +10 -0
  81. package/dist/services/web/parameters.d.ts +5 -0
  82. package/dist/services/{preferences.d.ts → web/preferences.d.ts} +2 -2
  83. package/dist/services/web/query.d.ts +5 -0
  84. package/dist/services/web/target.d.ts +27 -0
  85. package/dist/services/ws/client.d.ts +19 -0
  86. package/dist/services/ws/connect.d.ts +23 -0
  87. package/dist/services/ws/contract.d.ts +108 -0
  88. package/dist/services/ws/defaults.d.ts +13 -0
  89. package/dist/services/ws/disconnect.d.ts +17 -0
  90. package/dist/services/ws/event.d.ts +20 -0
  91. package/dist/services/ws/handler.d.ts +10 -0
  92. package/dist/services/ws/incoming.d.ts +19 -0
  93. package/dist/services/ws/listener.d.ts +9 -0
  94. package/dist/services/ws/message.d.ts +17 -0
  95. package/dist/services/ws/request.d.ts +15 -0
  96. package/dist/services/ws/response.d.ts +10 -0
  97. package/dist/services/ws/utils.d.ts +11 -0
  98. package/dist/utils/body.d.ts +1 -1
  99. package/dist/utils/client.d.ts +4 -4
  100. package/dist/utils/errors.d.ts +1 -0
  101. package/dist/utils/headers.d.ts +1 -1
  102. package/dist/utils/identity.d.ts +1 -1
  103. package/dist/utils/parameters.d.ts +1 -1
  104. package/dist/utils/query.d.ts +1 -1
  105. package/dist/utils.cjs +2 -2
  106. package/dist/utils.mjs +5 -5
  107. package/package.json +8 -8
  108. package/dist/errors/parameters.d.ts +0 -8
  109. package/dist/metadata/access.d.ts +0 -3
  110. package/dist/metadata/authorization.d.ts +0 -3
  111. package/dist/metadata/authorizer.d.ts +0 -3
  112. package/dist/metadata/body.d.ts +0 -5
  113. package/dist/metadata/cache.d.ts +0 -3
  114. package/dist/metadata/cors.d.ts +0 -3
  115. package/dist/metadata/defaults.d.ts +0 -3
  116. package/dist/metadata/handler.d.ts +0 -3
  117. package/dist/metadata/headers.d.ts +0 -4
  118. package/dist/metadata/identity.d.ts +0 -5
  119. package/dist/metadata/import.d.ts +0 -6
  120. package/dist/metadata/parameters.d.ts +0 -4
  121. package/dist/metadata/preferences.d.ts +0 -3
  122. package/dist/metadata/provider.d.ts +0 -3
  123. package/dist/metadata/query.d.ts +0 -4
  124. package/dist/metadata/request.d.ts +0 -4
  125. package/dist/metadata/response.d.ts +0 -4
  126. package/dist/metadata/service.d.ts +0 -6
  127. package/dist/metadata/utils.d.ts +0 -24
  128. package/dist/services/cache.d.ts +0 -9
  129. package/dist/services/common.d.ts +0 -143
  130. package/dist/services/defaults.d.ts +0 -31
  131. package/dist/services/route.d.ts +0 -56
  132. package/dist/types/import.d.ts +0 -14
  133. package/dist/types/service.d.ts +0 -14
  134. /package/dist/errors/{access.d.ts → http/access.d.ts} +0 -0
  135. /package/dist/errors/{provider.d.ts → http/provider.d.ts} +0 -0
  136. /package/dist/errors/{route.d.ts → http/route.d.ts} +0 -0
  137. /package/dist/errors/{handler.d.ts → web/handler.d.ts} +0 -0
  138. /package/dist/errors/{request.d.ts → web/request.d.ts} +0 -0
  139. /package/dist/errors/{response.d.ts → web/response.d.ts} +0 -0
  140. /package/dist/errors/{service.d.ts → web/service.d.ts} +0 -0
  141. /package/dist/metadata/{schema.d.ts → utils/schema.d.ts} +0 -0
  142. /package/dist/services/{access.d.ts → http/access.d.ts} +0 -0
  143. /package/dist/services/{authorization.d.ts → http/authorization.d.ts} +0 -0
  144. /package/dist/services/{cors.d.ts → http/cors.d.ts} +0 -0
  145. /package/dist/services/{provider.d.ts → http/provider.d.ts} +0 -0
package/dist/library.cjs CHANGED
@@ -1,314 +1,463 @@
1
- "use strict";var De=Object.defineProperty;var qt=Object.getOwnPropertyDescriptor;var Dt=Object.getOwnPropertyNames;var Ft=Object.prototype.hasOwnProperty;var p=(e,t)=>De(e,"name",{value:t,configurable:!0});var Nt=(e,t)=>{for(var r in t)De(e,r,{get:t[r],enumerable:!0})},Bt=(e,t,r,o)=>{if(t&&
2
- typeof t=="object"||typeof t=="function")for(let n of Dt(t))!Ft.call(e,n)&&n!==r&&
3
- De(e,n,{get:()=>t[n],enumerable:!(o=qt(t,n))||o.enumerable});return e};var Ut=e=>Bt(De({},"__esModule",{value:!0}),e);var yo={};Nt(yo,{ImportType:()=>k,IncompleteAccessError:()=>xe,IncompleteAuthorizationError:()=>ke,
4
- IncompleteAuthorizerError:()=>ie,IncompleteCacheError:()=>Pe,IncompleteCorsError:()=>we,
5
- IncompleteHandlerError:()=>Se,IncompleteProviderError:()=>ve,IncompleteRouteError:()=>pe,
6
- IncompleteServiceError:()=>O,IncorrectAccessTypeError:()=>Ee,IncorrectAuthorizationTypeError:()=>qe,
7
- IncorrectBodyTypeError:()=>ye,IncorrectCacheTypeError:()=>ze,IncorrectCorsTypeError:()=>je,
8
- IncorrectDefaultsTypeError:()=>ne,IncorrectHeadersTypeError:()=>de,IncorrectIdentityTypeError:()=>ae,
9
- IncorrectParameterTypeError:()=>Me,IncorrectPreferencesTypeError:()=>te,IncorrectQueryTypeError:()=>He,
10
- IncorrectRequestTypeError:()=>ge,IncorrectResponseTypeError:()=>ce,InvalidAccessTypeError:()=>Ae,
11
- InvalidAuthorizationTypeError:()=>Ce,InvalidBodyTypeError:()=>fe,InvalidCacheTypeError:()=>Re,
12
- InvalidCorsTypeError:()=>Oe,InvalidDefaultsTypeError:()=>oe,InvalidHeadersTypeError:()=>le,
13
- InvalidIdentityTypeError:()=>me,InvalidParameterTypeError:()=>he,InvalidPreferencesTypeError:()=>re,
14
- InvalidProviderTypeError:()=>Ie,InvalidQueryTypeError:()=>be,InvalidRequestTypeError:()=>Te,
15
- InvalidResponseTypeError:()=>se,InvalidRouteErrorTypeError:()=>N,ServiceCollisionError:()=>ee,
16
- ServiceType:()=>C,getClientAuthorization:()=>uo,getClientOperations:()=>lo,getHttpImports:()=>Hr,
17
- getHttpServices:()=>Mr,isHttpImport:()=>ur,isHttpService:()=>Vt,registerTriggers:()=>ao});
18
- module.exports=Ut(yo);var jt=require("@ez4/common/library"),kt=require("@ez4/schema/library"),Sr=require("@ez4/project/library");var k="@ez4/import:http",ur=p(e=>e.type===k,"isHttpImport");var C="@ez4/http",Vt=p(e=>e.type===C,"isHttpService");var g=require("@ez4/common/library"),Et=require("@ez4/reflection");var Fe=require("@ez4/common/library");var O=class extends Fe.IncompleteTypeError{static{p(this,"IncompleteServiceError")}constructor(t,r){
19
- super("Incomplete service",t,r)}},ee=class extends Fe.TypeCollisionError{static{
20
- p(this,"ServiceCollisionError")}constructor(t,r){super("Service error",t,r)}};var T=require("@ez4/common/library"),B=require("@ez4/reflection");var b=require("@ez4/common/library"),F=require("@ez4/reflection"),D=require("@ez4/schema");var Ne=require("@ez4/common/library");var re=class extends Ne.InvalidTypeError{static{p(this,"InvalidPreferencesTypeEr\
21
- ror")}constructor(t){super("Invalid preferences",void 0,"Http.Preferences",t)}},
22
- te=class extends Ne.IncorrectTypeError{constructor(r,o){super("Incorrect prefere\
23
- nces",r,"Http.Preferences",o);this.preferencesType=r}static{p(this,"IncorrectPre\
24
- ferencesTypeError")}};var u=require("@ez4/common/library"),q=require("@ez4/reflection");var Qt=new Set(["ANY","GET","POST","PUT","PATCH","DELETE","OPTIONS"]),vr=p(e=>{let[
25
- t]=e.split(" ",2);return Qt.has(t)},"isHttpPath"),Be=p(e=>(0,u.isClassDeclaration)(
26
- e)&&(0,u.hasHeritageType)(e,"Http.Service"),"isHttpService"),Ue=p(e=>(0,u.isClassDeclaration)(
27
- e)&&(0,u.hasHeritageType)(e,"Http.Import"),"isHttpImport");var xr=p(e=>(0,u.isModelDeclaration)(e)&&(0,u.hasHeritageType)(e,"Http.Route"),"\
28
- isHttpRoute");var Ar=p(e=>(0,u.hasHeritageType)(e,"Http.Defaults"),"isHttpDefaults"),Er=p(e=>(0,u.hasHeritageType)(
29
- e,"Http.Authorization"),"isHttpAuthorization"),Pr=p(e=>(0,u.hasHeritageType)(e,"\
30
- Http.Preferences"),"isHttpPreferences"),Rr=p(e=>(0,u.hasHeritageType)(e,"Http.He\
31
- aders"),"isHttpHeaders"),zr=p(e=>(0,u.hasHeritageType)(e,"Http.Identity"),"isHtt\
32
- pIdentity"),wr=p(e=>(0,u.hasHeritageType)(e,"Http.QueryStrings"),"isHttpQuery"),
33
- Or=p(e=>(0,u.hasHeritageType)(e,"Http.PathParameters"),"isHttpParameters"),jr=p(
34
- e=>(0,u.hasHeritageType)(e,"Http.JsonBody"),"isJsonBody"),kr=p(e=>(0,u.hasHeritageType)(
35
- e,"Http.Cache"),"isHttpCache"),Cr=p(e=>(0,u.hasHeritageType)(e,"Http.Access"),"i\
36
- sHttpAccess"),qr=p(e=>(0,u.hasHeritageType)(e,"Http.Cors"),"isHttpCors"),Dr=p(e=>(0,q.isTypeCallback)(
37
- e)||(0,q.isTypeFunction)(e),"isHttpAuthorizer"),Fr=p(e=>(0,q.isTypeCallback)(e)||
38
- (0,q.isTypeFunction)(e),"isHttpHandler");var Ve=p((e,t,r,o)=>{if(!(0,F.isTypeReference)(e))return Nr(e,t,o);let n=(0,b.getReferenceType)(
39
- e,r);if(n)return Nr(n,t,o)},"getHttpPreferences"),Nr=p((e,t,r)=>{if((0,F.isTypeObject)(
40
- e))return Br(t,(0,b.getObjectMembers)(e),r);if(!(0,b.isModelDeclaration)(e)){r.push(
41
- new re(t.file));return}if(!Pr(e)){r.push(new te(e.name,t.file));return}return Br(
42
- t,(0,b.getModelMembers)(e),r)},"getTypePreferences"),Br=p((e,t,r)=>{let o={};for(let n of t)
43
- if((0,F.isModelProperty)(n))switch(n.name){default:r.push(new b.InvalidServicePropertyError(
44
- e.name,n.name,e.file));break;case"namingStyle":o.namingStyle=(0,b.getPropertyStringIn)(
45
- n,[D.NamingStyle.Preserve,D.NamingStyle.CamelCase,D.NamingStyle.PascalCase,D.NamingStyle.
46
- SnakeCase,D.NamingStyle.KebabCase]);break}return o},"getTypeFromMembers");var P=require("@ez4/common/library"),Qe=require("@ez4/utils"),R=require("@ez4/reflection");var Je=p((e,t,r,o)=>{if(!(0,R.isTypeReference)(e))return Ur(e,t,r,o);let n=(0,P.getReferenceType)(
47
- e,r);if(n)return Ur(n,t,r,o)},"getHttpErrors"),Ur=p((e,t,r,o)=>{if((0,R.isTypeObject)(
48
- e))return Jt(e,t,(0,P.getObjectMembers)(e),r,o)},"getTypeErrors"),Jt=p((e,t,r,o,n)=>{
49
- let s={};for(let i of r){if(!(0,R.isModelProperty)(i)||i.inherited)continue;let m=parseInt(
50
- i.name,10);(0,Qe.isAnyNumber)(m)||n.push(new P.InvalidServicePropertyError(t.name,
51
- i.name,e.file));let c=Gt(i,m,t,o,n);c&&Object.assign(s,c)}if(!(0,Qe.isEmptyObject)(
52
- s))return s},"getTypeFromMembers"),Gt=p((e,t,r,o,n)=>{let s=(0,P.getPropertyTuple)(
53
- e)??[],i={};for(let m of s){if(!(0,R.isTypeReference)(m)){n.push(new N(r.file));
54
- continue}let c=(0,P.getReferenceType)(m,o);if(!c||!(0,R.isTypeClass)(c)){n.push(
55
- new N(r.file));continue}i[c.name]=t}return i},"getErrorClasses");var Ge=p((e,t,r,o)=>{if(!(0,B.isTypeReference)(e))return Vr(e,t,r,o);let n=(0,T.tryGetReferenceType)(
56
- e,r);if(n)return Vr(n,t,r,o)},"getHttpDefaults"),Vr=p((e,t,r,o)=>{if((0,B.isTypeObject)(
57
- e))return Qr(t,(0,T.getObjectMembers)(e),r,o);if(!(0,T.isModelDeclaration)(e)){o.
58
- push(new oe(t.file));return}if(!Ar(e)){o.push(new ne(e.name,t.file));return}return Qr(
59
- t,(0,T.getModelMembers)(e),r,o)},"getTypeDefaults"),Qr=p((e,t,r,o)=>{let n={};for(let s of t)
60
- if(!(!(0,B.isModelProperty)(s)||s.inherited))switch(s.name){default:o.push(new T.InvalidServicePropertyError(
61
- e.name,s.name,e.file));break;case"httpErrors":n.httpErrors=Je(s.value,e,r,o);break;case"\
62
- preferences":n.preferences=Ve(s.value,e,r,o);break;case"memory":case"logRetentio\
63
- n":case"timeout":n[s.name]=(0,T.getPropertyNumber)(s);break;case"listener":n.listener=
64
- (0,T.getServiceListener)(s.value,o);break}return n},"getTypeFromMembers");var E=require("@ez4/reflection"),a=require("@ez4/common/library");var $e=require("@ez4/common/library");var pe=class extends $e.IncompleteTypeError{static{p(this,"IncompleteRouteError")}constructor(t,r){
65
- super("Incomplete gateway route",t,r)}},N=class extends $e.TypeError{static{p(this,
66
- "InvalidRouteErrorTypeError")}constructor(t){super("Invalid route error type.",t)}};var Jr=require("@ez4/common/library");var ie=class extends Jr.IncompleteTypeError{static{p(this,"IncompleteAuthorizerE\
67
- rror")}constructor(t,r){super("Incomplete route authorizer",t,r)}};var l=require("@ez4/common/library"),Q=require("@ez4/reflection"),Xr=require("@ez4/utils");var Ke=require("@ez4/common/library");var se=class extends Ke.InvalidTypeError{constructor(r,o){super("Invalid route r\
68
- esponse",void 0,r,o);this.baseType=r}static{p(this,"InvalidResponseTypeError")}},
69
- ce=class extends Ke.IncorrectTypeError{constructor(r,o,n){super("Incorrect route\
70
- response",r,o,n);this.responseType=r;this.baseType=o}static{p(this,"IncorrectRe\
71
- sponseTypeError")}};var We=require("@ez4/common/library"),x=require("@ez4/reflection"),$r=require("@ez4/schema/library");var Ye=require("@ez4/common/library");var me=class extends Ye.InvalidTypeError{static{p(this,"InvalidIdentityTypeError")}constructor(t){
72
- super("Invalid identity",void 0,"Http.Identity",t)}},ae=class extends Ye.IncorrectTypeError{constructor(r,o){
73
- super("Incorrect identity",r,"Http.Identity",o);this.identityType=r}static{p(this,
74
- "IncorrectIdentityTypeError")}};var j=require("@ez4/schema/library");var v=p((e,t)=>{let r=(0,j.getIntersectionSchema)(e,t);if(r&&(0,j.isObjectSchema)(
75
- r))return r},"getSchemaFromIntersection"),f=p((e,t)=>{let r=(0,j.getObjectSchema)(
76
- e,t);if(r&&(0,j.isObjectSchema)(r))return r},"getSchemaFromObject");var ue=p((e,t,r,o)=>{if((0,x.isTypeUndefined)(e))return;if(!(0,x.isTypeReference)(
77
- e))return Gr(e,t,r,o);let n=(0,We.getReferenceType)(e,r);if(n)return Gr(n,t,r,o)},
78
- "getHttpIdentity"),Gr=p((e,t,r,o)=>{if((0,x.isTypeObject)(e))return f(e,r);if((0,x.isTypeUnion)(
79
- e))return $t(e.elements,t,r,o);if((0,x.isTypeIntersection)(e))return v(e,r);if(!(0,We.isModelDeclaration)(
80
- e)){o.push(new me(t.file));return}if(!zr(e)){o.push(new ae(e.name,t.file));return}
81
- let n=f(e,r);return n&&(n.definitions={...n.definitions,extensible:!0}),n},"getT\
82
- ypeIdentity"),$t=p((e,t,r,o)=>{let n=[];for(let s of e){let i=ue(s,t,r,o);i&&n.push(
83
- i)}return n.length>1?(0,$r.createUnionSchema)({elements:n}):n[0]},"getIdentityFr\
84
- omUnion");var U=require("@ez4/reflection"),Ze=require("@ez4/common/library");var Xe=require("@ez4/common/library");var le=class extends Xe.InvalidTypeError{static{p(this,"InvalidHeadersTypeError")}constructor(t){
85
- super("Invalid headers",void 0,"Http.Headers",t)}},de=class extends Xe.IncorrectTypeError{constructor(r,o){
86
- super("Incorrect headers",r,"Http.Headers",o);this.headersType=r}static{p(this,"\
87
- IncorrectHeadersTypeError")}};var _e=p((e,t,r,o)=>{if(!(0,U.isTypeReference)(e))return Kr(e,t,r,o);let n=(0,Ze.getReferenceType)(
88
- e,r);if(n)return Kr(n,t,r,o)},"getHttpHeaders"),Kr=p((e,t,r,o)=>{if((0,U.isTypeObject)(
89
- e))return f(e,r);if((0,U.isTypeIntersection)(e))return v(e,r);if(!(0,Ze.isModelDeclaration)(
90
- e)){o.push(new le(t.file));return}if(!Rr(e)){o.push(new de(e.name,t.file));return}
91
- return f(e,r)},"getTypeHeaders");var V=require("@ez4/schema/library"),er=require("@ez4/common/library"),y=require("@ez4/reflection");var Le=require("@ez4/common/library");var fe=class extends Le.InvalidTypeError{static{p(this,"InvalidBodyTypeError")}constructor(t){
92
- super("Invalid body",void 0,"Http.JsonBody",t)}},ye=class extends Le.IncorrectTypeError{constructor(r,o){
93
- super("Incorrect body",r,"Http.JsonBody",o);this.bodyType=r}static{p(this,"Incor\
94
- rectBodyTypeError")}};var rr=p((e,t,r,o)=>fr(e,r,n=>lr(n)??dr(n,t,r,o)),"getHttpBody"),fr=p((e,t,r)=>{
95
- if(!(0,y.isTypeUndefined)(e)){if(!(0,y.isTypeReference)(e))return r(e);let o=(0,er.getReferenceType)(
96
- e,t);if(o)return r(o)}},"getTypeBody"),lr=p(e=>{if((0,y.isTypeScalar)(e))return(0,V.getScalarSchema)(
97
- e)},"getScalarTypeBody"),dr=p((e,t,r,o)=>{if((0,y.isTypeObject)(e))return f(e,r);
98
- if((0,y.isTypeUnion)(e))return Kt(e.elements,r,n=>lr(n)??dr(n,t,r,o));if((0,y.isTypeIntersection)(
99
- e))return v(e,r);if((0,y.isTypeArray)(e))return Yt(e.element,r,n=>lr(n)??dr(n,t,
100
- r,o));if(!(0,er.isModelDeclaration)(e)){o.push(new fe(t.file));return}if(!jr(e)){
101
- o.push(new ye(e.name,e.file));return}return f(e,r)},"getCompoundTypeBody"),Kt=p(
102
- (e,t,r)=>{let o={optional:!1,elements:[]};for(let n of e){if((0,y.isTypeUndefined)(
103
- n)){o.optional=!0;continue}let s=fr(n,t,r);s&&o.elements.push(s)}if(o.elements.length)
104
- return(0,V.createUnionSchema)(o)},"getUnionTypeBody"),Yt=p((e,t,r)=>{let o=fr(e,
105
- t,r);if(o)return(0,V.createArraySchema)({element:o})},"getArrayTypeBody");var Zr=p((e,t,r,o)=>{let n=Lr(e,t,r,o,"Http.AuthResponse");if(n&&Wt(n))return n},
106
- "getHttpAuthResponse"),_r=p((e,t,r,o)=>{let n=Lr(e,t,r,o,"Http.Response");if(n&&
107
- Xt(n))return n},"getHttpHandlerResponse"),Lr=p((e,t,r,o,n)=>{if(!(0,Q.isTypeReference)(
108
- e))return Yr(e,t,r,o,n);let s=(0,l.getReferenceType)(e,r);if(s)return Yr(s,t,r,o,
109
- n)},"getHttpResponse"),Wt=p(e=>!!e.identity,"isValidAuthResponse"),Xt=p(e=>(0,Xr.isAnyNumber)(
110
- e.status)||Array.isArray(e.status),"isValidHandlerResponse"),Yr=p((e,t,r,o,n)=>{
111
- if((0,Q.isTypeObject)(e))return Wr(e,t,(0,l.getObjectMembers)(e),r,o);if(!(0,l.isModelDeclaration)(
112
- e)){o.push(new se(n,t.file));return}if(!(0,l.hasHeritageType)(e,n)){o.push(new ce(
113
- e.name,n,e.file));return}return Wr(e,t,(0,l.getModelMembers)(e),r,o)},"getTypeRe\
114
- sponse"),Wr=p((e,t,r,o,n)=>{let s={};for(let i of r)if(!(!(0,Q.isModelProperty)(
115
- i)||i.inherited))switch(i.name){default:n.push(new l.InvalidServicePropertyError(
116
- t.name,i.name,e.file));break;case"status":s.status=(0,l.getPropertyNumber)(i)??(0,l.getPropertyNumberList)(
117
- i);break;case"headers":{s.headers=_e(i.value,e,o,n),s.headers&&i.description&&(s.
118
- headers.description=i.description);break}case"identity":{s.identity=ue(i.value,e,
119
- o,n),s.identity&&i.description&&(s.identity.description=i.description);break}case"\
120
- body":{s.body=rr(i.value,e,o,n),s.body&&i.description&&(s.body.description=i.description);
121
- break}}return s},"getTypeFromMembers");var w=require("@ez4/reflection"),H=require("@ez4/common/library");var tr=require("@ez4/common/library");var Te=class extends tr.InvalidTypeError{constructor(r,o){super("Invalid route r\
122
- equest",void 0,r,o);this.baseType=r}static{p(this,"InvalidRequestTypeError")}},ge=class extends tr.IncorrectTypeError{constructor(r,o,n){
123
- super("Incorrect route request",r,o,n);this.requestType=r;this.baseType=o}static{
124
- p(this,"IncorrectRequestTypeError")}};var J=require("@ez4/reflection"),nr=require("@ez4/common/library");var or=require("@ez4/common/library");var he=class extends or.InvalidTypeError{static{p(this,"InvalidParameterTypeErro\
125
- r")}constructor(t){super("Invalid request parameters",void 0,"Http.PathParameter\
126
- s",t)}},Me=class extends or.IncorrectTypeError{constructor(r,o){super("Incorrect\
127
- request parameters",r,"Http.PathParameters",o);this.parametersType=r}static{p(this,
128
- "IncorrectParameterTypeError")}};var rt=p((e,t,r,o)=>{if(!(0,J.isTypeReference)(e))return et(e,t,r,o);let n=(0,nr.getReferenceType)(
129
- e,r);if(n)return et(n,t,r,o)},"getHttpParameters"),et=p((e,t,r,o)=>{if((0,J.isTypeObject)(
130
- e))return f(e,r);if((0,J.isTypeIntersection)(e))return v(e,r);if(!(0,nr.isModelDeclaration)(
131
- e)){o.push(new he(t.file));return}if(!Or(e)){o.push(new Me(e.name,e.file));return}
132
- return f(e,r)},"getTypeParameter");var G=require("@ez4/reflection"),ir=require("@ez4/common/library");var pr=require("@ez4/common/library");var be=class extends pr.InvalidTypeError{static{p(this,"InvalidQueryTypeError")}constructor(t){
133
- super("Invalid request query strings",void 0,"Http.QueryStrings",t)}},He=class extends pr.IncorrectTypeError{constructor(r,o){
134
- super("Incorrect request query strings",r,"Http.QueryStrings",o);this.queryType=
135
- r}static{p(this,"IncorrectQueryTypeError")}};var ot=p((e,t,r,o)=>{if(!(0,G.isTypeReference)(e))return tt(e,t,r,o);let n=(0,ir.getReferenceType)(
136
- e,r);if(n)return tt(n,t,r,o)},"getHttpQuery"),tt=p((e,t,r,o)=>{if((0,G.isTypeObject)(
137
- e))return f(e,r);if((0,G.isTypeIntersection)(e))return v(e,r);if(!(0,ir.isModelDeclaration)(
138
- e)){o.push(new be(t.file));return}if(!wr(e)){o.push(new He(e.name,t.file));return}
139
- return f(e,r)},"getTypeQuery");var it=p((e,t,r,o)=>yr(e,t,r,o,"Http.AuthRequest"),"getHttpAuthRequest"),st=p((e,t,r,o)=>yr(
140
- e,t,r,o,"Http.Request"),"getHttpHandlerRequest"),yr=p((e,t,r,o,n)=>{if((0,w.isTypeIntersection)(
141
- e)&&e.elements.length>0)return yr(e.elements[0],t,r,o,n);if(!(0,w.isTypeReference)(
142
- e))return nt(e,t,r,o,n);let s=(0,H.getReferenceType)(e,r);if(s)return nt(s,t,r,o,
143
- n)},"getHttpRequest"),nt=p((e,t,r,o,n)=>{if((0,w.isTypeObject)(e))return pt(e,t,
144
- (0,H.getObjectMembers)(e),r,o);if(!(0,H.isModelDeclaration)(e)){o.push(new Te(n,
145
- t.file));return}if(!(0,H.hasHeritageType)(e,n)){o.push(new ge(e.name,n,e.file));
146
- return}return pt(e,t,(0,H.getModelMembers)(e),r,o)},"getTypeRequest"),pt=p((e,t,r,o,n)=>{
147
- let s={};for(let i of r)if(!(!(0,w.isModelProperty)(i)||i.inherited))switch(i.name){default:
148
- n.push(new H.InvalidServicePropertyError(t.name,i.name,e.file));break;case"heade\
149
- rs":{s.headers=_e(i.value,e,o,n),s.headers&&i.description&&(s.headers.description=
150
- i.description);break}case"identity":{s.identity=ue(i.value,e,o,n),s.identity&&i.
151
- description&&(s.identity.description=i.description);break}case"query":{s.query=ot(
152
- i.value,e,o,n),s.query&&i.description&&(s.query.description=i.description);break}case"\
153
- parameters":{s.parameters=rt(i.value,e,o,n),s.parameters&&i.description&&(s.parameters.
154
- description=i.description);break}case"body":{s.body=rr(i.value,e,o,n),s.body&&i.
155
- description&&(s.body.description=i.description);break}}return s},"getTypeFromMem\
156
- bers");var ct=p((e,t,r,o)=>{if(!Dr(e))return;let{description:n,module:s}=e,i={...n&&{description:n},
157
- ...s&&{module:s}},m=new Set(["name","file"]);if((i.name=e.name)&&m.delete("name"),
158
- (i.file=e.file)&&m.delete("file"),e.parameters){let[{value:c}]=e.parameters;i.request=
159
- it(c,t,r,o)}if(e.return&&(i.response=Zr(e.return,t,r,o)),Zt(i))return i;o.push(new ie(
160
- [...m],e.file))},"getHttpAuthorizer"),Zt=p(e=>!!e.name&&!!e.file,"isValidAuthori\
161
- zer");var mt=require("@ez4/common/library");var Se=class extends mt.IncompleteTypeError{static{p(this,"IncompleteHandlerErro\
162
- r")}constructor(t,r){super("Incomplete route handler",t,r)}};var A=require("@ez4/common/library"),cr=require("@ez4/reflection");var sr=require("@ez4/common/library");var Ie=class extends sr.InvalidTypeError{constructor(r,o){super("Invalid route p\
163
- rovider",void 0,r,o);this.baseType=r}static{p(this,"InvalidProviderTypeError")}},
164
- ve=class extends sr.IncompleteTypeError{static{p(this,"IncompleteProviderError")}constructor(t,r){
165
- super("Incomplete route provider",t,r)}};var ut=p((e,t,r,o)=>{if(!(0,cr.isTypeReference)(e))return at(e,t,r,o,"Http.Provi\
166
- der");let n=(0,A.getReferenceType)(e,r);if(n)return at(n,t,r,o,"Http.Provider")},
167
- "getHttpProvider"),_t=p(e=>!!e.services,"isValidProvider"),at=p((e,t,r,o,n)=>{if(!(0,A.isModelDeclaration)(
168
- e)){o.push(new Ie(n,t.file));return}return Lt(e,(0,A.getModelMembers)(e),r,o)},"\
169
- getProviderType"),Lt=p((e,t,r,o)=>{let n={},s=new Set(["services"]);for(let i of t)
170
- if(!(!(0,cr.isModelProperty)(i)||i.inherited))switch(i.name){case"variables":n.variables=
171
- (0,A.getLinkedVariableList)(i,o);break;case"services":{(n.services=(0,A.getLinkedServiceList)(
172
- i,r,o))&&s.delete(i.name);break}}if(_t(n))return n;o.push(new ve([...s],e.file))},
173
- "getTypeFromMembers");var lt=p((e,t,r,o,n)=>{if(!Fr(e))return;let{description:s,module:i}=e,m={...s&&{
174
- description:s},...i&&{module:i}},c=new Set(["name","file","response"]);if((m.name=
175
- e.name)&&c.delete("name"),(m.file=e.file)&&c.delete("file"),e.parameters){let[{value:z},
176
- Ir]=e.parameters;m.request=st(z,t,r,o),Ir&&!n&&(m.provider=ut(Ir.value,t,r,o))}if(e.
177
- return){let z=_r(e.return,t,r,o);z&&(m.response=z,c.delete("response"))}if(eo(m))
178
- return m;o.push(new Se([...c],e.file))},"getHttpHandler"),eo=p(e=>!!e.name&&!!e.
179
- file&&!!e.response,"isValidHandler");var yt=p((e,t,r,o)=>gt(e,t,r,o,!1),"getHttpLocalRoutes"),Tt=p((e,t,r,o)=>gt(e,t,
180
- r,o,!0),"getHttpRemoteRoutes"),gt=p((e,t,r,o,n)=>{if(!(0,E.isTypeReference)(t.value))
181
- return Tr((0,a.getPropertyTuple)(t)??[],e,r,o,n);let s=(0,a.getReferenceType)(t.
182
- value,r);if(s&&(0,E.isTypeTuple)(s))return Tr(s.elements,e,r,o,n)},"getHttpRoute\
183
- s"),Tr=p((e,t,r,o,n)=>{let s=[];for(let i of e){let m=ro(i,t,r,o,n);Array.isArray(
184
- m)?s.push(...m):m&&s.push(m)}return s},"getRouteFromTuple"),ro=p((e,t,r,o,n)=>{if(!(0,E.isTypeReference)(
185
- e))return dt(e,t,r,o,n);let s=(0,a.getReferenceType)(e,r);if(s)return dt(s,t,r,o,
186
- n)},"getTypeFromRoute"),to=p(e=>!!e.path&&!!e.handler,"isValidRoute"),dt=p((e,t,r,o,n)=>{
187
- if(xr(e))return ft(e,t,(0,a.getModelMembers)(e),r,o,n);if((0,E.isTypeObject)(e))
188
- return ft(e,t,(0,a.getObjectMembers)(e),r,o,n);if((0,E.isTypeTuple)(e)&&e.spread)
189
- return Tr(e.elements,t,r,o,n)},"getRouteType"),ft=p((e,t,r,o,n,s)=>{let i={},m=new Set(
190
- ["path","handler"]);for(let c of r)if(!(!(0,E.isModelProperty)(c)||c.inherited))
191
- switch(c.name){default:n.push(new a.InvalidServicePropertyError(t.name,c.name,e.
192
- file));break;case"name":i.name=(0,a.getPropertyString)(c);break;case"path":{let z=(0,a.getPropertyString)(
193
- c);z&&vr(z)&&(m.delete(c.name),i.path=z);break}case"handler":(i.handler=lt(c.value,
194
- t,o,n,s))&&m.delete(c.name);break;case"authorizer":i.authorizer=ct(c.value,t,o,n);
195
- break;case"httpErrors":i.httpErrors=Je(c.value,t,o,n);break;case"preferences":i.
196
- preferences=Ve(c.value,t,o,n);break;case"memory":case"logRetention":case"timeout":
197
- i[c.name]=(0,a.getPropertyNumber)(c);break;case"cors":case"disabled":i[c.name]=(0,a.getPropertyBoolean)(
198
- c);break;case"listener":i.listener=(0,a.getServiceListener)(c.value,n);break;case"\
199
- variables":i.variables=(0,a.getLinkedVariableList)(c,n);break}if(to(i))return i;
200
- n.push(new pe([...m],e.file))},"getTypeFromMembers");var S=require("@ez4/common/library"),K=require("@ez4/reflection"),gr=require("@ez4/utils");var $=require("@ez4/common/library");var xe=class extends $.IncompleteTypeError{static{p(this,"IncompleteAccessError")}constructor(t,r){
201
- super("Incomplete gateway access",t,r)}},Ae=class extends $.InvalidTypeError{static{
202
- p(this,"InvalidAccessTypeError")}constructor(t){super("Invalid gateway access ty\
203
- pe",void 0,"Http.Access",t)}},Ee=class extends $.IncorrectTypeError{constructor(r,o){
204
- super("Incorrect gateway access type",r,"Http.Access",o);this.cacheType=r}static{
205
- p(this,"IncorrectAccessTypeError")}};var bt=p((e,t,r,o)=>{if(!(0,K.isTypeReference)(e))return ht(e,t,o);let n=(0,S.getReferenceType)(
206
- e,r);if(n)return ht(n,t,o)},"getHttpAccess"),oo=p(e=>(0,gr.isAnyNumber)(e.logRetention),
207
- "isValidAccess"),ht=p((e,t,r)=>{if((0,K.isTypeObject)(e))return Mt(e,t,(0,S.getObjectMembers)(
208
- e),r);if(!(0,S.isModelDeclaration)(e)){r.push(new Ae(t.file));return}if(!Cr(e)){
209
- r.push(new Ee(e.name,e.file));return}return Mt(e,t,(0,S.getModelMembers)(e),r)},
210
- "getTypeAccess"),Mt=p((e,t,r,o)=>{let n={},s=new Set(["logRetention"]);for(let i of r)
211
- if(!(!(0,K.isModelProperty)(i)||i.inherited))switch(i.name){default:o.push(new S.InvalidServicePropertyError(
212
- t.name,i.name,e.file));break;case"logRetention":{let m=(0,S.getPropertyNumber)(i);
213
- (0,gr.isAnyNumber)(m)&&(n[i.name]=m,s.delete(i.name));break}}if(oo(n))return n;o.
214
- push(new xe([...s],e.file))},"getTypeFromMembers");var I=require("@ez4/common/library"),W=require("@ez4/reflection"),hr=require("@ez4/utils");var Y=require("@ez4/common/library");var Pe=class extends Y.IncompleteTypeError{static{p(this,"IncompleteCacheError")}constructor(t,r){
215
- super("Incomplete gateway cache",t,r)}},Re=class extends Y.InvalidTypeError{static{
216
- p(this,"InvalidCacheTypeError")}constructor(t){super("Invalid gateway cache type",
217
- void 0,"Http.Cache",t)}},ze=class extends Y.IncorrectTypeError{constructor(r,o){
218
- super("Incorrect gateway cache type",r,"Http.Cache",o);this.cacheType=r}static{p(
219
- this,"IncorrectCacheTypeError")}};var It=p((e,t,r,o)=>{if(!(0,W.isTypeReference)(e))return Ht(e,t,o);let n=(0,I.getReferenceType)(
220
- e,r);if(n)return Ht(n,t,o)},"getHttpCache"),no=p(e=>(0,hr.isAnyNumber)(e.authorizerTTL),
221
- "isValidCache"),Ht=p((e,t,r)=>{if((0,W.isTypeObject)(e))return St(e,t,(0,I.getObjectMembers)(
222
- e),r);if(!(0,I.isModelDeclaration)(e)){r.push(new Re(t.file));return}if(!kr(e)){
223
- r.push(new ze(e.name,e.file));return}return St(e,t,(0,I.getModelMembers)(e),r)},
224
- "getTypeCache"),St=p((e,t,r,o)=>{let n={},s=new Set(["authorizerTTL"]);for(let i of r)
225
- if(!(!(0,W.isModelProperty)(i)||i.inherited))switch(i.name){default:o.push(new I.InvalidServicePropertyError(
226
- t.name,i.name,e.file));break;case"authorizerTTL":{let m=(0,I.getPropertyNumber)(
227
- i);(0,hr.isAnyNumber)(m)&&(n[i.name]=m,s.delete(i.name));break}}if(no(n))return n;
228
- o.push(new Pe([...s],e.file))},"getTypeFromMembers");var d=require("@ez4/common/library"),Z=require("@ez4/reflection");var X=require("@ez4/common/library");var we=class extends X.IncompleteTypeError{static{p(this,"IncompleteCorsError")}constructor(t,r){
229
- super("Incomplete HTTP CORS",t,r)}},Oe=class extends X.InvalidTypeError{static{p(
230
- this,"InvalidCorsTypeError")}constructor(t){super("Invalid HTTP CORS type",void 0,
231
- "Http.Cors",t)}},je=class extends X.IncorrectTypeError{constructor(r,o){super("I\
232
- ncorrect HTTP CORS type",r,"Http.Cors",o);this.fallbackType=r}static{p(this,"Inc\
233
- orrectCorsTypeError")}};var At=p((e,t,r,o)=>{if(!(0,Z.isTypeReference)(e))return vt(e,t,o);let n=(0,d.getReferenceType)(
234
- e,r);if(n)return vt(n,t,o)},"getHttpCors"),po=p(e=>!!e.allowOrigins?.length,"isV\
235
- alidCors"),vt=p((e,t,r)=>{if((0,Z.isTypeObject)(e))return xt(e,t,(0,d.getObjectMembers)(
236
- e),r);if(!(0,d.isModelDeclaration)(e)){r.push(new Oe(t.file));return}if(!qr(e)){
237
- r.push(new je(e.name,e.file));return}return xt(e,t,(0,d.getModelMembers)(e),r)},
238
- "getTypeCors"),xt=p((e,t,r,o)=>{let n={},s=new Set(["allowOrigins"]);for(let i of r)
239
- if(!(!(0,Z.isModelProperty)(i)||i.inherited))switch(i.name){default:o.push(new d.InvalidServicePropertyError(
240
- t.name,i.name,e.file));break;case"allowOrigins":case"allowMethods":case"allowHea\
241
- ders":case"exposeHeaders":n[i.name]=(0,d.getPropertyStringList)(i);break;case"al\
242
- lowCredentials":n.allowCredentials=(0,d.getPropertyBoolean)(i);break;case"maxAge":
243
- n.maxAge=(0,d.getPropertyNumber)(i);break}if(po(n))return n;o.push(new we([...s],
244
- e.file))},"getTypeFromMembers");var Mr=p(e=>{let t={},r=[];for(let o in e){let n=e[o];if(!Be(n)||(0,g.isExternalDeclaration)(
245
- n))continue;let s={type:C,context:{}},i=new Set(["routes"]),m=n.file;s.name=n.name,
246
- n.description&&(s.description=n.description);for(let c of(0,g.getModelMembers)(n))
247
- if(!(!(0,Et.isModelProperty)(c)||c.inherited))switch(c.name){default:r.push(new g.InvalidServicePropertyError(
248
- s.name,c.name,m));break;case"routes":(s.routes=yt(n,c,e,r))&&i.delete(c.name);break;case"\
249
- name":s.displayName=(0,g.getPropertyString)(c);break;case"defaults":s.defaults=Ge(
250
- c.value,n,e,r);break;case"cache":s.cache=It(c.value,n,e,r);break;case"access":s.
251
- access=bt(c.value,n,e,r);break;case"cors":s.cors=At(c.value,n,e,r);break;case"va\
252
- riables":s.variables=(0,g.getLinkedVariableList)(c,r);break;case"services":s.services=
253
- (0,g.getLinkedServiceList)(c,e,r);break}if(!io(s)){r.push(new O([...i],m));continue}
254
- if(t[n.name]){r.push(new g.DuplicateServiceError(n.name,m));continue}so(s,r,m),t[n.
255
- name]=s}return{services:t,errors:r}},"getHttpServices"),io=p(e=>!!e.name&&!!e.routes&&
256
- !!e.context,"isValidService"),so=p((e,t,r)=>{for(let o of e.routes){let n=o.handler.
257
- provider;if(n?.services){e.services||(e.services={});for(let s in n.services){let i=e.
258
- services[s],m=n.services[s];if(!i){e.services[s]=m;continue}i!==m&&t.push(new ee(
259
- s,r))}}}},"assignProviderServices");var M=require("@ez4/common/library"),mr=require("@ez4/reflection");var h=require("@ez4/common/library"),L=require("@ez4/reflection"),br=require("@ez4/utils");var _=require("@ez4/common/library");var ke=class extends _.IncompleteTypeError{static{p(this,"IncompleteAuthorizatio\
260
- nError")}constructor(t,r){super("Incomplete gateway authorization",t,r)}},Ce=class extends _.InvalidTypeError{static{
261
- p(this,"InvalidAuthorizationTypeError")}constructor(t){super("Invalid authorizat\
262
- ion",void 0,"Http.Authorization",t)}},qe=class extends _.IncorrectTypeError{constructor(r,o){
263
- super("Incorrect authorization",r,"Http.Authorization",o);this.authorizationType=
264
- r}static{p(this,"IncorrectAuthorizationTypeError")}};var zt=p((e,t,r,o)=>{if(!(0,L.isTypeReference)(e))return Pt(e,t,o);let n=(0,h.getReferenceType)(
265
- e,r);if(n)return Pt(n,t,o)},"getHttpAuthorization"),co=p(e=>(0,br.isAnyString)(e.
266
- value),"isValidAuthorization"),Pt=p((e,t,r)=>{if((0,L.isTypeObject)(e))return Rt(
267
- e,t,(0,h.getObjectMembers)(e),r);if(!(0,h.isModelDeclaration)(e)){r.push(new Ce(
268
- t.file));return}if(!Er(e)){r.push(new qe(e.name,t.file));return}return Rt(e,t,(0,h.getModelMembers)(
269
- e),r)},"getTypeAuthorization"),Rt=p((e,t,r,o)=>{let n=new Set(["value"]),s={type:"\
270
- bearer",header:"authorization"};for(let i of r)if((0,L.isModelProperty)(i))switch(i.
271
- name){default:o.push(new h.InvalidServicePropertyError(t.name,i.name,t.file));break;case"\
272
- type":s.type=(0,h.getPropertyStringIn)(i,["bearer"]);break;case"value":case"head\
273
- er":{let m=(0,h.getPropertyString)(i);(0,br.isAnyString)(m)&&(s[i.name]=m,n.delete(
274
- i.name));break}}if(co(s))return s;o.push(new ke([...n],e.file))},"getTypeFromMem\
275
- bers");var Hr=p(e=>{let t={},r=[];for(let o in e){let n=e[o];if(!Ue(n)||(0,M.isExternalDeclaration)(
276
- n))continue;let s={type:k},i=new Set(["reference","project","routes"]),m=n.file;
277
- s.name=n.name,n.description&&(s.description=n.description);for(let c of(0,M.getModelMembers)(
278
- n,!0))if((0,mr.isModelProperty)(c))switch(c.name){default:c.inherited||r.push(new M.InvalidServicePropertyError(
279
- s.name,c.name,m));break;case"reference":c.inherited&&(0,mr.isTypeReference)(c.value)&&
280
- (s[c.name]=(0,M.getReferenceName)(c.value),i.delete(c.name));break;case"authoriz\
281
- ation":c.inherited||(s[c.name]=zt(c.value,n,e,r));break;case"project":!c.inherited&&
282
- (s.project=(0,M.getPropertyString)(c))&&i.delete(c.name);break;case"name":c.inherited&&
283
- (s.displayName=(0,M.getPropertyString)(c,e));break;case"routes":c.inherited&&(s.
284
- routes=Tt(n,c,e,r))&&i.delete(c.name);break;case"defaults":c.inherited&&(s.defaults=
285
- Ge(c.value,n,e,r));break}if(!mo(s)){r.push(new O([...i],m));continue}if(t[n.name]){
286
- r.push(new M.DuplicateServiceError(n.name,m));continue}t[n.name]=s}return{services:t,
287
- errors:r}},"getHttpImports"),mo=p(e=>!!e.name&&!!e.reference&&!!e.project&&!!e.routes,
288
- "isValidImport");var wt=p(e=>Be(e)?e.name:null,"getLinkedService"),Ot=p(e=>Ue(e)?e.name:null,"get\
289
- LinkedImport");var ao=p(()=>{(0,jt.registerTriggers)(),(0,kt.registerTriggers)(),(0,Sr.tryCreateTrigger)(
290
- C,{"metadata:getServices":Mr,"metadata:getLinkedService":wt}),(0,Sr.tryCreateTrigger)(
291
- k,{"metadata:getServices":Hr,"metadata:getLinkedService":Ot})},"registerTriggers");var uo=p(e=>{let{authorization:t}=e;if(t)switch(t.type){default:throw new Error(
1
+ "use strict";var gr=Object.defineProperty;var Zo=Object.getOwnPropertyDescriptor;var Lo=Object.getOwnPropertyNames;var en=Object.prototype.hasOwnProperty;var i=(e,t)=>gr(e,"name",{value:t,configurable:!0});var rn=(e,t)=>{for(var r in t)gr(e,r,{get:t[r],enumerable:!0})},tn=(e,t,r,o)=>{if(t&&
2
+ typeof t=="object"||typeof t=="function")for(let n of Lo(t))!en.call(e,n)&&n!==r&&
3
+ gr(e,n,{get:()=>t[n],enumerable:!(o=Zo(t,n))||o.enumerable});return e};var on=e=>tn(gr({},"__esModule",{value:!0}),e);var ui={};rn(ui,{HttpImportType:()=>ce,HttpNamespaceType:()=>l,HttpServiceType:()=>ae,
4
+ IncompleteAccessError:()=>sr,IncompleteAuthorizationError:()=>qe,IncompleteAuthorizerHandlerError:()=>Je,
5
+ IncompleteCacheError:()=>cr,IncompleteCorsError:()=>ur,IncompleteHandlerError:()=>ne,
6
+ IncompleteProviderError:()=>or,IncompleteRouteError:()=>Ve,IncompleteServiceError:()=>_,
7
+ IncompleteTargetError:()=>ie,IncorrectAccessTypeError:()=>ar,IncorrectAuthorizationTypeError:()=>_e,
8
+ IncorrectBodyTypeError:()=>ir,IncorrectCacheTypeError:()=>lr,IncorrectCorsTypeError:()=>fr,
9
+ IncorrectDefaultsTypeError:()=>te,IncorrectEventTypeError:()=>Tr,IncorrectHeadersTypeError:()=>Le,
10
+ IncorrectIdentityTypeError:()=>Xe,IncorrectParameterTypeError:()=>$e,IncorrectPreferencesTypeError:()=>Ye,
11
+ IncorrectQueryTypeError:()=>rr,IncorrectRequestTypeError:()=>J,IncorrectResponseTypeError:()=>Q,
12
+ InvalidAccessTypeError:()=>pr,InvalidAuthorizationTypeError:()=>Be,InvalidBodyTypeError:()=>nr,
13
+ InvalidCacheTypeError:()=>mr,InvalidCorsTypeError:()=>dr,InvalidDefaultsTypeError:()=>re,
14
+ InvalidEventTypeError:()=>yr,InvalidHeadersTypeError:()=>Ze,InvalidIdentityTypeError:()=>Ke,
15
+ InvalidParameterTypeError:()=>Qe,InvalidPreferencesTypeError:()=>Ue,InvalidProviderTypeError:()=>tr,
16
+ InvalidQueryTypeError:()=>er,InvalidRequestTypeError:()=>G,InvalidResponseTypeError:()=>V,
17
+ InvalidRouteErrorTypeError:()=>fe,MismatchParametersTypeError:()=>Ge,ServiceCollisionError:()=>Fe,
18
+ WsNamespaceType:()=>f,WsServiceType:()=>pe,getClientAuthorization:()=>ci,getClientOperations:()=>mi,
19
+ getHttpImportsMetadata:()=>dt,getHttpServicesMetadata:()=>Tt,getWsServicesMetadata:()=>Et,
20
+ isHttpImport:()=>Gr,isHttpImportDeclaration:()=>qr,isHttpService:()=>sn,isHttpServiceDeclaration:()=>Ur,
21
+ isWsService:()=>nn,isWsServiceDeclaration:()=>Qr,registerTriggers:()=>ai});module.
22
+ exports=on(ui);var Jo=require("@ez4/common/library"),Ko=require("@ez4/schema/library"),$r=require("@ez4/project/library");var pe="@ez4/ws",f="Ws",nn=i(e=>e.type===pe,"isWsService");var h=require("@ez4/common/library"),Fr=require("@ez4/reflection"),co=require("@ez4/utils");var br=require("@ez4/common/library");var _=class extends br.IncompleteTypeError{static{i(this,"IncompleteServiceError")}constructor(t,r){
23
+ super("Incomplete service",t,r)}},Fe=class extends br.TypeCollisionError{static{
24
+ i(this,"ServiceCollisionError")}constructor(t,r){super("Service error",t,r)}};var m=i((e,t)=>`${e}.${t}`,"getFullTypeName");var ae="@ez4/http",ce="@ez4/import:http",l="Http",sn=i(e=>e.type===ae,"isHttpSer\
25
+ vice"),Gr=i(e=>e.type===ce,"isHttpImport");var S=require("@ez4/common/library"),le=require("@ez4/reflection"),Mr=require("@ez4/utils");var me=require("@ez4/common/library");var qe=class extends me.IncompleteTypeError{static{i(this,"IncompleteAuthorizati\
26
+ onError")}constructor(t,r){super("Incomplete authorization",t,r)}},Be=class extends me.InvalidTypeError{constructor(r,o){
27
+ super("Invalid authorization",void 0,r,o);this.baseType=r}static{i(this,"Invalid\
28
+ AuthorizationTypeError")}},_e=class extends me.IncorrectTypeError{constructor(r,o,n){
29
+ super("Incorrect authorization",r,o,n);this.authorizationType=r;this.baseType=o}static{
30
+ i(this,"IncorrectAuthorizationTypeError")}};var Jr=m(l,"Authorization"),pn=i(e=>(0,S.hasHeritageType)(e,Jr),"isHttpAuthoriza\
31
+ tionDeclaration"),At=i((e,t,r,o)=>{if(!(0,le.isTypeReference)(e))return It(e,t,o);
32
+ let n=(0,S.getReferenceType)(e,r);if(n)return It(n,t,o)},"getHttpAuthorizationMe\
33
+ tadata"),an=i(e=>(0,Mr.isObjectWith)(e,["value"]),"isCompleteAuthorization"),It=i(
34
+ (e,t,r)=>{if((0,le.isTypeObject)(e))return xt(e,t,(0,S.getObjectMembers)(e),r);if(!(0,S.isModelDeclaration)(
35
+ e)){r.push(new Be(Jr,t.file));return}if(!pn(e)){r.push(new _e(e.name,Jr,t.file));
36
+ return}return xt(e,t,(0,S.getModelMembers)(e),r)},"getTypeAuthorization"),xt=i((e,t,r,o)=>{
37
+ let n=new Set(["value"]),s={type:"bearer",header:"authorization"};for(let p of r)
38
+ if((0,le.isModelProperty)(p))switch(p.name){default:o.push(new S.InvalidServicePropertyError(
39
+ t.name,p.name,t.file));break;case"type":s.type=(0,S.getPropertyStringIn)(p,["bea\
40
+ rer"]);break;case"value":case"header":{let a=(0,S.getPropertyString)(p);(0,Mr.isAnyString)(
41
+ a)&&(s[p.name]=a,n.delete(p.name));break}}if(an(s))return s;o.push(new qe([...n],
42
+ e.file))},"getTypeFromMembers");var v=require("@ez4/common/library"),ye=require("@ez4/reflection");var hr=require("@ez4/common/library");var re=class extends hr.InvalidTypeError{constructor(r,o){super("Invalid default\
43
+ s",void 0,r,o);this.baseType=r}static{i(this,"InvalidDefaultsTypeError")}},te=class extends hr.IncorrectTypeError{constructor(r,o,n){
44
+ super("Incorrect defaults",r,o,n);this.defaultsType=r;this.baseType=o}static{i(this,
45
+ "IncorrectDefaultsTypeError")}};var A=require("@ez4/common/library"),de=require("@ez4/reflection"),ue=require("@ez4/schema");var Sr=require("@ez4/common/library");var Ue=class extends Sr.InvalidTypeError{constructor(r,o){super("Invalid prefere\
46
+ nces",void 0,r,o);this.baseType=r}static{i(this,"InvalidPreferencesTypeError")}},
47
+ Ye=class extends Sr.IncorrectTypeError{constructor(r,o,n){super("Incorrect prefe\
48
+ rences",r,o,n);this.preferencesType=r;this.baseType=o}static{i(this,"IncorrectPr\
49
+ eferencesTypeError")}};var Kr="Preferences",cn=i((e,t)=>(0,A.hasHeritageType)(e,m(t,Kr)),"isWebPreferen\
50
+ cesDeclaration"),D=i((e,t,r,o,n)=>{if(!(0,de.isTypeReference)(e))return Pt(e,t,o,
51
+ n);let s=(0,A.getReferenceType)(e,r);if(s)return Pt(s,t,o,n)},"getWebPreferences\
52
+ Metadata"),Pt=i((e,t,r,o)=>{if((0,de.isTypeObject)(e))return Rt(t,(0,A.getObjectMembers)(
53
+ e),r);if(!(0,A.isModelDeclaration)(e)){r.push(new Ue(m(o,Kr),t.file));return}if(!cn(
54
+ e,o)){r.push(new Ye(e.name,m(o,Kr),t.file));return}return Rt(t,(0,A.getModelMembers)(
55
+ e),r)},"getPreferencesType"),Rt=i((e,t,r)=>{let o={};for(let n of t)if((0,de.isModelProperty)(
56
+ n))switch(n.name){default:r.push(new A.InvalidServicePropertyError(e.name,n.name,
57
+ e.file));break;case"namingStyle":o.namingStyle=(0,A.getPropertyStringIn)(n,[ue.NamingStyle.
58
+ Preserve,ue.NamingStyle.CamelCase,ue.NamingStyle.PascalCase,ue.NamingStyle.SnakeCase,
59
+ ue.NamingStyle.KebabCase]);break}return o},"getTypeFromMembers");var U=require("@ez4/common/library"),Y=require("@ez4/reflection"),Er=require("@ez4/utils");var vr=require("@ez4/common/library");var Ve=class extends vr.IncompleteTypeError{static{i(this,"IncompleteRouteError")}constructor(t,r){
60
+ super("Incomplete route",t,r)}},fe=class extends vr.TypeError{static{i(this,"Inv\
61
+ alidRouteErrorTypeError")}constructor(t){super("Invalid route error type.",t)}};var Hr=i((e,t,r,o)=>{if(!(0,Y.isTypeReference)(e))return Ot(e,t,r,o);let n=(0,U.getReferenceType)(
62
+ e,r);if(n)return Ot(n,t,r,o)},"getHttpErrorsMetadata"),Ot=i((e,t,r,o)=>{if((0,Y.isTypeObject)(
63
+ e))return mn(e,t,(0,U.getObjectMembers)(e),r,o)},"getErrorsType"),mn=i((e,t,r,o,n)=>{
64
+ let s={};for(let p of r){if(!(0,Y.isModelProperty)(p)||p.inherited)continue;let a=parseInt(
65
+ p.name,10);(0,Er.isAnyNumber)(a)||n.push(new U.InvalidServicePropertyError(t.name,
66
+ p.name,e.file));let c=ln(p,a,t,o,n);c&&Object.assign(s,c)}if(!(0,Er.isEmptyObject)(
67
+ s))return s},"getTypeFromMembers"),ln=i((e,t,r,o,n)=>{let s=(0,U.getPropertyTuple)(
68
+ e)??[],p={};for(let a of s){if(!(0,Y.isTypeReference)(a)){n.push(new fe(r.file));
69
+ continue}let c=(0,U.getReferenceType)(a,o);if(!c||!(0,Y.isTypeClass)(c)){n.push(
70
+ new fe(r.file));continue}p[c.name]=t}return p},"getErrorClasses");var Xr=m(l,"Defaults"),un=i(e=>(0,v.hasHeritageType)(e,Xr),"isHttpDefaultsDeclar\
71
+ ation"),Ir=i((e,t,r,o)=>{if(!(0,ye.isTypeReference)(e))return Wt(e,t,r,o);let n=(0,v.tryGetReferenceType)(
72
+ e,r);if(n)return Wt(n,t,r,o)},"getHttpDefaultsMetadata"),Wt=i((e,t,r,o)=>{if((0,ye.isTypeObject)(
73
+ e))return jt(t,(0,v.getObjectMembers)(e),r,o);if(!(0,v.isModelDeclaration)(e)){o.
74
+ push(new re(Xr,t.file));return}if(!un(e)){o.push(new te(e.name,Xr,t.file));return}
75
+ return jt(t,(0,v.getModelMembers)(e),r,o)},"getDefaultsType"),jt=i((e,t,r,o)=>{let n={};
76
+ for(let s of t)if(!(!(0,ye.isModelProperty)(s)||s.inherited))switch(s.name){default:
77
+ o.push(new v.InvalidServicePropertyError(e.name,s.name,e.file));break;case"prefe\
78
+ rences":n.preferences=D(s.value,e,r,o,l);break;case"httpErrors":n.httpErrors=Hr(
79
+ s.value,e,r,o);break;case"memory":case"logRetention":case"timeout":n[s.name]=(0,v.getPropertyNumber)(
80
+ s);break;case"listener":n.listener=(0,v.getServiceListener)(s.value,o);break}return n},
81
+ "getTypeFromMembers");var B=require("@ez4/reflection"),io=require("@ez4/utils"),u=require("@ez4/common/library");var Te=require("@ez4/common/library");var Qe=class extends Te.InvalidTypeError{constructor(r,o){super("Invalid path pa\
82
+ rameters",void 0,r,o);this.baseType=r}static{i(this,"InvalidParameterTypeError")}},
83
+ $e=class extends Te.IncorrectTypeError{constructor(r,o,n){super("Incorrect path \
84
+ parameters",r,o,n);this.parametersType=r;this.baseType=o}static{i(this,"Incorrec\
85
+ tParameterTypeError")}},Ge=class extends Te.TypeError{constructor(r,o){var t=(...Ki)=>(super(
86
+ ...Ki),this.parameterNames=r,this);r.length>1?t(`Path parameters ${r} are a mism\
87
+ atch.`,o):t(`Path parameter ${r} is a mismatch.`,o)}static{i(this,"MismatchParam\
88
+ etersTypeError")}};var jr=require("@ez4/reflection"),Vt=require("@ez4/utils");var wt=require("@ez4/common/library");var Je=class extends wt.IncompleteTypeError{static{i(this,"IncompleteAuthorizerH\
89
+ andlerError")}constructor(t,r){super("Incomplete authorizer handler",t,r)}};var O=require("@ez4/common/library"),be=require("@ez4/reflection"),Nt=require("@ez4/utils");var xr=require("@ez4/common/library");var V=class extends xr.InvalidTypeError{constructor(r,o){super("Invalid response",
90
+ void 0,r,o);this.baseType=r}static{i(this,"InvalidResponseTypeError")}},Q=class extends xr.IncorrectTypeError{constructor(r,o,n){
91
+ super("Incorrect response",r,o,n);this.responseType=r;this.baseType=o}static{i(this,
92
+ "IncorrectResponseTypeError")}};var ge=require("@ez4/common/library"),F=require("@ez4/reflection"),zt=require("@ez4/schema/library");var Ar=require("@ez4/common/library");var Ke=class extends Ar.InvalidTypeError{constructor(r,o){super("Invalid identit\
93
+ y",void 0,r,o);this.baseType=r}static{i(this,"InvalidIdentityTypeError")}},Xe=class extends Ar.IncorrectTypeError{constructor(r,o,n){
94
+ super("Incorrect identity",r,o,n);this.identityType=r;this.baseType=o}static{i(this,
95
+ "IncorrectIdentityTypeError")}};var oe=require("@ez4/schema/library");var N=i((e,t)=>{let r=(0,oe.getIntersectionSchema)(e,t);if(r&&(0,oe.isObjectSchema)(
96
+ r))return r},"getSchemaFromIntersection"),I=i((e,t)=>{let r=(0,oe.getObjectSchema)(
97
+ e,t);if(r&&(0,oe.isObjectSchema)(r))return r},"getSchemaFromObject");var Zr="Identity",dn=i((e,t)=>(0,ge.hasHeritageType)(e,m(t,Zr)),"isAuthIdentityD\
98
+ eclaration"),$=i((e,t,r,o,n)=>{if((0,F.isTypeUndefined)(e))return;if(!(0,F.isTypeReference)(
99
+ e))return kt(e,t,r,o,n);let s=(0,ge.getReferenceType)(e,r);if(s)return kt(s,t,r,
100
+ o,n)},"getAuthIdentityMetadata"),kt=i((e,t,r,o,n)=>{if((0,F.isTypeObject)(e))return I(
101
+ e,r);if((0,F.isTypeUnion)(e))return fn(e.elements,t,r,o,n);if((0,F.isTypeIntersection)(
102
+ e))return N(e,r);if(!(0,ge.isModelDeclaration)(e)){o.push(new Ke(m(n,Zr),t.file));
103
+ return}if(!dn(e,n)){o.push(new Xe(e.name,m(n,Zr),t.file));return}let s=I(e,r);return s&&
104
+ (s.definitions={...s.definitions,extensible:!0}),s},"getIdentityType"),fn=i((e,t,r,o,n)=>{
105
+ let s=[];for(let p of e){let a=$(p,t,r,o,n);a&&s.push(a)}return s.length>1?(0,zt.createUnionSchema)(
106
+ {elements:s}):s[0]},"getIdentityFromUnion");var Lr="AuthResponse",yn=i((e,t)=>(0,O.hasHeritageType)(e,m(t,Lr)),"isAuthRespon\
107
+ seDeclaration"),Ft=i((e,t,r,o,n)=>{if(!(0,be.isTypeReference)(e))return Ct(e,t,r,
108
+ o,n);let s=(0,O.getReferenceType)(e,r);if(s)return Ct(s,t,r,o,n)},"getAuthRespon\
109
+ seMetadata"),Tn=i(e=>(0,Nt.isObjectWith)(e,["identity"]),"isCompleteResponse"),Ct=i(
110
+ (e,t,r,o,n)=>{if((0,be.isTypeObject)(e))return Dt(e,t,(0,O.getObjectMembers)(e),
111
+ r,o,n);if(!(0,O.isModelDeclaration)(e)){o.push(new V(m(n,Lr),t.file));return}if(!yn(
112
+ e,n)){o.push(new Q(e.name,m(n,Lr),e.file));return}return Dt(e,t,(0,O.getModelMembers)(
113
+ e),r,o,n)},"getResponseType"),Dt=i((e,t,r,o,n,s)=>{let p={};for(let a of r)if(!(!(0,be.isModelProperty)(
114
+ a)||a.inherited))switch(a.name){default:n.push(new O.InvalidServicePropertyError(
115
+ t.name,a.name,e.file));break;case"identity":{p.identity=$(a.value,e,o,n,s),p.identity&&
116
+ a.description&&(p.identity.description=a.description);break}}if(Tn(p))return p},
117
+ "getTypeFromMembers");var X=require("@ez4/reflection"),W=require("@ez4/common/library");var Pr=require("@ez4/common/library");var G=class extends Pr.InvalidTypeError{constructor(r,o){super("Invalid request",
118
+ void 0,r,o);this.baseType=r}static{i(this,"InvalidRequestTypeError")}},J=class extends Pr.IncorrectTypeError{constructor(r,o,n){
119
+ super("Incorrect request",r,o,n);this.requestType=r;this.baseType=o}static{i(this,
120
+ "IncorrectRequestTypeError")}};var Me=require("@ez4/reflection"),he=require("@ez4/common/library");var et="PathParameters",gn=i((e,t)=>(0,he.hasHeritageType)(e,m(t,et)),"isWebPara\
121
+ metersDeclaration"),Rr=i((e,t,r,o,n)=>{if(!(0,Me.isTypeReference)(e))return qt(e,
122
+ t,r,o,n);let s=(0,he.getReferenceType)(e,r);if(s)return qt(s,t,r,o,n)},"getWebPa\
123
+ rametersMetadata"),qt=i((e,t,r,o,n)=>{if((0,Me.isTypeObject)(e))return I(e,r);if((0,Me.isTypeIntersection)(
124
+ e))return N(e,r);if(!(0,he.isModelDeclaration)(e)){o.push(new Qe(m(n,et),t.file));
125
+ return}if(!gn(e,n)){o.push(new $e(e.name,m(n,et),e.file));return}return I(e,r)},
126
+ "getParametersType");var Se=require("@ez4/reflection"),ve=require("@ez4/common/library");var Or=require("@ez4/common/library");var Ze=class extends Or.InvalidTypeError{constructor(r,o){super("Invalid headers",
127
+ void 0,r,o);this.baseType=r}static{i(this,"InvalidHeadersTypeError")}},Le=class extends Or.IncorrectTypeError{constructor(r,o,n){
128
+ super("Incorrect headers",r,o,n);this.headersType=r;this.baseType=o}static{i(this,
129
+ "IncorrectHeadersTypeError")}};var rt="Headers",bn=i((e,t)=>(0,ve.hasHeritageType)(e,m(t,rt)),"isWebHeadersDecl\
130
+ aration"),K=i((e,t,r,o,n)=>{if(!(0,Se.isTypeReference)(e))return Bt(e,t,r,o,n);let s=(0,ve.getReferenceType)(
131
+ e,r);if(s)return Bt(s,t,r,o,n)},"getWebHeadersMetadata"),Bt=i((e,t,r,o,n)=>{if((0,Se.isTypeObject)(
132
+ e))return I(e,r);if((0,Se.isTypeIntersection)(e))return N(e,r);if(!(0,ve.isModelDeclaration)(
133
+ e)){o.push(new Ze(m(n,rt),t.file));return}if(!bn(e,n)){o.push(new Le(e.name,m(n,
134
+ rt),t.file));return}return I(e,r)},"getHeadersType");var Ee=require("@ez4/common/library"),He=require("@ez4/reflection");var Wr=require("@ez4/common/library");var er=class extends Wr.InvalidTypeError{constructor(r,o){super("Invalid query s\
135
+ trings",void 0,r,o);this.baseType=r}static{i(this,"InvalidQueryTypeError")}},rr=class extends Wr.IncorrectTypeError{constructor(r,o,n){
136
+ super("Incorrect query strings",r,o,n);this.queryType=r;this.baseType=o}static{i(
137
+ this,"IncorrectQueryTypeError")}};var tt="QueryStrings",Mn=i((e,t)=>(0,Ee.hasHeritageType)(e,m(t,tt)),"isWebQueryD\
138
+ eclaration"),Ie=i((e,t,r,o,n)=>{if(!(0,He.isTypeReference)(e))return _t(e,t,r,o,
139
+ n);let s=(0,Ee.getReferenceType)(e,r);if(s)return _t(s,t,r,o,n)},"getWebQueryMet\
140
+ adata"),_t=i((e,t,r,o,n)=>{if((0,He.isTypeObject)(e))return I(e,r);if((0,He.isTypeIntersection)(
141
+ e))return N(e,r);if(!(0,Ee.isModelDeclaration)(e)){o.push(new er(m(n,tt),t.file));
142
+ return}if(!Mn(e,n)){o.push(new rr(e.name,m(n,tt),t.file));return}return I(e,r)},
143
+ "getQueryType");var ot="AuthRequest",hn=i((e,t)=>(0,W.hasHeritageType)(e,m(t,ot)),"isAuthRequest\
144
+ Declaration"),nt=i((e,t,r,o,n)=>{if((0,X.isTypeIntersection)(e)&&e.elements.length>
145
+ 0)return nt(e.elements[0],t,r,o,n);if(!(0,X.isTypeReference)(e))return Ut(e,t,r,
146
+ o,n);let s=(0,W.getReferenceType)(e,r);if(s)return Ut(s,t,r,o,n)},"getAuthReques\
147
+ tMetadata"),Ut=i((e,t,r,o,n)=>{if((0,X.isTypeObject)(e))return Yt(e,t,(0,W.getObjectMembers)(
148
+ e),r,o,n);if(!(0,W.isModelDeclaration)(e)){o.push(new G(m(n,ot),t.file));return}
149
+ if(!hn(e,n)){o.push(new J(e.name,m(n,ot),e.file));return}return Yt(e,t,(0,W.getModelMembers)(
150
+ e),r,o,n)},"getRequestType"),Yt=i((e,t,r,o,n,s)=>{let p={};for(let a of r)if(!(!(0,X.isModelProperty)(
151
+ a)||a.inherited))switch(a.name){default:n.push(new W.InvalidServicePropertyError(
152
+ t.name,a.name,e.file));break;case"headers":{p.headers=K(a.value,e,o,n,s),p.headers&&
153
+ a.description&&(p.headers.description=a.description);break}case"parameters":{p.parameters=
154
+ Rr(a.value,e,o,n,s),p.parameters&&a.description&&(p.parameters.description=a.description);
155
+ break}case"query":{p.query=Ie(a.value,e,o,n,s),p.query&&a.description&&(p.query.
156
+ description=a.description);break}}return p},"getTypeFromMembers");var Sn=i(e=>(0,jr.isTypeCallback)(e)||(0,jr.isTypeFunction)(e),"isAuthHandlerDec\
157
+ laration"),wr=i((e,t,r,o,n)=>{if(!Sn(e))return;let{description:s,module:p}=e,a={
158
+ ...s&&{description:s},...p&&{module:p}},c=new Set(["name","file","response"]);if((a.
159
+ name=e.name)&&c.delete("name"),(a.file=e.file)&&c.delete("file"),e.parameters){let[
160
+ {value:d}]=e.parameters;a.request=nt(d,t,r,o,n)}if(e.return&&(a.response=Ft(e.return,
161
+ t,r,o,n))&&c.delete("response"),vn(a))return a;o.push(new Je([...c],e.file))},"g\
162
+ etAuthHandlerMetadata"),vn=i(e=>(0,Vt.isObjectWith)(e,["name","file","response"]),
163
+ "isCompleteHandler");var En=new Set(["ANY","GET","POST","PUT","PATCH","DELETE","OPTIONS"]),Qt=i(e=>{let[
164
+ t]=e.split(" ",2);return En.has(t)},"isHttpPath");var Nr=require("@ez4/reflection"),ro=require("@ez4/utils");var $t=require("@ez4/common/library");var ne=class extends $t.IncompleteTypeError{static{i(this,"IncompleteHandlerErro\
165
+ r")}constructor(t,r){super("Incomplete handler",t,r)}};var C=require("@ez4/common/library"),zr=require("@ez4/reflection");var kr=require("@ez4/common/library");var tr=class extends kr.InvalidTypeError{constructor(r,o){super("Invalid provide\
166
+ r",void 0,r,o);this.baseType=r}static{i(this,"InvalidProviderTypeError")}},or=class extends kr.IncompleteTypeError{static{
167
+ i(this,"IncompleteProviderError")}constructor(t,r){super("Incomplete provider",t,
168
+ r)}};var Hn=m(l,"Provider");var Jt=i((e,t,r,o)=>{if(!(0,zr.isTypeReference)(e))return Gt(e,t,r,o);let n=(0,C.getReferenceType)(
169
+ e,r);if(n)return Gt(n,t,r,o)},"getHttpProviderMetadata"),In=i(e=>!!e.services,"i\
170
+ sCompleteProvider"),Gt=i((e,t,r,o)=>{if(!(0,C.isModelDeclaration)(e)){o.push(new tr(
171
+ Hn,t.file));return}return xn(e,(0,C.getModelMembers)(e),r,o)},"getProviderType"),
172
+ xn=i((e,t,r,o)=>{let n={},s=new Set(["services"]);for(let p of t)if(!(!(0,zr.isModelProperty)(
173
+ p)||p.inherited))switch(p.name){case"variables":n.variables=(0,C.getLinkedVariableList)(
174
+ p,o);break;case"services":{(n.services=(0,C.getLinkedServiceList)(p,r,o))&&s.delete(
175
+ p.name);break}}if(In(n))return n;o.push(new or([...s],e.file))},"getTypeFromMemb\
176
+ ers");var E=require("@ez4/common/library"),Pe=require("@ez4/reflection"),Dr=require("@ez4/utils");var xe=require("@ez4/schema/library"),Ae=require("@ez4/common/library"),x=require("@ez4/reflection");var Cr=require("@ez4/common/library");var nr=class extends Cr.InvalidTypeError{constructor(r,o){super("Invalid body",void 0,
177
+ r,o);this.baseType=r}static{i(this,"InvalidBodyTypeError")}},ir=class extends Cr.IncorrectTypeError{constructor(r,o,n){
178
+ super("Incorrect body",r,o,n);this.bodyType=r;this.baseType=o}static{i(this,"Inc\
179
+ orrectBodyTypeError")}};var it="JsonBody",An=i((e,t)=>(0,Ae.hasHeritageType)(e,m(t,it)),"isWebBodyDeclar\
180
+ ation"),q=i((e,t,r,o,n)=>at(e,r,s=>st(s)??pt(s,t,r,o,n)),"getWebBodyMetadata"),at=i(
181
+ (e,t,r)=>{if(!(0,x.isTypeUndefined)(e)){if(!(0,x.isTypeReference)(e))return r(e);
182
+ let o=(0,Ae.getReferenceType)(e,t);if(o)return r(o)}},"getBodyType"),st=i(e=>{if((0,x.isTypeScalar)(
183
+ e))return(0,xe.getScalarSchema)(e)},"getScalarTypeBody"),pt=i((e,t,r,o,n)=>{if((0,x.isTypeObject)(
184
+ e))return I(e,r);if((0,x.isTypeUnion)(e))return Pn(e.elements,r,s=>st(s)??pt(s,t,
185
+ r,o,n));if((0,x.isTypeIntersection)(e))return N(e,r);if((0,x.isTypeArray)(e))return Rn(
186
+ e.element,r,s=>st(s)??pt(s,t,r,o,n));if(!(0,Ae.isModelDeclaration)(e)){o.push(new nr(
187
+ m(n,it),t.file));return}if(!An(e,n)){o.push(new ir(e.name,m(n,it),e.file));return}
188
+ return I(e,r)},"getCompoundTypeBody"),Pn=i((e,t,r)=>{let o={optional:!1,elements:[]};
189
+ for(let n of e){if((0,x.isTypeUndefined)(n)){o.optional=!0;continue}let s=at(n,t,
190
+ r);s&&o.elements.push(s)}if(o.elements.length)return(0,xe.createUnionSchema)(o)},
191
+ "getUnionTypeBody"),Rn=i((e,t,r)=>{let o=at(e,t,r);if(o)return(0,xe.createArraySchema)(
192
+ {element:o})},"getArrayTypeBody");var ct=m(l,"Response"),On=i(e=>(0,E.hasHeritageType)(e,ct),"isHttpResponseDeclar\
193
+ ation"),Zt=i((e,t,r,o)=>{if(!(0,Pe.isTypeReference)(e))return Kt(e,t,r,o);let n=(0,E.getReferenceType)(
194
+ e,r);if(n)return Kt(n,t,r,o)},"getHttpResponseMetadata"),Wn=i(e=>(0,Dr.isObjectWith)(
195
+ e,["status"])&&((0,Dr.isAnyNumber)(e.status)||!!e.status.length),"isCompleteResp\
196
+ onse"),Kt=i((e,t,r,o)=>{if((0,Pe.isTypeObject)(e))return Xt(e,t,(0,E.getObjectMembers)(
197
+ e),r,o);if(!(0,E.isModelDeclaration)(e)){o.push(new V(ct,t.file));return}if(!On(
198
+ e)){o.push(new Q(e.name,ct,e.file));return}return Xt(e,t,(0,E.getModelMembers)(e),
199
+ r,o)},"getResponseType"),Xt=i((e,t,r,o,n)=>{let s={};for(let p of r)if(!(!(0,Pe.isModelProperty)(
200
+ p)||p.inherited))switch(p.name){default:n.push(new E.InvalidServicePropertyError(
201
+ t.name,p.name,e.file));break;case"status":s.status=(0,E.getPropertyNumber)(p)??(0,E.getPropertyNumberList)(
202
+ p);break;case"headers":{s.headers=K(p.value,e,o,n,l),s.headers&&p.description&&(s.
203
+ headers.description=p.description);break}case"body":{s.body=q(p.value,e,o,n,l),s.
204
+ body&&p.description&&(s.body.description=p.description);break}}if(Wn(s))return s},
205
+ "getTypeFromMembers");var Z=require("@ez4/reflection"),j=require("@ez4/common/library");var mt=m(l,"Request"),jn=i(e=>(0,j.hasHeritageType)(e,mt),"isHttpRequestDeclarat\
206
+ ion"),lt=i((e,t,r,o)=>{if((0,Z.isTypeIntersection)(e)&&e.elements.length>0)return lt(
207
+ e.elements[0],t,r,o);if(!(0,Z.isTypeReference)(e))return Lt(e,t,r,o);let n=(0,j.getReferenceType)(
208
+ e,r);if(n)return Lt(n,t,r,o)},"getHttpRequestMetadata"),Lt=i((e,t,r,o)=>{if((0,Z.isTypeObject)(
209
+ e))return eo(e,t,(0,j.getObjectMembers)(e),r,o);if(!(0,j.isModelDeclaration)(e)){
210
+ o.push(new G(mt,t.file));return}if(!jn(e)){o.push(new J(e.name,mt,e.file));return}
211
+ return eo(e,t,(0,j.getModelMembers)(e),r,o)},"getRequestType"),eo=i((e,t,r,o,n)=>{
212
+ let s={};for(let p of r)if(!(!(0,Z.isModelProperty)(p)||p.inherited))switch(p.name){default:
213
+ n.push(new j.InvalidServicePropertyError(t.name,p.name,e.file));break;case"heade\
214
+ rs":{s.headers=K(p.value,e,o,n,l),s.headers&&p.description&&(s.headers.description=
215
+ p.description);break}case"identity":{s.identity=$(p.value,e,o,n,l),s.identity&&p.
216
+ description&&(s.identity.description=p.description);break}case"query":{s.query=Ie(
217
+ p.value,e,o,n,l),s.query&&p.description&&(s.query.description=p.description);break}case"\
218
+ parameters":{s.parameters=Rr(p.value,e,o,n,l),s.parameters&&p.description&&(s.parameters.
219
+ description=p.description);break}case"body":{s.body=q(p.value,e,o,n,l),s.body&&p.
220
+ description&&(s.body.description=p.description);break}}return s},"getTypeFromMem\
221
+ bers");var wn=i(e=>(0,Nr.isTypeCallback)(e)||(0,Nr.isTypeFunction)(e),"isHttpHandlerDec\
222
+ laration"),to=i((e,t,r,o,n)=>{if(!wn(e))return;let{description:s,module:p}=e,a={
223
+ ...s&&{description:s},...p&&{module:p}},c=new Set(["name","file","response"]);if((a.
224
+ name=e.name)&&c.delete("name"),(a.file=e.file)&&c.delete("file"),e.parameters){let[
225
+ {value:d},se]=e.parameters;a.request=lt(d,t,r,o),se&&!n&&(a.provider=Jt(se.value,
226
+ t,r,o))}if(e.return&&(a.response=Zt(e.return,t,r,o))&&c.delete("response"),kn(a))
227
+ return a;o.push(new ne([...c],e.file))},"getHttpHandlerMetadata"),kn=i(e=>(0,ro.isObjectWith)(
228
+ e,["name","file","response"]),"isCompleteHandler");var zn=i(e=>(0,u.isModelDeclaration)(e)&&(0,u.hasHeritageType)(e,m(l,"Route")),"\
229
+ isHttpRouteDeclaration"),so=i((e,t,r,o)=>ao(e,t,r,o,!1),"getHttpLocalRoutes"),po=i(
230
+ (e,t,r,o)=>ao(e,t,r,o,!0),"getHttpRemoteRoutes"),ao=i((e,t,r,o,n)=>{if(!(0,B.isTypeReference)(
231
+ t.value))return ut((0,u.getPropertyTuple)(t)??[],e,r,o,n);let s=(0,u.getReferenceType)(
232
+ t.value,r);if(s&&(0,B.isTypeTuple)(s))return ut(s.elements,e,r,o,n)},"getHttpRou\
233
+ tes"),ut=i((e,t,r,o,n)=>{let s=[];for(let p of e){let a=Cn(p,t,r,o,n);Array.isArray(
234
+ a)?s.push(...a):a&&s.push(a)}return s},"getRouteFromTuple"),Cn=i((e,t,r,o,n)=>{if(!(0,B.isTypeReference)(
235
+ e))return oo(e,t,r,o,n);let s=(0,u.getReferenceType)(e,r);if(s)return oo(s,t,r,o,
236
+ n)},"getTypeFromRoute"),Dn=i(e=>(0,io.isObjectWith)(e,["path","handler"]),"isCom\
237
+ pleteRoute"),oo=i((e,t,r,o,n)=>{if(zn(e))return no(e,t,(0,u.getModelMembers)(e),
238
+ r,o,n);if((0,B.isTypeObject)(e))return no(e,t,(0,u.getObjectMembers)(e),r,o,n);if((0,B.isTypeTuple)(
239
+ e)&&e.spread)return ut(e.elements,t,r,o,n)},"getRouteType"),no=i((e,t,r,o,n,s)=>{
240
+ let p={},a=new Set(["path","handler"]);for(let d of r)if(!(!(0,B.isModelProperty)(
241
+ d)||d.inherited))switch(d.name){default:n.push(new u.InvalidServicePropertyError(
242
+ t.name,d.name,e.file));break;case"name":p.name=(0,u.getPropertyString)(d);break;case"\
243
+ path":{let se=(0,u.getPropertyString)(d);se&&Qt(se)&&(a.delete(d.name),p.path=se);
244
+ break}case"handler":(p.handler=to(d.value,t,o,n,s))&&a.delete(d.name);break;case"\
245
+ authorizer":p.authorizer=wr(d.value,t,o,n,l);break;case"preferences":p.preferences=
246
+ D(d.value,t,o,n,l);break;case"httpErrors":p.httpErrors=Hr(d.value,t,o,n);break;case"\
247
+ memory":case"logRetention":case"timeout":p[d.name]=(0,u.getPropertyNumber)(d);break;case"\
248
+ cors":case"disabled":p[d.name]=(0,u.getPropertyBoolean)(d);break;case"listener":
249
+ p.listener=(0,u.getServiceListener)(d.value,n);break;case"variables":p.variables=
250
+ (0,u.getLinkedVariableList)(d,n);break}if(!Dn(p)){n.push(new Ve([...a],e.file));
251
+ return}let c=Fn(p.path,p.handler.request?.parameters);if(c.length){n.push(new Ge(
252
+ c,t.file));return}return p},"getTypeFromMembers"),Nn=/\{([\w_-]+)\}/g,Fn=i((e,t)=>{
253
+ let r=e.matchAll(Nn),o=[];for(let n of r){let[,s]=n;t?.properties[s]||o.push(s)}
254
+ return o},"getMismatchParameters");var qr=i(e=>(0,h.isClassDeclaration)(e)&&(0,h.hasHeritageType)(e,m(l,"Import")),
255
+ "isHttpImportDeclaration"),dt=i(e=>{let t={},r=[];for(let o in e){let n=e[o];if(!qr(
256
+ n)||(0,h.isExternalDeclaration)(n))continue;let s={type:ce},p=new Set(["referenc\
257
+ e","project","routes"]),a=n.file;s.name=n.name,n.description&&(s.description=n.description);
258
+ for(let c of(0,h.getModelMembers)(n,!0))if((0,Fr.isModelProperty)(c))switch(c.name){default:
259
+ c.inherited||r.push(new h.InvalidServicePropertyError(s.name,c.name,a));break;case"\
260
+ reference":c.inherited&&(0,Fr.isTypeReference)(c.value)&&(s[c.name]=(0,h.getReferenceName)(
261
+ c.value),p.delete(c.name));break;case"authorization":c.inherited||(s[c.name]=At(
262
+ c.value,n,e,r));break;case"project":!c.inherited&&(s.project=(0,h.getPropertyString)(
263
+ c))&&p.delete(c.name);break;case"name":c.inherited&&(s.displayName=(0,h.getPropertyString)(
264
+ c,e));break;case"routes":c.inherited&&(s.routes=po(n,c,e,r))&&p.delete(c.name);break;case"\
265
+ defaults":c.inherited&&(s.defaults=Ir(c.value,n,e,r));break}if(!qn(s)){r.push(new _(
266
+ [...p],a));continue}if(t[n.name]){r.push(new h.DuplicateServiceError(n.name,a));
267
+ continue}t[n.name]=s}return{services:t,errors:r}},"getHttpImportsMetadata"),qn=i(
268
+ e=>(0,co.isObjectWith)(e,["name","reference","project","routes"]),"isCompleteImp\
269
+ ort");var b=require("@ez4/common/library"),So=require("@ez4/reflection"),vo=require("@ez4/utils");var P=require("@ez4/common/library"),Oe=require("@ez4/reflection"),Br=require("@ez4/utils");var Re=require("@ez4/common/library");var sr=class extends Re.IncompleteTypeError{static{i(this,"IncompleteAccessError")}constructor(t,r){
270
+ super("Incomplete access",t,r)}},pr=class extends Re.InvalidTypeError{static{i(this,
271
+ "InvalidAccessTypeError")}constructor(t){super("Invalid access",void 0,"Http.Acc\
272
+ ess",t)}},ar=class extends Re.IncorrectTypeError{constructor(r,o){super("Incorre\
273
+ ct access",r,"Http.Access",o);this.cacheType=r}static{i(this,"IncorrectAccessTyp\
274
+ eError")}};var Bn=i(e=>(0,P.hasHeritageType)(e,m(l,"Access")),"isHttpAccessDeclaration"),uo=i(
275
+ (e,t,r,o)=>{if(!(0,Oe.isTypeReference)(e))return mo(e,t,o);let n=(0,P.getReferenceType)(
276
+ e,r);if(n)return mo(n,t,o)},"getHttpAccessMetadata"),_n=i(e=>(0,Br.isObjectWith)(
277
+ e,["logRetention"]),"isCompleteAccess"),mo=i((e,t,r)=>{if((0,Oe.isTypeObject)(e))
278
+ return lo(e,t,(0,P.getObjectMembers)(e),r);if(!(0,P.isModelDeclaration)(e)){r.push(
279
+ new pr(t.file));return}if(!Bn(e)){r.push(new ar(e.name,e.file));return}return lo(
280
+ e,t,(0,P.getModelMembers)(e),r)},"getAccessType"),lo=i((e,t,r,o)=>{let n={},s=new Set(
281
+ ["logRetention"]);for(let p of r)if(!(!(0,Oe.isModelProperty)(p)||p.inherited))switch(p.
282
+ name){default:o.push(new P.InvalidServicePropertyError(t.name,p.name,e.file));break;case"\
283
+ logRetention":{let a=(0,P.getPropertyNumber)(p);(0,Br.isAnyNumber)(a)&&(n[p.name]=
284
+ a,s.delete(p.name));break}}if(_n(n))return n;o.push(new sr([...s],e.file))},"get\
285
+ TypeFromMembers");var R=require("@ez4/common/library"),je=require("@ez4/reflection"),_r=require("@ez4/utils");var We=require("@ez4/common/library");var cr=class extends We.IncompleteTypeError{static{i(this,"IncompleteCacheError")}constructor(t,r){
286
+ super("Incomplete cache",t,r)}},mr=class extends We.InvalidTypeError{constructor(r,o){
287
+ super("Invalid cache",void 0,r,o);this.baseType=r}static{i(this,"InvalidCacheTyp\
288
+ eError")}},lr=class extends We.IncorrectTypeError{constructor(r,o,n){super("Inco\
289
+ rrect cache",r,o,n);this.cacheType=r;this.baseType=o}static{i(this,"IncorrectCac\
290
+ heTypeError")}};var ft=m(l,"Cache"),Un=i(e=>(0,R.hasHeritageType)(e,ft),"isHttpCacheDeclaration"),
291
+ To=i((e,t,r,o)=>{if(!(0,je.isTypeReference)(e))return fo(e,t,o);let n=(0,R.getReferenceType)(
292
+ e,r);if(n)return fo(n,t,o)},"getHttpCacheMetadata"),Yn=i(e=>(0,_r.isObjectWith)(
293
+ e,["authorizerTTL"]),"isCompleteCache"),fo=i((e,t,r)=>{if((0,je.isTypeObject)(e))
294
+ return yo(e,t,(0,R.getObjectMembers)(e),r);if(!(0,R.isModelDeclaration)(e)){r.push(
295
+ new mr(ft,t.file));return}if(!Un(e)){r.push(new lr(e.name,ft,e.file));return}return yo(
296
+ e,t,(0,R.getModelMembers)(e),r)},"getCacheType"),yo=i((e,t,r,o)=>{let n={},s=new Set(
297
+ ["authorizerTTL"]);for(let p of r)if(!(!(0,je.isModelProperty)(p)||p.inherited))
298
+ switch(p.name){default:o.push(new R.InvalidServicePropertyError(t.name,p.name,e.
299
+ file));break;case"authorizerTTL":{let a=(0,R.getPropertyNumber)(p);(0,_r.isAnyNumber)(
300
+ a)&&(n[p.name]=a,s.delete(p.name));break}}if(Yn(n))return n;o.push(new cr([...s],
301
+ e.file))},"getTypeFromMembers");var g=require("@ez4/common/library"),ke=require("@ez4/reflection"),Mo=require("@ez4/utils");var we=require("@ez4/common/library");var ur=class extends we.IncompleteTypeError{static{i(this,"IncompleteCorsError")}constructor(t,r){
302
+ super("Incomplete CORS",t,r)}},dr=class extends we.InvalidTypeError{constructor(r,o){
303
+ super("Invalid CORS",void 0,r,o);this.baseType=r}static{i(this,"InvalidCorsTypeE\
304
+ rror")}},fr=class extends we.IncorrectTypeError{constructor(r,o,n){super("Incorr\
305
+ ect CORS",r,o,n);this.corsType=r;this.baseType=o}static{i(this,"IncorrectCorsTyp\
306
+ eError")}};var yt=m(l,"Cors"),Vn=i(e=>(0,g.hasHeritageType)(e,yt),"isHttpCorsDeclaration"),
307
+ ho=i((e,t,r,o)=>{if(!(0,ke.isTypeReference)(e))return go(e,t,o);let n=(0,g.getReferenceType)(
308
+ e,r);if(n)return go(n,t,o)},"getHttpCorsMetadata"),Qn=i(e=>(0,Mo.isObjectWith)(e,
309
+ ["allowOrigins"])&&!!e.allowOrigins.length,"isCompleteCors"),go=i((e,t,r)=>{if((0,ke.isTypeObject)(
310
+ e))return bo(e,t,(0,g.getObjectMembers)(e),r);if(!(0,g.isModelDeclaration)(e)){r.
311
+ push(new dr(yt,t.file));return}if(!Vn(e)){r.push(new fr(e.name,yt,e.file));return}
312
+ return bo(e,t,(0,g.getModelMembers)(e),r)},"getCorsType"),bo=i((e,t,r,o)=>{let n={},
313
+ s=new Set(["allowOrigins"]);for(let p of r)if(!(!(0,ke.isModelProperty)(p)||p.inherited))
314
+ switch(p.name){default:o.push(new g.InvalidServicePropertyError(t.name,p.name,e.
315
+ file));break;case"allowOrigins":case"allowMethods":case"allowHeaders":case"expos\
316
+ eHeaders":n[p.name]=(0,g.getPropertyStringList)(p);break;case"allowCredentials":
317
+ n.allowCredentials=(0,g.getPropertyBoolean)(p);break;case"maxAge":n.maxAge=(0,g.getPropertyNumber)(
318
+ p);break}if(Qn(n))return n;o.push(new ur([...s],e.file))},"getTypeFromMembers");var Ur=i(e=>(0,b.isClassDeclaration)(e)&&(0,b.hasHeritageType)(e,m(l,"Service")),
319
+ "isHttpServiceDeclaration"),Tt=i(e=>{let t={},r=[];for(let o in e){let n=e[o];if(!Ur(
320
+ n)||(0,b.isExternalDeclaration)(n))continue;let s={type:ae,context:{}},p=new Set(
321
+ ["routes"]),a=n.file;s.name=n.name,n.description&&(s.description=n.description);
322
+ for(let c of(0,b.getModelMembers)(n))if(!(!(0,So.isModelProperty)(c)||c.inherited))
323
+ switch(c.name){default:r.push(new b.InvalidServicePropertyError(s.name,c.name,a));
324
+ break;case"routes":(s.routes=so(n,c,e,r))&&p.delete(c.name);break;case"name":s.displayName=
325
+ (0,b.getPropertyString)(c);break;case"defaults":s.defaults=Ir(c.value,n,e,r);break;case"\
326
+ cache":s.cache=To(c.value,n,e,r);break;case"access":s.access=uo(c.value,n,e,r);break;case"\
327
+ cors":s.cors=ho(c.value,n,e,r);break;case"variables":s.variables=(0,b.getLinkedVariableList)(
328
+ c,r);break;case"services":s.services=(0,b.getLinkedServiceList)(c,e,r);break}if(!$n(
329
+ s)){r.push(new _([...p],a));continue}if(t[n.name]){r.push(new b.DuplicateServiceError(
330
+ n.name,a));continue}Gn(s,r,a),t[n.name]=s}return{services:t,errors:r}},"getHttpS\
331
+ ervicesMetadata"),$n=i(e=>(0,vo.isObjectWith)(e,["name","routes","context"]),"is\
332
+ CompleteService"),Gn=i((e,t,r)=>{for(let o of e.routes){let n=o.handler.provider;
333
+ if(n?.services){e.services||(e.services={});for(let s in n.services){let p=e.services[s],
334
+ a=n.services[s];if(!p){e.services[s]=a;continue}p!==a&&t.push(new Fe(s,r))}}}},"\
335
+ assignProviderServices");var T=require("@ez4/common/library"),Qo=require("@ez4/reflection"),$o=require("@ez4/utils");var Ce=require("@ez4/reflection"),Do=require("@ez4/utils"),y=require("@ez4/common/library");var Eo=require("@ez4/common/library");var ie=class extends Eo.IncompleteTypeError{static{i(this,"IncompleteTargetError")}constructor(t,r){
336
+ super("Incomplete target",t,r)}};var Vr=require("@ez4/reflection"),Wo=require("@ez4/utils");var w=require("@ez4/common/library"),ze=require("@ez4/reflection");var gt=m("Ws","Response"),Jn=i(e=>(0,w.hasHeritageType)(e,gt),"isWsResponseDecla\
337
+ ration"),xo=i((e,t,r,o)=>{if(!(0,ze.isTypeReference)(e))return Ho(e,t,r,o);let n=(0,w.getReferenceType)(
338
+ e,r);if(n)return Ho(n,t,r,o)},"getWsResponseMetadata"),Ho=i((e,t,r,o)=>{if((0,ze.isTypeObject)(
339
+ e))return Io(e,t,(0,w.getObjectMembers)(e),r,o);if(!(0,w.isModelDeclaration)(e)){
340
+ o.push(new V(gt,t.file));return}if(!Jn(e)){o.push(new Q(e.name,gt,e.file));return}
341
+ return Io(e,t,(0,w.getModelMembers)(e),r,o)},"getResponseType"),Io=i((e,t,r,o,n)=>{
342
+ let s={};for(let p of r)if(!(!(0,ze.isModelProperty)(p)||p.inherited))switch(p.name){default:
343
+ n.push(new w.InvalidServicePropertyError(t.name,p.name,e.file));break;case"body":{
344
+ s.body=q(p.value,e,o,n,"Ws"),s.body&&p.description&&(s.body.description=p.description);
345
+ break}}return s},"getTypeFromMembers");var L=require("@ez4/reflection"),k=require("@ez4/common/library");var bt=m("Ws","Request"),Kn=i(e=>(0,k.hasHeritageType)(e,bt),"isWsRequestDeclara\
346
+ tion"),Mt=i((e,t,r,o)=>{if((0,L.isTypeIntersection)(e)&&e.elements.length>0)return Mt(
347
+ e.elements[0],t,r,o);if(!(0,L.isTypeReference)(e))return Ao(e,t,r,o);let n=(0,k.getReferenceType)(
348
+ e,r);if(n)return Ao(n,t,r,o)},"getWsRequestMetadata"),Ao=i((e,t,r,o)=>{if((0,L.isTypeObject)(
349
+ e))return Po(e,t,(0,k.getObjectMembers)(e),r,o);if(!(0,k.isModelDeclaration)(e)){
350
+ o.push(new G(bt,t.file));return}if(!Kn(e)){o.push(new J(e.name,bt,e.file));return}
351
+ return Po(e,t,(0,k.getModelMembers)(e),r,o)},"getRequestType"),Po=i((e,t,r,o,n)=>{
352
+ let s={};for(let p of r)if(!(!(0,L.isModelProperty)(p)||p.inherited))switch(p.name){default:
353
+ n.push(new k.InvalidServicePropertyError(t.name,p.name,e.file));break;case"ident\
354
+ ity":{s.identity=$(p.value,e,o,n,"Ws"),s.identity&&p.description&&(s.identity.description=
355
+ p.description);break}case"body":{s.body=q(p.value,e,o,n,"Ws"),s.body&&p.description&&
356
+ (s.body.description=p.description);break}}return s},"getTypeFromMembers");var ee=require("@ez4/reflection"),z=require("@ez4/common/library");var Yr=require("@ez4/common/library");var yr=class extends Yr.InvalidTypeError{constructor(r,o){super("Invalid event",
357
+ void 0,r,o);this.baseType=r}static{i(this,"InvalidEventTypeError")}},Tr=class extends Yr.IncorrectTypeError{constructor(r,o,n){
358
+ super("Incorrect event",r,o,n);this.eventType=r;this.baseType=o}static{i(this,"I\
359
+ ncorrectEventTypeError")}};var ht=m("Ws","Event"),Xn=i(e=>(0,z.hasHeritageType)(e,ht),"isWsEventDeclaration"),
360
+ St=i((e,t,r,o)=>{if((0,ee.isTypeIntersection)(e)&&e.elements.length>0)return St(
361
+ e.elements[0],t,r,o);if(!(0,ee.isTypeReference)(e))return Ro(e,t,r,o);let n=(0,z.getReferenceType)(
362
+ e,r);if(n)return Ro(n,t,r,o)},"getWsEventMetadata"),Ro=i((e,t,r,o)=>{if((0,ee.isTypeObject)(
363
+ e))return Oo(e,t,(0,z.getObjectMembers)(e),r,o);if(!(0,z.isModelDeclaration)(e)){
364
+ o.push(new yr(ht,t.file));return}if(!Xn(e)){o.push(new Tr(e.name,ht,e.file));return}
365
+ return Oo(e,t,(0,z.getModelMembers)(e),r,o)},"getEventType"),Oo=i((e,t,r,o,n)=>{
366
+ let s={};for(let p of r)if(!(!(0,ee.isModelProperty)(p)||p.inherited))switch(p.name){default:
367
+ n.push(new z.InvalidServicePropertyError(t.name,p.name,e.file));break;case"heade\
368
+ rs":{s.headers=K(p.value,e,o,n,"Ws"),s.headers&&p.description&&(s.headers.description=
369
+ p.description);break}case"identity":{s.identity=$(p.value,e,o,n,"Ws"),s.identity&&
370
+ p.description&&(s.identity.description=p.description);break}case"query":{s.query=
371
+ Ie(p.value,e,o,n,"Ws"),s.query&&p.description&&(s.query.description=p.description);
372
+ break}}return s},"getTypeFromMembers");var Zn=i(e=>(0,Vr.isTypeCallback)(e)||(0,Vr.isTypeFunction)(e),"isWsHandlerDecla\
373
+ ration"),jo=i((e,t,r,o)=>ko(e,t,r,o,n=>St(n,t,r,o)),"getWsConnectionHandler"),wo=i(
374
+ (e,t,r,o)=>ko(e,t,r,o,n=>Mt(n,t,r,o)),"getWsMessageHandler"),Ln=i(e=>(0,Wo.isObjectWith)(
375
+ e,["name","file"]),"isCompleteWsHandler"),ko=i((e,t,r,o,n)=>{if(!Zn(e))return;let{
376
+ description:s,module:p}=e,a={...s&&{description:s},...p&&{module:p}},c=new Set([
377
+ "name","file"]);if((a.name=e.name)&&c.delete("name"),(a.file=e.file)&&c.delete("\
378
+ file"),e.parameters){let[{value:d}]=e.parameters;(a.request=n(d))||c.add("reques\
379
+ t")}if(e.return&&!(a.response=xo(e.return,t,r,o))&&c.add("response"),c.size===0&&
380
+ Ln(a))return a;o.push(new ne([...c],e.file))},"getWsHandler");var ei=m("Ws","Connect"),ri=m("Ws","Disconnect"),ti=i(e=>(0,y.isModelDeclaration)(
381
+ e)&&((0,y.hasHeritageType)(e,ei)||(0,y.hasHeritageType)(e,ri)),"isWsConnectionDe\
382
+ claration"),No=i((e,t,r,o)=>{if(!(0,Ce.isTypeReference)(e))return zo(e,t,r,o);let n=(0,y.getReferenceType)(
383
+ e,r);if(n)return zo(n,t,r,o)},"getWsConnectionMetadata"),oi=i(e=>(0,Do.isObjectWith)(
384
+ e,["handler"]),"isCompleteWsConnection"),zo=i((e,t,r,o)=>{if(ti(e))return Co(e,t,
385
+ (0,y.getModelMembers)(e),r,o);if((0,Ce.isTypeObject)(e))return Co(e,t,(0,y.getObjectMembers)(
386
+ e),r,o)},"getConnectionType"),Co=i((e,t,r,o,n)=>{let s={},p=new Set(["handler"]);
387
+ for(let a of r)if(!(!(0,Ce.isModelProperty)(a)||a.inherited))switch(a.name){default:
388
+ n.push(new y.InvalidServicePropertyError(t.name,a.name,e.file));break;case"handl\
389
+ er":(s.handler=jo(a.value,t,o,n))&&p.delete(a.name);break;case"authorizer":s.authorizer=
390
+ wr(a.value,t,o,n,"Ws");break;case"preferences":s.preferences=D(a.value,t,o,n,"Ws");
391
+ break;case"memory":case"logRetention":case"timeout":s[a.name]=(0,y.getPropertyNumber)(
392
+ a);break;case"listener":s.listener=(0,y.getServiceListener)(a.value,n);break;case"\
393
+ variables":s.variables=(0,y.getLinkedVariableList)(a,n);break}if(oi(s))return s;
394
+ n.push(new ie([...p],e.file))},"getTypeFromMembers");var H=require("@ez4/common/library"),De=require("@ez4/reflection");var vt=m("Ws","Defaults"),ni=i(e=>(0,H.hasHeritageType)(e,vt),"isWsDefaultsDecla\
395
+ ration"),Bo=i((e,t,r,o)=>{if(!(0,De.isTypeReference)(e))return Fo(e,t,r,o);let n=(0,H.tryGetReferenceType)(
396
+ e,r);if(n)return Fo(n,t,r,o)},"getWsDefaultsMetadata"),Fo=i((e,t,r,o)=>{if((0,De.isTypeObject)(
397
+ e))return qo(t,(0,H.getObjectMembers)(e),r,o);if(!(0,H.isModelDeclaration)(e)){o.
398
+ push(new re(vt,t.file));return}if(!ni(e)){o.push(new te(e.name,vt,t.file));return}
399
+ return qo(t,(0,H.getModelMembers)(e),r,o)},"getDefaultsType"),qo=i((e,t,r,o)=>{let n={};
400
+ for(let s of t)if(!(!(0,De.isModelProperty)(s)||s.inherited))switch(s.name){default:
401
+ o.push(new H.InvalidServicePropertyError(e.name,s.name,e.file));break;case"prefe\
402
+ rences":n.preferences=D(s.value,e,r,o,"Ws");break;case"memory":case"logRetention":case"\
403
+ timeout":n[s.name]=(0,H.getPropertyNumber)(s);break;case"listener":n.listener=(0,H.getServiceListener)(
404
+ s.value,o);break}return n},"getTypeFromMembers");var Ne=require("@ez4/reflection"),Yo=require("@ez4/utils"),M=require("@ez4/common/library");var ii=i(e=>(0,M.isModelDeclaration)(e)&&(0,M.hasHeritageType)(e,m("Ws","Message")),
405
+ "isWsMessageDeclaration"),Vo=i((e,t,r,o)=>{if(!(0,Ne.isTypeReference)(e))return _o(
406
+ e,t,r,o);let n=(0,M.getReferenceType)(e,r);if(n)return _o(n,t,r,o)},"getWsMessag\
407
+ eMetadata"),si=i(e=>(0,Yo.isObjectWith)(e,["handler"]),"isCompleteWsMessage"),_o=i(
408
+ (e,t,r,o)=>{if(ii(e))return Uo(e,t,(0,M.getModelMembers)(e),r,o);if((0,Ne.isTypeObject)(
409
+ e))return Uo(e,t,(0,M.getObjectMembers)(e),r,o)},"getMessageType"),Uo=i((e,t,r,o,n)=>{
410
+ let s={},p=new Set(["handler"]);for(let a of r)if(!(!(0,Ne.isModelProperty)(a)||
411
+ a.inherited))switch(a.name){default:n.push(new M.InvalidServicePropertyError(t.name,
412
+ a.name,e.file));break;case"handler":(s.handler=wo(a.value,t,o,n))&&p.delete(a.name);
413
+ break;case"preferences":s.preferences=D(a.value,t,o,n,"Ws");break;case"memory":case"\
414
+ logRetention":case"timeout":s[a.name]=(0,M.getPropertyNumber)(a);break;case"list\
415
+ ener":s.listener=(0,M.getServiceListener)(a.value,n);break;case"variables":s.variables=
416
+ (0,M.getLinkedVariableList)(a,n);break}if(si(s))return s;n.push(new ie([...p],e.
417
+ file))},"getTypeFromMembers");var Qr=i(e=>(0,T.isClassDeclaration)(e)&&(0,T.hasHeritageType)(e,m("Ws","Service")),
418
+ "isWsServiceDeclaration"),Et=i(e=>{let t={},r=[];for(let o in e){let n=e[o];if(!Qr(
419
+ n)||(0,T.isExternalDeclaration)(n))continue;let s={type:pe,context:{}},p=new Set(
420
+ ["schema","connect","disconnect","message"]),a=n.file;s.name=n.name,n.description&&
421
+ (s.description=n.description);for(let c of(0,T.getModelMembers)(n,!0))if((0,Qo.isModelProperty)(
422
+ c))switch(c.name){default:r.push(new T.InvalidServicePropertyError(s.name,c.name,
423
+ a));break;case"client":break;case"name":c.inherited||(s.displayName=(0,T.getPropertyString)(
424
+ c));break;case"stage":c.inherited||(s.stageName=(0,T.getPropertyString)(c));break;case"\
425
+ defaults":c.inherited||(s.defaults=Bo(c.value,n,e,r));break;case"schema":(s.schema=
426
+ q(c.value,n,e,r,"Ws"))&&p.delete(c.name);break;case"connect":case"disconnect":!c.
427
+ inherited&&(s[c.name]=No(c.value,n,e,r))&&p.delete(c.name);break;case"message":!c.
428
+ inherited&&(s[c.name]=Vo(c.value,n,e,r))&&p.delete(c.name);break;case"variables":
429
+ c.inherited||(s.variables=(0,T.getLinkedVariableList)(c,r));break;case"services":
430
+ c.inherited||(s.services=(0,T.getLinkedServiceList)(c,e,r));break}if(!pi(s)){r.push(
431
+ new _([...p],a));continue}if(t[n.name]){r.push(new T.DuplicateServiceError(n.name,
432
+ a));continue}t[n.name]=s}return{services:t,errors:r}},"getWsServicesMetadata"),pi=i(
433
+ e=>(0,$o.isObjectWith)(e,["name","schema","connect","disconnect","message","cont\
434
+ ext"]),"isCompleteService");var Ht=i(e=>Ur(e)||Qr(e)?e.name:null,"getLinkedService"),Go=i(e=>qr(e)?e.name:null,
435
+ "getLinkedImport");var ai=i(()=>{(0,Jo.registerTriggers)(),(0,Ko.registerTriggers)(),(0,$r.tryCreateTrigger)(
436
+ pe,{"metadata:getServices":Et,"metadata:getLinkedService":Ht}),(0,$r.tryCreateTrigger)(
437
+ ae,{"metadata:getServices":Tt,"metadata:getLinkedService":Ht}),(0,$r.tryCreateTrigger)(
438
+ ce,{"metadata:getServices":dt,"metadata:getLinkedService":Go})},"registerTrigger\
439
+ s");var ci=i(e=>{let{authorization:t}=e;if(t)switch(t.type){default:throw new Error(
292
440
  `Authorization type ${t.type} isn't supported.`);case"bearer":return{header:t.header,
293
- value:`Bearer ${t.value}`}}},"getClientAuthorization");var Ct=require("@ez4/schema");var lo=p(e=>{let t={},r=e.defaults?.preferences?.namingStyle,o=ur(e)?e.authorization?.
294
- header:void 0;for(let n of e.routes){if(!n.name)continue;let[s,i]=n.path.split("\
295
- ",2),{handler:m,preferences:c}=n;t[n.name]={authorize:fo(n,o),namingStyle:c?.namingStyle??
296
- r,bodySchema:m.request?.body,responseSchema:m.response.body,querySchema:m.request?.
297
- query,method:s,path:i}}return t},"getClientOperations"),fo=p((e,t)=>{let r=e.authorizer?.
298
- request?.headers;if(!r||!t)return!1;let o=(0,Ct.getObjectSchemaProperty)(r,t);return!(!o||
299
- o.optional)},"shouldUseAuthorization");var ar=require("@ez4/common/library");var oe=class extends ar.InvalidTypeError{static{p(this,"InvalidDefaultsTypeError")}constructor(t){
300
- super("Invalid defaults",void 0,"Http.Defaults",t)}},ne=class extends ar.IncorrectTypeError{constructor(r,o){
301
- super("Incorrect defaults",r,"Http.Defaults",o);this.defaultsType=r}static{p(this,
302
- "IncorrectDefaultsTypeError")}};0&&(module.exports={ImportType,IncompleteAccessError,IncompleteAuthorizationError,
303
- IncompleteAuthorizerError,IncompleteCacheError,IncompleteCorsError,IncompleteHandlerError,
304
- IncompleteProviderError,IncompleteRouteError,IncompleteServiceError,IncorrectAccessTypeError,
305
- IncorrectAuthorizationTypeError,IncorrectBodyTypeError,IncorrectCacheTypeError,IncorrectCorsTypeError,
306
- IncorrectDefaultsTypeError,IncorrectHeadersTypeError,IncorrectIdentityTypeError,
307
- IncorrectParameterTypeError,IncorrectPreferencesTypeError,IncorrectQueryTypeError,
308
- IncorrectRequestTypeError,IncorrectResponseTypeError,InvalidAccessTypeError,InvalidAuthorizationTypeError,
441
+ value:`Bearer ${t.value}`}}},"getClientAuthorization");var Xo=require("@ez4/schema");var mi=i(e=>{let t={},r=e.defaults?.preferences?.namingStyle,o=Gr(e)?e.authorization?.
442
+ header:void 0;for(let n of e.routes){if(!n.name)continue;let[s,p]=n.path.split("\
443
+ ",2),{handler:a,preferences:c}=n;t[n.name]={authorize:li(n,o),namingStyle:c?.namingStyle??
444
+ r,bodySchema:a.request?.body,responseSchema:a.response.body,querySchema:a.request?.
445
+ query,method:s,path:p}}return t},"getClientOperations"),li=i((e,t)=>{let r=e.authorizer?.
446
+ request?.headers;if(!r||!t)return!1;let o=(0,Xo.getObjectSchemaProperty)(r,t);return!(!o||
447
+ o.optional)},"shouldUseAuthorization");0&&(module.exports={HttpImportType,HttpNamespaceType,HttpServiceType,IncompleteAccessError,
448
+ IncompleteAuthorizationError,IncompleteAuthorizerHandlerError,IncompleteCacheError,
449
+ IncompleteCorsError,IncompleteHandlerError,IncompleteProviderError,IncompleteRouteError,
450
+ IncompleteServiceError,IncompleteTargetError,IncorrectAccessTypeError,IncorrectAuthorizationTypeError,
451
+ IncorrectBodyTypeError,IncorrectCacheTypeError,IncorrectCorsTypeError,IncorrectDefaultsTypeError,
452
+ IncorrectEventTypeError,IncorrectHeadersTypeError,IncorrectIdentityTypeError,IncorrectParameterTypeError,
453
+ IncorrectPreferencesTypeError,IncorrectQueryTypeError,IncorrectRequestTypeError,
454
+ IncorrectResponseTypeError,InvalidAccessTypeError,InvalidAuthorizationTypeError,
309
455
  InvalidBodyTypeError,InvalidCacheTypeError,InvalidCorsTypeError,InvalidDefaultsTypeError,
310
- InvalidHeadersTypeError,InvalidIdentityTypeError,InvalidParameterTypeError,InvalidPreferencesTypeError,
311
- InvalidProviderTypeError,InvalidQueryTypeError,InvalidRequestTypeError,InvalidResponseTypeError,
312
- InvalidRouteErrorTypeError,ServiceCollisionError,ServiceType,getClientAuthorization,
313
- getClientOperations,getHttpImports,getHttpServices,isHttpImport,isHttpService,registerTriggers});
456
+ InvalidEventTypeError,InvalidHeadersTypeError,InvalidIdentityTypeError,InvalidParameterTypeError,
457
+ InvalidPreferencesTypeError,InvalidProviderTypeError,InvalidQueryTypeError,InvalidRequestTypeError,
458
+ InvalidResponseTypeError,InvalidRouteErrorTypeError,MismatchParametersTypeError,
459
+ ServiceCollisionError,WsNamespaceType,WsServiceType,getClientAuthorization,getClientOperations,
460
+ getHttpImportsMetadata,getHttpServicesMetadata,getWsServicesMetadata,isHttpImport,
461
+ isHttpImportDeclaration,isHttpService,isHttpServiceDeclaration,isWsService,isWsServiceDeclaration,
462
+ registerTriggers});
314
463
  //# sourceMappingURL=library.cjs.map