@ez4/gateway 0.35.1 → 0.37.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 (142) hide show
  1. package/README.md +120 -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/body.d.ts +4 -2
  7. package/dist/errors/defaults.d.ts +4 -2
  8. package/dist/errors/headers.d.ts +4 -2
  9. package/dist/errors/{authorization.d.ts → http/authorization.d.ts} +4 -2
  10. package/dist/errors/{cache.d.ts → http/cache.d.ts} +4 -2
  11. package/dist/errors/{cors.d.ts → http/cors.d.ts} +5 -3
  12. package/dist/errors/parameters.d.ts +9 -3
  13. package/dist/errors/preferences.d.ts +4 -2
  14. package/dist/errors/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 +464 -310
  18. package/dist/library.d.ts +17 -14
  19. package/dist/library.mjs +445 -293
  20. package/dist/main.cjs +15 -14
  21. package/dist/main.d.ts +5 -3
  22. package/dist/main.mjs +8 -6
  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 +20 -0
  28. package/dist/metadata/body.d.ts +4 -3
  29. package/dist/metadata/headers.d.ts +3 -2
  30. package/dist/metadata/http/access.d.ts +4 -0
  31. package/dist/metadata/http/authorization.d.ts +4 -0
  32. package/dist/metadata/http/cache.d.ts +4 -0
  33. package/dist/metadata/http/cors.d.ts +4 -0
  34. package/dist/metadata/http/defaults.d.ts +4 -0
  35. package/dist/metadata/http/errors.d.ts +4 -0
  36. package/dist/metadata/http/handler.d.ts +4 -0
  37. package/dist/metadata/http/import.d.ts +7 -0
  38. package/dist/metadata/http/request.d.ts +4 -0
  39. package/dist/metadata/http/response.d.ts +4 -0
  40. package/dist/metadata/http/routes.d.ts +5 -0
  41. package/dist/metadata/http/service.d.ts +7 -0
  42. package/dist/metadata/http/types.d.ts +117 -0
  43. package/dist/metadata/parameters.d.ts +3 -2
  44. package/dist/metadata/preferences.d.ts +4 -3
  45. package/dist/metadata/provider.d.ts +4 -3
  46. package/dist/metadata/query.d.ts +3 -2
  47. package/dist/metadata/types.d.ts +4 -0
  48. package/dist/metadata/utils/name.d.ts +2 -0
  49. package/dist/metadata/utils/path.d.ts +2 -0
  50. package/dist/metadata/utils/provider.d.ts +4 -0
  51. package/dist/metadata/utils/schema.d.ts +3 -0
  52. package/dist/metadata/utils/validator.d.ts +5 -0
  53. package/dist/metadata/ws/connection.d.ts +4 -0
  54. package/dist/metadata/ws/defaults.d.ts +5 -0
  55. package/dist/metadata/ws/event.d.ts +4 -0
  56. package/dist/metadata/ws/handlers.d.ts +4 -0
  57. package/dist/metadata/ws/message.d.ts +4 -0
  58. package/dist/metadata/ws/request.d.ts +4 -0
  59. package/dist/metadata/ws/response.d.ts +4 -0
  60. package/dist/metadata/ws/service.d.ts +7 -0
  61. package/dist/metadata/ws/types.d.ts +83 -0
  62. package/dist/services/auth/cache.d.ts +9 -0
  63. package/dist/services/auth/handler.d.ts +9 -0
  64. package/dist/services/auth/identity.d.ts +5 -0
  65. package/dist/services/auth/incoming.d.ts +22 -0
  66. package/dist/services/auth/provider.d.ts +11 -0
  67. package/dist/services/auth/request.d.ts +20 -0
  68. package/dist/services/auth/response.d.ts +10 -0
  69. package/dist/services/body.d.ts +13 -0
  70. package/dist/services/defaults.d.ts +7 -16
  71. package/dist/services/errors.d.ts +6 -0
  72. package/dist/services/headers.d.ts +10 -0
  73. package/dist/services/{client.d.ts → http/client.d.ts} +3 -3
  74. package/dist/services/{contract.d.ts → http/contract.d.ts} +45 -31
  75. package/dist/services/http/defaults.d.ts +17 -0
  76. package/dist/services/http/errors.d.ts +6 -0
  77. package/dist/services/http/handler.d.ts +10 -0
  78. package/dist/services/http/incoming.d.ts +30 -0
  79. package/dist/services/http/listener.d.ts +9 -0
  80. package/dist/services/http/path.d.ts +2 -0
  81. package/dist/services/http/request.d.ts +30 -0
  82. package/dist/services/http/response.d.ts +19 -0
  83. package/dist/services/http/route.d.ts +45 -0
  84. package/dist/services/{utils.d.ts → http/utils.d.ts} +13 -5
  85. package/dist/services/parameters.d.ts +5 -0
  86. package/dist/services/preferences.d.ts +2 -2
  87. package/dist/services/query.d.ts +5 -0
  88. package/dist/services/target.d.ts +27 -0
  89. package/dist/services/ws/client.d.ts +19 -0
  90. package/dist/services/ws/connect.d.ts +23 -0
  91. package/dist/services/ws/contract.d.ts +110 -0
  92. package/dist/services/ws/defaults.d.ts +13 -0
  93. package/dist/services/ws/disconnect.d.ts +17 -0
  94. package/dist/services/ws/event.d.ts +20 -0
  95. package/dist/services/ws/handler.d.ts +10 -0
  96. package/dist/services/ws/incoming.d.ts +19 -0
  97. package/dist/services/ws/listener.d.ts +9 -0
  98. package/dist/services/ws/message.d.ts +17 -0
  99. package/dist/services/ws/request.d.ts +15 -0
  100. package/dist/services/ws/response.d.ts +10 -0
  101. package/dist/services/ws/utils.d.ts +11 -0
  102. package/dist/utils/body.d.ts +4 -3
  103. package/dist/utils/client.d.ts +4 -4
  104. package/dist/utils/errors.d.ts +1 -0
  105. package/dist/utils/headers.d.ts +3 -2
  106. package/dist/utils/identity.d.ts +3 -2
  107. package/dist/utils/parameters.d.ts +3 -2
  108. package/dist/utils/query.d.ts +3 -2
  109. package/dist/utils/validation.d.ts +2 -0
  110. package/dist/utils.cjs +62 -55
  111. package/dist/utils.d.ts +2 -1
  112. package/dist/utils.mjs +54 -52
  113. package/package.json +8 -8
  114. package/dist/metadata/access.d.ts +0 -3
  115. package/dist/metadata/authorization.d.ts +0 -3
  116. package/dist/metadata/authorizer.d.ts +0 -3
  117. package/dist/metadata/cache.d.ts +0 -3
  118. package/dist/metadata/cors.d.ts +0 -3
  119. package/dist/metadata/defaults.d.ts +0 -3
  120. package/dist/metadata/errors.d.ts +0 -4
  121. package/dist/metadata/handler.d.ts +0 -3
  122. package/dist/metadata/identity.d.ts +0 -5
  123. package/dist/metadata/import.d.ts +0 -6
  124. package/dist/metadata/request.d.ts +0 -4
  125. package/dist/metadata/response.d.ts +0 -4
  126. package/dist/metadata/route.d.ts +0 -4
  127. package/dist/metadata/schema.d.ts +0 -3
  128. package/dist/metadata/service.d.ts +0 -6
  129. package/dist/metadata/utils.d.ts +0 -24
  130. package/dist/services/cache.d.ts +0 -9
  131. package/dist/services/common.d.ts +0 -147
  132. package/dist/services/route.d.ts +0 -56
  133. package/dist/types/common.d.ts +0 -95
  134. package/dist/types/import.d.ts +0 -14
  135. package/dist/types/service.d.ts +0 -14
  136. /package/dist/errors/{access.d.ts → http/access.d.ts} +0 -0
  137. /package/dist/errors/{provider.d.ts → http/provider.d.ts} +0 -0
  138. /package/dist/errors/{route.d.ts → http/route.d.ts} +0 -0
  139. /package/dist/services/{access.d.ts → http/access.d.ts} +0 -0
  140. /package/dist/services/{authorization.d.ts → http/authorization.d.ts} +0 -0
  141. /package/dist/services/{cors.d.ts → http/cors.d.ts} +0 -0
  142. /package/dist/services/{provider.d.ts → http/provider.d.ts} +0 -0
package/dist/library.mjs CHANGED
@@ -1,295 +1,447 @@
1
- var Fr=Object.defineProperty;var p=(e,t)=>Fr(e,"name",{value:t,configurable:!0});import{registerTriggers as Np}from"@ez4/common/library";import{registerTriggers as Bp}from"@ez4/schema/library";
2
- import{tryCreateTrigger as Dr}from"@ez4/project/library";var y="@ez4/import:http",ye=p(e=>e.type===y,"isHttpImport");var T="@ez4/http",Yp=p(e=>e.type===T,"isHttpService");import{DuplicateServiceError as sp,isExternalDeclaration as cp,getLinkedServiceList as mp,
3
- getLinkedVariableList as ap,getModelMembers as up,getPropertyString as lp,InvalidServicePropertyError as dp}from"@ez4/common/library";
4
- import{isModelProperty as fp}from"@ez4/reflection";import{IncompleteTypeError as Nr,TypeCollisionError as Br}from"@ez4/common/library";var f=class extends Nr{static{p(this,"IncompleteServiceError")}constructor(t,r){
5
- super("Incomplete service",t,r)}},b=class extends Br{static{p(this,"ServiceColli\
6
- sionError")}constructor(t,r){super("Service error",t,r)}};import{InvalidServicePropertyError as at,isModelDeclaration as ut,getPropertyNumber as lt,
7
- getObjectMembers as dt,getModelMembers as ft,getServiceListener as yt,tryGetReferenceType as Tt}from"@ez4/common/library";
8
- import{isModelProperty as gt,isTypeObject as ht,isTypeReference as Mt}from"@ez4/reflection";import{InvalidServicePropertyError as Gr,isModelDeclaration as $r,getObjectMembers as Kr,
9
- getModelMembers as Yr,getReferenceType as Wr,getPropertyStringIn as Xr}from"@ez4/common/library";
10
- import{isModelProperty as Zr,isTypeObject as _r,isTypeReference as Lr}from"@ez4/reflection";
11
- import{NamingStyle as g}from"@ez4/schema";import{IncorrectTypeError as Ur,InvalidTypeError as Vr}from"@ez4/common/library";var H=class extends Vr{static{p(this,"InvalidPreferencesTypeError")}constructor(t){
12
- super("Invalid preferences",void 0,"Http.Preferences",t)}},S=class extends Ur{constructor(r,o){
13
- super("Incorrect preferences",r,"Http.Preferences",o);this.preferencesType=r}static{
14
- p(this,"IncorrectPreferencesTypeError")}};import{hasHeritageType as u,isClassDeclaration as Te,isModelDeclaration as Qr}from"@ez4/common/library";
15
- import{isTypeCallback as ge,isTypeFunction as he}from"@ez4/reflection";var Jr=new Set(["ANY","GET","POST","PUT","PATCH","DELETE","OPTIONS"]),Me=p(e=>{let[
16
- t]=e.split(" ",2);return Jr.has(t)},"isHttpPath"),I=p(e=>Te(e)&&u(e,"Http.Servic\
17
- e"),"isHttpService"),v=p(e=>Te(e)&&u(e,"Http.Import"),"isHttpImport");var be=p(e=>Qr(e)&&u(e,"Http.Route"),"isHttpRoute");var He=p(e=>u(e,"Http.Defaults"),"isHttpDefaults"),Se=p(e=>u(e,"Http.Authorizati\
18
- on"),"isHttpAuthorization"),Ie=p(e=>u(e,"Http.Preferences"),"isHttpPreferences"),
19
- ve=p(e=>u(e,"Http.Headers"),"isHttpHeaders"),xe=p(e=>u(e,"Http.Identity"),"isHtt\
20
- pIdentity"),Ae=p(e=>u(e,"Http.QueryStrings"),"isHttpQuery"),Ee=p(e=>u(e,"Http.Pa\
21
- thParameters"),"isHttpParameters"),Pe=p(e=>u(e,"Http.JsonBody"),"isJsonBody"),Re=p(
22
- e=>u(e,"Http.Cache"),"isHttpCache"),ze=p(e=>u(e,"Http.Access"),"isHttpAccess"),we=p(
23
- e=>u(e,"Http.Cors"),"isHttpCors"),Oe=p(e=>ge(e)||he(e),"isHttpAuthorizer"),je=p(
24
- e=>ge(e)||he(e),"isHttpHandler");var x=p((e,t,r,o)=>{if(!Lr(e))return ke(e,t,o);let n=Wr(e,r);if(n)return ke(n,t,
25
- o)},"getHttpPreferences"),ke=p((e,t,r)=>{if(_r(e))return Ce(t,Kr(e),r);if(!$r(e)){
26
- r.push(new H(t.file));return}if(!Ie(e)){r.push(new S(e.name,t.file));return}return Ce(
27
- t,Yr(e),r)},"getTypePreferences"),Ce=p((e,t,r)=>{let o={};for(let n of t)if(Zr(n))
28
- switch(n.name){default:r.push(new Gr(e.name,n.name,e.file));break;case"namingSty\
29
- le":o.namingStyle=Xr(n,[g.Preserve,g.CamelCase,g.PascalCase,g.SnakeCase,g.KebabCase]);
30
- break}return o},"getTypeFromMembers");import{InvalidServicePropertyError as et,getObjectMembers as rt,getPropertyTuple as tt,
31
- getReferenceType as De}from"@ez4/common/library";import{isAnyNumber as ot,isEmptyObject as nt}from"@ez4/utils";
32
- import{isModelProperty as pt,isTypeClass as it,isTypeObject as st,isTypeReference as Fe}from"@ez4/reflection";var A=p((e,t,r,o)=>{if(!Fe(e))return qe(e,t,r,o);let n=De(e,r);if(n)return qe(n,
33
- t,r,o)},"getHttpErrors"),qe=p((e,t,r,o)=>{if(st(e))return ct(e,t,rt(e),r,o)},"ge\
34
- tTypeErrors"),ct=p((e,t,r,o,n)=>{let s={};for(let i of r){if(!pt(i)||i.inherited)
35
- continue;let m=parseInt(i.name,10);ot(m)||n.push(new et(t.name,i.name,e.file));let c=mt(
36
- i,m,t,o,n);c&&Object.assign(s,c)}if(!nt(s))return s},"getTypeFromMembers"),mt=p(
37
- (e,t,r,o,n)=>{let s=tt(e)??[],i={};for(let m of s){if(!Fe(m)){n.push(new h(r.file));
38
- continue}let c=De(m,o);if(!c||!it(c)){n.push(new h(r.file));continue}i[c.name]=t}
39
- return i},"getErrorClasses");var E=p((e,t,r,o)=>{if(!Mt(e))return Ne(e,t,r,o);let n=Tt(e,r);if(n)return Ne(n,
40
- t,r,o)},"getHttpDefaults"),Ne=p((e,t,r,o)=>{if(ht(e))return Be(t,dt(e),r,o);if(!ut(
41
- e)){o.push(new P(t.file));return}if(!He(e)){o.push(new R(e.name,t.file));return}
42
- return Be(t,ft(e),r,o)},"getTypeDefaults"),Be=p((e,t,r,o)=>{let n={};for(let s of t)
43
- if(!(!gt(s)||s.inherited))switch(s.name){default:o.push(new at(e.name,s.name,e.file));
44
- break;case"httpErrors":n.httpErrors=A(s.value,e,r,o);break;case"preferences":n.preferences=
45
- x(s.value,e,r,o);break;case"memory":case"logRetention":case"timeout":n[s.name]=lt(
46
- s);break;case"listener":n.listener=yt(s.value,o);break}return n},"getTypeFromMem\
47
- bers");import{isModelProperty as cn,isTypeObject as mn,isTypeReference as ur,isTypeTuple as lr}from"@ez4/reflection";
48
- import{InvalidServicePropertyError as an,getLinkedVariableList as un,getPropertyBoolean as ln,
49
- getPropertyNumber as dn,getPropertyString as cr,getObjectMembers as fn,getModelMembers as yn,
50
- getServiceListener as Tn,getReferenceType as dr,getPropertyTuple as gn}from"@ez4/common/library";import{IncompleteTypeError as bt,TypeError as Ht}from"@ez4/common/library";var z=class extends bt{static{p(this,"IncompleteRouteError")}constructor(t,r){super(
51
- "Incomplete gateway route",t,r)}},h=class extends Ht{static{p(this,"InvalidRoute\
52
- ErrorTypeError")}constructor(t){super("Invalid route error type.",t)}};import{IncompleteTypeError as St}from"@ez4/common/library";var w=class extends St{static{p(this,"IncompleteAuthorizerError")}constructor(t,r){
53
- super("Incomplete route authorizer",t,r)}};import{InvalidServicePropertyError as io,isModelDeclaration as so,hasHeritageType as co,
54
- getModelMembers as mo,getObjectMembers as ao,getPropertyNumber as uo,getPropertyNumberList as lo,
55
- getReferenceType as fo}from"@ez4/common/library";import{isModelProperty as yo,isTypeObject as To,
56
- isTypeReference as go}from"@ez4/reflection";import{isAnyNumber as ho}from"@ez4/utils";import{IncorrectTypeError as It,InvalidTypeError as vt}from"@ez4/common/library";var O=class extends vt{constructor(r,o){super("Invalid route response",void 0,r,
57
- o);this.baseType=r}static{p(this,"InvalidResponseTypeError")}},j=class extends It{constructor(r,o,n){
58
- super("Incorrect route response",r,o,n);this.responseType=r;this.baseType=o}static{
59
- p(this,"IncorrectResponseTypeError")}};import{getReferenceType as Rt,isModelDeclaration as zt}from"@ez4/common/library";
60
- import{isTypeIntersection as wt,isTypeObject as Ot,isTypeReference as jt,isTypeUndefined as kt,
61
- isTypeUnion as Ct}from"@ez4/reflection";import{createUnionSchema as qt}from"@ez4/schema/library";import{IncorrectTypeError as xt,InvalidTypeError as At}from"@ez4/common/library";var k=class extends At{static{p(this,"InvalidIdentityTypeError")}constructor(t){
62
- super("Invalid identity",void 0,"Http.Identity",t)}},C=class extends xt{constructor(r,o){
63
- super("Incorrect identity",r,"Http.Identity",o);this.identityType=r}static{p(this,
64
- "IncorrectIdentityTypeError")}};import{getIntersectionSchema as Et,getObjectSchema as Pt,isObjectSchema as Ue}from"@ez4/schema/library";var l=p((e,t)=>{let r=Et(e,t);if(r&&Ue(r))return r},"getSchemaFromIntersection"),
65
- a=p((e,t)=>{let r=Pt(e,t);if(r&&Ue(r))return r},"getSchemaFromObject");var M=p((e,t,r,o)=>{if(kt(e))return;if(!jt(e))return Ve(e,t,r,o);let n=Rt(e,r);if(n)
66
- return Ve(n,t,r,o)},"getHttpIdentity"),Ve=p((e,t,r,o)=>{if(Ot(e))return a(e,r);if(Ct(
67
- e))return Dt(e.elements,t,r,o);if(wt(e))return l(e,r);if(!zt(e)){o.push(new k(t.
68
- file));return}if(!xe(e)){o.push(new C(e.name,t.file));return}let n=a(e,r);return n&&
69
- (n.definitions={...n.definitions,extensible:!0}),n},"getTypeIdentity"),Dt=p((e,t,r,o)=>{
70
- let n=[];for(let s of e){let i=M(s,t,r,o);i&&n.push(i)}return n.length>1?qt({elements:n}):
71
- n[0]},"getIdentityFromUnion");import{isTypeIntersection as Bt,isTypeObject as Ut,isTypeReference as Vt}from"@ez4/reflection";
72
- import{getReferenceType as Qt,isModelDeclaration as Jt}from"@ez4/common/library";import{IncorrectTypeError as Ft,InvalidTypeError as Nt}from"@ez4/common/library";var q=class extends Nt{static{p(this,"InvalidHeadersTypeError")}constructor(t){super(
73
- "Invalid headers",void 0,"Http.Headers",t)}},D=class extends Ft{constructor(r,o){
74
- super("Incorrect headers",r,"Http.Headers",o);this.headersType=r}static{p(this,"\
75
- IncorrectHeadersTypeError")}};var F=p((e,t,r,o)=>{if(!Vt(e))return Qe(e,t,r,o);let n=Qt(e,r);if(n)return Qe(n,
76
- t,r,o)},"getHttpHeaders"),Qe=p((e,t,r,o)=>{if(Ut(e))return a(e,r);if(Bt(e))return l(
77
- e,r);if(!Jt(e)){o.push(new q(t.file));return}if(!ve(e)){o.push(new D(e.name,t.file));
78
- return}return a(e,r)},"getTypeHeaders");import{createUnionSchema as Kt,getScalarSchema as Yt,createArraySchema as Wt}from"@ez4/schema/library";
79
- import{getReferenceType as Xt,isModelDeclaration as Zt}from"@ez4/common/library";
80
- import{isTypeArray as _t,isTypeIntersection as Lt,isTypeObject as eo,isTypeReference as ro,
81
- isTypeScalar as to,isTypeUndefined as Je,isTypeUnion as oo}from"@ez4/reflection";import{IncorrectTypeError as Gt,InvalidTypeError as $t}from"@ez4/common/library";var N=class extends $t{static{p(this,"InvalidBodyTypeError")}constructor(t){super(
82
- "Invalid body",void 0,"Http.JsonBody",t)}},B=class extends Gt{constructor(r,o){super(
83
- "Incorrect body",r,"Http.JsonBody",o);this.bodyType=r}static{p(this,"IncorrectBo\
84
- dyTypeError")}};var U=p((e,t,r,o)=>ue(e,r,n=>me(n)??ae(n,t,r,o)),"getHttpBody"),ue=p((e,t,r)=>{if(!Je(
85
- e)){if(!ro(e))return r(e);let o=Xt(e,t);if(o)return r(o)}},"getTypeBody"),me=p(e=>{
86
- if(to(e))return Yt(e)},"getScalarTypeBody"),ae=p((e,t,r,o)=>{if(eo(e))return a(e,
87
- r);if(oo(e))return no(e.elements,r,n=>me(n)??ae(n,t,r,o));if(Lt(e))return l(e,r);
88
- if(_t(e))return po(e.element,r,n=>me(n)??ae(n,t,r,o));if(!Zt(e)){o.push(new N(t.
89
- file));return}if(!Pe(e)){o.push(new B(e.name,e.file));return}return a(e,r)},"get\
90
- CompoundTypeBody"),no=p((e,t,r)=>{let o={optional:!1,elements:[]};for(let n of e){
91
- if(Je(n)){o.optional=!0;continue}let s=ue(n,t,r);s&&o.elements.push(s)}if(o.elements.
92
- length)return Kt(o)},"getUnionTypeBody"),po=p((e,t,r)=>{let o=ue(e,t,r);if(o)return Wt(
93
- {element:o})},"getArrayTypeBody");var Ke=p((e,t,r,o)=>{let n=We(e,t,r,o,"Http.AuthResponse");if(n&&Mo(n))return n},
94
- "getHttpAuthResponse"),Ye=p((e,t,r,o)=>{let n=We(e,t,r,o,"Http.Response");if(n&&
95
- bo(n))return n},"getHttpHandlerResponse"),We=p((e,t,r,o,n)=>{if(!go(e))return Ge(
96
- e,t,r,o,n);let s=fo(e,r);if(s)return Ge(s,t,r,o,n)},"getHttpResponse"),Mo=p(e=>!!e.
97
- identity,"isValidAuthResponse"),bo=p(e=>ho(e.status)||Array.isArray(e.status),"i\
98
- sValidHandlerResponse"),Ge=p((e,t,r,o,n)=>{if(To(e))return $e(e,t,ao(e),r,o);if(!so(
99
- e)){o.push(new O(n,t.file));return}if(!co(e,n)){o.push(new j(e.name,n,e.file));return}
100
- return $e(e,t,mo(e),r,o)},"getTypeResponse"),$e=p((e,t,r,o,n)=>{let s={};for(let i of r)
101
- if(!(!yo(i)||i.inherited))switch(i.name){default:n.push(new io(t.name,i.name,e.file));
102
- break;case"status":s.status=uo(i)??lo(i);break;case"headers":{s.headers=F(i.value,
103
- e,o,n),s.headers&&i.description&&(s.headers.description=i.description);break}case"\
104
- identity":{s.identity=M(i.value,e,o,n),s.identity&&i.description&&(s.identity.description=
105
- i.description);break}case"body":{s.body=U(i.value,e,o,n),s.body&&i.description&&
106
- (s.body.description=i.description);break}}return s},"getTypeFromMembers");import{isModelProperty as Do,isTypeIntersection as Fo,isTypeObject as No,isTypeReference as Bo}from"@ez4/reflection";
107
- import{InvalidServicePropertyError as Uo,isModelDeclaration as Vo,hasHeritageType as Qo,
108
- getObjectMembers as Jo,getModelMembers as Go,getReferenceType as $o}from"@ez4/common/library";import{IncorrectTypeError as Ho,InvalidTypeError as So}from"@ez4/common/library";var V=class extends So{constructor(r,o){super("Invalid route request",void 0,r,o);
109
- this.baseType=r}static{p(this,"InvalidRequestTypeError")}},Q=class extends Ho{constructor(r,o,n){
110
- super("Incorrect route request",r,o,n);this.requestType=r;this.baseType=o}static{
111
- p(this,"IncorrectRequestTypeError")}};import{isTypeIntersection as xo,isTypeObject as Ao,isTypeReference as Eo}from"@ez4/reflection";
112
- import{getReferenceType as Po,isModelDeclaration as Ro}from"@ez4/common/library";import{IncorrectTypeError as Io,InvalidTypeError as vo}from"@ez4/common/library";var J=class extends vo{static{p(this,"InvalidParameterTypeError")}constructor(t){
113
- super("Invalid request parameters",void 0,"Http.PathParameters",t)}},G=class extends Io{constructor(r,o){
114
- super("Incorrect request parameters",r,"Http.PathParameters",o);this.parametersType=
115
- r}static{p(this,"IncorrectParameterTypeError")}};var Ze=p((e,t,r,o)=>{if(!Eo(e))return Xe(e,t,r,o);let n=Po(e,r);if(n)return Xe(n,
116
- t,r,o)},"getHttpParameters"),Xe=p((e,t,r,o)=>{if(Ao(e))return a(e,r);if(xo(e))return l(
117
- e,r);if(!Ro(e)){o.push(new J(t.file));return}if(!Ee(e)){o.push(new G(e.name,e.file));
118
- return}return a(e,r)},"getTypeParameter");import{isTypeIntersection as Oo,isTypeObject as jo,isTypeReference as ko}from"@ez4/reflection";
119
- import{getReferenceType as Co,isModelDeclaration as qo}from"@ez4/common/library";import{IncorrectTypeError as zo,InvalidTypeError as wo}from"@ez4/common/library";var $=class extends wo{static{p(this,"InvalidQueryTypeError")}constructor(t){super(
120
- "Invalid request query strings",void 0,"Http.QueryStrings",t)}},K=class extends zo{constructor(r,o){
121
- super("Incorrect request query strings",r,"Http.QueryStrings",o);this.queryType=
122
- r}static{p(this,"IncorrectQueryTypeError")}};var Le=p((e,t,r,o)=>{if(!ko(e))return _e(e,t,r,o);let n=Co(e,r);if(n)return _e(n,
123
- t,r,o)},"getHttpQuery"),_e=p((e,t,r,o)=>{if(jo(e))return a(e,r);if(Oo(e))return l(
124
- e,r);if(!qo(e)){o.push(new $(t.file));return}if(!Ae(e)){o.push(new K(e.name,t.file));
125
- return}return a(e,r)},"getTypeQuery");var tr=p((e,t,r,o)=>le(e,t,r,o,"Http.AuthRequest"),"getHttpAuthRequest"),or=p((e,t,r,o)=>le(
126
- e,t,r,o,"Http.Request"),"getHttpHandlerRequest"),le=p((e,t,r,o,n)=>{if(Fo(e)&&e.
127
- elements.length>0)return le(e.elements[0],t,r,o,n);if(!Bo(e))return er(e,t,r,o,n);
128
- let s=$o(e,r);if(s)return er(s,t,r,o,n)},"getHttpRequest"),er=p((e,t,r,o,n)=>{if(No(
129
- e))return rr(e,t,Jo(e),r,o);if(!Vo(e)){o.push(new V(n,t.file));return}if(!Qo(e,n)){
130
- o.push(new Q(e.name,n,e.file));return}return rr(e,t,Go(e),r,o)},"getTypeRequest"),
131
- rr=p((e,t,r,o,n)=>{let s={};for(let i of r)if(!(!Do(i)||i.inherited))switch(i.name){default:
132
- n.push(new Uo(t.name,i.name,e.file));break;case"headers":{s.headers=F(i.value,e,
133
- o,n),s.headers&&i.description&&(s.headers.description=i.description);break}case"\
134
- identity":{s.identity=M(i.value,e,o,n),s.identity&&i.description&&(s.identity.description=
135
- i.description);break}case"query":{s.query=Le(i.value,e,o,n),s.query&&i.description&&
136
- (s.query.description=i.description);break}case"parameters":{s.parameters=Ze(i.value,
137
- e,o,n),s.parameters&&i.description&&(s.parameters.description=i.description);break}case"\
138
- body":{s.body=U(i.value,e,o,n),s.body&&i.description&&(s.body.description=i.description);
139
- break}}return s},"getTypeFromMembers");var nr=p((e,t,r,o)=>{if(!Oe(e))return;let{description:n,module:s}=e,i={...n&&{description:n},
140
- ...s&&{module:s}},m=new Set(["name","file"]);if((i.name=e.name)&&m.delete("name"),
141
- (i.file=e.file)&&m.delete("file"),e.parameters){let[{value:c}]=e.parameters;i.request=
142
- tr(c,t,r,o)}if(e.return&&(i.response=Ke(e.return,t,r,o)),Ko(i))return i;o.push(new w(
143
- [...m],e.file))},"getHttpAuthorizer"),Ko=p(e=>!!e.name&&!!e.file,"isValidAuthori\
144
- zer");import{IncompleteTypeError as Yo}from"@ez4/common/library";var Y=class extends Yo{static{p(this,"IncompleteHandlerError")}constructor(t,r){
145
- super("Incomplete route handler",t,r)}};import{isModelDeclaration as Zo,getModelMembers as _o,getReferenceType as Lo,getLinkedServiceList as en,
146
- getLinkedVariableList as rn}from"@ez4/common/library";import{isModelProperty as tn,
147
- isTypeReference as on}from"@ez4/reflection";import{IncompleteTypeError as Wo,InvalidTypeError as Xo}from"@ez4/common/library";var W=class extends Xo{constructor(r,o){super("Invalid route provider",void 0,r,
148
- o);this.baseType=r}static{p(this,"InvalidProviderTypeError")}},X=class extends Wo{static{
149
- p(this,"IncompleteProviderError")}constructor(t,r){super("Incomplete route provi\
150
- der",t,r)}};var ir=p((e,t,r,o)=>{if(!on(e))return pr(e,t,r,o,"Http.Provider");let n=Lo(e,r);
151
- if(n)return pr(n,t,r,o,"Http.Provider")},"getHttpProvider"),nn=p(e=>!!e.services,
152
- "isValidProvider"),pr=p((e,t,r,o,n)=>{if(!Zo(e)){o.push(new W(n,t.file));return}
153
- return pn(e,_o(e),r,o)},"getProviderType"),pn=p((e,t,r,o)=>{let n={},s=new Set([
154
- "services"]);for(let i of t)if(!(!tn(i)||i.inherited))switch(i.name){case"variab\
155
- les":n.variables=rn(i,o);break;case"services":{(n.services=en(i,r,o))&&s.delete(
156
- i.name);break}}if(nn(n))return n;o.push(new X([...s],e.file))},"getTypeFromMembe\
157
- rs");var sr=p((e,t,r,o,n)=>{if(!je(e))return;let{description:s,module:i}=e,m={...s&&{
158
- description:s},...i&&{module:i}},c=new Set(["name","file","response"]);if((m.name=
159
- e.name)&&c.delete("name"),(m.file=e.file)&&c.delete("file"),e.parameters){let[{value:d},
160
- fe]=e.parameters;m.request=or(d,t,r,o),fe&&!n&&(m.provider=ir(fe.value,t,r,o))}if(e.
161
- return){let d=Ye(e.return,t,r,o);d&&(m.response=d,c.delete("response"))}if(sn(m))
162
- return m;o.push(new Y([...c],e.file))},"getHttpHandler"),sn=p(e=>!!e.name&&!!e.file&&
163
- !!e.response,"isValidHandler");var fr=p((e,t,r,o)=>Tr(e,t,r,o,!1),"getHttpLocalRoutes"),yr=p((e,t,r,o)=>Tr(e,t,
164
- r,o,!0),"getHttpRemoteRoutes"),Tr=p((e,t,r,o,n)=>{if(!ur(t.value))return de(gn(t)??
165
- [],e,r,o,n);let s=dr(t.value,r);if(s&&lr(s))return de(s.elements,e,r,o,n)},"getH\
166
- ttpRoutes"),de=p((e,t,r,o,n)=>{let s=[];for(let i of e){let m=hn(i,t,r,o,n);Array.
167
- isArray(m)?s.push(...m):m&&s.push(m)}return s},"getRouteFromTuple"),hn=p((e,t,r,o,n)=>{
168
- if(!ur(e))return mr(e,t,r,o,n);let s=dr(e,r);if(s)return mr(s,t,r,o,n)},"getType\
169
- FromRoute"),Mn=p(e=>!!e.path&&!!e.handler,"isValidRoute"),mr=p((e,t,r,o,n)=>{if(be(
170
- e))return ar(e,t,yn(e),r,o,n);if(mn(e))return ar(e,t,fn(e),r,o,n);if(lr(e)&&e.spread)
171
- return de(e.elements,t,r,o,n)},"getRouteType"),ar=p((e,t,r,o,n,s)=>{let i={},m=new Set(
172
- ["path","handler"]);for(let c of r)if(!(!cn(c)||c.inherited))switch(c.name){default:
173
- n.push(new an(t.name,c.name,e.file));break;case"name":i.name=cr(c);break;case"pa\
174
- th":{let d=cr(c);d&&Me(d)&&(m.delete(c.name),i.path=d);break}case"handler":(i.handler=
175
- sr(c.value,t,o,n,s))&&m.delete(c.name);break;case"authorizer":i.authorizer=nr(c.
176
- value,t,o,n);break;case"httpErrors":i.httpErrors=A(c.value,t,o,n);break;case"pre\
177
- ferences":i.preferences=x(c.value,t,o,n);break;case"memory":case"logRetention":case"\
178
- timeout":i[c.name]=dn(c);break;case"cors":case"disabled":i[c.name]=ln(c);break;case"\
179
- listener":i.listener=Tn(c.value,n);break;case"variables":i.variables=un(c,n);break}
180
- if(Mn(i))return i;n.push(new z([...m],e.file))},"getTypeFromMembers");import{InvalidServicePropertyError as In,isModelDeclaration as vn,getModelMembers as xn,
181
- getObjectMembers as An,getPropertyNumber as En,getReferenceType as Pn}from"@ez4/common/library";
182
- import{isModelProperty as Rn,isTypeObject as zn,isTypeReference as wn}from"@ez4/reflection";
183
- import{isAnyNumber as Mr}from"@ez4/utils";import{IncompleteTypeError as bn,IncorrectTypeError as Hn,InvalidTypeError as Sn}from"@ez4/common/library";var Z=class extends bn{static{p(this,"IncompleteAccessError")}constructor(t,r){super(
184
- "Incomplete gateway access",t,r)}},_=class extends Sn{static{p(this,"InvalidAcce\
185
- ssTypeError")}constructor(t){super("Invalid gateway access type",void 0,"Http.Ac\
186
- cess",t)}},L=class extends Hn{constructor(r,o){super("Incorrect gateway access t\
187
- ype",r,"Http.Access",o);this.cacheType=r}static{p(this,"IncorrectAccessTypeError")}};var br=p((e,t,r,o)=>{if(!wn(e))return gr(e,t,o);let n=Pn(e,r);if(n)return gr(n,t,
188
- o)},"getHttpAccess"),On=p(e=>Mr(e.logRetention),"isValidAccess"),gr=p((e,t,r)=>{
189
- if(zn(e))return hr(e,t,An(e),r);if(!vn(e)){r.push(new _(t.file));return}if(!ze(e)){
190
- r.push(new L(e.name,e.file));return}return hr(e,t,xn(e),r)},"getTypeAccess"),hr=p(
191
- (e,t,r,o)=>{let n={},s=new Set(["logRetention"]);for(let i of r)if(!(!Rn(i)||i.inherited))
192
- switch(i.name){default:o.push(new In(t.name,i.name,e.file));break;case"logRetent\
193
- ion":{let m=En(i);Mr(m)&&(n[i.name]=m,s.delete(i.name));break}}if(On(n))return n;
194
- o.push(new Z([...s],e.file))},"getTypeFromMembers");import{InvalidServicePropertyError as qn,isModelDeclaration as Dn,getModelMembers as Fn,
195
- getObjectMembers as Nn,getPropertyNumber as Bn,getReferenceType as Un}from"@ez4/common/library";
196
- import{isModelProperty as Vn,isTypeObject as Qn,isTypeReference as Jn}from"@ez4/reflection";
197
- import{isAnyNumber as Ir}from"@ez4/utils";import{IncompleteTypeError as jn,IncorrectTypeError as kn,InvalidTypeError as Cn}from"@ez4/common/library";var ee=class extends jn{static{p(this,"IncompleteCacheError")}constructor(t,r){super(
198
- "Incomplete gateway cache",t,r)}},re=class extends Cn{static{p(this,"InvalidCach\
199
- eTypeError")}constructor(t){super("Invalid gateway cache type",void 0,"Http.Cach\
200
- e",t)}},te=class extends kn{constructor(r,o){super("Incorrect gateway cache type",
201
- r,"Http.Cache",o);this.cacheType=r}static{p(this,"IncorrectCacheTypeError")}};var vr=p((e,t,r,o)=>{if(!Jn(e))return Hr(e,t,o);let n=Un(e,r);if(n)return Hr(n,t,
202
- o)},"getHttpCache"),Gn=p(e=>Ir(e.authorizerTTL),"isValidCache"),Hr=p((e,t,r)=>{if(Qn(
203
- e))return Sr(e,t,Nn(e),r);if(!Dn(e)){r.push(new re(t.file));return}if(!Re(e)){r.
204
- push(new te(e.name,e.file));return}return Sr(e,t,Fn(e),r)},"getTypeCache"),Sr=p(
205
- (e,t,r,o)=>{let n={},s=new Set(["authorizerTTL"]);for(let i of r)if(!(!Vn(i)||i.
206
- inherited))switch(i.name){default:o.push(new qn(t.name,i.name,e.file));break;case"\
207
- authorizerTTL":{let m=Bn(i);Ir(m)&&(n[i.name]=m,s.delete(i.name));break}}if(Gn(n))
208
- return n;o.push(new ee([...s],e.file))},"getTypeFromMembers");import{InvalidServicePropertyError as Wn,isModelDeclaration as Xn,getModelMembers as Zn,
209
- getObjectMembers as _n,getPropertyBoolean as Ln,getPropertyStringList as ep,getPropertyNumber as rp,
210
- getReferenceType as tp}from"@ez4/common/library";import{isModelProperty as op,isTypeObject as np,
211
- isTypeReference as pp}from"@ez4/reflection";import{IncompleteTypeError as $n,IncorrectTypeError as Kn,InvalidTypeError as Yn}from"@ez4/common/library";var oe=class extends $n{static{p(this,"IncompleteCorsError")}constructor(t,r){super(
212
- "Incomplete HTTP CORS",t,r)}},ne=class extends Yn{static{p(this,"InvalidCorsType\
213
- Error")}constructor(t){super("Invalid HTTP CORS type",void 0,"Http.Cors",t)}},pe=class extends Kn{constructor(r,o){
214
- super("Incorrect HTTP CORS type",r,"Http.Cors",o);this.fallbackType=r}static{p(this,
215
- "IncorrectCorsTypeError")}};var Er=p((e,t,r,o)=>{if(!pp(e))return xr(e,t,o);let n=tp(e,r);if(n)return xr(n,t,
216
- o)},"getHttpCors"),ip=p(e=>!!e.allowOrigins?.length,"isValidCors"),xr=p((e,t,r)=>{
217
- if(np(e))return Ar(e,t,_n(e),r);if(!Xn(e)){r.push(new ne(t.file));return}if(!we(
218
- e)){r.push(new pe(e.name,e.file));return}return Ar(e,t,Zn(e),r)},"getTypeCors"),
219
- Ar=p((e,t,r,o)=>{let n={},s=new Set(["allowOrigins"]);for(let i of r)if(!(!op(i)||
220
- i.inherited))switch(i.name){default:o.push(new Wn(t.name,i.name,e.file));break;case"\
221
- allowOrigins":case"allowMethods":case"allowHeaders":case"exposeHeaders":n[i.name]=
222
- ep(i);break;case"allowCredentials":n.allowCredentials=Ln(i);break;case"maxAge":n.
223
- maxAge=rp(i);break}if(ip(n))return n;o.push(new oe([...s],e.file))},"getTypeFrom\
224
- Members");var Pr=p(e=>{let t={},r=[];for(let o in e){let n=e[o];if(!I(n)||cp(n))continue;let s={
225
- type:T,context:{}},i=new Set(["routes"]),m=n.file;s.name=n.name,n.description&&(s.
226
- description=n.description);for(let c of up(n))if(!(!fp(c)||c.inherited))switch(c.
227
- name){default:r.push(new dp(s.name,c.name,m));break;case"routes":(s.routes=fr(n,
228
- c,e,r))&&i.delete(c.name);break;case"name":s.displayName=lp(c);break;case"defaul\
229
- ts":s.defaults=E(c.value,n,e,r);break;case"cache":s.cache=vr(c.value,n,e,r);break;case"\
230
- access":s.access=br(c.value,n,e,r);break;case"cors":s.cors=Er(c.value,n,e,r);break;case"\
231
- variables":s.variables=ap(c,r);break;case"services":s.services=mp(c,e,r);break}if(!yp(
232
- s)){r.push(new f([...i],m));continue}if(t[n.name]){r.push(new sp(n.name,m));continue}
233
- Tp(s,r,m),t[n.name]=s}return{services:t,errors:r}},"getHttpServices"),yp=p(e=>!!e.
234
- name&&!!e.routes&&!!e.context,"isValidService"),Tp=p((e,t,r)=>{for(let o of e.routes){
235
- let n=o.handler.provider;if(n?.services){e.services||(e.services={});for(let s in n.
236
- services){let i=e.services[s],m=n.services[s];if(!i){e.services[s]=m;continue}i!==
237
- m&&t.push(new b(s,r))}}}},"assignProviderServices");import{DuplicateServiceError as wp,InvalidServicePropertyError as Op,isExternalDeclaration as jp,
238
- getModelMembers as kp,getPropertyString as jr,getReferenceName as Cp}from"@ez4/common/library";
239
- import{isModelProperty as qp,isTypeReference as Dp}from"@ez4/reflection";import{InvalidServicePropertyError as bp,isModelDeclaration as Hp,getObjectMembers as Sp,
240
- getModelMembers as Ip,getReferenceType as vp,getPropertyStringIn as xp,getPropertyString as Ap}from"@ez4/common/library";
241
- import{isModelProperty as Ep,isTypeObject as Pp,isTypeReference as Rp}from"@ez4/reflection";
242
- import{isAnyString as wr}from"@ez4/utils";import{IncompleteTypeError as gp,IncorrectTypeError as hp,InvalidTypeError as Mp}from"@ez4/common/library";var ie=class extends gp{static{p(this,"IncompleteAuthorizationError")}constructor(t,r){
243
- super("Incomplete gateway authorization",t,r)}},se=class extends Mp{static{p(this,
244
- "InvalidAuthorizationTypeError")}constructor(t){super("Invalid authorization",void 0,
245
- "Http.Authorization",t)}},ce=class extends hp{constructor(r,o){super("Incorrect \
246
- authorization",r,"Http.Authorization",o);this.authorizationType=r}static{p(this,
247
- "IncorrectAuthorizationTypeError")}};var Or=p((e,t,r,o)=>{if(!Rp(e))return Rr(e,t,o);let n=vp(e,r);if(n)return Rr(n,t,
248
- o)},"getHttpAuthorization"),zp=p(e=>wr(e.value),"isValidAuthorization"),Rr=p((e,t,r)=>{
249
- if(Pp(e))return zr(e,t,Sp(e),r);if(!Hp(e)){r.push(new se(t.file));return}if(!Se(
250
- e)){r.push(new ce(e.name,t.file));return}return zr(e,t,Ip(e),r)},"getTypeAuthori\
251
- zation"),zr=p((e,t,r,o)=>{let n=new Set(["value"]),s={type:"bearer",header:"auth\
252
- orization"};for(let i of r)if(Ep(i))switch(i.name){default:o.push(new bp(t.name,
253
- i.name,t.file));break;case"type":s.type=xp(i,["bearer"]);break;case"value":case"\
254
- header":{let m=Ap(i);wr(m)&&(s[i.name]=m,n.delete(i.name));break}}if(zp(s))return s;
255
- o.push(new ie([...n],e.file))},"getTypeFromMembers");var kr=p(e=>{let t={},r=[];for(let o in e){let n=e[o];if(!v(n)||jp(n))continue;let s={
256
- type:y},i=new Set(["reference","project","routes"]),m=n.file;s.name=n.name,n.description&&
257
- (s.description=n.description);for(let c of kp(n,!0))if(qp(c))switch(c.name){default:
258
- c.inherited||r.push(new Op(s.name,c.name,m));break;case"reference":c.inherited&&
259
- Dp(c.value)&&(s[c.name]=Cp(c.value),i.delete(c.name));break;case"authorization":
260
- c.inherited||(s[c.name]=Or(c.value,n,e,r));break;case"project":!c.inherited&&(s.
261
- project=jr(c))&&i.delete(c.name);break;case"name":c.inherited&&(s.displayName=jr(
262
- c,e));break;case"routes":c.inherited&&(s.routes=yr(n,c,e,r))&&i.delete(c.name);break;case"\
263
- defaults":c.inherited&&(s.defaults=E(c.value,n,e,r));break}if(!Fp(s)){r.push(new f(
264
- [...i],m));continue}if(t[n.name]){r.push(new wp(n.name,m));continue}t[n.name]=s}
265
- return{services:t,errors:r}},"getHttpImports"),Fp=p(e=>!!e.name&&!!e.reference&&
266
- !!e.project&&!!e.routes,"isValidImport");var Cr=p(e=>I(e)?e.name:null,"getLinkedService"),qr=p(e=>v(e)?e.name:null,"getLi\
267
- nkedImport");var na=p(()=>{Np(),Bp(),Dr(T,{"metadata:getServices":Pr,"metadata:getLinkedServi\
268
- ce":Cr}),Dr(y,{"metadata:getServices":kr,"metadata:getLinkedService":qr})},"regi\
269
- sterTriggers");var sa=p(e=>{let{authorization:t}=e;if(t)switch(t.type){default:throw new Error(
1
+ var Ht=Object.defineProperty;var i=(e,t)=>Ht(e,"name",{value:t,configurable:!0});import{registerTriggers as _c}from"@ez4/common/library";import{registerTriggers as Uc}from"@ez4/schema/library";
2
+ import{tryCreateTrigger as Ze}from"@ez4/project/library";import{createServiceMetadata as Et}from"@ez4/project/library";var w="@ez4/ws",u="Ws",Gc=i(e=>e.type===w,"isWsService"),Le=i(e=>({...Et(w,e),variables:{},
3
+ services:{}}),"createWsService");import{DuplicateServiceError as ks,InvalidServicePropertyError as js,isExternalDeclaration as zs,
4
+ isClassDeclaration as ws,getModelMembers as Cs,getPropertyString as Ur,getReferenceName as Ds,
5
+ hasHeritageType as Fs}from"@ez4/common/library";import{isModelProperty as Ns,isTypeReference as qs}from"@ez4/reflection";
6
+ import{isObjectWith as Bs}from"@ez4/utils";import{IncompleteTypeError as It,TypeCollisionError as xt}from"@ez4/common/library";var h=class extends It{static{i(this,"IncompleteServiceError")}constructor(t,r){
7
+ super("Incomplete service",t,r)}},C=class extends xt{static{i(this,"ServiceColli\
8
+ sionError")}constructor(t,r){super("Service error",t,r)}};var m=i((e,t)=>`${e}.${t}`,"getFullTypeName"),er=i(e=>`@${e}`,"getValidatorName");import{createServiceMetadata as rr}from"@ez4/project/library";var D="@ez4/http",F="@ez4/import:http",l="Http",om=i(e=>e.type===D,"isHttpServic\
9
+ e"),tr=i(e=>({...rr(D,e),variables:{},services:{}}),"createHttpService"),or=i(e=>e.
10
+ type===F,"isHttpImport"),nr=i(e=>rr(F,e),"createHttpImport");import{InvalidServicePropertyError as Ot,isModelDeclaration as kt,getObjectMembers as jt,
11
+ getModelMembers as zt,getReferenceType as wt,getPropertyStringIn as Ct,getPropertyString as Dt,
12
+ hasHeritageType as Ft}from"@ez4/common/library";import{isModelProperty as Nt,isTypeObject as qt,
13
+ isTypeReference as Bt}from"@ez4/reflection";import{isAnyString as _t,isObjectWith as Ut}from"@ez4/utils";import{IncompleteTypeError as At,IncorrectTypeError as Pt,InvalidTypeError as Wt}from"@ez4/common/library";var N=class extends At{static{i(this,"IncompleteAuthorizationError")}constructor(t,r){
14
+ super("Incomplete authorization",t,r)}},q=class extends Wt{constructor(r,o){super(
15
+ "Invalid authorization",void 0,r,o);this.baseType=r}static{i(this,"InvalidAuthor\
16
+ izationTypeError")}},B=class extends Pt{constructor(r,o,n){super("Incorrect auth\
17
+ orization",r,o,n);this.authorizationType=r;this.baseType=o}static{i(this,"Incorr\
18
+ ectAuthorizationTypeError")}};var Se=m(l,"Authorization"),Yt=i(e=>Ft(e,Se),"isHttpAuthorizationDeclaration"),pr=i(
19
+ (e,t,r,o)=>{if(!Bt(e))return ir(e,t,o);let n=wt(e,r);if(n)return ir(n,t,o)},"get\
20
+ HttpAuthorizationMetadata"),Vt=i(e=>Ut(e,["value"]),"isCompleteAuthorization"),ir=i(
21
+ (e,t,r)=>{if(qt(e))return sr(e,t,jt(e),r);if(!kt(e)){r.push(new q(Se,t.file));return}
22
+ if(!Yt(e)){r.push(new B(e.name,Se,t.file));return}return sr(e,t,zt(e),r)},"getTy\
23
+ peAuthorization"),sr=i((e,t,r,o)=>{let n=new Set(["value"]),s={type:"bearer",header:"\
24
+ authorization"};for(let p of r)if(Nt(p))switch(p.name){default:o.push(new Ot(t.name,
25
+ p.name,t.file));break;case"type":s.type=Ct(p,["bearer"]);break;case"value":case"\
26
+ header":{let a=Dt(p);_t(a)&&(s[p.name]=a,n.delete(p.name));break}}if(Vt(s))return s;
27
+ o.push(new N([...n],e.file))},"getTypeFromMembers");import{InvalidServicePropertyError as Mo,isModelDeclaration as vo,tryGetReferenceType as So,
28
+ getPropertyNumber as Ro,getObjectMembers as Ho,getModelMembers as Eo,getServiceListener as Io,
29
+ hasHeritageType as xo}from"@ez4/common/library";import{isModelProperty as Ao,isTypeObject as Po,
30
+ isTypeReference as Wo}from"@ez4/reflection";import{IncorrectTypeError as Qt,InvalidTypeError as $t}from"@ez4/common/library";var E=class extends $t{constructor(r,o){super("Invalid defaults",void 0,r,o);this.
31
+ baseType=r}static{i(this,"InvalidDefaultsTypeError")}},I=class extends Qt{constructor(r,o,n){
32
+ super("Incorrect defaults",r,o,n);this.defaultsType=r;this.baseType=o}static{i(this,
33
+ "IncorrectDefaultsTypeError")}};import{InvalidServicePropertyError as Kt,isModelDeclaration as Xt,getObjectMembers as Zt,
34
+ getModelMembers as Lt,getReferenceType as eo,getPropertyStringIn as ro,hasHeritageType as to}from"@ez4/common/library";
35
+ import{isModelProperty as oo,isTypeObject as no,isTypeReference as io}from"@ez4/reflection";
36
+ import{NamingStyle as O}from"@ez4/schema";import{IncorrectTypeError as Gt,InvalidTypeError as Jt}from"@ez4/common/library";var _=class extends Jt{constructor(r,o){super("Invalid preferences",void 0,r,o);
37
+ this.baseType=r}static{i(this,"InvalidPreferencesTypeError")}},U=class extends Gt{constructor(r,o,n){
38
+ super("Incorrect preferences",r,o,n);this.preferencesType=r;this.baseType=o}static{
39
+ i(this,"IncorrectPreferencesTypeError")}};var Re="Preferences",so=i((e,t)=>to(e,m(t,Re)),"isWebPreferencesDeclaration"),y=i(
40
+ (e,t,r,o,n)=>{if(!io(e))return ar(e,t,o,n);let s=eo(e,r);if(s)return ar(s,t,o,n)},
41
+ "getWebPreferencesMetadata"),ar=i((e,t,r,o)=>{if(no(e))return cr(t,Zt(e),r);if(!Xt(
42
+ e)){r.push(new _(m(o,Re),t.file));return}if(!so(e,o)){r.push(new U(e.name,m(o,Re),
43
+ t.file));return}return cr(t,Lt(e),r)},"getPreferencesType"),cr=i((e,t,r)=>{let o={};
44
+ for(let n of t)if(oo(n))switch(n.name){default:r.push(new Kt(e.name,n.name,e.file));
45
+ break;case"namingStyle":o.namingStyle=ro(n,[O.Preserve,O.CamelCase,O.PascalCase,
46
+ O.SnakeCase,O.KebabCase]);break}return o},"getTypeFromMembers");import{InvalidServicePropertyError as co,getObjectMembers as mo,getPropertyTuple as lo,
47
+ getReferenceType as lr}from"@ez4/common/library";import{isModelProperty as uo,isTypeClass as fo,
48
+ isTypeObject as yo,isTypeReference as ur}from"@ez4/reflection";import{isAnyNumber as To,
49
+ isEmptyObject as go}from"@ez4/utils";import{IncompleteTypeError as po,TypeError as ao}from"@ez4/common/library";var Y=class extends po{static{i(this,"IncompleteRouteError")}constructor(t,r){super(
50
+ "Incomplete route",t,r)}},k=class extends ao{static{i(this,"InvalidRouteErrorTyp\
51
+ eError")}constructor(t){super("Invalid route error type.",t)}};var V=i((e,t,r,o)=>{if(!ur(e))return mr(e,t,r,o);let n=lr(e,r);if(n)return mr(n,
52
+ t,r,o)},"getHttpErrorsMetadata"),mr=i((e,t,r,o)=>{if(yo(e))return bo(e,t,mo(e),r,
53
+ o)},"getErrorsType"),bo=i((e,t,r,o,n)=>{let s={};for(let p of r){if(!uo(p)||p.inherited)
54
+ continue;let a=parseInt(p.name,10);To(a)||n.push(new co(t.name,p.name,e.file));let c=ho(
55
+ p,a,t,o,n);c&&Object.assign(s,c)}if(!go(s))return s},"getTypeFromMembers"),ho=i(
56
+ (e,t,r,o,n)=>{let s=lo(e)??[],p={};for(let a of s){if(!ur(a)){n.push(new k(r.file));
57
+ continue}let c=lr(a,o);if(!c||!fo(c)){n.push(new k(r.file));continue}p[c.name]=t}
58
+ return p},"getErrorClasses");var He=m(l,"Defaults"),Oo=i(e=>xo(e,He),"isHttpDefaultsDeclaration"),Q=i((e,t,r,o)=>{
59
+ if(!Wo(e))return dr(e,t,r,o);let n=So(e,r);if(n)return dr(n,t,r,o)},"getHttpDefa\
60
+ ultsMetadata"),dr=i((e,t,r,o)=>{if(Po(e))return fr(t,Ho(e),r,o);if(!vo(e)){o.push(
61
+ new E(He,t.file));return}if(!Oo(e)){o.push(new I(e.name,He,t.file));return}return fr(
62
+ t,Eo(e),r,o)},"getDefaultsType"),fr=i((e,t,r,o)=>{let n={};for(let s of t)if(!(!Ao(
63
+ s)||s.inherited))switch(s.name){default:o.push(new Mo(e.name,s.name,e.file));break;case"\
64
+ preferences":n.preferences=y(s.value,e,r,o,l);break;case"httpErrors":n.httpErrors=
65
+ V(s.value,e,r,o);break;case"memory":case"logRetention":case"timeout":n[s.name]=Ro(
66
+ s);break;case"listener":n.listener=Io(s.value,o);break}return n},"getTypeFromMem\
67
+ bers");import{isModelProperty as fs,isTypeObject as ys,isTypeReference as Dr,isTypeTuple as Fr}from"@ez4/reflection";
68
+ import{isObjectWith as Ts}from"@ez4/utils";import{InvalidServicePropertyError as gs,
69
+ isModelDeclaration as bs,getLinkedVariableList as hs,getPropertyBoolean as Ms,getPropertyNumber as vs,
70
+ getPropertyString as zr,getObjectMembers as Ss,getModelMembers as Rs,getServiceListener as Hs,
71
+ getReferenceType as Nr,getPropertyTuple as Es,hasHeritageType as Is}from"@ez4/common/library";import{IncorrectTypeError as ko,InvalidTypeError as jo,TypeError as zo}from"@ez4/common/library";var $=class extends jo{constructor(r,o){super("Invalid path parameters",void 0,r,
72
+ o);this.baseType=r}static{i(this,"InvalidParameterTypeError")}},G=class extends ko{constructor(r,o,n){
73
+ super("Incorrect path parameters",r,o,n);this.parametersType=r;this.baseType=o}static{
74
+ i(this,"IncorrectParameterTypeError")}},J=class extends zo{constructor(r,o){var t=(...Km)=>(super(
75
+ ...Km),this.parameterNames=r,this);r.length>1?t(`Path parameters ${r} are a mism\
76
+ atch.`,o):t(`Path parameter ${r} is a mismatch.`,o)}static{i(this,"MismatchParam\
77
+ etersTypeError")}};import{isTypeCallback as ci,isTypeFunction as mi}from"@ez4/reflection";import{getFunctionSignature as li,
78
+ isFunctionSignature as ui}from"@ez4/common/library";import{isObjectWith as di}from"@ez4/utils";import{IncompleteTypeError as wo}from"@ez4/common/library";var K=class extends wo{static{i(this,"IncompleteAuthorizerHandlerError")}constructor(t,r){
79
+ super("Incomplete authorizer handler",t,r)}};import{isModelDeclaration as Fo,getModelMembers as No,getReferenceType as qo,getLinkedServiceList as Bo,
80
+ getLinkedVariableList as _o,hasHeritageType as il}from"@ez4/common/library";import{
81
+ isModelProperty as Uo,isTypeReference as Yo}from"@ez4/reflection";import{isObjectWith as Vo}from"@ez4/utils";import{IncompleteTypeError as Co,InvalidTypeError as Do}from"@ez4/common/library";var X=class extends Do{constructor(r,o){super("Invalid provider",void 0,r,o);this.
82
+ baseType=r}static{i(this,"InvalidProviderTypeError")}},Z=class extends Co{static{
83
+ i(this,"IncompleteProviderError")}constructor(t,r){super("Incomplete provider",t,
84
+ r)}};var Qo="Provider";var L=i((e,t,r,o,n)=>{if(!Yo(e))return yr(e,t,r,o,n);let s=qo(e,r);if(s)return yr(
85
+ s,t,r,o,n)},"getWebProviderMetadata"),$o=i(e=>Vo(e,["services"]),"isCompleteProv\
86
+ ider"),yr=i((e,t,r,o,n)=>{if(!Fo(e)){o.push(new X(m(n,Qo),t.file));return}return Go(
87
+ e,No(e),r,o)},"getProviderType"),Go=i((e,t,r,o)=>{let n={},s=new Set(["services"]);
88
+ for(let p of t)if(!(!Uo(p)||p.inherited))switch(p.name){case"variables":n.variables=
89
+ _o(p,o);break;case"services":{(n.services=Bo(p,r,o))&&s.delete(p.name);break}}if($o(
90
+ n))return n;o.push(new Z([...s],e.file))},"getTypeFromMembers");import{InvalidServicePropertyError as dn,isModelDeclaration as fn,hasHeritageType as yn,
91
+ getModelMembers as Tn,getObjectMembers as gn,getReferenceType as bn}from"@ez4/common/library";
92
+ import{isModelProperty as hn,isTypeObject as Mn,isTypeReference as vn}from"@ez4/reflection";
93
+ import{isObjectWith as Sn}from"@ez4/utils";import{IncorrectTypeError as Jo,InvalidTypeError as Ko}from"@ez4/common/library";var M=class extends Ko{constructor(r,o){super("Invalid response",void 0,r,o);this.
94
+ baseType=r}static{i(this,"InvalidResponseTypeError")}},v=class extends Jo{constructor(r,o,n){
95
+ super("Incorrect response",r,o,n);this.responseType=r;this.baseType=o}static{i(this,
96
+ "IncorrectResponseTypeError")}};import{getReferenceType as rn,hasHeritageType as tn,isModelDeclaration as on}from"@ez4/common/library";
97
+ import{isTypeIntersection as nn,isTypeObject as sn,isTypeReference as pn,isTypeUndefined as an,
98
+ isTypeUnion as cn}from"@ez4/reflection";import{createUnionSchema as mn}from"@ez4/schema/library";import{IncorrectTypeError as Xo,InvalidTypeError as Zo}from"@ez4/common/library";var ee=class extends Zo{constructor(r,o){super("Invalid identity",void 0,r,o);this.
99
+ baseType=r}static{i(this,"InvalidIdentityTypeError")}},re=class extends Xo{constructor(r,o,n){
100
+ super("Incorrect identity",r,o,n);this.identityType=r;this.baseType=o}static{i(this,
101
+ "IncorrectIdentityTypeError")}};import{getIntersectionSchema as Lo,getObjectSchema as en}from"@ez4/schema/library";
102
+ import{isObjectSchema as Tr}from"@ez4/schema";var T=i((e,t)=>{let r=Lo(e,t);if(r&&Tr(r))return r},"getSchemaFromIntersection"),
103
+ f=i((e,t)=>{let r=en(e,t);if(r&&Tr(r))return r},"getSchemaFromObject");var Ee="Identity",ln=i((e,t)=>tn(e,m(t,Ee)),"isAuthIdentityDeclaration"),b=i((e,t,r,o,n)=>{
104
+ if(an(e))return;if(!pn(e))return gr(e,t,r,o,n);let s=rn(e,r);if(s)return gr(s,t,
105
+ r,o,n)},"getAuthIdentityMetadata"),gr=i((e,t,r,o,n)=>{if(sn(e))return f(e,r);if(cn(
106
+ e))return un(e.elements,t,r,o,n);if(nn(e))return T(e,r);if(!on(e)){o.push(new ee(
107
+ m(n,Ee),t.file));return}if(!ln(e,n)){o.push(new re(e.name,m(n,Ee),t.file));return}
108
+ let s=f(e,r);return s&&(s.definitions={...s.definitions,extensible:!0}),s},"getI\
109
+ dentityType"),un=i((e,t,r,o,n)=>{let s=[];for(let p of e){let a=b(p,t,r,o,n);a&&
110
+ s.push(a)}return s.length>1?mn({elements:s}):s[0]},"getIdentityFromUnion");var Ie="AuthResponse",Rn=i((e,t)=>yn(e,m(t,Ie)),"isAuthResponseDeclaration"),Mr=i(
111
+ (e,t,r,o,n)=>{if(!vn(e))return br(e,t,r,o,n);let s=bn(e,r);if(s)return br(s,t,r,
112
+ o,n)},"getAuthResponseMetadata"),Hn=i(e=>Sn(e,["identity"]),"isCompleteResponse"),
113
+ br=i((e,t,r,o,n)=>{if(Mn(e))return hr(e,t,gn(e),r,o,n);if(!fn(e)){o.push(new M(m(
114
+ n,Ie),t.file));return}if(!Rn(e,n)){o.push(new v(e.name,m(n,Ie),e.file));return}return hr(
115
+ e,t,Tn(e),r,o,n)},"getResponseType"),hr=i((e,t,r,o,n,s)=>{let p={};for(let a of r)
116
+ if(!(!hn(a)||a.inherited))switch(a.name){default:n.push(new dn(t.name,a.name,e.file));
117
+ break;case"identity":{p.identity=b(a.value,e,o,n,s),p.identity&&a.description&&(p.
118
+ identity.description=a.description);break}}if(Hn(p))return p},"getTypeFromMember\
119
+ s");import{isModelProperty as Zn,isTypeIntersection as Ln,isTypeObject as ei,isTypeReference as ri}from"@ez4/reflection";
120
+ import{InvalidServicePropertyError as ti,isModelDeclaration as oi,hasHeritageType as ni,
121
+ getObjectMembers as ii,getModelMembers as si,getReferenceType as pi}from"@ez4/common/library";import{IncorrectTypeError as En,InvalidTypeError as In}from"@ez4/common/library";var S=class extends In{constructor(r,o){super("Invalid request",void 0,r,o);this.
122
+ baseType=r}static{i(this,"InvalidRequestTypeError")}},R=class extends En{constructor(r,o,n){
123
+ super("Incorrect request",r,o,n);this.requestType=r;this.baseType=o}static{i(this,
124
+ "IncorrectRequestTypeError")}};import{isTypeIntersection as xn,isTypeObject as An,isTypeReference as Pn}from"@ez4/reflection";
125
+ import{getReferenceType as Wn,hasHeritageType as On,isModelDeclaration as kn}from"@ez4/common/library";var xe="PathParameters",jn=i((e,t)=>On(e,m(t,xe)),"isWebParametersDeclaration"),
126
+ te=i((e,t,r,o,n)=>{if(!Pn(e))return vr(e,t,r,o,n);let s=Wn(e,r);if(s)return vr(s,
127
+ t,r,o,n)},"getWebParametersMetadata"),vr=i((e,t,r,o,n)=>{if(An(e))return f(e,r);
128
+ if(xn(e))return T(e,r);if(!kn(e)){o.push(new $(m(n,xe),t.file));return}if(!jn(e,
129
+ n)){o.push(new G(e.name,m(n,xe),e.file));return}return f(e,r)},"getParametersTyp\
130
+ e");import{isTypeIntersection as Cn,isTypeObject as Dn,isTypeReference as Fn}from"@ez4/reflection";
131
+ import{getReferenceType as Nn,hasHeritageType as qn,isModelDeclaration as Bn}from"@ez4/common/library";import{IncorrectTypeError as zn,InvalidTypeError as wn}from"@ez4/common/library";var oe=class extends wn{constructor(r,o){super("Invalid headers",void 0,r,o);this.
132
+ baseType=r}static{i(this,"InvalidHeadersTypeError")}},ne=class extends zn{constructor(r,o,n){
133
+ super("Incorrect headers",r,o,n);this.headersType=r;this.baseType=o}static{i(this,
134
+ "IncorrectHeadersTypeError")}};var Ae="Headers",_n=i((e,t)=>qn(e,m(t,Ae)),"isWebHeadersDeclaration"),H=i((e,t,r,o,n)=>{
135
+ if(!Fn(e))return Sr(e,t,r,o,n);let s=Nn(e,r);if(s)return Sr(s,t,r,o,n)},"getWebH\
136
+ eadersMetadata"),Sr=i((e,t,r,o,n)=>{if(Dn(e))return f(e,r);if(Cn(e))return T(e,r);
137
+ if(!Bn(e)){o.push(new oe(m(n,Ae),t.file));return}if(!_n(e,n)){o.push(new ne(e.name,
138
+ m(n,Ae),t.file));return}return f(e,r)},"resolveHeadersType");import{getReferenceType as Vn,hasHeritageType as Qn,isModelDeclaration as $n}from"@ez4/common/library";
139
+ import{isTypeIntersection as Gn,isTypeObject as Jn,isTypeReference as Kn}from"@ez4/reflection";import{IncorrectTypeError as Un,InvalidTypeError as Yn}from"@ez4/common/library";var ie=class extends Yn{constructor(r,o){super("Invalid query strings",void 0,r,
140
+ o);this.baseType=r}static{i(this,"InvalidQueryTypeError")}},se=class extends Un{constructor(r,o,n){
141
+ super("Incorrect query strings",r,o,n);this.queryType=r;this.baseType=o}static{i(
142
+ this,"IncorrectQueryTypeError")}};var Pe="QueryStrings",Xn=i((e,t)=>Qn(e,m(t,Pe)),"isWebQueryDeclaration"),x=i((e,t,r,o,n)=>{
143
+ if(!Kn(e))return Rr(e,t,r,o,n);let s=Vn(e,r);if(s)return Rr(s,t,r,o,n)},"getWebQ\
144
+ ueryMetadata"),Rr=i((e,t,r,o,n)=>{if(Jn(e))return f(e,r);if(Gn(e))return T(e,r);
145
+ if(!$n(e)){o.push(new ie(m(n,Pe),t.file));return}if(!Xn(e,n)){o.push(new se(e.name,
146
+ m(n,Pe),t.file));return}return f(e,r)},"getQueryType");var We="AuthRequest",ai=i((e,t)=>ni(e,m(t,We)),"isAuthRequestDeclaration"),Oe=i(
147
+ (e,t,r,o,n)=>{if(Ln(e)&&e.elements.length>0)return Oe(e.elements[0],t,r,o,n);if(!ri(
148
+ e))return Hr(e,t,r,o,n);let s=pi(e,r);if(s)return Hr(s,t,r,o,n)},"getAuthRequest\
149
+ Metadata"),Hr=i((e,t,r,o,n)=>{if(ei(e))return Er(e,t,ii(e),r,o,n);if(!oi(e)){o.push(
150
+ new S(m(n,We),t.file));return}if(!ai(e,n)){o.push(new R(e.name,m(n,We),e.file));
151
+ return}return Er(e,t,si(e),r,o,n)},"getRequestType"),Er=i((e,t,r,o,n,s)=>{let p={};
152
+ for(let a of r)if(!(!Zn(a)||a.inherited))switch(a.name){default:n.push(new ti(t.
153
+ name,a.name,e.file));break;case"headers":{p.headers=H(a.value,e,o,n,s),p.headers&&
154
+ a.description&&(p.headers.description=a.description);break}case"parameters":{p.parameters=
155
+ te(a.value,e,o,n,s),p.parameters&&a.description&&(p.parameters.description=a.description);
156
+ break}case"query":{p.query=x(a.value,e,o,n,s),p.query&&a.description&&(p.query.description=
157
+ a.description);break}}return p},"getTypeFromMembers");var fi=i(e=>ci(e)||mi(e),"isAuthHandlerDeclaration"),pe=i((e,t,r,o,n)=>{if(!fi(e))
158
+ return;let s={...li(e)},p=new Set(["response"]);if(e.parameters){let[{value:a},c]=e.
159
+ parameters;s.request=Oe(a,t,r,o,n),c&&(s.provider=L(c.value,t,r,o,n))}if(e.return&&
160
+ (s.response=Mr(e.return,t,r,o,n))&&p.delete("response"),!yi(s)){o.push(new K([...p],
161
+ e.file));return}return s},"getAuthHandlerMetadata"),yi=i(e=>di(e,["response"])&&
162
+ ui(e),"isCompleteHandler");var Ti=new Set(["ANY","GET","POST","PUT","PATCH","DELETE","OPTIONS"]),Ir=i(e=>{let[
163
+ t]=e.split(" ",2);return Ti.has(t)},"isHttpPath");import{isTypeCallback as ps,isTypeFunction as as}from"@ez4/reflection";import{getFunctionSignature as cs,
164
+ isFunctionSignature as ms}from"@ez4/common/library";import{isObjectWith as ls}from"@ez4/utils";import{IncompleteTypeError as gi}from"@ez4/common/library";var A=class extends gi{static{i(this,"IncompleteHandlerError")}constructor(t,r){
165
+ super("Incomplete handler",t,r)}};import{InvalidServicePropertyError as wi,isModelDeclaration as Ci,getModelMembers as Di,
166
+ getObjectMembers as Fi,getPropertyNumber as Ni,getPropertyNumberList as qi,getReferenceType as Bi,
167
+ hasHeritageType as _i}from"@ez4/common/library";import{isModelProperty as Ui,isTypeObject as Yi,
168
+ isTypeReference as Vi}from"@ez4/reflection";import{isAnyNumber as Qi,isObjectWith as $i}from"@ez4/utils";import{createUnionSchema as Mi,getScalarSchema as vi,createArraySchema as Si}from"@ez4/schema/library";
169
+ import{getReferenceType as Ri,hasHeritageType as Hi,isModelDeclaration as Ei}from"@ez4/common/library";
170
+ import{isTypeArray as Ii,isTypeIntersection as xi,isTypeObject as Ai,isTypeReference as Pi,
171
+ isTypeScalar as Wi,isTypeUndefined as xr,isTypeUnion as Oi}from"@ez4/reflection";import{IncorrectTypeError as bi,InvalidTypeError as hi}from"@ez4/common/library";var ae=class extends hi{constructor(r,o){super("Invalid body",void 0,r,o);this.baseType=
172
+ r}static{i(this,"InvalidBodyTypeError")}},ce=class extends bi{constructor(r,o,n){
173
+ super("Incorrect body",r,o,n);this.bodyType=r;this.baseType=o}static{i(this,"Inc\
174
+ orrectBodyTypeError")}};var ke="JsonBody",ki=i((e,t)=>Hi(e,m(t,ke)),"isWebBodyDeclaration"),g=i((e,t,r,o,n)=>we(
175
+ e,r,s=>je(s)??ze(s,t,r,o,n)),"getWebBodyMetadata"),we=i((e,t,r)=>{if(!xr(e)){if(!Pi(
176
+ e))return r(e);let o=Ri(e,t);if(o)return r(o)}},"getBodyType"),je=i(e=>{if(Wi(e))
177
+ return vi(e)},"getScalarTypeBody"),ze=i((e,t,r,o,n)=>{if(Ai(e))return f(e,r);if(Oi(
178
+ e))return ji(e.elements,r,s=>je(s)??ze(s,t,r,o,n));if(xi(e))return T(e,r);if(Ii(
179
+ e))return zi(e.element,r,s=>je(s)??ze(s,t,r,o,n));if(!Ei(e)){o.push(new ae(m(n,ke),
180
+ t.file));return}if(!ki(e,n)){o.push(new ce(e.name,m(n,ke),e.file));return}return f(
181
+ e,r)},"getCompoundTypeBody"),ji=i((e,t,r)=>{let o={optional:!1,elements:[]};for(let n of e){
182
+ if(xr(n)){o.optional=!0;continue}let s=we(n,t,r);s&&o.elements.push(s)}if(o.elements.
183
+ length)return Mi(o)},"getUnionTypeBody"),zi=i((e,t,r)=>{let o=we(e,t,r);if(o)return Si(
184
+ {element:o})},"getArrayTypeBody");var Ce=m(l,"Response"),Gi=i(e=>_i(e,Ce),"isHttpResponseDeclaration"),Wr=i((e,t,r,o)=>{
185
+ if(!Vi(e))return Ar(e,t,r,o);let n=Bi(e,r);if(n)return Ar(n,t,r,o)},"getHttpResp\
186
+ onseMetadata"),Ji=i(e=>$i(e,["status"])&&(Qi(e.status)||!!e.status.length),"isCo\
187
+ mpleteResponse"),Ar=i((e,t,r,o)=>{if(Yi(e))return Pr(e,t,Fi(e),r,o);if(!Ci(e)){o.
188
+ push(new M(Ce,t.file));return}if(!Gi(e)){o.push(new v(e.name,Ce,e.file));return}
189
+ return Pr(e,t,Di(e),r,o)},"getResponseType"),Pr=i((e,t,r,o,n)=>{let s={};for(let p of r)
190
+ if(!(!Ui(p)||p.inherited))switch(p.name){default:n.push(new wi(t.name,p.name,e.file));
191
+ break;case"status":s.status=Ni(p)??qi(p);break;case"headers":{s.headers=H(p.value,
192
+ e,o,n,l),s.headers&&p.description&&(s.headers.description=p.description);break}case"\
193
+ body":{s.body=g(p.value,e,o,n,l),s.body&&p.description&&(s.body.description=p.description);
194
+ break}}if(Ji(s))return s},"getTypeFromMembers");import{isModelProperty as Ki,isTypeIntersection as Xi,isTypeObject as Zi,isTypeReference as Li}from"@ez4/reflection";
195
+ import{InvalidServicePropertyError as es,isModelDeclaration as rs,getObjectMembers as ts,
196
+ getModelMembers as os,getReferenceType as ns,hasHeritageType as is}from"@ez4/common/library";var De=m(l,"Request"),ss=i(e=>is(e,De),"isHttpRequestDeclaration"),Fe=i((e,t,r,o)=>{
197
+ if(Xi(e)&&e.elements.length>0)return Fe(e.elements[0],t,r,o);if(!Li(e))return Or(
198
+ e,t,r,o);let n=ns(e,r);if(n)return Or(n,t,r,o)},"getHttpRequestMetadata"),Or=i((e,t,r,o)=>{
199
+ if(Zi(e))return kr(e,t,ts(e),r,o);if(!rs(e)){o.push(new S(De,t.file));return}if(!ss(
200
+ e)){o.push(new R(e.name,De,e.file));return}return kr(e,t,os(e),r,o)},"getRequest\
201
+ Type"),kr=i((e,t,r,o,n)=>{let s={};for(let p of r)if(!(!Ki(p)||p.inherited))switch(p.
202
+ name){default:n.push(new es(t.name,p.name,e.file));break;case"headers":{s.headers=
203
+ H(p.value,e,o,n,l),s.headers&&p.description&&(s.headers.description=p.description);
204
+ break}case"identity":{s.identity=b(p.value,e,o,n,l),s.identity&&p.description&&(s.
205
+ identity.description=p.description);break}case"query":{s.query=x(p.value,e,o,n,l),
206
+ s.query&&p.description&&(s.query.description=p.description);break}case"parameter\
207
+ s":{s.parameters=te(p.value,e,o,n,l),s.parameters&&p.description&&(s.parameters.
208
+ description=p.description);break}case"body":{s.body=g(p.value,e,o,n,l),s.body&&p.
209
+ description&&(s.body.description=p.description);break}}return s},"getTypeFromMem\
210
+ bers");var us=i(e=>ps(e)||as(e),"isHttpHandlerDeclaration"),jr=i((e,t,r,o,n)=>{if(!us(e))
211
+ return;let s={...cs(e)},p=new Set(["response"]);if(e.parameters){let[{value:a},c]=e.
212
+ parameters;s.request=Fe(a,t,r,o),c&&!n&&(s.provider=L(c.value,t,r,o,l))}if(e.return&&
213
+ (s.response=Wr(e.return,t,r,o))&&p.delete("response"),!ds(s)){o.push(new A([...p],
214
+ e.file));return}return s},"getHttpHandlerMetadata"),ds=i(e=>ls(e,["response"])&&
215
+ ms(e),"isCompleteHandler");var xs=i(e=>bs(e)&&Is(e,m(l,"Route")),"isHttpRouteDeclaration"),qr=i((e,t,r,o)=>_r(
216
+ e,t,r,o,!1),"getHttpLocalRoutes"),Br=i((e,t,r,o)=>_r(e,t,r,o,!0),"getHttpRemoteR\
217
+ outes"),_r=i((e,t,r,o,n)=>{if(!Dr(t.value))return Ne(Es(t)??[],e,r,o,n);let s=Nr(
218
+ t.value,r);if(s&&Fr(s))return Ne(s.elements,e,r,o,n)},"getHttpRoutes"),Ne=i((e,t,r,o,n)=>{
219
+ let s=[];for(let p of e){let a=As(p,t,r,o,n);Array.isArray(a)?s.push(...a):a&&s.
220
+ push(a)}return s},"getRouteFromTuple"),As=i((e,t,r,o,n)=>{if(!Dr(e))return wr(e,
221
+ t,r,o,n);let s=Nr(e,r);if(s)return wr(s,t,r,o,n)},"getTypeFromRoute"),Ps=i(e=>Ts(
222
+ e,["path","handler"]),"isCompleteRoute"),wr=i((e,t,r,o,n)=>{if(xs(e))return Cr(e,
223
+ t,Rs(e),r,o,n);if(ys(e))return Cr(e,t,Ss(e),r,o,n);if(Fr(e)&&e.spread)return Ne(
224
+ e.elements,t,r,o,n)},"getRouteType"),Cr=i((e,t,r,o,n,s)=>{let p={},a=new Set(["p\
225
+ ath","handler"]);for(let d of r)if(!(!fs(d)||d.inherited))switch(d.name){default:
226
+ n.push(new gs(t.name,d.name,e.file));break;case"name":p.name=zr(d);break;case"pa\
227
+ th":{let ve=zr(d);ve&&Ir(ve)&&(a.delete(d.name),p.path=ve);break}case"handler":(p.
228
+ handler=jr(d.value,t,o,n,s))&&a.delete(d.name);break;case"authorizer":p.authorizer=
229
+ pe(d.value,t,o,n,l);break;case"preferences":p.preferences=y(d.value,t,o,n,l);break;case"\
230
+ httpErrors":p.httpErrors=V(d.value,t,o,n);break;case"memory":case"logRetention":case"\
231
+ timeout":p[d.name]=vs(d);break;case"cors":case"disabled":p[d.name]=Ms(d);break;case"\
232
+ listener":p.listener=Hs(d.value,n);break;case"variables":p.variables=hs(d,n);break}
233
+ if(!Ps(p)){n.push(new Y([...a],e.file));return}let c=Os(p.path,p.handler.request?.
234
+ parameters);if(c.length){n.push(new J(c,t.file));return}return p},"getTypeFromMe\
235
+ mbers"),Ws=/\{([\w_-]+)\}/g,Os=i((e,t)=>{let r=e.matchAll(Ws),o=[];for(let n of r){
236
+ let[,s]=n;t?.properties[s]||o.push(s)}return o},"getMismatchParameters");var qe=i(e=>ws(e)&&Fs(e,m(l,"Import")),"isHttpImportDeclaration"),Yr=i(e=>{let t={},
237
+ r=[];for(let o in e){let n=e[o];if(!qe(n)||zs(n))continue;let s=nr(n.name),p=new Set(
238
+ ["project","reference","routes"]),a=n.file;n.description&&(s.description=n.description);
239
+ for(let c of Cs(n,!0))if(Ns(c))switch(c.name){default:c.inherited||r.push(new js(
240
+ s.name,c.name,a));break;case"reference":c.inherited&&qs(c.value)&&(s[c.name]=Ds(
241
+ c.value),p.delete(c.name));break;case"authorization":c.inherited||(s[c.name]=pr(
242
+ c.value,n,e,r));break;case"project":!c.inherited&&(s.project=Ur(c))&&p.delete(c.
243
+ name);break;case"name":c.inherited&&(s.displayName=Ur(c,e));break;case"routes":c.
244
+ inherited&&(s.routes=Br(n,c,e,r))&&p.delete(c.name);break;case"defaults":c.inherited&&
245
+ (s.defaults=Q(c.value,n,e,r));break}if(!_s(s)){r.push(new h([...p],a));continue}
246
+ if(t[n.name]){r.push(new ks(n.name,a));continue}t[n.name]=s}return{services:t,errors:r}},
247
+ "getHttpImportsMetadata"),_s=i(e=>Bs(e,["project","reference","routes"]),"isComp\
248
+ leteService");import{DuplicateServiceError as _p,InvalidServicePropertyError as Up,isExternalDeclaration as Yp,
249
+ isClassDeclaration as Vp,getLinkedServiceList as Qp,getLinkedVariableList as $p,
250
+ getPropertyString as Gp,getModelMembers as Jp,hasHeritageType as Kp}from"@ez4/common/library";
251
+ import{isModelProperty as Xp}from"@ez4/reflection";import{isObjectWith as Zp}from"@ez4/utils";import{getSchemaCustomValidation as Us}from"@ez4/schema";var P=i((e,t)=>{let{request:r}=e;r&&("headers"in r&&r.headers&&j(t,r.headers),"q\
252
+ uery"in r&&r.query&&j(t,r.query),"identity"in r&&r.identity&&j(t,r.identity),"pa\
253
+ rameters"in r&&r.parameters&&j(t,r.parameters),"body"in r&&r.body&&j(t,r.body))},
254
+ "attachValidatorLinkedServices"),j=i((e,t)=>{let r=Us(t);for(let o of r){let n=er(
255
+ o);e[n]=o}},"attachSchemaValidatorServices");var z=i((e,t,r,o)=>{let{provider:n,request:s}=e;if(n?.services){s&&P(e,n.services);
256
+ for(let p in n.services){let a=n.services[p],c=t[p];if(!c){t[p]=a;continue}c!==a&&
257
+ r.push(new C(p,o))}}},"attachProviderLinkedServices");import{InvalidServicePropertyError as $s,isModelDeclaration as Gs,getModelMembers as Js,
258
+ getObjectMembers as Ks,getPropertyNumber as Xs,getReferenceType as Zs,hasHeritageType as Ls}from"@ez4/common/library";
259
+ import{isModelProperty as ep,isTypeObject as rp,isTypeReference as tp}from"@ez4/reflection";
260
+ import{isAnyNumber as op,isObjectWith as np}from"@ez4/utils";import{IncompleteTypeError as Ys,IncorrectTypeError as Vs,InvalidTypeError as Qs}from"@ez4/common/library";var me=class extends Ys{static{i(this,"IncompleteAccessError")}constructor(t,r){
261
+ super("Incomplete access",t,r)}},le=class extends Qs{static{i(this,"InvalidAcces\
262
+ sTypeError")}constructor(t){super("Invalid access",void 0,"Http.Access",t)}},ue=class extends Vs{constructor(r,o){
263
+ super("Incorrect access",r,"Http.Access",o);this.cacheType=r}static{i(this,"Inco\
264
+ rrectAccessTypeError")}};var ip=i(e=>Ls(e,m(l,"Access")),"isHttpAccessDeclaration"),$r=i((e,t,r,o)=>{if(!tp(
265
+ e))return Vr(e,t,o);let n=Zs(e,r);if(n)return Vr(n,t,o)},"getHttpAccessMetadata"),
266
+ sp=i(e=>np(e,["logRetention"]),"isCompleteAccess"),Vr=i((e,t,r)=>{if(rp(e))return Qr(
267
+ e,t,Ks(e),r);if(!Gs(e)){r.push(new le(t.file));return}if(!ip(e)){r.push(new ue(e.
268
+ name,e.file));return}return Qr(e,t,Js(e),r)},"getAccessType"),Qr=i((e,t,r,o)=>{let n={},
269
+ s=new Set(["logRetention"]);for(let p of r)if(!(!ep(p)||p.inherited))switch(p.name){default:
270
+ o.push(new $s(t.name,p.name,e.file));break;case"logRetention":{let a=Xs(p);op(a)&&
271
+ (n[p.name]=a,s.delete(p.name));break}}if(sp(n))return n;o.push(new me([...s],e.file))},
272
+ "getTypeFromMembers");import{InvalidServicePropertyError as mp,isModelDeclaration as lp,getModelMembers as up,
273
+ getObjectMembers as dp,getPropertyNumber as fp,getReferenceType as yp,hasHeritageType as Tp}from"@ez4/common/library";
274
+ import{isModelProperty as gp,isTypeObject as bp,isTypeReference as hp}from"@ez4/reflection";
275
+ import{isAnyNumber as Mp,isObjectWith as vp}from"@ez4/utils";import{IncompleteTypeError as pp,IncorrectTypeError as ap,InvalidTypeError as cp}from"@ez4/common/library";var de=class extends pp{static{i(this,"IncompleteCacheError")}constructor(t,r){super(
276
+ "Incomplete cache",t,r)}},fe=class extends cp{constructor(r,o){super("Invalid ca\
277
+ che",void 0,r,o);this.baseType=r}static{i(this,"InvalidCacheTypeError")}},ye=class extends ap{constructor(r,o,n){
278
+ super("Incorrect cache",r,o,n);this.cacheType=r;this.baseType=o}static{i(this,"I\
279
+ ncorrectCacheTypeError")}};var Be=m(l,"Cache"),Sp=i(e=>Tp(e,Be),"isHttpCacheDeclaration"),Kr=i((e,t,r,o)=>{
280
+ if(!hp(e))return Gr(e,t,o);let n=yp(e,r);if(n)return Gr(n,t,o)},"getHttpCacheMet\
281
+ adata"),Rp=i(e=>vp(e,["authorizerTTL"]),"isCompleteCache"),Gr=i((e,t,r)=>{if(bp(
282
+ e))return Jr(e,t,dp(e),r);if(!lp(e)){r.push(new fe(Be,t.file));return}if(!Sp(e)){
283
+ r.push(new ye(e.name,Be,e.file));return}return Jr(e,t,up(e),r)},"getCacheType"),
284
+ Jr=i((e,t,r,o)=>{let n={},s=new Set(["authorizerTTL"]);for(let p of r)if(!(!gp(p)||
285
+ p.inherited))switch(p.name){default:o.push(new mp(t.name,p.name,e.file));break;case"\
286
+ authorizerTTL":{let a=fp(p);Mp(a)&&(n[p.name]=a,s.delete(p.name));break}}if(Rp(n))
287
+ return n;o.push(new de([...s],e.file))},"getTypeFromMembers");import{InvalidServicePropertyError as xp,isModelDeclaration as Ap,getModelMembers as Pp,
288
+ getObjectMembers as Wp,getPropertyBoolean as Op,getPropertyStringList as kp,getPropertyNumber as jp,
289
+ getReferenceType as zp,hasHeritageType as wp}from"@ez4/common/library";import{isModelProperty as Cp,
290
+ isTypeObject as Dp,isTypeReference as Fp}from"@ez4/reflection";import{isObjectWith as Np}from"@ez4/utils";import{IncompleteTypeError as Hp,IncorrectTypeError as Ep,InvalidTypeError as Ip}from"@ez4/common/library";var Te=class extends Hp{static{i(this,"IncompleteCorsError")}constructor(t,r){super(
291
+ "Incomplete CORS",t,r)}},ge=class extends Ip{constructor(r,o){super("Invalid COR\
292
+ S",void 0,r,o);this.baseType=r}static{i(this,"InvalidCorsTypeError")}},be=class extends Ep{constructor(r,o,n){
293
+ super("Incorrect CORS",r,o,n);this.corsType=r;this.baseType=o}static{i(this,"Inc\
294
+ orrectCorsTypeError")}};var _e=m(l,"Cors"),qp=i(e=>wp(e,_e),"isHttpCorsDeclaration"),Lr=i((e,t,r,o)=>{if(!Fp(
295
+ e))return Xr(e,t,o);let n=zp(e,r);if(n)return Xr(n,t,o)},"getHttpCorsMetadata"),
296
+ Bp=i(e=>Np(e,["allowOrigins"])&&!!e.allowOrigins.length,"isCompleteCors"),Xr=i((e,t,r)=>{
297
+ if(Dp(e))return Zr(e,t,Wp(e),r);if(!Ap(e)){r.push(new ge(_e,t.file));return}if(!qp(
298
+ e)){r.push(new be(e.name,_e,e.file));return}return Zr(e,t,Pp(e),r)},"getCorsType"),
299
+ Zr=i((e,t,r,o)=>{let n={},s=new Set(["allowOrigins"]);for(let p of r)if(!(!Cp(p)||
300
+ p.inherited))switch(p.name){default:o.push(new xp(t.name,p.name,e.file));break;case"\
301
+ allowOrigins":case"allowMethods":case"allowHeaders":case"exposeHeaders":n[p.name]=
302
+ kp(p);break;case"allowCredentials":n.allowCredentials=Op(p);break;case"maxAge":n.
303
+ maxAge=jp(p);break}if(Bp(n))return n;o.push(new Te([...s],e.file))},"getTypeFrom\
304
+ Members");var Ue=i(e=>Vp(e)&&Kp(e,m(l,"Service")),"isHttpServiceDeclaration"),et=i(e=>{let t={},
305
+ r=[];for(let o in e){let n=e[o];if(!Ue(n)||Yp(n))continue;let s=tr(n.name),p=new Set(
306
+ ["routes"]),a=n.file;n.description&&(s.description=n.description);for(let c of Jp(
307
+ n))if(!(!Xp(c)||c.inherited))switch(c.name){default:r.push(new Up(s.name,c.name,
308
+ a));break;case"routes":(s.routes=qr(n,c,e,r))&&p.delete(c.name);break;case"name":
309
+ s.displayName=Gp(c);break;case"defaults":s.defaults=Q(c.value,n,e,r);break;case"\
310
+ cache":s.cache=Kr(c.value,n,e,r);break;case"access":s.access=$r(c.value,n,e,r);break;case"\
311
+ cors":s.cors=Lr(c.value,n,e,r);break;case"variables":s.variables=$p(c,r);break;case"\
312
+ services":s.services=Qp(c,e,r);break}if(!Lp(s)){r.push(new h([...p],a));continue}
313
+ if(t[n.name]){r.push(new _p(n.name,a));continue}ea(s,r,a),t[n.name]=s}return{services:t,
314
+ errors:r}},"getHttpServicesMetadata"),Lp=i(e=>Zp(e,["routes","variables","servic\
315
+ es"]),"isCompleteService"),ea=i((e,t,r)=>{for(let o of e.routes)z(o.handler,e.services,
316
+ t,r),o.authorizer&&z(o.authorizer,e.services,t,r)},"attachLinkedServices");import{DuplicateServiceError as Wc,InvalidServicePropertyError as Oc,isExternalDeclaration as kc,
317
+ isClassDeclaration as jc,getLinkedServiceList as zc,getLinkedVariableList as wc,
318
+ getModelMembers as Cc,getPropertyString as vt,hasHeritageType as Dc}from"@ez4/common/library";
319
+ import{isModelProperty as Fc}from"@ez4/reflection";import{isObjectWith as Nc}from"@ez4/utils";import{isModelProperty as Ba,isTypeObject as _a,isTypeReference as Ua}from"@ez4/reflection";
320
+ import{isObjectWith as Ya}from"@ez4/utils";import{InvalidServicePropertyError as Va,
321
+ getLinkedVariableList as Qa,getPropertyNumber as $a,getObjectMembers as Ga,getModelMembers as Ja,
322
+ getServiceListener as Ka,getReferenceType as Xa,isModelDeclaration as Za,hasHeritageType as lt}from"@ez4/common/library";import{IncompleteTypeError as ra}from"@ez4/common/library";var W=class extends ra{static{i(this,"IncompleteTargetError")}constructor(t,r){super(
323
+ "Incomplete target",t,r)}};import{isTypeCallback as Ca,isTypeFunction as Da}from"@ez4/reflection";import{getFunctionSignature as Fa,
324
+ isFunctionSignature as Na}from"@ez4/common/library";import{InvalidServicePropertyError as ta,isModelDeclaration as oa,hasHeritageType as na,
325
+ getModelMembers as ia,getObjectMembers as sa,getReferenceType as pa}from"@ez4/common/library";
326
+ import{isModelProperty as aa,isTypeObject as ca,isTypeReference as ma}from"@ez4/reflection";var Ye=m(u,"Response"),la=i(e=>na(e,Ye),"isWsResponseDeclaration"),ot=i((e,t,r,o)=>{
327
+ if(!ma(e))return rt(e,t,r,o);let n=pa(e,r);if(n)return rt(n,t,r,o)},"getWsRespon\
328
+ seMetadata"),rt=i((e,t,r,o)=>{if(ca(e))return tt(e,t,sa(e),r,o);if(!oa(e)){o.push(
329
+ new M(Ye,t.file));return}if(!la(e)){o.push(new v(e.name,Ye,e.file));return}return tt(
330
+ e,t,ia(e),r,o)},"getResponseType"),tt=i((e,t,r,o,n)=>{let s={};for(let p of r)if(!(!aa(
331
+ p)||p.inherited))switch(p.name){default:n.push(new ta(t.name,p.name,e.file));break;case"\
332
+ body":{s.body=g(p.value,e,o,n,u),s.body&&p.description&&(s.body.description=p.description);
333
+ break}}return s},"getTypeFromMembers");import{isModelProperty as ua,isTypeIntersection as da,isTypeObject as fa,isTypeReference as ya}from"@ez4/reflection";
334
+ import{InvalidServicePropertyError as Ta,isModelDeclaration as ga,hasHeritageType as ba,
335
+ getObjectMembers as ha,getModelMembers as Ma,getReferenceType as va}from"@ez4/common/library";var Ve=m(u,"Request"),Sa=i(e=>ba(e,Ve),"isWsRequestDeclaration"),Qe=i((e,t,r,o)=>{
336
+ if(da(e)&&e.elements.length>0)return Qe(e.elements[0],t,r,o);if(!ya(e))return nt(
337
+ e,t,r,o);let n=va(e,r);if(n)return nt(n,t,r,o)},"getWsRequestMetadata"),nt=i((e,t,r,o)=>{
338
+ if(fa(e))return it(e,t,ha(e),r,o);if(!ga(e)){o.push(new S(Ve,t.file));return}if(!Sa(
339
+ e)){o.push(new R(e.name,Ve,e.file));return}return it(e,t,Ma(e),r,o)},"getRequest\
340
+ Type"),it=i((e,t,r,o,n)=>{let s={};for(let p of r)if(!(!ua(p)||p.inherited))switch(p.
341
+ name){default:n.push(new Ta(t.name,p.name,e.file));break;case"identity":{s.identity=
342
+ b(p.value,e,o,n,u),s.identity&&p.description&&(s.identity.description=p.description);
343
+ break}case"body":{s.body=g(p.value,e,o,n,u),s.body&&p.description&&(s.body.description=
344
+ p.description);break}}return s},"getTypeFromMembers");import{isModelProperty as Ea,isTypeIntersection as Ia,isTypeObject as xa,isTypeReference as Aa}from"@ez4/reflection";
345
+ import{InvalidServicePropertyError as Pa,isModelDeclaration as Wa,getObjectMembers as Oa,
346
+ getModelMembers as ka,getReferenceType as ja,hasHeritageType as za}from"@ez4/common/library";import{IncorrectTypeError as Ra,InvalidTypeError as Ha}from"@ez4/common/library";var he=class extends Ha{constructor(r,o){super("Invalid event",void 0,r,o);this.
347
+ baseType=r}static{i(this,"InvalidEventTypeError")}},Me=class extends Ra{constructor(r,o,n){
348
+ super("Incorrect event",r,o,n);this.eventType=r;this.baseType=o}static{i(this,"I\
349
+ ncorrectEventTypeError")}};var $e=m(u,"Event"),wa=i(e=>za(e,$e),"isWsEventDeclaration"),Ge=i((e,t,r,o)=>{if(Ia(
350
+ e)&&e.elements.length>0)return Ge(e.elements[0],t,r,o);if(!Aa(e))return st(e,t,r,
351
+ o);let n=ja(e,r);if(n)return st(n,t,r,o)},"getWsEventMetadata"),st=i((e,t,r,o)=>{
352
+ if(xa(e))return pt(e,t,Oa(e),r,o);if(!Wa(e)){o.push(new he($e,t.file));return}if(!wa(
353
+ e)){o.push(new Me(e.name,$e,e.file));return}return pt(e,t,ka(e),r,o)},"getEventT\
354
+ ype"),pt=i((e,t,r,o,n)=>{let s={};for(let p of r)if(!(!Ea(p)||p.inherited))switch(p.
355
+ name){default:n.push(new Pa(t.name,p.name,e.file));break;case"headers":{s.headers=
356
+ H(p.value,e,o,n,u),s.headers&&p.description&&(s.headers.description=p.description);
357
+ break}case"identity":{s.identity=b(p.value,e,o,n,u),s.identity&&p.description&&(s.
358
+ identity.description=p.description);break}case"query":{s.query=x(p.value,e,o,n,u),
359
+ s.query&&p.description&&(s.query.description=p.description);break}}return s},"ge\
360
+ tTypeFromMembers");var qa=i(e=>Ca(e)||Da(e),"isWsHandlerDeclaration"),at=i((e,t,r,o)=>mt(e,t,r,o,n=>Ge(
361
+ n,t,r,o)),"getWsConnectionHandler"),ct=i((e,t,r,o)=>mt(e,t,r,o,n=>Qe(n,t,r,o)),"\
362
+ getWsMessageHandler"),mt=i((e,t,r,o,n)=>{if(!qa(e))return;let s={...Fa(e)},p=new Set;
363
+ if(e.parameters){let[{value:a}]=e.parameters;(s.request=n(a))||p.add("request")}
364
+ if(e.return&&!(s.response=ot(e.return,t,r,o))&&p.add("response"),!Na(s)){o.push(
365
+ new A([...p],e.file));return}return s},"getWsHandler");var La=m(u,"Connect"),ec=m(u,"Disconnect"),rc=i(e=>Za(e)&&(lt(e,La)||lt(e,ec)),"\
366
+ isWsConnectionDeclaration"),ft=i((e,t,r,o)=>{if(!Ua(e))return ut(e,t,r,o);let n=Xa(
367
+ e,r);if(n)return ut(n,t,r,o)},"getWsConnectionMetadata"),tc=i(e=>Ya(e,["handler"]),
368
+ "isCompleteWsConnection"),ut=i((e,t,r,o)=>{if(rc(e))return dt(e,t,Ja(e),r,o);if(_a(
369
+ e))return dt(e,t,Ga(e),r,o)},"getConnectionType"),dt=i((e,t,r,o,n)=>{let s={},p=new Set(
370
+ ["handler"]);for(let a of r)if(!(!Ba(a)||a.inherited))switch(a.name){default:n.push(
371
+ new Va(t.name,a.name,e.file));break;case"handler":(s.handler=at(a.value,t,o,n))&&
372
+ p.delete(a.name);break;case"authorizer":s.authorizer=pe(a.value,t,o,n,u);break;case"\
373
+ preferences":s.preferences=y(a.value,t,o,n,u);break;case"memory":case"logRetenti\
374
+ on":case"timeout":s[a.name]=$a(a);break;case"listener":s.listener=Ka(a.value,n);
375
+ break;case"variables":s.variables=Qa(a,n);break}if(tc(s))return s;n.push(new W([
376
+ ...p],e.file))},"getTypeFromMembers");import{InvalidServicePropertyError as oc,isModelDeclaration as nc,getPropertyNumber as ic,
377
+ getObjectMembers as sc,getModelMembers as pc,getServiceListener as ac,tryGetReferenceType as cc,
378
+ hasHeritageType as mc}from"@ez4/common/library";import{isModelProperty as lc,isTypeObject as uc,
379
+ isTypeReference as dc}from"@ez4/reflection";var Je=m(u,"Defaults"),fc=i(e=>mc(e,Je),"isWsDefaultsDeclaration"),gt=i((e,t,r,o)=>{
380
+ if(!dc(e))return yt(e,t,r,o);let n=cc(e,r);if(n)return yt(n,t,r,o)},"getWsDefaul\
381
+ tsMetadata"),yt=i((e,t,r,o)=>{if(uc(e))return Tt(t,sc(e),r,o);if(!nc(e)){o.push(
382
+ new E(Je,t.file));return}if(!fc(e)){o.push(new I(e.name,Je,t.file));return}return Tt(
383
+ t,pc(e),r,o)},"getDefaultsType"),Tt=i((e,t,r,o)=>{let n={};for(let s of t)if(!(!lc(
384
+ s)||s.inherited))switch(s.name){default:o.push(new oc(e.name,s.name,e.file));break;case"\
385
+ preferences":n.preferences=y(s.value,e,r,o,u);break;case"memory":case"logRetenti\
386
+ on":case"timeout":n[s.name]=ic(s);break;case"listener":n.listener=ac(s.value,o);
387
+ break}return n},"getTypeFromMembers");import{isModelProperty as yc,isTypeObject as Tc,isTypeReference as gc}from"@ez4/reflection";
388
+ import{isObjectWith as bc}from"@ez4/utils";import{InvalidServicePropertyError as hc,
389
+ getLinkedVariableList as Mc,getPropertyNumber as vc,getObjectMembers as Sc,getModelMembers as Rc,
390
+ getServiceListener as Hc,getReferenceType as Ec,isModelDeclaration as Ic,hasHeritageType as xc}from"@ez4/common/library";var Ac=i(e=>Ic(e)&&xc(e,m(u,"Message")),"isWsMessageDeclaration"),Mt=i((e,t,r,o)=>{
391
+ if(!gc(e))return bt(e,t,r,o);let n=Ec(e,r);if(n)return bt(n,t,r,o)},"getWsMessag\
392
+ eMetadata"),Pc=i(e=>bc(e,["handler"]),"isCompleteWsMessage"),bt=i((e,t,r,o)=>{if(Ac(
393
+ e))return ht(e,t,Rc(e),r,o);if(Tc(e))return ht(e,t,Sc(e),r,o)},"getMessageType"),
394
+ ht=i((e,t,r,o,n)=>{let s={},p=new Set(["handler"]);for(let a of r)if(!(!yc(a)||a.
395
+ inherited))switch(a.name){default:n.push(new hc(t.name,a.name,e.file));break;case"\
396
+ handler":(s.handler=ct(a.value,t,o,n))&&p.delete(a.name);break;case"preferences":
397
+ s.preferences=y(a.value,t,o,n,u);break;case"memory":case"logRetention":case"time\
398
+ out":s[a.name]=vc(a);break;case"listener":s.listener=Hc(a.value,n);break;case"va\
399
+ riables":s.variables=Mc(a,n);break}if(Pc(s))return s;n.push(new W([...p],e.file))},
400
+ "getTypeFromMembers");var Ke=i(e=>jc(e)&&Dc(e,m(u,"Service")),"isWsServiceDeclaration"),St=i(e=>{let t={},
401
+ r=[];for(let o in e){let n=e[o];if(!Ke(n)||kc(n))continue;let s=Le(n.name),p=new Set(
402
+ ["schema","connect","disconnect","message"]),a=n.file;n.description&&(s.description=
403
+ n.description);for(let c of Cc(n,!0))if(Fc(c))switch(c.name){default:r.push(new Oc(
404
+ s.name,c.name,a));break;case"client":break;case"name":c.inherited||(s.displayName=
405
+ vt(c));break;case"stage":c.inherited||(s.stageName=vt(c));break;case"defaults":c.
406
+ inherited||(s.defaults=gt(c.value,n,e,r));break;case"schema":(s.schema=g(c.value,
407
+ n,e,r,u))&&p.delete(c.name);break;case"connect":case"disconnect":!c.inherited&&(s[c.
408
+ name]=ft(c.value,n,e,r))&&p.delete(c.name);break;case"message":!c.inherited&&(s[c.
409
+ name]=Mt(c.value,n,e,r))&&p.delete(c.name);break;case"variables":c.inherited?s.variables=
410
+ {}:s.variables=wc(c,r);break;case"services":c.inherited?s.services={}:s.services=
411
+ zc(c,e,r);break}if(!qc(s)){r.push(new h([...p],a));continue}if(t[n.name]){r.push(
412
+ new Wc(n.name,a));continue}Bc(s,r,a),t[n.name]=s}return{services:t,errors:r}},"g\
413
+ etWsServicesMetadata"),qc=i(e=>Nc(e,["schema","connect","disconnect","message","\
414
+ variables","services"]),"isCompleteService"),Bc=i((e,t,r)=>{let{connect:o,disconnect:n,
415
+ message:s}=e;P(o.handler,e.services),P(n.handler,e.services),P(s.handler,e.services),
416
+ o.authorizer&&z(o.authorizer,e.services,t,r)},"attachLinkedServices");var Xe=i(e=>Ue(e)||Ke(e)?e.name:null,"getLinkedService"),Rt=i(e=>qe(e)?e.name:null,
417
+ "getLinkedImport");var UT=i(()=>{_c(),Uc(),Ze(w,{"metadata:getServices":St,"metadata:getLinkedServi\
418
+ ce":Xe}),Ze(D,{"metadata:getServices":et,"metadata:getLinkedService":Xe}),Ze(F,{
419
+ "metadata:getServices":Yr,"metadata:getLinkedService":Rt})},"registerTriggers");var QT=i(e=>{let{authorization:t}=e;if(t)switch(t.type){default:throw new Error(
270
420
  `Authorization type ${t.type} isn't supported.`);case"bearer":return{header:t.header,
271
- value:`Bearer ${t.value}`}}},"getClientAuthorization");import{getObjectSchemaProperty as Up}from"@ez4/schema";var la=p(e=>{let t={},r=e.defaults?.preferences?.namingStyle,o=ye(e)?e.authorization?.
272
- header:void 0;for(let n of e.routes){if(!n.name)continue;let[s,i]=n.path.split("\
273
- ",2),{handler:m,preferences:c}=n;t[n.name]={authorize:Vp(n,o),namingStyle:c?.namingStyle??
274
- r,bodySchema:m.request?.body,responseSchema:m.response.body,querySchema:m.request?.
275
- query,method:s,path:i}}return t},"getClientOperations"),Vp=p((e,t)=>{let r=e.authorizer?.
276
- request?.headers;if(!r||!t)return!1;let o=Up(r,t);return!(!o||o.optional)},"shou\
277
- ldUseAuthorization");import{IncorrectTypeError as Qp,InvalidTypeError as Jp}from"@ez4/common/library";var P=class extends Jp{static{p(this,"InvalidDefaultsTypeError")}constructor(t){
278
- super("Invalid defaults",void 0,"Http.Defaults",t)}},R=class extends Qp{constructor(r,o){
279
- super("Incorrect defaults",r,"Http.Defaults",o);this.defaultsType=r}static{p(this,
280
- "IncorrectDefaultsTypeError")}};export{y as ImportType,Z as IncompleteAccessError,ie as IncompleteAuthorizationError,
281
- w as IncompleteAuthorizerError,ee as IncompleteCacheError,oe as IncompleteCorsError,
282
- Y as IncompleteHandlerError,X as IncompleteProviderError,z as IncompleteRouteError,
283
- f as IncompleteServiceError,L as IncorrectAccessTypeError,ce as IncorrectAuthorizationTypeError,
284
- B as IncorrectBodyTypeError,te as IncorrectCacheTypeError,pe as IncorrectCorsTypeError,
285
- R as IncorrectDefaultsTypeError,D as IncorrectHeadersTypeError,C as IncorrectIdentityTypeError,
286
- G as IncorrectParameterTypeError,S as IncorrectPreferencesTypeError,K as IncorrectQueryTypeError,
287
- Q as IncorrectRequestTypeError,j as IncorrectResponseTypeError,_ as InvalidAccessTypeError,
288
- se as InvalidAuthorizationTypeError,N as InvalidBodyTypeError,re as InvalidCacheTypeError,
289
- ne as InvalidCorsTypeError,P as InvalidDefaultsTypeError,q as InvalidHeadersTypeError,
290
- k as InvalidIdentityTypeError,J as InvalidParameterTypeError,H as InvalidPreferencesTypeError,
291
- W as InvalidProviderTypeError,$ as InvalidQueryTypeError,V as InvalidRequestTypeError,
292
- O as InvalidResponseTypeError,h as InvalidRouteErrorTypeError,b as ServiceCollisionError,
293
- T as ServiceType,sa as getClientAuthorization,la as getClientOperations,kr as getHttpImports,
294
- Pr as getHttpServices,ye as isHttpImport,Yp as isHttpService,na as registerTriggers};
421
+ value:`Bearer ${t.value}`}}},"getClientAuthorization");import{getObjectSchemaProperty as Yc}from"@ez4/schema";var XT=i(e=>{let t={},r=e.defaults?.preferences?.namingStyle,o=or(e)?e.authorization?.
422
+ header:void 0;for(let n of e.routes){if(!n.name)continue;let[s,p]=n.path.split("\
423
+ ",2),{handler:a,preferences:c}=n;t[n.name]={authorize:Vc(n,o),namingStyle:c?.namingStyle??
424
+ r,bodySchema:a.request?.body,responseSchema:a.response.body,querySchema:a.request?.
425
+ query,method:s,path:p}}return t},"getClientOperations"),Vc=i((e,t)=>{let r=e.authorizer?.
426
+ request?.headers;if(!r||!t)return!1;let o=Yc(r,t);return!(!o||o.optional)},"shou\
427
+ ldUseAuthorization");export{F as HttpImportType,l as HttpNamespaceType,D as HttpServiceType,me as IncompleteAccessError,
428
+ N as IncompleteAuthorizationError,K as IncompleteAuthorizerHandlerError,de as IncompleteCacheError,
429
+ Te as IncompleteCorsError,A as IncompleteHandlerError,Z as IncompleteProviderError,
430
+ Y as IncompleteRouteError,h as IncompleteServiceError,W as IncompleteTargetError,
431
+ ue as IncorrectAccessTypeError,B as IncorrectAuthorizationTypeError,ce as IncorrectBodyTypeError,
432
+ ye as IncorrectCacheTypeError,be as IncorrectCorsTypeError,I as IncorrectDefaultsTypeError,
433
+ Me as IncorrectEventTypeError,ne as IncorrectHeadersTypeError,re as IncorrectIdentityTypeError,
434
+ G as IncorrectParameterTypeError,U as IncorrectPreferencesTypeError,se as IncorrectQueryTypeError,
435
+ R as IncorrectRequestTypeError,v as IncorrectResponseTypeError,le as InvalidAccessTypeError,
436
+ q as InvalidAuthorizationTypeError,ae as InvalidBodyTypeError,fe as InvalidCacheTypeError,
437
+ ge as InvalidCorsTypeError,E as InvalidDefaultsTypeError,he as InvalidEventTypeError,
438
+ oe as InvalidHeadersTypeError,ee as InvalidIdentityTypeError,$ as InvalidParameterTypeError,
439
+ _ as InvalidPreferencesTypeError,X as InvalidProviderTypeError,ie as InvalidQueryTypeError,
440
+ S as InvalidRequestTypeError,M as InvalidResponseTypeError,k as InvalidRouteErrorTypeError,
441
+ J as MismatchParametersTypeError,C as ServiceCollisionError,u as WsNamespaceType,
442
+ w as WsServiceType,nr as createHttpImport,tr as createHttpService,Le as createWsService,
443
+ QT as getClientAuthorization,XT as getClientOperations,Yr as getHttpImportsMetadata,
444
+ et as getHttpServicesMetadata,St as getWsServicesMetadata,or as isHttpImport,qe as isHttpImportDeclaration,
445
+ om as isHttpService,Ue as isHttpServiceDeclaration,Gc as isWsService,Ke as isWsServiceDeclaration,
446
+ UT as registerTriggers};
295
447
  //# sourceMappingURL=library.mjs.map