@ez4/gateway 0.33.0 → 0.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/authorization.d.ts +6 -0
- package/dist/client/operations.d.ts +3 -1
- package/dist/errors/authorization.d.ts +11 -0
- package/dist/library.cjs +277 -256
- package/dist/library.d.ts +3 -12
- package/dist/library.mjs +270 -249
- package/dist/main.cjs +18 -17
- package/dist/main.d.ts +2 -1
- package/dist/main.mjs +13 -13
- package/dist/metadata/authorization.d.ts +3 -0
- package/dist/metadata/schema.d.ts +2 -1
- package/dist/metadata/utils.d.ts +1 -0
- package/dist/services/access.d.ts +9 -0
- package/dist/services/authorization.d.ts +25 -0
- package/dist/services/cache.d.ts +9 -0
- package/dist/services/client.d.ts +71 -26
- package/dist/services/common.d.ts +19 -98
- package/dist/services/contract.d.ts +56 -92
- package/dist/services/cors.d.ts +29 -0
- package/dist/services/defaults.d.ts +31 -0
- package/dist/services/preferences.d.ts +10 -0
- package/dist/services/provider.d.ts +11 -0
- package/dist/services/route.d.ts +56 -0
- package/dist/services/utils.d.ts +3 -3
- package/dist/types/common.d.ts +7 -0
- package/dist/types/import.d.ts +2 -1
- package/dist/utils/body.d.ts +6 -1
- package/dist/utils/client.d.ts +9 -5
- package/dist/utils/parameters.d.ts +1 -0
- package/dist/utils/query.d.ts +3 -4
- package/dist/utils.cjs +52 -48
- package/dist/utils.mjs +53 -49
- package/package.json +8 -8
- package/dist/errors/context.d.ts +0 -8
- package/dist/metadata/context.d.ts +0 -3
- package/dist/utils/request.d.ts +0 -6
package/dist/utils.mjs
CHANGED
|
@@ -1,50 +1,54 @@
|
|
|
1
|
-
var
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
e,t,n),
|
|
7
|
-
i);throw new
|
|
8
|
-
let r=[];for(let o in e){let n=t&&
|
|
9
|
-
a)}`)}if(r.length)return r.join("&")},"
|
|
10
|
-
e))return e instanceof Date?e.toISOString():
|
|
11
|
-
encoded)?e.map(n=>
|
|
12
|
-
e)):`${e}`},"
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
"
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
replaceAll(/\{(\w+)\}/g,(r,o)=>o in t?`${t[o]}`:`{${o}}`),"
|
|
26
|
-
(e,t
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
"
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
let
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
1
|
+
var P=Object.defineProperty;var s=(e,t)=>P(e,"name",{value:t,configurable:!0});import{HttpBadRequestError as v}from"@ez4/gateway";import{createTransformContext as x,
|
|
2
|
+
transform as H}from"@ez4/transform";import{validate as O,createValidatorContext as U,
|
|
3
|
+
getUniqueErrorMessages as z}from"@ez4/validator";import{base64Encode as A,isNotNullish as B,
|
|
4
|
+
isNullish as M}from"@ez4/utils";import{getSchemaProperty as N,isArraySchema as $}from"@ez4/schema";var T=s((e,t,r)=>{if(!t)return g(e);let o=x({inputStyle:r?.namingStyle,convert:!1}),
|
|
5
|
+
n=H(e,t,o);return g(n,t)},"prepareQueryStrings"),xt=s(async(e,t,r)=>{let o=r?.namingStyle,
|
|
6
|
+
n=x({convert:!0,inputStyle:o}),a=H(e,t,n),p=U({property:"$query",pathStyle:o}),c=await O(
|
|
7
|
+
a,t,p);if(c.length){let i=z(c);throw new v("Malformed query strings.",i)}return a},
|
|
8
|
+
"getQueryStrings"),g=s((e,t)=>{let r=[];for(let o in e){let n=t&&N(t,o),a=w(e[o],
|
|
9
|
+
n);a&&r.push(`${o}=${encodeURIComponent(a)}`)}if(r.length)return r.join("&")},"s\
|
|
10
|
+
erializeQueryStrings"),w=s((e,t)=>{if(!M(e))return e instanceof Date?e.toISOString():
|
|
11
|
+
e instanceof Array&&(!t||!$(t)||!t.definitions?.encoded)?e.map(n=>w(n,t)).filter(
|
|
12
|
+
n=>B(n)).join(","):e instanceof Object?A(JSON.stringify(e)):`${e}`},"serializeQu\
|
|
13
|
+
eryStringValue");import{createTransformContext as u,transform as f}from"@ez4/transform";import{validate as Q,
|
|
14
|
+
createValidatorContext as I,getUniqueErrorMessages as J}from"@ez4/validator";import{
|
|
15
|
+
isScalarSchema as q,NamingStyle as V}from"@ez4/schema";import{HttpBadRequestError as k}from"@ez4/gateway";var b=s((e,t,r)=>{if(!t||q(t))return{body:e.toString(),json:!1};let o=u({outputStyle:r?.
|
|
16
|
+
namingStyle,convert:!1}),n=f(e,t,o);return{body:JSON.stringify(n),json:!0}},"pre\
|
|
17
|
+
pareRequestBody"),Ct=s(async(e,t,r)=>{let o=r?.namingStyle,n=I({property:"$body",
|
|
18
|
+
inputStyle:o}),a=await Q(e,t,n);if(a.length){let i=J(a);throw new k("Malformed b\
|
|
19
|
+
ody payload.",i)}let p=u({convert:!1,inputStyle:o});return f(e,t,p)},"getRequest\
|
|
20
|
+
Body"),R=s((e,t,r)=>{if(!t||q(t))return e;let o=JSON.parse(e),n=u({outputStyle:V.
|
|
21
|
+
Preserve,inputStyle:r?.namingStyle,convert:!1});return f(o,t,n)},"prepareRespons\
|
|
22
|
+
eBody"),Et=s((e,t,r)=>{let o=r?.namingStyle,n=u({convert:!1,outputStyle:o});return f(
|
|
23
|
+
e,t,n)},"getResponseBody");import{createTransformContext as F,transform as D}from"@ez4/transform";import{validate as _,
|
|
24
|
+
getUniqueErrorMessages as G,createValidatorContext as K}from"@ez4/validator";import{
|
|
25
|
+
HttpBadRequestError as L}from"@ez4/gateway";var C=s((e,t)=>e.replaceAll(/\{(\w+)\}/g,(r,o)=>o in t?`${t[o]}`:`{${o}}`),"prep\
|
|
26
|
+
arePathParameters"),zt=s(async(e,t)=>{let r=D(e,t,F({convert:!1})),o=await _(r,t,
|
|
27
|
+
K({property:"$path"}));if(o.length){let n=G(o);throw new L("Malformed path param\
|
|
28
|
+
eters.",n)}return r},"getPathParameters");import{HttpBadRequestError as W,HttpUnauthorizedError as X,HttpForbiddenError as Y,
|
|
29
|
+
HttpNotFoundError as Z,HttpUnsupportedMediaTypeError as tt,HttpUnprocessableEntityError as et,
|
|
30
|
+
HttpError as rt}from"@ez4/gateway";var Nt=s(({status:e,message:t,details:r})=>({status:e,body:{message:t,details:r}}),
|
|
31
|
+
"getJsonError"),E=s((e,t,r)=>{switch(e){case 400:return new W(t,r);case 401:return new X(
|
|
32
|
+
t,r);case 403:return new Y(t,r);case 404:return new Z(t,r);case 415:return new tt(
|
|
33
|
+
t,r);case 422:return new et(t,r);default:return new rt(e,t,r)}},"getHttpExceptio\
|
|
34
|
+
n");var Ft=s((e,t,r)=>{let{parameters:o,query:n,querySchema:a,namingStyle:p}=r,c=o?C(
|
|
35
|
+
t,o):t,i=n&&T(n,a,{namingStyle:p}),m=[e];return c&&m.push(c),i&&m.push("?",i),m.
|
|
36
|
+
join("")},"getClientRequestUrl"),Dt=s(async(e,t,r)=>{let{authorization:o,headers:n,
|
|
37
|
+
body:a,bodySchema:p,responseSchema:c,namingStyle:i,timeout:m=20}=r,d=a?b(a,p,{namingStyle:i}):
|
|
38
|
+
void 0,l=new AbortController,j=setTimeout(()=>l?.abort("Request timed out"),m*1e3),
|
|
39
|
+
y=await fetch(e,{signal:l?.signal,body:d?.body,method:t,headers:{...n,...o&&{[o.
|
|
40
|
+
header]:o.value},...d?.json&&{"content-type":"application/json"}}});if(clearTimeout(
|
|
41
|
+
j),!y.ok){let h=await y.json();throw E(y.status,h.message,h.details)}let S=await y.
|
|
42
|
+
text();return{status:y.status,...S&&{body:R(S,c,{namingStyle:i})}}},"sendClientR\
|
|
43
|
+
equest");import{createTransformContext as ot,transform as nt}from"@ez4/transform";import{
|
|
44
|
+
validate as st,createValidatorContext as at,getUniqueErrorMessages as it}from"@ez4/validator";
|
|
45
|
+
import{HttpBadRequestError as ct}from"@ez4/gateway";var Xt=s(async(e,t)=>{let r=nt(e,t,ot({convert:!1})),o=await st(r,t,at({property:"\
|
|
46
|
+
$header"}));if(o.length){let n=it(o);throw new ct("Malformed request headers.",n)}
|
|
47
|
+
return r},"getHeaders");import{validate as pt,createValidatorContext as mt,getUniqueErrorMessages as yt}from"@ez4/validator";
|
|
48
|
+
import{HttpBadRequestError as ut}from"@ez4/gateway";var re=s(async(e,t)=>{let r=await pt(e,t,mt({property:"$identity"}));if(r.length){
|
|
49
|
+
let o=yt(r);throw new ut("Malformed authorizer identity.",o)}return e},"getIdent\
|
|
50
|
+
ity");export{Ft as getClientRequestUrl,Xt as getHeaders,E as getHttpException,re as getIdentity,
|
|
51
|
+
Nt as getJsonError,zt as getPathParameters,xt as getQueryStrings,Ct as getRequestBody,
|
|
52
|
+
Et as getResponseBody,C as preparePathParameters,T as prepareQueryStrings,b as prepareRequestBody,
|
|
53
|
+
R as prepareResponseBody,Dt as sendClientRequest};
|
|
50
54
|
//# sourceMappingURL=utils.mjs.map
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ez4/gateway",
|
|
3
3
|
"description": "EZ4: Components to build gateway services",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.35.0",
|
|
5
5
|
"author": "Silas B.",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"type": "module",
|
|
@@ -51,12 +51,12 @@
|
|
|
51
51
|
"live:publish": "npm run build && npm publish --access public"
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@ez4/common": "^0.
|
|
55
|
-
"@ez4/project": "^0.
|
|
56
|
-
"@ez4/reflection": "^0.
|
|
57
|
-
"@ez4/schema": "^0.
|
|
58
|
-
"@ez4/transform": "^0.
|
|
59
|
-
"@ez4/utils": "^0.
|
|
60
|
-
"@ez4/validator": "^0.
|
|
54
|
+
"@ez4/common": "^0.35.0",
|
|
55
|
+
"@ez4/project": "^0.35.0",
|
|
56
|
+
"@ez4/reflection": "^0.35.0",
|
|
57
|
+
"@ez4/schema": "^0.35.0",
|
|
58
|
+
"@ez4/transform": "^0.35.0",
|
|
59
|
+
"@ez4/utils": "^0.35.0",
|
|
60
|
+
"@ez4/validator": "^0.35.0"
|
|
61
61
|
}
|
|
62
62
|
}
|
package/dist/errors/context.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { IncompleteTypeError, InvalidTypeError } from '@ez4/common/library';
|
|
2
|
-
export declare class InvalidContextTypeError extends InvalidTypeError {
|
|
3
|
-
baseType: string;
|
|
4
|
-
constructor(baseType: string, fileName?: string);
|
|
5
|
-
}
|
|
6
|
-
export declare class IncompleteContextError extends IncompleteTypeError {
|
|
7
|
-
constructor(properties: string[], fileName?: string);
|
|
8
|
-
}
|
package/dist/utils/request.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { ClientRequest } from '../services/client';
|
|
2
|
-
export declare const prepareRequestUrl: (host: string, path: string, request: ClientRequest) => string;
|
|
3
|
-
export declare const sendClientRequest: (url: string, method: string, request: ClientRequest) => Promise<{
|
|
4
|
-
body?: any;
|
|
5
|
-
status: number;
|
|
6
|
-
}>;
|