Skip to content

Commit 1e6099e

Browse files
committed
Changed Object.keys to Object.entries and added comments.
1 parent 60513f8 commit 1e6099e

File tree

1 file changed

+29
-10
lines changed

1 file changed

+29
-10
lines changed

templates/JSResolverOCHTTPSTemplate.js

+29-10
Original file line numberDiff line numberDiff line change
@@ -22,27 +22,46 @@ const schemaDataModel = JSON.parse(schemaDataModelJSON);
2222

2323

2424
function resolveGraphDBQueryFromAppSyncEvent(event) {
25-
2625
const query = appSyncEventToGraphQLQuery(event);
27-
28-
const graphQuery = resolveGraphDBQuery(query);
29-
return graphQuery;
26+
return resolveGraphDBQuery(query);
3027
}
3128

29+
/**
30+
* Converts an app sync event into a graphQL query.
31+
*
32+
* Example of an app sync event:
33+
*
34+
* {
35+
* field: 'getNodeAirports',
36+
* arguments: { filter: { country: 'US', runways: 7 }, options: { limit: 5 } },
37+
* selectionSetGraphQL: '{\n code\n city\n}',
38+
* source: null
39+
* }
40+
*
41+
* Which will be converted into:
42+
*
43+
* {
44+
* getNodeAirports(filter: {country: "US", runways: 7}, options: {limit: 5}) {
45+
* code
46+
* city
47+
* }
48+
* }
49+
*
50+
* @param event
51+
* @returns {string}
52+
*/
3253
function appSyncEventToGraphQLQuery(event) {
33-
let queryArgs = [];
34-
Object.keys(event.arguments).forEach(key => {
35-
const value = event.arguments[key];
54+
const queryArgs = Object.entries(event.arguments).map(([key, value]) => {
3655
if (typeof value === 'object') {
3756
let nestedArgs = Object.entries(value)
3857
.map(([nestedKey, nestedValue]) => `${nestedKey}: ${addQuotesIfString(nestedValue)}`)
3958
.join(', ');
4059

41-
queryArgs.push(`${key}: {${nestedArgs}}`);
60+
return `${key}: {${nestedArgs}}`;
4261
} else {
43-
queryArgs.push(`${key}: ${addQuotesIfString(value)}`);
62+
return `${key}: ${addQuotesIfString(value)}`;
4463
}
45-
});
64+
})
4665

4766
let argsStr = '';
4867
if (queryArgs.length > 0) {

0 commit comments

Comments
 (0)