@tstdl/base 0.71.24 → 0.71.27
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/api/client/client.js +5 -2
- package/api/client/client.js.map +1 -1
- package/api/server/gateway.js +7 -2
- package/api/server/gateway.js.map +1 -1
- package/api/server/middlewares/cors.middleware.js +5 -10
- package/api/server/middlewares/cors.middleware.js.map +1 -1
- package/api/types.d.ts +1 -1
- package/package.json +2 -2
package/api/client/client.js
CHANGED
|
@@ -12,7 +12,7 @@ exports.httpClientSymbol = Symbol('ApiTransport');
|
|
|
12
12
|
exports.apiDefinitionSymbol = Symbol('ApiDefinition');
|
|
13
13
|
// eslint-disable-next-line max-lines-per-function
|
|
14
14
|
function compileClient(definition, options = {}) {
|
|
15
|
-
var _a, _b, _c, _d, _e;
|
|
15
|
+
var _a, _b, _c, _d, _e, _f;
|
|
16
16
|
const { resource: path, endpoints } = definition;
|
|
17
17
|
const constructedApiName = ((_b = (_a = path[0]) === null || _a === void 0 ? void 0 : _a.toUpperCase()) !== null && _b !== void 0 ? _b : '') + path.slice(1);
|
|
18
18
|
const apiName = `${constructedApiName}ApiClient`;
|
|
@@ -35,9 +35,11 @@ function compileClient(definition, options = {}) {
|
|
|
35
35
|
const prefix = (_c = options.prefix) !== null && _c !== void 0 ? _c : 'api/';
|
|
36
36
|
for (const [name, config] of endpointsEntries) {
|
|
37
37
|
const version = ((0, type_guards_1.isUndefined)(config.version) ? [1] : (0, array_1.toArray)(config.version)).sort(comparison_1.compareByValueDescending)[0];
|
|
38
|
-
const
|
|
38
|
+
const methods = (0, type_guards_1.isArray)(config.method) ? config.method : [(_d = config.method) !== null && _d !== void 0 ? _d : 'GET'];
|
|
39
39
|
const versionPrefix = (0, type_guards_1.isNull)(config.version) ? '' : `v${version}/`;
|
|
40
40
|
const resource = (config.resource == types_1.rootResource) ? `${prefix}${versionPrefix}${base}` : `${prefix}${versionPrefix}${base}/${(_e = config.resource) !== null && _e !== void 0 ? _e : name}`;
|
|
41
|
+
const hasGet = methods.includes('GET');
|
|
42
|
+
const fallbackMethod = (_f = methods.filter((method) => method != 'GET')[0]) !== null && _f !== void 0 ? _f : 'GET';
|
|
41
43
|
const apiEndpointFunction = {
|
|
42
44
|
async [name](parameters) {
|
|
43
45
|
const responseType = (config.result instanceof schema_1.AsyncIterableSchemaValidator) ? 'stream'
|
|
@@ -48,6 +50,7 @@ function compileClient(definition, options = {}) {
|
|
|
48
50
|
const context = {
|
|
49
51
|
endpoint: config
|
|
50
52
|
};
|
|
53
|
+
const method = (hasGet && (0, type_guards_1.isUndefined)(parameters)) ? 'GET' : fallbackMethod;
|
|
51
54
|
const request = new client_1.HttpClientRequest({
|
|
52
55
|
method,
|
|
53
56
|
url: resource,
|
package/api/client/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../source/api/client/client.ts"],"names":[],"mappings":";;;AACA,+CAA6D;AAE7D,8CAA8D;AAE9D,yCAA0G;AAE1G,6CAAwC;AACxC,uDAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../source/api/client/client.ts"],"names":[],"mappings":";;;AACA,+CAA6D;AAE7D,8CAA8D;AAE9D,yCAA0G;AAE1G,6CAAwC;AACxC,uDAA8D;AAC9D,yDAAmE;AAEnE,oCAAwC;AAe3B,QAAA,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AAC1C,QAAA,mBAAmB,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAE3D,kDAAkD;AAClD,SAAgB,aAAa,CAA0B,UAAa,EAAE,UAAyB,EAAE;;IAC/F,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;IACjD,MAAM,kBAAkB,GAAG,CAAC,MAAA,MAAA,IAAI,CAAC,CAAC,CAAC,0CAAE,WAAW,EAAE,mCAAI,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,GAAG,kBAAkB,WAAW,CAAC;IAEjD,MAAM,GAAG,GAAG;QACV,CAAC,OAAO,CAAC,EAAE;YAKT,YAAY,UAAsB;gBAChC,IAAI,CAAC,wBAAgB,CAAC,GAAG,UAAU,CAAC;gBACpC,IAAI,CAAC,2BAAmB,CAAC,GAAG,UAAU,CAAC;YACzC,CAAC;SACF;KACF,CAAC,OAAO,CAAE,CAAC;IAEZ,qBAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE;QAC/B,UAAU,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;YAChC,MAAM,UAAU,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,OAAO,CAAC,OAAO,CAAC,mBAAU,CAAC,CAAC;YAC3D,OAAO,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;QAC7B,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEnD,MAAM,IAAI,GAAG,IAAI,CAAC;IAClB,MAAM,MAAM,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,MAAM,CAAC;IAExC,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,gBAAgB,EAAE;QAC7C,MAAM,OAAO,GAAG,CAAC,IAAA,yBAAW,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,eAAO,EAAC,MAAM,CAAC,OAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,qCAAwB,CAAC,CAAC,CAAC,CAAE,CAAC;QAC3H,MAAM,OAAO,GAAG,IAAA,qBAAO,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAA,MAAM,CAAC,MAAM,mCAAI,KAAK,CAAC,CAAC;QAClF,MAAM,aAAa,GAAG,IAAA,oBAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC;QACnE,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,oBAAY,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,aAAa,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,aAAa,GAAG,IAAI,IAAI,MAAA,MAAM,CAAC,QAAQ,mCAAI,IAAI,EAAE,CAAC;QAExJ,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,cAAc,GAAG,MAAA,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,mCAAI,KAAK,CAAC;QAE/E,MAAM,mBAAmB,GAAG;YAC1B,KAAK,CAAC,CAAC,IAAI,CAAC,CAAiC,UAAkC;gBAC7E,MAAM,YAAY,GACd,CAAC,MAAM,CAAC,MAAM,YAAY,qCAA4B,CAAC,CAAC,CAAC,CAAC,QAAQ;oBAClE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,YAAY,8BAAqB,CAAC,CAAC,CAAC,CAAC,MAAM;wBACzD,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,YAAY,kCAAyB,CAAC,CAAC,CAAC,CAAC,QAAQ;4BAC/D,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM;gCACrC,CAAC,CAAC,MAAM,CAAC;gBAEnB,MAAM,OAAO,GAAgC;oBAC3C,QAAQ,EAAE,MAAM;iBACjB,CAAC;gBAEF,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,IAAA,yBAAW,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC;gBAE5E,MAAM,OAAO,GAAG,IAAI,0BAAiB,CAAC;oBACpC,MAAM;oBACN,GAAG,EAAE,QAAQ;oBACb,YAAY;oBACZ,UAAU;oBACV,OAAO;iBACR,CAAC,CAAC;gBAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,wBAAgB,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBAClE,OAAO,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAC1C,CAAC;SACF,CAAC,IAAI,CAAC,CAAC;QAER,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE;YACzC,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,mBAAmB;SAC3B,CAAC,CAAC;KACJ;IAED,OAAO,GAA8B,CAAC;AACxC,CAAC;AA5ED,sCA4EC;AAED,KAAK,UAAU,OAAO,CAAC,QAA4B,EAAE,MAA+C;IAClG,IAAI,IAAA,yBAAW,EAAC,MAAM,CAAC,EAAE;QACvB,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC1C,CAAC"}
|
package/api/server/gateway.js
CHANGED
|
@@ -65,7 +65,10 @@ let ApiGateway = ApiGateway_1 = class ApiGateway {
|
|
|
65
65
|
for (const version of versionArray) {
|
|
66
66
|
const versionPrefix = (0, type_guards_1.isNull)(version) ? '' : `v${version}/`;
|
|
67
67
|
const resource = (endpointDefinition.resource == types_1.rootResource) ? `${this.prefix}${versionPrefix}${base}` : `${this.prefix}${versionPrefix}${base}/${(_a = endpointDefinition.resource) !== null && _a !== void 0 ? _a : name}`;
|
|
68
|
-
const
|
|
68
|
+
const methods = (0, type_guards_1.isArray)(endpointDefinition.method) ? endpointDefinition.method : [(_b = endpointDefinition.method) !== null && _b !== void 0 ? _b : 'GET'];
|
|
69
|
+
if (methods.length == 0) {
|
|
70
|
+
throw new Error(`No method provided for resource ${resource}`);
|
|
71
|
+
}
|
|
69
72
|
let resourceApis = this.apis.get(resource);
|
|
70
73
|
if ((0, type_guards_1.isUndefined)(resourceApis)) {
|
|
71
74
|
resourceApis = {
|
|
@@ -86,7 +89,9 @@ let ApiGateway = ApiGateway_1 = class ApiGateway {
|
|
|
86
89
|
this.apis.set(resource, resourceApis);
|
|
87
90
|
}
|
|
88
91
|
const endpointImplementation = (_d = (_c = implementation[name]) === null || _c === void 0 ? void 0 : _c.bind(implementation)) !== null && _d !== void 0 ? _d : (0, helpers_1.deferThrow)(new error_1.NotImplementedError(`endpoint ${name} for resource ${resource} not implemented`));
|
|
89
|
-
|
|
92
|
+
for (const method of methods) {
|
|
93
|
+
resourceApis.endpoints.set(method, { definition: endpointDefinition, implementation: endpointImplementation });
|
|
94
|
+
}
|
|
90
95
|
}
|
|
91
96
|
}
|
|
92
97
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../../source/api/server/gateway.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,+CAA+F;AAC/F,uCAA8E;AAE9E,8CAAmD;AAGnD,yCAAkC;AAClC,yCAAmG;AAEnG,6CAAwC;AACxC,iDAAqD;AAErD,uDAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../../source/api/server/gateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,21 +4,16 @@ exports.corsMiddleware = void 0;
|
|
|
4
4
|
const type_guards_1 = require("../../../utils/type-guards");
|
|
5
5
|
// eslint-disable-next-line max-statements
|
|
6
6
|
async function corsMiddleware(request, next, context) {
|
|
7
|
-
var _a;
|
|
7
|
+
var _a, _b;
|
|
8
8
|
const response = await next(request);
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
if (corses.length == 0) {
|
|
9
|
+
const requestMethod = request.headers.tryGetSingle('Access-Control-Request-Method');
|
|
10
|
+
const cors = (_a = context.api.endpoints.get(requestMethod)) === null || _a === void 0 ? void 0 : _a.definition.cors;
|
|
11
|
+
if ((0, type_guards_1.isUndefined)(cors)) {
|
|
13
12
|
return response;
|
|
14
13
|
}
|
|
15
|
-
if (corses.length > 1) {
|
|
16
|
-
throw new Error('cors can only be defined once per resource');
|
|
17
|
-
}
|
|
18
|
-
const cors = corses[0];
|
|
19
14
|
if (request.method == 'OPTIONS') {
|
|
20
15
|
const allowMethods = [...context.api.endpoints.keys()].join(', ');
|
|
21
|
-
response.headers.setIfMissing('Access-Control-Allow-Methods', (
|
|
16
|
+
response.headers.setIfMissing('Access-Control-Allow-Methods', (_b = cors.accessControlAllowMethods) !== null && _b !== void 0 ? _b : allowMethods);
|
|
22
17
|
if (cors.accessControlAllowCredentials == true) {
|
|
23
18
|
response.headers.setIfMissing('Access-Control-Allow-Credentials', 'true');
|
|
24
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cors.middleware.js","sourceRoot":"","sources":["../../../../source/api/server/middlewares/cors.middleware.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"cors.middleware.js","sourceRoot":"","sources":["../../../../source/api/server/middlewares/cors.middleware.ts"],"names":[],"mappings":";;;AAGA,4DAA6D;AAG7D,0CAA0C;AACnC,KAAK,UAAU,cAAc,CAAC,OAA0B,EAAE,IAAgE,EAAE,OAAoC;;IACrK,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;IAErC,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,+BAA+B,CAAC,CAAC;IACpF,MAAM,IAAI,GAAG,MAAA,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,aAAkC,CAAC,0CAAE,UAAU,CAAC,IAAI,CAAC;IAE5F,IAAI,IAAA,yBAAW,EAAC,IAAI,CAAC,EAAE;QACrB,OAAO,QAAQ,CAAC;KACjB;IAED,IAAI,OAAO,CAAC,MAAM,IAAI,SAAS,EAAE;QAC/B,MAAM,YAAY,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,8BAA8B,EAAE,MAAA,IAAI,CAAC,yBAAyB,mCAAI,YAAY,CAAC,CAAC;QAE9G,IAAI,IAAI,CAAC,6BAA6B,IAAI,IAAI,EAAE;YAC9C,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;SAC3E;QAED,IAAI,IAAA,uBAAS,EAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE;YAC7C,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,8BAA8B,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC;SAC/F;QAED,IAAI,IAAA,uBAAS,EAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE;YAC9C,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,+BAA+B,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC;SACjG;QAED,IAAI,IAAA,uBAAS,EAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE;YACvC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,wBAAwB,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;SACnF;KACF;IAED,IAAI,IAAA,uBAAS,EAAC,IAAI,CAAC,wBAAwB,CAAC,EAAE;QAC5C,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,6BAA6B,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;KAC7F;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AApCD,wCAoCC"}
|
package/api/types.d.ts
CHANGED
|
@@ -29,7 +29,7 @@ export declare type ApiEndpointDefinitionCors = {
|
|
|
29
29
|
accessControlMaxAge?: number;
|
|
30
30
|
};
|
|
31
31
|
export declare type ApiEndpointDefinition = {
|
|
32
|
-
method?: ApiEndpointMethod
|
|
32
|
+
method?: OneOrMany<ApiEndpointMethod>;
|
|
33
33
|
resource?: typeof rootResource | string;
|
|
34
34
|
version?: OneOrMany<number | null>;
|
|
35
35
|
parameters?: ObjectSchemaValidator<any>;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tstdl/base",
|
|
3
|
-
"version": "0.71.
|
|
3
|
+
"version": "0.71.27",
|
|
4
4
|
"author": "Patrick Hein",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"typescript-transform-paths": "3.3"
|
|
36
36
|
},
|
|
37
37
|
"peerDependencies": {
|
|
38
|
-
"@elastic/elasticsearch": "^8.2",
|
|
38
|
+
"@elastic/elasticsearch": "^8.2.0-patch.1",
|
|
39
39
|
"@koa/router": "^10.1",
|
|
40
40
|
"@tstdl/angular": "^0.10",
|
|
41
41
|
"chroma-js": "^2.4",
|