minimonolith 0.23.2 → 0.24.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/package.json
CHANGED
package/src/method/post/index.js
CHANGED
|
@@ -24,24 +24,27 @@ export default async (SERVICE_NAME, SERVICE_URL, METHOD_CODE) => {
|
|
|
24
24
|
VALIDATOR: await VALIDATION_SERVICE.get(METHOD_NAME, SERVICE_URL),
|
|
25
25
|
};
|
|
26
26
|
|
|
27
|
+
// Register service within API
|
|
27
28
|
API_SERVICE.get().SERVICES[SERVICE_NAME][METHOD_NAME] = async (body, claims=undefined) => {
|
|
28
29
|
const { MODELS, SERVICES } = API_SERVICE.get();
|
|
29
30
|
return await METHOD.CONTROLLER({ MODELS, SERVICES, ROUTE_CODE, body, claims });
|
|
30
31
|
}
|
|
31
32
|
|
|
32
|
-
|
|
33
|
+
// Register service within API
|
|
34
|
+
API_SERVICE.get().VALIDATORS[SERVICE_NAME][METHOD_NAME] = (body, claims=undefined) => {
|
|
33
35
|
const { MODELS, SERVICES, VALIDATORS } = API_SERVICE.get();
|
|
34
|
-
return METHOD.VALIDATOR({ MODELS, SERVICES, VALIDATORS });
|
|
36
|
+
return METHOD.VALIDATOR({ MODELS, SERVICES, VALIDATORS, body, claims });
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
const METHOD_TYPE = getType(METHOD_NAME);
|
|
38
40
|
|
|
41
|
+
// Register route forn lAMBDA API
|
|
39
42
|
LOG_SERVICE.post('POSTING_ROUTE', METHOD_ROUTE);
|
|
40
43
|
API_SERVICE.get()[METHOD_TYPE](METHOD_ROUTE, async (event, res) => {
|
|
41
44
|
const { body, claims } = EVENT_SERVICE.getParsedEvent(event);
|
|
42
45
|
|
|
43
46
|
try {
|
|
44
|
-
if (await VALIDATION_SERVICE.postError(res, ROUTE_CODE, METHOD.VALIDATOR, body)) return;
|
|
47
|
+
if (await VALIDATION_SERVICE.postError(res, ROUTE_CODE, METHOD.VALIDATOR, body, claims)) return;
|
|
45
48
|
await postResponse(res, ROUTE_CODE, METHOD.CONTROLLER, METHOD_TYPE, body, claims);
|
|
46
49
|
}
|
|
47
50
|
catch (METHOD_ERROR) { ERROR_SERVICE.postRuntime(res, ROUTE_CODE, METHOD_ERROR); }
|
|
@@ -3,8 +3,9 @@ import LOG_SERVICE from '../../log/index.js';
|
|
|
3
3
|
|
|
4
4
|
import getOptionalObject from '../getOptionalObject/index.js';
|
|
5
5
|
|
|
6
|
-
export default async (res, ROUTE_CODE, VALIDATOR, input) => {
|
|
7
|
-
const { MODELS, SERVICES, VALIDATORS } = API_SERVICE.get(),
|
|
6
|
+
export default async (res, ROUTE_CODE, VALIDATOR, input, claims) => {
|
|
7
|
+
const { MODELS, SERVICES, VALIDATORS } = API_SERVICE.get(),
|
|
8
|
+
EVENT_CONTEXT = { MODELS, SERVICES, VALIDATORS, body: input, claims };
|
|
8
9
|
|
|
9
10
|
if (!VALIDATOR && input) {
|
|
10
11
|
const MESSAGE = { ROUTE_CODE, VALIDATION_ERROR: JSON.stringify({ message: 'BODY_NOT_ALLOWED' }) };
|
|
@@ -14,9 +15,8 @@ export default async (res, ROUTE_CODE, VALIDATOR, input) => {
|
|
|
14
15
|
}
|
|
15
16
|
|
|
16
17
|
if (!VALIDATOR) return false;
|
|
17
|
-
|
|
18
|
-
const VALIDATION_ERROR =
|
|
19
|
-
(await getOptionalObject(VALIDATOR(EVENT_CONTEXT)).safeParseAsync(input)).error?.format();
|
|
18
|
+
const VALIDATION_OBJECT = await VALIDATOR(EVENT_CONTEXT);
|
|
19
|
+
const VALIDATION_ERROR = (await getOptionalObject(VALIDATION_OBJECT).safeParseAsync(input)).error?.format();
|
|
20
20
|
|
|
21
21
|
if (VALIDATION_ERROR) {
|
|
22
22
|
const MESSAGE = { ROUTE_CODE, VALIDATION_ERROR: JSON.stringify(VALIDATION_ERROR) };
|