@aws-amplify/datastore 4.7.5 → 5.0.1-console-preview.4208d73.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.
- package/README.md +4 -0
- package/lib/authModeStrategies/defaultAuthStrategy.js +3 -2
- package/lib/authModeStrategies/index.js +3 -3
- package/lib/authModeStrategies/multiAuthStrategy.js +81 -24
- package/lib/datastore/datastore.d.ts +3 -4
- package/lib/datastore/datastore.js +361 -227
- package/lib/index.d.ts +1 -1
- package/lib/index.js +25 -12
- package/lib/predicates/index.js +46 -12
- package/lib/predicates/next.d.ts +2 -2
- package/lib/predicates/next.js +172 -74
- package/lib/predicates/sort.js +3 -4
- package/lib/ssr/index.js +1 -1
- package/lib/storage/adapter/AsyncStorageAdapter.js +240 -128
- package/lib/storage/adapter/AsyncStorageDatabase.js +100 -39
- package/lib/storage/adapter/InMemoryStore.js +68 -17
- package/lib/storage/adapter/InMemoryStore.native.js +5 -3
- package/lib/storage/adapter/IndexedDBAdapter.js +355 -199
- package/lib/storage/adapter/StorageAdapterBase.js +154 -85
- package/lib/storage/adapter/getDefaultAdapter/index.js +8 -9
- package/lib/storage/adapter/getDefaultAdapter/index.native.js +4 -3
- package/lib/storage/adapter/index.js +0 -1
- package/lib/storage/relationship.js +31 -21
- package/lib/storage/storage.d.ts +3 -3
- package/lib/storage/storage.js +143 -61
- package/lib/sync/datastoreConnectivity.d.ts +1 -1
- package/lib/sync/datastoreConnectivity.js +57 -9
- package/lib/sync/datastoreReachability/index.js +3 -3
- package/lib/sync/datastoreReachability/index.native.js +7 -5
- package/lib/sync/index.d.ts +1 -1
- package/lib/sync/index.js +193 -125
- package/lib/sync/merger.js +81 -10
- package/lib/sync/outbox.js +101 -30
- package/lib/sync/processors/errorMaps.d.ts +1 -1
- package/lib/sync/processors/errorMaps.js +41 -6
- package/lib/sync/processors/mutation.d.ts +1 -1
- package/lib/sync/processors/mutation.js +192 -101
- package/lib/sync/processors/subscription.d.ts +4 -1
- package/lib/sync/processors/subscription.js +190 -178
- package/lib/sync/processors/sync.d.ts +1 -1
- package/lib/sync/processors/sync.js +113 -47
- package/lib/sync/utils.d.ts +4 -4
- package/lib/sync/utils.js +162 -81
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/lib/types.d.ts +138 -140
- package/lib/types.js +40 -5
- package/lib/util.d.ts +9 -17
- package/lib/util.js +216 -100
- package/lib-esm/authModeStrategies/defaultAuthStrategy.js +0 -1
- package/lib-esm/authModeStrategies/index.js +0 -1
- package/lib-esm/authModeStrategies/multiAuthStrategy.js +76 -21
- package/lib-esm/datastore/datastore.d.ts +3 -4
- package/lib-esm/datastore/datastore.js +206 -77
- package/lib-esm/index.d.ts +1 -1
- package/lib-esm/index.js +0 -1
- package/lib-esm/predicates/index.js +40 -7
- package/lib-esm/predicates/next.d.ts +2 -2
- package/lib-esm/predicates/next.js +148 -52
- package/lib-esm/predicates/sort.js +2 -4
- package/lib-esm/ssr/index.js +0 -1
- package/lib-esm/storage/adapter/AsyncStorageAdapter.js +203 -95
- package/lib-esm/storage/adapter/AsyncStorageDatabase.js +66 -5
- package/lib-esm/storage/adapter/InMemoryStore.js +52 -2
- package/lib-esm/storage/adapter/InMemoryStore.native.js +0 -1
- package/lib-esm/storage/adapter/IndexedDBAdapter.js +271 -138
- package/lib-esm/storage/adapter/StorageAdapterBase.js +130 -62
- package/lib-esm/storage/adapter/getDefaultAdapter/index.js +2 -5
- package/lib-esm/storage/adapter/getDefaultAdapter/index.native.js +0 -1
- package/lib-esm/storage/adapter/index.js +1 -1
- package/lib-esm/storage/relationship.js +27 -18
- package/lib-esm/storage/storage.d.ts +3 -3
- package/lib-esm/storage/storage.js +87 -9
- package/lib-esm/sync/datastoreConnectivity.d.ts +1 -1
- package/lib-esm/sync/datastoreConnectivity.js +48 -3
- package/lib-esm/sync/datastoreReachability/index.js +1 -2
- package/lib-esm/sync/datastoreReachability/index.native.js +1 -2
- package/lib-esm/sync/index.d.ts +1 -1
- package/lib-esm/sync/index.js +136 -72
- package/lib-esm/sync/merger.js +73 -3
- package/lib-esm/sync/outbox.js +75 -5
- package/lib-esm/sync/processors/errorMaps.d.ts +1 -1
- package/lib-esm/sync/processors/errorMaps.js +39 -5
- package/lib-esm/sync/processors/mutation.d.ts +1 -1
- package/lib-esm/sync/processors/mutation.js +130 -44
- package/lib-esm/sync/processors/subscription.d.ts +4 -1
- package/lib-esm/sync/processors/subscription.js +134 -126
- package/lib-esm/sync/processors/sync.d.ts +1 -1
- package/lib-esm/sync/processors/sync.js +74 -12
- package/lib-esm/sync/utils.d.ts +4 -4
- package/lib-esm/sync/utils.js +135 -55
- package/lib-esm/tsconfig.tsbuildinfo +1 -0
- package/lib-esm/types.d.ts +138 -140
- package/lib-esm/types.js +36 -2
- package/lib-esm/util.d.ts +9 -17
- package/lib-esm/util.js +96 -16
- package/package.json +139 -132
- package/src/authModeStrategies/multiAuthStrategy.ts +11 -12
- package/src/datastore/datastore.ts +32 -25
- package/src/predicates/sort.ts +3 -1
- package/src/storage/adapter/InMemoryStore.ts +1 -1
- package/src/storage/adapter/IndexedDBAdapter.ts +1 -1
- package/src/storage/adapter/StorageAdapterBase.ts +1 -1
- package/src/storage/adapter/getDefaultAdapter/index.ts +2 -3
- package/src/storage/storage.ts +1 -1
- package/src/sync/datastoreConnectivity.ts +2 -2
- package/src/sync/datastoreReachability/index.native.ts +1 -1
- package/src/sync/datastoreReachability/index.ts +1 -1
- package/src/sync/index.ts +69 -78
- package/src/sync/processors/mutation.ts +16 -10
- package/src/sync/processors/subscription.ts +55 -127
- package/src/sync/processors/sync.ts +8 -4
- package/src/sync/utils.ts +7 -8
- package/src/types.ts +4 -8
- package/src/util.ts +5 -6
- package/lib/.tsbuildinfo +0 -3
- package/lib/authModeStrategies/defaultAuthStrategy.js.map +0 -1
- package/lib/authModeStrategies/index.js.map +0 -1
- package/lib/authModeStrategies/multiAuthStrategy.js.map +0 -1
- package/lib/datastore/datastore.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/predicates/index.js.map +0 -1
- package/lib/predicates/next.js.map +0 -1
- package/lib/predicates/sort.js.map +0 -1
- package/lib/ssr/index.js.map +0 -1
- package/lib/storage/adapter/AsyncStorageAdapter.js.map +0 -1
- package/lib/storage/adapter/AsyncStorageDatabase.js.map +0 -1
- package/lib/storage/adapter/InMemoryStore.js.map +0 -1
- package/lib/storage/adapter/InMemoryStore.native.js.map +0 -1
- package/lib/storage/adapter/IndexedDBAdapter.js.map +0 -1
- package/lib/storage/adapter/StorageAdapterBase.js.map +0 -1
- package/lib/storage/adapter/getDefaultAdapter/index.js.map +0 -1
- package/lib/storage/adapter/getDefaultAdapter/index.native.js.map +0 -1
- package/lib/storage/adapter/index.js.map +0 -1
- package/lib/storage/relationship.js.map +0 -1
- package/lib/storage/storage.js.map +0 -1
- package/lib/sync/datastoreConnectivity.js.map +0 -1
- package/lib/sync/datastoreReachability/index.js.map +0 -1
- package/lib/sync/datastoreReachability/index.native.js.map +0 -1
- package/lib/sync/index.js.map +0 -1
- package/lib/sync/merger.js.map +0 -1
- package/lib/sync/outbox.js.map +0 -1
- package/lib/sync/processors/errorMaps.js.map +0 -1
- package/lib/sync/processors/mutation.js.map +0 -1
- package/lib/sync/processors/subscription.js.map +0 -1
- package/lib/sync/processors/sync.js.map +0 -1
- package/lib/sync/utils.js.map +0 -1
- package/lib/types.js.map +0 -1
- package/lib/util.js.map +0 -1
- package/lib-esm/.tsbuildinfo +0 -3
- package/lib-esm/authModeStrategies/defaultAuthStrategy.js.map +0 -1
- package/lib-esm/authModeStrategies/index.js.map +0 -1
- package/lib-esm/authModeStrategies/multiAuthStrategy.js.map +0 -1
- package/lib-esm/datastore/datastore.js.map +0 -1
- package/lib-esm/index.js.map +0 -1
- package/lib-esm/predicates/index.js.map +0 -1
- package/lib-esm/predicates/next.js.map +0 -1
- package/lib-esm/predicates/sort.js.map +0 -1
- package/lib-esm/ssr/index.js.map +0 -1
- package/lib-esm/storage/adapter/AsyncStorageAdapter.js.map +0 -1
- package/lib-esm/storage/adapter/AsyncStorageDatabase.js.map +0 -1
- package/lib-esm/storage/adapter/InMemoryStore.js.map +0 -1
- package/lib-esm/storage/adapter/InMemoryStore.native.js.map +0 -1
- package/lib-esm/storage/adapter/IndexedDBAdapter.js.map +0 -1
- package/lib-esm/storage/adapter/StorageAdapterBase.js.map +0 -1
- package/lib-esm/storage/adapter/getDefaultAdapter/index.js.map +0 -1
- package/lib-esm/storage/adapter/getDefaultAdapter/index.native.js.map +0 -1
- package/lib-esm/storage/adapter/index.js.map +0 -1
- package/lib-esm/storage/relationship.js.map +0 -1
- package/lib-esm/storage/storage.js.map +0 -1
- package/lib-esm/sync/datastoreConnectivity.js.map +0 -1
- package/lib-esm/sync/datastoreReachability/index.js.map +0 -1
- package/lib-esm/sync/datastoreReachability/index.native.js.map +0 -1
- package/lib-esm/sync/index.js.map +0 -1
- package/lib-esm/sync/merger.js.map +0 -1
- package/lib-esm/sync/outbox.js.map +0 -1
- package/lib-esm/sync/processors/errorMaps.js.map +0 -1
- package/lib-esm/sync/processors/mutation.js.map +0 -1
- package/lib-esm/sync/processors/subscription.js.map +0 -1
- package/lib-esm/sync/processors/sync.js.map +0 -1
- package/lib-esm/sync/utils.js.map +0 -1
- package/lib-esm/types.js.map +0 -1
- package/lib-esm/util.js.map +0 -1
|
@@ -1,14 +1,66 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
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;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
39
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
40
|
+
var m = o[Symbol.asyncIterator], i;
|
|
41
|
+
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);
|
|
42
|
+
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); }); }; }
|
|
43
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
44
|
+
};
|
|
45
|
+
var __values = (this && this.__values) || function(o) {
|
|
46
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
47
|
+
if (m) return m.call(o);
|
|
48
|
+
if (o && typeof o.length === "number") return {
|
|
49
|
+
next: function () {
|
|
50
|
+
if (o && i >= o.length) o = void 0;
|
|
51
|
+
return { value: o && o[i++], done: !o };
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
55
|
+
};
|
|
2
56
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
5
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
6
|
-
var core_1 = require("@aws-amplify/core");
|
|
57
|
+
exports.StorageAdapterBase = void 0;
|
|
7
58
|
var predicates_1 = require("../../predicates");
|
|
8
59
|
var types_1 = require("../../types");
|
|
9
60
|
var util_1 = require("../../util");
|
|
10
61
|
var relationship_1 = require("../relationship");
|
|
11
|
-
var
|
|
62
|
+
var utils_1 = require("@aws-amplify/core/internals/utils");
|
|
63
|
+
var logger = new utils_1.Logger('DataStore');
|
|
12
64
|
var DB_NAME = 'amplify-datastore';
|
|
13
65
|
var StorageAdapterBase = /** @class */ (function () {
|
|
14
66
|
function StorageAdapterBase() {
|
|
@@ -24,10 +76,10 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
24
76
|
* @param sessionId
|
|
25
77
|
*/
|
|
26
78
|
StorageAdapterBase.prototype.setUp = function (theSchema, namespaceResolver, modelInstanceCreator, getModelConstructorByModelName, sessionId) {
|
|
27
|
-
return
|
|
79
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
28
80
|
var _a, error_1;
|
|
29
81
|
var _this = this;
|
|
30
|
-
return
|
|
82
|
+
return __generator(this, function (_b) {
|
|
31
83
|
switch (_b.label) {
|
|
32
84
|
case 0: return [4 /*yield*/, this.preSetUpChecks()];
|
|
33
85
|
case 1:
|
|
@@ -44,7 +96,7 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
44
96
|
return [2 /*return*/];
|
|
45
97
|
case 4:
|
|
46
98
|
if (sessionId) {
|
|
47
|
-
this.dbName = DB_NAME
|
|
99
|
+
this.dbName = "".concat(DB_NAME, "-").concat(sessionId);
|
|
48
100
|
}
|
|
49
101
|
this.schema = theSchema;
|
|
50
102
|
this.namespaceResolver = namespaceResolver;
|
|
@@ -77,7 +129,7 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
77
129
|
StorageAdapterBase.prototype.getStorenameForModel = function (modelConstructor) {
|
|
78
130
|
var namespace = this.namespaceResolver(modelConstructor);
|
|
79
131
|
var modelName = modelConstructor.name;
|
|
80
|
-
return util_1.getStorename(namespace, modelName);
|
|
132
|
+
return (0, util_1.getStorename)(namespace, modelName);
|
|
81
133
|
};
|
|
82
134
|
/**
|
|
83
135
|
*
|
|
@@ -88,8 +140,8 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
88
140
|
var modelConstructor = Object.getPrototypeOf(model)
|
|
89
141
|
.constructor;
|
|
90
142
|
var namespaceName = this.namespaceResolver(modelConstructor);
|
|
91
|
-
var keys = util_1.getIndexKeys(this.schema.namespaces[namespaceName], modelConstructor.name);
|
|
92
|
-
return util_1.extractPrimaryKeyValues(model, keys);
|
|
143
|
+
var keys = (0, util_1.getIndexKeys)(this.schema.namespaces[namespaceName], modelConstructor.name);
|
|
144
|
+
return (0, util_1.extractPrimaryKeyValues)(model, keys);
|
|
93
145
|
};
|
|
94
146
|
/**
|
|
95
147
|
* Common metadata for `save` operation
|
|
@@ -103,13 +155,13 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
103
155
|
.constructor;
|
|
104
156
|
var storeName = this.getStorenameForModel(modelConstructor);
|
|
105
157
|
var namespaceName = this.namespaceResolver(modelConstructor);
|
|
106
|
-
var connectedModels = util_1.traverseModel(modelConstructor.name, model, this.schema.namespaces[namespaceName], this.modelInstanceCreator, this.getModelConstructorByModelName);
|
|
158
|
+
var connectedModels = (0, util_1.traverseModel)(modelConstructor.name, model, this.schema.namespaces[namespaceName], this.modelInstanceCreator, this.getModelConstructorByModelName);
|
|
107
159
|
var set = new Set();
|
|
108
160
|
var connectionStoreNames = Object.values(connectedModels).map(function (_a) {
|
|
109
161
|
var modelName = _a.modelName, item = _a.item, instance = _a.instance;
|
|
110
|
-
var storeName = util_1.getStorename(namespaceName, modelName);
|
|
162
|
+
var storeName = (0, util_1.getStorename)(namespaceName, modelName);
|
|
111
163
|
set.add(storeName);
|
|
112
|
-
var keys = util_1.getIndexKeys(_this.schema.namespaces[namespaceName], modelName);
|
|
164
|
+
var keys = (0, util_1.getIndexKeys)(_this.schema.namespaces[namespaceName], modelName);
|
|
113
165
|
return { storeName: storeName, item: item, instance: instance, keys: keys };
|
|
114
166
|
});
|
|
115
167
|
var modelKeyValues = this.getIndexKeyValuesFromModel(model);
|
|
@@ -127,7 +179,7 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
127
179
|
}
|
|
128
180
|
var predicates = predicates_1.ModelPredicateCreator.getPredicates(condition);
|
|
129
181
|
var _a = predicates, predicateObjs = _a.predicates, type = _a.type;
|
|
130
|
-
var isValid = util_1.validatePredicate(fromDB, type, predicateObjs);
|
|
182
|
+
var isValid = (0, util_1.validatePredicate)(fromDB, type, predicateObjs);
|
|
131
183
|
if (!isValid) {
|
|
132
184
|
var msg = 'Conditional update failed';
|
|
133
185
|
logger.error(msg, { model: fromDB, condition: predicateObjs });
|
|
@@ -143,15 +195,15 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
143
195
|
* @returns
|
|
144
196
|
*/
|
|
145
197
|
StorageAdapterBase.prototype.load = function (namespaceName, srcModelName, records) {
|
|
146
|
-
return
|
|
198
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
147
199
|
var namespace, relations, connectionStoreNames, modelConstructor;
|
|
148
200
|
var _this = this;
|
|
149
|
-
return
|
|
201
|
+
return __generator(this, function (_a) {
|
|
150
202
|
namespace = this.schema.namespaces[namespaceName];
|
|
151
203
|
relations = namespace.relationships[srcModelName].relationTypes;
|
|
152
204
|
connectionStoreNames = relations.map(function (_a) {
|
|
153
205
|
var modelName = _a.modelName;
|
|
154
|
-
return util_1.getStorename(namespaceName, modelName);
|
|
206
|
+
return (0, util_1.getStorename)(namespaceName, modelName);
|
|
155
207
|
});
|
|
156
208
|
modelConstructor = this.getModelConstructorByModelName(namespaceName, srcModelName);
|
|
157
209
|
if (connectionStoreNames.length === 0) {
|
|
@@ -193,7 +245,7 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
193
245
|
var predicateObj = predicateObjs.find(function (p) {
|
|
194
246
|
// it's a relevant predicate object only if it's an equality
|
|
195
247
|
// operation for a key field from the key:
|
|
196
|
-
return types_1.isPredicateObj(p) &&
|
|
248
|
+
return (0, types_1.isPredicateObj)(p) &&
|
|
197
249
|
p.field === key &&
|
|
198
250
|
p.operator === 'eq' &&
|
|
199
251
|
p.operand !== null &&
|
|
@@ -202,7 +254,7 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
202
254
|
predicateObj && keyValues.push(predicateObj.operand);
|
|
203
255
|
};
|
|
204
256
|
try {
|
|
205
|
-
for (var keyPath_1 =
|
|
257
|
+
for (var keyPath_1 = __values(keyPath), keyPath_1_1 = keyPath_1.next(); !keyPath_1_1.done; keyPath_1_1 = keyPath_1.next()) {
|
|
206
258
|
var key = keyPath_1_1.value;
|
|
207
259
|
_loop_1(key);
|
|
208
260
|
}
|
|
@@ -228,7 +280,7 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
228
280
|
var storeName = this.getStorenameForModel(modelConstructor);
|
|
229
281
|
var namespaceName = this.namespaceResolver(modelConstructor);
|
|
230
282
|
var predicates = predicate && predicates_1.ModelPredicateCreator.getPredicates(predicate);
|
|
231
|
-
var keyPath = util_1.getIndexKeys(this.schema.namespaces[namespaceName], modelConstructor.name);
|
|
283
|
+
var keyPath = (0, util_1.getIndexKeys)(this.schema.namespaces[namespaceName], modelConstructor.name);
|
|
232
284
|
var queryByKey = predicates && this.keyValueFromPredicate(predicates, keyPath);
|
|
233
285
|
var hasSort = pagination && pagination.sort;
|
|
234
286
|
var hasPagination = pagination && pagination.limit;
|
|
@@ -250,15 +302,15 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
250
302
|
* @returns
|
|
251
303
|
*/
|
|
252
304
|
StorageAdapterBase.prototype.delete = function (modelOrModelConstructor, condition) {
|
|
253
|
-
return
|
|
305
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
254
306
|
var deleteQueue, modelConstructor, namespace, models, deletedModels, deletedModels, model, modelConstructor, namespaceName, storeName, keyValues, fromDB, msg, predicates, _a, predicateObjs, type, isValid, msg, deletedModels;
|
|
255
|
-
return
|
|
307
|
+
return __generator(this, function (_b) {
|
|
256
308
|
switch (_b.label) {
|
|
257
309
|
case 0: return [4 /*yield*/, this.preOpCheck()];
|
|
258
310
|
case 1:
|
|
259
311
|
_b.sent();
|
|
260
312
|
deleteQueue = [];
|
|
261
|
-
if (!util_1.isModelConstructor(modelOrModelConstructor)) return [3 /*break*/, 9];
|
|
313
|
+
if (!(0, util_1.isModelConstructor)(modelOrModelConstructor)) return [3 /*break*/, 9];
|
|
262
314
|
modelConstructor = modelOrModelConstructor;
|
|
263
315
|
namespace = this.namespaceResolver(modelConstructor);
|
|
264
316
|
return [4 /*yield*/, this.query(modelConstructor, condition)];
|
|
@@ -306,7 +358,7 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
306
358
|
}
|
|
307
359
|
predicates = predicates_1.ModelPredicateCreator.getPredicates(condition);
|
|
308
360
|
_a = predicates, predicateObjs = _a.predicates, type = _a.type;
|
|
309
|
-
isValid = util_1.validatePredicate(fromDB, type, predicateObjs);
|
|
361
|
+
isValid = (0, util_1.validatePredicate)(fromDB, type, predicateObjs);
|
|
310
362
|
if (!isValid) {
|
|
311
363
|
msg = 'Conditional update failed';
|
|
312
364
|
logger.error(msg, { model: fromDB, condition: predicateObjs });
|
|
@@ -345,89 +397,107 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
345
397
|
* @param deleteQueue
|
|
346
398
|
*/
|
|
347
399
|
StorageAdapterBase.prototype.deleteTraverse = function (models, modelConstructor, namespace, deleteQueue) {
|
|
348
|
-
var models_1, models_1_1;
|
|
349
|
-
var e_2,
|
|
350
|
-
return
|
|
351
|
-
var cascadingRelationTypes, model, modelDefinition, modelMeta, relationships, relationships_1, relationships_1_1, r, queryObject, relatedRecords, e_3_1, e_2_1;
|
|
352
|
-
return
|
|
353
|
-
switch (
|
|
400
|
+
var _a, models_1, models_1_1;
|
|
401
|
+
var _b, e_2, _c, _d, _e, e_3, _f, _g;
|
|
402
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
403
|
+
var cascadingRelationTypes, model, modelDefinition, modelMeta, relationships, _h, relationships_1, relationships_1_1, r, queryObject, relatedRecords, e_3_1, e_2_1;
|
|
404
|
+
return __generator(this, function (_j) {
|
|
405
|
+
switch (_j.label) {
|
|
354
406
|
case 0:
|
|
355
407
|
cascadingRelationTypes = ['HAS_ONE', 'HAS_MANY'];
|
|
356
|
-
|
|
408
|
+
_j.label = 1;
|
|
357
409
|
case 1:
|
|
358
|
-
|
|
359
|
-
models_1 =
|
|
360
|
-
|
|
410
|
+
_j.trys.push([1, 25, 26, 31]);
|
|
411
|
+
_a = true, models_1 = __asyncValues(models);
|
|
412
|
+
_j.label = 2;
|
|
361
413
|
case 2: return [4 /*yield*/, models_1.next()];
|
|
362
414
|
case 3:
|
|
363
|
-
if (!(models_1_1 =
|
|
364
|
-
|
|
415
|
+
if (!(models_1_1 = _j.sent(), _b = models_1_1.done, !_b)) return [3 /*break*/, 24];
|
|
416
|
+
_d = models_1_1.value;
|
|
417
|
+
_a = false;
|
|
418
|
+
_j.label = 4;
|
|
419
|
+
case 4:
|
|
420
|
+
_j.trys.push([4, , 22, 23]);
|
|
421
|
+
model = _d;
|
|
365
422
|
modelDefinition = this.schema.namespaces[namespace].models[modelConstructor.name];
|
|
366
423
|
modelMeta = {
|
|
367
424
|
builder: modelConstructor,
|
|
368
425
|
schema: modelDefinition,
|
|
369
|
-
pkField: util_1.extractPrimaryKeyFieldNames(modelDefinition),
|
|
426
|
+
pkField: (0, util_1.extractPrimaryKeyFieldNames)(modelDefinition),
|
|
370
427
|
};
|
|
371
428
|
relationships = relationship_1.ModelRelationship.allFrom(modelMeta).filter(function (r) {
|
|
372
429
|
return cascadingRelationTypes.includes(r.type);
|
|
373
430
|
});
|
|
374
|
-
|
|
375
|
-
case
|
|
376
|
-
|
|
377
|
-
relationships_1 =
|
|
378
|
-
|
|
379
|
-
case
|
|
380
|
-
case
|
|
381
|
-
if (!(relationships_1_1 =
|
|
382
|
-
|
|
431
|
+
_j.label = 5;
|
|
432
|
+
case 5:
|
|
433
|
+
_j.trys.push([5, 15, 16, 21]);
|
|
434
|
+
_h = true, relationships_1 = (e_3 = void 0, __asyncValues(relationships));
|
|
435
|
+
_j.label = 6;
|
|
436
|
+
case 6: return [4 /*yield*/, relationships_1.next()];
|
|
437
|
+
case 7:
|
|
438
|
+
if (!(relationships_1_1 = _j.sent(), _e = relationships_1_1.done, !_e)) return [3 /*break*/, 14];
|
|
439
|
+
_g = relationships_1_1.value;
|
|
440
|
+
_h = false;
|
|
441
|
+
_j.label = 8;
|
|
442
|
+
case 8:
|
|
443
|
+
_j.trys.push([8, , 12, 13]);
|
|
444
|
+
r = _g;
|
|
383
445
|
queryObject = r.createRemoteQueryObject(model);
|
|
384
|
-
if (!(queryObject !== null)) return [3 /*break*/,
|
|
446
|
+
if (!(queryObject !== null)) return [3 /*break*/, 11];
|
|
385
447
|
return [4 /*yield*/, this.query(r.remoteModelConstructor, predicates_1.ModelPredicateCreator.createFromFlatEqualities(r.remoteDefinition, queryObject))];
|
|
386
|
-
case
|
|
387
|
-
relatedRecords =
|
|
448
|
+
case 9:
|
|
449
|
+
relatedRecords = _j.sent();
|
|
388
450
|
return [4 /*yield*/, this.deleteTraverse(relatedRecords, r.remoteModelConstructor, namespace, deleteQueue)];
|
|
389
|
-
case
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
case
|
|
393
|
-
case 10: return [3 /*break*/, 17];
|
|
394
|
-
case 11:
|
|
395
|
-
e_3_1 = _c.sent();
|
|
396
|
-
e_3 = { error: e_3_1 };
|
|
397
|
-
return [3 /*break*/, 17];
|
|
451
|
+
case 10:
|
|
452
|
+
_j.sent();
|
|
453
|
+
_j.label = 11;
|
|
454
|
+
case 11: return [3 /*break*/, 13];
|
|
398
455
|
case 12:
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
case
|
|
403
|
-
_c.sent();
|
|
404
|
-
_c.label = 14;
|
|
405
|
-
case 14: return [3 /*break*/, 16];
|
|
456
|
+
_h = true;
|
|
457
|
+
return [7 /*endfinally*/];
|
|
458
|
+
case 13: return [3 /*break*/, 6];
|
|
459
|
+
case 14: return [3 /*break*/, 21];
|
|
406
460
|
case 15:
|
|
461
|
+
e_3_1 = _j.sent();
|
|
462
|
+
e_3 = { error: e_3_1 };
|
|
463
|
+
return [3 /*break*/, 21];
|
|
464
|
+
case 16:
|
|
465
|
+
_j.trys.push([16, , 19, 20]);
|
|
466
|
+
if (!(!_h && !_e && (_f = relationships_1.return))) return [3 /*break*/, 18];
|
|
467
|
+
return [4 /*yield*/, _f.call(relationships_1)];
|
|
468
|
+
case 17:
|
|
469
|
+
_j.sent();
|
|
470
|
+
_j.label = 18;
|
|
471
|
+
case 18: return [3 /*break*/, 20];
|
|
472
|
+
case 19:
|
|
407
473
|
if (e_3) throw e_3.error;
|
|
408
474
|
return [7 /*endfinally*/];
|
|
409
|
-
case
|
|
410
|
-
case
|
|
411
|
-
case
|
|
412
|
-
|
|
413
|
-
|
|
475
|
+
case 20: return [7 /*endfinally*/];
|
|
476
|
+
case 21: return [3 /*break*/, 23];
|
|
477
|
+
case 22:
|
|
478
|
+
_a = true;
|
|
479
|
+
return [7 /*endfinally*/];
|
|
480
|
+
case 23: return [3 /*break*/, 2];
|
|
481
|
+
case 24: return [3 /*break*/, 31];
|
|
482
|
+
case 25:
|
|
483
|
+
e_2_1 = _j.sent();
|
|
414
484
|
e_2 = { error: e_2_1 };
|
|
415
|
-
return [3 /*break*/,
|
|
416
|
-
case
|
|
417
|
-
|
|
418
|
-
if (!(
|
|
419
|
-
return [4 /*yield*/,
|
|
420
|
-
case
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
case
|
|
424
|
-
case
|
|
485
|
+
return [3 /*break*/, 31];
|
|
486
|
+
case 26:
|
|
487
|
+
_j.trys.push([26, , 29, 30]);
|
|
488
|
+
if (!(!_a && !_b && (_c = models_1.return))) return [3 /*break*/, 28];
|
|
489
|
+
return [4 /*yield*/, _c.call(models_1)];
|
|
490
|
+
case 27:
|
|
491
|
+
_j.sent();
|
|
492
|
+
_j.label = 28;
|
|
493
|
+
case 28: return [3 /*break*/, 30];
|
|
494
|
+
case 29:
|
|
425
495
|
if (e_2) throw e_2.error;
|
|
426
496
|
return [7 /*endfinally*/];
|
|
427
|
-
case
|
|
428
|
-
case
|
|
497
|
+
case 30: return [7 /*endfinally*/];
|
|
498
|
+
case 31:
|
|
429
499
|
deleteQueue.push({
|
|
430
|
-
storeName: util_1.getStorename(namespace, modelConstructor.name),
|
|
500
|
+
storeName: (0, util_1.getStorename)(namespace, modelConstructor.name),
|
|
431
501
|
items: models,
|
|
432
502
|
});
|
|
433
503
|
return [2 /*return*/];
|
|
@@ -438,4 +508,3 @@ var StorageAdapterBase = /** @class */ (function () {
|
|
|
438
508
|
return StorageAdapterBase;
|
|
439
509
|
}());
|
|
440
510
|
exports.StorageAdapterBase = StorageAdapterBase;
|
|
441
|
-
//# sourceMappingURL=StorageAdapterBase.js.map
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var core_1 = require("@aws-amplify/core");
|
|
7
|
-
var IndexedDBAdapter_1 = tslib_1.__importDefault(require("../IndexedDBAdapter"));
|
|
8
|
-
var AsyncStorageAdapter_1 = tslib_1.__importDefault(require("../AsyncStorageAdapter"));
|
|
6
|
+
var IndexedDBAdapter_1 = __importDefault(require("../IndexedDBAdapter"));
|
|
7
|
+
var AsyncStorageAdapter_1 = __importDefault(require("../AsyncStorageAdapter"));
|
|
8
|
+
var utils_1 = require("@aws-amplify/core/internals/utils");
|
|
9
9
|
var getDefaultAdapter = function () {
|
|
10
|
-
var isBrowser =
|
|
11
|
-
if ((isBrowser && window.indexedDB) || (
|
|
10
|
+
var isBrowser = true; // TODO(v6): Update this for SSR
|
|
11
|
+
if ((isBrowser && window.indexedDB) || ((0, utils_1.isWebWorker)() && self.indexedDB)) {
|
|
12
12
|
return IndexedDBAdapter_1.default;
|
|
13
13
|
}
|
|
14
14
|
return AsyncStorageAdapter_1.default;
|
|
15
15
|
};
|
|
16
16
|
exports.default = getDefaultAdapter;
|
|
17
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var
|
|
4
|
-
var AsyncStorageAdapter_1 = tslib_1.__importDefault(require("../AsyncStorageAdapter"));
|
|
6
|
+
var AsyncStorageAdapter_1 = __importDefault(require("../AsyncStorageAdapter"));
|
|
5
7
|
var getDefaultAdapter = function () {
|
|
6
8
|
return AsyncStorageAdapter_1.default;
|
|
7
9
|
};
|
|
8
10
|
exports.default = getDefaultAdapter;
|
|
9
|
-
//# sourceMappingURL=index.native.js.map
|
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __values = (this && this.__values) || function(o) {
|
|
3
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
+
if (m) return m.call(o);
|
|
5
|
+
if (o && typeof o.length === "number") return {
|
|
6
|
+
next: function () {
|
|
7
|
+
if (o && i >= o.length) o = void 0;
|
|
8
|
+
return { value: o && o[i++], done: !o };
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
+
};
|
|
2
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
14
|
+
exports.ModelRelationship = void 0;
|
|
4
15
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
5
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
6
17
|
var types_1 = require("../types");
|
|
@@ -18,8 +29,8 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
18
29
|
* @param field The "local" model field.
|
|
19
30
|
*/
|
|
20
31
|
function ModelRelationship(model, field) {
|
|
21
|
-
if (!types_1.isFieldAssociation(model.schema, field)) {
|
|
22
|
-
throw new Error(model.schema.name
|
|
32
|
+
if (!(0, types_1.isFieldAssociation)(model.schema, field)) {
|
|
33
|
+
throw new Error("".concat(model.schema.name, ".").concat(field, " is not a relationship."));
|
|
23
34
|
}
|
|
24
35
|
this.localModel = model;
|
|
25
36
|
this._field = field;
|
|
@@ -32,7 +43,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
32
43
|
* @param field The field that may relates the local model to the remote model.
|
|
33
44
|
*/
|
|
34
45
|
ModelRelationship.from = function (model, field) {
|
|
35
|
-
if (types_1.isFieldAssociation(model.schema, field)) {
|
|
46
|
+
if ((0, types_1.isFieldAssociation)(model.schema, field)) {
|
|
36
47
|
return new this(model, field);
|
|
37
48
|
}
|
|
38
49
|
else {
|
|
@@ -48,7 +59,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
48
59
|
var e_1, _a;
|
|
49
60
|
var relationships = [];
|
|
50
61
|
try {
|
|
51
|
-
for (var _b =
|
|
62
|
+
for (var _b = __values(Object.keys(model.schema.fields)), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
52
63
|
var field = _c.value;
|
|
53
64
|
var relationship = ModelRelationship.from(model, field);
|
|
54
65
|
relationship && relationships.push(relationship);
|
|
@@ -67,7 +78,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
67
78
|
get: function () {
|
|
68
79
|
return this.localModel.schema;
|
|
69
80
|
},
|
|
70
|
-
enumerable:
|
|
81
|
+
enumerable: false,
|
|
71
82
|
configurable: true
|
|
72
83
|
});
|
|
73
84
|
Object.defineProperty(ModelRelationship.prototype, "field", {
|
|
@@ -78,7 +89,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
78
89
|
get: function () {
|
|
79
90
|
return this._field;
|
|
80
91
|
},
|
|
81
|
-
enumerable:
|
|
92
|
+
enumerable: false,
|
|
82
93
|
configurable: true
|
|
83
94
|
});
|
|
84
95
|
Object.defineProperty(ModelRelationship.prototype, "localConstructor", {
|
|
@@ -89,7 +100,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
89
100
|
get: function () {
|
|
90
101
|
return this.localModel.builder;
|
|
91
102
|
},
|
|
92
|
-
enumerable:
|
|
103
|
+
enumerable: false,
|
|
93
104
|
configurable: true
|
|
94
105
|
});
|
|
95
106
|
Object.defineProperty(ModelRelationship.prototype, "type", {
|
|
@@ -100,7 +111,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
100
111
|
get: function () {
|
|
101
112
|
return this.localAssocation.connectionType;
|
|
102
113
|
},
|
|
103
|
-
enumerable:
|
|
114
|
+
enumerable: false,
|
|
104
115
|
configurable: true
|
|
105
116
|
});
|
|
106
117
|
Object.defineProperty(ModelRelationship.prototype, "localAssocation", {
|
|
@@ -114,7 +125,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
114
125
|
get: function () {
|
|
115
126
|
return this.localDefinition.fields[this.field].association;
|
|
116
127
|
},
|
|
117
|
-
enumerable:
|
|
128
|
+
enumerable: false,
|
|
118
129
|
configurable: true
|
|
119
130
|
});
|
|
120
131
|
Object.defineProperty(ModelRelationship.prototype, "localJoinFields", {
|
|
@@ -145,7 +156,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
145
156
|
return this.localPKFields;
|
|
146
157
|
}
|
|
147
158
|
},
|
|
148
|
-
enumerable:
|
|
159
|
+
enumerable: false,
|
|
149
160
|
configurable: true
|
|
150
161
|
});
|
|
151
162
|
Object.defineProperty(ModelRelationship.prototype, "localPKFields", {
|
|
@@ -157,7 +168,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
157
168
|
get: function () {
|
|
158
169
|
return this.localModel.pkField;
|
|
159
170
|
},
|
|
160
|
-
enumerable:
|
|
171
|
+
enumerable: false,
|
|
161
172
|
configurable: true
|
|
162
173
|
});
|
|
163
174
|
Object.defineProperty(ModelRelationship.prototype, "remoteDefinition", {
|
|
@@ -165,14 +176,14 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
165
176
|
var _a;
|
|
166
177
|
return (_a = this.remoteModelType.modelConstructor) === null || _a === void 0 ? void 0 : _a.schema;
|
|
167
178
|
},
|
|
168
|
-
enumerable:
|
|
179
|
+
enumerable: false,
|
|
169
180
|
configurable: true
|
|
170
181
|
});
|
|
171
182
|
Object.defineProperty(ModelRelationship.prototype, "remoteModelType", {
|
|
172
183
|
get: function () {
|
|
173
184
|
return this.localDefinition.fields[this.field].type;
|
|
174
185
|
},
|
|
175
|
-
enumerable:
|
|
186
|
+
enumerable: false,
|
|
176
187
|
configurable: true
|
|
177
188
|
});
|
|
178
189
|
Object.defineProperty(ModelRelationship.prototype, "remoteModelConstructor", {
|
|
@@ -183,7 +194,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
183
194
|
get: function () {
|
|
184
195
|
return this.remoteModelType.modelConstructor.builder;
|
|
185
196
|
},
|
|
186
|
-
enumerable:
|
|
197
|
+
enumerable: false,
|
|
187
198
|
configurable: true
|
|
188
199
|
});
|
|
189
200
|
Object.defineProperty(ModelRelationship.prototype, "remotePKFields", {
|
|
@@ -196,7 +207,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
196
207
|
var _a;
|
|
197
208
|
return ((_a = this.remoteModelType.modelConstructor) === null || _a === void 0 ? void 0 : _a.pkField) || ['id'];
|
|
198
209
|
},
|
|
199
|
-
enumerable:
|
|
210
|
+
enumerable: false,
|
|
200
211
|
configurable: true
|
|
201
212
|
});
|
|
202
213
|
Object.defineProperty(ModelRelationship.prototype, "localAssociatedWith", {
|
|
@@ -219,7 +230,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
219
230
|
return undefined;
|
|
220
231
|
}
|
|
221
232
|
},
|
|
222
|
-
enumerable:
|
|
233
|
+
enumerable: false,
|
|
223
234
|
configurable: true
|
|
224
235
|
});
|
|
225
236
|
Object.defineProperty(ModelRelationship.prototype, "explicitRemoteAssociation", {
|
|
@@ -243,7 +254,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
243
254
|
}
|
|
244
255
|
}
|
|
245
256
|
},
|
|
246
|
-
enumerable:
|
|
257
|
+
enumerable: false,
|
|
247
258
|
configurable: true
|
|
248
259
|
});
|
|
249
260
|
Object.defineProperty(ModelRelationship.prototype, "remoteJoinFields", {
|
|
@@ -274,7 +285,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
274
285
|
return this.remotePKFields;
|
|
275
286
|
}
|
|
276
287
|
},
|
|
277
|
-
enumerable:
|
|
288
|
+
enumerable: false,
|
|
278
289
|
configurable: true
|
|
279
290
|
});
|
|
280
291
|
Object.defineProperty(ModelRelationship.prototype, "isComplete", {
|
|
@@ -285,7 +296,7 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
285
296
|
get: function () {
|
|
286
297
|
return this.localJoinFields.length > 0 && this.remoteJoinFields.length > 0;
|
|
287
298
|
},
|
|
288
|
-
enumerable:
|
|
299
|
+
enumerable: false,
|
|
289
300
|
configurable: true
|
|
290
301
|
});
|
|
291
302
|
/**
|
|
@@ -343,4 +354,3 @@ var ModelRelationship = /** @class */ (function () {
|
|
|
343
354
|
return ModelRelationship;
|
|
344
355
|
}());
|
|
345
356
|
exports.ModelRelationship = ModelRelationship;
|
|
346
|
-
//# sourceMappingURL=relationship.js.map
|
package/lib/storage/storage.d.ts
CHANGED
|
@@ -4,11 +4,11 @@ import { ModelInstanceCreator } from '../datastore/datastore';
|
|
|
4
4
|
import { InternalSchema, ModelInstanceMetadata, ModelPredicate, NamespaceResolver, OpType, PaginationInput, PersistentModel, PersistentModelConstructor, QueryOne, SchemaNamespace, InternalSubscriptionMessage, SubscriptionMessage } from '../types';
|
|
5
5
|
import { NAMESPACES } from '../util';
|
|
6
6
|
import { Adapter } from './adapter';
|
|
7
|
-
export
|
|
7
|
+
export type StorageSubscriptionMessage<T extends PersistentModel> = InternalSubscriptionMessage<T> & {
|
|
8
8
|
mutator?: Symbol;
|
|
9
9
|
};
|
|
10
|
-
export
|
|
11
|
-
export
|
|
10
|
+
export type StorageFacade = Omit<Adapter, 'setUp'>;
|
|
11
|
+
export type Storage = InstanceType<typeof StorageClass>;
|
|
12
12
|
declare class StorageClass implements StorageFacade {
|
|
13
13
|
private readonly schema;
|
|
14
14
|
private readonly namespaceResolver;
|