@aws-amplify/datastore 3.7.3 → 3.7.4-custom-pk.79

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.
Files changed (137) hide show
  1. package/CHANGELOG.md +144 -17
  2. package/README.md +154 -0
  3. package/dist/aws-amplify-datastore.js +3344 -1405
  4. package/dist/aws-amplify-datastore.js.map +1 -1
  5. package/dist/aws-amplify-datastore.min.js +25 -95
  6. package/dist/aws-amplify-datastore.min.js.map +1 -1
  7. package/lib/authModeStrategies/multiAuthStrategy.d.ts +2 -2
  8. package/lib/authModeStrategies/multiAuthStrategy.js +32 -26
  9. package/lib/authModeStrategies/multiAuthStrategy.js.map +1 -1
  10. package/lib/datastore/datastore.d.ts +17 -16
  11. package/lib/datastore/datastore.js +250 -78
  12. package/lib/datastore/datastore.js.map +1 -1
  13. package/lib/index.d.ts +3 -19
  14. package/lib/predicates/index.d.ts +3 -2
  15. package/lib/predicates/index.js +12 -2
  16. package/lib/predicates/index.js.map +1 -1
  17. package/lib/storage/adapter/AsyncStorageAdapter.d.ts +6 -2
  18. package/lib/storage/adapter/AsyncStorageAdapter.js +140 -66
  19. package/lib/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  20. package/lib/storage/adapter/AsyncStorageDatabase.d.ts +4 -4
  21. package/lib/storage/adapter/AsyncStorageDatabase.js +57 -27
  22. package/lib/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  23. package/lib/storage/adapter/InMemoryStore.js +2 -2
  24. package/lib/storage/adapter/InMemoryStore.js.map +1 -1
  25. package/lib/storage/adapter/IndexedDBAdapter.d.ts +7 -2
  26. package/lib/storage/adapter/IndexedDBAdapter.js +460 -253
  27. package/lib/storage/adapter/IndexedDBAdapter.js.map +1 -1
  28. package/lib/storage/adapter/index.d.ts +1 -1
  29. package/lib/storage/storage.d.ts +3 -3
  30. package/lib/storage/storage.js +106 -28
  31. package/lib/storage/storage.js.map +1 -1
  32. package/lib/sync/index.d.ts +23 -7
  33. package/lib/sync/index.js +18 -17
  34. package/lib/sync/index.js.map +1 -1
  35. package/lib/sync/merger.d.ts +3 -3
  36. package/lib/sync/merger.js +8 -6
  37. package/lib/sync/merger.js.map +1 -1
  38. package/lib/sync/outbox.d.ts +2 -2
  39. package/lib/sync/outbox.js +12 -9
  40. package/lib/sync/outbox.js.map +1 -1
  41. package/lib/sync/processors/errorMaps.d.ts +17 -0
  42. package/lib/sync/processors/errorMaps.js +125 -0
  43. package/lib/sync/processors/errorMaps.js.map +1 -0
  44. package/lib/sync/processors/mutation.d.ts +22 -4
  45. package/lib/sync/processors/mutation.js +119 -51
  46. package/lib/sync/processors/mutation.js.map +1 -1
  47. package/lib/sync/processors/subscription.d.ts +4 -2
  48. package/lib/sync/processors/subscription.js +76 -41
  49. package/lib/sync/processors/subscription.js.map +1 -1
  50. package/lib/sync/processors/sync.d.ts +4 -2
  51. package/lib/sync/processors/sync.js +62 -27
  52. package/lib/sync/processors/sync.js.map +1 -1
  53. package/lib/sync/utils.d.ts +3 -2
  54. package/lib/sync/utils.js +54 -7
  55. package/lib/sync/utils.js.map +1 -1
  56. package/lib/types.d.ts +85 -33
  57. package/lib/types.js +31 -2
  58. package/lib/types.js.map +1 -1
  59. package/lib/util.d.ts +43 -33
  60. package/lib/util.js +161 -21
  61. package/lib/util.js.map +1 -1
  62. package/lib-esm/authModeStrategies/multiAuthStrategy.d.ts +2 -2
  63. package/lib-esm/authModeStrategies/multiAuthStrategy.js +32 -26
  64. package/lib-esm/authModeStrategies/multiAuthStrategy.js.map +1 -1
  65. package/lib-esm/datastore/datastore.d.ts +17 -16
  66. package/lib-esm/datastore/datastore.js +252 -80
  67. package/lib-esm/datastore/datastore.js.map +1 -1
  68. package/lib-esm/index.d.ts +3 -19
  69. package/lib-esm/predicates/index.d.ts +3 -2
  70. package/lib-esm/predicates/index.js +13 -3
  71. package/lib-esm/predicates/index.js.map +1 -1
  72. package/lib-esm/storage/adapter/AsyncStorageAdapter.d.ts +6 -2
  73. package/lib-esm/storage/adapter/AsyncStorageAdapter.js +140 -66
  74. package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  75. package/lib-esm/storage/adapter/AsyncStorageDatabase.d.ts +4 -4
  76. package/lib-esm/storage/adapter/AsyncStorageDatabase.js +57 -27
  77. package/lib-esm/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  78. package/lib-esm/storage/adapter/InMemoryStore.js +2 -2
  79. package/lib-esm/storage/adapter/InMemoryStore.js.map +1 -1
  80. package/lib-esm/storage/adapter/IndexedDBAdapter.d.ts +7 -2
  81. package/lib-esm/storage/adapter/IndexedDBAdapter.js +460 -253
  82. package/lib-esm/storage/adapter/IndexedDBAdapter.js.map +1 -1
  83. package/lib-esm/storage/adapter/index.d.ts +1 -1
  84. package/lib-esm/storage/storage.d.ts +3 -3
  85. package/lib-esm/storage/storage.js +106 -28
  86. package/lib-esm/storage/storage.js.map +1 -1
  87. package/lib-esm/sync/index.d.ts +23 -7
  88. package/lib-esm/sync/index.js +20 -19
  89. package/lib-esm/sync/index.js.map +1 -1
  90. package/lib-esm/sync/merger.d.ts +3 -3
  91. package/lib-esm/sync/merger.js +8 -6
  92. package/lib-esm/sync/merger.js.map +1 -1
  93. package/lib-esm/sync/outbox.d.ts +2 -2
  94. package/lib-esm/sync/outbox.js +13 -10
  95. package/lib-esm/sync/outbox.js.map +1 -1
  96. package/lib-esm/sync/processors/errorMaps.d.ts +17 -0
  97. package/lib-esm/sync/processors/errorMaps.js +119 -0
  98. package/lib-esm/sync/processors/errorMaps.js.map +1 -0
  99. package/lib-esm/sync/processors/mutation.d.ts +22 -4
  100. package/lib-esm/sync/processors/mutation.js +122 -54
  101. package/lib-esm/sync/processors/mutation.js.map +1 -1
  102. package/lib-esm/sync/processors/subscription.d.ts +4 -2
  103. package/lib-esm/sync/processors/subscription.js +77 -42
  104. package/lib-esm/sync/processors/subscription.js.map +1 -1
  105. package/lib-esm/sync/processors/sync.d.ts +4 -2
  106. package/lib-esm/sync/processors/sync.js +62 -27
  107. package/lib-esm/sync/processors/sync.js.map +1 -1
  108. package/lib-esm/sync/utils.d.ts +3 -2
  109. package/lib-esm/sync/utils.js +54 -8
  110. package/lib-esm/sync/utils.js.map +1 -1
  111. package/lib-esm/types.d.ts +85 -33
  112. package/lib-esm/types.js +29 -3
  113. package/lib-esm/types.js.map +1 -1
  114. package/lib-esm/util.d.ts +43 -33
  115. package/lib-esm/util.js +151 -18
  116. package/lib-esm/util.js.map +1 -1
  117. package/package.json +10 -9
  118. package/src/authModeStrategies/multiAuthStrategy.ts +24 -21
  119. package/src/datastore/datastore.ts +396 -143
  120. package/src/predicates/index.ts +32 -10
  121. package/src/storage/adapter/AsyncStorageAdapter.ts +161 -61
  122. package/src/storage/adapter/AsyncStorageDatabase.ts +62 -25
  123. package/src/storage/adapter/InMemoryStore.ts +2 -2
  124. package/src/storage/adapter/IndexedDBAdapter.ts +355 -101
  125. package/src/storage/adapter/index.ts +1 -1
  126. package/src/storage/storage.ts +85 -24
  127. package/src/sync/index.ts +74 -58
  128. package/src/sync/merger.ts +16 -4
  129. package/src/sync/outbox.ts +22 -8
  130. package/src/sync/processors/errorMaps.ts +93 -0
  131. package/src/sync/processors/mutation.ts +143 -84
  132. package/src/sync/processors/subscription.ts +67 -36
  133. package/src/sync/processors/sync.ts +37 -12
  134. package/src/sync/utils.ts +63 -15
  135. package/src/types.ts +242 -49
  136. package/src/util.ts +212 -35
  137. package/ssr/package.json +1 -1
package/lib/types.js CHANGED
@@ -46,7 +46,7 @@ function isAssociatedWith(obj) {
46
46
  }
47
47
  exports.isAssociatedWith = isAssociatedWith;
48
48
  function isTargetNameAssociation(obj) {
49
- return obj && obj.targetName;
49
+ return (obj === null || obj === void 0 ? void 0 : obj.targetName) || (obj === null || obj === void 0 ? void 0 : obj.targetNames);
50
50
  }
51
51
  exports.isTargetNameAssociation = isTargetNameAssociation;
52
52
  function isModelAttributeAuth(attr) {
@@ -183,6 +183,30 @@ function isEnumFieldType(obj) {
183
183
  return false;
184
184
  }
185
185
  exports.isEnumFieldType = isEnumFieldType;
186
+ function isIdentifierFieldValue(obj, modelDefinition) {
187
+ var _a;
188
+ var keys = util_1.extractPrimaryKeyFieldNames(modelDefinition);
189
+ if (keys.length === 1) {
190
+ var type = ((_a = modelDefinition === null || modelDefinition === void 0 ? void 0 : modelDefinition.fields[keys[0]]) !== null && _a !== void 0 ? _a : {}).type;
191
+ if (isGraphQLScalarType(type)) {
192
+ var jsType = GraphQLScalarType.getJSType(type);
193
+ return typeof obj === jsType;
194
+ }
195
+ return false;
196
+ }
197
+ return false;
198
+ }
199
+ exports.isIdentifierFieldValue = isIdentifierFieldValue;
200
+ function isIdentifierFieldOrObject(obj, modelDefinition) {
201
+ return (isIdentifierFieldValue(obj, modelDefinition) ||
202
+ isIdentifierObject(obj, modelDefinition));
203
+ }
204
+ exports.isIdentifierFieldOrObject = isIdentifierFieldOrObject;
205
+ function isIdentifierObject(obj, modelDefinition) {
206
+ var keys = util_1.extractPrimaryKeyFieldNames(modelDefinition);
207
+ return (typeof obj === 'object' && obj && keys.every(function (k) { return obj[k] !== undefined; }));
208
+ }
209
+ exports.isIdentifierObject = isIdentifierObject;
186
210
  //#endregion
187
211
  //#region Subscription messages
188
212
  var OpType;
@@ -232,11 +256,16 @@ function syncExpression(modelConstructor, conditionProducer) {
232
256
  });
233
257
  }
234
258
  exports.syncExpression = syncExpression;
259
+ var ProcessName;
260
+ (function (ProcessName) {
261
+ ProcessName["sync"] = "sync";
262
+ ProcessName["mutate"] = "mutate";
263
+ ProcessName["subscribe"] = "subscribe";
264
+ })(ProcessName = exports.ProcessName || (exports.ProcessName = {}));
235
265
  exports.DISCARD = Symbol('DISCARD');
236
266
  var LimitTimerRaceResolvedValues;
237
267
  (function (LimitTimerRaceResolvedValues) {
238
268
  LimitTimerRaceResolvedValues["LIMIT"] = "LIMIT";
239
269
  LimitTimerRaceResolvedValues["TIMER"] = "TIMER";
240
270
  })(LimitTimerRaceResolvedValues = exports.LimitTimerRaceResolvedValues || (exports.LimitTimerRaceResolvedValues = {}));
241
- //#endregion
242
271
  //# sourceMappingURL=types.js.map
package/lib/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/lib/util.d.ts CHANGED
@@ -1,37 +1,11 @@
1
1
  import { ULID } from 'ulid';
2
- import { ModelInstanceMetadata, PersistentModel, PersistentModelConstructor, PredicateObject, PredicatesGroup, RelationshipType, RelationType, ModelKeys, ModelAttributes, SchemaNamespace, SortPredicatesGroup, NonModelTypeConstructor, DeferredCallbackResolverOptions } from './types';
3
- export declare const exhaustiveCheck: (obj: never, throwOnError?: boolean) => void;
4
- export declare const isNullOrUndefined: (val: any) => boolean;
5
- export declare const validatePredicate: <T extends Readonly<{
6
- id: string;
7
- } & Record<string, any>>>(model: T, groupType: "and" | "or" | "not", predicatesOrGroups: (PredicateObject<T> | PredicatesGroup<T>)[]) => any;
8
- export declare const validatePredicateField: <T>(value: T, operator: "ne" | "eq" | "le" | "lt" | "ge" | "gt" | "between" | "beginsWith" | "contains" | "notContains", operand: T | [T, T]) => boolean;
9
- export declare const isModelConstructor: <T extends Readonly<{
10
- id: string;
11
- } & Record<string, any>>>(obj: any) => obj is PersistentModelConstructor<T, {
12
- readOnlyFields: "createdAt" | "updatedAt";
13
- }>;
14
- export declare function registerNonModelClass(clazz: NonModelTypeConstructor<any>): void;
15
- export declare const isNonModelConstructor: (obj: any) => obj is NonModelTypeConstructor<any>;
16
- export declare const processCompositeKeys: (attributes: ModelAttributes) => Set<string>[];
17
- export declare const establishRelationAndKeys: (namespace: SchemaNamespace) => [RelationshipType, ModelKeys];
18
- export declare const traverseModel: <T extends Readonly<{
19
- id: string;
20
- } & Record<string, any>>>(srcModelName: string, instance: T, namespace: SchemaNamespace, modelInstanceCreator: <T_1 extends Readonly<{
21
- id: string;
22
- } & Record<string, any>> = Readonly<{
23
- id: string;
24
- } & Record<string, any>>>(modelConstructor: PersistentModelConstructor<T_1, {
25
- readOnlyFields: "createdAt" | "updatedAt";
26
- }>, init: Pick<T_1, Exclude<keyof T_1, "id" | "createdAt" | "updatedAt">> & Partial<ModelInstanceMetadata>) => T_1, getModelConstructorByModelName: (namsespaceName: string, modelName: string) => PersistentModelConstructor<any, {
27
- readOnlyFields: "createdAt" | "updatedAt";
28
- }>) => {
29
- modelName: string;
30
- item: T;
31
- instance: T;
32
- }[];
33
- export declare const getIndex: (rel: RelationType[], src: string) => string;
34
- export declare const getIndexFromAssociation: (indexes: string[], src: string) => string;
2
+ import { Patch } from 'immer';
3
+ import { PersistentModel, PersistentModelConstructor, PredicateObject, PredicatesGroup, RelationshipType, RelationType, ModelKeys, ModelAttributes, SchemaNamespace, SortPredicatesGroup, NonModelTypeConstructor, DeferredCallbackResolverOptions, SchemaModel, ModelAttribute } from './types';
4
+ export declare function extractKeyIfExists(modelDefinition: SchemaModel): ModelAttribute | undefined;
5
+ export declare function extractPrimaryKeyFieldNames(modelDefinition: SchemaModel): string[];
6
+ export declare function extractPrimaryKeyValues<T extends PersistentModel>(model: T, keyFields: string[]): string[];
7
+ export declare function isIdManaged(modelDefinition: SchemaModel): boolean;
8
+ export declare function isIdOptionallyManaged(modelDefinition: SchemaModel): boolean;
35
9
  export declare enum NAMESPACES {
36
10
  DATASTORE = "datastore",
37
11
  USER = "user",
@@ -43,6 +17,23 @@ declare const USER = NAMESPACES.USER;
43
17
  declare const SYNC = NAMESPACES.SYNC;
44
18
  declare const STORAGE = NAMESPACES.STORAGE;
45
19
  export { USER, SYNC, STORAGE, DATASTORE };
20
+ export declare const USER_AGENT_SUFFIX_DATASTORE = "/DataStore";
21
+ export declare const exhaustiveCheck: (obj: never, throwOnError?: boolean) => void;
22
+ export declare const isNullOrUndefined: (val: any) => boolean;
23
+ export declare const validatePredicate: <T extends Readonly<Record<string, any>>>(model: T, groupType: "and" | "or" | "not", predicatesOrGroups: (PredicateObject<T> | PredicatesGroup<T>)[]) => any;
24
+ export declare const validatePredicateField: <T>(value: T, operator: "ne" | "eq" | "le" | "lt" | "ge" | "gt" | "between" | "beginsWith" | "contains" | "notContains", operand: T | [T, T]) => boolean;
25
+ export declare const isModelConstructor: <T extends Readonly<Record<string, any>>>(obj: any) => obj is PersistentModelConstructor<T>;
26
+ export declare function registerNonModelClass(clazz: NonModelTypeConstructor<any>): void;
27
+ export declare const isNonModelConstructor: (obj: any) => obj is NonModelTypeConstructor<any>;
28
+ export declare const processCompositeKeys: (attributes: ModelAttributes) => Set<string>[];
29
+ export declare const establishRelationAndKeys: (namespace: SchemaNamespace) => [RelationshipType, ModelKeys];
30
+ export declare const traverseModel: <T extends Readonly<Record<string, any>>>(srcModelName: string, instance: T, namespace: SchemaNamespace, modelInstanceCreator: <T_1 extends Readonly<Record<string, any>>>(modelConstructor: PersistentModelConstructor<T_1>, init: Partial<T_1>) => T_1, getModelConstructorByModelName: (namsespaceName: string, modelName: string) => PersistentModelConstructor<any>) => {
31
+ modelName: string;
32
+ item: T;
33
+ instance: T;
34
+ }[];
35
+ export declare const getIndex: (rel: RelationType[], src: any) => string;
36
+ export declare const getIndexFromAssociation: (indexes: string[], src: any) => any;
46
37
  export declare const isPrivateMode: () => Promise<unknown>;
47
38
  export declare function monotonicUlidFactory(seed?: number): ULID;
48
39
  /**
@@ -91,3 +82,22 @@ export declare class DeferredCallbackResolver {
91
82
  clear(): void;
92
83
  resolve(): void;
93
84
  }
85
+ /**
86
+ * merge two sets of patches created by immer produce.
87
+ * newPatches take precedent over oldPatches for patches modifying the same path.
88
+ * In the case many consecutive pathces are merged the original model should
89
+ * always be the root model.
90
+ *
91
+ * Example:
92
+ * A -> B, patches1
93
+ * B -> C, patches2
94
+ *
95
+ * mergePatches(A, patches1, patches2) to get patches for A -> C
96
+ *
97
+ * @param originalSource the original Model the patches should be applied to
98
+ * @param oldPatches immer produce patch list
99
+ * @param newPatches immer produce patch list (will take precedence)
100
+ * @return merged patches
101
+ */
102
+ export declare function mergePatches<T>(originalSource: T, oldPatches: Patch[], newPatches: Patch[]): Patch[];
103
+ export declare function extractTargetNamesFromSrc(src: any): string[] | undefined;
package/lib/util.js CHANGED
@@ -70,8 +70,68 @@ Object.defineProperty(exports, "__esModule", { value: true });
70
70
  var buffer_1 = require("buffer");
71
71
  var ulid_1 = require("ulid");
72
72
  var uuid_1 = require("uuid");
73
+ var immer_1 = require("immer");
73
74
  var types_1 = require("./types");
74
75
  var amazon_cognito_identity_js_1 = require("amazon-cognito-identity-js");
76
+ var ID = 'id';
77
+ function extractKeyIfExists(modelDefinition) {
78
+ var _c;
79
+ var keyAttribute = (_c = modelDefinition === null || modelDefinition === void 0 ? void 0 : modelDefinition.attributes) === null || _c === void 0 ? void 0 : _c.find(types_1.isModelAttributeKey);
80
+ return keyAttribute;
81
+ }
82
+ exports.extractKeyIfExists = extractKeyIfExists;
83
+ function extractPrimaryKeyFieldNames(modelDefinition) {
84
+ var keyAttribute = extractKeyIfExists(modelDefinition);
85
+ if (keyAttribute && types_1.isModelAttributePrimaryKey(keyAttribute)) {
86
+ return keyAttribute.properties.fields;
87
+ }
88
+ return [ID];
89
+ }
90
+ exports.extractPrimaryKeyFieldNames = extractPrimaryKeyFieldNames;
91
+ function extractPrimaryKeyValues(model, keyFields) {
92
+ return keyFields.map(function (key) { return model[key]; });
93
+ }
94
+ exports.extractPrimaryKeyValues = extractPrimaryKeyValues;
95
+ // IdentifierFields<ManagedIdentifier>
96
+ // Default behavior without explicit @primaryKey defined
97
+ function isIdManaged(modelDefinition) {
98
+ var keyAttribute = extractKeyIfExists(modelDefinition);
99
+ if (keyAttribute && types_1.isModelAttributePrimaryKey(keyAttribute)) {
100
+ return false;
101
+ }
102
+ return true;
103
+ }
104
+ exports.isIdManaged = isIdManaged;
105
+ // IdentifierFields<OptionallyManagedIdentifier>
106
+ // @primaryKey with explicit `id` in the PK. Single key or composite
107
+ function isIdOptionallyManaged(modelDefinition) {
108
+ var keyAttribute = extractKeyIfExists(modelDefinition);
109
+ if (keyAttribute && types_1.isModelAttributePrimaryKey(keyAttribute)) {
110
+ // const idInKey = !!keyAttribute.properties.fields.find(
111
+ // field => field === ID
112
+ // );
113
+ // return idInKey && keyAttribute.properties.fields.length === 1;
114
+ return keyAttribute.properties.fields[0] === ID;
115
+ }
116
+ return false;
117
+ }
118
+ exports.isIdOptionallyManaged = isIdOptionallyManaged;
119
+ var NAMESPACES;
120
+ (function (NAMESPACES) {
121
+ NAMESPACES["DATASTORE"] = "datastore";
122
+ NAMESPACES["USER"] = "user";
123
+ NAMESPACES["SYNC"] = "sync";
124
+ NAMESPACES["STORAGE"] = "storage";
125
+ })(NAMESPACES = exports.NAMESPACES || (exports.NAMESPACES = {}));
126
+ var DATASTORE = NAMESPACES.DATASTORE;
127
+ exports.DATASTORE = DATASTORE;
128
+ var USER = NAMESPACES.USER;
129
+ exports.USER = USER;
130
+ var SYNC = NAMESPACES.SYNC;
131
+ exports.SYNC = SYNC;
132
+ var STORAGE = NAMESPACES.STORAGE;
133
+ exports.STORAGE = STORAGE;
134
+ exports.USER_AGENT_SUFFIX_DATASTORE = '/DataStore';
75
135
  exports.exhaustiveCheck = function (obj, throwOnError) {
76
136
  if (throwOnError === void 0) { throwOnError = true; }
77
137
  if (throwOnError) {
@@ -250,10 +310,26 @@ exports.establishRelationAndKeys = function (namespace) {
250
310
  modelName: fieldAttribute.type.model,
251
311
  relationType: connectionType,
252
312
  targetName: fieldAttribute.association['targetName'],
313
+ targetNames: fieldAttribute.association['targetNames'],
253
314
  associatedWith: fieldAttribute.association['associatedWith'],
254
315
  });
255
316
  if (connectionType === 'BELONGS_TO') {
256
- relationship[mKey].indexes.push(fieldAttribute.association['targetName']);
317
+ // const targetNames: string[] = extractTargetNamesFromSrc(
318
+ // fieldAttribute.association
319
+ // );
320
+ // targetNames.forEach((targetName: string) => {
321
+ // relationship[mKey].indexes.push(targetName);
322
+ // });
323
+ if (fieldAttribute.association.targetName) {
324
+ // backwards-compatability for schema generated prior to custom primary key support
325
+ relationship[mKey].indexes.push(fieldAttribute.association['targetName']);
326
+ }
327
+ else {
328
+ // iterate through fieldAttribute.association.targetNames, and push to relationship[mKey].indexes
329
+ fieldAttribute.association.targetNames.forEach(function (targetName) {
330
+ relationship[mKey].indexes.push(targetName);
331
+ });
332
+ }
257
333
  }
258
334
  }
259
335
  });
@@ -295,6 +371,9 @@ exports.establishRelationAndKeys = function (namespace) {
295
371
  }
296
372
  finally { if (e_1) throw e_1.error; }
297
373
  }
374
+ if (!keys[mKey].primaryKey) {
375
+ keys[mKey].primaryKey = [ID];
376
+ }
298
377
  }
299
378
  });
300
379
  return [relationship, keys];
@@ -324,12 +403,26 @@ exports.traverseModel = function (srcModelName, instance, namespace, modelInstan
324
403
  item: instance[rItem.fieldName],
325
404
  instance: modelInstance,
326
405
  });
327
- // targetName will be defined for Has One if feature flag
406
+ var targetNames = extractTargetNamesFromSrc(rItem);
407
+ // `targetName` will be defined for Has One if feature flag
328
408
  // https://docs.amplify.aws/cli/reference/feature-flags/#useAppsyncModelgenPlugin
329
409
  // is true (default as of 5/7/21)
330
410
  // Making this conditional for backward-compatibility
331
- if (rItem.targetName) {
332
- draftInstance[rItem.targetName] = (draftInstance[rItem.fieldName]).id;
411
+ if (targetNames) {
412
+ targetNames.forEach(function (targetName, idx) {
413
+ // Get the connected record
414
+ var relatedRecordInProxy = (draftInstance[rItem.fieldName]);
415
+ // Previously, we used the hardcoded 'id' as they key,
416
+ // now we need the value of the key to get the PK (and SK)
417
+ // values from the related record
418
+ var primaryKey = namespace.keys[modelConstructor.name].primaryKey;
419
+ var keyField = primaryKey && primaryKey[idx];
420
+ // Get the value
421
+ var relatedRecordInProxyPkValue = relatedRecordInProxy[keyField];
422
+ // Set the targetName value
423
+ draftInstance[targetName] = relatedRecordInProxyPkValue;
424
+ });
425
+ // Delete the instance from the proxy
333
426
  delete draftInstance[rItem.fieldName];
334
427
  }
335
428
  else {
@@ -356,8 +449,25 @@ exports.traverseModel = function (srcModelName, instance, namespace, modelInstan
356
449
  }
357
450
  }
358
451
  if (draftInstance[rItem.fieldName]) {
359
- draftInstance[rItem.targetName] = (draftInstance[rItem.fieldName]).id;
360
- delete draftInstance[rItem.fieldName];
452
+ var targetNames = extractTargetNamesFromSrc(rItem);
453
+ if (targetNames) {
454
+ targetNames.forEach(function (targetName, idx) {
455
+ // Get the connected record
456
+ var relatedRecordInProxy = (draftInstance[rItem.fieldName]);
457
+ // Previously, we used the hardcoded `id` for the key.
458
+ // Now, we need the value of the key to get the PK (and SK)
459
+ // values from the related record
460
+ var primaryKey = namespace.keys[modelConstructor.name].primaryKey;
461
+ // fall back to ID if
462
+ var keyField = primaryKey && primaryKey[idx];
463
+ // Get the value
464
+ var relatedRecordInProxyPkValue = relatedRecordInProxy[keyField];
465
+ // Set the targetName value
466
+ draftInstance[targetName] = relatedRecordInProxyPkValue;
467
+ });
468
+ // Delete the instance from the proxy
469
+ delete draftInstance[rItem.fieldName];
470
+ }
361
471
  }
362
472
  break;
363
473
  case 'HAS_MANY':
@@ -396,21 +506,6 @@ exports.getIndexFromAssociation = function (indexes, src) {
396
506
  var index = indexes.find(function (idx) { return idx === src; });
397
507
  return index;
398
508
  };
399
- var NAMESPACES;
400
- (function (NAMESPACES) {
401
- NAMESPACES["DATASTORE"] = "datastore";
402
- NAMESPACES["USER"] = "user";
403
- NAMESPACES["SYNC"] = "sync";
404
- NAMESPACES["STORAGE"] = "storage";
405
- })(NAMESPACES = exports.NAMESPACES || (exports.NAMESPACES = {}));
406
- var DATASTORE = NAMESPACES.DATASTORE;
407
- exports.DATASTORE = DATASTORE;
408
- var USER = NAMESPACES.USER;
409
- exports.USER = USER;
410
- var SYNC = NAMESPACES.SYNC;
411
- exports.SYNC = SYNC;
412
- var STORAGE = NAMESPACES.STORAGE;
413
- exports.STORAGE = STORAGE;
414
509
  var privateModeCheckResult;
415
510
  exports.isPrivateMode = function () {
416
511
  return new Promise(function (resolve) {
@@ -697,4 +792,49 @@ var DeferredCallbackResolver = /** @class */ (function () {
697
792
  return DeferredCallbackResolver;
698
793
  }());
699
794
  exports.DeferredCallbackResolver = DeferredCallbackResolver;
795
+ /**
796
+ * merge two sets of patches created by immer produce.
797
+ * newPatches take precedent over oldPatches for patches modifying the same path.
798
+ * In the case many consecutive pathces are merged the original model should
799
+ * always be the root model.
800
+ *
801
+ * Example:
802
+ * A -> B, patches1
803
+ * B -> C, patches2
804
+ *
805
+ * mergePatches(A, patches1, patches2) to get patches for A -> C
806
+ *
807
+ * @param originalSource the original Model the patches should be applied to
808
+ * @param oldPatches immer produce patch list
809
+ * @param newPatches immer produce patch list (will take precedence)
810
+ * @return merged patches
811
+ */
812
+ function mergePatches(originalSource, oldPatches, newPatches) {
813
+ var patchesToMerge = oldPatches.concat(newPatches);
814
+ var patches;
815
+ immer_1.produce(originalSource, function (draft) {
816
+ immer_1.applyPatches(draft, patchesToMerge);
817
+ }, function (p) {
818
+ patches = p;
819
+ });
820
+ return patches;
821
+ }
822
+ exports.mergePatches = mergePatches;
823
+ /* Backwards-compatability for schema generated prior to custom primary key support:
824
+ the single field `targetName` has been replaced with an array of `targetNames`
825
+ */
826
+ function extractTargetNamesFromSrc(src) {
827
+ var targetName = src === null || src === void 0 ? void 0 : src.targetName;
828
+ var targetNames = src === null || src === void 0 ? void 0 : src.targetNames;
829
+ if (Array.isArray(targetNames) && (targetNames === null || targetNames === void 0 ? void 0 : targetNames.length)) {
830
+ return targetNames;
831
+ }
832
+ else if (typeof targetName === 'string') {
833
+ return [targetName];
834
+ }
835
+ else {
836
+ return undefined;
837
+ }
838
+ }
839
+ exports.extractTargetNamesFromSrc = extractTargetNamesFromSrc;
700
840
  //# sourceMappingURL=util.js.map
package/lib/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { AuthModeStrategy } from '../types';
2
- export declare const multiAuthStrategy: AuthModeStrategy;
1
+ import { AuthModeStrategy, AmplifyContext } from '../types';
2
+ export declare const multiAuthStrategy: (amplifyContext: AmplifyContext) => AuthModeStrategy;
@@ -148,33 +148,39 @@ function getAuthRules(_a) {
148
148
  });
149
149
  return Array.from(authModes);
150
150
  }
151
- export var multiAuthStrategy = function (_a) {
152
- var schema = _a.schema, modelName = _a.modelName;
153
- return __awaiter(void 0, void 0, void 0, function () {
154
- var currentUser, e_1, attributes, authAttribute, sortedRules;
155
- return __generator(this, function (_b) {
156
- switch (_b.label) {
157
- case 0:
158
- _b.trys.push([0, 2, , 3]);
159
- return [4 /*yield*/, Auth.currentAuthenticatedUser()];
160
- case 1:
161
- currentUser = _b.sent();
162
- return [3 /*break*/, 3];
163
- case 2:
164
- e_1 = _b.sent();
165
- return [3 /*break*/, 3];
166
- case 3:
167
- attributes = schema.namespaces.user.models[modelName].attributes;
168
- if (attributes) {
169
- authAttribute = attributes.find(function (attr) { return attr.type === 'auth'; });
170
- if (authAttribute.properties && authAttribute.properties.rules) {
171
- sortedRules = sortAuthRulesWithPriority(authAttribute.properties.rules);
172
- return [2 /*return*/, getAuthRules({ currentUser: currentUser, rules: sortedRules })];
151
+ export var multiAuthStrategy = function (amplifyContext) {
152
+ return function (_a) {
153
+ var schema = _a.schema, modelName = _a.modelName;
154
+ return __awaiter(void 0, void 0, void 0, function () {
155
+ var currentUser, e_1, attributes, authAttribute, sortedRules;
156
+ var _b;
157
+ return __generator(this, function (_c) {
158
+ switch (_c.label) {
159
+ case 0:
160
+ amplifyContext.Auth = amplifyContext.Auth || Auth;
161
+ _c.label = 1;
162
+ case 1:
163
+ _c.trys.push([1, 3, , 4]);
164
+ return [4 /*yield*/, amplifyContext.Auth.currentAuthenticatedUser()];
165
+ case 2:
166
+ currentUser = _c.sent();
167
+ return [3 /*break*/, 4];
168
+ case 3:
169
+ e_1 = _c.sent();
170
+ return [3 /*break*/, 4];
171
+ case 4:
172
+ attributes = schema.namespaces.user.models[modelName].attributes;
173
+ if (attributes) {
174
+ authAttribute = attributes.find(function (attr) { return attr.type === 'auth'; });
175
+ if ((_b = authAttribute === null || authAttribute === void 0 ? void 0 : authAttribute.properties) === null || _b === void 0 ? void 0 : _b.rules) {
176
+ sortedRules = sortAuthRulesWithPriority(authAttribute.properties.rules);
177
+ return [2 /*return*/, getAuthRules({ currentUser: currentUser, rules: sortedRules })];
178
+ }
173
179
  }
174
- }
175
- return [2 /*return*/, []];
176
- }
180
+ return [2 /*return*/, []];
181
+ }
182
+ });
177
183
  });
178
- });
184
+ };
179
185
  };
180
186
  //# sourceMappingURL=multiAuthStrategy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multiAuthStrategy.js","sourceRoot":"","sources":["../../src/authModeStrategies/multiAuthStrategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiAuthStrategy.js","sourceRoot":"","sources":["../../src/authModeStrategies/multiAuthStrategy.ts"],"names":[],"mappings":"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"}