minimonolith 0.27.0 → 0.27.1
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/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "minimonolith",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.27.
|
|
4
|
+
"version": "0.27.1",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"scripts": {
|
|
@@ -13,24 +13,24 @@
|
|
|
13
13
|
"sequelize"
|
|
14
14
|
],
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"lambda-api": "^1.0
|
|
17
|
-
"sequelize": "^6.
|
|
16
|
+
"lambda-api": "^1.4.0",
|
|
17
|
+
"sequelize": "^6.37.8"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"@aws-sdk/client-dynamodb": "^3.1048.0",
|
|
21
21
|
"@aws-sdk/client-s3": "^3.304.0",
|
|
22
22
|
"@aws-sdk/lib-dynamodb": "^3.1048.0",
|
|
23
23
|
"@aws-sdk/s3-request-presigner": "^3.304.0",
|
|
24
|
-
"@jest/globals": "^30.
|
|
24
|
+
"@jest/globals": "^30.4.1",
|
|
25
25
|
"cross-env": "^7.0.3",
|
|
26
|
-
"cross-fetch": "^3.1.
|
|
27
|
-
"dotenv": "^16.
|
|
26
|
+
"cross-fetch": "^3.1.8",
|
|
27
|
+
"dotenv": "^16.4.5",
|
|
28
28
|
"dynalite": "^4.0.0",
|
|
29
|
-
"electrodb": "^3.
|
|
30
|
-
"jest": "^29.
|
|
31
|
-
"mysql2": "^3.
|
|
32
|
-
"nodemon": "^
|
|
33
|
-
"sqlite3": "^5.1.
|
|
34
|
-
"zod": "^3.
|
|
29
|
+
"electrodb": "^3.9.0",
|
|
30
|
+
"jest": "^29.7.0",
|
|
31
|
+
"mysql2": "^3.11.0",
|
|
32
|
+
"nodemon": "^3.1.4",
|
|
33
|
+
"sqlite3": "^5.1.7",
|
|
34
|
+
"zod": "^3.23.8"
|
|
35
35
|
}
|
|
36
36
|
}
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import LOG_MODULE from '../../log/index.js';
|
|
2
2
|
|
|
3
3
|
export default (res, ROUTE_CODE, METHOD_ERROR) => {
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
const isProd = process.env.NODE_ENV === 'production';
|
|
5
|
+
const stackString = METHOD_ERROR.stack ? METHOD_ERROR.stack.toString() : METHOD_ERROR.toString();
|
|
6
|
+
|
|
7
|
+
LOG_MODULE.postERROR({ ROUTE_CODE, METHOD_ERROR: stackString });
|
|
8
|
+
|
|
9
|
+
const responseMessage = {
|
|
10
|
+
ROUTE_CODE,
|
|
11
|
+
METHOD_ERROR: isProd ? 'Internal Server Error' : stackString
|
|
12
|
+
};
|
|
13
|
+
res.status(500).json(responseMessage);
|
|
7
14
|
}
|
|
@@ -29,23 +29,36 @@ const getLambdaEvent = (req, queryString, jwtClaims, body) => {
|
|
|
29
29
|
authorizer: { jwt: { claims: jwtClaims }, },
|
|
30
30
|
http: { method: req.method, path: req.url },
|
|
31
31
|
},
|
|
32
|
-
headers: {
|
|
32
|
+
headers: {
|
|
33
|
+
...req.headers
|
|
34
|
+
},
|
|
33
35
|
body,
|
|
34
36
|
};
|
|
35
37
|
|
|
36
|
-
if (req.headers['origin']) event.headers['origin'] = req.headers['origin'];
|
|
37
|
-
if (req.headers['content-type']) event.headers['Content-Type'] = req.headers['content-type'];
|
|
38
|
-
if (req.headers['x-trigger-error']) event.headers['x-trigger-error'] = 'TRUE';
|
|
39
|
-
if (req.headers.accept) event.headers.accept = req.headers.accept;
|
|
40
|
-
if (req.headers['user-agent']) event.headers['User-Agent'] = req.headers['user-agent'];
|
|
41
|
-
//console.log(event);
|
|
42
38
|
return event;
|
|
43
39
|
};
|
|
44
40
|
|
|
45
41
|
export default lambdaHandler => async (req, res) => {
|
|
42
|
+
if (req.method === 'OPTIONS') {
|
|
43
|
+
const origin = req.headers.origin ? req.headers.origin : '*';
|
|
44
|
+
for (let k in CORS_HEADERS({ origin })) {
|
|
45
|
+
res.setHeader(k, CORS_HEADERS({ origin })[k]);
|
|
46
|
+
}
|
|
47
|
+
res.statusCode = 200;
|
|
48
|
+
res.end();
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
|
|
46
52
|
try {
|
|
47
53
|
const authHeader = req.headers.authorization;
|
|
48
|
-
|
|
54
|
+
let jwtClaims = null;
|
|
55
|
+
if (authHeader?.startsWith('Bearer ')) {
|
|
56
|
+
try {
|
|
57
|
+
jwtClaims = getJWTClaims(authHeader);
|
|
58
|
+
} catch (err) {
|
|
59
|
+
// Ignore parsing error to allow middlewares to process/validate the header
|
|
60
|
+
}
|
|
61
|
+
}
|
|
49
62
|
|
|
50
63
|
//const tempQueryString = url.parse(req.url, true).query;
|
|
51
64
|
const parsedUrl = new URL(req.url, `http://${req.headers.host}`);
|