@aws-amplify/datastore 4.7.5 → 5.0.1-console-preview.4432977.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.
Files changed (182) hide show
  1. package/README.md +4 -0
  2. package/lib/authModeStrategies/defaultAuthStrategy.js +3 -2
  3. package/lib/authModeStrategies/index.js +3 -3
  4. package/lib/authModeStrategies/multiAuthStrategy.js +81 -24
  5. package/lib/datastore/datastore.d.ts +3 -4
  6. package/lib/datastore/datastore.js +361 -227
  7. package/lib/index.d.ts +1 -1
  8. package/lib/index.js +25 -12
  9. package/lib/predicates/index.js +46 -12
  10. package/lib/predicates/next.d.ts +2 -2
  11. package/lib/predicates/next.js +172 -74
  12. package/lib/predicates/sort.js +3 -4
  13. package/lib/ssr/index.js +1 -1
  14. package/lib/storage/adapter/AsyncStorageAdapter.js +240 -128
  15. package/lib/storage/adapter/AsyncStorageDatabase.js +100 -39
  16. package/lib/storage/adapter/InMemoryStore.js +68 -17
  17. package/lib/storage/adapter/InMemoryStore.native.js +5 -3
  18. package/lib/storage/adapter/IndexedDBAdapter.js +355 -199
  19. package/lib/storage/adapter/StorageAdapterBase.js +154 -85
  20. package/lib/storage/adapter/getDefaultAdapter/index.js +8 -9
  21. package/lib/storage/adapter/getDefaultAdapter/index.native.js +4 -3
  22. package/lib/storage/adapter/index.js +0 -1
  23. package/lib/storage/relationship.js +31 -21
  24. package/lib/storage/storage.d.ts +3 -3
  25. package/lib/storage/storage.js +143 -61
  26. package/lib/sync/datastoreConnectivity.d.ts +1 -1
  27. package/lib/sync/datastoreConnectivity.js +57 -9
  28. package/lib/sync/datastoreReachability/index.js +3 -3
  29. package/lib/sync/datastoreReachability/index.native.js +7 -5
  30. package/lib/sync/index.d.ts +1 -1
  31. package/lib/sync/index.js +193 -125
  32. package/lib/sync/merger.js +81 -10
  33. package/lib/sync/outbox.js +101 -30
  34. package/lib/sync/processors/errorMaps.d.ts +1 -1
  35. package/lib/sync/processors/errorMaps.js +41 -6
  36. package/lib/sync/processors/mutation.d.ts +1 -1
  37. package/lib/sync/processors/mutation.js +192 -101
  38. package/lib/sync/processors/subscription.d.ts +4 -1
  39. package/lib/sync/processors/subscription.js +190 -178
  40. package/lib/sync/processors/sync.d.ts +1 -1
  41. package/lib/sync/processors/sync.js +113 -47
  42. package/lib/sync/utils.d.ts +4 -4
  43. package/lib/sync/utils.js +162 -81
  44. package/lib/tsconfig.tsbuildinfo +1 -0
  45. package/lib/types.d.ts +138 -140
  46. package/lib/types.js +40 -5
  47. package/lib/util.d.ts +9 -17
  48. package/lib/util.js +216 -100
  49. package/lib-esm/authModeStrategies/defaultAuthStrategy.js +0 -1
  50. package/lib-esm/authModeStrategies/index.js +0 -1
  51. package/lib-esm/authModeStrategies/multiAuthStrategy.js +76 -21
  52. package/lib-esm/datastore/datastore.d.ts +3 -4
  53. package/lib-esm/datastore/datastore.js +206 -77
  54. package/lib-esm/index.d.ts +1 -1
  55. package/lib-esm/index.js +0 -1
  56. package/lib-esm/predicates/index.js +40 -7
  57. package/lib-esm/predicates/next.d.ts +2 -2
  58. package/lib-esm/predicates/next.js +148 -52
  59. package/lib-esm/predicates/sort.js +2 -4
  60. package/lib-esm/ssr/index.js +0 -1
  61. package/lib-esm/storage/adapter/AsyncStorageAdapter.js +203 -95
  62. package/lib-esm/storage/adapter/AsyncStorageDatabase.js +66 -5
  63. package/lib-esm/storage/adapter/InMemoryStore.js +52 -2
  64. package/lib-esm/storage/adapter/InMemoryStore.native.js +0 -1
  65. package/lib-esm/storage/adapter/IndexedDBAdapter.js +271 -138
  66. package/lib-esm/storage/adapter/StorageAdapterBase.js +130 -62
  67. package/lib-esm/storage/adapter/getDefaultAdapter/index.js +2 -5
  68. package/lib-esm/storage/adapter/getDefaultAdapter/index.native.js +0 -1
  69. package/lib-esm/storage/adapter/index.js +1 -1
  70. package/lib-esm/storage/relationship.js +27 -18
  71. package/lib-esm/storage/storage.d.ts +3 -3
  72. package/lib-esm/storage/storage.js +87 -9
  73. package/lib-esm/sync/datastoreConnectivity.d.ts +1 -1
  74. package/lib-esm/sync/datastoreConnectivity.js +48 -3
  75. package/lib-esm/sync/datastoreReachability/index.js +1 -2
  76. package/lib-esm/sync/datastoreReachability/index.native.js +1 -2
  77. package/lib-esm/sync/index.d.ts +1 -1
  78. package/lib-esm/sync/index.js +136 -72
  79. package/lib-esm/sync/merger.js +73 -3
  80. package/lib-esm/sync/outbox.js +75 -5
  81. package/lib-esm/sync/processors/errorMaps.d.ts +1 -1
  82. package/lib-esm/sync/processors/errorMaps.js +39 -5
  83. package/lib-esm/sync/processors/mutation.d.ts +1 -1
  84. package/lib-esm/sync/processors/mutation.js +130 -44
  85. package/lib-esm/sync/processors/subscription.d.ts +4 -1
  86. package/lib-esm/sync/processors/subscription.js +134 -126
  87. package/lib-esm/sync/processors/sync.d.ts +1 -1
  88. package/lib-esm/sync/processors/sync.js +74 -12
  89. package/lib-esm/sync/utils.d.ts +4 -4
  90. package/lib-esm/sync/utils.js +135 -55
  91. package/lib-esm/tsconfig.tsbuildinfo +1 -0
  92. package/lib-esm/types.d.ts +138 -140
  93. package/lib-esm/types.js +36 -2
  94. package/lib-esm/util.d.ts +9 -17
  95. package/lib-esm/util.js +96 -16
  96. package/package.json +139 -132
  97. package/src/authModeStrategies/multiAuthStrategy.ts +11 -12
  98. package/src/datastore/datastore.ts +32 -25
  99. package/src/predicates/sort.ts +3 -1
  100. package/src/storage/adapter/InMemoryStore.ts +1 -1
  101. package/src/storage/adapter/IndexedDBAdapter.ts +1 -1
  102. package/src/storage/adapter/StorageAdapterBase.ts +1 -1
  103. package/src/storage/adapter/getDefaultAdapter/index.ts +2 -3
  104. package/src/storage/storage.ts +1 -1
  105. package/src/sync/datastoreConnectivity.ts +2 -2
  106. package/src/sync/datastoreReachability/index.native.ts +1 -1
  107. package/src/sync/datastoreReachability/index.ts +1 -1
  108. package/src/sync/index.ts +69 -78
  109. package/src/sync/processors/mutation.ts +16 -10
  110. package/src/sync/processors/subscription.ts +55 -127
  111. package/src/sync/processors/sync.ts +8 -4
  112. package/src/sync/utils.ts +7 -8
  113. package/src/types.ts +4 -8
  114. package/src/util.ts +5 -6
  115. package/lib/.tsbuildinfo +0 -3
  116. package/lib/authModeStrategies/defaultAuthStrategy.js.map +0 -1
  117. package/lib/authModeStrategies/index.js.map +0 -1
  118. package/lib/authModeStrategies/multiAuthStrategy.js.map +0 -1
  119. package/lib/datastore/datastore.js.map +0 -1
  120. package/lib/index.js.map +0 -1
  121. package/lib/predicates/index.js.map +0 -1
  122. package/lib/predicates/next.js.map +0 -1
  123. package/lib/predicates/sort.js.map +0 -1
  124. package/lib/ssr/index.js.map +0 -1
  125. package/lib/storage/adapter/AsyncStorageAdapter.js.map +0 -1
  126. package/lib/storage/adapter/AsyncStorageDatabase.js.map +0 -1
  127. package/lib/storage/adapter/InMemoryStore.js.map +0 -1
  128. package/lib/storage/adapter/InMemoryStore.native.js.map +0 -1
  129. package/lib/storage/adapter/IndexedDBAdapter.js.map +0 -1
  130. package/lib/storage/adapter/StorageAdapterBase.js.map +0 -1
  131. package/lib/storage/adapter/getDefaultAdapter/index.js.map +0 -1
  132. package/lib/storage/adapter/getDefaultAdapter/index.native.js.map +0 -1
  133. package/lib/storage/adapter/index.js.map +0 -1
  134. package/lib/storage/relationship.js.map +0 -1
  135. package/lib/storage/storage.js.map +0 -1
  136. package/lib/sync/datastoreConnectivity.js.map +0 -1
  137. package/lib/sync/datastoreReachability/index.js.map +0 -1
  138. package/lib/sync/datastoreReachability/index.native.js.map +0 -1
  139. package/lib/sync/index.js.map +0 -1
  140. package/lib/sync/merger.js.map +0 -1
  141. package/lib/sync/outbox.js.map +0 -1
  142. package/lib/sync/processors/errorMaps.js.map +0 -1
  143. package/lib/sync/processors/mutation.js.map +0 -1
  144. package/lib/sync/processors/subscription.js.map +0 -1
  145. package/lib/sync/processors/sync.js.map +0 -1
  146. package/lib/sync/utils.js.map +0 -1
  147. package/lib/types.js.map +0 -1
  148. package/lib/util.js.map +0 -1
  149. package/lib-esm/.tsbuildinfo +0 -3
  150. package/lib-esm/authModeStrategies/defaultAuthStrategy.js.map +0 -1
  151. package/lib-esm/authModeStrategies/index.js.map +0 -1
  152. package/lib-esm/authModeStrategies/multiAuthStrategy.js.map +0 -1
  153. package/lib-esm/datastore/datastore.js.map +0 -1
  154. package/lib-esm/index.js.map +0 -1
  155. package/lib-esm/predicates/index.js.map +0 -1
  156. package/lib-esm/predicates/next.js.map +0 -1
  157. package/lib-esm/predicates/sort.js.map +0 -1
  158. package/lib-esm/ssr/index.js.map +0 -1
  159. package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +0 -1
  160. package/lib-esm/storage/adapter/AsyncStorageDatabase.js.map +0 -1
  161. package/lib-esm/storage/adapter/InMemoryStore.js.map +0 -1
  162. package/lib-esm/storage/adapter/InMemoryStore.native.js.map +0 -1
  163. package/lib-esm/storage/adapter/IndexedDBAdapter.js.map +0 -1
  164. package/lib-esm/storage/adapter/StorageAdapterBase.js.map +0 -1
  165. package/lib-esm/storage/adapter/getDefaultAdapter/index.js.map +0 -1
  166. package/lib-esm/storage/adapter/getDefaultAdapter/index.native.js.map +0 -1
  167. package/lib-esm/storage/adapter/index.js.map +0 -1
  168. package/lib-esm/storage/relationship.js.map +0 -1
  169. package/lib-esm/storage/storage.js.map +0 -1
  170. package/lib-esm/sync/datastoreConnectivity.js.map +0 -1
  171. package/lib-esm/sync/datastoreReachability/index.js.map +0 -1
  172. package/lib-esm/sync/datastoreReachability/index.native.js.map +0 -1
  173. package/lib-esm/sync/index.js.map +0 -1
  174. package/lib-esm/sync/merger.js.map +0 -1
  175. package/lib-esm/sync/outbox.js.map +0 -1
  176. package/lib-esm/sync/processors/errorMaps.js.map +0 -1
  177. package/lib-esm/sync/processors/mutation.js.map +0 -1
  178. package/lib-esm/sync/processors/subscription.js.map +0 -1
  179. package/lib-esm/sync/processors/sync.js.map +0 -1
  180. package/lib-esm/sync/utils.js.map +0 -1
  181. package/lib-esm/types.js.map +0 -1
  182. package/lib-esm/util.js.map +0 -1
package/lib/index.d.ts CHANGED
@@ -9,7 +9,7 @@ export declare const utils: {
9
9
  item: T;
10
10
  instance: T;
11
11
  }[];
12
- validatePredicate: <T_2 extends Readonly<Record<string, any>>>(model: T_2, groupType: "and" | "or" | "not", predicatesOrGroups: (import("./types").PredicateObject<T_2> | import("./types").PredicatesGroup<T_2>)[]) => any;
12
+ validatePredicate: <T_2 extends Readonly<Record<string, any>>>(model: T_2, groupType: keyof import("./types").PredicateGroups<T_2>, predicatesOrGroups: (import("./types").PredicateObject<T_2> | import("./types").PredicatesGroup<T_2>)[]) => any;
13
13
  isNonModelConstructor: (obj: any) => obj is import("./types").NonModelTypeConstructor<any>;
14
14
  isModelConstructor: <T_3 extends Readonly<Record<string, any>>>(obj: any) => obj is import("./types").PersistentModelConstructor<T_3>;
15
15
  };
package/lib/index.js CHANGED
@@ -1,21 +1,35 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
17
+ exports.utils = exports.NAMESPACES = exports.ModelSortPredicateCreator = exports.ModelPredicateCreator = exports.Predicates = exports.AsyncItem = exports.AsyncCollection = exports.initSchema = exports.DataStoreClass = exports.DataStore = void 0;
4
18
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
5
19
  // SPDX-License-Identifier: Apache-2.0
6
20
  var datastore_1 = require("./datastore/datastore");
7
- exports.DataStore = datastore_1.DataStore;
8
- exports.DataStoreClass = datastore_1.DataStoreClass;
9
- exports.initSchema = datastore_1.initSchema;
10
- exports.AsyncCollection = datastore_1.AsyncCollection;
11
- exports.AsyncItem = datastore_1.AsyncItem;
21
+ Object.defineProperty(exports, "DataStore", { enumerable: true, get: function () { return datastore_1.DataStore; } });
22
+ Object.defineProperty(exports, "DataStoreClass", { enumerable: true, get: function () { return datastore_1.DataStoreClass; } });
23
+ Object.defineProperty(exports, "initSchema", { enumerable: true, get: function () { return datastore_1.initSchema; } });
24
+ Object.defineProperty(exports, "AsyncCollection", { enumerable: true, get: function () { return datastore_1.AsyncCollection; } });
25
+ Object.defineProperty(exports, "AsyncItem", { enumerable: true, get: function () { return datastore_1.AsyncItem; } });
12
26
  var predicates_1 = require("./predicates");
13
- exports.Predicates = predicates_1.Predicates;
14
- exports.ModelPredicateCreator = predicates_1.ModelPredicateCreator;
15
- exports.ModelSortPredicateCreator = predicates_1.ModelSortPredicateCreator;
27
+ Object.defineProperty(exports, "Predicates", { enumerable: true, get: function () { return predicates_1.Predicates; } });
28
+ Object.defineProperty(exports, "ModelPredicateCreator", { enumerable: true, get: function () { return predicates_1.ModelPredicateCreator; } });
29
+ Object.defineProperty(exports, "ModelSortPredicateCreator", { enumerable: true, get: function () { return predicates_1.ModelSortPredicateCreator; } });
16
30
  var util_1 = require("./util");
17
31
  var util_2 = require("./util");
18
- exports.NAMESPACES = util_2.NAMESPACES;
32
+ Object.defineProperty(exports, "NAMESPACES", { enumerable: true, get: function () { return util_2.NAMESPACES; } });
19
33
  exports.utils = {
20
34
  USER: util_1.USER,
21
35
  traverseModel: util_1.traverseModel,
@@ -23,5 +37,4 @@ exports.utils = {
23
37
  isNonModelConstructor: util_1.isNonModelConstructor,
24
38
  isModelConstructor: util_1.isModelConstructor,
25
39
  };
26
- tslib_1.__exportStar(require("./types"), exports);
27
- //# sourceMappingURL=index.js.map
40
+ __exportStar(require("./types"), exports);
@@ -1,9 +1,45 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __read = (this && this.__read) || function (o, n) {
14
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
15
+ if (!m) return o;
16
+ var i = m.call(o), r, ar = [], e;
17
+ try {
18
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
+ }
20
+ catch (error) { e = { error: error }; }
21
+ finally {
22
+ try {
23
+ if (r && !r.done && (m = i["return"])) m.call(i);
24
+ }
25
+ finally { if (e) throw e.error; }
26
+ }
27
+ return ar;
28
+ };
29
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
30
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
31
+ if (ar || !(i in from)) {
32
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
33
+ ar[i] = from[i];
34
+ }
35
+ }
36
+ return to.concat(ar || Array.prototype.slice.call(from));
37
+ };
2
38
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
39
+ exports.ModelPredicateCreator = exports.Predicates = exports.PredicateAll = exports.comparisonKeys = exports.isPredicatesAll = exports.ModelSortPredicateCreator = void 0;
4
40
  var util_1 = require("../util");
5
41
  var sort_1 = require("./sort");
6
- exports.ModelSortPredicateCreator = sort_1.ModelSortPredicateCreator;
42
+ Object.defineProperty(exports, "ModelSortPredicateCreator", { enumerable: true, get: function () { return sort_1.ModelSortPredicateCreator; } });
7
43
  var predicatesAllSet = new WeakSet();
8
44
  function isPredicatesAll(predicate) {
9
45
  return predicatesAllSet.has(predicate);
@@ -27,7 +63,7 @@ var groupKeys = new Set(['and', 'or', 'not']);
27
63
  * @param o The object to test.
28
64
  */
29
65
  var isGroup = function (o) {
30
- var keys = tslib_1.__spread(Object.keys(o));
66
+ var keys = __spreadArray([], __read(Object.keys(o)), false);
31
67
  return keys.length === 1 && groupKeys.has(keys[0]);
32
68
  };
33
69
  /**
@@ -62,7 +98,7 @@ exports.comparisonKeys = new Set([
62
98
  * @param o The object to test.
63
99
  */
64
100
  var isComparison = function (o) {
65
- var keys = tslib_1.__spread(Object.keys(o));
101
+ var keys = __spreadArray([], __read(Object.keys(o)), false);
66
102
  return !Array.isArray(o) && keys.length === 1 && exports.comparisonKeys.has(keys[0]);
67
103
  };
68
104
  /**
@@ -89,13 +125,13 @@ var Predicates = /** @class */ (function () {
89
125
  predicatesAllSet.add(predicate);
90
126
  return predicate;
91
127
  },
92
- enumerable: true,
128
+ enumerable: false,
93
129
  configurable: true
94
130
  });
95
131
  return Predicates;
96
132
  }());
97
133
  exports.Predicates = Predicates;
98
- var ModelPredicateCreator = /** @class */ (function () {
134
+ var ModelPredicateCreator = exports.ModelPredicateCreator = /** @class */ (function () {
99
135
  function ModelPredicateCreator() {
100
136
  }
101
137
  /**
@@ -134,8 +170,8 @@ var ModelPredicateCreator = /** @class */ (function () {
134
170
  * @param model The model instance to extract value equalities from.
135
171
  */
136
172
  ModelPredicateCreator.createForPk = function (modelDefinition, model) {
137
- var keyFields = util_1.extractPrimaryKeyFieldNames(modelDefinition);
138
- var keyValues = util_1.extractPrimaryKeyValues(model, keyFields);
173
+ var keyFields = (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition);
174
+ var keyValues = (0, util_1.extractPrimaryKeyValues)(model, keyFields);
139
175
  var predicate = this.createFromAST(modelDefinition, {
140
176
  and: keyFields.map(function (field, idx) {
141
177
  var _a;
@@ -158,7 +194,7 @@ var ModelPredicateCreator = /** @class */ (function () {
158
194
  var ast = {
159
195
  and: Object.entries(flatEqualities).map(function (_a) {
160
196
  var _b;
161
- var _c = tslib_1.__read(_a, 2), k = _c[0], v = _c[1];
197
+ var _c = __read(_a, 2), k = _c[0], v = _c[1];
162
198
  return (_b = {}, _b[k] = { eq: v }, _b);
163
199
  }),
164
200
  };
@@ -217,7 +253,7 @@ var ModelPredicateCreator = /** @class */ (function () {
217
253
  }
218
254
  else {
219
255
  var fieldKey = Object.keys(gql)[0];
220
- return tslib_1.__assign({ field: fieldKey }, this.transformGraphQLFilterNodeToPredicateAST(gql[fieldKey]));
256
+ return __assign({ field: fieldKey }, this.transformGraphQLFilterNodeToPredicateAST(gql[fieldKey]));
221
257
  }
222
258
  }
223
259
  };
@@ -254,5 +290,3 @@ var ModelPredicateCreator = /** @class */ (function () {
254
290
  ModelPredicateCreator.predicateGroupsMap = new WeakMap();
255
291
  return ModelPredicateCreator;
256
292
  }());
257
- exports.ModelPredicateCreator = ModelPredicateCreator;
258
- //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  import { PersistentModel, ModelMeta, ModelPredicate as StoragePredicate, PredicateInternalsKey, V5ModelPredicate as ModelPredicate, RecursiveModelPredicate } from '../types';
2
2
  import { ExclusiveStorage as StorageAdapter } from '../storage/storage';
3
- declare type GroupOperator = 'and' | 'or' | 'not';
4
- declare type UntypedCondition = {
3
+ type GroupOperator = 'and' | 'or' | 'not';
4
+ type UntypedCondition = {
5
5
  fetch: (storage: StorageAdapter) => Promise<Record<string, any>[]>;
6
6
  matches: (item: Record<string, any>) => Promise<boolean>;
7
7
  copy(extract?: GroupCondition): [UntypedCondition, GroupCondition | undefined];