@6thbridge/utils 0.1.16 → 0.2.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/lib/actions/charge.action.d.ts +3 -1
- package/lib/actions/charge.action.js +127 -10
- package/lib/actions/charge.action.js.map +1 -1
- package/lib/actions/currency.action.d.ts +1 -0
- package/lib/actions/currency.action.js +38 -23
- package/lib/actions/currency.action.js.map +1 -1
- package/lib/actions/index.d.ts +3 -3
- package/lib/actions/index.js +1 -1
- package/lib/actions/index.js.map +1 -1
- package/lib/actions/phone-number.action.d.ts +2 -2
- package/lib/actions/phone-number.action.js +1 -1
- package/lib/actions/phone-number.action.js.map +1 -1
- package/lib/brokers/index.d.ts +3 -3
- package/lib/brokers/index.js.map +1 -1
- package/lib/brokers/kafka.js +43 -33
- package/lib/brokers/kafka.js.map +1 -1
- package/lib/brokers/kafka.test.js +17 -18
- package/lib/brokers/kafka.test.js.map +1 -1
- package/lib/brokers/rabbitmq.d.ts +2 -2
- package/lib/brokers/rabbitmq.js +35 -37
- package/lib/brokers/rabbitmq.js.map +1 -1
- package/lib/cache/redis.d.ts +1 -1
- package/lib/cache/redis.js +14 -11
- package/lib/cache/redis.js.map +1 -1
- package/lib/database/MongoDBRepository.js +2 -2
- package/lib/database/MongoDBRepository.js.map +1 -1
- package/lib/database/MongoDBTypeRepository.js +2 -2
- package/lib/database/MongoDBTypeRepository.js.map +1 -1
- package/lib/database/index.d.ts +2 -2
- package/lib/database/index.js.map +1 -1
- package/lib/database/query.js +16 -18
- package/lib/database/query.js.map +1 -1
- package/lib/exceptions/custom.exception.js +1 -1
- package/lib/exceptions/custom.exception.js.map +1 -1
- package/lib/helpers/errors.d.ts +1 -1
- package/lib/helpers/errors.js +7 -7
- package/lib/helpers/errors.js.map +1 -1
- package/lib/helpers/index.d.ts +9 -9
- package/lib/helpers/index.js +30 -24
- package/lib/helpers/index.js.map +1 -1
- package/lib/helpers/utils.d.ts +1 -1
- package/lib/helpers/utils.js +3 -4
- package/lib/helpers/utils.js.map +1 -1
- package/lib/index.d.ts +16 -16
- package/lib/index.js +10 -10
- package/lib/index.js.map +1 -1
- package/lib/logger/index.js.map +1 -1
- package/lib/logger/logger-test.js +14 -14
- package/lib/logger/logger-test.js.map +1 -1
- package/lib/logger/logger.d.ts +2 -2
- package/lib/logger/logger.js +17 -18
- package/lib/logger/logger.js.map +1 -1
- package/lib/logger/null-logger.d.ts +1 -1
- package/lib/logger/null-logger.js +11 -22
- package/lib/logger/null-logger.js.map +1 -1
- package/lib/middlewares/common.js +47 -38
- package/lib/middlewares/common.js.map +1 -1
- package/lib/middlewares/express.d.ts +1 -1
- package/lib/middlewares/express.js +17 -17
- package/lib/middlewares/express.js.map +1 -1
- package/lib/middlewares/fastify.js +10 -10
- package/lib/middlewares/fastify.js.map +1 -1
- package/lib/middlewares/index.d.ts +3 -3
- package/lib/middlewares/index.js.map +1 -1
- package/lib/monitoring/index.d.ts +1 -1
- package/lib/monitoring/index.js +3 -3
- package/lib/monitoring/index.js.map +1 -1
- package/lib/responses/express.d.ts +2 -2
- package/lib/responses/express.js +7 -7
- package/lib/responses/express.js.map +1 -1
- package/lib/responses/fastify.js +4 -4
- package/lib/responses/fastify.js.map +1 -1
- package/lib/responses/index.d.ts +2 -2
- package/lib/responses/index.js.map +1 -1
- package/lib/secrets/aws-secret.d.ts +1 -1
- package/lib/secrets/aws-secret.js +4 -4
- package/lib/secrets/aws-secret.js.map +1 -1
- package/lib/secrets/index.js +3 -3
- package/lib/secrets/index.js.map +1 -1
- package/lib/test/actions/charge.action.test.js +116 -14
- package/lib/test/actions/charge.action.test.js.map +1 -1
- package/lib/test/database/test.spec.js +24 -24
- package/lib/test/database/test.spec.js.map +1 -1
- package/lib/test/helpers/PhoneNumber.spec.js +17 -17
- package/lib/test/helpers/PhoneNumber.spec.js.map +1 -1
- package/lib/test/logger/test.spec.js +15 -15
- package/lib/test/logger/test.spec.js.map +1 -1
- package/lib/test/types/context.entity.test.js +9 -9
- package/lib/test/types/context.entity.test.js.map +1 -1
- package/lib/translations/index.js +10 -10
- package/lib/translations/index.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types/broker.entity.js.map +1 -1
- package/lib/types/client.entity.js.map +1 -1
- package/lib/types/context.entity.d.ts +3 -3
- package/lib/types/context.entity.js +19 -17
- package/lib/types/context.entity.js.map +1 -1
- package/lib/types/index.d.ts +46 -9
- package/lib/types/index.js +15 -1
- package/lib/types/index.js.map +1 -1
- package/lib/types/user.entity.js.map +1 -1
- package/package.json +1 -1
- package/readme.md +31 -18
package/lib/logger/logger.js
CHANGED
|
@@ -8,15 +8,15 @@ const index_1 = require("./index");
|
|
|
8
8
|
const lodash_1 = require("lodash");
|
|
9
9
|
const axios_1 = __importDefault(require("axios"));
|
|
10
10
|
const _axios = axios_1.default.create({
|
|
11
|
-
baseURL: process.env.UTILITY_SERVICE_URL ||
|
|
11
|
+
baseURL: process.env.UTILITY_SERVICE_URL || 'http://utility-service',
|
|
12
12
|
headers: {
|
|
13
|
-
source:
|
|
14
|
-
}
|
|
13
|
+
source: 'internal',
|
|
14
|
+
},
|
|
15
15
|
});
|
|
16
16
|
class LoggerProps {
|
|
17
17
|
constructor() {
|
|
18
|
-
this.service = process.env.APP_NAME ||
|
|
19
|
-
this.logsQueue =
|
|
18
|
+
this.service = process.env.APP_NAME || 'app';
|
|
19
|
+
this.logsQueue = 'platform.logs';
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
exports.LoggerProps = LoggerProps;
|
|
@@ -56,44 +56,43 @@ class Logger {
|
|
|
56
56
|
payload.stack = trace || new Error().stack;
|
|
57
57
|
}
|
|
58
58
|
if (!(0, lodash_1.isEmpty)(this.broker)) {
|
|
59
|
-
(_a = this.broker) === null || _a === void 0 ? void 0 : _a.sendToQueue(this.props.logsQueue ||
|
|
59
|
+
(_a = this.broker) === null || _a === void 0 ? void 0 : _a.sendToQueue(this.props.logsQueue || 'platform.logs', payload).catch((e) => {
|
|
60
60
|
console.error(e.message, payload);
|
|
61
61
|
return this.postHttp(payload);
|
|
62
62
|
});
|
|
63
|
-
this.out(
|
|
63
|
+
this.out('====== log sent via broker =====');
|
|
64
64
|
return;
|
|
65
65
|
}
|
|
66
66
|
return this.postHttp(payload);
|
|
67
67
|
}
|
|
68
68
|
postHttp(payload) {
|
|
69
|
-
_axios.post(
|
|
70
|
-
.catch(error => {
|
|
69
|
+
_axios.post('/v1/logs', payload).catch((error) => {
|
|
71
70
|
console.error(error.message, payload);
|
|
72
71
|
});
|
|
73
|
-
this.out(
|
|
72
|
+
this.out('====== log sent via http =====');
|
|
74
73
|
return;
|
|
75
74
|
}
|
|
76
|
-
error(message, meta = {}, trace =
|
|
77
|
-
console.error(
|
|
75
|
+
error(message, meta = {}, trace = '') {
|
|
76
|
+
console.error('error', message, meta);
|
|
78
77
|
return this.log(index_1.LOG_LEVEL.ERROR, message, meta, trace);
|
|
79
78
|
}
|
|
80
|
-
warn(message, meta = {}, trace =
|
|
79
|
+
warn(message, meta = {}, trace = '') {
|
|
81
80
|
return this.log(index_1.LOG_LEVEL.WARN, message, meta, trace);
|
|
82
81
|
}
|
|
83
|
-
debug(message, meta = {}, trace =
|
|
82
|
+
debug(message, meta = {}, trace = '') {
|
|
84
83
|
return this.log(index_1.LOG_LEVEL.DEBUG, message, meta, trace);
|
|
85
84
|
}
|
|
86
|
-
info(message, meta = {}, trace =
|
|
85
|
+
info(message, meta = {}, trace = '') {
|
|
87
86
|
return this.log(index_1.LOG_LEVEL.INFO, message, meta, trace);
|
|
88
87
|
}
|
|
89
|
-
critical(message, meta, trace =
|
|
88
|
+
critical(message, meta, trace = '') {
|
|
90
89
|
meta.critical = 1;
|
|
91
|
-
console.error(
|
|
90
|
+
console.error('critical', message, meta, trace);
|
|
92
91
|
return this.log(index_1.LOG_LEVEL.ERROR, message, meta, trace);
|
|
93
92
|
}
|
|
94
93
|
exception(error, meta = {}) {
|
|
95
94
|
meta.exception = 1;
|
|
96
|
-
console.error(
|
|
95
|
+
console.error('exception', error, meta);
|
|
97
96
|
return this.log(index_1.LOG_LEVEL.ERROR, error.message, meta, error.stack);
|
|
98
97
|
}
|
|
99
98
|
out(...args) {
|
package/lib/logger/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,28 +2,17 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.NullLogger = void 0;
|
|
4
4
|
class NullLogger {
|
|
5
|
-
configureLogger(prop) {
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
log(level, message, data, trace) {
|
|
18
|
-
}
|
|
19
|
-
out(...args) {
|
|
20
|
-
}
|
|
21
|
-
setBroker(broker) {
|
|
22
|
-
}
|
|
23
|
-
setProps(props) {
|
|
24
|
-
}
|
|
25
|
-
warn(message, meta, trace) {
|
|
26
|
-
}
|
|
5
|
+
configureLogger(prop) { }
|
|
6
|
+
critical(message, meta, trace) { }
|
|
7
|
+
debug(message, meta, trace) { }
|
|
8
|
+
error(message, meta, trace) { }
|
|
9
|
+
exception(error, meta) { }
|
|
10
|
+
info(message, meta, trace) { }
|
|
11
|
+
log(level, message, data, trace) { }
|
|
12
|
+
out(...args) { }
|
|
13
|
+
setBroker(broker) { }
|
|
14
|
+
setProps(props) { }
|
|
15
|
+
warn(message, meta, trace) { }
|
|
27
16
|
}
|
|
28
17
|
exports.NullLogger = NullLogger;
|
|
29
18
|
//# sourceMappingURL=null-logger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"null-logger.js","sourceRoot":"","sources":["../../src/logger/null-logger.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"null-logger.js","sourceRoot":"","sources":["../../src/logger/null-logger.ts"],"names":[],"mappings":";;;AAEA,MAAa,UAAU;IACrB,eAAe,CAAC,IAAS,IAAQ,CAAC;IAElC,QAAQ,CAAC,OAAe,EAAE,IAAS,EAAE,KAAc,IAAQ,CAAC;IAE5D,KAAK,CAAC,OAAe,EAAE,IAAS,EAAE,KAAc,IAAQ,CAAC;IAEzD,KAAK,CAAC,OAAe,EAAE,IAAS,EAAE,KAAc,IAAQ,CAAC;IAEzD,SAAS,CAAC,KAAY,EAAE,IAAS,IAAQ,CAAC;IAE1C,IAAI,CAAC,OAAe,EAAE,IAAS,EAAE,KAAc,IAAQ,CAAC;IAExD,GAAG,CAAC,KAAgB,EAAE,OAAe,EAAE,IAAS,EAAE,KAAc,IAAQ,CAAC;IAEzE,GAAG,CAAC,GAAG,IAAS,IAAQ,CAAC;IAEzB,SAAS,CAAC,MAAW,IAAQ,CAAC;IAE9B,QAAQ,CAAC,KAAU,IAAQ,CAAC;IAE5B,IAAI,CAAC,OAAe,EAAE,IAAS,EAAE,KAAc,IAAQ,CAAC;CACzD;AAtBD,gCAsBC"}
|
|
@@ -20,15 +20,15 @@ const logger_1 = require("../logger/logger");
|
|
|
20
20
|
const apitoolkit_express_1 = __importDefault(require("apitoolkit-express"));
|
|
21
21
|
const path_to_regexp_1 = require("path-to-regexp");
|
|
22
22
|
const _axios = axios_1.default.create({
|
|
23
|
-
baseURL: process.env.USER_SERVICE_URL ||
|
|
23
|
+
baseURL: process.env.USER_SERVICE_URL || 'http://user-service',
|
|
24
24
|
headers: {
|
|
25
|
-
source:
|
|
26
|
-
}
|
|
25
|
+
source: 'internal',
|
|
26
|
+
},
|
|
27
27
|
});
|
|
28
28
|
exports.AUTHENTICATION_TYPES = {
|
|
29
|
-
CLIENT_ID:
|
|
30
|
-
CLIENT_SECRET:
|
|
31
|
-
JWT:
|
|
29
|
+
CLIENT_ID: 'client-id',
|
|
30
|
+
CLIENT_SECRET: 'client-secret',
|
|
31
|
+
JWT: 'jwt',
|
|
32
32
|
};
|
|
33
33
|
function getContext(req, supportedAuthenticationType, permissions) {
|
|
34
34
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -36,38 +36,39 @@ function getContext(req, supportedAuthenticationType, permissions) {
|
|
|
36
36
|
try {
|
|
37
37
|
let context = types_1.ContextEntity.fromRequest(req);
|
|
38
38
|
if (context.requestSource === types_1.INTERNAL_REQUEST_SOURCE) {
|
|
39
|
-
context.logger.out(
|
|
39
|
+
context.logger.out('Auth: =================== internal request =============');
|
|
40
40
|
return { data: context };
|
|
41
41
|
}
|
|
42
42
|
if (req.headers.isExcluded || req.headers['is-excluded']) {
|
|
43
|
-
context.logger.out(
|
|
43
|
+
context.logger.out('Auth: =================== internal request =============');
|
|
44
44
|
return { data: context };
|
|
45
45
|
}
|
|
46
46
|
if (supportedAuthenticationType == null || (0, lodash_1.isEmpty)(supportedAuthenticationType)) {
|
|
47
|
-
context.logger.out(
|
|
47
|
+
context.logger.out('Auth: Empty supportedAuthenticationType');
|
|
48
48
|
return { data: context };
|
|
49
49
|
}
|
|
50
|
-
if (!context.authenticationType ||
|
|
50
|
+
if (!context.authenticationType ||
|
|
51
|
+
!supportedAuthenticationType.includes(context.authenticationType)) {
|
|
51
52
|
context.logger.out(context.authenticationType, supportedAuthenticationType, req.headers);
|
|
52
|
-
throw new Error(
|
|
53
|
+
throw new Error('invalid authentication type for this request');
|
|
53
54
|
}
|
|
54
55
|
try {
|
|
55
|
-
if (req.headers[
|
|
56
|
-
context.contextClient = JSON.parse(req.headers[
|
|
57
|
-
if (req.headers[
|
|
58
|
-
context.requestClient = JSON.parse(req.headers[
|
|
56
|
+
if (req.headers['context-client'])
|
|
57
|
+
context.contextClient = JSON.parse(req.headers['context-client']);
|
|
58
|
+
if (req.headers['request-client'])
|
|
59
|
+
context.requestClient = JSON.parse(req.headers['request-client']);
|
|
59
60
|
//process users
|
|
60
|
-
if (req.headers[
|
|
61
|
-
context.requestUser = JSON.parse(req.headers[
|
|
62
|
-
if (req.headers[
|
|
63
|
-
context.contextUser = JSON.parse(req.headers[
|
|
61
|
+
if (req.headers['request-user'])
|
|
62
|
+
context.requestUser = JSON.parse(req.headers['request-user']);
|
|
63
|
+
if (req.headers['context-user'])
|
|
64
|
+
context.contextUser = JSON.parse(req.headers['context-user']);
|
|
64
65
|
}
|
|
65
66
|
catch (e) {
|
|
66
67
|
context.logger.exception(e);
|
|
67
68
|
}
|
|
68
69
|
//filter out non JWT
|
|
69
70
|
if (context.authenticationType != exports.AUTHENTICATION_TYPES.JWT) {
|
|
70
|
-
context.logger.out(
|
|
71
|
+
context.logger.out('Auth: Non JWT authenticationType exit');
|
|
71
72
|
return { data: context };
|
|
72
73
|
}
|
|
73
74
|
if (!(permissions === null || permissions === void 0 ? void 0 : permissions.length)) {
|
|
@@ -75,32 +76,34 @@ function getContext(req, supportedAuthenticationType, permissions) {
|
|
|
75
76
|
return { data: context };
|
|
76
77
|
}
|
|
77
78
|
context.logger.out(`=================== middleware authorizing ${context.request.method} request to ${context.request.url} =============`);
|
|
78
|
-
const { data } = yield _axios.post(
|
|
79
|
+
const { data } = yield _axios.post('/v1/auths/validate-user-permission', {
|
|
79
80
|
ip: req.ip,
|
|
80
|
-
requestClient: req.headers[
|
|
81
|
-
contextClient: req.headers[
|
|
82
|
-
requestClientId: req.headers[
|
|
83
|
-
contextClientId: req.headers[
|
|
84
|
-
authenticationType: req.headers[
|
|
81
|
+
requestClient: req.headers['request-client'],
|
|
82
|
+
contextClient: req.headers['context-client'],
|
|
83
|
+
requestClientId: req.headers['request-client-id'],
|
|
84
|
+
contextClientId: req.headers['context-client-id'],
|
|
85
|
+
authenticationType: req.headers['authentication-type'],
|
|
85
86
|
supportedAuthenticationType,
|
|
86
87
|
permission: permissions === null || permissions === void 0 ? void 0 : permissions[0],
|
|
87
|
-
requestUser: req.headers[
|
|
88
|
-
contextUser: req.headers[
|
|
89
|
-
permissions: req.headers[
|
|
88
|
+
requestUser: req.headers['request-user'],
|
|
89
|
+
contextUser: req.headers['context-user'],
|
|
90
|
+
permissions: req.headers['permissions'],
|
|
90
91
|
});
|
|
91
92
|
context = Object.assign(Object.assign({}, context), data.data);
|
|
92
93
|
if (!data.data.enforceOwn)
|
|
93
94
|
return { data: context };
|
|
94
95
|
context.data = Object.assign(Object.assign({}, context.data), { clientId: context.requestClientId, userId: context.contextUserId || (context === null || context === void 0 ? void 0 : context.requestUserId) || ((_c = context === null || context === void 0 ? void 0 : context.requestUser) === null || _c === void 0 ? void 0 : _c.userId) });
|
|
95
96
|
(_d = context.logger) === null || _d === void 0 ? void 0 : _d.setProps({
|
|
96
|
-
userId: (_e = context === null || context === void 0 ? void 0 : context.data) === null || _e === void 0 ? void 0 : _e.userId
|
|
97
|
+
userId: (_e = context === null || context === void 0 ? void 0 : context.data) === null || _e === void 0 ? void 0 : _e.userId,
|
|
97
98
|
});
|
|
98
99
|
return { data: context };
|
|
99
100
|
}
|
|
100
101
|
catch (e) {
|
|
101
102
|
logger_1.logger.exception(e);
|
|
102
103
|
logger_1.logger.out(`Auth: error authorizing request: `, e, e.message, (_f = e === null || e === void 0 ? void 0 : e.response) === null || _f === void 0 ? void 0 : _f.data);
|
|
103
|
-
return {
|
|
104
|
+
return {
|
|
105
|
+
error: ((_h = (_g = e === null || e === void 0 ? void 0 : e.response) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h.error) || 'You are not authorized to access this resource!!!',
|
|
106
|
+
};
|
|
104
107
|
}
|
|
105
108
|
});
|
|
106
109
|
}
|
|
@@ -110,7 +113,7 @@ function unless(middlewareName, paths, middleware) {
|
|
|
110
113
|
return;
|
|
111
114
|
if (!paths.length)
|
|
112
115
|
return;
|
|
113
|
-
const pathsAsRegex = paths.map(path => (0, path_to_regexp_1.pathToRegexp)(path));
|
|
116
|
+
const pathsAsRegex = paths.map((path) => (0, path_to_regexp_1.pathToRegexp)(path));
|
|
114
117
|
return function (req, res, next) {
|
|
115
118
|
for (let path of pathsAsRegex) {
|
|
116
119
|
if (path.test(req.path)) {
|
|
@@ -124,18 +127,24 @@ function unless(middlewareName, paths, middleware) {
|
|
|
124
127
|
exports.unless = unless;
|
|
125
128
|
const apitoolkitMiddleware = (config = {}) => {
|
|
126
129
|
config.apiKey = config.apiKey || process.env.API_TOOLKIT_API_KEY;
|
|
127
|
-
config.env = config.env || process.env.NODE_ENV ||
|
|
128
|
-
config.excludePaths = [
|
|
130
|
+
config.env = config.env || process.env.NODE_ENV || 'unknown';
|
|
131
|
+
config.excludePaths = [
|
|
132
|
+
...(config.excludePaths || []),
|
|
133
|
+
'/health-check',
|
|
134
|
+
'/cron(.*)',
|
|
135
|
+
'/metrics',
|
|
136
|
+
'/public(.*)',
|
|
137
|
+
];
|
|
129
138
|
config.tags = [...(config.tags || []), config.env];
|
|
130
|
-
config.redactRequestBody = [...(config.redactRequestBody || []),
|
|
131
|
-
config.redactResponseBody = [...(config.redactResponseBody || []),
|
|
139
|
+
config.redactRequestBody = [...(config.redactRequestBody || []), 'password', 'client-secret'];
|
|
140
|
+
config.redactResponseBody = [...(config.redactResponseBody || []), '$.data.secret'];
|
|
132
141
|
const apitoolkitConfig = Object.assign(Object.assign({}, config.rawApiToolkitConfig), { apiKey: config.apiKey, redactHeaders: config.redactHeaders, redactRequestBody: config.redactRequestBody, redactResponseBody: config.redactResponseBody, tags: config.tags, serviceVersion: config.serviceVersion, debug: config.debug });
|
|
133
142
|
if (!config.apiKey) {
|
|
134
|
-
logger_1.logger.debug(
|
|
143
|
+
logger_1.logger.debug('APIToolkit API Key Not Present');
|
|
135
144
|
return;
|
|
136
145
|
}
|
|
137
146
|
const apitoolkitClient = apitoolkit_express_1.default.NewClient(apitoolkitConfig);
|
|
138
|
-
return unless(
|
|
147
|
+
return unless('api-toolkit', config.excludePaths || [], apitoolkitClient.expressMiddleware);
|
|
139
148
|
};
|
|
140
149
|
exports.apitoolkitMiddleware = apitoolkitMiddleware;
|
|
141
150
|
//# sourceMappingURL=common.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/middlewares/common.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/middlewares/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Response, Request, NextFunction } from
|
|
1
|
+
import { Response, Request, NextFunction } from 'express';
|
|
2
2
|
export declare function internalOnly(req: Request, res: Response, next: NextFunction): void | Promise<Response<any, Record<string, any>>>;
|
|
3
3
|
export declare const can: (supportedAuthenticationType: string[], permissions: string[], options?: any) => (req: Request, res: Response, next: NextFunction) => Promise<void | Response<any, Record<string, any>>>;
|
|
4
4
|
export declare const registerLogger: (req: Request, res: Response, next: NextFunction) => void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
4
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -39,13 +39,13 @@ const logger_1 = require("../logger/logger");
|
|
|
39
39
|
function internalOnly(req, res, next) {
|
|
40
40
|
var _a;
|
|
41
41
|
try {
|
|
42
|
-
if (((_a = req.headers) === null || _a === void 0 ? void 0 : _a.source) !==
|
|
43
|
-
console.log(
|
|
42
|
+
if (((_a = req.headers) === null || _a === void 0 ? void 0 : _a.source) !== 'internal') {
|
|
43
|
+
console.log('===================Not internal request =============');
|
|
44
44
|
return response.failed(res, {
|
|
45
|
-
locale: { toLocale: req.headers[
|
|
45
|
+
locale: { toLocale: req.headers['x-locale-id'] },
|
|
46
46
|
error: "You don't have permission to access this service. ",
|
|
47
47
|
statusCode: 403,
|
|
48
|
-
errorCode:
|
|
48
|
+
errorCode: 'invalid_authorization',
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
51
|
return next();
|
|
@@ -57,23 +57,23 @@ function internalOnly(req, res, next) {
|
|
|
57
57
|
}
|
|
58
58
|
exports.internalOnly = internalOnly;
|
|
59
59
|
const can = (supportedAuthenticationType, permissions, options = {
|
|
60
|
-
matchAll: true
|
|
60
|
+
matchAll: true,
|
|
61
61
|
}) => {
|
|
62
|
-
if (permissions.constructor.name ===
|
|
63
|
-
throw new Error(
|
|
62
|
+
if (permissions.constructor.name === 'IncomingMessage') {
|
|
63
|
+
throw new Error('It appears you have done something like `app.use(can)`, but it should be `app.use(can())`.');
|
|
64
64
|
}
|
|
65
65
|
return (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
|
|
66
66
|
const { error, data } = yield (0, common_1.getContext)(req, supportedAuthenticationType, permissions);
|
|
67
67
|
if (error) {
|
|
68
68
|
return response.failed(res, {
|
|
69
|
-
locale: { toLocale: req.headers[
|
|
70
|
-
error: error ||
|
|
69
|
+
locale: { toLocale: req.headers['x-locale-id'] },
|
|
70
|
+
error: error || 'You are not authorized to access this resource!!!',
|
|
71
71
|
statusCode: 403,
|
|
72
|
-
errorCode:
|
|
72
|
+
errorCode: 'invalid_authorization',
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
75
|
res.locals = data;
|
|
76
|
-
res.setHeader(
|
|
76
|
+
res.setHeader('x-request-id', data.requestId);
|
|
77
77
|
return next();
|
|
78
78
|
});
|
|
79
79
|
};
|
|
@@ -83,16 +83,16 @@ const registerLogger = (req, res, next) => {
|
|
|
83
83
|
if ((_a = res.locals) === null || _a === void 0 ? void 0 : _a.logger)
|
|
84
84
|
return next();
|
|
85
85
|
const params = {
|
|
86
|
-
requestId: req.header(
|
|
86
|
+
requestId: req.header('x-request-id') || Math.random().toString(),
|
|
87
87
|
requestClientId: req.header('request-client-id') || req.header('client-id'),
|
|
88
88
|
contextClientId: req.header('context-client-id') || req.header('client-id'),
|
|
89
|
-
ip: req.headers[
|
|
89
|
+
ip: req.headers['cf-connecting-ip'] || req.ip,
|
|
90
90
|
url: req.url,
|
|
91
|
-
locale: req.headers[
|
|
92
|
-
requestSource: req.header(
|
|
91
|
+
locale: req.headers['x-locale-id'],
|
|
92
|
+
requestSource: req.header('source'),
|
|
93
93
|
};
|
|
94
94
|
res.locals.logger = new logger_1.Logger(params);
|
|
95
|
-
res.setHeader(
|
|
95
|
+
res.setHeader('x-request-id', params.requestId);
|
|
96
96
|
return next();
|
|
97
97
|
};
|
|
98
98
|
exports.registerLogger = registerLogger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"express.js","sourceRoot":"","sources":["../../src/middlewares/express.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,+DAAiD;AACjD,
|
|
1
|
+
{"version":3,"file":"express.js","sourceRoot":"","sources":["../../src/middlewares/express.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
4
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -37,19 +37,19 @@ const response = __importStar(require("../responses/fastify"));
|
|
|
37
37
|
const common_1 = require("./common");
|
|
38
38
|
const logger_1 = require("../logger/logger");
|
|
39
39
|
const can = (supportedAuthenticationType = [], permissions = [], options = {
|
|
40
|
-
matchAll: true
|
|
40
|
+
matchAll: true,
|
|
41
41
|
}) => {
|
|
42
|
-
if (permissions.constructor.name ===
|
|
43
|
-
throw new Error(
|
|
42
|
+
if (permissions.constructor.name === 'IncomingMessage') {
|
|
43
|
+
throw new Error('It appears you have done something like `app.use(can)`, but it should be `app.use(can())`.');
|
|
44
44
|
}
|
|
45
45
|
return (req, res) => __awaiter(void 0, void 0, void 0, function* () {
|
|
46
46
|
const { error, data } = yield (0, common_1.getContext)(req, supportedAuthenticationType, permissions);
|
|
47
47
|
if (error) {
|
|
48
|
-
return response.error(res, error ||
|
|
48
|
+
return response.error(res, error || 'You are not authorized to access this resource!!!');
|
|
49
49
|
}
|
|
50
50
|
res.locals = data;
|
|
51
51
|
req.context = data;
|
|
52
|
-
res.header(
|
|
52
|
+
res.header('x-request-id', data.requestId);
|
|
53
53
|
return;
|
|
54
54
|
});
|
|
55
55
|
};
|
|
@@ -58,15 +58,15 @@ const registerLogger = (req, res) => {
|
|
|
58
58
|
if (res.locals.logger)
|
|
59
59
|
return;
|
|
60
60
|
const params = {
|
|
61
|
-
requestId: req.header(
|
|
61
|
+
requestId: req.header('x-request-id') || Math.random().toString(),
|
|
62
62
|
requestClientId: req.header('request-client-id') || req.header('client-id'),
|
|
63
63
|
contextClientId: req.header('context-client-id') || req.header('client-id'),
|
|
64
|
-
ip: req.headers[
|
|
64
|
+
ip: req.headers['cf-connecting-ip'] || req.ip,
|
|
65
65
|
url: req.url,
|
|
66
|
-
requestSource: req.header(
|
|
66
|
+
requestSource: req.header('source'),
|
|
67
67
|
};
|
|
68
68
|
res.locals.logger = new logger_1.Logger(params);
|
|
69
|
-
res.header(
|
|
69
|
+
res.header('x-request-id', params.requestId);
|
|
70
70
|
return;
|
|
71
71
|
};
|
|
72
72
|
exports.registerLogger = registerLogger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastify.js","sourceRoot":"","sources":["../../src/middlewares/fastify.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACb,+DAAiD;AACjD,
|
|
1
|
+
{"version":3,"file":"fastify.js","sourceRoot":"","sources":["../../src/middlewares/fastify.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACb,+DAAiD;AACjD,qCAAsC;AACtC,6CAA0C;AAEnC,MAAM,GAAG,GAAG,CACjB,2BAA2B,GAAG,EAAE,EAChC,WAAW,GAAG,EAAE,EAChB,OAAO,GAAG;IACR,QAAQ,EAAE,IAAI;CACf,EACD,EAAE;IACF,IAAI,WAAW,CAAC,WAAW,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CACb,4FAA4F,CAC7F,CAAC;IACJ,CAAC;IAED,OAAO,CAAO,GAAQ,EAAE,GAAQ,EAAE,EAAE;QAClC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,IAAA,mBAAU,EAAC,GAAG,EAAE,2BAA2B,EAAE,WAAW,CAAC,CAAC;QAExF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,IAAI,mDAAmD,CAAC,CAAC;QAC3F,CAAC;QAED,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;QAClB,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;QACnB,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAE3C,OAAO;IACT,CAAC,CAAA,CAAC;AACJ,CAAC,CAAC;AA1BW,QAAA,GAAG,OA0Bd;AAEK,MAAM,cAAc,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAE,EAAE;IACnD,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO;IAE9B,MAAM,MAAM,GAAQ;QAClB,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACjE,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;QAC3E,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;QAC3E,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,GAAG,CAAC,EAAE;QAC7C,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;KACpC,CAAC;IAEF,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,MAAM,CAAC,CAAC;IACvC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAC7C,OAAO;AACT,CAAC,CAAC;AAfW,QAAA,cAAc,kBAezB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as express from
|
|
2
|
-
import * as fastify from
|
|
3
|
-
import { unless, apitoolkitMiddleware } from
|
|
1
|
+
import * as express from './express';
|
|
2
|
+
import * as fastify from './fastify';
|
|
3
|
+
import { unless, apitoolkitMiddleware } from './common';
|
|
4
4
|
export { express, fastify, unless, apitoolkitMiddleware };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middlewares/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAqC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middlewares/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAqC;AAI5B,0BAAO;AAHhB,mDAAqC;AAGnB,0BAAO;AAFzB,qCAAwD;AAE7B,uFAFlB,eAAM,OAEkB;AAAE,qGAFlB,6BAAoB,OAEkB"}
|
package/lib/monitoring/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
4
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -50,12 +50,12 @@ function getMonitoredAxios(options) {
|
|
|
50
50
|
options.redactRequestBody = options.redactRequestBody || [];
|
|
51
51
|
options.redactResponseBody = options.redactResponseBody || [];
|
|
52
52
|
if ((_a = options === null || options === void 0 ? void 0 : options.redactResponseBody) === null || _a === void 0 ? void 0 : _a.length) {
|
|
53
|
-
options.redactResponseBody = options.redactResponseBody.map(field => `$.${field}`);
|
|
53
|
+
options.redactResponseBody = options.redactResponseBody.map((field) => `$.${field}`);
|
|
54
54
|
// console.log("redactResponseBody", options.redactResponseBody);
|
|
55
55
|
}
|
|
56
56
|
if ((_b = options === null || options === void 0 ? void 0 : options.redactRequestBody) === null || _b === void 0 ? void 0 : _b.length) {
|
|
57
57
|
// console.log("redactRequestBody", options?.redactRequestBody);
|
|
58
|
-
options.redactRequestBody = options.redactRequestBody.map(field => `$.${field}`);
|
|
58
|
+
options.redactRequestBody = options.redactRequestBody.map((field) => `$.${field}`);
|
|
59
59
|
// console.log("after redactRequestBody", options.redactRequestBody);
|
|
60
60
|
}
|
|
61
61
|
return apitoolkit.observeAxios(axiosInstance, options.urlWildcard, options.redactHeaders, options.redactRequestBody, options.redactResponseBody);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/monitoring/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACb,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/monitoring/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACb,kDAA6C;AAC7C,yEAA6D;AAE7D,6CAA0C;AAW1C,IAAI,UAAsB,CAAC;AAC3B,SAAgB,iBAAiB,CAAC,OAA8B;;IAC9D,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,eAAK,CAAC,MAAM,EAAE,CAAC;IAE9D,IAAI,CAAC,OAAO,CAAC,gBAAgB;QAAE,OAAO,aAAa,CAAC;IAEpD,IAAI,CAAC,UAAU;QAAE,UAAU,GAAG,4BAAU,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAEzF,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC;IAC5D,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IAAI,EAAE,CAAC;IAE9D,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,kBAAkB,0CAAE,MAAM,EAAE,CAAC;QACxC,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;QACrF,iEAAiE;IACnE,CAAC;IAED,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,iBAAiB,0CAAE,MAAM,EAAE,CAAC;QACvC,gEAAgE;QAChE,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;QACnF,qEAAqE;IACvE,CAAC;IAED,OAAO,UAAU,CAAC,YAAY,CAC5B,aAAa,EACb,OAAO,CAAC,WAAW,EACnB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,iBAAiB,EACzB,OAAO,CAAC,kBAAkB,CAC3B,CAAC;AACJ,CAAC;AA5BD,8CA4BC;AAED,SAAsB,gBAAgB,CAAC,KAAU;;QAC/C,IAAI,CAAC;YACH,IAAA,gCAAW,EAAC,KAAK,CAAC,CAAC;QACrB,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,eAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;CAAA;AAND,4CAMC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Response } from
|
|
1
|
+
import { Response } from 'express';
|
|
2
2
|
declare const success: (res: Response, data: any, code?: number) => Response<any, Record<string, any>>;
|
|
3
3
|
declare const paginated: (res: Response, data: any, code?: number) => Response<any, Record<string, any>>;
|
|
4
4
|
declare const error: (res: Response, error?: string | any, code?: number, errorCode?: string) => Response<any, Record<string, any>>;
|
|
5
5
|
export type OkResponse = {
|
|
6
|
-
data
|
|
6
|
+
data?: any;
|
|
7
7
|
locale?: {
|
|
8
8
|
fromLocale?: string;
|
|
9
9
|
toLocale?: string;
|