Skip to content

Commit c63e52f

Browse files
Travis Shepparddnys1
authored andcommitted
fix(api): model helpers use targetNames in schemas with CPK enabled (#2559)
* fix(api): model helpers can use targetNames in schemas with CPK enabled * address some comments
1 parent 1d06d0c commit c63e52f

19 files changed

+524
-105
lines changed

packages/amplify_datastore_plugin_interface/test/amplify_modelschema_to_map_test.dart

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -125,9 +125,6 @@ void main() {
125125
'isReadOnly': false,
126126
'association': {
127127
'associationType': 'BelongsTo',
128-
// TODO(Jordan-Nelson): Remove `targetName` when API category has been
129-
// updated to support CPK changes.
130-
'targetName': 'postID',
131128
'targetNames': ['postID'],
132129
'associatedType': 'Post'
133130
},
@@ -214,9 +211,6 @@ void main() {
214211
'isReadOnly': false,
215212
'association': {
216213
'associationType': 'BelongsTo',
217-
// TODO(Jordan-Nelson): Remove `targetName` when API category has been
218-
// updated to support CPK changes.
219-
'targetName': 'blogID',
220214
'targetNames': ['blogID'],
221215
'associatedType': 'Blog'
222216
}

packages/amplify_test/analysis_options.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ analyzer:
44
errors:
55
public_member_api_docs: ignore
66
exclude:
7-
- lib/test_models/*
7+
- lib/test_models/**

packages/amplify_test/lib/test_models/Blog.dart

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -223,8 +223,7 @@ class Blog extends Model {
223223
static final QueryField FILES = QueryField(fieldName: "files");
224224
static final QueryField POSTS = QueryField(
225225
fieldName: "posts",
226-
fieldType: ModelFieldType(ModelFieldTypeEnum.model,
227-
ofModelName: (Post).toString()));
226+
fieldType: ModelFieldType(ModelFieldTypeEnum.model, ofModelName: 'Post'));
228227
static var schema =
229228
Model.defineSchema(define: (ModelSchemaDefinition modelSchemaDefinition) {
230229
modelSchemaDefinition.name = "Blog";
@@ -262,7 +261,7 @@ class Blog extends Model {
262261
modelSchemaDefinition.addField(ModelFieldDefinition.hasMany(
263262
key: Blog.POSTS,
264263
isRequired: false,
265-
ofModelName: (Post).toString(),
264+
ofModelName: 'Post',
266265
associatedKey: Post.BLOG));
267266

268267
modelSchemaDefinition.addField(ModelFieldDefinition.nonQueryField(
@@ -280,6 +279,11 @@ class _BlogModelType extends ModelType<Blog> {
280279
Blog fromJson(Map<String, dynamic> jsonData) {
281280
return Blog.fromJson(jsonData);
282281
}
282+
283+
@override
284+
String modelName() {
285+
return 'Blog';
286+
}
283287
}
284288

285289
/// This is an auto generated class representing the model identifier

packages/amplify_test/lib/test_models/Comment.dart

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,7 @@ class Comment extends Model {
156156
static final QueryField ID = QueryField(fieldName: "id");
157157
static final QueryField POST = QueryField(
158158
fieldName: "post",
159-
fieldType: ModelFieldType(ModelFieldTypeEnum.model,
160-
ofModelName: (Post).toString()));
159+
fieldType: ModelFieldType(ModelFieldTypeEnum.model, ofModelName: 'Post'));
161160
static final QueryField CONTENT = QueryField(fieldName: "content");
162161
static var schema =
163162
Model.defineSchema(define: (ModelSchemaDefinition modelSchemaDefinition) {
@@ -173,11 +172,8 @@ class Comment extends Model {
173172
modelSchemaDefinition.addField(ModelFieldDefinition.belongsTo(
174173
key: Comment.POST,
175174
isRequired: false,
176-
// TODO(Jordan-Nelson): Remove `targetName` when API category has been
177-
// updated to support CPK changes. This was added manually.
178-
targetName: "postID",
179-
targetNames: ["postID"],
180-
ofModelName: (Post).toString()));
175+
targetNames: ['postID'],
176+
ofModelName: 'Post'));
181177

182178
modelSchemaDefinition.addField(ModelFieldDefinition.field(
183179
key: Comment.CONTENT,
@@ -205,6 +201,11 @@ class _CommentModelType extends ModelType<Comment> {
205201
Comment fromJson(Map<String, dynamic> jsonData) {
206202
return Comment.fromJson(jsonData);
207203
}
204+
205+
@override
206+
String modelName() {
207+
return 'Comment';
208+
}
208209
}
209210

210211
/// This is an auto generated class representing the model identifier

packages/amplify_test/lib/test_models/Inventory.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,11 @@ class _InventoryModelType extends ModelType<Inventory> {
276276
Inventory fromJson(Map<String, dynamic> jsonData) {
277277
return Inventory.fromJson(jsonData);
278278
}
279+
280+
@override
281+
String modelName() {
282+
return 'Inventory';
283+
}
279284
}
280285

281286
/// This is an auto generated class representing the model identifier

packages/amplify_test/lib/test_models/Person.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -256,6 +256,11 @@ class _PersonModelType extends ModelType<Person> {
256256
Person fromJson(Map<String, dynamic> jsonData) {
257257
return Person.fromJson(jsonData);
258258
}
259+
260+
@override
261+
String modelName() {
262+
return 'Person';
263+
}
259264
}
260265

261266
/// This is an auto generated class representing the model identifier

packages/amplify_test/lib/test_models/Post.dart

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -280,12 +280,11 @@ class Post extends Model {
280280
static final QueryField LIKECOUNT = QueryField(fieldName: "likeCount");
281281
static final QueryField BLOG = QueryField(
282282
fieldName: "blog",
283-
fieldType: ModelFieldType(ModelFieldTypeEnum.model,
284-
ofModelName: (Blog).toString()));
283+
fieldType: ModelFieldType(ModelFieldTypeEnum.model, ofModelName: 'Blog'));
285284
static final QueryField COMMENTS = QueryField(
286285
fieldName: "comments",
287-
fieldType: ModelFieldType(ModelFieldTypeEnum.model,
288-
ofModelName: (Comment).toString()));
286+
fieldType:
287+
ModelFieldType(ModelFieldTypeEnum.model, ofModelName: 'Comment'));
289288
static var schema =
290289
Model.defineSchema(define: (ModelSchemaDefinition modelSchemaDefinition) {
291290
modelSchemaDefinition.name = "Post";
@@ -320,16 +319,13 @@ class Post extends Model {
320319
modelSchemaDefinition.addField(ModelFieldDefinition.belongsTo(
321320
key: Post.BLOG,
322321
isRequired: false,
323-
// TODO(Jordan-Nelson): Remove `targetName` when API category has been
324-
// updated to support CPK changes. This was added manually.
325-
targetName: "blogID",
326-
targetNames: ["blogID"],
327-
ofModelName: (Blog).toString()));
322+
targetNames: ['blogID'],
323+
ofModelName: 'Blog'));
328324

329325
modelSchemaDefinition.addField(ModelFieldDefinition.hasMany(
330326
key: Post.COMMENTS,
331327
isRequired: false,
332-
ofModelName: (Comment).toString(),
328+
ofModelName: 'Comment',
333329
associatedKey: Comment.POST));
334330

335331
modelSchemaDefinition.addField(ModelFieldDefinition.nonQueryField(
@@ -353,6 +349,11 @@ class _PostModelType extends ModelType<Post> {
353349
Post fromJson(Map<String, dynamic> jsonData) {
354350
return Post.fromJson(jsonData);
355351
}
352+
353+
@override
354+
String modelName() {
355+
return 'Post';
356+
}
356357
}
357358

358359
/// This is an auto generated class representing the model identifier

packages/amplify_test/lib/test_models/PostWithAuthRules.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,11 @@ class _PostWithAuthRulesModelType extends ModelType<PostWithAuthRules> {
206206
PostWithAuthRules fromJson(Map<String, dynamic> jsonData) {
207207
return PostWithAuthRules.fromJson(jsonData);
208208
}
209+
210+
@override
211+
String modelName() {
212+
return 'PostWithAuthRules';
213+
}
209214
}
210215

211216
/// This is an auto generated class representing the model identifier

packages/amplify_test/lib/test_models/Product.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,11 @@ class _ProductModelType extends ModelType<Product> {
236236
Product fromJson(Map<String, dynamic> jsonData) {
237237
return Product.fromJson(jsonData);
238238
}
239+
240+
@override
241+
String modelName() {
242+
return 'Product';
243+
}
239244
}
240245

241246
/// This is an auto generated class representing the model identifier

packages/amplify_test/lib/test_models/StringListTypeModel.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,11 @@ class _StringListTypeModelModelType extends ModelType<StringListTypeModel> {
169169
StringListTypeModel fromJson(Map<String, dynamic> jsonData) {
170170
return StringListTypeModel.fromJson(jsonData);
171171
}
172+
173+
@override
174+
String modelName() {
175+
return 'StringListTypeModel';
176+
}
172177
}
173178

174179
/// This is an auto generated class representing the model identifier

packages/amplify_test/lib/test_models/Warehouse.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,11 @@ class _WarehouseModelType extends ModelType<Warehouse> {
212212
Warehouse fromJson(Map<String, dynamic> jsonData) {
213213
return Warehouse.fromJson(jsonData);
214214
}
215+
216+
@override
217+
String modelName() {
218+
return 'Warehouse';
219+
}
215220
}
216221

217222
/// This is an auto generated class representing the model identifier

0 commit comments

Comments
 (0)