@cryptexlabs/codex-nodejs-common 0.16.0 → 0.16.3

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/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cryptexlabs/codex-nodejs-common",
3
- "version": "0.16.0",
3
+ "version": "0.16.3",
4
4
  "description": "Common code for Codex framework",
5
5
  "main": "lib/src/index.js",
6
6
  "type": "commonjs",
@@ -126,7 +126,7 @@ let AuthfGuard = class AuthfGuard {
126
126
  }, this.config.blacklistRefreshIntervalInSeconds * 1000);
127
127
  }
128
128
  async _updateBlacklist(context) {
129
- var _a, _b, _c, _d, _e, _f;
129
+ var _a, _b, _c, _d, _e, _f, _g;
130
130
  const headers = this._getApiHeaders(context);
131
131
  context.logger.verbose(`Fetching blacklist`);
132
132
  const subjectBlacklistResponse = await axios_1.default.get(`/api/v1/blacklisted-subjects`, {
@@ -136,16 +136,17 @@ let AuthfGuard = class AuthfGuard {
136
136
  context.logger.verbose(`Blacklist response`, subjectBlacklistResponse.data);
137
137
  if (((_a = subjectBlacklistResponse.data) === null || _a === void 0 ? void 0 : _a.data) !== undefined &&
138
138
  Array.isArray((_b = subjectBlacklistResponse.data) === null || _b === void 0 ? void 0 : _b.data)) {
139
- if (this._blacklistedSubjects.length !== ((_c = subjectBlacklistResponse.data) === null || _c === void 0 ? void 0 : _c.data)) {
139
+ if (this._blacklistedSubjects.length !==
140
+ ((_d = (_c = subjectBlacklistResponse.data) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.length)) {
140
141
  context.logger.debug(`Got change in blacklist`, {
141
142
  old: this._blacklistedSubjects,
142
- new: (_d = subjectBlacklistResponse.data) === null || _d === void 0 ? void 0 : _d.data,
143
+ new: (_e = subjectBlacklistResponse.data) === null || _e === void 0 ? void 0 : _e.data,
143
144
  });
144
145
  }
145
146
  else if (this._blacklistedSubjects.length > 0) {
146
- context.logger.verbose(`Got blacklist`, (_e = subjectBlacklistResponse.data) === null || _e === void 0 ? void 0 : _e.data);
147
+ context.logger.verbose(`Got blacklist`, (_f = subjectBlacklistResponse.data) === null || _f === void 0 ? void 0 : _f.data);
147
148
  }
148
- this._blacklistedSubjects = (_f = subjectBlacklistResponse.data) === null || _f === void 0 ? void 0 : _f.data;
149
+ this._blacklistedSubjects = (_g = subjectBlacklistResponse.data) === null || _g === void 0 ? void 0 : _g.data;
149
150
  }
150
151
  }
151
152
  };
@@ -1 +1 @@
1
- {"version":3,"file":"authf.guard.js","sourceRoot":"","sources":["../../../src/auth/authf.guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authf.guard.js","sourceRoot":"","sources":["../../../src/auth/authf.guard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare function ApiMetaHeaders(): <TFunction extends Function, Y>(target: object | TFunction, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
1
+ export declare function ApiMetaHeaders(required?: boolean): <TFunction extends Function, Y>(target: object | TFunction, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
@@ -4,18 +4,22 @@ exports.ApiMetaHeaders = ApiMetaHeaders;
4
4
  const swagger_1 = require("@nestjs/swagger");
5
5
  const common_1 = require("@nestjs/common");
6
6
  const uuid_1 = require("uuid");
7
- function ApiMetaHeaders() {
7
+ function ApiMetaHeaders(required = undefined) {
8
8
  return (0, common_1.applyDecorators)(...[
9
9
  (0, swagger_1.ApiHeader)({
10
10
  name: "X-Correlation-Id",
11
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
11
+ required: required !== undefined
12
+ ? required
13
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
12
14
  schema: {
13
15
  example: (0, uuid_1.v4)(),
14
16
  },
15
17
  }),
16
18
  (0, swagger_1.ApiHeader)({
17
19
  name: "Accept-Language",
18
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
20
+ required: required !== undefined
21
+ ? required
22
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
19
23
  schema: {
20
24
  example: "en-US",
21
25
  },
@@ -23,7 +27,9 @@ function ApiMetaHeaders() {
23
27
  (0, swagger_1.ApiHeader)({
24
28
  name: "X-Started",
25
29
  description: "The time that the very first user initiated or time initiated event that eventually lead to this api being called was created",
26
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
30
+ required: required !== undefined
31
+ ? required
32
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
27
33
  schema: {
28
34
  example: new Date().toISOString(),
29
35
  },
@@ -31,7 +37,9 @@ function ApiMetaHeaders() {
31
37
  (0, swagger_1.ApiHeader)({
32
38
  name: "X-Context-Category",
33
39
  description: "A category for the context of the request. For example 'test' or 'performance test'",
34
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
40
+ required: required !== undefined
41
+ ? required
42
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
35
43
  schema: {
36
44
  example: "default",
37
45
  },
@@ -39,7 +47,9 @@ function ApiMetaHeaders() {
39
47
  (0, swagger_1.ApiHeader)({
40
48
  name: "X-Context-Id",
41
49
  description: "A unique context identifier used for correlating logs and metrics usually for performance or experimental testing",
42
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
50
+ required: required !== undefined
51
+ ? required
52
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
43
53
  schema: {
44
54
  example: "none",
45
55
  },
@@ -47,7 +57,9 @@ function ApiMetaHeaders() {
47
57
  (0, swagger_1.ApiHeader)({
48
58
  name: "X-Client-Id",
49
59
  description: "A unique identifier for the client to help identify exactly which application or third party is making the requests",
50
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
60
+ required: required !== undefined
61
+ ? required
62
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
51
63
  schema: {},
52
64
  examples: {
53
65
  UUIDV4: {
@@ -61,7 +73,9 @@ function ApiMetaHeaders() {
61
73
  (0, swagger_1.ApiHeader)({
62
74
  name: "X-Client-Name",
63
75
  description: "The name of the client",
64
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
76
+ required: required !== undefined
77
+ ? required
78
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
65
79
  schema: {
66
80
  example: "swagger",
67
81
  },
@@ -70,7 +84,9 @@ function ApiMetaHeaders() {
70
84
  name: "X-Client-Version",
71
85
  description: "The version of the client. If the client is making bad requests this helps " +
72
86
  "identify which version of the client is making the bad requests",
73
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
87
+ required: required !== undefined
88
+ ? required
89
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
74
90
  schema: {
75
91
  example: "0.3.6",
76
92
  },
@@ -78,7 +94,9 @@ function ApiMetaHeaders() {
78
94
  (0, swagger_1.ApiHeader)({
79
95
  name: "X-Client-Variant",
80
96
  description: "Usually an environment or build type such as dev, test, or prod",
81
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
97
+ required: required !== undefined
98
+ ? required
99
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
82
100
  schema: {
83
101
  example: "dev",
84
102
  },
@@ -86,7 +104,9 @@ function ApiMetaHeaders() {
86
104
  (0, swagger_1.ApiHeader)({
87
105
  name: "X-Created",
88
106
  description: "The time the client initiated the http request",
89
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
107
+ required: required !== undefined
108
+ ? required
109
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
90
110
  schema: {
91
111
  example: new Date().toISOString(),
92
112
  },
@@ -1 +1 @@
1
- {"version":3,"file":"api-meta-headers.js","sourceRoot":"","sources":["../../../src/decorator/api-meta-headers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-meta-headers.js","sourceRoot":"","sources":["../../../src/decorator/api-meta-headers.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ let ApiHeadersValidationMiddleware = class ApiHeadersValidationMiddleware {
24
24
  this.contextBuilder = contextBuilder;
25
25
  }
26
26
  use(req, res, next) {
27
+ var _a, _b, _c;
27
28
  const requiredHeaders = {
28
29
  "x-correlation-id": (context, correlationId) => {
29
30
  if (correlationId.trim() === "") {
@@ -123,6 +124,13 @@ let ApiHeadersValidationMiddleware = class ApiHeadersValidationMiddleware {
123
124
  if (this.config.apiPrefixes.some((prefix) => {
124
125
  return req.path.startsWith(`/${prefix}`);
125
126
  })) {
127
+ const outputParam = (_b = (_a = req === null || req === void 0 ? void 0 : req.query) === null || _a === void 0 ? void 0 : _a.output) !== null && _b !== void 0 ? _b : (_c = req === null || req === void 0 ? void 0 : req.query) === null || _c === void 0 ? void 0 : _c.output;
128
+ const isGetNonJson = ((req === null || req === void 0 ? void 0 : req.method) || "").toUpperCase() === "GET" &&
129
+ outputParam !== undefined &&
130
+ String(outputParam).toLowerCase() !== "json";
131
+ if (isGetNonJson) {
132
+ return next();
133
+ }
126
134
  const missingHeaders = Object.keys(requiredHeaders).filter((header) => !req.headers[header.toLowerCase()]);
127
135
  if (missingHeaders.length > 0) {
128
136
  throw new common_1.BadRequestException(`Missing required headers: ${missingHeaders.join(", ")}`);
@@ -1 +1 @@
1
- {"version":3,"file":"api-headers-validation.middleware.js","sourceRoot":"","sources":["../../../src/middleware/api-headers-validation.middleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-headers-validation.middleware.js","sourceRoot":"","sources":["../../../src/middleware/api-headers-validation.middleware.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export * from "./api-headers-validation.middleware";
2
2
  export * from "./forwarded-uri.middleware";
3
+ export * from "./query-authorization.middleware";
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./api-headers-validation.middleware"), exports);
18
18
  __exportStar(require("./forwarded-uri.middleware"), exports);
19
+ __exportStar(require("./query-authorization.middleware"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/middleware/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAoD;AACpD,6DAA2C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/middleware/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sEAAoD;AACpD,6DAA2C;AAC3C,mEAAiD"}
@@ -0,0 +1,4 @@
1
+ import { NestMiddleware } from "@nestjs/common";
2
+ export declare class QueryAuthorizationMiddleware implements NestMiddleware {
3
+ use(req: any, res: any, next: () => void): any;
4
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.QueryAuthorizationMiddleware = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ let QueryAuthorizationMiddleware = class QueryAuthorizationMiddleware {
12
+ use(req, res, next) {
13
+ var _a;
14
+ const queryAuth = (_a = req === null || req === void 0 ? void 0 : req.query) === null || _a === void 0 ? void 0 : _a.authorization;
15
+ if (typeof queryAuth === "string" && queryAuth.length > 0) {
16
+ req.headers.authorization = queryAuth;
17
+ }
18
+ next();
19
+ }
20
+ };
21
+ exports.QueryAuthorizationMiddleware = QueryAuthorizationMiddleware;
22
+ exports.QueryAuthorizationMiddleware = QueryAuthorizationMiddleware = __decorate([
23
+ (0, common_1.Injectable)()
24
+ ], QueryAuthorizationMiddleware);
25
+ //# sourceMappingURL=query-authorization.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-authorization.middleware.js","sourceRoot":"","sources":["../../../src/middleware/query-authorization.middleware.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4D;AASrD,IAAM,4BAA4B,GAAlC,MAAM,4BAA4B;IACvC,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAgB;;QACtC,MAAM,SAAS,GAAG,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,0CAAE,aAAa,CAAC;QAC5C,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;QACxC,CAAC;QAED,IAAI,EAAE,CAAC;IACT,CAAC;CACF,CAAA;AATY,oEAA4B;uCAA5B,4BAA4B;IADxC,IAAA,mBAAU,GAAE;GACA,4BAA4B,CASxC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cryptexlabs/codex-nodejs-common",
3
- "version": "0.16.0",
3
+ "version": "0.16.3",
4
4
  "description": "Common code for Codex framework",
5
5
  "main": "lib/src/index.js",
6
6
  "type": "commonjs",
@@ -161,7 +161,8 @@ export class AuthfGuard implements CanActivate {
161
161
  Array.isArray(subjectBlacklistResponse.data?.data)
162
162
  ) {
163
163
  if (
164
- this._blacklistedSubjects.length !== subjectBlacklistResponse.data?.data
164
+ this._blacklistedSubjects.length !==
165
+ subjectBlacklistResponse.data?.data?.length
165
166
  ) {
166
167
  context.logger.debug(`Got change in blacklist`, {
167
168
  old: this._blacklistedSubjects,
@@ -2,19 +2,25 @@ import { ApiHeader } from "@nestjs/swagger";
2
2
  import { applyDecorators } from "@nestjs/common";
3
3
  import { v4 as uuidV4 } from "uuid";
4
4
 
5
- export function ApiMetaHeaders() {
5
+ export function ApiMetaHeaders(required: boolean = undefined) {
6
6
  return applyDecorators(
7
7
  ...[
8
8
  ApiHeader({
9
9
  name: "X-Correlation-Id",
10
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
10
+ required:
11
+ required !== undefined
12
+ ? required
13
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
11
14
  schema: {
12
15
  example: uuidV4(),
13
16
  },
14
17
  }),
15
18
  ApiHeader({
16
19
  name: "Accept-Language",
17
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
20
+ required:
21
+ required !== undefined
22
+ ? required
23
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
18
24
  schema: {
19
25
  example: "en-US",
20
26
  },
@@ -23,7 +29,10 @@ export function ApiMetaHeaders() {
23
29
  name: "X-Started",
24
30
  description:
25
31
  "The time that the very first user initiated or time initiated event that eventually lead to this api being called was created",
26
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
32
+ required:
33
+ required !== undefined
34
+ ? required
35
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
27
36
  schema: {
28
37
  example: new Date().toISOString(),
29
38
  },
@@ -32,7 +41,10 @@ export function ApiMetaHeaders() {
32
41
  name: "X-Context-Category",
33
42
  description:
34
43
  "A category for the context of the request. For example 'test' or 'performance test'",
35
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
44
+ required:
45
+ required !== undefined
46
+ ? required
47
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
36
48
  schema: {
37
49
  example: "default",
38
50
  },
@@ -41,7 +53,10 @@ export function ApiMetaHeaders() {
41
53
  name: "X-Context-Id",
42
54
  description:
43
55
  "A unique context identifier used for correlating logs and metrics usually for performance or experimental testing",
44
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
56
+ required:
57
+ required !== undefined
58
+ ? required
59
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
45
60
  schema: {
46
61
  example: "none",
47
62
  },
@@ -50,7 +65,10 @@ export function ApiMetaHeaders() {
50
65
  name: "X-Client-Id",
51
66
  description:
52
67
  "A unique identifier for the client to help identify exactly which application or third party is making the requests",
53
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
68
+ required:
69
+ required !== undefined
70
+ ? required
71
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
54
72
  schema: {},
55
73
  examples: {
56
74
  UUIDV4: {
@@ -64,7 +82,10 @@ export function ApiMetaHeaders() {
64
82
  ApiHeader({
65
83
  name: "X-Client-Name",
66
84
  description: "The name of the client",
67
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
85
+ required:
86
+ required !== undefined
87
+ ? required
88
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
68
89
  schema: {
69
90
  example: "swagger",
70
91
  },
@@ -74,7 +95,10 @@ export function ApiMetaHeaders() {
74
95
  description:
75
96
  "The version of the client. If the client is making bad requests this helps " +
76
97
  "identify which version of the client is making the bad requests",
77
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
98
+ required:
99
+ required !== undefined
100
+ ? required
101
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
78
102
  schema: {
79
103
  example: "0.3.6",
80
104
  },
@@ -83,7 +107,10 @@ export function ApiMetaHeaders() {
83
107
  name: "X-Client-Variant",
84
108
  description:
85
109
  "Usually an environment or build type such as dev, test, or prod",
86
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
110
+ required:
111
+ required !== undefined
112
+ ? required
113
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
87
114
  schema: {
88
115
  example: "dev",
89
116
  },
@@ -91,7 +118,10 @@ export function ApiMetaHeaders() {
91
118
  ApiHeader({
92
119
  name: "X-Created",
93
120
  description: "The time the client initiated the http request",
94
- required: process.env.X_META_HEADERS_REQUIRED !== "false",
121
+ required:
122
+ required !== undefined
123
+ ? required
124
+ : process.env.X_META_HEADERS_REQUIRED !== "false",
95
125
  schema: {
96
126
  example: new Date().toISOString(),
97
127
  },
@@ -210,6 +210,16 @@ export class ApiHeadersValidationMiddleware implements NestMiddleware {
210
210
  return req.path.startsWith(`/${prefix}`);
211
211
  })
212
212
  ) {
213
+ // Ignore header validation for GET requests with non-JSON output
214
+ const outputParam = req?.query?.output ?? req?.query?.output;
215
+ const isGetNonJson =
216
+ (req?.method || "").toUpperCase() === "GET" &&
217
+ outputParam !== undefined &&
218
+ String(outputParam).toLowerCase() !== "json";
219
+
220
+ if (isGetNonJson) {
221
+ return next();
222
+ }
213
223
  const missingHeaders = Object.keys(requiredHeaders).filter(
214
224
  (header) => !req.headers[header.toLowerCase()]
215
225
  );
@@ -1,2 +1,3 @@
1
1
  export * from "./api-headers-validation.middleware";
2
2
  export * from "./forwarded-uri.middleware";
3
+ export * from "./query-authorization.middleware";
@@ -0,0 +1,19 @@
1
+ import { Injectable, NestMiddleware } from "@nestjs/common";
2
+
3
+ /**
4
+ * QueryAuthorizationMiddleware
5
+ * If a request contains a query parameter `authorization`, copy its value
6
+ * into the `authorization` header so downstream guards/interceptors can
7
+ * rely on a standard header location.
8
+ */
9
+ @Injectable()
10
+ export class QueryAuthorizationMiddleware implements NestMiddleware {
11
+ use(req: any, res: any, next: () => void): any {
12
+ const queryAuth = req?.query?.authorization;
13
+ if (typeof queryAuth === "string" && queryAuth.length > 0) {
14
+ req.headers.authorization = queryAuth;
15
+ }
16
+
17
+ next();
18
+ }
19
+ }