@aws-amplify/graphql-model-transformer 0.16.3-delta-table-improvements.0 → 0.16.4-rds-support.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/CHANGELOG.md +55 -337
- package/lib/graphql-model-transformer.d.ts +0 -3
- package/lib/graphql-model-transformer.d.ts.map +1 -1
- package/lib/graphql-model-transformer.js +4 -45
- package/lib/graphql-model-transformer.js.map +1 -1
- package/lib/resolvers/mutation.d.ts +3 -3
- package/lib/resolvers/mutation.d.ts.map +1 -1
- package/lib/resolvers/mutation.js +3 -15
- package/lib/resolvers/mutation.js.map +1 -1
- package/lib/resolvers/query.d.ts +1 -1
- package/lib/resolvers/query.d.ts.map +1 -1
- package/lib/resolvers/query.js +25 -30
- package/lib/resolvers/query.js.map +1 -1
- package/package.json +20 -20
- package/src/__tests__/__snapshots__/model-transformer.test.ts.snap +20 -4
- package/src/__tests__/model-transformer.test.ts +0 -26
- package/src/graphql-model-transformer.ts +4 -67
- package/src/resolvers/mutation.ts +3 -15
- package/src/resolvers/query.ts +46 -67
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/resolvers/query.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/resolvers/query.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-amplify/graphql-model-transformer",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.4-rds-support.0",
|
|
4
4
|
"description": "Amplify graphql @model transformer",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -28,29 +28,29 @@
|
|
|
28
28
|
"test-watch": "jest --watch"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@aws-amplify/graphql-transformer-core": "0.17.
|
|
32
|
-
"@aws-amplify/graphql-transformer-interfaces": "1.14.
|
|
33
|
-
"@aws-cdk/aws-applicationautoscaling": "
|
|
34
|
-
"@aws-cdk/aws-appsync": "
|
|
35
|
-
"@aws-cdk/aws-cloudwatch": "
|
|
36
|
-
"@aws-cdk/aws-dynamodb": "
|
|
37
|
-
"@aws-cdk/aws-ec2": "
|
|
38
|
-
"@aws-cdk/aws-iam": "
|
|
39
|
-
"@aws-cdk/aws-kms": "
|
|
40
|
-
"@aws-cdk/aws-lambda": "
|
|
41
|
-
"@aws-cdk/aws-s3-assets": "
|
|
42
|
-
"@aws-cdk/cloud-assembly-schema": "
|
|
43
|
-
"@aws-cdk/core": "
|
|
44
|
-
"@aws-cdk/custom-resources": "
|
|
45
|
-
"@aws-cdk/cx-api": "
|
|
46
|
-
"@aws-cdk/region-info": "
|
|
31
|
+
"@aws-amplify/graphql-transformer-core": "0.17.16-rds-support.0",
|
|
32
|
+
"@aws-amplify/graphql-transformer-interfaces": "1.14.9",
|
|
33
|
+
"@aws-cdk/aws-applicationautoscaling": "~1.172.0",
|
|
34
|
+
"@aws-cdk/aws-appsync": "~1.172.0",
|
|
35
|
+
"@aws-cdk/aws-cloudwatch": "~1.172.0",
|
|
36
|
+
"@aws-cdk/aws-dynamodb": "~1.172.0",
|
|
37
|
+
"@aws-cdk/aws-ec2": "~1.172.0",
|
|
38
|
+
"@aws-cdk/aws-iam": "~1.172.0",
|
|
39
|
+
"@aws-cdk/aws-kms": "~1.172.0",
|
|
40
|
+
"@aws-cdk/aws-lambda": "~1.172.0",
|
|
41
|
+
"@aws-cdk/aws-s3-assets": "~1.172.0",
|
|
42
|
+
"@aws-cdk/cloud-assembly-schema": "~1.172.0",
|
|
43
|
+
"@aws-cdk/core": "~1.172.0",
|
|
44
|
+
"@aws-cdk/custom-resources": "~1.172.0",
|
|
45
|
+
"@aws-cdk/cx-api": "~1.172.0",
|
|
46
|
+
"@aws-cdk/region-info": "~1.172.0",
|
|
47
47
|
"constructs": "^3.3.125",
|
|
48
48
|
"graphql": "^14.5.8",
|
|
49
49
|
"graphql-mapping-template": "4.20.5",
|
|
50
|
-
"graphql-transformer-common": "4.24.1-
|
|
50
|
+
"graphql-transformer-common": "4.24.1-rds-support.0"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@aws-cdk/assert": "
|
|
53
|
+
"@aws-cdk/assert": "~1.172.0",
|
|
54
54
|
"@types/node": "^12.12.6"
|
|
55
55
|
},
|
|
56
56
|
"jest": {
|
|
@@ -71,5 +71,5 @@
|
|
|
71
71
|
"overrides"
|
|
72
72
|
]
|
|
73
73
|
},
|
|
74
|
-
"gitHead": "
|
|
74
|
+
"gitHead": "d3166874ace71c8c93325dcc8e531203b1c1e6b3"
|
|
75
75
|
}
|
|
@@ -1216,7 +1216,11 @@ $util.toJson({})
|
|
|
1216
1216
|
{
|
|
1217
1217
|
\\"version\\": \\"2018-05-29\\",
|
|
1218
1218
|
\\"operation\\": \\"Sync\\",
|
|
1219
|
-
\\"filter\\":
|
|
1219
|
+
\\"filter\\": #if( $filter )
|
|
1220
|
+
$util.toJson($filter)
|
|
1221
|
+
#else
|
|
1222
|
+
null
|
|
1223
|
+
#end,
|
|
1220
1224
|
\\"limit\\": $util.defaultIfNull($args.limit, 100),
|
|
1221
1225
|
\\"lastSync\\": $util.toJson($util.defaultIfNull($args.lastSync, null)),
|
|
1222
1226
|
\\"nextToken\\": $util.toJson($util.defaultIfNull($args.nextToken, null))
|
|
@@ -1754,7 +1758,11 @@ $util.toJson({})
|
|
|
1754
1758
|
{
|
|
1755
1759
|
\\"version\\": \\"2018-05-29\\",
|
|
1756
1760
|
\\"operation\\": \\"Sync\\",
|
|
1757
|
-
\\"filter\\":
|
|
1761
|
+
\\"filter\\": #if( $filter )
|
|
1762
|
+
$util.toJson($filter)
|
|
1763
|
+
#else
|
|
1764
|
+
null
|
|
1765
|
+
#end,
|
|
1758
1766
|
\\"limit\\": $util.defaultIfNull($args.limit, 100),
|
|
1759
1767
|
\\"lastSync\\": $util.toJson($util.defaultIfNull($args.lastSync, null)),
|
|
1760
1768
|
\\"nextToken\\": $util.toJson($util.defaultIfNull($args.nextToken, null))
|
|
@@ -2292,7 +2300,11 @@ $util.toJson({})
|
|
|
2292
2300
|
{
|
|
2293
2301
|
\\"version\\": \\"2018-05-29\\",
|
|
2294
2302
|
\\"operation\\": \\"Sync\\",
|
|
2295
|
-
\\"filter\\":
|
|
2303
|
+
\\"filter\\": #if( $filter )
|
|
2304
|
+
$util.toJson($filter)
|
|
2305
|
+
#else
|
|
2306
|
+
null
|
|
2307
|
+
#end,
|
|
2296
2308
|
\\"limit\\": $util.defaultIfNull($args.limit, 100),
|
|
2297
2309
|
\\"lastSync\\": $util.toJson($util.defaultIfNull($args.lastSync, null)),
|
|
2298
2310
|
\\"nextToken\\": $util.toJson($util.defaultIfNull($args.nextToken, null))
|
|
@@ -4330,7 +4342,11 @@ exports[`ModelTransformer: the datastore table should be configured 1`] = `
|
|
|
4330
4342
|
{
|
|
4331
4343
|
\\"version\\": \\"2018-05-29\\",
|
|
4332
4344
|
\\"operation\\": \\"Sync\\",
|
|
4333
|
-
\\"filter\\":
|
|
4345
|
+
\\"filter\\": #if( $filter )
|
|
4346
|
+
$util.toJson($filter)
|
|
4347
|
+
#else
|
|
4348
|
+
null
|
|
4349
|
+
#end,
|
|
4334
4350
|
\\"limit\\": $util.defaultIfNull($args.limit, 100),
|
|
4335
4351
|
\\"lastSync\\": $util.toJson($util.defaultIfNull($args.lastSync, null)),
|
|
4336
4352
|
\\"nextToken\\": $util.toJson($util.defaultIfNull($args.nextToken, null))
|
|
@@ -1143,34 +1143,8 @@ describe('ModelTransformer: ', () => {
|
|
|
1143
1143
|
AttributeName: 'ds_sk',
|
|
1144
1144
|
AttributeType: 'S',
|
|
1145
1145
|
},
|
|
1146
|
-
{
|
|
1147
|
-
AttributeName: 'gsi_ds_pk',
|
|
1148
|
-
AttributeType: 'S',
|
|
1149
|
-
},
|
|
1150
|
-
{
|
|
1151
|
-
AttributeName: 'gsi_ds_sk',
|
|
1152
|
-
AttributeType: 'S',
|
|
1153
|
-
}
|
|
1154
1146
|
],
|
|
1155
1147
|
BillingMode: 'PAY_PER_REQUEST',
|
|
1156
|
-
GlobalSecondaryIndexes: [
|
|
1157
|
-
{
|
|
1158
|
-
IndexName: "deltaSyncGSI",
|
|
1159
|
-
KeySchema: [
|
|
1160
|
-
{
|
|
1161
|
-
AttributeName: "gsi_ds_pk",
|
|
1162
|
-
KeyType: "HASH"
|
|
1163
|
-
},
|
|
1164
|
-
{
|
|
1165
|
-
AttributeName: "gsi_ds_sk",
|
|
1166
|
-
KeyType: "RANGE"
|
|
1167
|
-
}
|
|
1168
|
-
],
|
|
1169
|
-
Projection: {
|
|
1170
|
-
ProjectionType: "ALL"
|
|
1171
|
-
}
|
|
1172
|
-
}
|
|
1173
|
-
],
|
|
1174
1148
|
StreamSpecification: {
|
|
1175
1149
|
StreamViewType: 'NEW_AND_OLD_IMAGES',
|
|
1176
1150
|
},
|
|
@@ -45,7 +45,6 @@ import {
|
|
|
45
45
|
FieldDefinitionNode,
|
|
46
46
|
InputObjectTypeDefinitionNode,
|
|
47
47
|
InputValueDefinitionNode,
|
|
48
|
-
ListValueNode,
|
|
49
48
|
ObjectTypeDefinitionNode,
|
|
50
49
|
} from 'graphql';
|
|
51
50
|
import {
|
|
@@ -144,8 +143,6 @@ type ModelTransformerOptions = {
|
|
|
144
143
|
SyncConfig?: SyncConfig;
|
|
145
144
|
};
|
|
146
145
|
|
|
147
|
-
const DEFAULT_ID_FIELD_NAME = 'id';
|
|
148
|
-
|
|
149
146
|
/**
|
|
150
147
|
* ModelTransformer
|
|
151
148
|
*/
|
|
@@ -507,15 +504,13 @@ export class ModelTransformer extends TransformerModelBase implements Transforme
|
|
|
507
504
|
const dataSource = this.datasourceMap[type.name.value];
|
|
508
505
|
const resolverKey = `Update${generateResolverKey(typeName, fieldName)}`;
|
|
509
506
|
if (!this.resolverMap[resolverKey]) {
|
|
510
|
-
const hasCustomPrimaryKey = this.hasCustomPrimaryKey(type);
|
|
511
|
-
const partitionKey = this.getPartitionKey(type);
|
|
512
507
|
const resolver = ctx.resolvers.generateMutationResolver(
|
|
513
508
|
typeName,
|
|
514
509
|
fieldName,
|
|
515
510
|
resolverLogicalId,
|
|
516
511
|
dataSource,
|
|
517
512
|
MappingTemplate.s3MappingTemplateFromString(
|
|
518
|
-
generateUpdateRequestTemplate(typeName, isSyncEnabled
|
|
513
|
+
generateUpdateRequestTemplate(typeName, isSyncEnabled),
|
|
519
514
|
`${typeName}.${fieldName}.req.vtl`,
|
|
520
515
|
),
|
|
521
516
|
MappingTemplate.s3MappingTemplateFromString(
|
|
@@ -546,15 +541,13 @@ export class ModelTransformer extends TransformerModelBase implements Transforme
|
|
|
546
541
|
const isSyncEnabled = ctx.isProjectUsingDataStore();
|
|
547
542
|
const dataSource = this.datasourceMap[type.name.value];
|
|
548
543
|
const resolverKey = `delete${generateResolverKey(typeName, fieldName)}`;
|
|
549
|
-
const hasCustomPrimaryKey = this.hasCustomPrimaryKey(type);
|
|
550
|
-
const partitionKey = this.getPartitionKey(type);
|
|
551
544
|
if (!this.resolverMap[resolverKey]) {
|
|
552
545
|
this.resolverMap[resolverKey] = ctx.resolvers.generateMutationResolver(
|
|
553
546
|
typeName,
|
|
554
547
|
fieldName,
|
|
555
548
|
resolverLogicalId,
|
|
556
549
|
dataSource,
|
|
557
|
-
MappingTemplate.s3MappingTemplateFromString(generateDeleteRequestTemplate(isSyncEnabled
|
|
550
|
+
MappingTemplate.s3MappingTemplateFromString(generateDeleteRequestTemplate(isSyncEnabled), `${typeName}.${fieldName}.req.vtl`),
|
|
558
551
|
MappingTemplate.s3MappingTemplateFromString(
|
|
559
552
|
generateDefaultResponseMappingTemplate(isSyncEnabled, true),
|
|
560
553
|
`${typeName}.${fieldName}.res.vtl`,
|
|
@@ -632,14 +625,12 @@ export class ModelTransformer extends TransformerModelBase implements Transforme
|
|
|
632
625
|
const dataSource = this.datasourceMap[type.name.value];
|
|
633
626
|
const resolverKey = `Sync${generateResolverKey(typeName, fieldName)}`;
|
|
634
627
|
if (!this.resolverMap[resolverKey]) {
|
|
635
|
-
const hasCustomPrimaryKey = this.hasCustomPrimaryKey(type);
|
|
636
|
-
const partitionKeyName = this.getPartitionKeyName(type);
|
|
637
628
|
this.resolverMap[resolverKey] = ctx.resolvers.generateQueryResolver(
|
|
638
629
|
typeName,
|
|
639
630
|
fieldName,
|
|
640
631
|
resolverLogicalId,
|
|
641
632
|
dataSource,
|
|
642
|
-
MappingTemplate.s3MappingTemplateFromString(generateSyncRequestTemplate(
|
|
633
|
+
MappingTemplate.s3MappingTemplateFromString(generateSyncRequestTemplate(), `${typeName}.${fieldName}.req.vtl`),
|
|
643
634
|
MappingTemplate.s3MappingTemplateFromString(
|
|
644
635
|
generateDefaultResponseMappingTemplate(isSyncEnabled),
|
|
645
636
|
`${typeName}.${fieldName}.res.vtl`,
|
|
@@ -888,14 +879,12 @@ export class ModelTransformer extends TransformerModelBase implements Transforme
|
|
|
888
879
|
const resolverKey = `Create${generateResolverKey(typeName, fieldName)}`;
|
|
889
880
|
const modelIndexFields = type.fields!.filter(field => field.directives?.some(it => it.name.value === 'index')).map(it => it.name.value);
|
|
890
881
|
if (!this.resolverMap[resolverKey]) {
|
|
891
|
-
const hasCustomPrimaryKey = this.hasCustomPrimaryKey(type);
|
|
892
|
-
const partitionKey = this.getPartitionKey(type);
|
|
893
882
|
const resolver = ctx.resolvers.generateMutationResolver(
|
|
894
883
|
typeName,
|
|
895
884
|
fieldName,
|
|
896
885
|
resolverLogicalId,
|
|
897
886
|
dataSource,
|
|
898
|
-
MappingTemplate.s3MappingTemplateFromString(generateCreateRequestTemplate(type.name.value, modelIndexFields
|
|
887
|
+
MappingTemplate.s3MappingTemplateFromString(generateCreateRequestTemplate(type.name.value, modelIndexFields), `${typeName}.${fieldName}.req.vtl`),
|
|
899
888
|
MappingTemplate.s3MappingTemplateFromString(
|
|
900
889
|
generateDefaultResponseMappingTemplate(isSyncEnabled, true),
|
|
901
890
|
`${typeName}.${fieldName}.res.vtl`,
|
|
@@ -1402,56 +1391,4 @@ export class ModelTransformer extends TransformerModelBase implements Transforme
|
|
|
1402
1391
|
EnableDeletionProtection: false,
|
|
1403
1392
|
...options,
|
|
1404
1393
|
});
|
|
1405
|
-
|
|
1406
|
-
/**
|
|
1407
|
-
* Returns true if the model contains a custom primary key.
|
|
1408
|
-
* Custom Primary Key is a renamed partition key with at least one sort key.
|
|
1409
|
-
* @param obj ObjectTypeDefinitionNode
|
|
1410
|
-
* @returns a boolean
|
|
1411
|
-
*/
|
|
1412
|
-
private hasCustomPrimaryKey = (obj: ObjectTypeDefinitionNode): boolean => {
|
|
1413
|
-
const primaryKeyField = obj.fields?.find(field => field.directives?.find(directive => directive.name.value === 'primaryKey'));
|
|
1414
|
-
if (!primaryKeyField || primaryKeyField.name.value === DEFAULT_ID_FIELD_NAME) {
|
|
1415
|
-
return false;
|
|
1416
|
-
}
|
|
1417
|
-
|
|
1418
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain
|
|
1419
|
-
const primaryKeyDirective = primaryKeyField.directives?.find(directive => directive.name.value === 'primaryKey')!;
|
|
1420
|
-
const sortKeysArgument = primaryKeyDirective.arguments?.find(arg => arg.name.value === 'sortKeyFields');
|
|
1421
|
-
if (sortKeysArgument && sortKeysArgument.value?.kind == 'StringValue') {
|
|
1422
|
-
return true;
|
|
1423
|
-
}
|
|
1424
|
-
if (!sortKeysArgument || (sortKeysArgument.value as ListValueNode)?.values?.length === 0) {
|
|
1425
|
-
return false;
|
|
1426
|
-
}
|
|
1427
|
-
|
|
1428
|
-
return true;
|
|
1429
|
-
}
|
|
1430
|
-
|
|
1431
|
-
/**
|
|
1432
|
-
* Returns partition key of the type
|
|
1433
|
-
* Custom Primary Key is a renamed partition key with at least one sort key.
|
|
1434
|
-
* @param obj ObjectTypeDefinitionNode
|
|
1435
|
-
* @returns a string
|
|
1436
|
-
*/
|
|
1437
|
-
private getPartitionKey = (obj: ObjectTypeDefinitionNode): string => {
|
|
1438
|
-
const primaryKeyField = obj.fields?.find(field => field.directives?.find(directive => directive.name.value === 'primaryKey'));
|
|
1439
|
-
if (!primaryKeyField || primaryKeyField.name.value === DEFAULT_ID_FIELD_NAME) {
|
|
1440
|
-
return DEFAULT_ID_FIELD_NAME;
|
|
1441
|
-
}
|
|
1442
|
-
return primaryKeyField.name.value;
|
|
1443
|
-
}
|
|
1444
|
-
|
|
1445
|
-
/**
|
|
1446
|
-
* Returns the field name of the partition key.
|
|
1447
|
-
* @param obj ObjectTypeDefinitionNode
|
|
1448
|
-
* @returns a string
|
|
1449
|
-
*/
|
|
1450
|
-
private getPartitionKeyName = (obj: ObjectTypeDefinitionNode): string => {
|
|
1451
|
-
const primaryKeyField = obj.fields?.find(field => field.directives?.find(directive => directive.name.value === 'primaryKey'));
|
|
1452
|
-
if (!primaryKeyField) {
|
|
1453
|
-
return DEFAULT_ID_FIELD_NAME;
|
|
1454
|
-
}
|
|
1455
|
-
return primaryKeyField.name.value;
|
|
1456
|
-
}
|
|
1457
1394
|
}
|
|
@@ -26,7 +26,7 @@ import { generateConditionSlot } from './common';
|
|
|
26
26
|
* Generates VTL template in update mutation
|
|
27
27
|
* @param modelName Name of the model
|
|
28
28
|
*/
|
|
29
|
-
export const generateUpdateRequestTemplate = (modelName: string, isSyncEnabled: boolean
|
|
29
|
+
export const generateUpdateRequestTemplate = (modelName: string, isSyncEnabled: boolean): string => {
|
|
30
30
|
const objectKeyVariable = 'ctx.stash.metadata.modelObjectKey';
|
|
31
31
|
const keyFields: StringNode[] = [str('id')];
|
|
32
32
|
if (isSyncEnabled) {
|
|
@@ -133,10 +133,6 @@ export const generateUpdateRequestTemplate = (modelName: string, isSyncEnabled:
|
|
|
133
133
|
operation: str('UpdateItem'),
|
|
134
134
|
key: ref('Key'),
|
|
135
135
|
update: ref('update'),
|
|
136
|
-
...(hasCustomPrimaryKey && {
|
|
137
|
-
customPartitionKey: str(`${partitionKey}`),
|
|
138
|
-
populateIndexFields: raw(`${hasCustomPrimaryKey}`),
|
|
139
|
-
}),
|
|
140
136
|
...(isSyncEnabled && { _version: ref('util.defaultIfNull($args.input["_version"], 0)') }),
|
|
141
137
|
}),
|
|
142
138
|
),
|
|
@@ -156,7 +152,7 @@ export const generateUpdateRequestTemplate = (modelName: string, isSyncEnabled:
|
|
|
156
152
|
* Generates VTL template in create mutation
|
|
157
153
|
* @param modelName Name of the model
|
|
158
154
|
*/
|
|
159
|
-
export const generateCreateRequestTemplate = (modelName: string, modelIndexFields: string[]
|
|
155
|
+
export const generateCreateRequestTemplate = (modelName: string, modelIndexFields: string[]): string => {
|
|
160
156
|
const statements: Expression[] = [
|
|
161
157
|
setArgs,
|
|
162
158
|
// Generate conditions
|
|
@@ -186,10 +182,6 @@ export const generateCreateRequestTemplate = (modelName: string, modelIndexField
|
|
|
186
182
|
operation: str('PutItem'),
|
|
187
183
|
attributeValues: methodCall(ref('util.dynamodb.toMapValues'), ref('mergedValues')),
|
|
188
184
|
condition: ref('condition'),
|
|
189
|
-
...(hasCustomPrimaryKey && {
|
|
190
|
-
customPartitionKey: str(`${partitionKey}`),
|
|
191
|
-
populateIndexFields: raw(`${hasCustomPrimaryKey}`),
|
|
192
|
-
}),
|
|
193
185
|
}),
|
|
194
186
|
),
|
|
195
187
|
|
|
@@ -264,7 +256,7 @@ export const generateCreateInitSlotTemplate = (modelConfig: ModelDirectiveConfig
|
|
|
264
256
|
* Generates VTL template in delete mutation
|
|
265
257
|
*
|
|
266
258
|
*/
|
|
267
|
-
export const generateDeleteRequestTemplate = (isSyncEnabled: boolean
|
|
259
|
+
export const generateDeleteRequestTemplate = (isSyncEnabled: boolean): string => {
|
|
268
260
|
const statements: Expression[] = [
|
|
269
261
|
setArgs,
|
|
270
262
|
set(
|
|
@@ -272,10 +264,6 @@ export const generateDeleteRequestTemplate = (isSyncEnabled: boolean, hasCustomP
|
|
|
272
264
|
obj({
|
|
273
265
|
version: str('2018-05-29'),
|
|
274
266
|
operation: str('DeleteItem'),
|
|
275
|
-
...(hasCustomPrimaryKey && {
|
|
276
|
-
customPartitionKey: str(`${partitionKey}`),
|
|
277
|
-
populateIndexFields: raw(`${hasCustomPrimaryKey}`),
|
|
278
|
-
}),
|
|
279
267
|
}),
|
|
280
268
|
),
|
|
281
269
|
ifElse(
|
package/src/resolvers/query.ts
CHANGED
|
@@ -20,14 +20,12 @@ import {
|
|
|
20
20
|
list,
|
|
21
21
|
forEach,
|
|
22
22
|
nul,
|
|
23
|
-
raw,
|
|
24
23
|
} from 'graphql-mapping-template';
|
|
25
|
-
import { ResourceConstants, setArgs
|
|
26
|
-
|
|
24
|
+
import { ResourceConstants, setArgs } from 'graphql-transformer-common';
|
|
27
25
|
const authFilter = ref('ctx.stash.authFilter');
|
|
28
26
|
|
|
29
27
|
/**
|
|
30
|
-
* Generate get query resolver
|
|
28
|
+
* Generate get query resolver template
|
|
31
29
|
*/
|
|
32
30
|
export const generateGetRequestTemplate = (): string => {
|
|
33
31
|
const statements: Expression[] = [
|
|
@@ -76,9 +74,6 @@ export const generateGetRequestTemplate = (): string => {
|
|
|
76
74
|
return printBlock('Get Request template')(compoundExpression(statements));
|
|
77
75
|
};
|
|
78
76
|
|
|
79
|
-
/**
|
|
80
|
-
* Generates the Get query response template
|
|
81
|
-
*/
|
|
82
77
|
export const generateGetResponseTemplate = (isSyncEnabled: boolean): string => {
|
|
83
78
|
const statements = new Array<Expression>();
|
|
84
79
|
if (isSyncEnabled) {
|
|
@@ -101,16 +96,13 @@ export const generateGetResponseTemplate = (isSyncEnabled: boolean): string => {
|
|
|
101
96
|
return printBlock('Get Response template')(compoundExpression(statements));
|
|
102
97
|
};
|
|
103
98
|
|
|
104
|
-
/**
|
|
105
|
-
* Generates the List query request template
|
|
106
|
-
*/
|
|
107
99
|
export const generateListRequestTemplate = (): string => {
|
|
108
100
|
const requestVariable = 'ListRequest';
|
|
109
101
|
const modelQueryObj = 'ctx.stash.modelQueryExpression';
|
|
110
102
|
const indexNameVariable = 'ctx.stash.metadata.index';
|
|
111
103
|
const expression = compoundExpression([
|
|
112
104
|
setArgs,
|
|
113
|
-
set(ref('limit'), methodCall(ref(
|
|
105
|
+
set(ref('limit'), methodCall(ref(`util.defaultIfNull`), ref('args.limit'), int(100))),
|
|
114
106
|
set(
|
|
115
107
|
ref(requestVariable),
|
|
116
108
|
obj({
|
|
@@ -131,7 +123,7 @@ export const generateListRequestTemplate = (): string => {
|
|
|
131
123
|
not(isNullOrEmpty(ref('filter'))),
|
|
132
124
|
compoundExpression([
|
|
133
125
|
set(
|
|
134
|
-
ref(
|
|
126
|
+
ref(`filterExpression`),
|
|
135
127
|
methodCall(ref('util.parseJson'), methodCall(ref('util.transform.toDynamoDBFilterExpression'), ref('filter'))),
|
|
136
128
|
),
|
|
137
129
|
iff(
|
|
@@ -145,7 +137,7 @@ export const generateListRequestTemplate = (): string => {
|
|
|
145
137
|
equals(methodCall(ref('filterExpression.expressionValues.size')), int(0)),
|
|
146
138
|
qref(methodCall(ref('filterExpression.remove'), str('expressionValues'))),
|
|
147
139
|
),
|
|
148
|
-
set(ref(`${requestVariable}.filter`), ref(
|
|
140
|
+
set(ref(`${requestVariable}.filter`), ref(`filterExpression`)),
|
|
149
141
|
]),
|
|
150
142
|
),
|
|
151
143
|
]),
|
|
@@ -172,58 +164,45 @@ export const generateListRequestTemplate = (): string => {
|
|
|
172
164
|
return printBlock('List Request')(expression);
|
|
173
165
|
};
|
|
174
166
|
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
iff(not(isNullOrEmpty(ref('args.filter'))), set(ref('filter'),
|
|
186
|
-
|
|
187
|
-
iff(
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
),
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
lastSync: ref('util.toJson($util.defaultIfNull($args.lastSync, null))'),
|
|
214
|
-
nextToken: ref('util.toJson($util.defaultIfNull($args.nextToken, null))'),
|
|
215
|
-
...(hasCustomPrimaryKey && {
|
|
216
|
-
basePartitionKey: ifElse(
|
|
217
|
-
and([
|
|
218
|
-
ref('filter'),
|
|
219
|
-
ref(`$filter.${partitionKeyName}`),
|
|
220
|
-
]),
|
|
221
|
-
raw(`$filter.${partitionKeyName}.eq`),
|
|
222
|
-
nul(),
|
|
223
|
-
true,
|
|
224
|
-
),
|
|
225
|
-
deltaIndexName: str(SyncResourceIDs.syncGSIName),
|
|
167
|
+
export const generateSyncRequestTemplate = (): string => {
|
|
168
|
+
return printBlock('Sync Request template')(
|
|
169
|
+
compoundExpression([
|
|
170
|
+
setArgs,
|
|
171
|
+
ifElse(
|
|
172
|
+
not(isNullOrEmpty(authFilter)),
|
|
173
|
+
compoundExpression([
|
|
174
|
+
set(ref('filter'), authFilter),
|
|
175
|
+
iff(not(isNullOrEmpty(ref('args.filter'))), set(ref('filter'), obj({ and: list([ref('filter'), ref('args.filter')]) }))),
|
|
176
|
+
]),
|
|
177
|
+
iff(not(isNullOrEmpty(ref('args.filter'))), set(ref('filter'), ref('args.filter'))),
|
|
178
|
+
),
|
|
179
|
+
iff(
|
|
180
|
+
not(isNullOrEmpty(ref('filter'))),
|
|
181
|
+
compoundExpression([
|
|
182
|
+
set(
|
|
183
|
+
ref(`filterExpression`),
|
|
184
|
+
methodCall(ref('util.parseJson'), methodCall(ref('util.transform.toDynamoDBFilterExpression'), ref('filter'))),
|
|
185
|
+
),
|
|
186
|
+
iff(
|
|
187
|
+
not(methodCall(ref('util.isNullOrBlank'), ref('filterExpression.expression'))),
|
|
188
|
+
compoundExpression([
|
|
189
|
+
iff(
|
|
190
|
+
equals(methodCall(ref('filterExpression.expressionValues.size')), int(0)),
|
|
191
|
+
qref(methodCall(ref('filterExpression.remove'), str('expressionValues'))),
|
|
192
|
+
),
|
|
193
|
+
set(ref('filter'), ref('filterExpression')),
|
|
194
|
+
]),
|
|
195
|
+
),
|
|
196
|
+
]),
|
|
197
|
+
),
|
|
198
|
+
obj({
|
|
199
|
+
version: str('2018-05-29'),
|
|
200
|
+
operation: str('Sync'),
|
|
201
|
+
filter: ifElse(ref('filter'), ref('util.toJson($filter)'), nul()),
|
|
202
|
+
limit: ref(`util.defaultIfNull($args.limit, ${ResourceConstants.DEFAULT_SYNC_QUERY_PAGE_LIMIT})`),
|
|
203
|
+
lastSync: ref('util.toJson($util.defaultIfNull($args.lastSync, null))'),
|
|
204
|
+
nextToken: ref('util.toJson($util.defaultIfNull($args.nextToken, null))'),
|
|
226
205
|
}),
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
206
|
+
]),
|
|
207
|
+
);
|
|
208
|
+
};
|