@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
@@ -1,14 +1,130 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
41
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
42
+ return new (P || (P = Promise))(function (resolve, reject) {
43
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
44
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
45
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
46
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
47
+ });
48
+ };
49
+ var __generator = (this && this.__generator) || function (thisArg, body) {
50
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
51
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
52
+ function verb(n) { return function (v) { return step([n, v]); }; }
53
+ function step(op) {
54
+ if (f) throw new TypeError("Generator is already executing.");
55
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
56
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
57
+ if (y = 0, t) op = [op[0] & 2, t.value];
58
+ switch (op[0]) {
59
+ case 0: case 1: t = op; break;
60
+ case 4: _.label++; return { value: op[1], done: false };
61
+ case 5: _.label++; y = op[1]; op = [0]; continue;
62
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
63
+ default:
64
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
65
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
66
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
67
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
68
+ if (t[2]) _.ops.pop();
69
+ _.trys.pop(); continue;
70
+ }
71
+ op = body.call(thisArg, _);
72
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
73
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
74
+ }
75
+ };
76
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
77
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
78
+ var m = o[Symbol.asyncIterator], i;
79
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
80
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
81
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
82
+ };
83
+ var __values = (this && this.__values) || function(o) {
84
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
85
+ if (m) return m.call(o);
86
+ if (o && typeof o.length === "number") return {
87
+ next: function () {
88
+ if (o && i >= o.length) o = void 0;
89
+ return { value: o && o[i++], done: !o };
90
+ }
91
+ };
92
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
93
+ };
94
+ var __read = (this && this.__read) || function (o, n) {
95
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
96
+ if (!m) return o;
97
+ var i = m.call(o), r, ar = [], e;
98
+ try {
99
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
100
+ }
101
+ catch (error) { e = { error: error }; }
102
+ finally {
103
+ try {
104
+ if (r && !r.done && (m = i["return"])) m.call(i);
105
+ }
106
+ finally { if (e) throw e.error; }
107
+ }
108
+ return ar;
109
+ };
110
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
111
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
112
+ if (ar || !(i in from)) {
113
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
114
+ ar[i] = from[i];
115
+ }
116
+ }
117
+ return to.concat(ar || Array.prototype.slice.call(from));
118
+ };
2
119
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
120
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
5
121
  // SPDX-License-Identifier: Apache-2.0
6
- var core_1 = require("@aws-amplify/core");
7
- var idb = tslib_1.__importStar(require("idb"));
122
+ var idb = __importStar(require("idb"));
8
123
  var types_1 = require("../../types");
9
124
  var util_1 = require("../../util");
10
125
  var StorageAdapterBase_1 = require("./StorageAdapterBase");
11
- var logger = new core_1.ConsoleLogger('DataStore');
126
+ var utils_1 = require("@aws-amplify/core/internals/utils");
127
+ var logger = new utils_1.Logger('DataStore');
12
128
  /**
13
129
  * The point after which queries composed of multiple simple OR conditions
14
130
  * should scan-and-filter instead of individual queries for each condition.
@@ -34,7 +150,7 @@ var MULTI_OR_CONDITION_SCAN_BREAKPOINT = 7;
34
150
  //
35
151
  var DB_VERSION = 3;
36
152
  var IndexedDBAdapter = /** @class */ (function (_super) {
37
- tslib_1.__extends(IndexedDBAdapter, _super);
153
+ __extends(IndexedDBAdapter, _super);
38
154
  function IndexedDBAdapter() {
39
155
  var _this = _super !== null && _super.apply(this, arguments) || this;
40
156
  _this.safariCompatabilityMode = false;
@@ -57,8 +173,8 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
57
173
  }
58
174
  // checks are called by StorageAdapterBase class
59
175
  IndexedDBAdapter.prototype.preSetUpChecks = function () {
60
- return tslib_1.__awaiter(this, void 0, void 0, function () {
61
- return tslib_1.__generator(this, function (_a) {
176
+ return __awaiter(this, void 0, void 0, function () {
177
+ return __generator(this, function (_a) {
62
178
  switch (_a.label) {
63
179
  case 0: return [4 /*yield*/, this.checkPrivate()];
64
180
  case 1:
@@ -72,8 +188,8 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
72
188
  });
73
189
  };
74
190
  IndexedDBAdapter.prototype.preOpCheck = function () {
75
- return tslib_1.__awaiter(this, void 0, void 0, function () {
76
- return tslib_1.__generator(this, function (_a) {
191
+ return __awaiter(this, void 0, void 0, function () {
192
+ return __generator(this, function (_a) {
77
193
  switch (_a.label) {
78
194
  case 0: return [4 /*yield*/, this.checkPrivate()];
79
195
  case 1:
@@ -93,16 +209,16 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
93
209
  * @returns IDB Database instance
94
210
  */
95
211
  IndexedDBAdapter.prototype.initDb = function () {
96
- return tslib_1.__awaiter(this, void 0, void 0, function () {
212
+ return __awaiter(this, void 0, void 0, function () {
97
213
  var _this = this;
98
- return tslib_1.__generator(this, function (_a) {
214
+ return __generator(this, function (_a) {
99
215
  switch (_a.label) {
100
216
  case 0: return [4 /*yield*/, idb.openDB(this.dbName, DB_VERSION, {
101
- upgrade: function (db, oldVersion, newVersion, txn) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
217
+ upgrade: function (db, oldVersion, newVersion, txn) { return __awaiter(_this, void 0, void 0, function () {
102
218
  var _a, _b, storeName, origStore, tmpName, _c, namespaceName, modelName, modelInCurrentSchema, newStore, cursor, count, e_1_1, error_1;
103
219
  var e_1, _d;
104
220
  var _this = this;
105
- return tslib_1.__generator(this, function (_e) {
221
+ return __generator(this, function (_e) {
106
222
  switch (_e.label) {
107
223
  case 0:
108
224
  // create new database
@@ -110,7 +226,7 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
110
226
  Object.keys(this.schema.namespaces).forEach(function (namespaceName) {
111
227
  var namespace = _this.schema.namespaces[namespaceName];
112
228
  Object.keys(namespace.models).forEach(function (modelName) {
113
- var storeName = util_1.getStorename(namespaceName, modelName);
229
+ var storeName = (0, util_1.getStorename)(namespaceName, modelName);
114
230
  _this.createObjectStoreForModel(db, namespaceName, storeName, modelName);
115
231
  });
116
232
  });
@@ -123,13 +239,13 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
123
239
  _e.label = 2;
124
240
  case 2:
125
241
  _e.trys.push([2, 11, 12, 13]);
126
- _a = tslib_1.__values(txn.objectStoreNames), _b = _a.next();
242
+ _a = __values(txn.objectStoreNames), _b = _a.next();
127
243
  _e.label = 3;
128
244
  case 3:
129
245
  if (!!_b.done) return [3 /*break*/, 10];
130
246
  storeName = _b.value;
131
247
  origStore = txn.objectStore(storeName);
132
- tmpName = "tmp_" + storeName;
248
+ tmpName = "tmp_".concat(storeName);
133
249
  origStore.name = tmpName;
134
250
  _c = this.getNamespaceAndModelFromStorename(storeName), namespaceName = _c.namespaceName, modelName = _c.modelName;
135
251
  modelInCurrentSchema = modelName in this.schema.namespaces[namespaceName].models;
@@ -159,7 +275,7 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
159
275
  case 8:
160
276
  // delete original
161
277
  db.deleteObjectStore(tmpName);
162
- logger.debug(count + " " + storeName + " records migrated");
278
+ logger.debug("".concat(count, " ").concat(storeName, " records migrated"));
163
279
  _e.label = 9;
164
280
  case 9:
165
281
  _b = _a.next();
@@ -184,14 +300,14 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
184
300
  var objectStoreNames = new Set(txn.objectStoreNames);
185
301
  Object.keys(namespace.models)
186
302
  .map(function (modelName) {
187
- return [modelName, util_1.getStorename(namespaceName, modelName)];
303
+ return [modelName, (0, util_1.getStorename)(namespaceName, modelName)];
188
304
  })
189
305
  .filter(function (_a) {
190
- var _b = tslib_1.__read(_a, 2), storeName = _b[1];
306
+ var _b = __read(_a, 2), storeName = _b[1];
191
307
  return !objectStoreNames.has(storeName);
192
308
  })
193
309
  .forEach(function (_a) {
194
- var _b = tslib_1.__read(_a, 2), modelName = _b[0], storeName = _b[1];
310
+ var _b = __read(_a, 2), modelName = _b[0], storeName = _b[1];
195
311
  _this.createObjectStoreForModel(db, namespaceName, storeName, modelName);
196
312
  });
197
313
  });
@@ -213,9 +329,9 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
213
329
  });
214
330
  };
215
331
  IndexedDBAdapter.prototype._get = function (storeOrStoreName, keyArr) {
216
- return tslib_1.__awaiter(this, void 0, void 0, function () {
332
+ return __awaiter(this, void 0, void 0, function () {
217
333
  var index, storeName, store, result;
218
- return tslib_1.__generator(this, function (_a) {
334
+ return __generator(this, function (_a) {
219
335
  switch (_a.label) {
220
336
  case 0:
221
337
  if (typeof storeOrStoreName === 'string') {
@@ -236,8 +352,8 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
236
352
  };
237
353
  IndexedDBAdapter.prototype.clear = function () {
238
354
  var _a;
239
- return tslib_1.__awaiter(this, void 0, void 0, function () {
240
- return tslib_1.__generator(this, function (_b) {
355
+ return __awaiter(this, void 0, void 0, function () {
356
+ return __generator(this, function (_b) {
241
357
  switch (_b.label) {
242
358
  case 0: return [4 /*yield*/, this.checkPrivate()];
243
359
  case 1:
@@ -254,89 +370,112 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
254
370
  });
255
371
  };
256
372
  IndexedDBAdapter.prototype.save = function (model, condition) {
257
- var e_2, _a;
258
- return tslib_1.__awaiter(this, void 0, void 0, function () {
259
- var _b, storeName, set, connectionStoreNames, modelKeyValues, tx, store, fromDB, result, connectionStoreNames_1, connectionStoreNames_1_1, resItem, storeName_1, item, instance, keys, store_1, itemKeyValues, fromDB_1, opType, key, e_2_1;
260
- return tslib_1.__generator(this, function (_c) {
261
- switch (_c.label) {
373
+ var _a, e_2, _b, _c;
374
+ return __awaiter(this, void 0, void 0, function () {
375
+ var _d, storeName, set, connectionStoreNames, modelKeyValues, tx, store, fromDB, result, _loop_1, this_1, _e, connectionStoreNames_1, connectionStoreNames_1_1, e_2_1;
376
+ return __generator(this, function (_f) {
377
+ switch (_f.label) {
262
378
  case 0: return [4 /*yield*/, this.checkPrivate()];
263
379
  case 1:
264
- _c.sent();
265
- _b = this.saveMetadata(model), storeName = _b.storeName, set = _b.set, connectionStoreNames = _b.connectionStoreNames, modelKeyValues = _b.modelKeyValues;
266
- tx = this.db.transaction(tslib_1.__spread([storeName], Array.from(set.values())), 'readwrite');
380
+ _f.sent();
381
+ _d = this.saveMetadata(model), storeName = _d.storeName, set = _d.set, connectionStoreNames = _d.connectionStoreNames, modelKeyValues = _d.modelKeyValues;
382
+ tx = this.db.transaction(__spreadArray([storeName], __read(Array.from(set.values())), false), 'readwrite');
267
383
  store = tx.objectStore(storeName);
268
384
  return [4 /*yield*/, this._get(store, modelKeyValues)];
269
385
  case 2:
270
- fromDB = _c.sent();
386
+ fromDB = _f.sent();
271
387
  this.validateSaveCondition(condition, fromDB);
272
388
  result = [];
273
- _c.label = 3;
389
+ _f.label = 3;
274
390
  case 3:
275
- _c.trys.push([3, 11, 12, 17]);
276
- connectionStoreNames_1 = tslib_1.__asyncValues(connectionStoreNames);
277
- _c.label = 4;
391
+ _f.trys.push([3, 9, 10, 15]);
392
+ _loop_1 = function () {
393
+ var resItem, storeName_1, item, instance, keys, store_1, itemKeyValues, fromDB_1, opType, key;
394
+ return __generator(this, function (_g) {
395
+ switch (_g.label) {
396
+ case 0:
397
+ _c = connectionStoreNames_1_1.value;
398
+ _e = false;
399
+ _g.label = 1;
400
+ case 1:
401
+ _g.trys.push([1, , 6, 7]);
402
+ resItem = _c;
403
+ storeName_1 = resItem.storeName, item = resItem.item, instance = resItem.instance, keys = resItem.keys;
404
+ store_1 = tx.objectStore(storeName_1);
405
+ itemKeyValues = keys.map(function (key) { return item[key]; });
406
+ return [4 /*yield*/, this_1._get(store_1, itemKeyValues)];
407
+ case 2:
408
+ fromDB_1 = _g.sent();
409
+ opType = fromDB_1 ? types_1.OpType.UPDATE : types_1.OpType.INSERT;
410
+ if (!((0, util_1.keysEqual)(itemKeyValues, modelKeyValues) ||
411
+ opType === types_1.OpType.INSERT)) return [3 /*break*/, 5];
412
+ return [4 /*yield*/, store_1
413
+ .index('byPk')
414
+ .getKey(this_1.canonicalKeyPath(itemKeyValues))];
415
+ case 3:
416
+ key = _g.sent();
417
+ return [4 /*yield*/, store_1.put(item, key)];
418
+ case 4:
419
+ _g.sent();
420
+ result.push([instance, opType]);
421
+ _g.label = 5;
422
+ case 5: return [3 /*break*/, 7];
423
+ case 6:
424
+ _e = true;
425
+ return [7 /*endfinally*/];
426
+ case 7: return [2 /*return*/];
427
+ }
428
+ });
429
+ };
430
+ this_1 = this;
431
+ _e = true, connectionStoreNames_1 = __asyncValues(connectionStoreNames);
432
+ _f.label = 4;
278
433
  case 4: return [4 /*yield*/, connectionStoreNames_1.next()];
279
434
  case 5:
280
- if (!(connectionStoreNames_1_1 = _c.sent(), !connectionStoreNames_1_1.done)) return [3 /*break*/, 10];
281
- resItem = connectionStoreNames_1_1.value;
282
- storeName_1 = resItem.storeName, item = resItem.item, instance = resItem.instance, keys = resItem.keys;
283
- store_1 = tx.objectStore(storeName_1);
284
- itemKeyValues = keys.map(function (key) { return item[key]; });
285
- return [4 /*yield*/, this._get(store_1, itemKeyValues)];
435
+ if (!(connectionStoreNames_1_1 = _f.sent(), _a = connectionStoreNames_1_1.done, !_a)) return [3 /*break*/, 8];
436
+ return [5 /*yield**/, _loop_1()];
286
437
  case 6:
287
- fromDB_1 = _c.sent();
288
- opType = fromDB_1 ? types_1.OpType.UPDATE : types_1.OpType.INSERT;
289
- if (!(util_1.keysEqual(itemKeyValues, modelKeyValues) ||
290
- opType === types_1.OpType.INSERT)) return [3 /*break*/, 9];
291
- return [4 /*yield*/, store_1
292
- .index('byPk')
293
- .getKey(this.canonicalKeyPath(itemKeyValues))];
294
- case 7:
295
- key = _c.sent();
296
- return [4 /*yield*/, store_1.put(item, key)];
297
- case 8:
298
- _c.sent();
299
- result.push([instance, opType]);
300
- _c.label = 9;
301
- case 9: return [3 /*break*/, 4];
302
- case 10: return [3 /*break*/, 17];
303
- case 11:
304
- e_2_1 = _c.sent();
438
+ _f.sent();
439
+ _f.label = 7;
440
+ case 7: return [3 /*break*/, 4];
441
+ case 8: return [3 /*break*/, 15];
442
+ case 9:
443
+ e_2_1 = _f.sent();
305
444
  e_2 = { error: e_2_1 };
306
- return [3 /*break*/, 17];
307
- case 12:
308
- _c.trys.push([12, , 15, 16]);
309
- if (!(connectionStoreNames_1_1 && !connectionStoreNames_1_1.done && (_a = connectionStoreNames_1.return))) return [3 /*break*/, 14];
310
- return [4 /*yield*/, _a.call(connectionStoreNames_1)];
445
+ return [3 /*break*/, 15];
446
+ case 10:
447
+ _f.trys.push([10, , 13, 14]);
448
+ if (!(!_e && !_a && (_b = connectionStoreNames_1.return))) return [3 /*break*/, 12];
449
+ return [4 /*yield*/, _b.call(connectionStoreNames_1)];
450
+ case 11:
451
+ _f.sent();
452
+ _f.label = 12;
453
+ case 12: return [3 /*break*/, 14];
311
454
  case 13:
312
- _c.sent();
313
- _c.label = 14;
314
- case 14: return [3 /*break*/, 16];
315
- case 15:
316
455
  if (e_2) throw e_2.error;
317
456
  return [7 /*endfinally*/];
318
- case 16: return [7 /*endfinally*/];
319
- case 17: return [4 /*yield*/, tx.done];
320
- case 18:
321
- _c.sent();
457
+ case 14: return [7 /*endfinally*/];
458
+ case 15: return [4 /*yield*/, tx.done];
459
+ case 16:
460
+ _f.sent();
322
461
  return [2 /*return*/, result];
323
462
  }
324
463
  });
325
464
  });
326
465
  };
327
466
  IndexedDBAdapter.prototype.query = function (modelConstructor, predicate, pagination) {
328
- return tslib_1.__awaiter(this, void 0, void 0, function () {
467
+ return __awaiter(this, void 0, void 0, function () {
329
468
  var _a, storeName, namespaceName, queryByKey, predicates, hasSort, hasPagination, records;
330
469
  var _this = this;
331
- return tslib_1.__generator(this, function (_b) {
470
+ return __generator(this, function (_b) {
332
471
  switch (_b.label) {
333
472
  case 0: return [4 /*yield*/, this.checkPrivate()];
334
473
  case 1:
335
474
  _b.sent();
336
475
  _a = this.queryMetadata(modelConstructor, predicate, pagination), storeName = _a.storeName, namespaceName = _a.namespaceName, queryByKey = _a.queryByKey, predicates = _a.predicates, hasSort = _a.hasSort, hasPagination = _a.hasPagination;
337
- return [4 /*yield*/, (function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
476
+ return [4 /*yield*/, (function () { return __awaiter(_this, void 0, void 0, function () {
338
477
  var record, filtered, all;
339
- return tslib_1.__generator(this, function (_a) {
478
+ return __generator(this, function (_a) {
340
479
  switch (_a.label) {
341
480
  case 0:
342
481
  if (!queryByKey) return [3 /*break*/, 2];
@@ -374,9 +513,9 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
374
513
  };
375
514
  IndexedDBAdapter.prototype.queryOne = function (modelConstructor, firstOrLast) {
376
515
  if (firstOrLast === void 0) { firstOrLast = types_1.QueryOne.FIRST; }
377
- return tslib_1.__awaiter(this, void 0, void 0, function () {
516
+ return __awaiter(this, void 0, void 0, function () {
378
517
  var storeName, cursor, result;
379
- return tslib_1.__generator(this, function (_a) {
518
+ return __generator(this, function (_a) {
380
519
  switch (_a.label) {
381
520
  case 0: return [4 /*yield*/, this.checkPrivate()];
382
521
  case 1:
@@ -395,11 +534,11 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
395
534
  });
396
535
  };
397
536
  IndexedDBAdapter.prototype.batchSave = function (modelConstructor, items) {
398
- return tslib_1.__awaiter(this, void 0, void 0, function () {
399
- var modelName, namespaceName, storeName, result, txn, store, _loop_1, this_1, items_1, items_1_1, item, e_3_1;
537
+ return __awaiter(this, void 0, void 0, function () {
538
+ var modelName, namespaceName, storeName, result, txn, store, _loop_2, this_2, items_1, items_1_1, item, e_3_1;
400
539
  var e_3, _a;
401
540
  var _this = this;
402
- return tslib_1.__generator(this, function (_b) {
541
+ return __generator(this, function (_b) {
403
542
  switch (_b.label) {
404
543
  case 0: return [4 /*yield*/, this.checkPrivate()];
405
544
  case 1:
@@ -413,24 +552,24 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
413
552
  result = [];
414
553
  txn = this.db.transaction(storeName, 'readwrite');
415
554
  store = txn.store;
416
- _loop_1 = function (item) {
555
+ _loop_2 = function (item) {
417
556
  var model, connectedModels, keyValues, _deleted, index, key, instance;
418
- return tslib_1.__generator(this, function (_a) {
419
- switch (_a.label) {
557
+ return __generator(this, function (_c) {
558
+ switch (_c.label) {
420
559
  case 0:
421
- model = this_1.modelInstanceCreator(modelConstructor, item);
422
- connectedModels = util_1.traverseModel(modelName, model, this_1.schema.namespaces[namespaceName], this_1.modelInstanceCreator, this_1.getModelConstructorByModelName);
423
- keyValues = this_1.getIndexKeyValuesFromModel(model);
560
+ model = this_2.modelInstanceCreator(modelConstructor, item);
561
+ connectedModels = (0, util_1.traverseModel)(modelName, model, this_2.schema.namespaces[namespaceName], this_2.modelInstanceCreator, this_2.getModelConstructorByModelName);
562
+ keyValues = this_2.getIndexKeyValuesFromModel(model);
424
563
  _deleted = item._deleted;
425
564
  index = store.index('byPk');
426
- return [4 /*yield*/, index.getKey(this_1.canonicalKeyPath(keyValues))];
565
+ return [4 /*yield*/, index.getKey(this_2.canonicalKeyPath(keyValues))];
427
566
  case 1:
428
- key = _a.sent();
567
+ key = _c.sent();
429
568
  if (!!_deleted) return [3 /*break*/, 3];
430
569
  instance = connectedModels.find(function (_a) {
431
570
  var instance = _a.instance;
432
571
  var instanceKeyValues = _this.getIndexKeyValuesFromModel(instance);
433
- return util_1.keysEqual(instanceKeyValues, keyValues);
572
+ return (0, util_1.keysEqual)(instanceKeyValues, keyValues);
434
573
  }).instance;
435
574
  result.push([
436
575
  instance,
@@ -438,29 +577,29 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
438
577
  ]);
439
578
  return [4 /*yield*/, store.put(instance, key)];
440
579
  case 2:
441
- _a.sent();
580
+ _c.sent();
442
581
  return [3 /*break*/, 5];
443
582
  case 3:
444
583
  result.push([item, types_1.OpType.DELETE]);
445
584
  if (!key) return [3 /*break*/, 5];
446
585
  return [4 /*yield*/, store.delete(key)];
447
586
  case 4:
448
- _a.sent();
449
- _a.label = 5;
587
+ _c.sent();
588
+ _c.label = 5;
450
589
  case 5: return [2 /*return*/];
451
590
  }
452
591
  });
453
592
  };
454
- this_1 = this;
593
+ this_2 = this;
455
594
  _b.label = 2;
456
595
  case 2:
457
596
  _b.trys.push([2, 7, 8, 9]);
458
- items_1 = tslib_1.__values(items), items_1_1 = items_1.next();
597
+ items_1 = __values(items), items_1_1 = items_1.next();
459
598
  _b.label = 3;
460
599
  case 3:
461
600
  if (!!items_1_1.done) return [3 /*break*/, 6];
462
601
  item = items_1_1.value;
463
- return [5 /*yield**/, _loop_1(item)];
602
+ return [5 /*yield**/, _loop_2(item)];
464
603
  case 4:
465
604
  _b.sent();
466
605
  _b.label = 5;
@@ -487,107 +626,125 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
487
626
  });
488
627
  };
489
628
  IndexedDBAdapter.prototype.deleteItem = function (deleteQueue) {
490
- var e_4, _a, e_5, _b;
491
- return tslib_1.__awaiter(this, void 0, void 0, function () {
492
- var connectionStoreNames, tx, _c, _d, deleteItem, storeName, items, store, items_2, items_2_1, item, key, keyValues, itemKey, e_5_1, e_4_1;
493
- return tslib_1.__generator(this, function (_e) {
494
- switch (_e.label) {
629
+ var _a, e_4, _b, _c, _d, e_5, _e, _f;
630
+ return __awaiter(this, void 0, void 0, function () {
631
+ var connectionStoreNames, tx, _g, _h, _j, deleteItem, storeName, items, store, _k, items_2, items_2_1, item, key, keyValues, itemKey, e_5_1, e_4_1;
632
+ return __generator(this, function (_l) {
633
+ switch (_l.label) {
495
634
  case 0:
496
635
  connectionStoreNames = deleteQueue.map(function (_a) {
497
636
  var storeName = _a.storeName;
498
637
  return storeName;
499
638
  });
500
- tx = this.db.transaction(tslib_1.__spread(connectionStoreNames), 'readwrite');
501
- _e.label = 1;
639
+ tx = this.db.transaction(__spreadArray([], __read(connectionStoreNames), false), 'readwrite');
640
+ _l.label = 1;
502
641
  case 1:
503
- _e.trys.push([1, 22, 23, 28]);
504
- _c = tslib_1.__asyncValues(deleteQueue);
505
- _e.label = 2;
506
- case 2: return [4 /*yield*/, _c.next()];
642
+ _l.trys.push([1, 28, 29, 34]);
643
+ _g = true, _h = __asyncValues(deleteQueue);
644
+ _l.label = 2;
645
+ case 2: return [4 /*yield*/, _h.next()];
507
646
  case 3:
508
- if (!(_d = _e.sent(), !_d.done)) return [3 /*break*/, 21];
509
- deleteItem = _d.value;
647
+ if (!(_j = _l.sent(), _a = _j.done, !_a)) return [3 /*break*/, 27];
648
+ _c = _j.value;
649
+ _g = false;
650
+ _l.label = 4;
651
+ case 4:
652
+ _l.trys.push([4, , 25, 26]);
653
+ deleteItem = _c;
510
654
  storeName = deleteItem.storeName, items = deleteItem.items;
511
655
  store = tx.objectStore(storeName);
512
- _e.label = 4;
513
- case 4:
514
- _e.trys.push([4, 14, 15, 20]);
515
- items_2 = tslib_1.__asyncValues(items);
516
- _e.label = 5;
517
- case 5: return [4 /*yield*/, items_2.next()];
518
- case 6:
519
- if (!(items_2_1 = _e.sent(), !items_2_1.done)) return [3 /*break*/, 13];
520
- item = items_2_1.value;
521
- if (!item) return [3 /*break*/, 12];
656
+ _l.label = 5;
657
+ case 5:
658
+ _l.trys.push([5, 18, 19, 24]);
659
+ _k = true, items_2 = (e_5 = void 0, __asyncValues(items));
660
+ _l.label = 6;
661
+ case 6: return [4 /*yield*/, items_2.next()];
662
+ case 7:
663
+ if (!(items_2_1 = _l.sent(), _d = items_2_1.done, !_d)) return [3 /*break*/, 17];
664
+ _f = items_2_1.value;
665
+ _k = false;
666
+ _l.label = 8;
667
+ case 8:
668
+ _l.trys.push([8, , 15, 16]);
669
+ item = _f;
670
+ if (!item) return [3 /*break*/, 14];
522
671
  key = void 0;
523
- if (!(typeof item === 'object')) return [3 /*break*/, 8];
672
+ if (!(typeof item === 'object')) return [3 /*break*/, 10];
524
673
  keyValues = this.getIndexKeyValuesFromModel(item);
525
674
  return [4 /*yield*/, store
526
675
  .index('byPk')
527
676
  .getKey(this.canonicalKeyPath(keyValues))];
528
- case 7:
529
- key = _e.sent();
530
- return [3 /*break*/, 10];
531
- case 8:
532
- itemKey = item.toString();
533
- return [4 /*yield*/, store.index('byPk').getKey(itemKey)];
534
677
  case 9:
535
- key = _e.sent();
536
- _e.label = 10;
678
+ key = _l.sent();
679
+ return [3 /*break*/, 12];
537
680
  case 10:
538
- if (!(key !== undefined)) return [3 /*break*/, 12];
539
- return [4 /*yield*/, store.delete(key)];
681
+ itemKey = item.toString();
682
+ return [4 /*yield*/, store.index('byPk').getKey(itemKey)];
540
683
  case 11:
541
- _e.sent();
542
- _e.label = 12;
543
- case 12: return [3 /*break*/, 5];
544
- case 13: return [3 /*break*/, 20];
545
- case 14:
546
- e_5_1 = _e.sent();
547
- e_5 = { error: e_5_1 };
548
- return [3 /*break*/, 20];
684
+ key = _l.sent();
685
+ _l.label = 12;
686
+ case 12:
687
+ if (!(key !== undefined)) return [3 /*break*/, 14];
688
+ return [4 /*yield*/, store.delete(key)];
689
+ case 13:
690
+ _l.sent();
691
+ _l.label = 14;
692
+ case 14: return [3 /*break*/, 16];
549
693
  case 15:
550
- _e.trys.push([15, , 18, 19]);
551
- if (!(items_2_1 && !items_2_1.done && (_b = items_2.return))) return [3 /*break*/, 17];
552
- return [4 /*yield*/, _b.call(items_2)];
553
- case 16:
554
- _e.sent();
555
- _e.label = 17;
556
- case 17: return [3 /*break*/, 19];
694
+ _k = true;
695
+ return [7 /*endfinally*/];
696
+ case 16: return [3 /*break*/, 6];
697
+ case 17: return [3 /*break*/, 24];
557
698
  case 18:
699
+ e_5_1 = _l.sent();
700
+ e_5 = { error: e_5_1 };
701
+ return [3 /*break*/, 24];
702
+ case 19:
703
+ _l.trys.push([19, , 22, 23]);
704
+ if (!(!_k && !_d && (_e = items_2.return))) return [3 /*break*/, 21];
705
+ return [4 /*yield*/, _e.call(items_2)];
706
+ case 20:
707
+ _l.sent();
708
+ _l.label = 21;
709
+ case 21: return [3 /*break*/, 23];
710
+ case 22:
558
711
  if (e_5) throw e_5.error;
559
712
  return [7 /*endfinally*/];
560
- case 19: return [7 /*endfinally*/];
561
- case 20: return [3 /*break*/, 2];
562
- case 21: return [3 /*break*/, 28];
563
- case 22:
564
- e_4_1 = _e.sent();
713
+ case 23: return [7 /*endfinally*/];
714
+ case 24: return [3 /*break*/, 26];
715
+ case 25:
716
+ _g = true;
717
+ return [7 /*endfinally*/];
718
+ case 26: return [3 /*break*/, 2];
719
+ case 27: return [3 /*break*/, 34];
720
+ case 28:
721
+ e_4_1 = _l.sent();
565
722
  e_4 = { error: e_4_1 };
566
- return [3 /*break*/, 28];
567
- case 23:
568
- _e.trys.push([23, , 26, 27]);
569
- if (!(_d && !_d.done && (_a = _c.return))) return [3 /*break*/, 25];
570
- return [4 /*yield*/, _a.call(_c)];
571
- case 24:
572
- _e.sent();
573
- _e.label = 25;
574
- case 25: return [3 /*break*/, 27];
575
- case 26:
723
+ return [3 /*break*/, 34];
724
+ case 29:
725
+ _l.trys.push([29, , 32, 33]);
726
+ if (!(!_g && !_a && (_b = _h.return))) return [3 /*break*/, 31];
727
+ return [4 /*yield*/, _b.call(_h)];
728
+ case 30:
729
+ _l.sent();
730
+ _l.label = 31;
731
+ case 31: return [3 /*break*/, 33];
732
+ case 32:
576
733
  if (e_4) throw e_4.error;
577
734
  return [7 /*endfinally*/];
578
- case 27: return [7 /*endfinally*/];
579
- case 28: return [2 /*return*/];
735
+ case 33: return [7 /*endfinally*/];
736
+ case 34: return [2 /*return*/];
580
737
  }
581
738
  });
582
739
  });
583
740
  };
584
741
  //#region platform-specific helper methods
585
742
  IndexedDBAdapter.prototype.checkPrivate = function () {
586
- return tslib_1.__awaiter(this, void 0, void 0, function () {
743
+ return __awaiter(this, void 0, void 0, function () {
587
744
  var isPrivate;
588
- return tslib_1.__generator(this, function (_a) {
745
+ return __generator(this, function (_a) {
589
746
  switch (_a.label) {
590
- case 0: return [4 /*yield*/, util_1.isPrivateMode().then(function (isPrivate) {
747
+ case 0: return [4 /*yield*/, (0, util_1.isPrivateMode)().then(function (isPrivate) {
591
748
  return isPrivate;
592
749
  })];
593
750
  case 1:
@@ -615,13 +772,13 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
615
772
  * https://github.com/aws-amplify/amplify-js/pull/10527
616
773
  */
617
774
  IndexedDBAdapter.prototype.setSafariCompatabilityMode = function () {
618
- return tslib_1.__awaiter(this, void 0, void 0, function () {
775
+ return __awaiter(this, void 0, void 0, function () {
619
776
  var _a;
620
- return tslib_1.__generator(this, function (_b) {
777
+ return __generator(this, function (_b) {
621
778
  switch (_b.label) {
622
779
  case 0:
623
780
  _a = this;
624
- return [4 /*yield*/, util_1.isSafariCompatabilityMode()];
781
+ return [4 /*yield*/, (0, util_1.isSafariCompatabilityMode)()];
625
782
  case 1:
626
783
  _a.safariCompatabilityMode = _b.sent();
627
784
  if (this.safariCompatabilityMode === true) {
@@ -633,7 +790,7 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
633
790
  });
634
791
  };
635
792
  IndexedDBAdapter.prototype.getNamespaceAndModelFromStorename = function (storeName) {
636
- var _a = tslib_1.__read(storeName.split('_')), namespaceName = _a[0], modelNameArr = _a.slice(1);
793
+ var _a = __read(storeName.split('_')), namespaceName = _a[0], modelNameArr = _a.slice(1);
637
794
  return {
638
795
  namespaceName: namespaceName,
639
796
  modelName: modelNameArr.join('_'),
@@ -645,14 +802,14 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
645
802
  });
646
803
  var indexes = this.schema.namespaces[namespaceName].relationships[modelName].indexes;
647
804
  indexes.forEach(function (_a) {
648
- var _b = tslib_1.__read(_a, 3), idxName = _b[0], keyPath = _b[1], options = _b[2];
805
+ var _b = __read(_a, 3), idxName = _b[0], keyPath = _b[1], options = _b[2];
649
806
  store.createIndex(idxName, keyPath, options);
650
807
  });
651
808
  return store;
652
809
  };
653
810
  IndexedDBAdapter.prototype.getByKey = function (storeName, keyValue) {
654
- return tslib_1.__awaiter(this, void 0, void 0, function () {
655
- return tslib_1.__generator(this, function (_a) {
811
+ return __awaiter(this, void 0, void 0, function () {
812
+ return __generator(this, function (_a) {
656
813
  switch (_a.label) {
657
814
  case 0: return [4 /*yield*/, this._get(storeName, keyValue)];
658
815
  case 1: return [2 /*return*/, _a.sent()];
@@ -661,8 +818,8 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
661
818
  });
662
819
  };
663
820
  IndexedDBAdapter.prototype.getAll = function (storeName) {
664
- return tslib_1.__awaiter(this, void 0, void 0, function () {
665
- return tslib_1.__generator(this, function (_a) {
821
+ return __awaiter(this, void 0, void 0, function () {
822
+ return __generator(this, function (_a) {
666
823
  switch (_a.label) {
667
824
  case 0: return [4 /*yield*/, this.db.getAll(storeName)];
668
825
  case 1: return [2 /*return*/, _a.sent()];
@@ -686,7 +843,7 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
686
843
  var queries = [];
687
844
  var predicateIndex = new Map();
688
845
  try {
689
- for (var predicates_1 = tslib_1.__values(predicates), predicates_1_1 = predicates_1.next(); !predicates_1_1.done; predicates_1_1 = predicates_1.next()) {
846
+ for (var predicates_1 = __values(predicates), predicates_1_1 = predicates_1.next(); !predicates_1_1.done; predicates_1_1 = predicates_1.next()) {
690
847
  var predicate = predicates_1_1.value;
691
848
  predicateIndex.set(String(predicate.field), predicate);
692
849
  }
@@ -699,13 +856,13 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
699
856
  finally { if (e_6) throw e_6.error; }
700
857
  }
701
858
  var store = transaction.objectStore(storeName);
702
- var _loop_2 = function (name_1) {
703
- var e_8, _a;
859
+ var _loop_3 = function (name_1) {
860
+ var e_8, _e;
704
861
  var idx = store.index(name_1);
705
862
  var keypath = Array.isArray(idx.keyPath) ? idx.keyPath : [idx.keyPath];
706
863
  var matchingPredicateValues = [];
707
864
  try {
708
- for (var keypath_1 = (e_8 = void 0, tslib_1.__values(keypath)), keypath_1_1 = keypath_1.next(); !keypath_1_1.done; keypath_1_1 = keypath_1.next()) {
865
+ for (var keypath_1 = (e_8 = void 0, __values(keypath)), keypath_1_1 = keypath_1.next(); !keypath_1_1.done; keypath_1_1 = keypath_1.next()) {
709
866
  var field = keypath_1_1.value;
710
867
  var p = predicateIndex.get(field);
711
868
  if (p && p.operand !== null && p.operand !== undefined) {
@@ -719,7 +876,7 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
719
876
  catch (e_8_1) { e_8 = { error: e_8_1 }; }
720
877
  finally {
721
878
  try {
722
- if (keypath_1_1 && !keypath_1_1.done && (_a = keypath_1.return)) _a.call(keypath_1);
879
+ if (keypath_1_1 && !keypath_1_1.done && (_e = keypath_1.return)) _e.call(keypath_1);
723
880
  }
724
881
  finally { if (e_8) throw e_8.error; }
725
882
  }
@@ -738,9 +895,9 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
738
895
  }
739
896
  };
740
897
  try {
741
- for (var _c = tslib_1.__values(store.indexNames), _d = _c.next(); !_d.done; _d = _c.next()) {
898
+ for (var _c = __values(store.indexNames), _d = _c.next(); !_d.done; _d = _c.next()) {
742
899
  var name_1 = _d.value;
743
- _loop_2(name_1);
900
+ _loop_3(name_1);
744
901
  }
745
902
  }
746
903
  catch (e_7_1) { e_7 = { error: e_7_1 }; }
@@ -753,10 +910,10 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
753
910
  return queries;
754
911
  };
755
912
  IndexedDBAdapter.prototype.baseQueryIndex = function (storeName, predicates, transaction) {
756
- return tslib_1.__awaiter(this, void 0, void 0, function () {
913
+ return __awaiter(this, void 0, void 0, function () {
757
914
  var predicateObjs, type, fieldPredicates, txn, result, groupQueries, objectQueries, indexedQueries;
758
915
  var _this = this;
759
- return tslib_1.__generator(this, function (_a) {
916
+ return __generator(this, function (_a) {
760
917
  switch (_a.label) {
761
918
  case 0:
762
919
  predicateObjs = predicates.predicates, type = predicates.type;
@@ -765,17 +922,17 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
765
922
  // so, we unpack and/or groups until we find a group with more than 1
766
923
  // child OR a child that is not a group (and is therefore a predicate "object").
767
924
  while (predicateObjs.length === 1 &&
768
- types_1.isPredicateGroup(predicateObjs[0]) &&
925
+ (0, types_1.isPredicateGroup)(predicateObjs[0]) &&
769
926
  predicateObjs[0].type !== 'not') {
770
927
  type = predicateObjs[0].type;
771
928
  predicateObjs = predicateObjs[0].predicates;
772
929
  }
773
- fieldPredicates = predicateObjs.filter(function (p) { return types_1.isPredicateObj(p) && p.operator === 'eq'; });
930
+ fieldPredicates = predicateObjs.filter(function (p) { return (0, types_1.isPredicateObj)(p) && p.operator === 'eq'; });
774
931
  txn = transaction || this.db.transaction(storeName);
775
932
  result = {};
776
933
  if (!(type === 'or')) return [3 /*break*/, 2];
777
934
  return [4 /*yield*/, Promise.all(predicateObjs
778
- .filter(function (o) { return types_1.isPredicateGroup(o) && o.type === 'and'; })
935
+ .filter(function (o) { return (0, types_1.isPredicateGroup)(o) && o.type === 'and'; })
779
936
  .map(function (o) {
780
937
  return _this.baseQueryIndex(storeName, o, txn);
781
938
  })).then(function (queries) {
@@ -786,11 +943,11 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
786
943
  case 1:
787
944
  groupQueries = _a.sent();
788
945
  objectQueries = predicateObjs
789
- .filter(function (o) { return types_1.isPredicateObj(o); })
946
+ .filter(function (o) { return (0, types_1.isPredicateObj)(o); })
790
947
  .map(function (o) {
791
948
  return _this.matchingIndexQueries(storeName, [o], txn);
792
949
  });
793
- indexedQueries = tslib_1.__spread(groupQueries, objectQueries).map(function (q) { return q[0]; })
950
+ indexedQueries = __spreadArray(__spreadArray([], __read(groupQueries), false), __read(objectQueries), false).map(function (q) { return q[0]; })
794
951
  .filter(function (i) { return i; });
795
952
  // if, after hunting for base queries, we don't have exactly 1 base query
796
953
  // for each child group + object, stop trying to optimize. we're not dealing
@@ -836,10 +993,10 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
836
993
  });
837
994
  };
838
995
  IndexedDBAdapter.prototype.filterOnPredicate = function (storeName, predicates) {
839
- return tslib_1.__awaiter(this, void 0, void 0, function () {
996
+ return __awaiter(this, void 0, void 0, function () {
840
997
  var predicateObjs, type, _a, groupType, indexedQueries, candidateResults, distinctResults, indexedQueries_1, indexedQueries_1_1, query, resultGroup, resultGroup_1, resultGroup_1_1, item, distinctificationString, e_9_1, filtered;
841
998
  var e_9, _b, e_10, _c;
842
- return tslib_1.__generator(this, function (_d) {
999
+ return __generator(this, function (_d) {
843
1000
  switch (_d.label) {
844
1001
  case 0:
845
1002
  predicateObjs = predicates.predicates, type = predicates.type;
@@ -861,7 +1018,7 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
861
1018
  _d.label = 4;
862
1019
  case 4:
863
1020
  _d.trys.push([4, 9, 10, 11]);
864
- indexedQueries_1 = tslib_1.__values(indexedQueries), indexedQueries_1_1 = indexedQueries_1.next();
1021
+ indexedQueries_1 = __values(indexedQueries), indexedQueries_1_1 = indexedQueries_1.next();
865
1022
  _d.label = 5;
866
1023
  case 5:
867
1024
  if (!!indexedQueries_1_1.done) return [3 /*break*/, 8];
@@ -870,7 +1027,7 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
870
1027
  case 6:
871
1028
  resultGroup = _d.sent();
872
1029
  try {
873
- for (resultGroup_1 = (e_10 = void 0, tslib_1.__values(resultGroup)), resultGroup_1_1 = resultGroup_1.next(); !resultGroup_1_1.done; resultGroup_1_1 = resultGroup_1.next()) {
1030
+ for (resultGroup_1 = (e_10 = void 0, __values(resultGroup)), resultGroup_1_1 = resultGroup_1.next(); !resultGroup_1_1.done; resultGroup_1_1 = resultGroup_1.next()) {
874
1031
  item = resultGroup_1_1.value;
875
1032
  distinctificationString = JSON.stringify(item);
876
1033
  distinctResults.set(distinctificationString, item);
@@ -912,7 +1069,7 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
912
1069
  _d.label = 14;
913
1070
  case 14:
914
1071
  filtered = predicateObjs
915
- ? candidateResults.filter(function (m) { return util_1.validatePredicate(m, type, predicateObjs); })
1072
+ ? candidateResults.filter(function (m) { return (0, util_1.validatePredicate)(m, type, predicateObjs); })
916
1073
  : candidateResults;
917
1074
  return [2 /*return*/, filtered];
918
1075
  }
@@ -920,12 +1077,12 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
920
1077
  });
921
1078
  };
922
1079
  IndexedDBAdapter.prototype.inMemoryPagination = function (records, pagination) {
923
- return util_1.inMemoryPagination(records, pagination);
1080
+ return (0, util_1.inMemoryPagination)(records, pagination);
924
1081
  };
925
1082
  IndexedDBAdapter.prototype.enginePagination = function (storeName, pagination) {
926
- return tslib_1.__awaiter(this, void 0, void 0, function () {
1083
+ return __awaiter(this, void 0, void 0, function () {
927
1084
  var result, _a, page, _b, limit, initialRecord, cursor, pageResults, hasLimit;
928
- return tslib_1.__generator(this, function (_c) {
1085
+ return __generator(this, function (_c) {
929
1086
  switch (_c.label) {
930
1087
  case 0:
931
1088
  if (!pagination) return [3 /*break*/, 7];
@@ -971,4 +1128,3 @@ var IndexedDBAdapter = /** @class */ (function (_super) {
971
1128
  return IndexedDBAdapter;
972
1129
  }(StorageAdapterBase_1.StorageAdapterBase));
973
1130
  exports.default = new IndexedDBAdapter();
974
- //# sourceMappingURL=IndexedDBAdapter.js.map