@aws-amplify/graphql-model-transformer 0.9.3-beta.0 → 0.9.5-apiext5.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 +26 -3
- package/lib/definitions.d.ts +1 -0
- package/lib/definitions.d.ts.map +1 -1
- package/lib/definitions.js +2 -1
- package/lib/definitions.js.map +1 -1
- package/lib/graphql-model-transformer.d.ts +2 -1
- package/lib/graphql-model-transformer.d.ts.map +1 -1
- package/lib/graphql-model-transformer.js +137 -85
- package/lib/graphql-model-transformer.js.map +1 -1
- package/lib/graphql-types/common.d.ts +7 -3
- package/lib/graphql-types/common.d.ts.map +1 -1
- package/lib/graphql-types/common.js +86 -22
- package/lib/graphql-types/common.js.map +1 -1
- package/lib/graphql-types/mutation.js +14 -14
- package/lib/graphql-types/mutation.js.map +1 -1
- package/lib/graphql-types/query.js +6 -6
- package/lib/graphql-types/query.js.map +1 -1
- package/lib/resolvers/common.d.ts +1 -1
- package/lib/resolvers/common.d.ts.map +1 -1
- package/lib/resolvers/common.js +20 -21
- package/lib/resolvers/common.js.map +1 -1
- package/lib/resolvers/mutation.js +128 -128
- package/lib/resolvers/mutation.js.map +1 -1
- package/lib/resolvers/query.js +69 -69
- package/lib/resolvers/query.js.map +1 -1
- package/lib/resolvers/subscriptions.js +4 -4
- package/lib/resolvers/subscriptions.js.map +1 -1
- package/package.json +10 -7
- package/src/__tests__/__snapshots__/model-transformer-override.test.ts.snap +3009 -0
- package/src/__tests__/__snapshots__/model-transformer.test.ts.snap +3 -3
- package/src/__tests__/model-transformer-override.test.ts +41 -0
- package/src/__tests__/model-transformer.test.ts +132 -37
- package/src/__tests__/overrides/build/override.js +8 -0
- package/src/definitions.ts +2 -0
- package/src/graphql-model-transformer.ts +81 -9
- package/src/graphql-types/common.ts +98 -2
- package/src/graphql-types/mutation.ts +1 -1
- package/src/graphql-types/query.ts +1 -1
- package/src/resolvers/common.ts +1 -3
- package/tsconfig.tsbuildinfo +1 -1
- package/lib/wrappers/object-definition-wrapper.d.ts +0 -77
- package/lib/wrappers/object-definition-wrapper.d.ts.map +0 -1
- package/lib/wrappers/object-definition-wrapper.js +0 -354
- package/lib/wrappers/object-definition-wrapper.js.map +0 -1
- package/src/wrappers/object-definition-wrapper.ts +0 -447
|
@@ -32,8 +32,8 @@ const graphql_transformer_common_1 = require("graphql-transformer-common");
|
|
|
32
32
|
const graphql_types_1 = require("./graphql-types");
|
|
33
33
|
const resolvers_1 = require("./resolvers");
|
|
34
34
|
const query_1 = require("./resolvers/query");
|
|
35
|
-
const object_definition_wrapper_1 = require("./wrappers/object-definition-wrapper");
|
|
36
35
|
const md5_1 = __importDefault(require("md5"));
|
|
36
|
+
const definitions_1 = require("./definitions");
|
|
37
37
|
var SubscriptionLevel;
|
|
38
38
|
(function (SubscriptionLevel) {
|
|
39
39
|
SubscriptionLevel["off"] = "off";
|
|
@@ -80,6 +80,35 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
80
80
|
this.resolverMap = {};
|
|
81
81
|
this.typesWithModelDirective = new Set();
|
|
82
82
|
this.modelDirectiveConfig = new Map();
|
|
83
|
+
this.before = (ctx) => {
|
|
84
|
+
ctx.stackManager.addParameter(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBModelTableReadIOPS, {
|
|
85
|
+
description: 'The number of read IOPS the table should support.',
|
|
86
|
+
type: 'Number',
|
|
87
|
+
default: 5,
|
|
88
|
+
});
|
|
89
|
+
ctx.stackManager.addParameter(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBModelTableWriteIOPS, {
|
|
90
|
+
description: 'The number of write IOPS the table should support.',
|
|
91
|
+
type: 'Number',
|
|
92
|
+
default: 5,
|
|
93
|
+
});
|
|
94
|
+
ctx.stackManager.addParameter(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBBillingMode, {
|
|
95
|
+
description: 'Configure @model types to create DynamoDB tables with PAY_PER_REQUEST or PROVISIONED billing modes.',
|
|
96
|
+
default: 'PAY_PER_REQUEST',
|
|
97
|
+
allowedValues: ['PAY_PER_REQUEST', 'PROVISIONED'],
|
|
98
|
+
});
|
|
99
|
+
ctx.stackManager.addParameter(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBEnablePointInTimeRecovery, {
|
|
100
|
+
description: 'Whether to enable Point in Time Recovery on the table.',
|
|
101
|
+
type: 'String',
|
|
102
|
+
default: 'false',
|
|
103
|
+
allowedValues: ['true', 'false'],
|
|
104
|
+
});
|
|
105
|
+
ctx.stackManager.addParameter(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBEnableServerSideEncryption, {
|
|
106
|
+
description: 'Enable server side encryption powered by KMS.',
|
|
107
|
+
type: 'String',
|
|
108
|
+
default: 'true',
|
|
109
|
+
allowedValues: ['true', 'false'],
|
|
110
|
+
});
|
|
111
|
+
};
|
|
83
112
|
this.object = (definition, directive, ctx) => {
|
|
84
113
|
const isTypeNameReserved = definition.name.value === ctx.output.getQueryTypeName() ||
|
|
85
114
|
definition.name.value === ctx.output.getMutationTypeName() ||
|
|
@@ -94,20 +123,20 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
94
123
|
const directiveWrapped = new graphql_transformer_core_1.DirectiveWrapper(directive);
|
|
95
124
|
const options = directiveWrapped.getArguments({
|
|
96
125
|
queries: {
|
|
97
|
-
get: graphql_transformer_common_1.toCamelCase(['get', typeName]),
|
|
98
|
-
list: graphql_transformer_common_1.toCamelCase(['list', graphql_transformer_common_1.plurality(typeName, true)]),
|
|
99
|
-
...(ctx.isProjectUsingDataStore() ? { sync: graphql_transformer_common_1.toCamelCase(['sync', graphql_transformer_common_1.plurality(typeName, true)]) } : undefined),
|
|
126
|
+
get: (0, graphql_transformer_common_1.toCamelCase)(['get', typeName]),
|
|
127
|
+
list: (0, graphql_transformer_common_1.toCamelCase)(['list', (0, graphql_transformer_common_1.plurality)(typeName, true)]),
|
|
128
|
+
...(ctx.isProjectUsingDataStore() ? { sync: (0, graphql_transformer_common_1.toCamelCase)(['sync', (0, graphql_transformer_common_1.plurality)(typeName, true)]) } : undefined),
|
|
100
129
|
},
|
|
101
130
|
mutations: {
|
|
102
|
-
create: graphql_transformer_common_1.toCamelCase(['create', typeName]),
|
|
103
|
-
update: graphql_transformer_common_1.toCamelCase(['update', typeName]),
|
|
104
|
-
delete: graphql_transformer_common_1.toCamelCase(['delete', typeName]),
|
|
131
|
+
create: (0, graphql_transformer_common_1.toCamelCase)(['create', typeName]),
|
|
132
|
+
update: (0, graphql_transformer_common_1.toCamelCase)(['update', typeName]),
|
|
133
|
+
delete: (0, graphql_transformer_common_1.toCamelCase)(['delete', typeName]),
|
|
105
134
|
},
|
|
106
135
|
subscriptions: {
|
|
107
136
|
level: SubscriptionLevel.on,
|
|
108
|
-
onCreate: [this.ensureValidSubscriptionName(graphql_transformer_common_1.toCamelCase(['onCreate', typeName]))],
|
|
109
|
-
onDelete: [this.ensureValidSubscriptionName(graphql_transformer_common_1.toCamelCase(['onDelete', typeName]))],
|
|
110
|
-
onUpdate: [this.ensureValidSubscriptionName(graphql_transformer_common_1.toCamelCase(['onUpdate', typeName]))],
|
|
137
|
+
onCreate: [this.ensureValidSubscriptionName((0, graphql_transformer_common_1.toCamelCase)(['onCreate', typeName]))],
|
|
138
|
+
onDelete: [this.ensureValidSubscriptionName((0, graphql_transformer_common_1.toCamelCase)(['onDelete', typeName]))],
|
|
139
|
+
onUpdate: [this.ensureValidSubscriptionName((0, graphql_transformer_common_1.toCamelCase)(['onUpdate', typeName]))],
|
|
111
140
|
},
|
|
112
141
|
timestamps: {
|
|
113
142
|
createdAt: 'createdAt',
|
|
@@ -125,10 +154,11 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
125
154
|
}
|
|
126
155
|
};
|
|
127
156
|
this.transformSchema = (ctx) => {
|
|
128
|
-
graphql_types_1.addModelConditionInputs(ctx);
|
|
157
|
+
(0, graphql_types_1.addModelConditionInputs)(ctx);
|
|
129
158
|
this.ensureModelSortDirectionEnum(ctx);
|
|
130
159
|
for (const type of this.typesWithModelDirective) {
|
|
131
160
|
const def = ctx.output.getObject(type);
|
|
161
|
+
const hasAuth = def.directives.some(dir => dir.name.value === 'auth');
|
|
132
162
|
this.createNonModelInputs(ctx, def);
|
|
133
163
|
const queryFields = this.createQueryFields(ctx, def);
|
|
134
164
|
ctx.output.addQueryFields(queryFields);
|
|
@@ -140,6 +170,23 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
140
170
|
if (ctx.isProjectUsingDataStore()) {
|
|
141
171
|
this.addModelSyncFields(ctx, type);
|
|
142
172
|
}
|
|
173
|
+
if (!hasAuth && ctx.sandboxModeEnabled && ctx.authConfig.defaultAuthentication.authenticationType !== 'API_KEY') {
|
|
174
|
+
const apiKeyDirArray = [(0, graphql_transformer_common_1.makeDirective)(definitions_1.API_KEY_DIRECTIVE, [])];
|
|
175
|
+
(0, graphql_types_1.extendTypeWithDirectives)(ctx, def.name.value, apiKeyDirArray);
|
|
176
|
+
(0, graphql_types_1.propagateApiKeyToNestedTypes)(ctx, def, new Set());
|
|
177
|
+
for (let operationField of queryFields) {
|
|
178
|
+
const operationName = operationField.name.value;
|
|
179
|
+
(0, graphql_types_1.addDirectivesToOperation)(ctx, ctx.output.getQueryTypeName(), operationName, apiKeyDirArray);
|
|
180
|
+
}
|
|
181
|
+
for (let operationField of mutationFields) {
|
|
182
|
+
const operationName = operationField.name.value;
|
|
183
|
+
(0, graphql_types_1.addDirectivesToOperation)(ctx, ctx.output.getMutationTypeName(), operationName, apiKeyDirArray);
|
|
184
|
+
}
|
|
185
|
+
for (let operationField of subscriptionsFields) {
|
|
186
|
+
const operationName = operationField.name.value;
|
|
187
|
+
(0, graphql_types_1.addDirectivesToOperation)(ctx, ctx.output.getSubscriptionTypeName(), operationName, apiKeyDirArray);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
143
190
|
}
|
|
144
191
|
};
|
|
145
192
|
this.generateResolvers = (context) => {
|
|
@@ -165,7 +212,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
165
212
|
default:
|
|
166
213
|
throw new Error('Unknown query field type');
|
|
167
214
|
}
|
|
168
|
-
resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateAuthExpressionForSandboxMode(context), `${query.typeName}.${query.fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
215
|
+
resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateAuthExpressionForSandboxMode)(context.sandboxModeEnabled), `${query.typeName}.${query.fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
169
216
|
resolver.mapToStack(stack);
|
|
170
217
|
context.resolvers.addResolver(query.typeName, query.fieldName, resolver);
|
|
171
218
|
}
|
|
@@ -185,7 +232,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
185
232
|
default:
|
|
186
233
|
throw new Error('Unknown mutation field type');
|
|
187
234
|
}
|
|
188
|
-
resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateAuthExpressionForSandboxMode(context), `${mutation.typeName}.${mutation.fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
235
|
+
resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateAuthExpressionForSandboxMode)(context.sandboxModeEnabled), `${mutation.typeName}.${mutation.fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
189
236
|
resolver.mapToStack(stack);
|
|
190
237
|
context.resolvers.addResolver(mutation.typeName, mutation.fieldName, resolver);
|
|
191
238
|
}
|
|
@@ -207,7 +254,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
207
254
|
default:
|
|
208
255
|
throw new Error('Unknown subscription field type');
|
|
209
256
|
}
|
|
210
|
-
resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateAuthExpressionForSandboxMode(context), `${subscription.typeName}.${subscription.fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
257
|
+
resolver.addToSlot('postAuth', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateAuthExpressionForSandboxMode)(context.sandboxModeEnabled), `${subscription.typeName}.${subscription.fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
211
258
|
resolver.mapToStack(stack);
|
|
212
259
|
context.resolvers.addResolver(subscription.typeName, subscription.fieldName, resolver);
|
|
213
260
|
}
|
|
@@ -217,28 +264,28 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
217
264
|
this.generateGetResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
218
265
|
const isSyncEnabled = ctx.isProjectUsingDataStore();
|
|
219
266
|
const dataSource = this.datasourceMap[type.name.value];
|
|
220
|
-
const resolverKey = `Get${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
267
|
+
const resolverKey = `Get${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
221
268
|
if (!this.resolverMap[resolverKey]) {
|
|
222
|
-
this.resolverMap[resolverKey] = ctx.resolvers.generateQueryResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(query_1.generateGetRequestTemplate(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(query_1.generateGetResponseTemplate(isSyncEnabled), `${typeName}.${fieldName}.res.vtl`));
|
|
269
|
+
this.resolverMap[resolverKey] = ctx.resolvers.generateQueryResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, query_1.generateGetRequestTemplate)(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, query_1.generateGetResponseTemplate)(isSyncEnabled), `${typeName}.${fieldName}.res.vtl`));
|
|
223
270
|
}
|
|
224
271
|
return this.resolverMap[resolverKey];
|
|
225
272
|
};
|
|
226
273
|
this.generateListResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
227
274
|
const isSyncEnabled = ctx.isProjectUsingDataStore();
|
|
228
275
|
const dataSource = this.datasourceMap[type.name.value];
|
|
229
|
-
const resolverKey = `List${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
276
|
+
const resolverKey = `List${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
230
277
|
if (!this.resolverMap[resolverKey]) {
|
|
231
|
-
this.resolverMap[resolverKey] = ctx.resolvers.generateQueryResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(query_1.generateListRequestTemplate(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateDefaultResponseMappingTemplate(isSyncEnabled), `${typeName}.${fieldName}.res.vtl`));
|
|
278
|
+
this.resolverMap[resolverKey] = ctx.resolvers.generateQueryResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, query_1.generateListRequestTemplate)(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateDefaultResponseMappingTemplate)(isSyncEnabled), `${typeName}.${fieldName}.res.vtl`));
|
|
232
279
|
}
|
|
233
280
|
return this.resolverMap[resolverKey];
|
|
234
281
|
};
|
|
235
282
|
this.generateUpdateResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
236
283
|
const isSyncEnabled = ctx.isProjectUsingDataStore();
|
|
237
284
|
const dataSource = this.datasourceMap[type.name.value];
|
|
238
|
-
const resolverKey = `Update${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
285
|
+
const resolverKey = `Update${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
239
286
|
if (!this.resolverMap[resolverKey]) {
|
|
240
|
-
const resolver = ctx.resolvers.generateMutationResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateUpdateRequestTemplate(typeName, isSyncEnabled), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateDefaultResponseMappingTemplate(isSyncEnabled, true), `${typeName}.${fieldName}.res.vtl`));
|
|
241
|
-
resolver.addToSlot('init', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateUpdateInitSlotTemplate(type.name.value, this.modelDirectiveConfig.get(type.name.value)), `${typeName}.${fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
287
|
+
const resolver = ctx.resolvers.generateMutationResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateUpdateRequestTemplate)(typeName, isSyncEnabled), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateDefaultResponseMappingTemplate)(isSyncEnabled, true), `${typeName}.${fieldName}.res.vtl`));
|
|
288
|
+
resolver.addToSlot('init', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateUpdateInitSlotTemplate)(type.name.value, this.modelDirectiveConfig.get(type.name.value)), `${typeName}.${fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
242
289
|
this.resolverMap[resolverKey] = resolver;
|
|
243
290
|
}
|
|
244
291
|
return this.resolverMap[resolverKey];
|
|
@@ -246,39 +293,39 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
246
293
|
this.generateDeleteResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
247
294
|
const isSyncEnabled = ctx.isProjectUsingDataStore();
|
|
248
295
|
const dataSource = this.datasourceMap[type.name.value];
|
|
249
|
-
const resolverKey = `delete${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
296
|
+
const resolverKey = `delete${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
250
297
|
if (!this.resolverMap[resolverKey]) {
|
|
251
|
-
this.resolverMap[resolverKey] = ctx.resolvers.generateMutationResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateDeleteRequestTemplate(isSyncEnabled), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateDefaultResponseMappingTemplate(isSyncEnabled, true), `${typeName}.${fieldName}.res.vtl`));
|
|
298
|
+
this.resolverMap[resolverKey] = ctx.resolvers.generateMutationResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateDeleteRequestTemplate)(isSyncEnabled), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateDefaultResponseMappingTemplate)(isSyncEnabled, true), `${typeName}.${fieldName}.res.vtl`));
|
|
252
299
|
}
|
|
253
300
|
return this.resolverMap[resolverKey];
|
|
254
301
|
};
|
|
255
302
|
this.generateOnCreateResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
256
|
-
const resolverKey = `OnCreate${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
303
|
+
const resolverKey = `OnCreate${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
257
304
|
if (!this.resolverMap[resolverKey]) {
|
|
258
|
-
this.resolverMap[resolverKey] = ctx.resolvers.generateSubscriptionResolver(typeName, fieldName, resolverLogicalId, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateSubscriptionRequestTemplate(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateSubscriptionResponseTemplate(), `${typeName}.${fieldName}.res.vtl`));
|
|
305
|
+
this.resolverMap[resolverKey] = ctx.resolvers.generateSubscriptionResolver(typeName, fieldName, resolverLogicalId, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateSubscriptionRequestTemplate)(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateSubscriptionResponseTemplate)(), `${typeName}.${fieldName}.res.vtl`));
|
|
259
306
|
}
|
|
260
307
|
return this.resolverMap[resolverKey];
|
|
261
308
|
};
|
|
262
309
|
this.generateOnUpdateResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
263
|
-
const resolverKey = `OnUpdate${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
310
|
+
const resolverKey = `OnUpdate${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
264
311
|
if (!this.resolverMap[resolverKey]) {
|
|
265
|
-
this.resolverMap[resolverKey] = ctx.resolvers.generateSubscriptionResolver(typeName, fieldName, resolverLogicalId, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateSubscriptionRequestTemplate(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateSubscriptionResponseTemplate(), `${typeName}.${fieldName}.res.vtl`));
|
|
312
|
+
this.resolverMap[resolverKey] = ctx.resolvers.generateSubscriptionResolver(typeName, fieldName, resolverLogicalId, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateSubscriptionRequestTemplate)(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateSubscriptionResponseTemplate)(), `${typeName}.${fieldName}.res.vtl`));
|
|
266
313
|
}
|
|
267
314
|
return this.resolverMap[resolverKey];
|
|
268
315
|
};
|
|
269
316
|
this.generateOnDeleteResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
270
|
-
const resolverKey = `OnDelete${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
317
|
+
const resolverKey = `OnDelete${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
271
318
|
if (!this.resolverMap[resolverKey]) {
|
|
272
|
-
this.resolverMap[resolverKey] = ctx.resolvers.generateSubscriptionResolver(typeName, fieldName, resolverLogicalId, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateSubscriptionRequestTemplate(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateSubscriptionResponseTemplate(), `${typeName}.${fieldName}.res.vtl`));
|
|
319
|
+
this.resolverMap[resolverKey] = ctx.resolvers.generateSubscriptionResolver(typeName, fieldName, resolverLogicalId, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateSubscriptionRequestTemplate)(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateSubscriptionResponseTemplate)(), `${typeName}.${fieldName}.res.vtl`));
|
|
273
320
|
}
|
|
274
321
|
return this.resolverMap[resolverKey];
|
|
275
322
|
};
|
|
276
323
|
this.generateSyncResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
277
324
|
const isSyncEnabled = ctx.isProjectUsingDataStore();
|
|
278
325
|
const dataSource = this.datasourceMap[type.name.value];
|
|
279
|
-
const resolverKey = `Sync${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
326
|
+
const resolverKey = `Sync${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
280
327
|
if (!this.resolverMap[resolverKey]) {
|
|
281
|
-
this.resolverMap[resolverKey] = ctx.resolvers.generateQueryResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(query_1.generateSyncRequestTemplate(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateDefaultResponseMappingTemplate(isSyncEnabled), `${typeName}.${fieldName}.res.vtl`));
|
|
328
|
+
this.resolverMap[resolverKey] = ctx.resolvers.generateQueryResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, query_1.generateSyncRequestTemplate)(), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateDefaultResponseMappingTemplate)(isSyncEnabled), `${typeName}.${fieldName}.res.vtl`));
|
|
282
329
|
}
|
|
283
330
|
return this.resolverMap[resolverKey];
|
|
284
331
|
};
|
|
@@ -290,7 +337,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
290
337
|
if ((_a = modelDirectiveConfig === null || modelDirectiveConfig === void 0 ? void 0 : modelDirectiveConfig.queries) === null || _a === void 0 ? void 0 : _a.get) {
|
|
291
338
|
fields.add({
|
|
292
339
|
typeName: 'Query',
|
|
293
|
-
fieldName: modelDirectiveConfig.queries.get || graphql_transformer_common_1.toCamelCase(['get', typeName]),
|
|
340
|
+
fieldName: modelDirectiveConfig.queries.get || (0, graphql_transformer_common_1.toCamelCase)(['get', typeName]),
|
|
294
341
|
type: graphql_transformer_interfaces_1.QueryFieldType.GET,
|
|
295
342
|
resolverLogicalId: graphql_transformer_common_1.ResolverResourceIDs.DynamoDBGetResolverResourceID(typeName),
|
|
296
343
|
});
|
|
@@ -298,7 +345,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
298
345
|
if ((_b = modelDirectiveConfig === null || modelDirectiveConfig === void 0 ? void 0 : modelDirectiveConfig.queries) === null || _b === void 0 ? void 0 : _b.list) {
|
|
299
346
|
fields.add({
|
|
300
347
|
typeName: 'Query',
|
|
301
|
-
fieldName: modelDirectiveConfig.queries.list || graphql_transformer_common_1.toCamelCase(['list', typeName]),
|
|
348
|
+
fieldName: modelDirectiveConfig.queries.list || (0, graphql_transformer_common_1.toCamelCase)(['list', typeName]),
|
|
302
349
|
type: graphql_transformer_interfaces_1.QueryFieldType.LIST,
|
|
303
350
|
resolverLogicalId: graphql_transformer_common_1.ResolverResourceIDs.DynamoDBListResolverResourceID(typeName),
|
|
304
351
|
});
|
|
@@ -306,7 +353,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
306
353
|
if ((_c = modelDirectiveConfig === null || modelDirectiveConfig === void 0 ? void 0 : modelDirectiveConfig.queries) === null || _c === void 0 ? void 0 : _c.sync) {
|
|
307
354
|
fields.add({
|
|
308
355
|
typeName: 'Query',
|
|
309
|
-
fieldName: modelDirectiveConfig.queries.sync || graphql_transformer_common_1.toCamelCase(['sync', typeName]),
|
|
356
|
+
fieldName: modelDirectiveConfig.queries.sync || (0, graphql_transformer_common_1.toCamelCase)(['sync', typeName]),
|
|
310
357
|
type: graphql_transformer_interfaces_1.QueryFieldType.SYNC,
|
|
311
358
|
resolverLogicalId: graphql_transformer_common_1.ResolverResourceIDs.SyncResolverResourceID(typeName),
|
|
312
359
|
});
|
|
@@ -375,7 +422,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
375
422
|
typeName: queryField.typeName,
|
|
376
423
|
type: queryField.type,
|
|
377
424
|
});
|
|
378
|
-
queryFields.push(graphql_transformer_common_1.makeField(queryField.fieldName, args, graphql_transformer_common_1.makeNamedType(outputType.name.value)));
|
|
425
|
+
queryFields.push((0, graphql_transformer_common_1.makeField)(queryField.fieldName, args, (0, graphql_transformer_common_1.makeNamedType)(outputType.name.value)));
|
|
379
426
|
}
|
|
380
427
|
return queryFields;
|
|
381
428
|
};
|
|
@@ -388,7 +435,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
388
435
|
typeName: mutationField.typeName,
|
|
389
436
|
type: mutationField.type,
|
|
390
437
|
});
|
|
391
|
-
mutationFields.push(graphql_transformer_common_1.makeField(mutationField.fieldName, args, graphql_transformer_common_1.makeNamedType(def.name.value)));
|
|
438
|
+
mutationFields.push((0, graphql_transformer_common_1.makeField)(mutationField.fieldName, args, (0, graphql_transformer_common_1.makeNamedType)(def.name.value)));
|
|
392
439
|
}
|
|
393
440
|
return mutationFields;
|
|
394
441
|
};
|
|
@@ -405,8 +452,8 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
405
452
|
type: it.type,
|
|
406
453
|
})));
|
|
407
454
|
const mutationNames = maps.map(it => this.getMutationName(it.type, mutationFields));
|
|
408
|
-
const directive = graphql_transformer_common_1.makeDirective('aws_subscribe', [graphql_transformer_common_1.makeArgument('mutations', graphql_transformer_common_1.makeValueNode(mutationNames))]);
|
|
409
|
-
const field = graphql_transformer_common_1.makeField(subscriptionFieldName, args, graphql_transformer_common_1.makeNamedType(def.name.value), [directive]);
|
|
455
|
+
const directive = (0, graphql_transformer_common_1.makeDirective)('aws_subscribe', [(0, graphql_transformer_common_1.makeArgument)('mutations', (0, graphql_transformer_common_1.makeValueNode)(mutationNames))]);
|
|
456
|
+
const field = (0, graphql_transformer_common_1.makeField)(subscriptionFieldName, args, (0, graphql_transformer_common_1.makeNamedType)(def.name.value), [directive]);
|
|
410
457
|
subscriptionFields.push(field);
|
|
411
458
|
}
|
|
412
459
|
return subscriptionFields;
|
|
@@ -458,11 +505,11 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
458
505
|
this.generateCreateResolver = (ctx, type, typeName, fieldName, resolverLogicalId) => {
|
|
459
506
|
const isSyncEnabled = ctx.isProjectUsingDataStore();
|
|
460
507
|
const dataSource = this.datasourceMap[type.name.value];
|
|
461
|
-
const resolverKey = `Create${resolvers_1.generateResolverKey(typeName, fieldName)}`;
|
|
508
|
+
const resolverKey = `Create${(0, resolvers_1.generateResolverKey)(typeName, fieldName)}`;
|
|
462
509
|
if (!this.resolverMap[resolverKey]) {
|
|
463
|
-
const resolver = ctx.resolvers.generateMutationResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateCreateRequestTemplate(type.name.value), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateDefaultResponseMappingTemplate(isSyncEnabled, true), `${typeName}.${fieldName}.res.vtl`));
|
|
510
|
+
const resolver = ctx.resolvers.generateMutationResolver(typeName, fieldName, resolverLogicalId, dataSource, graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateCreateRequestTemplate)(type.name.value), `${typeName}.${fieldName}.req.vtl`), graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateDefaultResponseMappingTemplate)(isSyncEnabled, true), `${typeName}.${fieldName}.res.vtl`));
|
|
464
511
|
this.resolverMap[resolverKey] = resolver;
|
|
465
|
-
resolver.addToSlot('init', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString(resolvers_1.generateCreateInitSlotTemplate(type.name.value, this.modelDirectiveConfig.get(type.name.value)), `${typeName}.${fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
512
|
+
resolver.addToSlot('init', graphql_transformer_core_1.MappingTemplate.s3MappingTemplateFromString((0, resolvers_1.generateCreateInitSlotTemplate)(type.name.value, this.modelDirectiveConfig.get(type.name.value)), `${typeName}.${fieldName}.{slotName}.{slotIndex}.req.vtl`));
|
|
466
513
|
}
|
|
467
514
|
return this.resolverMap[resolverKey];
|
|
468
515
|
};
|
|
@@ -471,9 +518,9 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
471
518
|
const knownModels = this.typesWithModelDirective;
|
|
472
519
|
let conditionInput;
|
|
473
520
|
if ([graphql_transformer_interfaces_1.MutationFieldType.CREATE, graphql_transformer_interfaces_1.MutationFieldType.DELETE, graphql_transformer_interfaces_1.MutationFieldType.UPDATE].includes(operation.type)) {
|
|
474
|
-
const conditionTypeName = graphql_transformer_common_1.toPascalCase(['Model', type.name.value, 'ConditionInput']);
|
|
475
|
-
const filterInputs = graphql_types_1.createEnumModelFilters(ctx, type);
|
|
476
|
-
conditionInput = graphql_types_1.makeMutationConditionInput(ctx, conditionTypeName, type);
|
|
521
|
+
const conditionTypeName = (0, graphql_transformer_common_1.toPascalCase)(['Model', type.name.value, 'ConditionInput']);
|
|
522
|
+
const filterInputs = (0, graphql_types_1.createEnumModelFilters)(ctx, type);
|
|
523
|
+
conditionInput = (0, graphql_types_1.makeMutationConditionInput)(ctx, conditionTypeName, type);
|
|
477
524
|
filterInputs.push(conditionInput);
|
|
478
525
|
for (let input of filterInputs) {
|
|
479
526
|
const conditionInputName = input.name.value;
|
|
@@ -484,11 +531,11 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
484
531
|
}
|
|
485
532
|
switch (operation.type) {
|
|
486
533
|
case graphql_transformer_interfaces_1.QueryFieldType.GET:
|
|
487
|
-
return [graphql_transformer_common_1.makeInputValueDefinition('id', graphql_transformer_common_1.makeNonNullType(graphql_transformer_common_1.makeNamedType('ID')))];
|
|
534
|
+
return [(0, graphql_transformer_common_1.makeInputValueDefinition)('id', (0, graphql_transformer_common_1.makeNonNullType)((0, graphql_transformer_common_1.makeNamedType)('ID')))];
|
|
488
535
|
case graphql_transformer_interfaces_1.QueryFieldType.LIST:
|
|
489
|
-
const filterInputName = graphql_transformer_common_1.toPascalCase(['Model', type.name.value, 'FilterInput']);
|
|
490
|
-
const filterInputs = graphql_types_1.createEnumModelFilters(ctx, type);
|
|
491
|
-
filterInputs.push(graphql_types_1.makeListQueryFilterInput(ctx, filterInputName, type));
|
|
536
|
+
const filterInputName = (0, graphql_transformer_common_1.toPascalCase)(['Model', type.name.value, 'FilterInput']);
|
|
537
|
+
const filterInputs = (0, graphql_types_1.createEnumModelFilters)(ctx, type);
|
|
538
|
+
filterInputs.push((0, graphql_types_1.makeListQueryFilterInput)(ctx, filterInputName, type));
|
|
492
539
|
for (let input of filterInputs) {
|
|
493
540
|
const conditionInputName = input.name.value;
|
|
494
541
|
if (!ctx.output.getType(conditionInputName)) {
|
|
@@ -496,52 +543,52 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
496
543
|
}
|
|
497
544
|
}
|
|
498
545
|
return [
|
|
499
|
-
graphql_transformer_common_1.makeInputValueDefinition('filter', graphql_transformer_common_1.makeNamedType(filterInputName)),
|
|
500
|
-
graphql_transformer_common_1.makeInputValueDefinition('limit', graphql_transformer_common_1.makeNamedType('Int')),
|
|
501
|
-
graphql_transformer_common_1.makeInputValueDefinition('nextToken', graphql_transformer_common_1.makeNamedType('String')),
|
|
546
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('filter', (0, graphql_transformer_common_1.makeNamedType)(filterInputName)),
|
|
547
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('limit', (0, graphql_transformer_common_1.makeNamedType)('Int')),
|
|
548
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('nextToken', (0, graphql_transformer_common_1.makeNamedType)('String')),
|
|
502
549
|
];
|
|
503
550
|
case graphql_transformer_interfaces_1.QueryFieldType.SYNC:
|
|
504
|
-
const syncFilterInputName = graphql_transformer_common_1.toPascalCase(['Model', type.name.value, 'FilterInput']);
|
|
505
|
-
const syncFilterInputs = graphql_types_1.makeListQueryFilterInput(ctx, syncFilterInputName, type);
|
|
551
|
+
const syncFilterInputName = (0, graphql_transformer_common_1.toPascalCase)(['Model', type.name.value, 'FilterInput']);
|
|
552
|
+
const syncFilterInputs = (0, graphql_types_1.makeListQueryFilterInput)(ctx, syncFilterInputName, type);
|
|
506
553
|
const conditionInputName = syncFilterInputs.name.value;
|
|
507
554
|
if (!ctx.output.getType(conditionInputName)) {
|
|
508
555
|
ctx.output.addInput(syncFilterInputs);
|
|
509
556
|
}
|
|
510
557
|
return [
|
|
511
|
-
graphql_transformer_common_1.makeInputValueDefinition('filter', graphql_transformer_common_1.makeNamedType(syncFilterInputName)),
|
|
512
|
-
graphql_transformer_common_1.makeInputValueDefinition('limit', graphql_transformer_common_1.makeNamedType('Int')),
|
|
513
|
-
graphql_transformer_common_1.makeInputValueDefinition('nextToken', graphql_transformer_common_1.makeNamedType('String')),
|
|
514
|
-
graphql_transformer_common_1.makeInputValueDefinition('lastSync', graphql_transformer_common_1.makeNamedType('AWSTimestamp')),
|
|
558
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('filter', (0, graphql_transformer_common_1.makeNamedType)(syncFilterInputName)),
|
|
559
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('limit', (0, graphql_transformer_common_1.makeNamedType)('Int')),
|
|
560
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('nextToken', (0, graphql_transformer_common_1.makeNamedType)('String')),
|
|
561
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('lastSync', (0, graphql_transformer_common_1.makeNamedType)('AWSTimestamp')),
|
|
515
562
|
];
|
|
516
563
|
case graphql_transformer_interfaces_1.MutationFieldType.CREATE:
|
|
517
|
-
const createInputField = graphql_types_1.makeCreateInputField(type, this.modelDirectiveConfig.get(type.name.value), knownModels, ctx.inputDocument, isSyncEnabled);
|
|
564
|
+
const createInputField = (0, graphql_types_1.makeCreateInputField)(type, this.modelDirectiveConfig.get(type.name.value), knownModels, ctx.inputDocument, isSyncEnabled);
|
|
518
565
|
const createInputTypeName = createInputField.name.value;
|
|
519
566
|
if (!ctx.output.getType(createInputField.name.value)) {
|
|
520
567
|
ctx.output.addInput(createInputField);
|
|
521
568
|
}
|
|
522
569
|
return [
|
|
523
|
-
graphql_transformer_common_1.makeInputValueDefinition('input', graphql_transformer_common_1.makeNonNullType(graphql_transformer_common_1.makeNamedType(createInputTypeName))),
|
|
524
|
-
graphql_transformer_common_1.makeInputValueDefinition('condition', graphql_transformer_common_1.makeNamedType(conditionInput.name.value)),
|
|
570
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('input', (0, graphql_transformer_common_1.makeNonNullType)((0, graphql_transformer_common_1.makeNamedType)(createInputTypeName))),
|
|
571
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('condition', (0, graphql_transformer_common_1.makeNamedType)(conditionInput.name.value)),
|
|
525
572
|
];
|
|
526
573
|
case graphql_transformer_interfaces_1.MutationFieldType.DELETE:
|
|
527
|
-
const deleteInputField = graphql_types_1.makeDeleteInputField(type, isSyncEnabled);
|
|
574
|
+
const deleteInputField = (0, graphql_types_1.makeDeleteInputField)(type, isSyncEnabled);
|
|
528
575
|
const deleteInputTypeName = deleteInputField.name.value;
|
|
529
576
|
if (!ctx.output.getType(deleteInputField.name.value)) {
|
|
530
577
|
ctx.output.addInput(deleteInputField);
|
|
531
578
|
}
|
|
532
579
|
return [
|
|
533
|
-
graphql_transformer_common_1.makeInputValueDefinition('input', graphql_transformer_common_1.makeNonNullType(graphql_transformer_common_1.makeNamedType(deleteInputTypeName))),
|
|
534
|
-
graphql_transformer_common_1.makeInputValueDefinition('condition', graphql_transformer_common_1.makeNamedType(conditionInput.name.value)),
|
|
580
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('input', (0, graphql_transformer_common_1.makeNonNullType)((0, graphql_transformer_common_1.makeNamedType)(deleteInputTypeName))),
|
|
581
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('condition', (0, graphql_transformer_common_1.makeNamedType)(conditionInput.name.value)),
|
|
535
582
|
];
|
|
536
583
|
case graphql_transformer_interfaces_1.MutationFieldType.UPDATE:
|
|
537
|
-
const updateInputField = graphql_types_1.makeUpdateInputField(type, this.modelDirectiveConfig.get(type.name.value), knownModels, ctx.inputDocument, isSyncEnabled);
|
|
584
|
+
const updateInputField = (0, graphql_types_1.makeUpdateInputField)(type, this.modelDirectiveConfig.get(type.name.value), knownModels, ctx.inputDocument, isSyncEnabled);
|
|
538
585
|
const updateInputTypeName = updateInputField.name.value;
|
|
539
586
|
if (!ctx.output.getType(updateInputField.name.value)) {
|
|
540
587
|
ctx.output.addInput(updateInputField);
|
|
541
588
|
}
|
|
542
589
|
return [
|
|
543
|
-
graphql_transformer_common_1.makeInputValueDefinition('input', graphql_transformer_common_1.makeNonNullType(graphql_transformer_common_1.makeNamedType(updateInputTypeName))),
|
|
544
|
-
graphql_transformer_common_1.makeInputValueDefinition('condition', graphql_transformer_common_1.makeNamedType(conditionInput.name.value)),
|
|
590
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('input', (0, graphql_transformer_common_1.makeNonNullType)((0, graphql_transformer_common_1.makeNamedType)(updateInputTypeName))),
|
|
591
|
+
(0, graphql_transformer_common_1.makeInputValueDefinition)('condition', (0, graphql_transformer_common_1.makeNamedType)(conditionInput.name.value)),
|
|
545
592
|
];
|
|
546
593
|
case graphql_transformer_interfaces_1.SubscriptionFieldType.ON_CREATE:
|
|
547
594
|
case graphql_transformer_interfaces_1.SubscriptionFieldType.ON_DELETE:
|
|
@@ -568,8 +615,8 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
568
615
|
case graphql_transformer_interfaces_1.QueryFieldType.SYNC:
|
|
569
616
|
case graphql_transformer_interfaces_1.QueryFieldType.LIST:
|
|
570
617
|
const isSyncEnabled = ctx.isProjectUsingDataStore();
|
|
571
|
-
const connectionFieldName = graphql_transformer_common_1.toPascalCase(['Model', type.name.value, 'Connection']);
|
|
572
|
-
outputType = graphql_types_1.makeListQueryModel(type, connectionFieldName, isSyncEnabled);
|
|
618
|
+
const connectionFieldName = (0, graphql_transformer_common_1.toPascalCase)(['Model', type.name.value, 'Connection']);
|
|
619
|
+
outputType = (0, graphql_types_1.makeListQueryModel)(type, connectionFieldName, isSyncEnabled);
|
|
573
620
|
break;
|
|
574
621
|
default:
|
|
575
622
|
throw new Error(`${operation.type} not supported for ${type.name.value}`);
|
|
@@ -581,12 +628,12 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
581
628
|
};
|
|
582
629
|
this.createNonModelInputs = (ctx, obj) => {
|
|
583
630
|
for (let field of obj.fields || []) {
|
|
584
|
-
if (!graphql_transformer_common_1.isScalar(field.type)) {
|
|
585
|
-
const def = ctx.output.getType(graphql_transformer_common_1.getBaseType(field.type));
|
|
631
|
+
if (!(0, graphql_transformer_common_1.isScalar)(field.type)) {
|
|
632
|
+
const def = ctx.output.getType((0, graphql_transformer_common_1.getBaseType)(field.type));
|
|
586
633
|
if (def && def.kind == 'ObjectTypeDefinition' && !this.isModelField(def.name.value)) {
|
|
587
634
|
const name = this.getNonModelInputObjectName(def.name.value);
|
|
588
635
|
if (!ctx.output.getType(name)) {
|
|
589
|
-
const inputObj =
|
|
636
|
+
const inputObj = graphql_transformer_core_1.InputObjectDefinitionWrapper.fromObject(name, def, ctx.inputDocument);
|
|
590
637
|
ctx.output.addInput(inputObj.serialize());
|
|
591
638
|
this.createNonModelInputs(ctx, def);
|
|
592
639
|
}
|
|
@@ -607,9 +654,9 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
607
654
|
if (!typeObj) {
|
|
608
655
|
throw new Error(`Type ${name} is missing in outputs`);
|
|
609
656
|
}
|
|
610
|
-
const typeWrapper = new
|
|
657
|
+
const typeWrapper = new graphql_transformer_core_1.ObjectDefinitionWrapper(typeObj);
|
|
611
658
|
if (!typeWrapper.hasField('id')) {
|
|
612
|
-
const idField =
|
|
659
|
+
const idField = graphql_transformer_core_1.FieldWrapper.create('id', 'ID');
|
|
613
660
|
typeWrapper.addField(idField);
|
|
614
661
|
}
|
|
615
662
|
const timestamps = [];
|
|
@@ -629,7 +676,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
629
676
|
}
|
|
630
677
|
}
|
|
631
678
|
else {
|
|
632
|
-
const field =
|
|
679
|
+
const field = graphql_transformer_core_1.FieldWrapper.create(fieldName, 'AWSDateTime');
|
|
633
680
|
typeWrapper.addField(field);
|
|
634
681
|
}
|
|
635
682
|
}
|
|
@@ -640,10 +687,10 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
640
687
|
if (!typeObj) {
|
|
641
688
|
throw new Error(`Type ${name} is missing in outputs`);
|
|
642
689
|
}
|
|
643
|
-
const typeWrapper = new
|
|
644
|
-
typeWrapper.addField(
|
|
645
|
-
typeWrapper.addField(
|
|
646
|
-
typeWrapper.addField(
|
|
690
|
+
const typeWrapper = new graphql_transformer_core_1.ObjectDefinitionWrapper(typeObj);
|
|
691
|
+
typeWrapper.addField(graphql_transformer_core_1.FieldWrapper.create('_version', 'Int'));
|
|
692
|
+
typeWrapper.addField(graphql_transformer_core_1.FieldWrapper.create('_deleted', 'Boolean', true));
|
|
693
|
+
typeWrapper.addField(graphql_transformer_core_1.FieldWrapper.create('_lastChangedAt', 'AWSTimestamp'));
|
|
647
694
|
ctx.output.updateObject(typeWrapper.serialize());
|
|
648
695
|
};
|
|
649
696
|
this.getSubscriptionToMutationsReverseMap = (ctx, def) => {
|
|
@@ -666,7 +713,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
666
713
|
this.ensureValidSubscriptionName = (name) => {
|
|
667
714
|
if (name.length <= 50)
|
|
668
715
|
return name;
|
|
669
|
-
return name.slice(0, 45) + md5_1.default(name).slice(0, 5);
|
|
716
|
+
return name.slice(0, 45) + (0, md5_1.default)(name).slice(0, 5);
|
|
670
717
|
};
|
|
671
718
|
this.options = this.getOptions(options);
|
|
672
719
|
}
|
|
@@ -678,30 +725,35 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
678
725
|
description: 'The number of read IOPS the table should support.',
|
|
679
726
|
type: 'Number',
|
|
680
727
|
default: 5,
|
|
681
|
-
})
|
|
728
|
+
});
|
|
682
729
|
const writeIops = new cdk.CfnParameter(stack, graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBModelTableWriteIOPS, {
|
|
683
730
|
description: 'The number of write IOPS the table should support.',
|
|
684
731
|
type: 'Number',
|
|
685
732
|
default: 5,
|
|
686
|
-
})
|
|
733
|
+
});
|
|
687
734
|
const billingMode = new cdk.CfnParameter(stack, graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBBillingMode, {
|
|
688
735
|
description: 'Configure @model types to create DynamoDB tables with PAY_PER_REQUEST or PROVISIONED billing modes.',
|
|
689
736
|
type: 'String',
|
|
690
737
|
default: 'PAY_PER_REQUEST',
|
|
691
738
|
allowedValues: ['PAY_PER_REQUEST', 'PROVISIONED'],
|
|
692
|
-
})
|
|
739
|
+
});
|
|
693
740
|
const pointInTimeRecovery = new cdk.CfnParameter(stack, graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBEnablePointInTimeRecovery, {
|
|
694
741
|
description: 'Whether to enable Point in Time Recovery on the table.',
|
|
695
742
|
type: 'String',
|
|
696
743
|
default: 'false',
|
|
697
744
|
allowedValues: ['true', 'false'],
|
|
698
|
-
})
|
|
745
|
+
});
|
|
699
746
|
const enableSSE = new cdk.CfnParameter(stack, graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBEnableServerSideEncryption, {
|
|
700
747
|
description: 'Enable server side encryption powered by KMS.',
|
|
701
748
|
type: 'String',
|
|
702
749
|
default: 'true',
|
|
703
750
|
allowedValues: ['true', 'false'],
|
|
704
|
-
})
|
|
751
|
+
});
|
|
752
|
+
stack.setParameter(readIops.node.id, cdk.Fn.ref(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBModelTableReadIOPS));
|
|
753
|
+
stack.setParameter(writeIops.node.id, cdk.Fn.ref(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBModelTableWriteIOPS));
|
|
754
|
+
stack.setParameter(billingMode.node.id, cdk.Fn.ref(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBBillingMode));
|
|
755
|
+
stack.setParameter(pointInTimeRecovery.node.id, cdk.Fn.ref(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBEnablePointInTimeRecovery));
|
|
756
|
+
stack.setParameter(enableSSE.node.id, cdk.Fn.ref(graphql_transformer_common_1.ResourceConstants.PARAMETERS.DynamoDBEnableServerSideEncryption));
|
|
705
757
|
new cdk.CfnCondition(stack, graphql_transformer_common_1.ResourceConstants.CONDITIONS.HasEnvironmentParameter, {
|
|
706
758
|
expression: cdk.Fn.conditionNot(cdk.Fn.conditionEquals(env, graphql_transformer_common_1.ResourceConstants.NONE)),
|
|
707
759
|
});
|
|
@@ -825,7 +877,7 @@ class ModelTransformer extends graphql_transformer_core_1.TransformerModelBase {
|
|
|
825
877
|
}
|
|
826
878
|
ensureModelSortDirectionEnum(ctx) {
|
|
827
879
|
if (!ctx.output.hasType('ModelSortDirection')) {
|
|
828
|
-
const modelSortDirection = graphql_types_1.makeModelSortDirectionEnumObject();
|
|
880
|
+
const modelSortDirection = (0, graphql_types_1.makeModelSortDirectionEnumObject)();
|
|
829
881
|
ctx.output.addEnum(modelSortDirection);
|
|
830
882
|
}
|
|
831
883
|
}
|