@aws-amplify/datastore 4.0.12 → 4.0.13-push-notification-dryrun.43

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 (111) hide show
  1. package/lib/datastore/datastore.d.ts +29 -3
  2. package/lib/datastore/datastore.js +308 -147
  3. package/lib/datastore/datastore.js.map +1 -1
  4. package/lib/predicates/index.d.ts +77 -7
  5. package/lib/predicates/index.js +142 -122
  6. package/lib/predicates/index.js.map +1 -1
  7. package/lib/predicates/next.d.ts +51 -10
  8. package/lib/predicates/next.js +111 -91
  9. package/lib/predicates/next.js.map +1 -1
  10. package/lib/storage/adapter/AsyncStorageAdapter.d.ts +28 -30
  11. package/lib/storage/adapter/AsyncStorageAdapter.js +135 -532
  12. package/lib/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  13. package/lib/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  14. package/lib/storage/adapter/IndexedDBAdapter.d.ts +28 -29
  15. package/lib/storage/adapter/IndexedDBAdapter.js +490 -885
  16. package/lib/storage/adapter/IndexedDBAdapter.js.map +1 -1
  17. package/lib/storage/adapter/StorageAdapterBase.d.ts +134 -0
  18. package/lib/storage/adapter/StorageAdapterBase.js +439 -0
  19. package/lib/storage/adapter/StorageAdapterBase.js.map +1 -0
  20. package/lib/storage/relationship.d.ts +9 -0
  21. package/lib/storage/relationship.js +9 -0
  22. package/lib/storage/relationship.js.map +1 -1
  23. package/lib/storage/storage.d.ts +1 -1
  24. package/lib/storage/storage.js +4 -3
  25. package/lib/storage/storage.js.map +1 -1
  26. package/lib/sync/index.d.ts +15 -1
  27. package/lib/sync/index.js +80 -13
  28. package/lib/sync/index.js.map +1 -1
  29. package/lib/sync/outbox.js +14 -7
  30. package/lib/sync/outbox.js.map +1 -1
  31. package/lib/sync/processors/mutation.d.ts +10 -1
  32. package/lib/sync/processors/mutation.js +33 -12
  33. package/lib/sync/processors/mutation.js.map +1 -1
  34. package/lib/sync/processors/subscription.d.ts +7 -1
  35. package/lib/sync/processors/subscription.js +196 -135
  36. package/lib/sync/processors/subscription.js.map +1 -1
  37. package/lib/sync/processors/sync.d.ts +1 -1
  38. package/lib/sync/processors/sync.js.map +1 -1
  39. package/lib/sync/utils.d.ts +66 -2
  40. package/lib/sync/utils.js +264 -16
  41. package/lib/sync/utils.js.map +1 -1
  42. package/lib/types.d.ts +9 -1
  43. package/lib/types.js.map +1 -1
  44. package/lib/util.d.ts +16 -0
  45. package/lib/util.js +31 -2
  46. package/lib/util.js.map +1 -1
  47. package/lib-esm/datastore/datastore.d.ts +29 -3
  48. package/lib-esm/datastore/datastore.js +310 -149
  49. package/lib-esm/datastore/datastore.js.map +1 -1
  50. package/lib-esm/predicates/index.d.ts +77 -7
  51. package/lib-esm/predicates/index.js +143 -123
  52. package/lib-esm/predicates/index.js.map +1 -1
  53. package/lib-esm/predicates/next.d.ts +51 -10
  54. package/lib-esm/predicates/next.js +111 -91
  55. package/lib-esm/predicates/next.js.map +1 -1
  56. package/lib-esm/storage/adapter/AsyncStorageAdapter.d.ts +28 -30
  57. package/lib-esm/storage/adapter/AsyncStorageAdapter.js +138 -535
  58. package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +1 -1
  59. package/lib-esm/storage/adapter/AsyncStorageDatabase.js.map +1 -1
  60. package/lib-esm/storage/adapter/IndexedDBAdapter.d.ts +28 -29
  61. package/lib-esm/storage/adapter/IndexedDBAdapter.js +489 -884
  62. package/lib-esm/storage/adapter/IndexedDBAdapter.js.map +1 -1
  63. package/lib-esm/storage/adapter/StorageAdapterBase.d.ts +134 -0
  64. package/lib-esm/storage/adapter/StorageAdapterBase.js +437 -0
  65. package/lib-esm/storage/adapter/StorageAdapterBase.js.map +1 -0
  66. package/lib-esm/storage/relationship.d.ts +9 -0
  67. package/lib-esm/storage/relationship.js +9 -0
  68. package/lib-esm/storage/relationship.js.map +1 -1
  69. package/lib-esm/storage/storage.d.ts +1 -1
  70. package/lib-esm/storage/storage.js +4 -3
  71. package/lib-esm/storage/storage.js.map +1 -1
  72. package/lib-esm/sync/index.d.ts +15 -1
  73. package/lib-esm/sync/index.js +82 -15
  74. package/lib-esm/sync/index.js.map +1 -1
  75. package/lib-esm/sync/outbox.js +14 -7
  76. package/lib-esm/sync/outbox.js.map +1 -1
  77. package/lib-esm/sync/processors/mutation.d.ts +10 -1
  78. package/lib-esm/sync/processors/mutation.js +33 -12
  79. package/lib-esm/sync/processors/mutation.js.map +1 -1
  80. package/lib-esm/sync/processors/subscription.d.ts +7 -1
  81. package/lib-esm/sync/processors/subscription.js +197 -136
  82. package/lib-esm/sync/processors/subscription.js.map +1 -1
  83. package/lib-esm/sync/processors/sync.d.ts +1 -1
  84. package/lib-esm/sync/processors/sync.js.map +1 -1
  85. package/lib-esm/sync/utils.d.ts +66 -2
  86. package/lib-esm/sync/utils.js +261 -18
  87. package/lib-esm/sync/utils.js.map +1 -1
  88. package/lib-esm/types.d.ts +9 -1
  89. package/lib-esm/types.js.map +1 -1
  90. package/lib-esm/util.d.ts +16 -0
  91. package/lib-esm/util.js +32 -3
  92. package/lib-esm/util.js.map +1 -1
  93. package/package.json +12 -11
  94. package/src/datastore/datastore.ts +288 -159
  95. package/src/predicates/index.ts +145 -175
  96. package/src/predicates/next.ts +114 -81
  97. package/src/storage/adapter/AsyncStorageAdapter.ts +97 -563
  98. package/src/storage/adapter/AsyncStorageDatabase.ts +2 -2
  99. package/src/storage/adapter/IndexedDBAdapter.ts +318 -770
  100. package/src/storage/adapter/StorageAdapterBase.ts +545 -0
  101. package/src/storage/relationship.ts +9 -0
  102. package/src/storage/storage.ts +12 -9
  103. package/src/sync/index.ts +108 -20
  104. package/src/sync/outbox.ts +17 -11
  105. package/src/sync/processors/mutation.ts +35 -4
  106. package/src/sync/processors/subscription.ts +124 -10
  107. package/src/sync/processors/sync.ts +4 -1
  108. package/src/sync/utils.ts +285 -15
  109. package/src/types.ts +15 -2
  110. package/src/util.ts +40 -1
  111. package/CHANGELOG.md +0 -904
@@ -0,0 +1,437 @@
1
+ import { __asyncValues, __awaiter, __generator, __values } from "tslib";
2
+ import { ConsoleLogger as Logger } from '@aws-amplify/core';
3
+ import { ModelPredicateCreator } from '../../predicates';
4
+ import { isPredicateObj, } from '../../types';
5
+ import { getStorename, getIndexKeys, extractPrimaryKeyValues, traverseModel, validatePredicate, isModelConstructor, extractPrimaryKeyFieldNames, } from '../../util';
6
+ import { ModelRelationship } from '../relationship';
7
+ var logger = new Logger('DataStore');
8
+ var DB_NAME = 'amplify-datastore';
9
+ var StorageAdapterBase = /** @class */ (function () {
10
+ function StorageAdapterBase() {
11
+ this.dbName = DB_NAME;
12
+ }
13
+ /**
14
+ * Initializes local DB
15
+ *
16
+ * @param theSchema
17
+ * @param namespaceResolver
18
+ * @param modelInstanceCreator
19
+ * @param getModelConstructorByModelName
20
+ * @param sessionId
21
+ */
22
+ StorageAdapterBase.prototype.setUp = function (theSchema, namespaceResolver, modelInstanceCreator, getModelConstructorByModelName, sessionId) {
23
+ return __awaiter(this, void 0, void 0, function () {
24
+ var _a, error_1;
25
+ var _this = this;
26
+ return __generator(this, function (_b) {
27
+ switch (_b.label) {
28
+ case 0: return [4 /*yield*/, this.preSetUpChecks()];
29
+ case 1:
30
+ _b.sent();
31
+ if (!!this.initPromise) return [3 /*break*/, 2];
32
+ this.initPromise = new Promise(function (res, rej) {
33
+ _this.resolve = res;
34
+ _this.reject = rej;
35
+ });
36
+ return [3 /*break*/, 4];
37
+ case 2: return [4 /*yield*/, this.initPromise];
38
+ case 3:
39
+ _b.sent();
40
+ return [2 /*return*/];
41
+ case 4:
42
+ if (sessionId) {
43
+ this.dbName = DB_NAME + "-" + sessionId;
44
+ }
45
+ this.schema = theSchema;
46
+ this.namespaceResolver = namespaceResolver;
47
+ this.modelInstanceCreator = modelInstanceCreator;
48
+ this.getModelConstructorByModelName = getModelConstructorByModelName;
49
+ _b.label = 5;
50
+ case 5:
51
+ _b.trys.push([5, 8, , 9]);
52
+ if (!!this.db) return [3 /*break*/, 7];
53
+ _a = this;
54
+ return [4 /*yield*/, this.initDb()];
55
+ case 6:
56
+ _a.db = _b.sent();
57
+ this.resolve();
58
+ _b.label = 7;
59
+ case 7: return [3 /*break*/, 9];
60
+ case 8:
61
+ error_1 = _b.sent();
62
+ this.reject(error_1);
63
+ return [3 /*break*/, 9];
64
+ case 9: return [2 /*return*/];
65
+ }
66
+ });
67
+ });
68
+ };
69
+ /**
70
+ * @param modelConstructor
71
+ * @returns local DB table name
72
+ */
73
+ StorageAdapterBase.prototype.getStorenameForModel = function (modelConstructor) {
74
+ var namespace = this.namespaceResolver(modelConstructor);
75
+ var modelName = modelConstructor.name;
76
+ return getStorename(namespace, modelName);
77
+ };
78
+ /**
79
+ *
80
+ * @param model - instantiated model record
81
+ * @returns the record's primary key values
82
+ */
83
+ StorageAdapterBase.prototype.getIndexKeyValuesFromModel = function (model) {
84
+ var modelConstructor = Object.getPrototypeOf(model)
85
+ .constructor;
86
+ var namespaceName = this.namespaceResolver(modelConstructor);
87
+ var keys = getIndexKeys(this.schema.namespaces[namespaceName], modelConstructor.name);
88
+ return extractPrimaryKeyValues(model, keys);
89
+ };
90
+ /**
91
+ * Common metadata for `save` operation
92
+ * used by individual storage adapters
93
+ *
94
+ * @param model
95
+ */
96
+ StorageAdapterBase.prototype.saveMetadata = function (model) {
97
+ var _this = this;
98
+ var modelConstructor = Object.getPrototypeOf(model)
99
+ .constructor;
100
+ var storeName = this.getStorenameForModel(modelConstructor);
101
+ var namespaceName = this.namespaceResolver(modelConstructor);
102
+ var connectedModels = traverseModel(modelConstructor.name, model, this.schema.namespaces[namespaceName], this.modelInstanceCreator, this.getModelConstructorByModelName);
103
+ var set = new Set();
104
+ var connectionStoreNames = Object.values(connectedModels).map(function (_a) {
105
+ var modelName = _a.modelName, item = _a.item, instance = _a.instance;
106
+ var storeName = getStorename(namespaceName, modelName);
107
+ set.add(storeName);
108
+ var keys = getIndexKeys(_this.schema.namespaces[namespaceName], modelName);
109
+ return { storeName: storeName, item: item, instance: instance, keys: keys };
110
+ });
111
+ var modelKeyValues = this.getIndexKeyValuesFromModel(model);
112
+ return { storeName: storeName, set: set, connectionStoreNames: connectionStoreNames, modelKeyValues: modelKeyValues };
113
+ };
114
+ /**
115
+ * Enforces conditional save. Throws if condition is not met.
116
+ * used by individual storage adapters
117
+ *
118
+ * @param model
119
+ */
120
+ StorageAdapterBase.prototype.validateSaveCondition = function (condition, fromDB) {
121
+ if (!(condition && fromDB)) {
122
+ return;
123
+ }
124
+ var predicates = ModelPredicateCreator.getPredicates(condition);
125
+ var _a = predicates, predicateObjs = _a.predicates, type = _a.type;
126
+ var isValid = validatePredicate(fromDB, type, predicateObjs);
127
+ if (!isValid) {
128
+ var msg = 'Conditional update failed';
129
+ logger.error(msg, { model: fromDB, condition: predicateObjs });
130
+ throw new Error(msg);
131
+ }
132
+ };
133
+ /**
134
+ * Instantiate models from POJO records returned from the database
135
+ *
136
+ * @param namespaceName - string model namespace
137
+ * @param srcModelName - string model name
138
+ * @param records - array of uninstantiated records
139
+ * @returns
140
+ */
141
+ StorageAdapterBase.prototype.load = function (namespaceName, srcModelName, records) {
142
+ return __awaiter(this, void 0, void 0, function () {
143
+ var namespace, relations, connectionStoreNames, modelConstructor;
144
+ var _this = this;
145
+ return __generator(this, function (_a) {
146
+ namespace = this.schema.namespaces[namespaceName];
147
+ relations = namespace.relationships[srcModelName].relationTypes;
148
+ connectionStoreNames = relations.map(function (_a) {
149
+ var modelName = _a.modelName;
150
+ return getStorename(namespaceName, modelName);
151
+ });
152
+ modelConstructor = this.getModelConstructorByModelName(namespaceName, srcModelName);
153
+ if (connectionStoreNames.length === 0) {
154
+ return [2 /*return*/, records.map(function (record) {
155
+ return _this.modelInstanceCreator(modelConstructor, record);
156
+ })];
157
+ }
158
+ return [2 /*return*/, records.map(function (record) {
159
+ return _this.modelInstanceCreator(modelConstructor, record);
160
+ })];
161
+ });
162
+ });
163
+ };
164
+ /**
165
+ * Extracts operands from a predicate group into an array of key values
166
+ * Used in the query method
167
+ *
168
+ * @param predicates - predicate group
169
+ * @param keyPath - string array of key names ['id', 'sortKey']
170
+ * @returns string[] of key values
171
+ *
172
+ * @example
173
+ * ```js
174
+ * { and:[{ id: { eq: 'abc' }}, { sortKey: { eq: 'def' }}] }
175
+ * ```
176
+ * Becomes
177
+ * ```
178
+ * ['abc', 'def']
179
+ * ```
180
+ */
181
+ StorageAdapterBase.prototype.keyValueFromPredicate = function (predicates, keyPath) {
182
+ var e_1, _a;
183
+ var predicateObjs = predicates.predicates;
184
+ if (predicateObjs.length !== keyPath.length) {
185
+ return;
186
+ }
187
+ var keyValues = [];
188
+ var _loop_1 = function (key) {
189
+ var predicateObj = predicateObjs.find(function (p) {
190
+ // it's a relevant predicate object only if it's an equality
191
+ // operation for a key field from the key:
192
+ return isPredicateObj(p) &&
193
+ p.field === key &&
194
+ p.operator === 'eq' &&
195
+ p.operand !== null &&
196
+ p.operand !== undefined;
197
+ });
198
+ predicateObj && keyValues.push(predicateObj.operand);
199
+ };
200
+ try {
201
+ for (var keyPath_1 = __values(keyPath), keyPath_1_1 = keyPath_1.next(); !keyPath_1_1.done; keyPath_1_1 = keyPath_1.next()) {
202
+ var key = keyPath_1_1.value;
203
+ _loop_1(key);
204
+ }
205
+ }
206
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
207
+ finally {
208
+ try {
209
+ if (keyPath_1_1 && !keyPath_1_1.done && (_a = keyPath_1.return)) _a.call(keyPath_1);
210
+ }
211
+ finally { if (e_1) throw e_1.error; }
212
+ }
213
+ return keyValues.length === keyPath.length ? keyValues : undefined;
214
+ };
215
+ /**
216
+ * Common metadata for `query` operation
217
+ * used by individual storage adapters
218
+ *
219
+ * @param modelConstructor
220
+ * @param predicate
221
+ * @param pagination
222
+ */
223
+ StorageAdapterBase.prototype.queryMetadata = function (modelConstructor, predicate, pagination) {
224
+ var storeName = this.getStorenameForModel(modelConstructor);
225
+ var namespaceName = this.namespaceResolver(modelConstructor);
226
+ var predicates = predicate && ModelPredicateCreator.getPredicates(predicate);
227
+ var keyPath = getIndexKeys(this.schema.namespaces[namespaceName], modelConstructor.name);
228
+ var queryByKey = predicates && this.keyValueFromPredicate(predicates, keyPath);
229
+ var hasSort = pagination && pagination.sort;
230
+ var hasPagination = pagination && pagination.limit;
231
+ return {
232
+ storeName: storeName,
233
+ namespaceName: namespaceName,
234
+ queryByKey: queryByKey,
235
+ predicates: predicates,
236
+ hasSort: hasSort,
237
+ hasPagination: hasPagination,
238
+ };
239
+ };
240
+ /**
241
+ * Delete record
242
+ * Cascades to related records (for Has One and Has Many relationships)
243
+ *
244
+ * @param modelOrModelConstructor
245
+ * @param condition
246
+ * @returns
247
+ */
248
+ StorageAdapterBase.prototype.delete = function (modelOrModelConstructor, condition) {
249
+ return __awaiter(this, void 0, void 0, function () {
250
+ var deleteQueue, modelConstructor, namespace, models, deletedModels, deletedModels, model, modelConstructor, namespaceName, storeName, keyValues, fromDB, msg, predicates, _a, predicateObjs, type, isValid, msg, deletedModels;
251
+ return __generator(this, function (_b) {
252
+ switch (_b.label) {
253
+ case 0: return [4 /*yield*/, this.preOpCheck()];
254
+ case 1:
255
+ _b.sent();
256
+ deleteQueue = [];
257
+ if (!isModelConstructor(modelOrModelConstructor)) return [3 /*break*/, 9];
258
+ modelConstructor = modelOrModelConstructor;
259
+ namespace = this.namespaceResolver(modelConstructor);
260
+ return [4 /*yield*/, this.query(modelConstructor, condition)];
261
+ case 2:
262
+ models = _b.sent();
263
+ if (!(condition !== undefined)) return [3 /*break*/, 5];
264
+ return [4 /*yield*/, this.deleteTraverse(models, modelConstructor, namespace, deleteQueue)];
265
+ case 3:
266
+ _b.sent();
267
+ return [4 /*yield*/, this.deleteItem(deleteQueue)];
268
+ case 4:
269
+ _b.sent();
270
+ deletedModels = deleteQueue.reduce(function (acc, _a) {
271
+ var items = _a.items;
272
+ return acc.concat(items);
273
+ }, []);
274
+ return [2 /*return*/, [models, deletedModels]];
275
+ case 5: return [4 /*yield*/, this.deleteTraverse(models, modelConstructor, namespace, deleteQueue)];
276
+ case 6:
277
+ _b.sent();
278
+ return [4 /*yield*/, this.deleteItem(deleteQueue)];
279
+ case 7:
280
+ _b.sent();
281
+ deletedModels = deleteQueue.reduce(function (acc, _a) {
282
+ var items = _a.items;
283
+ return acc.concat(items);
284
+ }, []);
285
+ return [2 /*return*/, [models, deletedModels]];
286
+ case 8: return [3 /*break*/, 16];
287
+ case 9:
288
+ model = modelOrModelConstructor;
289
+ modelConstructor = Object.getPrototypeOf(model)
290
+ .constructor;
291
+ namespaceName = this.namespaceResolver(modelConstructor);
292
+ storeName = this.getStorenameForModel(modelConstructor);
293
+ if (!condition) return [3 /*break*/, 12];
294
+ keyValues = this.getIndexKeyValuesFromModel(model);
295
+ return [4 /*yield*/, this._get(storeName, keyValues)];
296
+ case 10:
297
+ fromDB = _b.sent();
298
+ if (fromDB === undefined) {
299
+ msg = 'Model instance not found in storage';
300
+ logger.warn(msg, { model: model });
301
+ return [2 /*return*/, [[model], []]];
302
+ }
303
+ predicates = ModelPredicateCreator.getPredicates(condition);
304
+ _a = predicates, predicateObjs = _a.predicates, type = _a.type;
305
+ isValid = validatePredicate(fromDB, type, predicateObjs);
306
+ if (!isValid) {
307
+ msg = 'Conditional update failed';
308
+ logger.error(msg, { model: fromDB, condition: predicateObjs });
309
+ throw new Error(msg);
310
+ }
311
+ return [4 /*yield*/, this.deleteTraverse([model], modelConstructor, namespaceName, deleteQueue)];
312
+ case 11:
313
+ _b.sent();
314
+ return [3 /*break*/, 14];
315
+ case 12: return [4 /*yield*/, this.deleteTraverse([model], modelConstructor, namespaceName, deleteQueue)];
316
+ case 13:
317
+ _b.sent();
318
+ _b.label = 14;
319
+ case 14: return [4 /*yield*/, this.deleteItem(deleteQueue)];
320
+ case 15:
321
+ _b.sent();
322
+ deletedModels = deleteQueue.reduce(function (acc, _a) {
323
+ var items = _a.items;
324
+ return acc.concat(items);
325
+ }, []);
326
+ return [2 /*return*/, [[model], deletedModels]];
327
+ case 16: return [2 /*return*/];
328
+ }
329
+ });
330
+ });
331
+ };
332
+ /**
333
+ * Recursively traverse relationship graph and add
334
+ * all Has One and Has Many relations to `deleteQueue` param
335
+ *
336
+ * Actual deletion of records added to `deleteQueue` occurs in the `delete` method
337
+ *
338
+ * @param models
339
+ * @param modelConstructor
340
+ * @param namespace
341
+ * @param deleteQueue
342
+ */
343
+ StorageAdapterBase.prototype.deleteTraverse = function (models, modelConstructor, namespace, deleteQueue) {
344
+ var models_1, models_1_1;
345
+ var e_2, _a, e_3, _b;
346
+ return __awaiter(this, void 0, void 0, function () {
347
+ var cascadingRelationTypes, model, modelDefinition, modelMeta, relationships, relationships_1, relationships_1_1, r, queryObject, relatedRecords, e_3_1, e_2_1;
348
+ return __generator(this, function (_c) {
349
+ switch (_c.label) {
350
+ case 0:
351
+ cascadingRelationTypes = ['HAS_ONE', 'HAS_MANY'];
352
+ _c.label = 1;
353
+ case 1:
354
+ _c.trys.push([1, 19, 20, 25]);
355
+ models_1 = __asyncValues(models);
356
+ _c.label = 2;
357
+ case 2: return [4 /*yield*/, models_1.next()];
358
+ case 3:
359
+ if (!(models_1_1 = _c.sent(), !models_1_1.done)) return [3 /*break*/, 18];
360
+ model = models_1_1.value;
361
+ modelDefinition = this.schema.namespaces[namespace].models[modelConstructor.name];
362
+ modelMeta = {
363
+ builder: modelConstructor,
364
+ schema: modelDefinition,
365
+ pkField: extractPrimaryKeyFieldNames(modelDefinition),
366
+ };
367
+ relationships = ModelRelationship.allFrom(modelMeta).filter(function (r) {
368
+ return cascadingRelationTypes.includes(r.type);
369
+ });
370
+ _c.label = 4;
371
+ case 4:
372
+ _c.trys.push([4, 11, 12, 17]);
373
+ relationships_1 = __asyncValues(relationships);
374
+ _c.label = 5;
375
+ case 5: return [4 /*yield*/, relationships_1.next()];
376
+ case 6:
377
+ if (!(relationships_1_1 = _c.sent(), !relationships_1_1.done)) return [3 /*break*/, 10];
378
+ r = relationships_1_1.value;
379
+ queryObject = r.createRemoteQueryObject(model);
380
+ if (!(queryObject !== null)) return [3 /*break*/, 9];
381
+ return [4 /*yield*/, this.query(r.remoteModelConstructor, ModelPredicateCreator.createFromFlatEqualities(r.remoteDefinition, queryObject))];
382
+ case 7:
383
+ relatedRecords = _c.sent();
384
+ return [4 /*yield*/, this.deleteTraverse(relatedRecords, r.remoteModelConstructor, namespace, deleteQueue)];
385
+ case 8:
386
+ _c.sent();
387
+ _c.label = 9;
388
+ case 9: return [3 /*break*/, 5];
389
+ case 10: return [3 /*break*/, 17];
390
+ case 11:
391
+ e_3_1 = _c.sent();
392
+ e_3 = { error: e_3_1 };
393
+ return [3 /*break*/, 17];
394
+ case 12:
395
+ _c.trys.push([12, , 15, 16]);
396
+ if (!(relationships_1_1 && !relationships_1_1.done && (_b = relationships_1.return))) return [3 /*break*/, 14];
397
+ return [4 /*yield*/, _b.call(relationships_1)];
398
+ case 13:
399
+ _c.sent();
400
+ _c.label = 14;
401
+ case 14: return [3 /*break*/, 16];
402
+ case 15:
403
+ if (e_3) throw e_3.error;
404
+ return [7 /*endfinally*/];
405
+ case 16: return [7 /*endfinally*/];
406
+ case 17: return [3 /*break*/, 2];
407
+ case 18: return [3 /*break*/, 25];
408
+ case 19:
409
+ e_2_1 = _c.sent();
410
+ e_2 = { error: e_2_1 };
411
+ return [3 /*break*/, 25];
412
+ case 20:
413
+ _c.trys.push([20, , 23, 24]);
414
+ if (!(models_1_1 && !models_1_1.done && (_a = models_1.return))) return [3 /*break*/, 22];
415
+ return [4 /*yield*/, _a.call(models_1)];
416
+ case 21:
417
+ _c.sent();
418
+ _c.label = 22;
419
+ case 22: return [3 /*break*/, 24];
420
+ case 23:
421
+ if (e_2) throw e_2.error;
422
+ return [7 /*endfinally*/];
423
+ case 24: return [7 /*endfinally*/];
424
+ case 25:
425
+ deleteQueue.push({
426
+ storeName: getStorename(namespace, modelConstructor.name),
427
+ items: models,
428
+ });
429
+ return [2 /*return*/];
430
+ }
431
+ });
432
+ });
433
+ };
434
+ return StorageAdapterBase;
435
+ }());
436
+ export { StorageAdapterBase };
437
+ //# sourceMappingURL=StorageAdapterBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageAdapterBase.js","sourceRoot":"","sources":["../../../src/storage/adapter/StorageAdapterBase.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,15 @@ export declare class ModelRelationship<T> {
87
87
  * key fields.
88
88
  */
89
89
  private get localAssociatedWith();
90
+ /**
91
+ * The `remote` model's associated field's `assocation` metadata, if
92
+ * present.
93
+ *
94
+ * This is used when determining if the remote model's associated field
95
+ * specifies which FK fields to use. If this value is `undefined`, the
96
+ * name of the remote field (`this.localAssociatedWith`) *is* the remote
97
+ * key field.
98
+ */
90
99
  private get explicitRemoteAssociation();
91
100
  /**
92
101
  * The field names on the remote model that can used to query or queried to match
@@ -219,6 +219,15 @@ var ModelRelationship = /** @class */ (function () {
219
219
  configurable: true
220
220
  });
221
221
  Object.defineProperty(ModelRelationship.prototype, "explicitRemoteAssociation", {
222
+ /**
223
+ * The `remote` model's associated field's `assocation` metadata, if
224
+ * present.
225
+ *
226
+ * This is used when determining if the remote model's associated field
227
+ * specifies which FK fields to use. If this value is `undefined`, the
228
+ * name of the remote field (`this.localAssociatedWith`) *is* the remote
229
+ * key field.
230
+ */
222
231
  get: function () {
223
232
  var _a;
224
233
  if (this.localAssociatedWith) {
@@ -1 +1 @@
1
- {"version":3,"file":"relationship.js","sourceRoot":"","sources":["../../src/storage/relationship.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relationship.js","sourceRoot":"","sources":["../../src/storage/relationship.ts"],"names":[],"mappings":"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"}
@@ -29,7 +29,7 @@ declare class StorageClass implements StorageFacade {
29
29
  observe<T extends PersistentModel>(modelConstructor?: PersistentModelConstructor<T> | null, predicate?: ModelPredicate<T> | null, skipOwn?: Symbol): Observable<SubscriptionMessage<T>>;
30
30
  clear(completeObservable?: boolean): Promise<void>;
31
31
  batchSave<T extends PersistentModel>(modelConstructor: PersistentModelConstructor<any>, items: ModelInstanceMetadata[], mutator?: Symbol): Promise<[T, OpType][]>;
32
- private getUpdateMutationInput;
32
+ private getChangedFieldsInput;
33
33
  }
34
34
  declare class ExclusiveStorage implements StorageFacade {
35
35
  private storage;
@@ -76,7 +76,8 @@ var StorageClass = /** @class */ (function () {
76
76
  var updateMutationInput;
77
77
  // don't attempt to calc mutation input when storage.save
78
78
  // is called by Merger, i.e., when processing an AppSync response
79
- if (opType === OpType.UPDATE && !syncResponse) {
79
+ if ((opType === OpType.UPDATE || opType === OpType.INSERT) &&
80
+ !syncResponse) {
80
81
  //
81
82
  // TODO: LOOK!!!
82
83
  // the `model` used here is in effect regardless of what model
@@ -88,7 +89,7 @@ var StorageClass = /** @class */ (function () {
88
89
  // leaving as-is, because it's currently unclear whether anything
89
90
  // depends on this remaining as-is.
90
91
  //
91
- updateMutationInput = _this.getUpdateMutationInput(model, savedElement, patchesTuple);
92
+ updateMutationInput = _this.getChangedFieldsInput(model, savedElement, patchesTuple);
92
93
  // // an update without changed user fields
93
94
  // => don't create mutationEvent
94
95
  if (updateMutationInput === null) {
@@ -279,7 +280,7 @@ var StorageClass = /** @class */ (function () {
279
280
  });
280
281
  };
281
282
  // returns null if no user fields were changed (determined by value comparison)
282
- StorageClass.prototype.getUpdateMutationInput = function (model, originalElement, patchesTuple) {
283
+ StorageClass.prototype.getChangedFieldsInput = function (model, originalElement, patchesTuple) {
283
284
  var e_1, _a;
284
285
  var _b;
285
286
  var containsPatches = patchesTuple && patchesTuple.length;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/storage/storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/storage/storage.ts"],"names":[],"mappings":"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"}
@@ -67,9 +67,14 @@ export declare class SyncEngine {
67
67
  private readonly outbox;
68
68
  private readonly datastoreConnectivity;
69
69
  private readonly modelSyncedStatus;
70
+ private unsleepSyncQueriesObservable;
71
+ private waitForSleepState;
72
+ private syncQueriesObservableStartSleeping;
73
+ private stopDisruptionListener;
74
+ private connectionDisrupted;
70
75
  private runningProcesses;
71
76
  getModelSyncedStatus(modelConstructor: PersistentModelConstructor<any>): boolean;
72
- constructor(schema: InternalSchema, namespaceResolver: NamespaceResolver, modelClasses: TypeConstructorMap, userModelClasses: TypeConstructorMap, storage: Storage, modelInstanceCreator: ModelInstanceCreator, conflictHandler: ConflictHandler, errorHandler: ErrorHandler, syncPredicates: WeakMap<SchemaModel, ModelPredicate<any>>, amplifyConfig: Record<string, any>, authModeStrategy: AuthModeStrategy, amplifyContext: AmplifyContext, connectivityMonitor?: DataStoreConnectivity);
77
+ constructor(schema: InternalSchema, namespaceResolver: NamespaceResolver, modelClasses: TypeConstructorMap, userModelClasses: TypeConstructorMap, storage: Storage, modelInstanceCreator: ModelInstanceCreator, conflictHandler: ConflictHandler, errorHandler: ErrorHandler, syncPredicates: WeakMap<SchemaModel, ModelPredicate<any> | null>, amplifyConfig: Record<string, any>, authModeStrategy: AuthModeStrategy, amplifyContext: AmplifyContext, connectivityMonitor?: DataStoreConnectivity);
73
78
  start(params: StartParams): Observable<ControlMessageType<ControlMessage>>;
74
79
  private getModelsMetadataWithNextFullSync;
75
80
  private syncQueriesObservable;
@@ -85,5 +90,14 @@ export declare class SyncEngine {
85
90
  private getModelMetadata;
86
91
  private getModelDefinition;
87
92
  static getNamespace(): SchemaNamespace;
93
+ /**
94
+ * listen for websocket connection disruption
95
+ *
96
+ * May indicate there was a period of time where messages
97
+ * from AppSync were missed. A sync needs to be triggered to
98
+ * retrieve the missed data.
99
+ */
100
+ private startDisruptionListener;
101
+ private scheduleSync;
88
102
  }
89
103
  export {};